네트워크에 대해 공부해본 적이 있는 사람이라면 OSI 7계층과 TCP/IP 4계층에 대해 한번쯤 들어봤을 것이다. 이번 글에서는 해당 주제를 다뤄보려 한다.
먼저, 다음과 같은 예시를 통해 이해해보자.
<PC 크롬 브라우저에서 네이버 웹사이트를 접속하는 경우>
프로토콜이란 쉽게 말해 통신을 위한 규약이다.
예를 들어, A라는 사람이 생년월일 정보를 B에게 전달한다고 가정해보자.
A가 "제 생년월일은 010203이에요"라고 한다면,
B는 별다른 설명 없이도 앞의 01이 생년, 중간 두 자리 02이 월, 마지막 두 자리 03이 일이라는 것을 알고 있을 것이다.
이처럼 문법, 해당 문법의 의미, 이것으로 어떤 액션을 취할 것인지 등의 규칙 을 통틀어 '프로토콜'이라고 한다.
네트워크에서 계층이 존재할 경우, 하위 계층은 상위 계층에게 서비스를 제공하고 상위 계층은 이를 이용하게 된다.
그러기 위해서는 계층 간의 인터페이스가 잘 정의되어 있어야 하며, 이 정의된 인터페이스를 프로토콜이라고 한다.
OSI 7계층이란 네트워크에서 통신이 일어나는 과정을 7단계로 나눈 것이다.
앞선 예시를 사진을 참고하며 다시 한 번 이해해보자.
앞선 예시에서 송신 호스트는 사용자이며, 수신 호스트는 네이버 서버가 된다.
송신 호스트가 응용 계층(브라우저)에서 데이터(URL)을 입력한다.
해당 데이터는 전송이 되기 전 표현 계층, 세션 계층, 전송 계층, 네트워크 계층, 데이터 링크 계층을 차례대로 지나며, 필요한 데이터를 기존 데이터에 추가한다.
물리 계층에서는 완성된 데이터를 네트워크에 전송한다.
서버는 전달받은 데이터를 물리 계층 -> 응용 계층 순으로 전달한다.
응용 계층에서 전달 받은 요청을 수신 호스트에 전달한 뒤, 수신 호스트가 해당 요청의 응답을 다시 데이터로 만든다.
이번에는 각 계층에 대해 조금 더 자세히 알아보자.
7계층 - 응용 계층 (Application Layer)
6계층 - 표현 계층 (Presentation Layer)
5계층 - 세션 계층 (Session Layer)
4계층 - 전송 계층 (Transport Layer)
3계층 - 네트워크 계층 (Network Layer)
2계층 - 데이터 링크 계층 (Data Link Layer)
1계층 - 물리 계층 (Physical Layer)
OSI 7계층 모델은 네트워크 통신 표준화를 위한 개념 모델이다.
즉, 실제로 인터넷 통신이 OSI 7계층 모델처럼 동작하지는 않는다.
실제 인터넷 통신의 대부분은 TCP/IP 통신을 사용한다.
TCP/IP 통신은 TCP와 IP에 기반한 통신 방법으로, 이 통신에 특화된 모델을 TCP/IP 4계층 모델이라 한다.
아래 사진에서 알 수 있듯, TCP/IP 4계층은 OSI 7계층과 유사하지만 4계층으로 간소화 되어 있다.
4계층 - 응용 계층 (Application Layer)
3계층 - 전송 계층 (Transport Layer)
2계층 - 인터넷 계층 (Internet Layer)
1계층 - 네트워크 인터페이스 계층 (Network Interface Layer)
참고 링크