TCP란?
TCP는 Transmission Control Protocol의 약자로 전송제어 프로토콜을 뜻합니다. TCP는 3-way handshake를 통해서 신뢰할 수 있고 정확한 데이터를 전달하는 프로토콜입니다.
데이터를 패킷(세그먼트)이라는 여러 개의 작은 조각으로 분할 해서 수신지에 보내고, 패킷의 도착을 ACK를 통해 확인하고, 수신한 패킷을 재조립해서 전체 데이터의 순서를 올바르게 조정합니다.
TCP에서 데이터를 분할하는 단위를 MSS(Maximum Segment Size)라고 합니다. 그리고 분할된 데이터에 순서 번호를 부여하여 재조립할 수 있게 합니다.
TCP는 연결 중심형이기 때문에 connection마다 buffer를 할당해서 connetion마다 순서를 조립합니다.
세그먼트는 MSL(Maximum Segment Lifetime)동안 생존해 있을 수 있습니다. 따라서 연결을 종료할 때 2MSL의 시간을 기다려서 ACK 수신을 확인하고 종료합니다.
UDP란?
UDP는 User Datagram Protocol의 약자로 사용자 데이터그램 프로토콜을 뜻합니다. 데이터그램을 캡슐화해서 보내는 방법과 연결 설정을 하지 않고 보내는 방법을 제공합니다. UDP는 흐름제어나 손상된 세그먼트의 수신에 대한 재전송을 하지 않고, 이는 모두 사용자의 몫이 됩니다. UDP는 연결이 필요하지 않으므로 코드와 초기 설정이 간단하다는 장점이 있다.
'Computer Science > Network' 카테고리의 다른 글
OSI 7계층이란 (0) | 2021.10.26 |
---|---|
웹 통신의 큰 흐름 (0) | 2021.10.04 |