728x90
이번 포스트에서는 Transport Layer에 대해 다루도록 하겠다.
Transport Layer의 주요 역할 :
- logical communication (논리적인 통신) : 어플리케이션 또는 프로세스 간에 어떻게 해야지 데이터를 더 잘 전달하는 지를 담당
- segmentation : 송신 쪽에서는 큰 메시지들을 작은 세그먼트로 분리하여 Network Layer로 전달, 수신 쪽에서는 세그먼트들을 재결합하여 Application Layer로 전달
TCP :
- Congestion control (혼잡 제어)
- Flow control (흐름 제어)
- Connection setup (연결)
- Inordered delivery
- delay 보장 ❌
- bandwidth 보장 ❌
UDP :
- Unordered delivery : 순서에 상관없이 패킷이 들어오는 즉시 전달
- Unreliable delivery : 패킷이 손실될 수 있음
- delay 보장 ❌
- bandwidth 보장 ❌
- source port : 출발지 포트번호
- dest port : 도착지 포트번호
- length : 헤더를 포함한 UDP 세그먼트의 길이
- checksum : 1의 보수를 활용한 에러 체크
Multiplexing
: 여러 소켓의 데이터를 처리하고 각각에 전송 헤더를 추가한다.
Demultiplexing
: 헤더 정보를 사용하여 수신된 세그먼트를 올바른 소켓에 전달한다.
UDP를 쓰는 이유 :
- 연결 절차 없음 (간결함)
- 코드가 간단함
- 헤드 크기가 작음
'Networking' 카테고리의 다른 글
Go-Back-N & Selective Repeat (0) | 2022.06.04 |
---|---|
Reliable Data Transfer (RDT) (0) | 2022.05.26 |
Distance-Vector Algorithm (거리 벡터 알고리즘) (0) | 2022.05.02 |
Link-State Algorithm (링크 상태 알고리즘) (0) | 2022.04.14 |
ICMP & Traceroute (0) | 2022.04.13 |