[네트워크] TCP, UDP에 대한 이해

2023. 11. 2. 18:28네트워크

보통 TCP/IP라고 하면 많이 들어봤을 것이다.

TCP/IP는 TCP와 IP 프로토콜을 사용하기 때문에 붙여진 이름이다.

TCP는 Transmission Control Protocol, 한국말로 전송 제어 프로토콜이다.

말 그대로 전송을 제어한다. 이를 통해 IP 프로토콜이 가지고 있는 문제들을 해결한다.

 

특징은 다음과 같다.

3-way hand shake(연결지향): syn/ack를 주고받는 세번의 과정을 거친 후 연결을 확립한다. 이때의 연결은 랜선의 직접적 연결이 아닌 가상의 연결이다. 이를 통해 목적지에 불능인지 판단할 수 있다. 

데이터 전달 검증: 데이터가 잘 전달되면 목적지에서는 잘 전달되었다고 보내준다. 이를 통해 패킷이 유실되었는지를 확인할 수 있다.

순서 검증: 목적지에서 데이터 순서를 확인하고 잘못되었다면 잘못된 부분부터 다시 요청한다. 이를 통해 순서의 역전을 해결할 수 있다.

포트 정보: 출발지 포트, 목적지 포트 번호가 있다. 이를 통해 어떤 애플리케이션에서 사용되는지를 알 수 있다.

 

위의 특징을 통해 알 수 있듯이 TCP는 신뢰를 중요시하는 프로토콜이다.

 

이와는 반대로 속도를 중요시하는 UDP가 있다. 

UDP는 User Datagram Protocol, 한국말로 사용자 데이터크램 프로토콜이다.

IP와 같이 보내기만 한다. 잘못되어도 상관없다. 보낸다.

IP와 다른 점은 포트 정보가 있고 데이터가 잘 전달되었는지를 확인하는 체크섬 정보가 있다.

이외에는 없기 때문에 하얀 백지와도 같아 커스터마이즈가 가능하다.

 

원래는 TCP를 대부분 사용되었으나 최근에는 커스터마이즈를 할 수 있는 장점을 내세워 UDP 사용도 증가하는 추세이다.

 

Reference


https://www.inflearn.com/course/lecture?courseSlug=http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC&unitId=61354

 

학습 페이지

 

www.inflearn.com