UPDATED. 2024-04-26 19:26 (금)
네트워크 기술의 이해①
네트워크 기술의 이해①
  • 이민규 기자
  • 승인 2010.09.07 10:34
  • 호수 524
  • 댓글 0
이 기사를 공유합니다

이준혁 한국정보통신기능대학 정보통신설비과 교수
최근 급변하는 네트워크 사용 환경과 제공되는 인프라는 기존의 특정 사용자 뿐만아니라, 다양한 인터넷 환경을 언제 어디서나 손쉽게 사용하고자 하는 수요로 인하여 가입자가 급격히 증가하고 있다. 이러한 네트워크의 확장과 사용자의 증가에 따라 IP 주소의 부족이 큰 문제가 되고 있으며, 이는 좁게는 ISP업체 뿐만아니라 넓게는 국가간의 경쟁력 강화 차원에서 IP 확보가 가장 이슈로 대두되고 있다. 본 기고에서는 한정된 IPv4 주소체계에서 주소자원의 낭비를 줄이는 효율적인 주소관리기술을 소개하고자 한다.


본 기고에서는 클래스리스 주소체계(Classless Addressing)를 기반으로 하는 클래스리스 인터도메인 라우팅(Classless InterDomain Routing), 라우트 통합(Route Aggregation), 슈퍼네팅(Supernetting)기술에 대하여 소개한다.

1.1 CIDR(Classless InterDomain Routing) 개요

CIDR은 IP 네트워크의 폭발적인 성장, 특히 글로벌 인터넷(Global Internet)으로 인해 가용한 IP 주소 공간이 고갈되어 가고, 코어 인터넷 라우터(Core Internet Routers)들이 수용 용량에 한계를 느끼고 있는 문제점을 해결하기 위해서 개발된 주소 방식이다.

CIDR은 일반적인 네트워크 프리픽스(Prefix)와 함께 A, B 그리고 C 클래스에 기초해서 IP 주소를 배정하는 기존 방식을 대체한다.

CIDR은 네트워크 식별자를 8, 16, 24비트로 제한시키지 않고, 13에서 27비트까지의 식별자를 사용한다. 네트워크에 배정할 수 있는 주소 블록은 32개 호스트에서 500,000개 이상 호스트를 수용 한다. 이것은 하나의 조직의 특정 요구에 보다 근접하게 주소를 할당할 수 있도록 해준다.

1.1.1 CIDR 표현

CIDR은 IP 주소를 비트 단위로 표현한다. 하나의 CIDR은 표준 32비트 IP 주소와 얼마나 많은 비트가 네트워크 프리픽스를 나타내는지에 대한 정보를 포함한다.
예를 들어, CIDR 주소 206.13.01.48/25에서 처음 25비트는 유일한(Unique)한 네트워크를 나타내고, 남은 비트들은 특정 호스트를 나타낸다.
또한 206.13.01.48/25는 206.13.01.48 255.255.255.128로 표현될 수 있다.

1.1.2 CIDR을 사용하는 이유

라우터는 클래스를 무시한 CIDR이라 불리는 IPv4 주소방식을 사용한다. 클래스풀 주소체계(Classful Addressing)의 라우터는 주소 클래스를 결정한 후, 클래스에 기초해서 네트워크와 호스트 옥텟을 확인한다. CIDR에서 라우터는 얼마나 많은 비트가 네트워크 비트(주소의 앞부분 비트 혹은 프리픽스)들인지 나타내는 프리픽스를 사용한다. 남은 비트들이 호스트 비트가 된다. 프리픽스 숫자는 주소의 끝부분에 있는 /(슬래시)다음 숫자가 된다.

예를 들어, 10.10.10.10/30이면 /30이 프리픽스이다. 주소의 네트워크와 호스트 부분은 전체 옥텟을 사용하도록 제한받지 않는다.

1.2 라우트 통합(Route aggregation)

