TCP와 UDP는 인터넷을 통해 데이터를 전달하는 두 가지 주요 프로토콜로 목적에 따라 다르게 사용된다
예시: 웹 브라우징(HTTP/HTTPS), 이메일(SMTP), 파일 전송(FTP)
예시: 실시간 스트리밍, 온라인 게임, VoIP(Voice over IP)
이 차이점들로 인해 TCP는 신뢰성과 정확성이 중요한 애플리케이션에 주로 사용되며, UDP는 속도가 중요한 실시간 애플리케이션에 많이 사용된다
TCP에서는 데이터 전송 전에 송신자와 수신자가 핸드셰이크(예: SYN, SYN-ACK, ACK)를 통해 연결을 설정합니다. 이는 데이터가 양방향으로 안전하게 전송되도록 합니다.
UDP에서는 이러한 연결 설정 과정이 없습니다. 송신자는 수신자의 주소만 알고 있으면 바로 데이터를 전송할 수 있습니다.
UDP는 데이터그램이라고 하는 독립적인 패킷을 전송합니다. 각 데이터그램은 자체적으로 목적지 주소를 포함하고 있으며, 독립적으로 전송됩니다.
이 데이터그램은 별도의 연결 없이 전송되므로 빠른 전송 속도를 제공합니다.
연결을 설정하지 않기 때문에 데이터그램이 성공적으로 도착했는지 확인하는 과정이 없습니다.
데이터가 손실되거나 중복되거나 순서가 뒤바뀌는 경우에도 이를 복구하지 않습니다.
UDP는 TCP에 비해 단순하고 오버헤드가 적어 빠른 전송이 가능합니다.