Router에서 bestpath를 선출하는 기준은 다음과 같다.

  1. Longest-Match
  2. Lower Administrative Distance
  3. Routing Protocol 알고리즘

  그리고, OSPF가 bestpath를 선출할 때 사용하는 알고리즘이 SPF(Shortest Path First)라는 것은 이미 앞에서 학습하였다. 그러나, OSPF에서 SPF 알고리즘으로 bestpath를 계산할 수 있는 것은 자신이 속한 Area 내에 있는 LSA Type 1과 Type 2 Network 정보뿐이다. 타 Area에 존재하는 Network는 ABR이 알려주는 정보에 따라 다를 수 있다.

  다음과 같은 경우를 생각해보자.

  위 그림에서 R4가 ‘Network A’까지 bestpath를 계산하면 다음과 같다.

  • ABR R1이 생성한 Type 3 LSA metric + R1까지 metric = 10 + 5 = 15
  • ABR R2가 생성한 Type 3 LSA metric + R2까지 metric = 10 + 10 = 20

  그러므로, R4는 R1까지 경로를 ‘Network A’로 가는 bestpath로 선출하게 된다.

  그런데, 만일 R1이 ‘Network A’를 Area 1 Database에서 Area 0 Database로 전달하면서 Filtering하거나 Summary를 하게 되면 결과는 달라지게 될 것이다.

  Filtering을 하는 경우는 R1이 만드는 LSA Type 3가 존재하지 않기 때문에 R4는 R1을 통해서 ‘Network A’로 가는 경로의 존재를 알 수 없기 떄문에 R2를 bestpath로 선출한다.

  Summary를 하는 경우는 R1이 생성한 LSA Type 3의 Network Subnet 보다 R2가 생성한 LSA Type 3의 Network Subnet이 더 길기 때문에 Longest-match에 의해 R2를 bestpath로 선출하게 된다.

  이처럼 LSA Type 3는 100% 신뢰할 수 있는 정보가 아니다. 그래서, OSPF는 ‘Intra-Area Network’ 정보가 들어 있는 LSA Type 1과 LSA Type 2를 ‘Inter-Area Network’ 정보가 들어 있는 LSA Type 3 보다 우선순위를 높게 만들었다.

규칙 1. ‘LSA Type 1/2’가 ‘LSA Type 3’보다 우선한다.

  이번에는 다음 Topology에서 발생할 수 있는 문제를 생각해 보자.

  OSPF 내부 정보가 타 Routing Protocol로 전달되었다가 다시 OSPF로 유입되서 들어오는 경우, metric 값만 비교한다면 R2가 R3를 bestpath로 선출할 수 있다. OSPF Routing Protocol은 이 문제를 해결하기 위하여 Internal OSPF Network(LSA Type 1/2/3)을 External OSPF Network(LSA Type 5)보다 우선하도록 하였다.

규칙 2. ‘LSA Type 1/2/3’가 ‘LSA Type 5’보다 우선한다.

  다음으로 LSA Type 5는 E1(External Type 1)과 E2(External Type 2)로 나누어 지는데 여기서도 우선순위가 있다. 이미 우리가 학습한 대로 External LSA Type 1은 Forwarding metric을 추가한 상세 정보이고, External LSA Type 2는 Forwarding metric을 추가하지 않은 단순 정보이다.

  그래서, OSPF는 동일한 Network 정보에 대해 E1과 E2로 정보를 받는 경우 E1 정보를 우선하도록 하였다.

규칙 3. ‘External LSA Type 1’가 ‘External LSA Type 2’보다 우선한다.

  이 외에도 External LSA 중에 NSSA(Not-So-Stuby-Area)에서 생성되는 LSA Type 7이 있는데, 이경우 LSA Type 5와 경쟁하는 단계가 조금 복잡하다. 이 부분은 LSA Type 7을 학습한 후에 자세히 다루기로 하겠다.