목록컴퓨터 네트워크 (32)
Shine's dev log
1. TCP/IP protocol stack TCP/IP 프로토콜 스택에 따르면, 위의 그림과 같이 총 5개의 프로토콜 스택으로 구성되어 있다. 이번에 살펴볼 레이어는 2번째 레이어인 Link layer 프로토콜이다. 특히 Link layer에서 취급되는 패킷을 Frame 이라고 부르는데, Frame의 구조는 아래 그림과 같다. 다른 레이어의 패킷에 비해 크게 두가지 특징을 발견할 수 있는데, 1) payload 뒤에 error control을 위한 trailer(꼬리)가 붙어있다는 것이고, 2) Source address가 아닌 Destination address가 먼저 위치해 있다는 것이다. 특히 2)번의 경우, 라우터 입장에서 해당 Frame이 자신이 받아야 하는 녀석인지를 빠르게 판단하기 위해서 ..
1. BGP 앞서 AS(Autonomous System) 안에 존재하는 다양한 라우터들끼리 경로를 정하는 프로토콜을 Intra-AS 라우팅 프로토콜이라고 하였고, 대표적인 예로 OSPF를 살펴봤다. 그래서! 이번에는 여러 AS 들을 연결시켜주는 Inter-AS 라우팅 프로토콜과, 그 대표적인 예인 BGP를 살펴보도록 하자. 사실 모든 BGP 프로토콜이 서로 다른 AS들을 연결해주는 것은 아니다. Border Gateway Protocol의 이름에서 알 수 있듯이, AS의 가장자리에 위치한 BG(Border Gateway)들 간의 프로토콜을 일컬어 BGP라고 한다. 그래서 물론 다른 AS들에 속한 BG간의 연결에도 관여하지만, 같은 AS 내의 BG 간의 연결에도 관여한다. 이러한 역할의 차이에 따라 BGP..
1. AS (Autonnomous System) 컴퓨터 네트워크에서 AS 라는 용어는 하나의 관리 집합 내의 라우터들의 집합을 의미한다. 예를 들어 학교에서는 여러개의 건물들과 부서들이 존재하기 때문에 다양한 라우터들이 필요한데, 이러한 '학교'라는 관리 집합 내의 라우터들을 모아서 AS 라고 부르는 것이다. 전체 인터넷 관점에서 바라볼 때, 인터넷은 결국 독립적인 AS들이 여러개 모여서 구성된 것이라고 볼 수 있다. AS에는 inter-AS와 intra-AS로 분류할 수 있는데, inter-AS의 경우 AS와 AS간의 관계를 의미하며, IGP(Interior Gateway Protocol)라고 불리기도 한다. intra-AS의 경우 하나의 AS 내의 라우터 끼리 관계를 의미한다. inter-AS 라우팅..
1. 라우팅 알고리즘 라우팅 알고리즘에는 크게 두가지 종류가 있다. 전체적인 네트워크 상황을 알고, 이를 토대로 라우팅 경로를 판단하는 Link State 알고리즘, 특정 라우터와 연결된 이웃 라우터의 정보만을 가지고 판단하는 Distance Vector 알고리즘이다. 이번에는 Link State 알고리즘의 대표적인 예시인 Dijkstra's 알고리즘과, Distance Vector 알고리즘의 대표적인 예시인 Bellman-Ford 알고리즘을 살짝 살펴보자. 2. Dijkstra's 알고리즘 전체 네트워크 환경의 정보를 안다는 가정 하에서 사용할 수 있는 알고리즘이다. 바로 예시를 통해 알아보자. [그림 1] 같은 네트워크 상황이 있다고 가정하자. 처음에 u 노드에서 시작한다고 하면, u 노드에서 갈 수..
1. 라우터의 기능 라우터는 크게 들어온 패킷들을 전송해주는 Forwarding 기능과, 어느 link로 패킷을 보낼지 결정하는 Routing 기능이 있다. 어차피 한 라우터 내에서 일어나는 과정이기 때문에 나누는 것이 의미가 없긴 하지만, Forwarding을 담당하는 부분을 data plane, Routing을 담당하는 부분을 control plane이라고 부른다. 2. 경로 설정 방법 여러 라우터들이 있는 네트워크 환경에서 어느 link를 따라 패킷을 전송하는 것이 가장 효율적인지 결정하는 방식은 크게 두가지로 나눌 수 있다. 1) Link state 알고리즘 (Global) - 전체 link 상태를 아는 경우 활용 가능 - 전체 link 상태를 알고있는 상태에서 결정하므로 정확하다. - 전체 li..
1. IPv6의 등장 최근 IOT 등 다양한 기기들이 인터넷에 연결되면서, 연결된 단말들에게 부여되는 주소인 IP 주소가 점점 부족해져가고 있다. 이제까지 자주 사용되어왔던 IPv4 주소와 같은 경우, 32bit의 주소 체계를 사용하였다. 근데, 해당 비트로 할당해줄 수 있는 기기의 개수가 어느순간 한계에 도달했고, 이에 조금 더 많은 기기들이 인터넷에 연결될 수 있도록 나온 녀석이 바로 IPv6 주소체계이다. IPv6는 128bit의 주소값을 사용하여, 엄청난 수의 기기들을 인터넷에 연결할 수 있도록 하였다. 사실 IPv6가 처음 나오고, 표준화된 것은 90년대이지만, 우리나라에서는 아직까지도 그렇게 많이 상용화되지는 않고 있는 기술이다. 2. IPv4 의 헤더 구조 IPv4의 헤더 구조는 아래 그림과..