주소의 네트워크 부분을 결정하기 위해 주소 클래스 대신 비트마스크(Bitmask)를 사용함에 따라, CIDR은 라우터가 통합(Aggregation) 혹은 요약(Summarize), 라우팅 정보(Routing Information)를 할 수 있게 해준다. 이 점은 라우터의 라우팅 테이블 사이즈를 줄여준다. 다른 말로 하면, 단지 하나의 주소와 마스크의 결합으로 여러개의 네트워크로 향하는 라우트를 대표할 수 있다.

1.2.1 라우트 통합의 예

CIDR과 라우트 통합이 없다면, 라우터는 〔표 1〕에서 보여주는 것처럼 B클래스 네트워크에 대한 각각의 엔트리들을 유지해야만 한다.
〔표 1〕에서 음영 처리된 부분은 클래스 규칙에 기초해서 16비트를 식별하고, 네트워크 번호를 대표한다. 클래스풀 라우터들은 B클래스 네트워크들이 이 16비트를 사용하도록 한다. 클래스풀 라우터는 여덟개의 네트워크 넘버들 각각의 첫번째 16비트가 유일하기 때문에, 여덟개의 유일한 네트워크들을 식별하고, 각각에 대한 라우팅 테이블 엔트리를 생성해야만 한다. 〔표 1〕은 16비트로 라우트를 통합하였을 경우이다.

네트워크주소 첫 번째 옥텟 두 번째 옥텟 세 번째 옥텟 네 번째 옥텟
172.24.0.0/16 10101100 00011000 00000000 00000000
172.25.0.0/16 10101100 00011001 00000000 00000000
172.26.0.0/16 10101100 00011010 00000000 00000000
172.27.0.0/16 10101100   00011011 00000000 00000000
172.28.0.0/16 10101100 00011100 00000000 00000000
172.29.0.0/16 10101100 00011101 00000000 00000000
172.30.0.0/16 10101100 00011110   00000000 00000000
172.31.0.0/16 10101100 00011111   00000000 00000000

[표 1] 16비트로 라우트 통합과 서브네팅한 경우


그러나, 이 여덟개의 네트워크들은 〔표 2〕의 음영 처리된 부분에서 보듯이 공통적인 비트들을 가지고 있다. 만약에 〔표 1〕에서 굵게 표시된 마지막 공통적인 비트가 프리픽스에 의해서 정의된다면, 라우터는 많은 네트워크들을 대표하는 하나의 공통적인 숫자를 가질 수 있을 것이다. 이것은 라우트 요약(Route Summarization)이라고 알려져 있고 라우팅 테이블의 공간을 절약할 수 있다.

네트워크주소 첫 번째 옥텟 두 번째 옥텟 세 번째 옥텟 네 번째 옥텟
172.24.0.0/16 10101100 00011000 00000000 00000000
172.25.0.0/16 10101100 00011001 00000000 00000000
172.26.0.0/16 10101100 00011010 00000000 00000000
172.27.0.0/16 10101100 00011011 00000000  00000000
172.28.0.0/16 10101100 00011100 00000000 00000000
172.29.0.0/16 10101100 00011101 00000000 00000000
172.30.0.0/16 10101100 00011110 00000000 00000000
172.31.0.0/16 10101100 00011111 00000000 00000000
[표 2] 13비트로 라우트 통합과 서브네팅한 경우


〔표 2〕에서와 같이 하나의 CIDR 라우터는 하나의 13 비트 프리픽스를 사용해서 여덟 개의 네트워크들로의 라우트를 요약할 수 있다. 여덟 개의 네트워크들은 10101100 00011을 공유한다.
이 프리픽스를 십진법으로 표기하기 위해서, 주소의 나머지 부분에는 0을 채우고, 13비트 서브넷 마스크와 쌍을 이루게 한다.

10101100 00011000 00000000 00000000 = 172.24.0.0
11111111 11111000 00000000 00000000 = 255.248.0.0

하나의 주소와 마스크는 여덟 개 네트워크로의 라우트를 요약하는 클래스리스 프리픽스를 정의한다. 즉, 172.24.0.0/13 으로 통합된다.
[그림 2]는 라우트 통합이 상위 라우터의 짐을 어떻게 덜어주는지 보여준다.


< 그림 . 라우트 통합 >


