Transport layer에서 UDP든 TCP든 상관없이 제공하는 기능 2가지가 있다. 바로 Mutilplexing / Demultiplexing과 error check이다.
1. Mutilplexing / Demultiplexing
Mutilplexing은 application단에서 여러개의 소켓을 통해 내려온 message들을 network단으로 내려주는 것을 말하며 Demultiplexing은 network단에서 올라온 packet을 적절한 socket으로 올려주는 것을 말한다.
UDP의 경우 dest ip/port # 만을 확인하여 올려보내고 TCP의 경우 dest ip/port #, src ip/port # 4개를 모두 확인한다. 이는 TCP가 connection-oriented 한 특성을 갖기때문이다. 반면 UDP는 연결의 개념이 아니기에 src를 확인하지 않는다.
2. error check
UDP/TCP Segment header의 checksum이라는 테크를 이용해서 데이터의 에러발생 유무를 확인한다. UDP의 경우에는 에러가 발생한 segment라면 버리게 되고 TCP의 경우에는 reliable한 통신을 제공하기 때문에 sender쪽의 재전송을 통해 다시금 데이터를 받게 된다.
'computer science > Network' 카테고리의 다른 글
[network] TCP의 신뢰성 확보를 위한 Timeout 한방정리 / Fast Retransmission (0) | 2022.10.27 |
---|---|
[network] TCP pipeline protocol의 개념적 접근 방법 2가지, Go-Back-N과 Selective Repeat (0) | 2022.10.26 |
[network] TCP reliable principle, 신뢰성 확보를 위한 원칙 (0) | 2022.10.22 |
[network] router의 데이터 전달방식 2가지 (0) | 2022.10.19 |
[network] 인터넷에서의 데이터 전송방식 2가지 (TCP,UDP), data transfer service (0) | 2022.10.19 |