CS 09 TCP UDP

이상인·2023년 9월 4일
0

9. TCP/UDP에 대해서 설명해주세요.

TCP와 UDP의 신뢰성 차이가 어떤 프로세스 떄문에 발생하는지 3-way handshaking

TCP (Transmission Control Protocol)와 UDP (User Datagram Protocol)는 컴퓨터 네트워크에서 데이터 전송을 위한 두 가지 중요한 프로토콜입니다.

TCP (Transmission Control Protocol):

TCP는 신뢰성 있는 데이터 전송을 제공하는 연결 지향 프로토콜입니다.
데이터를 전송하기 전에 먼저 연결을 설정하고, 데이터 전송 후에 연결을 해제하는 과정을 거칩니다.
신뢰성 있는 데이터 전송을 위해 데이터의 순서, 손실, 중복 및 오류 복구를 관리합니다.
데이터 전송 과정에서 패킷 손실이나 손상이 발생하면 재전송을 요청하고, 수신측에서는 데이터를 올바르게 재조립합니다.
TCP는 대부분의 웹 브라우징, 이메일 전송, 파일 전송, 채팅 애플리케이션과 같은 신뢰성이 중요한 응용 프로그램에서 사용됩니다.
UDP (User Datagram Protocol):

UDP는 비연결성 프로토콜로, 연결 설정 및 해제 과정이 없습니다.
UDP는 데이터를 전송하고 받는 역할만 하며, 데이터 전송 과정에서 오류 검사 및 복구를 수행하지 않습니다.
UDP는 빠른 데이터 전송을 제공하며, 전송 지연 시간이 적습니다. 그러나 데이터의 손실이나 순서 변경 가능성이 있습니다.
UDP는 실시간 스트리밍, DNS 조회, 온라인 게임, 음성 및 비디오 채팅과 같은 실시간 응용 프로그램에서 주로 사용됩니다. 이러한 응용 프로그램에서는 소량의 데이터를 신속하게 전송하는 것이 중요하며, 신뢰성이 상대적으로 중요하지 않을 수 있습니다.
TCP와 UDP의 신뢰성 차이:
TCP와 UDP의 신뢰성 차이는 다음과 같은 프로세스와 기능에 기인합니다:

3-way Handshaking (TCP): TCP 연결을 설정할 때 3-way Handshaking 프로세스를 사용합니다. 이 프로세스는 다음과 같이 작동합니다.

단계 1: 클라이언트가 서버에게 연결 요청 (SYN)
단계 2: 서버가 클라이언트에게 연결 수락 및 클라이언트에게 응답 (SYN-ACK)
단계 3: 클라이언트가 서버에게 수락 응답 (ACK)
이렇게 함으로써 양측 간의 연결이 확립되며, 데이터를 신뢰성 있게 전송할 수 있습니다.
신뢰성 및 흐름 제어 (TCP): TCP는 데이터의 신뢰성을 보장하기 위해 데이터의 순서, 손실, 중복을 관리하고 재전송 및 흐름 제어를 수행합니다. 이로써 데이터가 정확하게 전송되고 도착하는 것을 보장합니다.

비연결성 (UDP): UDP는 연결 설정 단계가 없으므로 데이터를 전송하기 위한 별도의 핸드셰이킹 과정이 없습니다. 따라서 데이터를 빠르게 전송할 수 있지만, 데이터의 신뢰성을 보장하지 않습니다.

요약하면, TCP는 신뢰성 있는 연결 기반 프로토콜로, 데이터의 신뢰성과 순서를 중요시하는 응용 프로그램에 적합하며, UDP는 연결 없이 빠른 데이터 전송을 지원하는 프로토콜로, 일부 데이터 손실이 허용되는 실시간 응용 프로그램에 적합합니다.

0개의 댓글