1.2.2 라우트 통합의 장점

라우트를 요약하기 위해 프리픽스 주소를 사용함으로써, 라우팅 테이블 엔트리들을 다음과 같이 관리하기 쉽게 유지할 수 있다.
① 좀 더 효율적인 라우팅을 할 수 있다.
② 라우팅 테이블을 재계산하거나 알맞은 엔트리를 찾기 위해 라우팅 테이블 엔트리를 정렬할 때, CPU 사이클의 수를 줄일 수 있다.
③ 라우터의 메모리 요구량을 줄일 수 있다.

1.3 슈퍼네팅(Supernetting)

슈퍼네팅은 하나의 네트워크 주소를 여러 개의 클래스풀 네트워크로의 비트마스크로 사용하는 것이다. 슈퍼네팅과 라우트 통합은 슈퍼네팅이 통합된 네트워크들이 같은 관리 제어 하에 있을 경우 좀 더 자주 적용되는 용어이기는 하지만, 같은 과정에 대한 다른 이름이다.
A, B 클래스 공간이 사실상 고갈되었다는 점을 상기해보면, 큰 조직들에게 남은 선택은 서비스 제공자들로부터 여러 개의 C 클래스 주소를 받는 것이다. 만약에 한 회사가 연속적인 C 네트워크 주소를 획득할 수 있다면, 슈퍼네팅은 주소들을 하나의 거대한 네트워크 혹은 슈퍼넷으로 나타낼 수 있게 해준다.

1.3.1 슈퍼네팅과 주소할당의 예

400개 호스트에 할당할 주소가 필요한 회사 XYZ가 있다고 생각해 보자. 클래스풀 주소 체계 하에서 XYZ는 B 클래스 주소에 대한 인터넷 주소를 적용할 수 있다.
만약에, B 클래스를 받고 400개의 호스트를 가지는 하나의 논리적인 그룹에만 B 클래스를 사용한다면, 수천 개의 주소가 낭비된다. XYZ의 두 번째 선택은 508개(2*254)의 호스트를 사용할 수 있도록 C 클래스 주소를 두 개 받는 것이다.

이 방법의 단점은 XYZ가 자신의 논리적인 네트워크들 사이에서 라우트를 해야만 하고, XYZ 네트워크의 두 개의 라우팅 테이블 엔트리를 유지하기 위해 하나 이상의 디폴트-프리(default-free) 인터넷 라우터가 필요하다는 것이다.
클래스리스 주소 체계 하에서 슈퍼네팅을 사용하면, XYZ는 주소의 낭비나 불필요하게 라우팅 테이블 수를 증가시킬 필요 없이 주소 공간을 얻을 수 있다. CIDR을 사용하면, XYZ는 InterNIC같은 중앙 기관이 아니라, ISP(Internet Service Provider)로부터 주소 블록을 요청하게 된다. ISP는 XYZ의 요구사항을 평가하고, 자신의 거대한 CIDR 주소 블록으로부터 주소공간을 할당한다. 제공자는 클래스리스 시스템의 주소 공간을 관리할 책임을 맡는다.

이 시스템 하에서 인터넷 라우터는 제공자의 네트워크로 오직 하나의 요약 라우트 혹은 슈퍼넷라우트를 유지하고, 제공자는 자신의 고객 네트워크로의 좀 더 세부적인 라우트를 유지한다. 이 방법은 인터넷 라우팅 테이블 크기를 극단적으로 줄일 수 있다.

다음 보기에서 XYZ는 207.21.54.0과 207.21.55.0, 두 개의 연속적인 C 클래스 주소를 받았다. 〔표 3〕의 음영 처리된 부분을 보면, 이 네트워크 주소들이 23 비트의 공통 프리픽스를 가지고 있는 것을 알게 될 것이다.

네트워크주소 첫 번째 옥텟 두 번째 옥텟 세 번째 옥텟 네 번째 옥텟
207.21.54.0 11001111 00010101 00110110 00000000
207.21.55.0 11001111 00010101 00110111 00000000

[표 3] 슈퍼네팅과 주소할당


