PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER

Documenti analoghi
Il routing in Internet Exterior Gateway Protocols

Internet e Peering. Fulvio RISSO

Lo scenario: la definizione di Internet

Reti di calcolatori. Lezione del 10 giugno 2004

Interdomain routing. Principi generali e protocolli di routing. Mario Baldi

Interdomain routing Principi generali e BGP

Autonomous system (AS) Autonomous system: perchè? Autonomous system. Autonomous system: perchè? Autonomous system: perchè?

Routing Dinamico EIGRP con Manual Summarization e Default Route 16/12/2014 Autore Roberto Bandiera

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

SWITCH. 100 Mb/s (UTP cat. 5E) Mb/s SWITCH. (UTP cat. 5E) 100 Mb/s. (UTP cat.

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Indirizzamento privato e NAT

VPN CIRCUITI VIRTUALI

I protocolli di routing dell architettura TCP/IP

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori I

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Parte II Lezione 5

BOOT CAMP CISCO CERTIFIED NETWORK PROFESSIONAL (CCNP) MODULO ROUTE

Reti di Telecomunicazione Lezione 8

Reti di Calcolatori. Il software

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

I protocolli di routing dell architettura TCP/IP

INDIRIZZI IP AUTORIZZATI

VPN: connessioni sicure di LAN geograficamente distanti. IZ3MEZ Francesco Canova

ARP e instradamento IP

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.

Reti diverse: la soluzione nativa

Accreditamento operatori Elenco degli ISP accreditati ad OVER network. Direzione Sistema Informatico 09 Luglio 2009

Verifica scritta di Sistemi e Reti Classe 5Di

RETI DI COMPUTER Reti Geografiche. (Sez. 9.8)

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Prova completa Martedì 15 Novembre 2005

Reiss Romoli 2014 CISCO CERTIFIED NETWORK ASSOCIATE (CCNA) CCNA

Interconnessione di reti

Reti diverse: la soluzione nativa

Allegato 3 Sistema per l interscambio dei dati (SID)

GLI APPARATI PER L INTERCONNESSIONE DI RETI LOCALI 1. Il Repeater 2. L Hub 2. Il Bridge 4. Lo Switch 4. Router 6

Reti di Calcolatori

Informatica per la comunicazione" - lezione 8 -

Firewall e NAT A.A. 2005/2006. Walter Cerroni. Protezione di host: personal firewall

Internet. Introduzione alle comunicazioni tra computer

Progettare un Firewall

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

SIMULAZIONE PROVA SCRITTA ESAME DI STATO. PER LA DISCIPLINA di SISTEMI

Versione 1. (marzo 2010)

Dal menù Network/Interface/Ethernet configurare le interfacce WAN e LAN con gli opportuni ip:

Centro Tecnico per la Rete Unitaria della Pubblica Amministrazione

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella

Comunicazione nel tempo

Reti di calcolatori ed indirizzi IP

Università degli Studi di Pisa Dipartimento di Informatica. NAT & Firewalls

Access Control List (I parte)

1) GESTIONE DELLE POSTAZIONI REMOTE

A cura di Giorgio Mezzasalma

Sicurezza nelle reti

Instradamento IP A.A. 2005/2006. Walter Cerroni. IP: instradamento dei datagrammi. Routing : scelta del percorso su cui inviare i dati

Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8

Firewall applicativo per la protezione di portali intranet/extranet

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet

Programmazione in Rete

Trasmissione di dati al di fuori di un area locale avviene tramite la commutazione

INTERNET e RETI di CALCOLATORI A.A. 2011/2012 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam.

Si tratta dell offerta di accesso ad Internet in FIBRA OTTICA di Rete-Tel costituita da circuiti portati fino alla sede del cliente.

CLOUD AWS. #cloudaws. Community - Cloud AWS su Google+ Amazon Web Services. Amazon VPC (Virtual Private Cloud)

Livello di Rete. Prof. Filippo Lanubile. Obiettivo

Autonomous System. I protocolli di routing usati all'interno di un AS sono denominati IGP (Interior Gateway Protocol) Esempio:

INDIRIZZI IP ARCHITETTURA GENERALE DEGLI INDIRIZZI IP FORME DI INDIRIZZI IP CINQUE FORME DI INDIRIZZI IP

Comune di San Martino Buon Albergo

Maschere di sottorete a lunghezza variabile

Protocolli di Comunicazione

Gestione degli indirizzi

Installazione di una rete privata virtuale (VPN) con Windows 2000

Il VoIP nel mondo di Internet e l evoluzione del carrier telefonico. Relatore: Ing. Carrera Marco - Audit Technical Manager Switchward

GLI INDIRIZZI DELL INTERNET PROTOCOL (IP ADDRESS) 2. Fondamenti sugli indirizzi dell Internet Protocol 2. Struttura di un indirizzo IP 2

INFORMATICA PROGETTO ABACUS. Tema di : SISTEMI DI ELABORAZIONE E TRASMISSIONE DELLE INFORMAZIONI

Cos è. Protocollo TCP/IP e indirizzi IP. Cos è. Cos è

