OSI 7 계층

김태희·2021년 1월 14일
0
post-custom-banner

OSI 7 계층은 네트워크 통신 과정을 7단계로 나눠 표준화 한 것을 말한다.

7단계로 나눈 이유


*모듈화의 장점

서비스 구현을 각 기능별로 분리한다.

데이터 통신 흐름을 한눈에 알아보기 쉽다.

7단계 중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건드리지 않고 이상이 생긴 단계만 고칠 수 있다.


OSI 7 Layer vs TCP/IP Protocol


TCP/IP 프로토콜은 OSI 모델보다 먼저 개발되었다.

TCP/IP 프로토콜이 많은 시간과 돈을 들여 완전히 자리잡은 후에 OSI가 완성되었다. 그 당시 OSI 모델의 일부 계층은 완전히 정의되지 않았다. TCP/IP 프로토콜에서 OSI 모델로 전환할 만한 충분히 높은 수준을 보여주지 못했다. 이러한 이유로 보편화되어 완전히 자리잡은 TCP/IP는 OSI 모델로 전환되지 않았다.

OSI 모델은 장비 개발과 통신 자체를 어떻게 표준으로 잡을지 결정할 때만 사용되는 반면에, 실질적인 통신 자체는 TCP/IP 프로토콜을 사용한다.

OSI 7 Layer

  • 7계층 : 응용 계층(Application Layer)

  • 6계층 : 표현 계층(Presentation Layer)

  • 5계층 : 세션 계층(Session Layer)

  • 4계층 : 전송 계층(Transport Layer)

  • 3계층 : 네트워크 계층(Network Layer)

  • 2계층 : 데이터 링크계층(DataLink Layer)

  • 1계층 : 물리계층(Physical Layer)


1계층 : 물리계층(Physical Layer)


통신 데이터 단위 : 비트

0과 1의 비트로 이루어진 비트 스트림을 전기 신호로 변환해 통신한다.



통신 데이터 단위 : 프레임

노드로부터 노드까지의 프레임 전달을 담당한다.

상위 계층(네트워크 층)에서 오류 없는 물리층처럼 보이도록 한다.

맥 주소(Mac address)를 가지고 통신한다.

물리주소 지정 : 송신자와 수신자의 물리 주소(맥 주소)를 헤더에 추가.

흐름 제어 : 수신자의 데이터 수신률을 고려하여 데이터를 전송하도록 제어.

오류 제어 : 손상 또는 손실된 프레임을 발견/재전송.

접근 제어 : 주어진 어느 한 순간에 하나의 장치만 동작하도록 제어.


3계층 : 네트워크 계층(Network Layer)


통신 데이터 단위 : 패킷

IP주소를 사용해 패킷을 발신지로부터 목적지까지 전달하는것을 담당한다.

패킷에 발신지와 목적지의 논리주소(IP)를 헤더에 추가한다.

라우팅 : 패킷이 최종 목적지에 전달될 수 있도록 경로를 지정한다.


4계층 : 전송 계층(Transport Layer)


통신 데이터 단위 : 세그먼트

프로세스로부터 프로세스까지의 세그먼트 전달을 담당한다.

전체 데이터가 완전하게 바른 순서로 도착하는 것을 보장한다.

네트워크 계층은 각 패킷을 정확한 컴퓨터에, 전송 계층은 세그먼트를 해당 컴퓨터의 정확한 프로세스에 전달한다.

프로세스간의 통신을 위해 포트 번호를 포함한다.

분할/재조립, 연결/흐름제어, 오류제어.


5계층 : 세션 계층(Session Layer)


통신 데이터 단위 : 메세지

통신하는 프로세스 사이의 대화제어, 동기화, 원활한 통신 종료 담당.

TCP/IP 세션을 만들고 없애는 책임을 진다.

사용자 간의 연결을 유지 및 설정한다.


6계층 : 표현 계층(Presentation Layer)


통신 데이터 단위 : 메세지

데이터 형식의 일관성 제공.

데이터의 변환(인코딩), 압축, 암호화/복호화 기능.


7계층 : 응용 계층(Application Layer)


통신 데이터 단위 : 메세지

사용자가 네트워크에 접근할 수 있도록 해준다.

사용자 인터페이스 제공.

Ex) SMTP, FTP, HTTP


참조
https://shlee0882.tistory.com/110
https://kingjakeu.github.io/study/2020/08/11/OSI-TCP-IP/

profile
Web Back-End (Spring, JPA, AWS)
post-custom-banner

0개의 댓글