TCP/UDP

Q. TCP와 UDP의 차이점은?

TCP는 연결 지향형 프로토콜로 3-way handshake & 4-way handshake 과정을 통해 연결 및 해제를 하는 과정을 거치게 됩니다. 신뢰성을 보장하기 위해 흐름 제어, 혼잡 제어, 오류 제어를 할 수 있다는 장점이 존재하지만, 이로 인해 UDP에 비해 속도가 느린 단점이 있습니다.

UDP는 비연결형 프로토콜로 데이터그램 단위로 전송하는 프로토콜입니다. 정보를 주고 받을 때 TCP처럼 연결 과정을 거치지 않아 TCP에 비해 빠르다는 장점이 있습니다. 하지만, UDP로 데이터를 보내게 된다면 신뢰성이 보장되지 않아 데이터가 손실될 수 있다는 단점이 있습니다.

Q. 3-way hanshake & 4-way handshake

3-way hanshake는 연결을 수립하는 단계입니다. 클라이언트는 서버에 요청을 할 수 있는지, 서버는 클라이언트에게 응답을 할 수 있는지 확인하는 과정을 말합니다. SYN, ACK 패킷을 서로 주고받는 과정으로 구성됩니다.

4-way hanshake는 연결을 해제하는 단계입니다. 클라이언트는 서버에게 연결 해제를 FIN 플래그를 통해 더 이상 연결을 하지 않을 것임을 알린 후 서버에게 최종적으로 응답을 받은 후 연결을 해제합니다.

Last updated