IT
TCP, UDP
yeosang0508
2024. 6. 6. 23:54
Transport Layer (전송계층)
End point 간 신뢰성 있는 데이터 전송을 담당하는 계층
- 신뢰성 : 데이터를 순차적, 안정적인 전달
- 전송 : 포트 번호에 해당하는 프로세스에 데이터를 전달
만약 전송 계층이 없다면??
- 데이터의 순차 전송이 원활히 안될 것이다.
- Flow(흐름 문제), 송수신자 간의 데이터 처리 속도 차이
- Congestion(혼잡 문제), 네트워크의 데이터 처리 속도 (ex. 라우터)
결과적으로 데이터의 손실이 발생할 것이다.
TCP (Transmission Control Protocol)
- 신뢰성있는 데이터 통신을 가능하게 해주는 프로토콜
- 특징 : Connection 연결 (3 way-handshake) - 양방향 통신
- 데이터의 순차 전송을 보장
- Flow Control(흐름 제어)
- Congestion Control (혼잡 제어)
- Error Detection (오류 감지)
TCP의 문제점
- 전송의 신뢰성은 보장하지만 매번 Connection을 연결해서 시간손실 발생
(3 way - handshake) - 패킷을 조금만 손실해도 재전송
UDP (User Datagram Protocol)
- TCP보다 신뢰성이 떨어지지만 전송 속도가 일반적으로 빠른 프로토콜
(순차전송 x, 흐름제어 x, 혼잡 제어 x) - Connectionless (3 way-handshake x)
- Error Detection
- 비교적 데이터의 신뢰성이 중요하지 않을 때 사용 (ex. 영상 스트리밍)
TCP, UDP의 특성을 파악하고 상황에 따라 적합한 프로토콜을 사용할 수 있다.
TCP, UDP의 헤더에 대해 파악하고 성능 개선에 이용할 수 있다.