Il livello 3 della pila ISO/OSI. Il protocollo IP e il protocollo ICMP

RoutingInternet Protocol. Algoritmi di instradamento di tipo Distance vector

Cos'è una vlan. Da Wikipedia: Una LAN virtuale, comunemente

PROF. Filippo CAPUANI TCP/IP

DOMOTICA ED EDIFICI INTELLIGENTI UNIVERSITA DI URBINO

Università di Genova Facoltà di Ingegneria

Introduzione al TCP/IP Indirizzi IP Subnet Mask Frame IP Meccanismi di comunicazione tra reti diverse Classi di indirizzi IP Indirizzi IP privati e

Software Servizi Web UOGA

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA

Sicurezza Reti. netrd. Versione: 2.1.1

Simulazione seconda prova Sistemi e reti Marzo 2016

Il funzionamento delle reti

BREVE GUIDA ALL ATTIVAZIONE DEL SERVIZIO DDNS PER DVR SERIE TMX

Reti LAN. IZ3MEZ Francesco Canova

Sicurezza a livello IP: IPsec e le reti private virtuali

Firewall, Proxy e VPN. L' accesso sicuro da e verso Internet

Con la presente vengono fornite indicazioni ai fini dell autorizzazione all esercizio di detta modalità di gioco.

Le fattispecie di riuso

SISTEMA INFORMATIVO AGRICOLO REGIONALE AGGIORNAMENTO PROGETTO OPERATIVO PER LA REALIZZAZIONE DELLA RETE DI COMUNICAZIONE

Transcript:

P E R L A P R O G E T T A Z I O N E I C T PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER VOLUME III ROUTING BGP Per la preparazione agli esami CCNP, CCIE-R&S e CCIE-SP di ENRICO CIPOLLONE FRANCESCO CIPOLLONE

PIANO DELL OPERA VOLUME I - FONDAMENTI DI SWITCHING CAP. 1 PARTE PRIMA NATURA E CARATTERISTICHE DELLE INFORMAZIONI TRASPORTATE IN RETE Natura e caratteristiche delle informazioni trasportate da reti TCP-IP PARTE SECONDA SWITCHING CAP. 2 CAP. 3 CAP. 4 Ethernet e altri modelli di distribuzione in area locale Virtualizzazione e gestione della congestione e tecniche di ridondanza in reti LAN Servizi e sicurezza in reti LAN. Sicurezza nelle reti Ethernet PARTE TERZA LE RETI CONDIVISE DEGLI ISP: NATURA E COMPOSIZIONE DEI SERVIZI CAP. 5 Soluzioni e tecnologie per l estensione WAN di reti TCP-IP PARTE QUARTA STRUTTURA, CONFIGURAZIONE, GESTIONE DI MACCHINE DI RETE CAP. 6 CAP. 7 Accesso e configurazione di macchine intermedie in reti TCP-IP Network management configurazione di SNMP, NTP, SYSLOG in apparati di reti TCP-IP VOLUME II - ROUTING BASE PARTE QUINTA ROUTING CAP. 8 Tecnica di indirizzamento nelle reti TCP-IP 5

CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo di routing OSPF single-area CAP. 12 Il protocollo di routing OSPF multi-area CAP. 13 Il protocollo di routing EIGRP VOLUME III - ROUTING BGP PARTE SESTA CONTROL-PLANE: INTERAZIONE DEI CLIENTI CON ISP E SCAMBI DI INFORMAZIONI TRA ISP CAP. 14 Border Gateway Protocol VOLUME IV - MANIPOLAZIONI NEL CONTROL-PLANE E DATA-PLANE PARTE SETTIMA MANIPOLAZIONI, CONTROLLI, ISPEZIONI NEL CONTROL-PLANE E DATA-PLANE: ACL, NAT, FIREWALL, REDISTRIBUZIONI CAP. 15 Tecniche di controllo dei flussi nel control-plane e nel data-plane CAP. 16 CAP. 17 Domini di indirizzamento pubblico e privato e relative traslazioni Completamento del control-plane in ambiente complesso: redistribuzione di informazioni tra protocolli di routing PARTE OTTAVA COMUNICAZIONE SICURA PPTP, IPSEC, TUNNELING, VPN CAP. 18 Comunicazione Sicura: IPSEC ed altri schemi 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

INDICE GENERALE PIANO DELL OPERA... 5 PARTE SESTA CONTROL-PLANE: INTERAZIONE DEI CLIENTI CON ISP E SCAMBI DI INFORMAZIONI TRA ISP CAPITOLO 14 BORDER GATEWAY PROTOCOL... 15 SEZIONE PRIMA: Fenomenologia... 15 14.1 Protocollo per comunicazioni EGP... 15 14.1.1 Cosa è un autonomous-system... 16 14.2 Quando usare BGP... 17 14.3 Cosa comunicare con BGP... 20 14.4 Con chi si comunica in BGP... 22 14.4.1 Scenario di comunicazione tra ISP... 22 14.4.2 Scenario di comunicazione tra un large end-user con uno o più ISP... 24 14.5 E-bgp ed I-bgp... 26 14.6 Terminologia BGP e riferimenti RFC... 27 14.7 Come funziona il protocollo... 28 14.7.1 I neighbor... 28 7

