IP (internet protocol)

citron03·2021년 11월 16일
0

네트워크

목록 보기
7/9

addressing, datagram format, data handling을 정의한다.
이 IP address를 통해서 host를 구별한다.
// port number를 통해서 process를 구별한다.

  • Network layer의 protocol로 routing protocol, ICMP protocol, 그리고 IP protocol이 있다.
    🥝 IP 주소로는 host와 router의 interface를 구별한다.
    🌰 ICMP protocol은 router를 signaling하고, error발생시 보고한다. ping을 보낼때에도 사용된다.
    🍍 routing protocols은 path를 선택한다. (forwarding table을 이용한다.)
    routing protocol로는 OSPF(Open Shortest Path First), BGP(Border Gateway Protocol), RIP(Routing Information Protocol)가 있다.

    IP datagram format

    • header는 가변이다. (기본적으로 20bytes)
    • type of service로 어떤 것을 먼저 우선순위로 두고 queue에서 서비스할지 결정한다.
    • MSS(Maximum Segment Size, TCP datagram format에 정의됨)와 유사한 MTU(Maximum Transfer Size)가 존재한다.
      ☕ 이 MTU는 네트워크에 따라서 크기가 다르다.
    • 하나의 IP datagram이 여러개로 잘라질 수 있다. 이때, 16-bit identifier, flgs, fragment offset을 사용해 자르고 붙인다.
    • TTL(Time To Live)는 router를 지날 때 마다 1씩 줄어들어 0이 되면 데이터를 버린다.
    • Upper Layer로 상위 어떤 계층의 데이터를 담고 있는지 나타낸다.
    • Fragmentation Flags가 1이면, 자신을 제외한 다른 쪼개진 datagram이 있다는 의미다. 0이면 더 이상 쪼개진 datagram이 없다는 의미이다.
    • Fragment Offset은 datagram이 전체중에서 몇 번째 순서인지를 의미한다.

🍈 유선/무선 LAN카드는 서로 IP주소가 다르다.

  • IP 주소는 subnet part와 host part로 나뉘는데, 동일한 부분을 subnet IP, 다른 부분을 host IP라고 한다.
  • subnet을 구별하는 것은 network layer에서 inferface를 잘랐을 때의 subnet이다.
  • subnet을 나타내는 부분을 subnet mask라고 한다.
  • 255.255.255.255은 subnet 전체에 broadcasting하기 위한 IP이다.
  • Classful Addressing에서는 subnet part의 bytes가 고정되어 있다.
    이때문에 어쩔 수 없이 필요한 IP 주소의 bytes 개수보다 더 많은 부분을 사용하게 된다.
    이에 대한 해결책으로 CIDR이 있다.

🍖 CIDR(Classless Inter-Domain Routing)은 임의의 bit를 subnet Id로 사용한다.

🍄 subnet part와 host part를 나누는 이유는 subnet part만 보고 더 효율적으로 IP주소를 통해서 host를 찾아갈 수 있게 되기 때문이다. 🍄

  • IPv4(Internet Protocol version 4)와 IPv6(Internet Protocol version 6)는 현재 가장 일반적으로 사용되는 두 가지 IP 주소 버전이다.
  • IPv4는 32비트로 이루어져 갯수에 한계가 있었기에, 128비트로 이루어진 IPv6가 등장했다.
profile
🙌🙌🙌🙌

0개의 댓글