인터넷 프로토콜 스위트라고도 불리며 인터넷을 구성하는 기본적인 프로토콜의 집합
인터넷 프로토콜 스위트는 TCP/IP 프로토콜 스택이라고도 불림. 이 규칙들은 데이터를 보낼 때 어떤 방식으로 보낼지, 어떤 경로로 보낼지, 데이터의 조각을 어떻게 조립할지 등을 정의
TCP는 신뢰성 있는 데이터 전송을 담당하고, IP는 데이터의 경로를 설정하고 전달함. 이외에도 ICMP, UDP,ARP 등 다른 규칙들도 있음
소켓 라이브러리를 통해서 os 계층에 'hello world' 라는 메세지를 넘김
그러면 os계층에서 TCP가 'hello world'라는 메세지에 TCP 정보를 씌움
그 다음 밑에 한칸 더 내러서 그 겉에 또 IP를 씌움 => IP패킷 생성됨
마지막 네트워크 인터페이스를 통해서 나갈 때 이더넷 프레임이라는 걸 최종적으로 씌워서 나감
(이더넷 프레임 : 물리적인 정보들이 포함되어있음)
IP패킷 안에 TCP 정보가 들어가있음
출발지 포트, 목적지 포트, 전송 제어, 순서, 검증 정보 등등이 포함되어있음 -> IP만 사용했을때의 문제 해결
전송 제어 프로토콜(transmission control protocol)
1. 연결지향 : 상대방과 내가 연결이 되어있나 확인하고 보냄
2. 데이터 전달 보증 : 상대방이 받았는지 안받았는지 확인 가능
3. 순서 보장 : 최적화 방법에 따라 다를 수 있지만, 기본적으로 잘못된 순서로 서버에 패킷이 전달되면 서버는 패킷을 어디서부터 다시 보내야하는지 명시해줌
TCP를 거치게 되면 이 정보들이 추가됨 ( 출발지 포트, 목적지 포트, 전송 제어, 순서 ,검증 정보)
TCP란 다르게 데이터를 패킷으로 나누고 반대편에서 재조립하는 과정을 거치지 않음
수신 측에서 제대로 받던 안받던 그냥 데이터를 보내가만 함.
데이터 전달 보증 x, 순서 보장 x
정리를 해보면 IP와 거의 동일하지만 PORT와 체크섬 정보가 들어있음
포트의 역할 : 내 컴퓨터에서 게임도하고, 노래도 듣고 있으면 내 IP로 여러 패킷이 막 올텐데 이 패킷들을 구분해줌
빨라서
최근 HTTP3 스펙의 등장과 함께 UDP가 각광을 받고 있음
90퍼센트가 TCP이지만 시대가 바뀌면서 UDP가 뜨고있음
웹브라우저에서 http 통신을 할 때 UDP를 씀으로써 최적화...
정보가 많아서 도움이 많이 됐습니다.