How Does the Internet Work? 2탄!

정체는 김태현·2022년 11월 25일

roadmap.sh/backend

목록 보기
2/6

Internet Infrastructure

인터넷의 backbone 은 서로 연결된 큰 네트워크 들로 이루어져있다. 큰 네트워크 들은 Network Service Providers 혹은 NSPs 라 알려져 있다. 이 네트워크 들은 서로 피어링하여 패킷 트레픽을 교환 한다. 각 NSP 는 3개의 네트워크 엑세스 포인트 혹인 NAPs 에 연결이 요구된다. 패킷 트래픽은 하나의 NSP's backbone 에서 다른 NSP's 의 backbone 으로 jump 한다. NSPs 또한 Metaropolitan Area Exchanges 혹은 MAEs 에 서로연결 된다. MAEs 서버의 목적은 NAPs 와 같지만 개인 소유이다. 아래의 그림은 계층적 인프라를 보여 주는 그림이다.

이것은 실제 인터넷을 나타낸 것은 아니다. 다이어그램4는 NSPs 가 ISPs 와 어떻게 연결되여 있는지 보여주는 데모(demo) 이다. 물리적인 네트워크 컴포넌트는 다이어그램 4와 3과 같지 않다. 왜냐하면 하나의 NSP's 의 backbone 인프라는 단일로 표현하기 복잡하(어렵)기 때문이다. 대부분의 NSPs 퍼블리시 맵들은 그들의 웹사이트에서 쉽게 찾을수 있다. 실제 맵을 그리는건 불가능에 가까운데, 일단 크기가 너무 크고 끊임 없이 변하는 구조이기 때문이다.

The Internet Routing Hierarchy

그러면 어떻게 패킷은 자기들이 갈 길을 인터넷에서 찾을까? 인터넷에 연결된 모든 컴퓨터가 다른컴퓨터가 어디 있는지 알고있는걸까? 단순히 패킷이 인터넷의 모든 컴퓨터에 'broadcast' 하는건 아닐까? 정답은 둘다 아니다. 패킷의 목적지에 대한 정보는 라우팅 테이블이 갖고 있으며 각각의 라우터는 인터넷에 연결 되어 있다.

라우터는 패킷의 스위치 이다. 라우터는 네트워크와 네트워크의 사이에서 패킷을 라우팅 한다. 각 라우터는 그것의 서브 네트워크와 그것이 쓰는 IP 주소를 알고 있다. 라우터는 usually 어떤 IP 주소가 더 위에 있는 IP 주소인지는 알지 못한다. 아래 다이어그램 5를 보자. backbone 과 연결된 검은색 박스들은 라우터 이다. NSP backbone들은 NAP 에 연결 되어 있고 그 아래로 몇몇의 서브 네트워크가 있으며 그아래로 더많은 서브 네트워크들이 있으며 가장 아래에 두개의 로컬 네트워크과 컴퓨터들이 붙어 있다.

패킷이 라우터에 도착했을때 라우터는 패킷을 보낸 컴퓨터의 IP 프로토콜 레이어에서 붙인 IP 주소를 검사 한다. 라우터는 그것의 라우팅 테이블을 체크한다. 만약 네크워크가 갖고있는 IP 주소를 찾을수 있으면 그 패킷을 그 네트워크로 보낸다. 만약 찾을수 없으면 라우터는 패킷을 디폴트 라우트로 보낸다, 보통 backbone 계증의 다음 라우터 이다. 만약 다음 라우터도 알지 못했을때 그 패킷은 NSP의 backbone 에 도달 하게 된다. NSP backbone 은 가장 큰 라우팅 테이블을 갖고 있는데. 여기서 패킷은 자기가 가야할 backbone 으로 라우팅 된다. 거기서 점점 작은 단위의 네트워크로 내려간다 until 패킷이 가야하는 목적지에 도달 할때 까지.

Domain Names and Address Resolution

하지만 만약 너가 연결 하고 싶은 컴퓨터의 IP 주소를 모른다면? www.anothercomputer.com 으로 접속 해야 한다면? 어떻게 웹 브라우저는 컴퓨터가 인터넷의 어디에 접속 되어 있는지 알수 있을까? 모든 질문의 답은 Domain Name Service 혹은 DNS 이다. DNS 는 컴퓨터의 이름과 인터넷상의 IP 주소를 담고 있는 데이터베이스를 제공 한다.

인터넷에 연결된 많은 '컴퓨터'는 DNS 데이터베이스의 일부를 호스트하고 소프트웨어는 다른 사용자에게 접속을 허용 한다. 위의 '컴퓨터'는 DNS 서버로 알려져 있다. DNS 서버는 모든 데이터베이스를 담고 있지 않다. 단지 부분만을 담고 있다. 만약 DNS 서버가 요청된 다른 컴퓨터의 도메인 이름을 갖고 있지 않을땐 다른 DNS 서버로 리다이렉트 한다.

DNS 계층은 IP 라우팅 계층과 유사하다. 컴퓨터에 요청된 이름을 찾을때 까지 위로 리다이렉트 된다. 다이어그램 6은 작은 부분의 계층을 표현 한것 이다. 트리의 꼭대기는 도메인 루트이다. 오래되고 잘 알려진 도메인은 트리의 상단에서 볼수 있다.

인터넷 접속이 셋업 되었을때(ex 윈도우 에서 전화 혹은 랜선으로 접속), 하나의 프라이머리 그리고 하나 혹은 하나이상의 세컨더리 DNS 서버가 설치의 일부로 지정 된다. 이 방법으로, 도메인 이름을 필요로 하는 인터넷 어플리케이션을 정상적으로 동작하게 한다. 예를들면, 너가 너의 웹브라우저에 웹 주소를 입력 하였을때, 브라우저는 먼저 프라이머리 DNS 서버로 연결한다. 그리고 너가 입력한 도메인 이름의 IP 주소를 찾아서 알려주면 브라우저는 타겟 컴퓨터에 웹페이지를 요청 한다.




의역과 오역이 있습니다. 원문을 읽어 보시는걸 권장 드립니다.

원문 : http://web.stanford.edu/class/msande91si/www-spr04/readings/week1/InternetWhitepaper.htm

profile
하나부터 열가지 다

0개의 댓글