Protocoalele de rutare dinamice sunt utilizate de routere pentru a facilita interschimbul informației de rutare între routere. Scopul protocoalelor de rutare dinamice include: descoperirea rețelelor la distanță, menținerea informațiilor de rutare actualizate, alegerea celei mai bune căi către rețelele destinație și abilitatea de a găsi cea mai bună cale daca calea curentă nu mai este disponibilă. În timp ce protocoalele de rutare dinamice necesită mai puține cheltuieli administrative decât rutarea statică, ele necesită dedicarea unei părți din resursele router-ului pentru operațiunile protocolului, inclusiv timpul CPU și lățimea de bandă a legăturii rețelei.

Rețelele utilizează de obicei o combinație de rutare statică și dinamică. Rutarea dinamică este cea mai bună alegere pentru rețele mari iar rutarea statică este mai bună pentru rețele ciot.

Protocoalele de rutare sunt responsabile pentru descoperirea rețelelor la distanță precum și menținerea informațiilor exacte despre rețea. Când apare o schimbare în topologie, protocoalele de rutare propagă acea informație prin tot domeniul de rutare. Procesul de aducere a tuturor tabelelor de rutare la o stare de consistență unde toate router-ele din același domeniu de rutare sau zonă au informații complete și corecte despre rețea, se numește convergență. Unele protocoale converg mai repede decât altele.

Protocoalele de rutare pot fi clasificate fie ca classful sau classless, fie ca distance-vector sau link-state și un protocol gateway interior sau un protocol gateway exterior.

Protocoalele distance vector folosesc router-ele ca indicatoare de-a lungul căii către destinația finală. Singura informație pe care o cunoaște un router despre o rețea la distanță este distanța sau metrica pentru a ajunge la rețea și care cale sau interfață trebuie folosită pentru a ajunge acolo. Protocoalele distance vector nu au o hartă propriu-zisă a topologiei rețelei.

Un router configura cu un protocol de rutare link-state poate crea o viziune completă a topologiei rețelei prin adunarea informațiilor de la toate celelalte routere.

Metricile sunt folosite de protocoalele de rutare pentru a determina cea mai bună cale sau cea mai scurtă cale pentru a ajunge la o rețea destinație. Diferite protocoale de rutare pot folosi diferite metrici. Tipic, o metrică mai mică semnifică o cale mai bună. Metricile pot fi determinate de hop-uri, lățime de bandă, întârziere și sarcină.

Router-ele uneori învață despre mai multe rute către aceeași rețea atât de la rutele statice cât și de la protocoalele de rutare dinamice. Când un router învață despre o rețea destinație de la mai mult de o sursă de rutare, router-ele Cisco folosesc valoarea distanței administrative pentru a determina ce sursă să folosească. Fiecare protocol de rutare dinamic are o valoare administrativă unică alături de rutele statice și rețelele direct conectate. Cu cât este mai mică valoarea administrativă, cu atât este mai preferată ruta sursă. O rețea direct conectată este mereu sursa preferată urmată de rutele statice iar apoi de variate protocoale de rutare dinamică.

Comanda show ip protocols afișează setările protocolului de rutare IPv4 configurate în prezent pe router. Pentru IPv6 folosiți show ipv6 protocols.

Cu protocoalele de rutare link-state precum OSPF, o legătură este interfața unui router. Informația despre starea acelor legături se numește link-states. Toate protocoalele de rutare link-state aplică algoritmul lui Dijkstra pentru a calcula ruta cea mai bună. Algoritmul este referit de regulă ca algoritmul SPF (shortest path first). Acest algoritm folosește costurile cumulate de-a lungul fiecărei căi, de la sursă la destinație pentru a determina costul total al unei rute.