Lined Notebook

전송 계층(transport) : TCP와 UDP ★★★

by yjym33

TCP (Transmission Control Protocol)


**TCP (Transmission Control Protocol)**는 신뢰성 있는 데이터 전송을 보장하는 프로토콜로, 인터넷에서 가장 널리 사용되는 전송 계층 프로토콜 중 하나입니다.

특징:

신뢰성TCP는 데이터 전송의 신뢰성을 중요하게 여깁니다데이터 전송 시, 데이터가 손실되지 않고 순서대로 도착하도록 보장합니다.
연결 지향성TCP는 연결을 설정하고 데이터를 전송한 후 연결을 정리합니다. 이로써 데이터의 신뢰성을 확보합니다.
흐름 제어TCP는 데이터 송신 측과 수신 측 사이의 데이터 흐름을 조절하여 수신 측의 버퍼 오버플로우를 방지합니다.
혼잡 제어TCP는 네트워크 혼잡을 감지하고 이에 대응하여 데이터 전송 속도를 조절합니다.
안전성데이터 전송 중에 오류를 검출하고 복구합니다. 오류 검출을 위해 체크섬을 사용합니다.
포트 번호TCP 헤더에는 송신 및 수신 애플리케이션을 식별하기 위한 포트 번호가 포함됩니다.
3-way 핸드셰이크: 연결 설정과 해제를 위해 3-way 핸드셰이크 프로세스를 사용합니다.
주로 웹 브라우징, 이메일, 파일 전송 등과 같이 신뢰성이 요구되는 애플리케이션에서 사용됩니다.



UDP (User Datagram Protocol)


**UDP (User Datagram Protocol)**는 경량 프로토콜로, 데이터 전송을 빠르게 하기 위해 설계되었으며, 신뢰성이 요구되지 않는 경우에 사용됩니다.

특징:

비연결성UDP는 연결을 설정하고 해제하지 않으며, 데이터 전송에 대한 신뢰성을 보장하지 않습니다.
신속한 전송UDP는 데이터를 빠르게 전송하고 받을 수 있도록 설계되어 있습니다.
흐름 제어 및 혼잡 제어 없음UDP는 흐름 제어나 혼잡 제어를 수행하지 않기 때문에 데이터 손실이나 혼잡 문제에 대한 처리를 하지 않습니다.
안전성오류 검출을 위한 체크섬은 제공하지만, 오류 복구를 위한 메커니즘은 없습니다.
멀티캐스트 및 브로드캐스트UDP는 멀티캐스트(Multicast)와 브로드캐스트(Broadcast) 통신을 지원합니다.
포트 번호UDP 헤더에는 송신 및 수신 애플리케이션을 식별하기 위한 포트 번호가 포함됩니다.

 


UDP는 실시간 스트리밍, DNS (Domain Name System), VoIP (Voice over IP), 온라인 게임과 같이 데이터 전송의 신속성이 중요한 애플리케이션에서 주로 사용됩니다. 그러나 데이터의 신뢰성과 순서가 보장되어야 하는 경우에는 TCP를 사용하는 것이 좋습니다.

블로그의 정보

생각보다 실천을

yjym33

활동하기