개발 일지/CS

[Network] 인터넷 프로토콜(Internet Protocol, IP)

미숫가루설탕많이 2023. 1. 26. 11:12

 IP란, 인터넷이 통하는 네트워크에서 어떤 정보를 수신하고 송신하는 통신에 대한 규약을 의미한다.

 

 컴퓨터는 사용하는 운영체제도 다르고 프로그램마다 구현된 언어가 다르기 때문에 멀리 떨어진 컴퓨터들끼리 서로 소통하기 위해서는 규약이 필요하다. 이러한 공통된 약속을 프로토콜이라 하며, TCP/IP 프로토콜이 주로 사용하는 약속이다.

 

 

 

 

주소(Address)


IP 주소

 

IP 주소란, 네트워크 환경에서 컴퓨터끼리 통신하기 위해 각 컴퓨터에 부여된 네트워크 상 주소체계이다.

 

 LAN 네트워크 내부에서 사용되는 것은 Private IP 주소이고 Public IP 주소는 인터넷에서 사용된다.

 

 인터넷에 연결된 모든 PC는 IP 주소체계를 따라서 네 덩이의 숫자로 구분되는데, 이렇게 구분된 IP 주소체계를 IPv4(Internet Protocol version 4)라고 한다.

 

 세계적으로 누구나 PC를 사용하여 인터넷에 접속할 수 있는 시대가 오면서 2^(128) 개의 IP 주소를 표현할 수 있는 IPv6(IP version 6)가 나왔지만 아직 IPv4가 쓸만하기에 IPv6는 메인으로 사용하지 않고 있다.

 

 

 

 

IPv4

 

 IPv4 주소는 OOO.OOO.OOO.OOO의 형식으로 되어있다.

ex) IP : 122.47.253.8

 

 IP는 편하게 보기 위해서 10진수로 표기되어 있지만 사실 마침표로 구분된 4개의 8비트 필드(8자리 2진수 4개)로 되어있다.

 

 8자리의 2진수를 '옥테드'라고 하며 옥테드는 '.'으로 구분한다.

 

 각 8비트 필드는 IPv4 주소에서 1바이트를 나타내며, 이러한 형식을 점으로 구분된 십진수 형식이라고도 한다.

 

 

 

 

서브넷 마스크(subnet mask)

 

 IP 주소는 네트워크부와 호스트부로 나뉜다. 네트워크부는 네트워크 정보를 나타내고, 호스트부는 그 네트워크 안의 특정 컴퓨터를 지칭하는 정보이다.

 

 여기서 네트워크부가 어디까지인지 나타내는 것을 서브넷 마스크라고 한다.

 

 

 

 

IP 프로토콜의 한계

 

 IP 프로토콜은 다음과 같은 한계가 있다.

 

  • 패킷을 받을 대상이 없거나 특정한 이유로 서비스 불능 상태에 빠져도 데이터를 받을 상대의 상태 파악이 불가능하기 때문에 패킷을 그대로 전송하는 문제가 있다.
  • 중간에 패킷이 사라지더라도 보내는 기기 측에서는 알 수 있는 방법이 없다. 또한, 서로 다른 노드를 거쳐서 전송되는 특성상, 보내는 기기 측에서 의도한 순서대로 데이터가 도착하지 않을 수도 있다.
  • 한 IP에서 여러 애플리케이션이 작동하는 경우 특정할 수 없는 한계가 있다.

 

 이러한 한계들을 극복하기 위해서 TCP와 UDP가 사용되고 있다.

'개발 일지 > CS' 카테고리의 다른 글

[Network] URL  (0) 2023.01.26
[Network] TCP / UDP  (0) 2023.01.26
[자료구조] 힙 트리(Heap Tree)  (0) 2023.01.21
[자료구조] 해시 테이블(Hash Table)  (0) 2023.01.21
[자료구조] 연결 리스트(Linked List)  (0) 2023.01.20