TCP / UDP란?
TCP/UDP는 OSI 7 계층 모델의 전송계층에서 동작하는 프로토콜.
IP와 함께 사용되어 데이터를 송수신한다.
둘의 주된 차이는 데이터 전송 방식과 신뢰성이다.
TCP(전송 제어 프로토콜, Transmission Control Protocol)의 특징
1. 연결지향 : 3 way Handsahke
TCP의 논리적 연결 과정을 말한다.
* SYN : 접속 요청 / ACK : 요청 수락(ACK와 함께 데이터 전송 가능)
1. 클라이언트가 서버에게 접속을 요청함.
2. 서버가 클라이언트의 요청을 수락하고, 클라이언트에게 접속을 요청함.
3. 클라이언트가 서버의 요청을 수락함.
2. 신뢰성 : 순서 보장
먼저, TCP 프로토콜을 이용한 메시지 전달 과정을 살펴보자.
1. HTTP: 프로그램이 메시지 생성, socket 라이브러리를 통해 전달.
2. TCP: TCP 정보 생성, 메시지 데이터 포함.
3. IP: IP 패킷 생성, TCP 세그먼트 포함.
→즉, IP 패킷은 TCP 세그먼트를, TCP세그먼트는 메시지 데이터를 포함하고 있음.
TCP 세그먼트는 출발지/목적지 PORT, 전송 제어, 순서, 검증 정보 등을 포함함.
TCP 세그먼트에 순서에 대한 정보를 포함하기 때문에 잘못된 순서로 패킷이 전달되면 이를 최적화 할 수 있음.
때문에, IP 프로토콜로는 해결되지 않던 순서, 제어 등의 문제를 해결.
UDP(사용자 데이터그램 프로토콜, User Datagram Protocol)특징
1. 비연결형
2. 신뢰성 보장 X / 오류검출 O
3. 빠른 데이터 전송
IP와 거의 같다. PORT와 체크섬 정도만 추가된다.
단순하고 빠르다는 장점이 있다. 때문에 실시간 스트리밍과 같이 속도가 중요한 서비스에 사용된다.
이미지 출처/참고
모든 개발자를 위한 HTTP 웹 기본 지식 강의 | 김영한 - 인프런
김영한 | 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., [사진] 📣 확인해주세요!본 강의는 자바 스프링 완전 정복 시리즈의 세 번째 강의입니다. 우아한형제들 최연
www.inflearn.com
'Computer Science > Network' 카테고리의 다른 글
URI와 웹 브라우저 요청 흐름 (0) | 2025.01.25 |
---|---|
포트(PORT)와 DNS (0) | 2025.01.24 |
IP(인터넷 프로토콜) (0) | 2025.01.22 |
HTTP vs HTTPS, SSL/TLS (0) | 2024.09.30 |
HTTP/1.0, HTTP/1.1, HTTP/2.0, HTTP/3.0(QUIC) (2) | 2024.09.30 |