Algoritmi di Instradamento Flashcards

Routing con Dijkstra, Bellman-Ford, OSPF, RIP, BGP

1
Q
  1. Qual è l’obiettivo degli algoritmi di instradamento?
A

Determinare percorsi a costo minimo da mitt a dest.

Sempre avere sequenza ben definita (sia che piano controllo sia distribuito o centralizzato)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q
  1. Come si modella una rete?
A

Come grafo G=(V,E)

Ogni arco ha un costo (velocità, lunghezza o prezzo…) che è infinito se irraggiungibile

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q
  1. Quali sono i tipi di algoritmi?
A
  • Centralizzato: visione completa della rete (link-state) di cui conoscono tutti i collegamenti e costi. Riceve questi dati prima di essere eseguito
  • Decentralizzato: inizialmente nodo conosce solo vicini. Ad iterazioni successive scambia distance-vector con loro e viceversa.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q
  1. Come si suddividono algoritmi in proattivi, reattivi e flooding?
A
  • Proattivi: creano tabelle di routing sia se c’è comunicazione o no
  • Reattivi: non fanno niente a meno di comunicazione pendente
  • flooding: i dati vengono inviati a tutti
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q
  1. Qual è la differenza tra algoritmi statici e dinamici?
A

statici cambiano poco, dinamici variano in base a traffico (vulnerabili a routing loop)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q
  1. Come si comportano generalmente con il carico?
A

Pacchetto salta avanti e indietro tra più router senza arrivare a destinazione.

Causato da più soluzioni che agiscono in contemporanea

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q
  1. Come si ottengono dati in input per gli algoritmi link-state?
A

Ogni nodo invia identità e costo dei collegamenti

OSPF fa flooding

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q
  1. Come è definito l’algoritmo di Djikstra?
A

Inizializzazione: dato nodo di origine, metto i vicini a costo rispettivo

Passo successivo: fino a quando non ho visitato tutti i nodi trovo il nodo più vicino (aggiungo a quelli visitati) e vedo se da lui c’è percorso più veloce di quello che ho

Complessità O(n^2)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q
  1. Quali problemi può avere l’algoritmo di Dijkstra?
A

Problemi di oscillazione se i percorsi vengono aggiornati in base alla congestione sul momento.

Evitare che tutti i router eseguano simultaneamente, così rete può stabilizzarsi.

Router tendono a sincronizzarsi (sol=tempo randomico)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q
  1. Quali sono le caratteristiche principali del Distance-Vector?
A
  • iterativo: si ripete fino a quando non avvengono piu scambi
  • asincrono: non richiede che nodi operino in modo sincronizzato
  • distribuiti: ogni nodo riceve info da nodi vicini
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q
  1. Quali caratteristiche ha l’algoritmo di Bellman-Ford?
A

Periodicamente invia proprio vettore delle distanze.

Quello proprio viene aggiornato con Dx(y)=min_v(c(x,v)+Dv(y))

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

12a. Algoritmo di Bellman-Ford?

A

Inizializzazione: vicini con rispettivo costo, infinito altrimenti

Per ogni vicino, leggo il Distance vector e invio il mio

Fino a quando non si verifica cambiamento di costo

  • per ogni destinazione calcolo il minimo
  • se il mio Dv è cambiato reinvio
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q
  1. Cosa succede se il costo cambia troppo velocemente?
A

La rete non si e1 stabilizzata con nuove info quindi si rischia loop.

Vecchie tratte non vengono aggiornate con le nuove distanze (richiede tempo da parte dei vicini)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q
  1. A cosa serve la poisoned reverse?
A

X→Z→Y

se cambia costo XY ma non si aggiorna

Z instrada verso X passando da Y (Z→Y→X) informa Y che distanza X è infinita (così NOT Y→Z→X)

Risolve il problema dei cicli nei nodi adiacenti ma non risolve cicli più complessi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q
  1. Quali sono le differenze tra LS e DV?
A
  1. DV comunica con nodi adiacenti, LS con tutti
  2. DV scambia messaggi solo con vicini, LS richiede che ogni nodo conosca tutta la rete → O(|N||E|) messaggi
  3. LS è più rapido, DV più lento e ci possono essere cicli
  4. LS è robusto, errori non si diffondono facilmente, DV errore può propagarsi velocemente
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q
  1. Perchè non si può rappresentare internet come semplice collezione di router? Cosa sono AS?
A

Troppi router → Calcolare e comunicare instradamento troppo dispendioso

Internet è fatta da ISP che si gestiscono autonomamente

AS gruppi di router sotto unico controllo amministrativo

17
Q
  1. Cosa è OSPF?
A

Open Shortest Path First (Intra-AS)

Usa Flooding di informazioni. Costi fissati a priori (=1→costo=#hop)

per Ipv4 e Ipv6(con autenticazione, bilanciamento del carico e gerarchia dei domini)

Gestisce casi in cui percorsi a stessa dest abbiamo pesi diversi (visione completa, posso splittare traffico)

18
Q
  1. Perchè si introducono gradi di gerarchia?
A

AS grande

Garantiscono scalabilità alla struttura

19
Q
  1. Come vengono definiti i costi?
A

basati su Hop o capacità collegamento.
annunci contenuti in IP (protocollo 89)

20
Q
  1. Quali sono le caratteristiche di sicurezza?
A

Scambi possono essere autenticati (password condivisa, MD5)

Supporta percorsi multipli

21
Q
  1. Cosa è BGP?
A

Border Gateway Protocol

EGP (Inter ES) ma può essere usato anche intra-as (iBGP)

  1. Ottiene info sulla raggiungibilità dei prefissi di sottorete dai prefissi confinanti
  2. Determina percorsi ottimali verso sottoreti
  3. Propaga le info
22
Q
  1. Come si propaga informazione?
A

Ogni router è sia gateway che router interno

Router vuole annunciare prefisso di rete → invia BGP (ASy x) al router di confine

router di confine invia a tutti quelli interni, invia ASz ASy x all’altro router di confine

In questo modo tutti i router conoscono il percorso per raggiungerli

23
Q
  1. Quali sono le alternative al BGP?
A

AODV, DSR → MANET (Mobile Ad-hoc NETwork) dove tutti i nodi appartengono a stesso prefisso

Tutti hanno stesso meccanismo (router comunicano con vicino con messaggi di hello)

24
Q
  1. Come funziona RIP?
A

Intra-as

Limite massimo di Hop = 15 → limita il diametro della rete di RIP

Ogni 30 secondi, ogni router invia tabella di routing a vicini.

Usa UDP (520), comodo

25
25. Per quale problema viene usato lo split horizon?
Evitare routing loop A→B→C Quando A→B omette A-C Se non ci fosse, ci sarebbe effetto Rana
26
26. Cosa è OpenFlow e a cosa serve?
Protocollo SDN che permette di gestire switch di rete