라우터나 L3 스위치는 자신이 가지고 있는 네트워크 정보들을 기반으로 독립적으로 Best-Path를 선출한다. 즉, 다른 장비가 어느 경로를 Best-Path로 선출했는지는 관심없다는 의미이다. 다음과 같은 구조에서 어떠한 문제가 발생할 수 있는지 생각해보자.

  모든 장비는 목적지까지 최소 Bandwidth를 기준으로 Best-Path를 선출하고, R2만 목적지까지 Hop 수(중간 Node장비의 수)를 기준으로 Best-Path를 선출한다고 가정한다. 사용자 A가 B에게 Packet을 전송하면,  R1은 Bandwidth를 기준으로 Best-Path를 선출하기 때문에, R7과 R8 사이의 10Mbps 회선을 사용하지 않기 위해 R2로 Packet을 전송할 것이다.

Step 1. R1은 Packet을 R2로 전송함

  다음으로 R2는 R4로 Packet을 전송하면 R4, R6, R8을 거쳐야 하기 때문에 Hop 수가 3이 되고, R7로 Packet을 전송하면 R7, R8만 거쳐가면 되기 때문에 Hop 수가 2가 된다. 그러므로, Hop 수를 비교하여 R7로 Packet을 전송할 것이다.

Step 2. R2는 Packet을 R7로 전송함

  그런데, R7은 최소 Bandwidth를 기준으로 Best-Path를 선출하기 때문에 10Mbps 회선을 사용하지 않기 위해 Packet을 다시 R2로 전송할 것이다.

Step 3. R7은 Packet을 R2로 전송함

  그리고, 다시 Step 2가 동작하게 되면 Step 2와 Step 3가 반복되어 Packet은 목적지까지 도달하지 못하고 R2와 R7 사이에서 Looping이 발생하게 된다.

  이러한 문제를 해결하기 위한 조건은 모든 장비가 Best-Path를 선출하는 기준이 동일해야 한다는 것이다. Best-Path를 선출하는 기준과 동작원리를 다음 장에서 하나씩 살펴보도록 하겠다.