14.7.2 I messaggi BGP ed il loro trasporto... 30 14.7.3 Uso del TCP per il trasporto affidabile in BGP... 32 14.7.4 Messaggi update, retire... 34 14.7.5 I controlli di BGP per avviare o accettare una sessione... 35 14.7.6 I ruoli di server e client nell avvio di una sessione BGP... 37 14.7.7 La cattura dei principali pacchetti BGP... 39 14.8 Annunci in BGP: NLRI ed attributi... 41 14.8.1 La complessità degli annunci... 41 14.9 Come sono composti gli attributi... 43 14.9.1 Come si applicano i filtri agli annunci... 44 14.9.2 Significato e uso degli attributi... 46 14.9.2.1 Attributo WEIGHT (un router ricevente due trasmittenti da altro AS)... 46 14.9.2.2 Attributo LOCAL-PREFERENCE (due router riceventi due trasmittenti da altro AS)... 47 14.9.2.3 MED: multi-exit discriminator... 49 14.9.2.4 ORIGIN... 50 14.9.2.5 AS_PATH Attribute... 50 14.9.2.6 Attributo Next-hop in ambiente BMA... 54 14.9.2.7 Attributo Next-hop in ambiente NBMA... 55 14.9.2.8 Attributo next-hop in ambiente AS di transito (ISP): problemi di scalabilità e full mesh... 56 14.9.2.9 Attributo Community... 58 14.9.2.10 La stabilizzazione di annunci e gli attributi relativi... 59 14.9.2.10.1 BGP distance vector: l autosommarizzazione e la sommarizzazione manuale...59 14.9.2.10.2 Sommarizzazione con l attributo Atomic aggregate...60 14.9.2.10.3 Sommarizzazione: l argomento AS-SET...61 14.9.2.10.4 Sommarizzazione: la clausola attribute-map...64 8 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

14.9.2.10.5 Sommarizzazione: la clausola advertise-map...66 14.9.2.10.6 Sommarizzazione: la clausola suppress-map in combinazione con altri comandi...67 14.9.2.10.7 Sommarizzazione: Attributo Aggregator... 68 14.9.2.11 Classificazione degli attributi...68 14.9.2.12 Uso degli attributi per la scelta delle rotte ottimali da presentare come candidate alla tabella di routing...69 14.9.2.13 La sequenza con cui sono considerati gli attributi...71 SEZIONE SECONDA: prime configurazioni... 72 14.10 Elementi base di configurazione... 72 14.10.1 Il commando router BGP per la creazione di una sessione... 73 14.10.1.1 Il comando Router-ID per il controllo dell indirizzo sorgente dei pacchetti...74 14.10.2 Il comando neighbor per la creazione di una conversazione... 75 14.10.2.1 Creazione di gruppi di neighbor ed il comando peer-group...76 14.10.2.2 Neighbor password...76 14.10.3 Il comando update source loopback... 77 14.10.4 Il comando EBGP-multihop... 78 14.10.5 Configurazione di nuove destinazioni negli annunci BGP... 80 14.10.5.1 Redistribuzione di rotte statiche...81 14.10.5.2 Redistribuzione di rotte annunciate da protocolli di routing dinamici...82 14.10.5.3 Il commando network...82 SEZIONE TERZA: Configurazioni avanzate... 85 14.11 Filtri sugli annunci... 85 14.11.1 Filtri per rimozione e per modifica... 85 9

14.11.2 Comando distribuite list in... 86 14.11.3 Distribute-list out... 87 14.11.3.1 Esempi di utilizzo dei comandi distribuite-list... 88 14.11.4 Filtri mediante route map... 90 14.11.4.1 Route map applicazione: Esempio 1... 93 14.11.4.2 Route map applicazione: Esempio 2... 94 14.11.4.3 Route-map applicazione: Esempio 3... 94 14.11.4.4 Route-map applicazione: Esempio 4... 95 14.11.4.5 Route-map applicazione: Esempio 5... 95 14.11.4.6 Route-map applicazione: esempio 6... 96 14.11.4.7 Route-map applicazione: esempio 7... 96 14.11.5 Route map con uso della struttura prefix-list... 96 14.11.6 Route map per conditional-injection... 99 14.11.6.1 Cosa si può usare per selezionare rotte: le opzioni del comando match... 100 14.11.6.2 Cosa si può modificare negli annunci di rotte: le opzioni del commando SET... 101 14.11.7 Filtraggio di rotte mediante ispezione dell attributo AS-PATH... 102 14.11.7.1 Significato e simboli delle REGULAR EXPRESSION... 103 14.11.7.2 Come scrivere una Regular Expressions... 104 14.11.7.3 Regex costituite da un solo carattere... 105 14.11.7.4 Regex costituite da molti caratteri... 105 14.11.7.5 Moltiplicatori... 106 14.11.7.6 Match di Due sequenze Alternative di caratteri... 107 14.11.7.7 Match tipo comincia per... finisce per (Anchoring)... 107 14.11.7.8 Uso della parentesi per memorizzare una sequenza per successivo richiamo... 108 10 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

