[네트워크] IP(인터넷 프로토콜)

IP(인터넷 프로토콜)

인터넷 프로토콜

IP는 인터넷상에서 데이터를 주고 받기 위한 통신 규약입니다.

이 IP를 기반으로 네트워크 상에서 컴퓨터(노드)를 식별하기 위해 부여된 위치 주소가 IP 주소입니다.

서버와 클라이언트 사이에는 인터넷이 있습니다.

통신을 위해 클라이언트와 서버는 각 IP주소를 부여받습니다.

IP를 이용해 특정 PC에서 다른 PC까지 데이터를 보내는 엔드투엔드 통신을 합니다.

노트북 같은 경우는 유선 이더넷 인터페이스와 무선 LAN 인터페이스가 같이 탑재된 경우가 많은데, 이런 경우 인터페이스마다 IP주소를 설정할 수 있습니다.

따라서, IP주소는 호스트 자체가 아니라 정확하게는 호스트의 인터페이스를 식별하는 역할을 합니다.

📄 IP(인터넷 프로토콜)의 역할

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

▪ 클라이언트 패킷 전달

  1. 출발지 IP주소와 목적지 IP주소와 메세지를 담은 IP패킷을 인터넷 망에 던진다.
  2. 노드끼리 서로 소통하고 목적지까지 IP패킷이 도착한다.

▪ 서버 패킷 전달

  1. 서버도 마찬가지로 서버패킷을 던진다.

📄 데이터의 목적지에 따른 캐스트 분류

1. 유니캐스트

  • 목적지 IP: 유니캐스트
  • 출발지 IP: 유니캐스트
  • 단 하나의 목적지에 데이터를 전송
  • TCP/IP 통신의 대부분은 유니캐스트
  • IP 주소 구성
    • 네트워크부: 네트워크를 식별
    • 호스트부: 네트워크 내 호스트를 식별

2. 브로드캐스트

  • 목적지 IP: 브로드캐스트
  • 출발지 IP: 유니캐스트
  • 같은 네트워크 상의 모든 호스트에 데이터를 전송
  • IP주소 구성
    • 같은 네트워크에 있는 모든 호스트에 일괄적으로 데이터를 전송하므로 32비트가 모두 ‘1’
    • 10진 표기로 바꾸면 255.255.255.255

3. 멀티캐스트

  • 목적지 IP: 멀티캐스트
  • 출발지 IP: 유니캐스트
  • 특정 그룹에 포함되는 호스트에 데이터를 전송
  • 멀티캐스트 그룹에 포함되는 호스트가 반드시 같은 네트워크라고 할 수 없다.
  • IP주소 구성
    • 멀티캐스트 IP주소를 244.0.0.0 ~ 239.255.255.255로 정해져 있음.
    • 멀티캐스트 IP주소를 미리 정할 수도 있다. (ex. 224.0.0.2 = 같은 네트워크 상의 모든 라우터)

📄 IP프로토콜의 한계

  1. 비연결성

    • 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송가능
    • 클라이언트는 대상서버가 서비스 가능한 상태인지 알지 못한다.
  2. 비신뢰성

    • 중간에 패킷이 사라질 가능성
    • 패킷이 순서대로 오지 않을 가능성

메세지가 대략 1500 바이트가 넘으면 메세지를 끊어서 전송합니다.

이때 끊어진 메세지가 순서대로 도착한다는 보장이 없는데 IP 프로토콜 만으로는 이 문제를 해결할 수 없습니다. 이를 보완하기 위해 사용되는 것이 TCP프로토콜 입니다.

출처

Leave a comment