OSI 모델과 TCP/IP 모델
1. OSI 모델
OSI 모델은 국제 표준화 기구(International Organization for Standardzation)에서 만든 네트워크 참조 모델이다. 통신 단계를 7개의 계층으로 나누는데, 최하위 계층에서 최상위 계층 순으로 각각 물리 계층, 데이터 링크 계층, 네트워크 계층, 전송 계층, 세션 계층, 표현 계층, 응용 계층이다.
세부적인 설명은 아래에서 살펴보자.
(1) 물리 계층
물리 계층은 1과 0으로 표현되는 비트 신호를 주고 받는 계층이다.
통신 매체에 맞는 신호로 운반되도록 비트 데이터의 변환이 이루어지고 통신 매체를 통한 송수신이 이루어지는 계층이 바로 물리 계층이다. 그렇기에 물리 계층을 학습할 때는 주로 네트워크 장비, 통신 매체애 관한 이야기를 많이 하게 된다.
(2) 데이터 링크 계층
이 계층은 네트워크 내 주변 장치 간의 정보를 올바르게 주고받기 위한 계층이다.
이더넷을 비롯한 많은 LAN 기술이 이 계층에 녹아 있다. 여기서는 물리 계층을 통해 주고받는 정보에 오류가 없는지 확인하고, MAC 주소라는 주소 체계를 통해 네트워크 내 송수신지를 특정할 수 있다.
때로는 전송 과정에서 발생할 수 있는 충돌 문제를 해결하는 계층이기도 하다.
(3) 네트워크 계층
이 계층은 메세지를 (다른 네트워크에 속한) 수신지까지 전달하는 계층이다.
데이터 링크 계층에서 네트워크 내의 주변 장치 간의 통신이 이루어진다면, 네트워크 계층에서는 네트워크 간의 통신이 이루어진다.
예컨데 네트워크 계층은 인터넷을 가능하게 하는 계층이라고 할 수 있다. 이 계층에서는 IP 주소라는 주소 체계를 통해 통신하고자 하는 수신지 호스트와 네트워크를 식별하고, 원하는 수신지에 도달하기 위한 최적의 경로를 결정한다.
(4) 전송 계층
전송 계층은 신뢰성 있고 안정성 있는 전송을 해야 할 때 필요한 계층이다.
패킷이 정상적으로 보내졌는지, 중간에 유실된 정보는 없는지, 여러 개의 패킷을 보낼 때 순서가 뒤바뀐 것은 없는지 등을 확인해야 할 때가 있다. 이때 전송 계층에서는 패킷의 흐름을 제어하거나 전송 오류를 점검해 신뢰성 있고 안정적인 전송이 이루어지도록 한다.
이 외에도 포트라는 정보를 통해 실행 중인 응용 프로그램의 식별이 이루어지기도 한다.
(5) 세션 계층
이 계층은 ‘세션’을 관리하기 위해 존재하는 계층이다.
세션이라는 용어는 다양한 상황에서 폭넓게 사용되지만, 일반적으로 통신을 주고받는 호스트의 응용 프로그램 간 연결 상태를 의미한다. 세션 계층에서는 이러한 연결 상태를 생성하거나 유지하고, 종료되었을 때는 끊어 주는 역할을 담당한다.
(6) 표현 계층
표현 계층은 마치 번역가와 같은 역할을 하는 계층이다.
사람이 이해할 수 있는 언어인 문자를 컴퓨터가 이해할 수 있는 코드로 변환하거나, 압축, 암호화와 같은 작업이 표현 계층에서 이루어진다.
(7) 응용 계층
응용 계층은 OSI 참조 모델 최상단에 있는 계층으로 사용자 및 사용자가 이용하는 응용 프로그램과 가장 밀접하게 맞닿아 있는 계층이다.
응용 계층은 사용자가 이용할 응용 프로그램에 다양한 네트워크 서비스를 제공한다. 예를 들어 웹 브라우저 프로그램에 웹 페이지를 제공하거나 이메일 클라이언트 프로그램에 송수신된 이메일을 제공하는 등 실질적인 네트워크 서비스가 제공되는 계층이 바로 응용 계층이다.
응용 프로그램에 다양한 서비스가 제공될 수 있는 만큼 타 계층에 비해 응용 계층에 속한 프로토콜이 많다.
2. TCP/IP 모델
OSI 모델은 주로 네트워크를 이론적으로 기술하고 이해할 때 사용하는 반면 TCP/IP 모델은 이론보다 구현에 중점을 둔 네트워크 참조 모델이다. OSI 모델의 목적이 ‘이상적 설계’에 가깝다면, TCP/IP 모델은 ‘실용적 구현’에 가깝다.
TCP/IP 모델은 TCP/IP 4계층, 인터넷 프로토콜 스위트, TCP/IP 프로토콜 스택이라고도 부른다.
최하위 계층부터 살펴보자.
(1) 네트워크 액세스 계층
이 계층은 링크 계층 또는 네트워크 인터페이스 계층이라고도 부른다. OSI 모델의 데이터 링크 계층과 유사하다.
전통적인 TCP/IP 모델에서의 최하위 계층은 OSI 모델에서의 물리 계층보단 데이터 링크 계층 역할을 수행하는 쪽에 가까웠다. TCP/IP 모델에는 OSI 모델에서의 물리 계층에 해당하는 개념이 없다고 보는 견해도 있다.
그래서 많은 공식 문서와 전공 서적에서 OSI 모델과 TCP/IP 모델을 대응해 설명하기 위해 TCP/IP 모델에 물리 계층을 추가해 TCP/IP 모델을 5계층으로 확장하여 기술하기도 한다.
(2) 인터넷 계층
이 계층은 OSI 모델에서의 네트워크 계층과 유사하다.
(3) 전송 계층
OSI 모델에서의 전송 계층과 유사하다.
(4) 응용 계층
응용 계층은 OSI 모델의 세션 계층, 표현 계층, 응용 계층을 합친 것과 유사하다.