[Network] IP

chxxrin·2024년 5월 17일
0

Network

목록 보기
12/13

인터넷에서 데이터 전달 프로토콜

IP (Internet Protocol)

  • 네트워크 호스트는 IP에서 정의된 규약(Protocol)을 이용해 네트워크 상에서 정보를 주고 받으며,
    이 정보는 패킷(Packet) 단위로 전달 된다.

네트워크 호스트(Network Host)

  • 컴퓨터 네트워크에 연결된 장치이다.
  • 네트워크 호스트의 역할은 네트워크 상에서 정보를 주고 받는 것으로, 우리는 네트워크 호스트를 네트워크의 노드라고도 부른다.
  • 간단하게 생각하면 개인 컴퓨터가 네트워크 호스트가 될 수 있다.

패킷(Packet)

  • 소포(정보)를 뜻하는 Package과 덩어리를 뜻하는 Bucket을 합친 축약어로, 정보의 덩어리를 의미한다.
  • 통신 시 컴퓨터는 정보를 덩어리 단위로 만들어서 다른 컴퓨터에 전달하는데 이를 Packet이라 부른다.

네트워크와 네크워크 호스트

  • 네트워크는 네트워크 호스트들로 구성이 되는데 호스트들 간에는 통신이 가능하다.
  • 통신에 사용하는 프로토콜이 바로 IP이다.
  • IP을 이용한 통신을 하기 위해서(하나의 호스트에서 다른 호스트로 전송하기 위해서)는 호스트의 주소 정보가 필요하다.
  • 주소가 있어야지 패킷을 보낼 목적지를 설정할 수 있다.
  • 이러한 주소 값이 바로 IP Address이다.

IP Address

  • IP Protocol을 사용하는 호스트의 주소 정보이다.
  • IP Address가 있어야지 패킷이 어느 주소로 가야할지 알 수 있다.
  • 예를 들어 두 노드가 직접적으로 연결되어 있지 않는 경우 다른 노드를 통해서 연결되어 있는 노드에 정보를 전달해주어야 하는데, 이 경우 목적지 값이 있어야 호스트에 전달이 가능해진다. 

우리는 기존 Packet과는 별로도 IP Packet에 IP Address 값을 넣어주는데 이를 통해 출발지와 목적지의 설정이 가능해진다.
보통 인터넷 네트워크에서는 출발지와 목적지 사이에 여러 노드들이 존재하는데, 이 노드들을 통해서 목적지에 전달하게 하기 위해서는 IP Address가 필수적으로 필요하다.

IP 만을 이용한 통신의 특징이자 한계점

위의 내용을 보면 IP Address와 IP만으로도 패킷의 전송이 가능하다는 것을 알 수 있다.
하지만, 이러한 방식의 패킷 전송에는 문제점이 있다. 바로 비신뢰성과 비연결성이다.

비신뢰성

IP는 프로토콜일 뿐이고 보낸 데이터의 흐름에 관여하지 않기 때문에 보낸 패킷이 제대로 갔는지 보장하지 않는다.
즉, 순서가 있는 여러 개의 데이터를 보냈을 때 받는 데이터가 같은 순서로 받아질 것이란 보장이 될 수 없다. 혹은 중간에 패킷을 가지고 있던 호스트가 강제종료되어 패킷이 소실될 경우 패킷이 목적지까지 가지 못하고 소실될 수 있다.
-> 패킷이 제대로 도착했는지 보장할 수 없다.

  • 대신 완전히 잘 갔는지 보장하고 싶을 때 ICMP(Internet Control Message Protocol)을 추가적으로 사용하면 비신뢰성을 해결할 수 있다.

비연결성

패킷을 받을 대상이 연결 상태임을 확인하지 않고 전송하기 때문에 받을 대상(호스트)이 서비스 불능 상태여도 패킷이 전송된다는 문제점이 있다. 이를 비연결성이라고 한다.

-> 받는애가 연결되어있는지도 모른채 그냥 패킷을 전송해버린다.

한계점 극복

IP를 이용한 통신을 인터넷 계층의 통신이라고 한다.
이러한 한계점 극복을 위해 전송 계층에서 TCP, UDP라 불리는 프로토콜을 추가로 정의함으로써 이러한 IP의 한계점을 극복한다.

면접 질문 : IP가 뭔가요?

IP는 Internet Protocol의 약자로 인터넷 망을 통해 패킷을 전달하는 프로토콜입니다. 비연결성과 비신뢰성의 특징을 가지는데요, 비연결성은 패킷을 보내는 길을 정하지 않는 것이고, 비신뢰성은 패킷의 완전한 전달을 보장하지 않는 것입니다.

[출처]

0개의 댓글

관련 채용 정보