SEZIONE QUARTA: configurazione scalabilità...109 14.12 La tabella delle rotte scambiate... 109 14.13 Il rapporto tra tabella BGP e la tabella di routing... 111 14.13.1 Client collegato con due service provider... 112 14.13.1.1 Service provider di transito...115 14.13.2 La sincronizzazione e le sue eccezioni (confederazioni e route reflector)... 125 14.13.2.1 La scalabilità della soluzione full-mesh...126 14.13.2.2 I route reflector...126 14.13.2.3 Le confederazioni...132 14.13.3 Configurazione del Route Dampening... 134 14.13.4 BGP Soft Reconfiguration... 136 SEZIONE QUINTA: Il controllo... 138 14.14 I comandi di show e debug del protocollo... 138 11

PARTE SESTA CONTROL-PLANE: INTERAZIONE DEI CLIENTI CON ISP E SCAMBI DI INFORMAZIONI TRA ISP

CAPITOLO 14 BORDER GATEWAY PROTOCOL SEZIONE PRIMA: Fenomenologia 14.1 Protocollo per comunicazioni EGP Figura 14.1 Il protocollo per gli scambi di informazioni di routing tra Amministrazioni Il protocollo BGP è utilizzato prevalentemente ma non esclusivamente per lo scambio di informazioni di routing tra Autonomous-systems ovvero tra diversi responsabili di aree dell internet. È cioè il programma con cui ciascun grande utente o service provider completa il control plane del suo piano di indirizzamento descrivendo i percorsi esterni al suo AS attraverso cui raggiungere tutte le destinazioni dell internet. Nel control plane le destinazioni sono descritte in termini di indirizzi ip dei target con prefisso l autonomous system di appartenenza. Le destinazioni sono specificate in modo sommarizzato per contenere il loro 15

numero che comunque raggiunge le molte centinaia di migliaia. Le informazioni di destinazione sono accompagnate da una serie di altri parametri detti correntemente attributi. Su tali attributi possono essere effettuate molte diverse operazioni di manipolazione per consentire all amministratore la più ampia scelta tra possibili percorsi verso i target. In conformità alle informazioni del control plane fa seguito il traffico del data plane. Il passaggio di questo traffico da un AS all altro è effettuato a titolo oneroso: gli operatori richiedono dei compensi per recapitare il traffico verso le destinazioni. Pertanto il protocollo BGP è spesso definito come strumento per le politiche di instradamento ovvero della regolazione dei rapporti economici tra operatori. Due garanzia importanti sono offerte per le destinazioni annunciate da questo protocollo: di raggiungibilità; di assenza di loop. Il protocollo effettua infatti alcuni controlli preliminari prima di trasmettere le destinazioni. Il protocollo controlla l esistenza nella tabella di routing di una riga per la destinazione che si va ad annunciare. Il traffico conseguente a questo annuncio troverà così una destinazione cui essere inoltrato. Questo meccanismo innesca a sua volta delle protezioni assunte automaticamente dal protocollo (sincronizzazione). L assenza di loop è invece garantita controllando che nella sequenza degli autonoumous system attraversata dagli annunci di una destinazione non sia presente l AS in cui l annuncio è ricevuto. Questo attributo è sempre presente in ogni annuncio di BGP. 14.1.1 Cosa è un autonomous-system Un autonomous system è un insieme di reti rete sotto un unico controllo amministrativo. Gli autonomous-system number possono essere considerati alla stregua dei 16 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

prefissi telefonici internazionali che si prepongono ai piani di numerazione nazionale per rendere univoci i piani telefonici di ciascuna nazione su scala mondiale (volendo individuare un autonomous-system in telefonia questo può coincidere con gli stati). Il rilascio dei numeri degli autonomous system è effettuato da IANA su scala mondiale attraverso gli uffici regionali. Il prefisso autonomous system è un indirizzo a 16 bit. A differenza dell indirizzamento IP, non è prevista nessuna manipolazione dei singoli bit componenti il prefisso ovvero l uso è piatto e non progressivo. Per il prefisso sono utilizzati numeri che in notazione decimale sono tra 1 e 65535 (2^15+2^14+ 2^2+2^1+2^0). Sono già stati assegnati oltre 48000 numeri per cui è stata standardizzata (RFC 4893) la notazione a 32 bit anche per questo prefisso. Analogamente alle classi di indirizzamento private usate per le reti, anche per i prefissi esistono quelli riservati ad uso privato (non assegnati in modo esclusivo, range 64512 65535). Figura 14.2 Un protocollo per lo scambio che garantisce dai loop 14.2 Quando usare BGP BGP non è l unico modo di comunicare informazioni di routing negli scenari rappresentati. 17

