본문 바로가기

Ryu's Tech

What is Routing? 라우팅이란? [ 기본적인 개념 ]


  • Routing이란?
    • 네트워크에서 패킷이 올바른 경로로 (혹은 최적의 경로로) 찾아가기 위해서 다양한 방법을 통해 길을 찾아주는 것.
  • Routing Protocol의 분류
    • Static Routing Protocol
      • 말그대로 정적으로 라우팅 경로를 지정해 주는 것
      • 구성이 매우 간단하고 엔지니어가 원하는 경로로 패킷을 보낼 수 있다.
      • 만약 토폴로지에 문제가 있을 경우 해결할때까지 라우팅이 불가능하다.
      • 주로 Stub network에 적용한다.
        • Stub Network란 네트워크로 들어가는 길과 나가는 길이 하나인 것을 말하며,
          네트워크로 들어갈때는 네트워크 안의 주소로 Static Routing,
          네트워크에서 밖으로 빠져나갈때는 Default Static Routing(0.0.0.0/0)을 사용한다.
      • Static routing의 명령어 형식
        • #ip route A.B.C.D [mask] [address or interface] {수동AD값} {permanent}
        • #ip route 0.0.0.0 0.0.0.0 [add or int] {AD} {permanent}
          • permanent는 상대방 인터페이스가 다운되었을 때도 유지해준다. (미확인)
    • Dynamic Routing Protocol
      • 동적으로 라우팅 경로를 할당할 수 있게 해주는 프로토콜
      • 기본적으로 라우팅 프로토콜을 올리면 알아서 경로를 선택할 수 있도록 해준다.
      • RIP,EIGRP,OSPF 와 같은 프로토콜을 말한다.
  • IGP vs EGP
    • AS [Autonomous System] 이란 일정규모의 한 네트워크를 말하는 것으로 한 관리자에 의해서 관리되는 라우터들의 집단을 말한다. -> 회사 규모나 사이트 규모를 말한다.
    • IGP [ Interior Gateway Protocol ]
      • AS 안에서 돌아가는 라우팅 프로토콜을 말하며 RIP, EIGRP, OSPF등을 말한다.
    • EGP [ Exterior Gateway Protocol ]
      • AS 사이를 연결해 주는 라우팅 프로토콜을 말하여, BGP와 같은 프로토콜을 말한다.
    • IGP 와 EGP의 예
      • 예를들어 A회사에서 B회사로 간다고 쳤을때, IGP->EGP->IGP 를 통해 상대방에게 연결이 된다.
      • AS를 쓰는 목적은 A회사에서 안에서 subnet을 하여 세분화 하여 복잡한 네트워크를 가진 네트워크 간 통신이라도 IGP의 Gateway만 알면 된다. 즉, AS내부에서의 통신은 IGP를 통해서, AS간의 통신은 EGP로 통신을 해서 세분화되고 좀 더 효율적인 구성을 위하여 구분되는 것이다.
  • Distance Vecter VS Link-State
    • Distance Vecter
      • 말 그대로 Distance(거리) Vecter(방향) -> 거리와 방향을 사용하는 방식으로 라우터 자신에게서 목적지로 어느 방향이 어느정도 거리인지를 안다고 생각하면 쉽다.
      • 주기적인 라우팅 테이블을 교환한다.
      • 라우터간 Full-Routing table을 교환한다.
      • 자신과 주변만을 참고 하기 때문에 Looping에 빠질 수 있다.
    • Link-State
      • 말 그대로 Link(링크) State(상태) -> 링크의 상태를 보는 라우팅 프로토콜로 앞의 DV와는 달리 링크의 Bandwidth나 Delay와 같은 링크의 세부정보를 따져서 라우팅을 결정한다.
      • 전체적인 Topology를 참고하여 라우팅을 한다. 이 말은 DV는 나침반이라고 볼수 있고, LS는 네비게이션과 같다고 할 수 있다.
      • 라우팅 테이블을 교환할 때는 어떠한 토폴로지에 변화가 있을 때 교환한다. 이를 Event-Triggered 방식이라 한다.
      • 전체적인 토폴로지를 보고 결정하기 때문에 DV 보다 계산이 많기 때문에 부하가 크다.
  • RIP
    • Metric = Hop count (몇개의 라우터를 지나는지)
    • 최대 Hop count 는 15를 넘어갈 수 없다. 15를 넘어가면 Unreachable로 간주된다.
    • 라우팅 테이블을 30초마다 업데이트 하기 때문에 잘못된 정보가 전달되어 Looping이 생기기 쉽다.
    • RIP v1 vs RIP v2
      • RIP v1은 Classful 한 네트워크만을 광고한다. RIP v2는 VLSM을 지원하여 Classless하게 광고가 가능하다.
      • RIP v2는 MD5 인증을 지원하는 것에 비해 RIPv1은 아무런 인증도 지원하지 않는다.
        • 패킷을 가로채면 모든 데이터를 볼 수 있다.
      • RIP v1은 Broadcast를 사용하여 광고하였으나 RIPv2는 Multicast를 사용하여 광고한다.
        • 불필요한 네트워크 트래픽을 줄일 수 있게 하였다.
  • EIGRP
    • EIGRP는 어떤 라우팅 프로토콜인가?
      • Distance Vecter와 같이 거리와 방향을 가지고 라우팅 테이블을 만들어 라우팅을 한다
      • Link-State와 같이 Event Triggered 방식으로 업데이트를 진행한다.
      • 위의 두 개념이 합쳐 만들어진 것으로 Balanced Hybrid Protocol이라 불린다.
      • 이는 IGRP에서 Enhanced 된것으로, 기존에는 Distance Vecter 만을 사용하는 라우팅 프로토콜이었다.
    • EIGRP는 메트릭을 bandwith,delay,relability,load,MTU를 사용하여 계산하지만 사실 EIGRP의 metric을 계산하는 공식은
      • Metric = 256*((K1*Bandwidth) + (K2*Bandwidth)/(256-load) + (K3*delay)*(K5/(Reliability + K4)))
    • 이다. K1의 값을 설정하여 이를 변화시킬 수 있는데 default 값은 K1, K3 만 1이다.
    • 그래서 실제적인 Metric은 Bandwidth와 Delay만을 참고한다.
    • 라우팅 테이블에 EIGRP가 올라오기 전 행동
      • IP EIGRP Neighbor Table에 근처의 Neighbor들을 어느 Interface로 통해 연결될 수 있는지 기록한다.
      • IP EIGRP Topology Table에 FD(Feasible Distance)와 AD(Advertised Distance=Reported Distance)를 기록한다.
        • FD = 자신을 중심으로 목적지 까지의 Metric
        • AD = 자신의 다음 라우터 (next hop) 로부터 목적지까지의 Metric
      • IP Routing Table에 Toplogy를 참고하여 경로를 라우팅 테이블에 올린다.