목차
1. UDP
- User Datagram Protocol의 약자로 보안과 신뢰성보다 전송 속도와 효율성이 더 중요한 경우 데이터를 전송하기 위해 IP와 함께 오래 사용된 프로토콜
1) 주요 특징
- 비연결형 서비스로 데이터그램 방식을 제공
- 데이터의 전송 순서가 바뀔 수 있다. => 순서제어 X
- 데이터 수신 여부를 확인하지 않는다.
- TCP의 3-way-handshaking과 같은 과정이 없다.
- 신뢰성이 낮다.
- 흐름제어가 없어서 제대로 전송되었는지, 오류가 없는지 확인할 수 없다.
- TCP보다 속도가 빠르다.
- 1:1 & 1:N & N:N 통신이 가능하다.
2. UDP 헤더구조
- Source Port / Destination Port
- Source Port는 송신자 측에서 통신을 위해 사용하는 port번호
- Destination Port는 수신자, 즉 메시지를 받는 측의 통신 port번호
- Total Length
- 헤더와 데이터를 합한 사용자 데이터그램의 전체길이를 정의
- UDP 데이터그램의 헤더인 8byte~65507바이트 사이의 값이 됨
- Checksum
- 전송 에러 관련 필드로 UDP는 체크섬(데이터 손실 유무 확인만 하는 서비스)이 존재
- UDP는 에러 복구 및 기타 전송 에러 관련 서비스 제공이 없기 때문에 TCP에 비해 간단
체크섬 필드에서 TCP와 UDP의 차이점
UDP Checksum | TCP Checksum |
ipv4 선택사항, ipv6 필수사항 (송신측에서 체크섬 값 0으로 송출하면 수신측은 체크섬 안함) |
필수사항 |
3. UDP 통신방식
- UDP는 독립적인 패킷으로 통신하는 프로토콜이므로 TCP와 달리 연결을 위해 할당되는 논리적 경로가 없고, 각각의 패킷이 다른 경로로 전송,처리되는 비연결형이다.
- 그림에서와 같이 송신자가 데이터를 보내기만 할뿐 TCP의 복잡한 신호절차가 없으며 데이터의 손실 유무만을 파악하여 UDP를 사용하는 애플리케이션으로 해결을 해야하는 통신 방식이다.
- 이러한 특징 때문에 UDP는 매우 빠른 속도로 데이터를 전달할 수 있으며 1:1, 1:N, N:N 통신이 가능하여 실시간 스트리밍 같이 정보의 신뢰성보다는 실시간성과 연속성, 속도 등이 더 중요한 경우에 널리 사용된다.
4. 정리
프로토콜 종류 | TCP | UDP |
연결 방식 | 연결형 서비스 | 비연결형 서비스 |
패킷 교환 방식 | 가상 회선 방식 | 데이터그램 방식 |
전송 순서 | 전송 순서 보장 | 전송 순서가 바뀔 수 있음 |
수신 여부 확인 | 수신 여부를 확인함 | 수신 여부 확인 안함 |
통신 방식 | 1:1 통신 | 1:1 & 1:N & N:N 통신 |
신뢰성 | 높음 | 낮음 |
속도 | 느림 | 빠름 |
출저 및 참고문헌
https://velog.io/@sugenius77/TCP-UDP
https://brunch.co.kr/@dreaminz/5
http://www.ktword.co.kr/test/view/view.php?m_temp1=1889&id=1103
https://evan-moon.github.io/2019/11/10/header-of-tcp/
https://breezebm.tistory.com/74
'리팩토링' 카테고리의 다른 글
리팩토링 6주차 OSI 7계층 프로토콜 (0) | 2024.08.23 |
---|---|
리팩토링 5주차 OSI 7계층 장비 (2) | 2024.08.15 |
리팩토링 4주차 TCP (0) | 2024.08.09 |
리팩토링 3주차 OSI 7계층 (0) | 2024.08.01 |
리팩토링 2주차 자유주제(피싱에 대하여) (0) | 2024.07.30 |