• [ Network ] Network layer ( Control plane ~ Autonomous System )

    2021. 4. 30.

    by. KimBangg

     

    <Router Control Plane>

    1) Centralized Routing Algorithm

    네트워크 링크에 대한 모든 지식을 바탕으로, 가장 적은 비용의 길을 찾는다! -> 통합된 서버가 계산 후 라우터에게 전달

    1-1) Link-State Routing Algorithm ( =Dijikstra Algorithm )

    네트워크 topology & all link cost -> 모두에게 broad casting 되어 있어야 한다. ( = OSPF )

     

    D(v): source 에서 v까지의 순환을 통해 최단 거리를 나타낸다.

    P (v): 최단거리를 따라 가던 도중 현재 있는 노드의 이전 노드

     

    대표사진 삭제

    사진 설명을 입력하세요.

    모든 길의 거리를 계산해서, 최단 거리를 뽑아내는 형식!

     

     

    2) Decentralized Routing Algorithm

    Router know only physically-connected neigborhood.

    through iterative, exchange information wit neighbors => distance vector

    2-1) Distanace vector의 종류

    Bellman-Ford Equation ( dynamic programming )

    Dx(y) = min { c(x,v) + dv(y) } = 분할 정복

     

    => 최초 A의 기준에서 갈수 있는 곳은 B밖에 없기 때문에,

    Du(f) = min { c(a,b) + db(c) vs c(a,b) + db(D) } 라는 수식 형성!

     

     

    Iterative, asynchronous : 정보를 순환하며 공유하고, 업데이트 되면 메세지를 받는다.

    Distributed : 오직 최소 거리값이 변경 되는 경우에만 주변에 알린다.

    존재하지 않는 이미지입니다.

    사진 삭제

    사진 설명을 입력하세요.

    DFS,BFS, DP 모두 가능!

     

     

    1) RIP ( Routing information Protocol ) <= " distnace vector algorithm "

    각각의 간선이 1의 값을 같고 최대한으로 뛰어 넘을 수 있는 ( = maximum hop )은 15로 제한.

     

    DVs ( 최소 이동 거리 계산 ) 을 위해, 이웃들끼리 매 30초마다 정보 ( = aka advertisement ) 를 공유한다.

     

    각 advertisement는, 최대한 25개의 목적지에 대한 리스트를 가질 수 있다.

     

    - 장점

    모든 벤더에서 지원이 가능하다.

    간단하고 쉽다.

    - 단점

    최대 hop의 개수가 15개로 제한되서 대규모 네트워크에서는 불가능하다.

    Distance vector 알고리즘을 기반으로 해서 변화가 느리다.

    Hop count제외한 정보가 없기 때문에 최적의 경로 선택 불가능.

     

     

     

    대표사진 삭제

    가지고 있을 수 있는 정보는, 다음 hop이 누구인지? 그리고 최종 목적지까지는 몇개의 hop을 넘어야 하는지?만 저장 되어있다.

    만약, 180초 ( = 3분) 이내에 advertisement가 넘어오지 않는다면, 그 이웃은 없어진 것으로 가정하고 새로운 advertise를 하게된다.

    RIP는 application - level process에 의해 관리되고, UDP를 사용한 advertisement가 이루어진다.

     

    가지고 있을 수 있는 정보는, 다음 hop이 누구인지? 그리고 최종 목적지까지는 몇개의 hop을 넘어야 하는지?만 저장 되어있다.

    만약, 180초 ( = 3분) 이내에 advertisement가 넘어오지 않는다면, 그 이웃은 없어진 것으로 가정하고 새로운 advertise를 하게된다.

    RIP는 application - level process에 의해 관리되고, UDP를 사용한 advertisement가 이루어진다.

     

    1) routing table이 짜여지는 과정

     

     

     

     

     

    2) Link Cost Change

     

     

    1) y는 link cost가 변화했다는 사실을 안 이후, DV를 업데이트하고 자신의 이웃인 X,Z에게 알린다.

    2) Z는 Y에서 온 내용을 토대로 업데이트를 하고, X로 가는 길을 최신화 하여 이웃들에게 보낸다.

    3) Y는 Z로 부터 업데이트 사실을 받고, 자신의 Distance테이블을 업데이트 한다. 와이의 최소 값은 변경되지 않았기 때문에 y는 다시z에게 보내주지 않아도 된다.

     

    =======================================================

     

    하나의 네트워크가 셀 수 없을만큼의 라우팅 테이블을 가지고 있는 것은 속도 및 자기통제권의 상실이라는 문제를 가지게 된다. 그러한 문제를 해결하기 위해, 스스로가 자치권 ( =autonomous ) 을 가질 수 있는 AS network를 사용한다.

     

    < Autonomous System : 현대 > - 각자의 라우터가 컨트롤 라우팅을 원하면 접근 할 수 있다.

     

    1) inter AS routing

     

    같은 AS내에서는 라우팅테이블을 모두 알고 있다.

    같은 AS내에 있는 라우터는 모두 같은 프로토콜을 가지고 있다.

    다른 AS로 이동하고 싶으면, Gateway router를 통해 이동하게 된다

     

    2) interconnected AS

    Fowarding table이 inter & intra AS에 의해 구성된다

    AS내부에 있는 포워딩 테이블은 inter AS가 담당하고, 외부에 있는건 두 AS 모두가 담당한다.

     

    3) inter AS

    다른 AS를 라우팅 해주는 AS!

     

     

    <OSPF- 개방형 최단경로 우선>

    Link state Algorithm을 사용한다 => 라우팅 테이블을 모두 라우터에게 전송해줌으로써, 모든 노드에 대해 알고있다 (=mapping)

    변화가 없을 때도 30분에 한번씩 브로드 캐스팅을 한다.

    브로드캐스팅을 할 때, IP, with an upper-layer protocol of 89 for OSPF. 을 함께 보내기때문에 이것자체만으로도 realiable 하다고 할 수 있다.

    그리고 dijikstrak algorithm을 사용해서 route를 계산한다 :)

     

     

     

     

    모든 라우터에게 전송해주는 것을 그림으로 표현하였습니다,, 이해가 돕기 위해서,,!

     

    RIP와 OSPF의 차이점 ( = OSPF의 발전된 특징들 ! )

    1) Security => 모든 OSPF 메세지는 인증이 필요하기 때문에, 악의적인 침입이 불가능하다.

    2) Multiple same-cost path allowed ( = 하나의 목적지까지 동일한 비용이 경로가 많을 경우, 모든 경로를 제공한다 )

    RIP에서는 제공해주지 않는다 !

    3) Unicast & Multicast 동시 지원

     

    4) hierarchical OSPF ( = 하단에 그림 + 설명 추가 )

     

     

     

     

    < hierarchical ospf >

    local /backbone 이라는 두가지 구조로 나뉜다.

    Likestate advertisement는 area(=local) 안에서만 유효하고, 다른 area를 가는 방향만 알고, 자세한 내용은 알 수 없다.

     

    1)boundary router ( = gateway router ) : 다른 AS와의 연결을 담당

     

    2) Backbone router = 모든 트래픽이 거쳐가는 공간 이기 때문에, 빠른 데이터 전송이 중요! OSPF를 중심 역할

    (*backbone = 척추, 즉 사람의 몸을 지탱해주는 것과 마찬가지로 가장 중심적인 요소이기 때문에 명칭을 붙였다고 합니다 :) )

     

    3) Area border router = 자신의 네트워크안에 있는 최단 경로를 요약 정리 해주고, 다른 area border에 알려주는 역할

     

     

     

    <BGP > = Broader Gateway protocol = 사실상 현대 인터넷의 표준이 되는 프로토콜이며 Path vector algorithm을 사용한다.

     

    하나의 게이트웨이가 아닌, 한 AS안에 여러개의 게이트웨이를 둠으로써 다방면으로 네트워크를 활용 가능 !

     

    EBGP: 다른 AS들과 이동가능한 길에 대한 정보를 공유

    IBGP : 이웃으로 부터 얻어온 정보를 내부 AS에 전달해주는 것

    Good Route = reachability ( 이동 가능성 ) + policy ( 정책 )

    ( 왜 정책 이야기가 나오나요? inter as가 진행 될 경우 as마다 다른 policy를 바탕으로 운영 될 수 있습니다 ! 그렇기 때문에, 같은 이동 가능성 ( 거리 + 가능성) 을 가지고 있다면, 적절한 policy를 가진 곳이 좋겠죠 :-) )

     

    Example :

     

     

     

    1) AS3 에 있는 3A가 AS1에 있는 1C에서 reachability를 전송한다

    2) AS1에 있는 1C는 IBGP를 이용하여 내부에 있는 라우터 들에게 정보를 공유한다.

    3) 1B는 2A에게 reachability를 전송한다. 그러면 모든 AS2는 AS1와 AS3의 정보를 공유한다.

    4) 결과적을 AS2는 AS3 사이의 연결간선이 생성됨으로써, 3개의 AS가 서로 정보를 공유 할 수 있게 된다.

     

    <Path attributes & BGP routes >

    prefix + attribute = route

     

    AS-path = prefix advertisement가 거쳐간 AS-list를 모두 제공

    Next hop = 패킷이 갈 수 있는 가장 가까운 라우터를 가르키는 용어

     

    <Policy based routing >

    route advertisement를 받는 gateway는 자신의 내재된 정책을 이용하여 결정한다

    (= policy를 통해 자신의 정보를 타인에게 공유할지 말지를 결정한다.)

     

    <BGP Message >

    OPEN = 다른 허가된 이웃들에게 TCP Connection을 허가!

    update = new advertisement

    keepalive = 만약에 업데이트가 없더라도, 계속해서 tcp connection을 유지한다.

    notification : 이전의 메세지 안에서 에러를 알리고, connection을 끊는 것!

     

    <BGP의 Selection>

    1.경로는 속성 중 하나로 로컬 선호 값이 할당된다.

    루트의 로컬 선호도는 라우터에 의해 설정되거나 동일한 AS의 다른 라우터에서 배울 수 있었다. 로컬 환경설정 속성의 가치는 AS의 네트워크 관리자에게 전적으로 맡겨진 정책 결정이다. (BGP 정책 이슈에 대해 조금 더 자세히 논의할 것이다.) 로컬 선호 값이 가장 높은 경로를 선택한다.

     

    2.나머지 경로

    (모든 경로에 동일한 로컬 선호 값이 있음)에서 AS-PATH가 가장 짧은 경로를 선택한다.

    이 규칙이 경로 선택을 위한 유일한 규칙이라면, BGP는 경로 결정에 DV 알고리즘을 사용할 것이다. 여기서 거리 메트릭은 라우터 홉 수가 아닌 AS 홉 수를 사용한다.

     

    3.나머지 경로

    (모두 동일한 로컬 선호 값과 동일한 AS-PATH 길이를 가진 경로)에서 뜨거운 감자 라우팅이 사용되며, 즉 가장 가까운 NEXT-HOP 라우터가 있는 경로를 선택한다.

     

    4. 둘 이상의 경로가 여전히 남아 있는 경우, 라우터는 BGP 식별자를 사용하여 경로를 선택한다

     

     

    <Hot potato protocol > = 버퍼에 별도로 내용을 저장하지 않고, 목적지에 도달할 때까지 전송하는 것.

    뜨거운 감자는,, 뜨거워서 양손으로 돌려가면서 식힌다라는 이미지 때문에 어느 곳에 저장 하지 않고 들자마자 바로 옮겨버리는 이미지를 떠올리면 기억하기 좋을 것 같습니다! :)

     

    그래서 어떤 다른 라우터가 이것을 받으면, 즉각적으로 라우팅을 한다.

    패킷을 기다려 최상의 경로를 위해 기다리지 않고, 패킷을 수신하는 즉시 전송하는 방법을 말한다.

     

     

    <BGP routing policy >

     

     

     

     

     

    x는 B가 자신을 거쳐서 C로 가는길을 비용이 발생하기 때문에 원치 않는다. 그러한 이유로 X는 자신이 C와 연결 되어 있다는 사실을 B에게 알리지 않는다! ( = 충남대에서 발생한 사건이 그 예시이다 : https://kldp.org/node/33334 )

    어제 인터넷마비? | KLDP

    현재 위치 홈 ›› Forums ›› 재미 ›› 자유 게시판 어제 인터넷마비? 글쓴이: nachnine / 작성시간: 금, 2004/04/09 - 9:54오전 YTN 에 따르면 어제 1시간가량 전국의 인터넷이 마비되었다고 합니다. http://news.naver.com/news_read.php?oldid=20040409000038024 기사내용을 보면 라우터설정을 잘못해서 그렇다고 나오는데 network이 원래 그렇게 fault tolerant 하지 못한건가요? 아니면 그 라우터가 " 엄청나게 중요한 역할"을 하던건가?;;; 대학교...

    kldp.org

     

    < 마무리 : Intra vs inter Autonomous system 의 차이점 >

     

    intra = policy < performance

    하나의 도메인만을 가지고 있기 때문에, 가지고 있는 규정은 하나밖에 없다. 그렇기 떄문에 성능을 중요시한다.

     

    inter = policy > performance

    여러 도메인이 공유되고 있기 때문에, 조정하는것이 성능보다 우선이 된다.

     

    댓글