23비트 마스크(207.21.54.0/23)로 슈퍼네팅을 할 때, 주소공간은 많은 낭비를 하는 B 클래스 주소의 경우와 다르게 400개의 호스트를 적당히 넘기게 된다( 혹은 512호스트). CIDR블록 주소에 대한 주소할당 기관으로서의 ISP의 활동은 XYZ를 포함하는 ISP의 고객 네트워크들을 하나의 슈퍼넷으로 인터넷 라우터들 사이에 광고될 수 있도록 한다.

〔그림 3〕에서 ISP는 256개의 C 클래스 주소 블록을 관리하고, 16비트 프리픽스(207.21.0.0/16)를 사용해서 외부로 광고한다.


< 그림 . CIDR을 이용한 주소할당 >

1.3.2 슈퍼네팅의 장점

ISP에게 연속적인 주소 블록의 관리와 계층적인 분배를 가능하게 하는 CIDR을 사용하면, IPv4 주소 공간은 다음과 같은 이점을 가질 수 있다.
① 효율적인 주소 할당을 할 수 있다.
② 라우팅 테이블 엔트리 개수가 감소된다.


[용어설명]


■IPv4 : Internet Protocol ver. 4의 약어로 인터넷 프로토콜의 4번째 판이며, 32비트로 구성되어 있다.

■클래스풀 주소체계(Classful Addressing) : IP 주소 공간을 A,B,C,D,E의 다섯 개의 클래스로 나눈 IPv4의 주소 지정 메커니즘. 각 클래스는 전체 주소 공간의 일부분을 차지한다.

■옥텟(Octet) : 1Byte(8bits)

■B 클래스 네트워크(B Class Network) : 첫 8비트가 128에서 191까지의 수로 된 IPv4 주소

■Classless Addressing(클래스 없는 주소 지정) : 클래스로 나누어지지 않는 주소 지정 메커니즘

■Classless InterDomain Routing(CIDR) : 클래스 없는 인터도메인 라우팅, 슈퍼네팅을 할 때 라우팅 테이블 엔트리를 줄이는 방법

■서브네팅(Subnetting) : 하나의 네트워크 주소 클래스를 이보다 더 작은 여러 개의 네트워크로 나누는 방법

■서브넷 마스크(Subnet Mask) : 서브넷 주소로 사용되는 IP 주소 비트들을 찾아내기 위하여 IP에서 사용하는 32비트 길이의 주소 마스크, 간단히 마스크라고도 불린다.

■라우팅 테이블(Routing Table) : 패킷의 경로를 지정하는 데 필요한 정보가 들어 있는 표. 정보에는 네트워크 주소, 비용, 다음 홉의 주소 등이 포함된다.

■InterNIC(Internet Network Information Center) : 인터넷망 관리 센터, TCP/IP에 관한 정보를 배포하고 모으는 기관

■ISP(Internet Service Provider) : 인터넷 서비스 사업자, 일반적으로 인터넷 서비스들을 제공하는 회사를 말한다.

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.

  • [인터넷 신문 등록 사항] 명칭 : ㈜한국정보통신신문사
  • 등록번호 : 서울 아04447
  • 등록일자 : 2017-04-06
  • 제호 : 정보통신신문
  • 대표이사·발행인 : 함정기
  • 편집인 : 이민규
  • 편집국장 : 박남수
  • 서울특별시 용산구 한강대로 308 (한국정보통신공사협회) 정보통신신문사
  • 발행일자 : 2024-04-26
  • 대표전화 : 02-597-8140
  • 팩스 : 02-597-8223
  • 청소년보호책임자 : 이민규
  • 사업자등록번호 : 214-86-71864
  • 통신판매업등록번호 : 제 2019-서울용산-0472호
  • 정보통신신문의 모든 콘텐츠(영상,기사, 사진)는 저작권법의 보호를 받은바, 무단 전재·복사·배포 등을 금합니다.
  • Copyright © 2011-2024 정보통신신문. All rights reserved. mail to webmaster@koit.co.kr
한국인터넷신문협회 인터넷신문위원회 abc협회 인증 ND소프트