티스토리 뷰

■ 인터넷 구조

● 누가 인터넷을 책임지는가?

 인터넷은 모두가 관여를 하지만 아무도 관리 및 책임을 지지 않는다. 대신 각각의 독립적인 네트워크들이 있고 이 네트워크들은 지켜야 되는 프로토콜이 있다. 이 프로토콜들을 지키면 해당 네트워크에 참여할 수 있다.

 Access ISP에 대해서 알아보자. ISPInternet Service Provider라고 해서 각각 end host들에게 인터넷 접속점을 제공해주는 역할을 한다. 인터넷을 접속할 수 있도록 접속하는 방식을 제공해주며 홈 네트워크나 회사, 학교에 이런 네트워크들이 있을 수 있다. 이런 Access ISP들은 자기들끼리 연결이 되고 끝에는 인터넷에 접속이 되는 형태로 이어진다.

 그런데 인터넷은 중앙 집중형으로 구성되어 한 곳으로 모이게끔 되어있을까? 그렇지 않다. 중앙 집중형으로 되면 중앙 서버만 파괴하면 전세계 모든 네트워크가 마비되기 때문에 핵공격에도 살아남아야 하는 인터넷의 철학에 어긋난다. 그래서 개별 ISP들이 마구잡이로 서로 연결이 되어 어느 특정 한 지점을 파괴해서 전체를 마비시킬 수는 없게끔 만들어야한다.

 

● 그물 형식의 네트워크

  그러면 개별 ISP들이 마구잡이로 서로 연결된 형태를 어떻게 구현할까? 위의 그림을 보면 전세계에 Access network들이 있는 것을 확인할 수 있다. 가정 네트워크에 Network access를 제공하는 Access ISP가 있고, 회사나 학교에 제공하는 ISP가 있고, 휴대전화 사용자들에게 제공하는 Base station 등이 있다. 이런 Access network들을 연결하는 가장 단순한 방법은 그물 형식으로 모두 연결하는 것이다. 이렇게 되면 어떤 Access ISP가 사용 불가능하게 되더라도 다른 네트워크가 마비되는 일은 없을 것이다.

 그러나 그물형의 네트워크는 Scalability가 낮은 단점이 있다. 이 말이 무슨 말이냐면 참여자 수가 증가하면 증가할수록 서비스가 안정적이기 힘들다는 뜻이다. 만약 그물형 네트워크에 참여한 ISP의 개수를 N개라고 한다면 이들을 모두 서로 잇는 링크는 N제곱만큼 필요하다. 과거에 처음 인터넷이 만들어졌을 때는 이 링크의 개수가 적어서 가능했을 지 몰라도 계속해서 인터넷 크기가 커지고 참여자 수가 많아지기 때문에 그물 형식을 계속해서 이용하기에는 무리가 있었다.

 

● 코어 네트워크와 글로벌 ISP

 그물형은 네트워크가 분산적이기 때문에 신뢰성이 높지만 새로운 노드가 들어오거나 서비스할 때 기존의 네트워크들과 모두 링크를 생성해야 하는 어려움이 있었다. 그래서 나온 개념이 중간에 코어 네트워크를 하나 두는 것이다. 이 코어 네트워크에 글로벌 ISP가 있고 이 ISP에 Access network들이 접속을 하는 것이다. 또한 코어 네트워크 있는 글로벌 ISP끼리만 연결을 해도 Access ISP들은 그림처럼 링크를 하나만 유지해도 코어 라우터들을 통해 인터넷에 연결이 가능하기 때문에 더 Scalable한 네트워크가 될 수 있다.

 

 만약 코어 네트워크 역할을 하면 글로벌 ISP들이 하나이거나 아니면 소수라면 데이터가 한 곳에 몰리므로 동작을 제대로 하지 않거나 아니면 글로벌 ISP가 독점적으로 비용을 책정하면 사용자들이 서비스 이용에 큰 불편을 가질 우려가 있었다. 그래서 많은 회사들이 글로벌 ISP 서비스를 하기 위해 참여하였고 이 글로벌 ISP들끼리 또 서비스를 제공하는 군집형태를 이루어 다른 ISP 군집과 연결 관계를 가지기도 하였다. 그래서 나중에는 글로벌 ISP뿐만 아니라 지역의 네트워크를 모아서 서비스를 해주는 지역 네트워크의 개념도 생겨났다. 이것과 관련한 좋은 예시가 바로 우리나라의 여러 통신 회사들이 있겠다. 

 

● 콘텐츠 제공자 네트워크 (Content provider network)

 여기에 덧붙여 Content provider network라는 개념을 알아보자. 구글이나 마이크로소프트, 넷플릭스와 같은 회사들을 보면 데이터 센터가 한 곳에 있지 않고 전세계 여러 곳에 나누어져 있는 것을 알 수 있다. 이것에는 이유가 크게 2가지를 들 수 있다.

 첫번째는 데이터가 한 곳에 모여 있으면 안정성이 떨어질 수 있다. 해당 데이터 센터가 무력화된다면 전체 데이터를 모조리 잃어버릴 수 있는 위험성을 지니고 있다. 그래서 동일한 데이터를 여러 군데 분산하여 배치함으로써 데이터의 안정성을 높이려는 이유가 있다.

 두번째는 데이터 센터와 가까이 있는 사용자들은 불편함이 없겠지만 지구 반대편에 있는 다른 사용자들은 데이터를 가져오는 데 꽤 오랜 시간이 걸릴 것이다. 그래서 데이터 센터를 전세계 골고루 펼쳐놓음으로 인해서 지연 시간을 길게 느끼지 않고 데이터를 받을 수 있게끔 서비스를 제공하는 것이다.

 이렇게 대량의 데이터를 분산시키고 콘텐츠를 제공하는 사업자들을 Content provider라고 하는데 이들은 전달하는 데이터 양이 굉장히 많다. 아까 첫번째 이유에서 설명한 데이터의 안정성을 위해서는 한 곳의 데이터에 변경 이력이 생기면 다른 곳의 데이터 센터들도 이 변경점을 수용하는 데이터 동기화가 일어나야 한다. 이런 데이터 센터 간의 데이터 동기화를 위한 트래픽 양이 굉장히 많이 일어난다. 만약 이것을 일반 상업용 네트워크를 통해서 전달하고자 하면 해당 네트워크에서 수많은 트래픽을 감당하기 어려워 할 것이고, 감당한다고 하더라도 굉장히 많은 비용을 Content provider들에게 청구하게 될 것이다.

 그래서 구글이나 마이크로소프트처럼 굉장히 많은 데이터를 전달해야 하는 회사들은 자기들만의 네트워크를 구축해놓았다. 자체 네트워크를 통해서 Regional network까지 서비스가 되게끔 말이다.

 

 

 

※ 본 정리 내용은 부산대학교 유영환 교수님의 컴퓨터 네트워킹 수업을 정리한 것입니다.

※※ 강의에 사용된 교재 : [Computer Networking A Top-Down Approach 7th edition / Jim Kurose, Keith Ross]

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함