Esistono situazioni in cui possono essere adottate soluzioni più semplici. Ad esempio in figura è illustrata la situazione più frequente in ambito Soho (Small Office Home Office) in cui non è necessario usare BGP per completare la tabella di routing. Altre situazioni un cui non è opportuno usare BGP sono: 1) quando si ha un solo punto di contatto con internet; 2) quando non si ha possibilità di effettuare opportuno filtraggio di rotte da immettere in BGP; 3) quando non si hanno macchine con adeguata capacità di memoria e di calcolo; 4) quando non si dispone di banda per gestire un protocollo dinamico con il service-provider; 5) quando il servizio acquistato non prevede interconnessione dinamica con il service-provider. In tutte queste situazioni è opportuno far uso di rotte statiche o di default route. Figura 14.3 Quando non usare BGP User ip route 0.0.0.0 0.0.0.0 S0!router rip ISP network 172.16.0.0 172.16.0.0 A S0 S0 10.1.1.1 10.1.1.2 Running BGP AS 65000 NON USARE BGP quando non si ha possibilità di effettuare opportuno filtraggio di rotte; quando non si hanno macchine con adeguata capacità di memoria; quando non si dispone di banda per gestire un protocollo dinamico; quando il servizio acquistato non prevede interconnessione dinamica. Si deve usare BGP quando: 1) si amministra un AS di transito, come è il caso di un service provider; 18 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

2) un grande utente ha molte connessioni con l internet magari mediante collegamenti con diversi service provider e con diversa tipologia di SLA (Service level agreement e conseguentemente di prezzo) sono stati concordati; 3) le informazioni di rotte e destinazioni ricevute sono manipolate prima di essere ritrasmesse; 4) si dispone di personale esperto con sa valutare gli effetti e le conseguenze delle configurazioni messe in atto. Infatti le conseguenze di misconfigurazioni di questo protocollo hanno risonanza e effetti sull intero internet. Figura 14.4 Quando usare BGP Annuncio in Annuncio in Annuncio in Annuncio in Nuove rotte Filtro annunci in Selezione Rotte valide e migliori Tabella di routing Filtro annunci out Cap 14-fig 5 quando usare bgp Annuncio out Annuncio out Figura 14.5 Quando usare BGP Usare BGP quando: Le informazioni di rotte e destinazioni ricevute devono essere manipolate prima di essere ritrasmesse Si dispone di personale esperto 19

Gli errori di misconfigurazione commessi da carrier sono sanzionati in modo più o meno grave mediante l oscuramento delle rotte gestite dal carrier stesso con conseguente disservizio per gli utenti che attraverso quel carrier raggiungono l internet. Alcuni numeri caratterizzano l importanza ed il significato di queste configurazione e rendono evidente le attività di manipolazioni delle informazioni condotta con questo protocollo: - Numero degli AS assegnati 48000; - Numero di AS che annunciano un solo prefisso 13000; - Prefissi manipolati 350000. 14.3 Cosa comunicare con BGP Il protocollo trasmette informazioni sulle destinazioni raggiungibili attraverso il partner con cui avviene lo scambio. In uno scambio si può distinguere tra informazioni ricevute e informazioni trasmesse. La scelta delle informazioni da trasmettere e la scelta delle informazioni da accettare sono i due elementi più rilevanti del progetto di comunicazione tramite BGP. Lo scambio di informazioni è solitamente del tutto asimmetrico. Le informazioni ricevute dal partner sono contenute in un database e sono processate prima di essere utilizzate in tabella di routing. Le informazioni trasmesse al partner hanno varia origine (ricevute in altro scambio BGP, originate nella locale macchina per redistribuzione da un protocollo IGP) e sono opportunamente filtrate prima di essere trasmesse. Il contenuto di queste manipolazioni delle informazioni sono l essenza del protocollo insieme con i criteri con cui sono scelti i partner con si attuano gli scambi (neighbor). Figura 14.6 Cosa comunica BGP BGP B B AS 65000 C AS BGP 64520 A F AS 65500 BGP AS D 65250 E 20 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

