패킷교환 방식은 패킷이라는 단위로 데이터를 잘게 나누어 전송하는 방식이다. 각 패킷에는 출발지와 목적지 정보가 있기 때문에 가장 효율적인 방식으로 이동할 수 있다.
IP는 출발지와 목적지의 정보를 IP 주소라는 특정한 숫자값으로 표기하고 패킷단위로 데이터를 전송하게 되었다.
만약 서버가 꺼져있다면 클라이언트가 SYN을 보내고 서버에서 응답이 없기 때문에 데이터를 보내지 않는다. 현재에는 최적화가 이루어져 3번에서 클라이언트가 ACK를 보낼때 데이터를 함께 보내기도 한다.
TCP는 데이터 전송이 성공적이라면 이에 대한 응답을 돌려주기 때문에 IP 패킷의 한계인 비연결성을 보완할 수 있다.
만약 패킷이 순서대로 도착하지 않는다면 TCP 세그먼트에 있는 정보로 다시 패킷 전송을 요청할 수 있기 때문에 IP 패킷의 한계인 비신뢰성을 보완할 수 있다.
UDP는 IP 프로토콜에 PORT, 체크섬 필드 정보만 추가된 단순한 프로토콜이다. TCP보다 신뢰성은 낮지만 3 way handshake 방식을 사용하지 않아 상대적으로 속도가 빠르다. HTTP3는 UDP를 사용하며 이미 여러 기능이 구현된 TCP보다 UDP는 커스터마이징이 가능하다는 장점이 있다.
TCP가 가지고 있는 기능들을 UDP는 가지고 있지 않기 때문에 신뢰성이 낮지만 속도는 상대적으로 빠르다.