1 / 80

Instradamento tra Sistemi Autonomi -- BGP

Instradamento tra Sistemi Autonomi -- BGP. Reti II Stefano Leonardi Thanks to: Giuseppe Di Battista, Maurizio Patrignani, Maurizio Pizzonia: Università di Roma Tre Timothy G. Griffin http://www.research.att.com/~griffin/interdomain.html. I Sistemi Autonomi.

Download Presentation

Instradamento tra Sistemi Autonomi -- BGP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Instradamento tra Sistemi Autonomi -- BGP Reti II Stefano Leonardi Thanks to: Giuseppe Di Battista, Maurizio Patrignani, Maurizio Pizzonia: Università di Roma Tre Timothy G. Griffin http://www.research.att.com/~griffin/interdomain.html Instradamento tra Sistemi Autonomi --BGP

  2. I Sistemi Autonomi • Ogni organizzazione è composta da un insieme di router e LAN sotto una singola amministrazione • Un algoritmo di routing è prescelto per aggiornare automaticamente le tabelle di instradamento • Un AS definisce in maniere coerente le politiche di instradamento all’interno della sua oganizzazione Instradamento tra Sistemi Autonomi --BGP

  3. L’interconnessione di Sistemi Autonomi • Quando più organizzazioni si uniscono per formare una Inter-rete, occorre stabilire tra loro punti di collegamento • Le reti che vengono aggiunte sono dette punti di demarcazione Instradamento tra Sistemi Autonomi --BGP

  4. L’instradamento tra Sistemi Autonomi • Ogni tabella deve avere un’entry per ogni possibile destinazione • Questo deve valere sia per le destinazioni locali che per quelle globali Instradamento tra Sistemi Autonomi --BGP

  5. Come aggiornare le tabelle di Instradamento? In generale vi sono tre opzioni: • Eseguire un unico algoritmo di instradamento tra organizzazioni adiacenti • Aggiornare le tabelle di instradamento manualmente aggiungendo percorsi statici predefiniti • Combinare un protocollo di instradamento intra-domain con un protocollo di instradamento inter-domain: Exterior gateway protocol Instradamento tra Sistemi Autonomi --BGP

  6. 1. Unico algoritmo di Instradamento • Molti Svantaggi: • Ritardo di propagazione, ex: distance vector • Rallentamento: messaggi di instradamento inviati agli altri routers con l’elenco delle possibili destinazioni • Tutte le organizzazioni sono forzate ad usare lo stesso algoritmo • Un nuovo algoritmo di instradamento è di difficile adozione • Non considera le relazioni politiche e commerciali tra sistemi autonomi Instradamento tra Sistemi Autonomi --BGP

  7. 2. Percorsi statici • Si nasconde la parte interna dell’AS • Per ogni obiettivo esterno si identifica un router alla frontiera del Sistema Autonomo di destinazione • Informazione sul cammino da seguire per raggiungere l’obiettivo • Svantaggi: • difficile da aggiornare e da correggere • I malfunzionamenti non sono gestiti, non si ha backup • Nessuna garanzia che tutti i router del percorso sono in effetti disponibili per portare il traffico a destinazione Instradamento tra Sistemi Autonomi --BGP

  8. 2. Percorsi statici • L’instradamento può essere inefficente • Nell’esempio R1 ed R2 sono parte dello stesso AS. R3 invia ad R1 tutto il traffico diretto all’AS, anche quello diretto alla LAN 2. • L’instradamento non tiene conto delle reti che si possono effettivamente raggiungere! Instradamento tra Sistemi Autonomi --BGP

  9. 2. Percorsi statici • L’algoritmo di instradamento diffonderà all’interno dell’AS il traffico locale come il traffico che segue i percorsi statici Instradamento tra Sistemi Autonomi --BGP

  10. Le reti nascoste • Ogni AS ha una topologia complessa, formata da diverse Reti Locali • Non tutte le reti locali sono connesse ad un router di frontiera dell’AS • Occorre informare l’esterno delle Reti Localiraggiungibili Instradamento tra Sistemi Autonomi --BGP

  11. Un approccio diverso • Occorre avere un flusso informativo in due direzioni, sia dall’interno verso l’esterno che dall’esterno verso l’interno • L’AS si deve far carico di garantire la consistenza degli instradamenti interni • Occorre annunciare all’esterno quali reti interne sono raggiungibili • Occorre assegnare le responsabilità per la diffusione delle informazioni riguardo l’instradamento Instradamento tra Sistemi Autonomi --BGP

  12. 3. Exterior gateway protocol • Protocollo per lo scambio delle informazioni sull’instradamento tra Sistemi Autonomi • BGP – Border Gateway Protocol • Due AS che si scambiano informazioni di instradamento designano due router che stabiliscono una sessione di peering • Router che partecipano a BGP sono detti Router di Confine o Gateway Instradamento tra Sistemi Autonomi --BGP

  13. 3. Exterior Gateway Protocol Approccio: • Nascondi la parte interna degli AS • Mantieni solo le zone di demarcazione e i router di frontiera degli AS Instradamento tra Sistemi Autonomi --BGP

  14. 3. Exterior Gateway Protocol • Ogni router di frontiera rappresenta le destinazioni interne come se fossero locali Instradamento tra Sistemi Autonomi --BGP

  15. 3. Exterior Gateway Protocol • Semplifica il grafo considerando le informazioni sulla raggiungibilità sia interna che esterna all’AS • Il grafo è gestito attraverso sessioni peering TCP Instradamento tra Sistemi Autonomi --BGP

  16. 3. Exterior Gateway Protocol • Risolvi il problema dell’instradamento nel grafo cosi’ • Definisci anche percorsi prestabiliti sulla base di considerazioni politiche Instradamento tra Sistemi Autonomi --BGP

  17. BGP v4 – Border Gateway Protocol BGP matiene aggiornate le tabelle di instradamento e propaga le informazione sull’instradamento BGP considera la disponibilità delle organizzazioni a cooperare nel processo di instradamento (accordi commerciali, questioni legali, preferenze locali) Instradamento tra Sistemi Autonomi --BGP

  18. Caratteristiche di BGP i • Fornisce comunicazione tra AS • Coordinamento tra speaker di uno stesso AS -- diffusione di informazioni coerenti • Diffusione dell’informazioni di raggiungibilità all’interno dell’AS e attraverso l’AS, e apprende tali informazioni da altri AS • Next hop routing – simile a distance vector routing • Utilizza TCP per le sessioni di peering • Invia messaggi Keep-alive per informare dello stato della connessione anche se nessun messaggio è inviato Instradamento tra Sistemi Autonomi --BGP

  19. Caratteristiche di BGP ii • Informazioni sull’instradamento, router che saranno attraversati fino a destinazione • Aggiornamenti incrementali per risparmiare banda • Supporto CIDR – invio della maschera insieme all’indirizzo • Aggregazione delle informazioni di instradamento per destinazione correlate • Consente al destinatario di autenticare i messaggi Instradamento tra Sistemi Autonomi --BGP

  20. Numerazione degli AS • BGP richiede un numero identificatico per ogni AS (Autonomous System Number, asn) trac 1 and 65,535 • numeri maggiori di 64,511 sono detti “privati” • Un asn può essere ottenuto da • asn globale – all’autorità internet regionale: ripe, arin, apnic • asn privato – all’isp Instradamento tra Sistemi Autonomi --BGP

  21. Funzionalità BGP • Apertura connessione tra peers • Annuncio informazioni sulla raggiungibilità • Verifica corretto funzionamento Quattro tipi di messaggio BGP Instradamento tra Sistemi Autonomi --BGP

  22. Intestazione messaggi BGP • Precede ogni messaggio BGP ed identifica il tipo di messaggio • Marker (16 byte): scelto in accordo tra le due parti per sincronizzare i messaggi. Questa funzione non è fornita da TCP • Length (2 byte): lunghezza del messaggio tra 19 e 4096 byte • Type: tipo di messaggio BGP Instradamento tra Sistemi Autonomi --BGP

  23. Peering tra due AS Le informazioni possono essere scambiate tra due AS solo se una sessione peering è attiva La sessione peering è una connessione TCP tra i due AS Instradamento tra Sistemi Autonomi --BGP

  24. OPEN • Utilizzato per aprire una connessione peer • Il campo Hold specifica il massimo numero di secondi tra due messaggi successivi • Un router bgp è caratterizzato dall’asn e da un indentificatore unico a 32 bit che deve usare per tutte le connessioni peering • Parametri opzionali: ad esempio per l’autenticazione Instradamento tra Sistemi Autonomi --BGP

  25. OPEN • Il router destinatario di un messaggio OPEN risponde con un KEEPALIVE • Connessione aperta quando entrambi i router inviano un messaggio OPEN ed un messaggio KEEPALIVE Instradamento tra Sistemi Autonomi --BGP

  26. Annunci BGP • BGP permette ad un AS di offrire connettività ad un altro AS • Offrire connettività significa promettere il recapito ad una specifica destinazione Instradamento tra Sistemi Autonomi --BGP

  27. UPDATE • Announcement = prefix + attributes values • Annuncia nuove reti raggiungibili ed eventualmente l’instradamento • Annuncia reti precedentemente annunciate non più raggiungibili Instradamento tra Sistemi Autonomi --BGP

  28. Prefissi di Rete Compressi • Specifica solo i bytes ,corrispondenti al prefisso • 1 – 4 byte: maschere fino a 8,16,24 bit • Ex: 220.123 220.16.128 Instradamento tra Sistemi Autonomi --BGP

  29. Filtro degli annunci • Gli annunci sono inviati e/o accettati solo se alcune condizioni sono verificate • Gli annunci possono essere filtrati sulla base di: • Una lista di prefissi validi • Una lista di numeri di AS Instradamento tra Sistemi Autonomi --BGP

  30. Path attributes • BGP specifica più di un salto successivo verso la destinazione • Gli attributi possono indicare: • Sistemi autonomi attraversati verso la destinazione • Provenienza delle informazioni sull’instradamento: locali (igp) o apprese da altri sistemi autonomi (egp) • Attributi sono comuni a tutte le destinazioni annunciate • Destinazioni con attributi diversi devono essere annunciate con messaggi diversi • Permette di individuare cicli sugli instradamenti e provenienza dei messaggi Instradamento tra Sistemi Autonomi --BGP

  31. Path attributes • Codice tipo: • Origine informazione instradamento • Elenco sistemi autonomi sul percorso • Salto successivo • Discriminazione tra più punti di uscita SA • Preferenza all’interno del SA • Indicazione di percorsi riuniti • ID del SA che ha riunito i percorsi Instradamento tra Sistemi Autonomi --BGP

  32. Instradamento BGP • Speaker BGP annuncia informazioni corrette dal punto di vista del mittente esterno, ma non necessariamente corrette dal proprio punto di vista • Nella figura (prox slide) R2 è lo speaker BGP annuncia il raggiungimento di • Rete 1 attraverso R1 • Rete 3 e Rete 4 attraverso R3 • Rete 2 attraverso R2 • Le informazioni non sono quindi relative all’instradamento di R2 Instradamento tra Sistemi Autonomi --BGP

  33. Instradamento BGP Instradamento tra Sistemi Autonomi --BGP

  34. Attributes are Used to Select Best Routes 192.0.2.0/24 pick me! 192.0.2.0/24 pick me! 192.0.2.0/24 pick me! Given multiple routes to the same prefix, a BGP speaker must pick at most one best route (Note: it could reject them all!) 192.0.2.0/24 pick me! Instradamento tra Sistemi Autonomi --BGP

  35. BGP Route Processing Open ended programming. Constrained only by vendor configuration language Apply Policy = filter routes & tweak attributes Apply Policy = filter routes & tweak attributes Receive BGP Updates Based on Attribute Values Best Routes Transmit BGP Updates Apply Import Policies Best Route Selection Best Route Table Apply Export Policies Install forwarding Entries for best Routes. IP Forwarding Table

  36. AS 1239 Sprint ASPATH Attribute AS 1129 135.207.0.0/16 AS Path = 1755 1239 7018 6341 Global Access AS 1755 135.207.0.0/16 AS Path = 1239 7018 6341 135.207.0.0/16 AS Path = 1129 1755 1239 7018 6341 Ebone AS 12654 RIPE NCC RIS project 135.207.0.0/16 AS Path = 7018 6341 AS7018 135.207.0.0/16 AS Path = 3549 7018 6341 135.207.0.0/16 AS Path = 6341 AT&T AS 3549 AS 6341 135.207.0.0/16 AS Path = 7018 6341 AT&T Research Global Crossing 135.207.0.0/16 Prefix Originated

  37. Shorter Doesn’t Always Mean Shorter Mr. BGP says that path 4 1 is better than path 3 2 1 In fairness: could you do this “right” and still scale? Exporting internal state would dramatically increase global instability and amount of routing state Duh! AS 4 AS 3 AS 2 AS 1 Instradamento tra Sistemi Autonomi --BGP

  38. KEEPALIVE • Verifica periodicamente la connessione TCP tra entità peer • Più efficiente rispetto ad inviare periodicamente messaggi di instradamento • Intervallo KEEPALIVE ogni 1/3 di HOLD time, mai inferiore a 1 sec. Instradamento tra Sistemi Autonomi --BGP

  39. NOTIFICATION • Controllo o segnalazione errori • BGP invia un messaggio di notifica e chiude la connessione TCP • Errori: • Errore nell’intestazione del messaggio • Errore nel messaggio OPEN • Errore nel messaggio UPDATE • Timer di attesa scaduto • Errore nella macchina a stati finiti • Fine (connessione terminata) Instradamento tra Sistemi Autonomi --BGP

  40. Limiti di BGP • BGP non può discriminare tra due percorsi sulla base della distanza o della congestione • L’informazione di raggiungibilità fornita da due AS è indistinguibile • BGP sceglie uno dei due percorsi possibili non sulla base di una metrica di costo • BGP permette di suddividere il carico attraverso la rete ma non in modo dinamico • Occorre configurare manualmente quale reti sono annunciate da quali routers esterni • Tutti i sistemi autonomi devo concordare su uno schema coerente per annunciare la raggiungibilità Instradamento tra Sistemi Autonomi --BGP

  41. Instradamento con arbitraggio • Occorre un sistema per garantire la coerenza sulle informazioni di instradamento • Database autenticato e replicato che contiene le informazioni sulla raggiungibilità • Autenticazione permette di annunciare la raggiungibilità di una rete solo al SA che la possiede • NAP sono i router di interconnessione tra ISP • I NAP hanno un Router Server che mantiene il data base BGP ma non sono necessariamente speaker BGP • Gli speaker BGP mantengono aperto un collegamento verso il Router Server Instradamento tra Sistemi Autonomi --BGP

  42. Uno scenario BGP complesso Instradamento tra Sistemi Autonomi --BGP

  43. Classificazione delle Reti • Stub network: un collegamento ad un singolo isp • Multi-homed stub network: due o più collegamenti allo stesso isp backup o divisione del carico • Multi-homed network: due o più collegamenti a isp differenti backup o divisione del carico Instradamento tra Sistemi Autonomi --BGP

  44. Stub network Instradamento tra Sistemi Autonomi --BGP

  45. Stub network, architettura • Un router della rete è scelto come gateway di default è connesso ad un singolo router dell’isp con una o più connessioni • Una singola sessione di peering in cui as200 annuncia la sua raggiungibilità e accetta l’instradamento di default sul router Instradamento tra Sistemi Autonomi --BGP

  46. Instradamento statico per stub network • Un instradamento statico di default è sufficiente per i pacchetti in uscita per essere inviati su internet attraverso la connessione all’isp • Un instradamento statico è anche sufficiente per i pacchetti in ingresso per raggiungere la rete attraverso la connessione all’isp • Non vi è alcun bisogno di BGP Instradamento tra Sistemi Autonomi --BGP

  47. Multi-homed stub networks Instradamento tra Sistemi Autonomi --BGP

  48. Multi-homed stub networks • Due collegamenti allo stesso isp • Due routers della rete customer sono di solito coinvolti Instradamento tra Sistemi Autonomi --BGP

  49. Instradamento • Un pacchetto diretto ad Internet può attraversare uno dei due link • Un pacchetto proveniente da Internet può atraversare uno dei due link • Un pacchetto in transito può attraversare entrambi i link Instradamento tra Sistemi Autonomi --BGP

  50. Politiche desiderate - Backup • Eliminare traffico in transito • Traffico in ingresso: • Utilizzare link 1 • Utilizzare link 2 in caso di fault su link 1 • Traffico in uscita: • Utilizzare link 1 • Utililizzare link2 in caso di fault su link 1 Instradamento tra Sistemi Autonomi --BGP

More Related