Prescindendo dai contesti in cui avviene lo scambio (E o I BGP), si possono comunque precisare alcune informazioni che devono essere contenute nel messaggio: - rotta di destinazione ovvero indirizzo del destinatario nel piano di indirizzamento mondiale (indirizzo IP pubblico del destinatario e AS si appartenenza). BGP manipola informazioni del piano di indirizzamento mondiale perciò le destinazioni sono qui rappresentate in modo sommario e non di dettaglio. In questo modo si riesce a contenere il numero di destinazioni da conoscere senza peraltro inficiare la precisione; - next-hop ovvero indirizzo della macchina a cui affidare il traffico nel percorso verso la destinazione finale. Il next hop è un indirizzo che deve essere raggiungibile dalla macchina che sta indirizzando il traffico ovvero deve essere presente nella tabella di routing della macchina una indicazione esplicita (rotta) di come raggiungere il prossimo step intermedio verso il target descritto nell annuncio di BGP; - la sequenza degli AS finora attraversati dall annuncio. Questo dato è cruciale per poter garantire che gli scambi avvengano senza che si generino loop; - origine per precisare se una rotta e stata ricevuta da uno scambio precedento o se è stata aggiunta al flusso BGP da questo neighbor. La presenza e la consistenza di questi parametri (detti attributi) è controllata nella catena di eventi che costituiscono la trasmissione e prima di rendere disponibili le informazioni scambiate tra neighbor per successive elaborazioni. Il controlli sono bloccanti: 1) il primo controllo è la presenza di tutti questi dati nella informazione da trasmettere; 2) un controllo puntuale su ciascuna destinazione che si intende comunicare al neighbor è la presenza in tabella di routing (del destinatario) di una rotta per raggiungere il next hop contenuto nell annuncio BGP. La raggiungibilità piò essere espressa da una rotta esplicita in tabella di routing oppure essere ricavata attraverso la combinazione di informazioni contenute su più righe della tabella (recursive lookup). L importanza della raggiungere il next-hop è essenziale affinché l eventuale traffico nel data plane, che volesse essere instradato seguendo le informazioni scambiate da BGP, possa raggiungere la destinazione (controllo di black-hole). Le rotte che non sono conformi alle regole sono considerate invalide e non sono accettate. 21

3) l informazione sulla sequenza di AS attraversati è determinante per evitare l insorgenza di loop negli scambi di control plane. Questo parametro è esaminato quando una informazione è ricevuta da un neighbor. Se nella lista è già presente AS cui il router appartiene la rotta è considerata invalida e non è né trasmessa né considerata; 4) il controllo sull origine è effettuato in corrispondenza degli scambi i-bgp. Altri controlli sono effettuati in relazione al contesto in cui si sta operando e sono specificati nel seguito della trattazione. Altri parametri (attributi) possono accompagnare le informazioni per consentire una vasta scelta di criteri con cui preferire i percorsi ridondati verso lo stresso target. 14.4 Con chi si comunica in BGP Contrariamente a quanto accade nei protocolli IGP, ma coerentemente con il contesto generale già presentato, la scelta dei neighbor con cui avviare scambi di informazioni non è automatica ma rigorosamente manuale ed è uno dei maggiori aspetti delle scelte condotte da BGP. Distinguendo due scenari di riferimento diversi e distinti si riesce a caratterizzare la tipologia di scambi da eseguire. 14.4.1 Scenario di comunicazione tra ISP Gli operatori scambiano rotte e destinazioni raggiungibili attraverso le proprie reti. Informano cioè altri operatori degli end user serviti sono perciò aree di transito nei percorsi end-to-end. Offrono, inoltre ai propri clienti i servizi di raggiungere tutte le destinazioni nell internet. Per amministrare questi servizi non è necessario anzi è deleterio informare gli altri ISP (Internet Service Provider) di composizione e percorsi delle proprie reti. Gli ISP hanno ricavi sia per il traffico generato dai propri clienti sia per il traffico recapitato agli stessi. 22 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

Ad esempio il service provider che ospita il sito di Google frequentato da milioni di utenti dovrà rendere disponibile una infrastruttura di adeguata capacità. Questo operatore richiederà pertanto il pagamento di un onere per collegare a se altri operatori attraverso cui pervengono le richieste al sito Google. Le interconnessioni tra operatori avvengono spesso in locali comuni all uopo predisposti con servizi di misurazione del traffico e di housing di apparati, continuità elettrica, condizionamento. Questi locali sono gli spazi dove le reti degli operatori entrano in contatto. Nella pratica sono utilizzati due tipi di interconnessioni: cli7 cli5 cli4 cli9 PE PE bgp as1234 cli8 P bgp cli3 as4321 as1243 connessioni di operatori a nodi di interconnessione Mix, Namex dove gli scambi di informazioni di routing sono paritetiche (senza tariffe di accesso); bgp connessione diretta a carrier (a pagamento). P bgp PE P cli2 P P bgp cli1 P as3421 Scambi tra isp Sono comunicate le destinazioni dei clienti e non quelle delle reti isp Figura 14.7 Scambio di informaioni di routing tra ISP sono annunciate le rotte dei clienti e non le rotte interne Nei nodi di interconnessione avvengono gli scambi di informazioni circa le destinazioni raggiunte dai diversi operatori. Le informazioni sono trasportate e distribuite all interno delle reti di ciascun operatore. In funzione delle informazioni acquisite gli ISP indirizzano il traffico generato dei clienti. È bene notare che il Service Provider tende a non propagare le informazioni 23

