목록전체 글 (111)
Shine's dev log
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의 헤더 구조는 아래 그림과..
face_recognition은 얼굴 인식이나 신원 인증에 사용하는 파이썬 라이브러리이다. face_recognition 라이브러리를 포함한 파이썬 파일을 pyinstaller를 통해 exe로 변환하고 싶어서 변환을 했는데 아래와 같은 오류가 떴다. 대충 살펴보면 뭐 face_recognition_models/models/ 경로에 shape_prediction_68_face_landmark.dat 데이터 파일이 없다는 그런 오류이다. 해결법) 우선 shape_prediction_68_face_landmark.dat 와 같은 데이터 파일들을 다운받아야 한다. 파이썬 프로젝트에서 라이브러리 폴더에 가서 face_recognition_models 폴더에 있는 4개의 데이터 파일을 복사해놓는다. 나는 파이썬 프..