본문 바로가기
CS/네트워크

[HTTP] IP (인터넷 프로토콜)

by 2245 2023. 4. 5.

출처

 

모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의

실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런


IP 주소 부여

IP는 컴퓨터에 주소를 부여하는 역할을 한다. (IP주소)

 

IP 인터넷 프로토콜의 역할

  • 지정한 IP 주소(IP Address)에 데이터 전달한다.
  • 패킷(Packet)이라는 통신 단위로 데이터 전달한다.

 

IP 패킷 정보

 

 

클라이언트에서 요청 패킷 전달

 

 

 

서버에서 응답 패킷 전달

참고 : 클라이언트에서 서버로 패킷을 전송할 때의 경로와 서버에서 클라이언트로 패킷을 전송할 때의 경로가 다를 수 있다. (인터넷망은 복잡하기 때문)

 

 

IP 프로토콜의 한계

  • 비연결성
    • 패킷을 받을 대상이 없거나, 서비스 불능 상태여도 패킷을 전송한다.
    • ex) 미국에 있는 친구에게 친구가 그 주소에 있겠지 싶어서 패킷을 던졌는데, 미국 친구의 컴퓨터가 꺼져있을 수도 있다.
    • ex) 편지를 그 친구가 그 주소에 살지 않는데도 그냥 보낸다.
  • 비신뢰성
    • 중간에 패킷이 사라지면?
    • 패킷이 순서대로 안오면?
    • 해결책 없음!
  • 프로그램 구분 불가
    • 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이라면?
    • ex) 게임하면서 음악도 듣고 채팅도 한다면?
    • IP 주소만으로는 응답 패킷을 전송해야 하는 애플리케이션 구분 불가

 

대상이 서비스 불능, 패킷 전송

 

패킷 소실

 

패킷 전달 순서 문제 발생

  • 전달할 메시지가 너무 크면 1500Byte 씩 끊어서 보낸다.
  • 1번을 보냈을 때의 경로와 2번을 보냈을 때의 경로가 달라지면 순서가 다르게 도착할 수 있다.

 

 

 

이런 IP의 한계점들을 보완하기 위해 만들어진 게 TCP 프토토콜이다.