
IP 프로토콜의 한계
IP 프로토콜은 아래 한계들이 있다.
- 비연결성: 서버에서 못받는 상황이어도 그냥 계속 보냄 (상어가 해저 케이블을 뜯어먹어서 물리적인 연결고리가 끊어져도 알 수 없음)
- 순서 보장이 안됨: 대용량 데이터를 전송하다보면 분할하여 보내게 되는데 중간과정에서 순서가 변경되어도 이를 알 수 없음
- 구분안됨: 같은 IP에서 여러 어플리케이션을 사용할 경우 구분 못함(ex: 멜론켜놓고 게임할때)
위 문제들을 해결 할 수 있는 프로토콜이 TCP 프로토콜이다.
TCP 프로토콜
전송 제어 프로토콜이다. 말부터가 전송을 제어한다고 한다.
출발지와 도착지의 port 와 더불어 전송제어, 순서, 검증등의 정보를 담고 있다.
다음 특징이 있다.
- 연결지향: 3way handshake로 상호간의 연결을 논리적으로 확인한 후에 데이터 전송
- 데이터 전달이 되는 것을 확인한다.
- 데이터가 올바른 순서로 전달되는 것을 확인한다.
3 way handshake

상호간에 syn, ack 주고받으면서 논리적으로 연결된것을 확인. (100% 보장은 아님. 그냥 논리적인 확인임)
3 way handshake를 통해 연결을 확인하고 데이터의 누락이나 순서를 확인할 수 있다.
UDP
쉽게 이야기하면 IP + Port라고 생각하면 된다.
3 way handshake도 없고 그냥 별 기능이 없다.
한 IP에서 여러 어플리케이션을 사용할 경우 각 어플리케이션을 구분할 수 있게 Port만 갖고 있다.
그래서 빠르다.
이젠 대부분의 웹에서 TCP 연결을 하고 있어서 TCP를 바꾸는 것은 거의 불가능하다.
만약 TCP보다 더 최적화를 하고 싶다면 UDP에서 하면된다.
HTTP3 에서는 UDP기반의 연결로 최적화를 했다. (참고)

광고아님
https://www.inflearn.com/course/http-%EC%9B%B9-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC/dashboard
모든 개발자를 위한 HTTP 웹 기본 지식 | 김영한 - 인프런
김영한 | 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., [사진] 📣 확인해주세요!본 강의는 자바 스프링 완전 정복 시리즈의 세 번째 강의입니다. 우아한형제들 최연
www.inflearn.com
'개발 > 브라우저와 네트워크' 카테고리의 다른 글
HTTP - Stateless, 비연결성 (0) | 2024.05.18 |
---|---|
HTTP 서론 (0) | 2024.05.18 |
IP: Internet Protocol (0) | 2024.05.14 |
브라우저에 url 치고 엔터누르면 (0) | 2024.01.10 |
내가 보려고 적어두는 크로스브라우징 (0) | 2023.12.23 |