TCP와 UDP 모두 TCP/IP 4계층 중 '전송 계층'에서 사용되는 프로토콜

 

TCP 

  • 패킷 사이의 순서를 보장
  • 연결지향 프로토콜을 사용하여 연결 및 수신 여부 확인
  • 3-way Handshake를 통해 신뢰성 확보 및 연결 후 데이터 전송 시작
  • 4-way Handshake를 통해 연결 해제
  • UDP보다 속도가 느림
  • '가상회선 패킷 교환 방식' 사용
"가상회선 패킷 교환 방식"이란?
- 각 패킷에 가상회선 식별자가 포함
- 모든 패킷을 전송하면 가상회선이 해제
- 결과적으로 패킷들은 전송된 순서대로 도착하게 됨
  • 전이중(Full-Duplex), 점대점(Point-to-Point) 방식 사용
- 전이중 (Full Duplex) : 전송이 양방향으로 동시에 일어날 수 있음
- 점대점 (Point to Point) : 연결의 종단점이 정확히 2개임 (1:1 통신만 지원)
  • 흐름제어와 혼잡제어를 제공
- 흐름제어 : 데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우를 방지
- 혼잡제어 : 네트워크 내의 패킷 수가 과도하게 증가하지 않도록 방지
  • 속도보단 신뢰성이 보장되는 데이터 전송 시 권장 (ex. 파일 전송)

 

UDP 

  • 패킷 사이의 순서를 보장하지 않음
  • 수신 여부를 확인하지 않음
  • 별도의 신뢰성 확보 및 연결 과정 없음
  • TCP보다 속도가 빠름
  • '데이터그램 패킷 교환 방식' 사용
"데이터그램 패킷 교환 방식"이란?
- 패킷이 독립적으로 이동하며 최적의 경로로 이동
- 즉, 하나의 데이터에서 여러 패킷이 분할되면, 
  서로 다른 경로로 이동하여 전송되므로 도착 순서가 전송 순서와 다를 수 있음

 

  • UDP 헤더의 CheckSum 필드를 통해 최소한의 오류만을 검출
  • 1:1 , 1:N , N:N 의 통신이 모두 가능
  • 신뢰성보단 속도와 연속성이 더 우선인 데이터 전송 시 권장 (ex. 실시간 스트리밍)

+ Recent posts