OSI 7계층
OSI는 Open Systems Interconnection의 약자로 개방형 시스템 간의 상호 연결을 의미한다. 국제 표준화 기구인 ISO에서 개발한 모델로 컴퓨터 네트워크의 프로토콜 디자인과 통신을 계층으로 나누어 설명한 것이다.
1계층 - 물리 계층(Physical Layer)
네트워크 OSI 모델에서 가장 낮은 계층으로 하드웨어 전송 기술로 구성된다. 하드웨어 장비로 케이블, 리피터, 허브가 있으며 네트워크에서 물리적으로 데이터를 전송하는 역할을 수행한다.
2계층 - 데이터 링크 계층(Data Link Layer)
물리 계층을 통해 데이터를 전송하다가 데이터가 제대로 도착하지 못하고 중도 분실되거나 데이터의 내용이 깨져서 변형이 되는 등 물리적인 오류가 발생할 수 있다. 이러한 물리적인 감지하고 제어하여 포인트 투 포인트 간의 신뢰성 있는 전송을 보장한다. 네트워크 장비 중 브릿지나 L2 (Layer 2) 스위치가 이 계층에서 동작한다. 데이터 링크 계층에서 전송되는 데이터의 단위를 프레임이라고 한다.
3계층 - 네트워크 계층
네트워크 계층의 핵심은 라우팅이다. 데이터가 전송되기 위해 여러 경로를 거쳐서 가야 하는데 이 경로 배정 기능을 바로 라우터가 수행한다. 네트워크 계층에서 전송되는 데이터 단위는 패킷이다. 네트워크 계층에는 IPv4/IPv6, ICMP (Internet Control Message Protocol), IP 주소를 데이터 링크 계층의 MAC 주소로 변환하는 ARP (Address Resolution Protocol) 등 여러 프로토콜이 있다.
4계층 - 전송 계층(Transport Layer)
데이터를 전송하며 오류 검출 및 복구, 흐름제어, 중복 검사 등을 수행한다. 전송 계층에는 연결형 서비스와 비연결형 서비스가 있다. TCP는 연결형 서비스로 신뢰성 있는 연결을 보장하고, UDP는 비연결형 서비스로 스트리밍 서비스와 같이 데이터를 빠르게 통신할 때 이용된다. TCP에서의 데이터 단위는 세그먼트이고, UDP에서의 데이터 단위는 데이터그램이다.
5계층 - 세션 계층(Session Layer)
세션 계층은 세션 연결의 설정과 해제의 기능을 하고 서비스 인증 및 허가의 기능을 처리한다.
6계층 - 표현 계층(Presentation Layer)
인코딩이나 암호화 동작이 이 계층에서 이루어진다. 데이터를 표현하기 위한 문맥 계층이라 불리고 압축 및 데이터 변환이 일어난다.
7계층 - 응용 계층(Application Layer)
응용 프로세스 간의 기능을 제공한다. OSI 모델 중 가장 상위 계층으로 추상화된 계층이다. 응용 프로세스의 예로 텔넷 등이 있으며 실제로 애플리케이션과 가장 가까운 계층이다. 7계층에는 원격 로그인에 대한 텔넷부터 파일 전송인 FTP (File Transfer Protocol), 전자 메일에 대한 SMTP (Simple Mail Transfer Protocol), DNS 등 여러 프로토콜이 있다.
참고
개발자가 되기 위해 꼭 알아야 하는 IT 용어, 비제이리퍼블릭