delle destinazioni intermedie all interno della sue reti. In questo modo infatti ogni ISP mantiene autonomia ed indipendenza per la scelta dei percorsi all interno del suo AS. Sarà così possibile che ogni ISP possa applicare tariffe differenziate in funzione degli accordi economici e di SLA raggiunti. In definitiva Il service provider annuncia le reti dei suoi clienti e non le reti interne al suo backbone. 14.4.2 Scenario di comunicazione tra un large end-user con uno o più ISP Uno scenario molto differente è quello di comunicazione tra un end-user collegato a più service provider che offrono con servizi diversi. In questo caso di parla di un AS multihomed. Figura 14.8 AS multihomed le rotte da AS1, AS3 sono ricevute filtrate e non ritrasmesse AS1 Annuncio in Annuncio in 200.0.0.0/18 0.0.0.0 201.0.00/19 Filtro annunci in AS2 Selezione Rotte valide e migliori Tabella di routing Filtro annunci out AS3 Annuncio out Le rotte ricevute da AS1,AS3 sono ricevute filtrate e non ritrasmesse. Le rotte sono manipolate ed introdotte in IGP di AS2 In questo scenario la comunicazione di BGP ha alcuni obiettivi: 1) primo obiettivo quello di evitare di rendere il proprio AS una area di transito. Con riferimento allo schema in figura 14.8, in cui un grande cliente gestisce l AS2 ed è collegato con AS1 ed AS3 medianti due connessioni distinte, con un costo per l utilizzo e service level agreement diversi. 24 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

Negli annunci ricevuti da AS1 è presente la rotta di default che deve essere propagata all interno di AS2 per fornire a tutte le utenze interne la rotta verso l internet. L obiettivo del progetto di comunicazione è quindi quello di instradare verso AS1 tutto il traffico verso l internet. Il collegamento con AS3 è stato invece acquisito e deve essere riservato alla comunicazione tra le sedi. Questa politica genera una sequenza di decisioni di instradamento e di configurazione di apparati che attuano questi processi (si pensi solo ai processi nat da attuare per il solo traffico verso internet). Nella configurazione degli annunci verso AS3, erroneamente l annuncio di rotta di default non è rimosso. Gli utenti di AS2 hanno quindi due possibili destinazioni di default ma anche gli utenti di AS3 scoprono una rotta di default che attraversa AS2e raggiunge AS1. L end user è penalizzato sia perché il collegamento con as3 è utilizzato in senso inverso a quello per cui è stato predisposto sia perché il collegamento con AS1 risulterà molto carico per effetto del traffico generato dai clienti di AS3 e riversato in AS2. 2) Il secondo aspetto caratteristico di questo scenario è il diverso ruolo dei filtri sui messaggi in ed out. Infatti gli annunci di rotte di AS1ed AS3 verso AS2 saranno ricevuti ma non ritrasmessi. Sarà adottata una opportuna politica di selezione per le rotte annunciate dai due carrier per realizzare la ripartizione del traffico generato in AS2 verso AS1 ed AS3. Negli annunci di AS2 verso AS1 ed AS3 saranno presenti solo le rotte effettivamente terminate all interno di AS2. 3) Le rotte apprese da AS1, e AS3 rappresentano il complessivo internet. Si tratta quindi di una gran mole di annunci. Pur opportunamente limitati questi annunci sono gestibili dal protocollo BGP. Gli annunci non possono invece riversati nelle tabelle di routing dei protocolli IGP. Questo aspetto è molto importante ed ha valenza più generale riguardando lo scambio di informazioni tra protocolli di routing diversi. Pertanto, alle interazioni di scambio di informazioni tra protocolli di routing è dedicato un capitolo ad hoc. 25

Qui invece è importante notare che un approccio generale da seguire negli scambi di BGP con i protocolli Igp è quello di redistribuire al protocollo IGP solo la scelta di quando inoltrare verso AS3 e quando inoltrare verso AS1 lasciando alle macchine di interfaccia il compito di gestire le tabelle complessive di routing. Un buon criterio è quello di ridistribuire delle rotte di default con metriche condizionate in modo da dare preminenza al percorso attraverso AS1 lasciando AS3 come percorso di riserva per certe rotte e viceversa per altre. Nell esempio che segue le rotte dispari sono indirizzate verso AS1 lasciando AS3 come percorso per le rotte dispari. Figura 14.9 Sommarizzazioni e redistribuzione da BGP ad OSPF efetto nel data plane AS1 Rotte pari secondaria Rotte dispari-primaria BGP redistribute AS2 Control -PLANE OSPF redistribute BGP AS3 0.0.0.0 traffico da terminare Tabella di Routing DATA-PLANE Rotte pari primaria Rotte dispari secondaria 14.5 E-bgp ed I-bgp Pur essendo lo stesso il protocollo si è soliti distinguere due contesti differenti: - l applicazione di BGP per scambio tra due o più Autonomous System è denominata EBGP dove E sta per Exetermal, - l applicazione di BGP per lo scambio all interno dello stesso autonomous system è denominata IBGP dove I sta per Internal. Pur essendo lo stesso protocollo la differenza di contesti di applicazione dà luogo a scelte di default per l utilizzo del protocollo che a loro volta hanno profonda implicazione nelle caratteristiche e nel funzionamento del protocollo stesso. 26 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

