애플리케이션 개발/Network

[Network] TCP/UDP

sofiaaa 2022. 1. 20. 13:56
반응형

자주 보는 TCP / UDP 이전 면접에서도 신뢰성 ? 비신뢰성 ? 여기까지밖에 대답하지 못했던 것 같다.

오늘을 마지막으로 제대로 알고 가야겠다.

전송 계층

전송 계층은 상위 계층들이 데이터 전달의 유효성이나 효율성을 생각하지 않도록 해주면서,

종단 간의 사용자들에게 신뢰성 있는 데이터를 전달하는 계층이다.

TCP, UDP는 전송 계층의 프로토콜이다.

 

TCP (Transmmision Control Protocol) 개념

먼저 TCP(Transmmision Control Protocol)는 인터넷 프로토콜 스위트의 핵심 프로토콜 중 하나로,

IP와 함께 TCP/IP 라는 명칭으로 불린다.

TCP는 전송 계층에 위치하며, 웹 브라우저들이 월드 와이드 웹에서 서버에 연결할 때 사용되며, 

이메일 전송이나 파일 전송에 사용된다.

 

TCP 헤더

TCP 세그먼트는 밑에 그림과 같은 헤더 구조로 시작하고, 전송 데이터가 뒤따른다. 그림 상단의 숫자는 비트 수다.

마지막 줄의 Options와 Padding은 생략할 수 있으므로 TCP 헤더의 최소 크기는 20바이트다. Options 필드는 다양한 종류의 부가 정보를 전달하는 데 사용하며, 최대 40바이트의 크기를 지원한다. Padding 필드는 헤더의 크기를 4바이트 단위로 맞추려고 사용한다.

 

 

프로토콜의 작동

TCP 프로토콜은 세 가지 흐름으로 구분한다. 

1. 연결 생성

2. 자료 전송

3. 연결 종료

 

UDP(User Datagram Protocol) 개념

UDP의 전송 방식은 너무 단순해서 서비스의 신뢰성이 낮고, 데이터그램 도착 순서가 바뀌거나, 중복되거나, 심지어는 통보 없이 누락시키기도 한다. UDP는 일반적으로 오류의 검사와 수정이 필요 없는 애플리케이션에서 수행할 것으로 가정한다.

UDP를 사용하는 네트워크 애플리케이션에는 도메인 이름 서비스 (DNS), IPTV, 음성 인터넷 프로토콜 (VoIP), TFTP, IP 터널, 그리고 많은 온라인 게임 등이 있다.

 

UDP 헤더 

 TCP보다 단순하여 의미와 기능을 쉽게 파악할 수 있다. 또한 프로토콜에서 수행하는 기능도 간단해 프로토콜 오버헤드가 작은 편이다.

 

 

UDP / TCP 단순 비교

TCP
신뢰성 보장
연결 지향적 특징
흐름 제어
혼잡 제어
UDP
비신뢰성
순서화되지 않은 데이터그램 서비스 제
실시간 응용 및 멀티캐스팅 가능
단순 헤더

 

참조

https://ko.wikipedia.org/wiki/사용자_데이터그램_프로토콜

 

사용자 데이터그램 프로토콜 - 위키백과, 우리 모두의 백과사전

UDP은 여기로 연결됩니다. 다른 뜻에 대해서는 UDP (동음이의) 문서를 참고하십시오. 사용자 데이터그램 프로토콜(User Datagram Protocol, UDP)은 인터넷 프로토콜 스위트의 주요 프로토콜 가운데 하나이

ko.wikipedia.org

https://ko.wikipedia.org/wiki/전송_제어_프로토콜

 

전송 제어 프로토콜 - 위키백과, 우리 모두의 백과사전

전송 제어 프로토콜(Transmission Control Protocol, TCP, 문화어: 전송조종규약)은 인터넷 프로토콜 스위트(IP)의 핵심 프로토콜 중 하나로, IP와 함께 TCP/IP라는 명칭으로도 널리 불린다. TCP는 근거리 통신

ko.wikipedia.org

https://terms.naver.com/entry.naver?docId=2271914&cid=51207&categoryId=51207 

 

TCP 헤더

TCP의 세그먼트는 [그림 9-8]과 같은 헤더 구조로 시작하고, 전송 데이터가 뒤따른다. 그림 상단의 숫자는 비트 수다. 마지막 줄의 Options와 Padding은 생략할 수 있으므로 TCP 헤더의 최소 크기는 20바

terms.naver.com

https://terms.naver.com/entry.naver?docId=2271923&cid=51207&categoryId=51207 

 

UDP 헤더

[그림 10-1]은 UDP 헤더(UDP Header)의 구조다. TCP보다 단순하여 의미와 기능을 쉽게 파악할 수 있다. 또한 프로토콜에서 수행하는 기능도 간단해 프로토콜 오버헤드가 작은 편이다. UDP 헤더 상단에 있

terms.naver.com

 

반응형

'애플리케이션 개발 > Network' 카테고리의 다른 글

[Network] IPv4 vs IPv6  (0) 2022.04.03
[SW] 라우팅  (0) 2022.04.02
[Network] 프로토콜(Protocol)  (0) 2022.01.24
[Network] HTTP/HTTPS  (0) 2022.01.21
[Network] OSI(Open System Interconnection) 7계층  (0) 2022.01.19