여자친구와 연애편지를 주고 받기 위해서는 집주소가 필요하고, 전화를 걸기 위해서는 전화번호가 필요하듯, 정보통신에서도 장비 간에 데이터를 전송하기 위해서는 주소(Address)가 필요하다. 그리고, 데이터를 주고 받는 장비들 사이에 있는 장비들은 당연히 목적지까지 데이터를 제대로 전송해야 할 것이다. 만일 중간 장비 중 한 장비에서 목적지에 대한 정보가 없거나 잘못된 정보를 가지고 있다면, 상호간 통신이 제대로 이루어지지 않을 수 있기 때문이다.

  그리고, 목적지까지 다중 경로로 되어 있는 경우에는 당연히 최적의 경로를 찾아서 데이터를 전송하여야 할 것이다. 이때, 최적의 경로를 찾아내는 프로토콜을 라우팅 프로토콜(Routing Protocol)이라고 하고, 소스에서 목적지까지의 최적 경로를 ‘Best-Path’라 한다.

  과거에는 Layer 2 주소를 기반으로 데이터를 전송하는 것을 스위칭(Switching), Layer 3 주소를 기반으로 데이터를 전송하는 것을 라우팅(Routing)이라 구분하였다. 그런데, 오늘날 네트워크에서는 Fabricpath의 ‘맥 라우팅(MAC Routing)’ 기술과 같이 스위치 간에 IS-IS 기반의 라우팅 프로토콜을 구동하여 Layer 2 주소를 기반으로 Best-Path를 찾아서 전송하는 기술들이 생겨나면서, Best-Path를 계산하는 알고리즘을 사용하느냐 여부에 따라 스위칭과 라우팅을 구분하고 있다.

  물론, 라우팅 프로토콜에서 최적의 경로를 찾았다고 해서 모두 Best-Path가 되는 것은 아니다. 한 장비에 여러 개의 라우팅 프로토콜이 동작하는 경우에는 라우팅 프로토콜간에 경쟁에서 이겨야 Best-Path가 될 수 있기 때문이다. 이 부분은 뒤에서 자세하게 다루기로 하겠다.

  Layer 2 환경에서 스위칭과 라우팅 기술을 적용하는 경우 A와 B 장비간 통신 시 다음과 같은 차이가 있다.

그리고, 스위칭과 라우팅의 차이점 중 중요한 부분은 부하분산(Load-Balancing)을 할 수 있느냐 여부이다.  스위칭 기술은 동일 주소를 여러 개의 경로로 학습할 수 없다. 예를 들어 Ethernet 기반의 Layer 2 Switch가 동일한 MAC address를 여러 Port로 학습하게 되는 경우, 가장 마지막에 학습한 Port를 우선하고 다른 정보는 삭제를 하여 하나의 정보만을 유지하게 된다. 더구나 일반적으로 이런 현상은 Layer 2 Loop 구조에서 발생하기 때문에 심각한 문제를 초래할 수 있다.

  그러나, 라우팅 기술은 Best-Path가 다중 경로로 계산된 경우 Packet-by-Packet, 또는 Destination-by-Destination으로 부하분산을 시킬 수 있다는 장점을 가지고 있다.