라우팅과 포워딩은 네트워크 레이어(Network layer)에 반드시 있어야 하는 두 가지 기능이다. 이는 네트워크 레이어 장비인 라우터(Router)가 가지고 있는 기능이기도 하다.
패킷 단위로 출발지부터 목적지까지 경로를 설정한다. 네비게이션 역할을 하며, 최단거리를 찾는 알고리즘을 사용한다.
데이터를 전송하는 과정에서 라우팅이 잘못되면 포워딩도 불완전해지기 때문에 라우터의 중요성이 더 크다.
라우팅 알고리즘을 통해 만들어지는 테이블이다. RIP나 OSPF 같은 라우팅을 만드는 방법(protocol)을 라우팅 알고리즘이라고 한다. 라우팅이란 라우팅 알고리즘을 사용하여 포워딩 테이블을 만드는 작업이다.
라우팅 테이블을 만드는 과정이 출발지부터 목적지까지 경로를 찾는 일이 된다.
라우터의 입력 포트에서 출력 포트로 패킷을 이동시키는 것을 말한다.
라우팅 알고리즘을 통해 포워딩 테이블(Forwarding table)이 만들어진다.
즉, 라우팅 테이블(Routing table)을 만드는 과정이 데이터가 이동하는 최종 경로가 된다.
라우팅 테이블을 참조하여 만들어지는 테이블이다. 많은 경로 중 비용이 작은 경로를 선택하는 라우팅 알고리즘을 통해 선택된 경로를 저장해 둔 것이 포워딩 테이블이다.
💡 라우터의 기능인 라우팅과 포워딩은 라우팅 알고리즘을 통해 만들어진 포워딩 테이블을 참조하여 패킷을 목적지에 맞게 적당한 포트로 패킷을 이동시키는 것이라 할 수 있다.