본 글은 학교 네트워크 수업을 들으며, "Computer Networking: A Top-Down Approach 8ed(컴퓨터 네트워킹: 하향식 접근 제8판)"을 기반으로 공부한 내용을 정리한 글입니다.
Ch1.4 TCP/IP 프로토콜 모델(TCP/IP Protocol Model)
TCP/IP는 5개의 레이어로 구성되어 있음. (이전 OSI 7 layer model 글도 참고)
1. Application layer(응용 계층)
- 네트워크 응용 프로그램들이 정의되어 있음.
ex. FTP(파일), SMTP(메일), HTTP(웹), e-mail, P2P, ...
2. Transport layer(전송 계층)
- end system 간에 데이터 교환을 어떻게 잘 할 수 있을까 그 논리적 통신 규칙을 제공함.
ex. TCP, UDP
3. Network layer(네트워크 계층)
- end system 간 패킷 전달을 위한 라우팅과 포워딩을 수행하는 계층.
ex. IP, (optionally) ICMP, IGMP, ARP
4. Data link layer(데이터 링크 계층)
- 터미널간에 reliable한 프레임 전달을 담당함.
ex. 이더넷
5. Physical layer(물리 계층)
- 비트가 실제로 전선 타고 이동하는 레이어
여담
- 데이터 링크 계층과 물리 계층을 묶어서 Network Access layer라고 부르기도 함. 이는 이 둘이 독립적이긴 하지만 서로 pair가 되는 기술을 써야 호환성이 좋기 때문.
- 하지만 그렇다고 해서 TCP/IP가 4개의 레이어로 이루어진건 아님. 그렇게 말하는 사람이 있다면 틀린 거다.
여담. 편지 전송으로 예시를 들면, 이렇게 비유해볼 수 있음.
- 물리 계층 : 가는 도중 거쳐야 하는 실제 길.
- 데이터 링크 계층 : 로컬 우체국에 도착한 뒤에 이걸 이제 누구네 집으로 보낼지, 개똥이 집으로 보낼 지 철수 집으로 보낼 지 결정
- 네트워크 계층 : 개똥이네 집 우편함에서 철수네 집 우편함까지 어떻게 편지를 보낼 까 그 길을 정하고 실제로 보냄.
- 전송 계층 : 한 집에 애들이 여려명이니까, 애들 이름 보고 편지지 모으고 나누어줄거 아님? 편지에 이름을 써야 한다는 그 규칙을 정의함.
- 응용 계층 : 편지를 읽고 쓰는 어플리케이션 느낌
Encapsulation(캡슐화)
- `SDU(Service Data Unit)` : 상위 계층에서 전달받은 데이터
- `PDU(Protocol Data Unit)` : 특정 계층에서 생성된 데이터
캡슐화 과정)
1. 상위 계층으로부터 SDU를 받아, 데이터 수정 없이 그대로 `header`을 붙여서 PDU로 만듦.
2. 이 PDU를 SDU로서 하위 계층으로 전달함.
3. 그렇게 만들어진 데이터는 물리 계층에서 네트워크를 통해 패킷 단위로 전송됨.
이 때, 각 레이어의 PDU들을 저런 명칭으로 부름.
App. - `Data`
TCP/UDP - `Segment`
IP - `Packet`(Datagram이라고도 함.)
Data link - `Frame`
Decapsulation(디캡슐화)
디캡슐화 과정)
1. 어떤 데이터를 내가 받았으면,
2. 내 PDU의 헤더 안 특정 필드를 보고, 필요한 정보를 읽어내며
3. 자신의 헤더를 제거한 SDU를 상위 계층으로 전달함.
3. 최종적으로 어플리케이션 레이어 등에서 데이터가 처리됨.
'CS > Computer Network' 카테고리의 다른 글
[네트워크] Ch2 Application Layer - Client-Server Model (0) | 2025.01.13 |
---|---|
[네트워크] Ch1.5 인터넷의 역사(Internet History) (0) | 2025.01.13 |
[네트워크] Ch1.3 레이어드 프로토콜 모델(Layered Protocol Model) (0) | 2025.01.13 |
[네트워크] Ch1.2 프로토콜의 정의(Definition of Protocol) (0) | 2025.01.13 |
[네트워크] Ch1.1 인터넷이란 무엇인가?(What is the Internet?) (0) | 2025.01.13 |