네트워크

6. Subnetting

YJH3968 2021. 6. 29. 17:21
728x90

1. Gateway router

  • 만약 어떤 IP address와 통신하길 원한다면, core router는 IP address가 어떤 class에 속하는지 파악하고 network ID를 파악해 메세지를 gateway router에 보낸다.
  • 특정 네트워크에 대한 출입구 역할을 한다.
  • core internet router는 다른 core router에게 전달하기만 한다.
  • packet이 gateway router에 도착하면, router는 host ID를 봐서 적절한 system으로 data를 전달해야 하는데, 만약 IP address가 Class A에 속하면 2^24가지의 host ID가 존재해 적절한 system을 찾는게 매우 어렵다. 이 때문에 subnetting이 필요하다. 

2. subnetting

  • 큰 네트워크를 다수의 작은 서브네트워크 혹은 서브넷으로 나누는 것
  • 개별 subnet에는 각 subnet의 수신 및 송신 지점 역할을 하는 자체 gateway router가 있다.

3. subnet ID

  • 원래 host ID를 구성하는 몇 bits를 가져와서 사용한다.
  • 이로 인해 IP address는 network ID, subnet ID, 그리고 host ID로 나뉜다.
  • network ID는 core router가 datagram을 적절한 gateway router로 보낼때 사용하고, gateway router는 datagram을 수신 장치 또는 다음 router로 보내기 위한 정보를 가지고 있다.
  • 그리고 host ID는 마지막 router가 datagram을 의도한 장치에 보내기 위해 사용한다.
  • subnet mask를 통해 계산한다.

4. subnet mask

  • IP address와 동일하게 32 bit, 4개의 octet으로 이루어져 있고 십진법으로 쓴다.
  • 두 section을 가지고 있는데, 크게 1의 나열과 0의 나열로 나뉜다.
    1의 나열은 host ID를 구할 때 무시하는 부분을 나타낸다.
    0의 나열은 host ID가 있는 부분을 나타낸다.
    ex) IP address가 9.104.100.107이고 subnet mask가 255.255.255.0이면 107 부분을 host ID로 간주한다.
  • 1의 나열 중 network ID 부분이 어디인지는 Class를 이용해 알 수 있으므로 나머지 1의 나열에 해당하는 부분이 바로 subnet ID이다.
    ex2) subnet mask가 255.255.255.224인 경우 27개의 1과 5개의 0로 구성되어 있는데, 이는 5 bit만이 host ID 공간임을 의미한다. 이는 IP address에 9.100.100.100/27과 같은 방식으로도 표기가 가능하다.
  • 일반적으로, subnet의 수는 가능한 host ID의 수보다 2개 더 적은데, 0은 일반적으로 안 쓰고 255는 subnet에 대해 broadcast address로 예약되었기 때문이다. 이러한 접근이 맞긴 하지만, subnet에서 사용 가능한 host의 수를 전체 수로 참조한다. 따라서 두 개의 주소를 할당할 수 없지만 8 bit의 host ID 공간은 256개의 주소를 사용한다고 말할 수 있다. 위 IP는 해당 subnet의 node에 직접 할당되지 않아도 여전히 IP address이기 때문이다.

5. CIDR(classless inter-domain routing)

  • IP address의 구역을 좀더 유연하게 묘사하는 방법이다.
  • subnet mask를 network의 경계를 정하는데 사용함으로써 subnetting의 원리를 활용한다.
  • network ID와 subnet ID를 하나로 결합하는 대신, slash( / )를 이용해 network ID를 얼만큼 쓸지
    결정하고(이를 CIDR notation이라 한다), address class의 개념을 버린다.
    ex) 9.100.100.100/24라 하면 network ID는 9.100.100이 되고, host ID는 100이 된다. 이때 기업에서 만약 더 많은 address가 필요한 경우 새로운 class에 해당하는 IP address를 가져오는 것이 아니라 net mask를 /23 또는 255.255.254.0으로 한다. 그러면 router는 이 address로 traffic을 전달하기 위해 routing table에서 두 개가 아닌 하나의 항목만 알아도 된다.
  • 사용 가능한 추가 host ID를 얻을 수 있다.
    ex) 항상 network당 2개의 host ID가 손실되는데, 만약 /24 네트워크에 256개의 host가 있으면 실제로는 254개의 IP만 할당할 수 있고, 이 크기의 네트워크가 2개 필요하다면 508개의 host가 가능하다.
    하지만 단일 /23 네트워크는 512개에서 2개를 뺀 510개의 네트워크가 가능하다. 
728x90

'네트워크' 카테고리의 다른 글

8. Transport Layer  (0) 2021.07.01
7. Routing  (0) 2021.06.30
5. Network Layer  (0) 2021.06.29
4. Data Link Layer  (0) 2021.06.29
3. Physical Layer  (0) 2021.06.28