Lo scenario di riferimento per E-Bgp è l assenza di un protocollo di routing dinamico tra le macchine che intendono effettuare scambi mentre per I-Bgp si suppone presente tra esse un protocollo dinamico. Questi due diversi scenari producono a loro volta molte implicazioni: le informazioni apprese da uno scambio I-BGP non sono trasmesse in altri scambi I-BGP. (regola della sincronizzazione); in scambi I-BGP gli attributi ed in particolare il next-hop, non sono cambiati; il next-hop è cambiato automaticamente negli scambi E-BGP; la sequenza degli AS attraversati dalla rotta non è modificata nello scambio I-BGP; quando avviene un nuovo scambio E-BGP il AS path si arricchisce del l ultimo AS attraversato. 14.6 Terminologia BGP e riferimenti RFC Internal ed External BGP: sessioni di scambio all interno o all esterno di un AS. Neighbor: i partner con cui sono scambiate le informazioni di routing. Contrariamente ai protocolli IGP in questa situazione nessun automatismo è ragionevole nella scelta dei partners della comunicazione. Essi pertanto saranno configurati manualmente. Si specifica talvolta neighbor interni e esterni riferendosi ad internal o esternal BGP. Attributi: parametri che accompagnano le informazioni di rotte trasmesse, sono classificati per gruppi in obbligatori e opzionali; Path vector: uno degli attributi più importanti che accompagnano le informazioni di rotte. È l elenco degli AS che la destinazione ha attraversato in scambi successivi; NLRI: Network Layer Reachability Information: le destinazioni conosciute espresse in termini di indirizzo IP del target. Nel presente capitolo NLRI equivale all indirizzo IP dei target conosciuti. In generale il concetto è più ampio e possono essere descritti instradamenti che prescindono dall indirizzo di destinazione ed aggregano tipologie diverse di traffico (real-time, non real-time, classi di servizio, Sla ). Sincronizzazione: una destinazione è valida se e solo se esiste nella tabella di routing un next-hop valido per la destinazione annunciata o ricevuta. 27

I riferimenti RFC in cui è descritto il protocollo sono: RFC 3392, Capabilities Advertisement with BGP-4; RFC 3065, Autonomous System Confederations for BGP; RFC 2918, Route Refresh Capability for BGP-4; RFC 2796, BGP Route Reflection - An Alternative to Full Mesh IBGP; RFC 1965, (obsoleta) - Autonomous System Confederations for BGP; RFC 1772, Application of the Border Gateway Protocol in the Internet; RFC 1771, A Border Gateway Protocol 4 (BGP-4); RFC 1657, Definitions of Managed Objects for the Fourth Version of the Border Gateway Protocol (BGP-4) using SMIv2; RFC 1655, (obsoleta) - Application of the Border Gateway Protocol in the Internet; RFC 1654, (obsoleta) - A Border Gateway Protocol 4 (BGP-4); RFC 1105, (obsoleta) - Border Gateway Protocol (BGP). 14.7 Come funziona il protocollo Il protocollo pur avendo il compito di trasmettere informazioni di routing è molto diverso dai protocolli di routing IGP. I membri con cui è instaurata la conversazione sono accuratamente scelti e non semiautomatici (non è stato ritenuto utile un protocollo simile ad HELLO per BGP). Le informazioni sono filtrate prima di essere trasmesse. Le informazioni sono controllate prima di essere dichiarate valide. Alcuni meccanismi dei protocolli IGP sono stati mantenuti: annunci affidabili; calcolo di metrica simile a distance vector. Un gran numero di informazioni accompagnano le rotte e rendono il processo di selezione molto più articolato e ricco. Nei paragrafi che seguono ciascuno di questi temi è esaminato nel dettaglio. 14.7.1 I neighbor Innanzitutto i partecipanti alle comunicazioni sono esplicitamente selezionati non tra i router di next-hop come negli IGP ma tra macchine raggiungibili nell internet. 28 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

Si distinguono i collegamenti interni allo stesso AS (IBGP peer) e quelli tra AS (EBGP PEERS). La raggiungibilità tra due neighbor all interno di uno stesso AS è, nella maggior parte dei casi, garantita dalla presenza di un protocollo di routing interno (IGP). Scopo del protocollo IGP è quello di rendere ogni nodo accessibile a tutti gli altri e tutte le destinazioni a tutti i membri della rete. Molto diverso è lo scenario della raggiungibilità e degli scambi in internet. Quando invece la raggiungibilità deve essere garantita tra due macchine appartenenti a differenti AS non è pensabile che ci sia un protocollo automatico di instradamento che renda le due macchine comunque raggiungibili: Questa differenza si traduce nell affermazione pratica che i due neighbor di una sessione di external bgp devono essere direttamente connessi mentre quelli di una sessione internal non lo saranno, sempre che sia disponibile un protocollo di routing interno che definisca le rotte per la raggiungibilità reciproca. Figura 14.10 Sessione BGP tra due loopback per sfruttare la ridondanza dei circuiti fisici L uso di questa definizione deve essere spesso conciliata con altre esigenze. In figura è rappresentata una sessione External BGP in cui la relazione di neighbor è creata tra interfacce loopback per utilizzare al meglio la ridondanza di collegamenti. Le interfacce di loopback non sono direttamente raggiungibili. Sono perciò necessarie istruzioni di instradamento ulteriori. In figura sono aggiunte rotte statiche. 29