24
Q U A D E R N I 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

PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

Q U A D E R N I 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 RETIDI COMPUTERVOLUME III

ROUTING BGPPer la preparazione agli esami CCNP,CCIE-R&S e CCIE-SP

diENRICO CIPOLLONEFRANCESCO CIPOLLONE

VOLUME_3.book Page 1 Monday, April 2, 2012 9:30 AM

Page 2: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

5

PIANO DELL’OPERA

VOLUME I - FONDAMENTI DI SWITCHING

PARTE PRIMANATURA E CARATTERISTICHE DELLE INFORMAZIONI

TRASPORTATE IN RETE

CAP. 1 Natura e caratteristiche delle informazioni trasportate da reti TCP-IP

PARTE SECONDASWITCHING

CAP. 2 Ethernet e altri modelli di distribuzione in area locale

CAP. 3 Virtualizzazione e gestione della congestione e tecniche di ridondanza in reti LAN

CAP. 4 Servizi e sicurezza in reti LAN. Sicurezza nelle reti Ethernet

PARTE TERZALE RETI CONDIVISE DEGLI ISP: NATURA E COMPOSIZIONE DEI SERVIZI

CAP. 5 Soluzioni e tecnologie per l’estensione WAN di reti TCP-IP

PARTE QUARTASTRUTTURA, CONFIGURAZIONE, GESTIONE DI MACCHINE DI RETE

CAP. 6 Accesso e configurazione di macchine intermedie in reti TCP-IP

CAP. 7 Network management configurazione di SNMP, NTP, SYSLOG in apparati di reti TCP-IP

VOLUME II - ROUTING BASE

PARTE QUINTAROUTING

CAP. 8 Tecnica di indirizzamento nelle reti TCP-IP

VOLUME_3.book Page 5 Monday, April 2, 2012 9:30 AM

Page 3: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

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 SESTACONTROL-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 Domini di indirizzamento pubblico e privato e relative traslazioni

CAP. 17 Completamento del control-plane in ambiente complesso: redistribuzione di informazioni tra protocolli di routing

PARTE OTTAVACOMUNICAZIONE SICURA PPTP, IPSEC, TUNNELING, VPN

CAP. 18 Comunicazione Sicura: IPSEC ed altri schemi

VOLUME_3.book Page 6 Monday, April 2, 2012 9:30 AM

Page 4: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

7

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

INDICE GENERALE

PIANO DELL’OPERA ...................................................................... 5

PARTE SESTACONTROL-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-usercon 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

VOLUME_3.book Page 7 Monday, April 2, 2012 9:30 AM

Page 5: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

8 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

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

VOLUME_3.book Page 8 Monday, April 2, 2012 9:30 AM

Page 6: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

9

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

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

VOLUME_3TOC.fm Page 9 Monday, April 2, 2012 9:45 AM

Page 7: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

10 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

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

VOLUME_3.book Page 10 Monday, April 2, 2012 9:30 AM

Page 8: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

11

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

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

VOLUME_3.book Page 11 Monday, April 2, 2012 9:30 AM

Page 9: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

PARTE SESTA

CONTROL-PLANE:INTERAZIONE DEI CLIENTI

CON ISP E SCAMBI DI INFORMAZIONI TRA ISP

VOLUME_3.book Page 13 Monday, April 2, 2012 9:30 AM

Page 10: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

15

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

CAPITOLO 14

BORDER GATEWAY PROTOCOL

SEZIONE PRIMA: Fenomenologia

14.1 Protocollo per comunicazioni EGP

Il protocollo BGP è utilizzato prevalentemente ma non esclusivamente per loscambio di informazioni di routing tra Autonomous-systems ovvero tra diversiresponsabili di aree dell’internet.

È cioè il programma con cui ciascun grande utente o service provider completail control plane del suo piano di indirizzamento descrivendo i percorsi esternial suo AS attraverso cui raggiungere tutte le destinazioni dell’internet.

Nel control plane le destinazioni sono descritte in termini di indirizzi ip dei tar-get con prefisso l’autonomous system di appartenenza.

Le destinazioni sono specificate in modo sommarizzato per contenere il loro

Figura 14.1Il protocollo per gli scambi di informazioni di routing tra Amministrazioni

VOLUME_3.book Page 15 Monday, April 2, 2012 9:30 AM

Page 11: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

16 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

numero che comunque raggiunge le molte centinaia di migliaia.

Le informazioni di destinazione sono accompagnate da una serie di altri para-metri detti correntemente attributi.

Su tali attributi possono essere effettuate molte diverse operazioni di manipo-lazione per consentire all’amministratore la più ampia scelta tra possibili per-corsi verso i target.

In conformità alle informazioni del control plane fa seguito il traffico del dataplane.

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 desti-nazioni.

Pertanto il protocollo BGP è spesso definito come strumento per le politichedi instradamento ovvero della regolazione dei rapporti economici tra opera-tori.

Due garanzia importanti sono offerte per le destinazioni annunciate da questoprotocollo:

di raggiungibilità;

di assenza di loop.

Il protocollo effettua infatti alcuni controlli preliminari prima di trasmettere ledestinazioni.

Il protocollo controlla l’esistenza nella tabella di routing di una riga per la desti-nazione che si va ad annunciare.

Il traffico conseguente a questo annuncio troverà così una destinazione cuiessere inoltrato.Questo meccanismo innesca a sua volta delle protezioni assunte automatica-mente dal protocollo (sincronizzazione).L’assenza di loop è invece garantita controllando che nella sequenza degliautonoumous system attraversata dagli annunci di una destinazione non siapresente 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 ammi-nistrativo.

Gli autonomous-system number possono essere considerati alla stregua dei

VOLUME_3.book Page 16 Monday, April 2, 2012 9:30 AM

Page 12: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

17

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

prefissi telefonici internazionali che si prepongono ai piani di numerazionenazionale per rendere univoci i piani telefonici di ciascuna nazione su scalamondiale (volendo individuare un autonomous-system in telefonia questo puòcoincidere con gli stati).

Il rilascio dei numeri degli autonomous system è effettuato da IANA su scalamondiale attraverso gli uffici regionali.

Il prefisso autonomous system è un indirizzo a 16 bit.

A differenza dell’indirizzamento IP, non è prevista nessuna manipolazione deisingoli bit componenti il prefisso ovvero l’uso è piatto e non progressivo.

Per il prefisso sono utilizzati numeri che in notazione decimale sono tra 1 e65535 (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 peri prefissi esistono quelli riservati ad uso privato (non assegnati in modo esclu-sivo, range 64512 – 65535).

14.2 Quando usare BGP

BGP non è l’unico modo di comunicare informazioni di routing negli scenarirappresentati.

Figura 14.2Un protocollo per lo scambio che garantisce dai loop

VOLUME_3.book Page 17 Monday, April 2, 2012 9:30 AM

Page 13: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

18 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

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 completarela 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 daimmettere in BGP;

3) quando non si hanno macchine con adeguata capacità di memoria e dicalcolo;

4) quando non si dispone di banda per gestire un protocollo dinamico con ilservice-provider;

5) quando il servizio acquistato non prevede interconnessione dinamica conil service-provider.

In tutte queste situazioni è opportuno far uso di rotte statiche o di default rou-te.

Si deve usare BGP quando:

1) si amministra un AS di transito, come è il caso di un service provider;

User

ISP

User

ip route 0.0.0.0 0.0.0.0 S0

! t i ISP

Running BGP

!router rip

network 172.16.0.0

A

S0S0

A AS 6500010.1.1.1

10.1.1.2172.16.0.0

NON USARE BGP

quando non si ha possibilità di effettuare opportuno filtraggio di rotte;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;q p p g p ;

quando il servizio acquistato non prevede interconnessione dinamica.

Figura 14.3Quando non

usare BGP

VOLUME_3.book Page 18 Monday, April 2, 2012 9:30 AM

Page 14: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

19

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

2) un grande utente ha molte connessioni con l’internet magari mediante col-legamenti con diversi service provider e con diversa tipologia di SLA (Ser-vice level agreement e conseguentemente di prezzo) sono staticoncordati;

3) le informazioni di rotte e destinazioni ricevute sono manipolate prima diessere ritrasmesse;

4) si dispone di personale esperto con sa valutare gli effetti e le conseguenzedelle configurazioni messe in atto. Infatti le conseguenze di misconfigura-zioni di questo protocollo hanno risonanza e effetti sull’intero internet.

Figura 14.4Quando usare BGP

Cap 14-fig 5 quando usare bgp

Annuncio in

Annuncio in

Annuncio in

Annuncio in

Filt

ro a

nnu

nci

ou

t

Annuncio out

Annuncio out

Nuove

rotte

Selezione

Rotte valide

e migliori

Tabella di

routing

Usare BGP quando:

Le informazioni di rotte e destinazioni ricevute devono essere manipolate prima di essere ritrasmesse

Si dispone di personale esperto

Filtro annunci in

Figura 14.5Quando usare BGP

VOLUME_3.book Page 19 Monday, April 2, 2012 9:30 AM

Page 15: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

20 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

Gli errori di misconfigurazione commessi da carrier sono sanzionati in modo più omeno grave mediante l’oscuramento delle rotte gestite dal carrier stesso con conse-guente disservizio per gli utenti che attraverso quel carrier raggiungono l’internet.

Alcuni numeri caratterizzano l’importanza ed il significato di queste configu-razione e rendono evidente le attività di manipolazioni delle informazioni con-dotta 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 ilpartner 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 accet-tare 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 pro-cessate prima di essere utilizzate in tabella di routing.

Le informazioni trasmesse al partner hanno varia origine (ricevute in altroscambio BGP, originate nella locale macchina per redistribuzione da un proto-collo IGP) e sono opportunamente filtrate prima di essere trasmesse.

Il contenuto di queste manipolazioni delle informazioni sono l’essenza del protocolloinsieme con i criteri con cui sono scelti i partner con si attuano gli scambi (neighbor).

AS65000B C

BGP B65000B C

ASBGPAS AS65500

BGPAS64520 A F

BGP ASED 65250 ED

Figura 14.6Cosa comunica

BGP

VOLUME_3.book Page 20 Monday, April 2, 2012 9:30 AM

Page 16: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

21

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

Prescindendo dai contesti in cui avviene lo scambio (E o I –BGP), si possonocomunque precisare alcune informazioni che devono essere contenute nelmessaggio:

- rotta di destinazione ovvero indirizzo del destinatario nel piano di indiriz-zamento mondiale (indirizzo IP pubblico del destinatario e AS si apparte-nenza). BGP manipola informazioni del piano di indirizzamento mondialeperciò le destinazioni sono qui rappresentate in modo sommario e non didettaglio. In questo modo si riesce a contenere il numero di destinazioni daconoscere senza peraltro inficiare la precisione;

- next-hop ovvero indirizzo della macchina a cui affidare il traffico nel per-corso verso la destinazione finale. Il next hop è un indirizzo che deve essereraggiungibile dalla macchina che sta indirizzando il traffico ovvero deveessere presente nella tabella di routing della macchina una indicazioneesplicita (rotta) di come raggiungere il prossimo step intermedio verso il tar-get descritto nell’annuncio di BGP;

- la sequenza degli AS finora attraversati dall’annuncio. Questo dato è crucia-le per poter garantire che gli scambi avvengano senza che si generino loop;

- origine per precisare se una rotta e stata ricevuta da uno scambio prece-dento o se è stata aggiunta al flusso BGP da questo neighbor.

La presenza e la consistenza di questi parametri (detti attributi) è controllatanella catena di eventi che costituiscono la trasmissione e prima di renderedisponibili 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 tra-smettere;

2) un controllo puntuale su ciascuna destinazione che si intende comunicareal neighbor è la presenza in tabella di routing (del destinatario) di una rottaper raggiungere il next hop contenuto nell’annuncio BGP.La raggiungibilità piò essere espressa da una rotta esplicita in tabella dirouting oppure essere ricavata attraverso la combinazione di informazionicontenute su più righe della tabella (recursive lookup).L’importanza della raggiungere il next-hop è essenziale affinché l’eventualetraffico nel data plane, che volesse essere instradato seguendo le informa-zioni scambiate da BGP, possa raggiungere la destinazione (controllo diblack-hole).Le rotte che non sono conformi alle regole sono considerate invalide e nonsono accettate.

VOLUME_3.book Page 21 Monday, April 2, 2012 9:30 AM

Page 17: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

22 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

3) l’informazione sulla sequenza di AS attraversati è determinante per evitarel’insorgenza di loop negli scambi di control plane.Questo parametro è esaminato quando una informazione è ricevuta da unneighbor. 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 esono specificati nel seguito della trattazione.

Altri parametri (attributi) possono accompagnare le informazioni per consen-tire una vasta scelta di criteri con cui preferire i percorsi ridondati verso lo stres-so target.

14.4 Con chi si comunica in BGP

Contrariamente a quanto accade nei protocolli IGP, ma coerentemente con ilcontesto generale già presentato, la scelta dei neighbor con cui avviare scambidi informazioni non è automatica ma rigorosamente manuale ed è uno deimaggiori aspetti delle scelte condotte da BGP.

Distinguendo due scenari di riferimento diversi e distinti si riesce a caratteriz-zare la tipologia di scambi da eseguire.

14.4.1 Scenario di comunicazione tra ISP

Gli operatori scambiano rotte e destinazioni raggiungibili attraverso le propriereti.

Informano cioè altri operatori degli end user serviti sono perciò aree di tran-sito nei percorsi end-to-end.

Offrono, inoltre ai propri clienti i servizi di raggiungere tutte le destinazioninell’internet.

Per amministrare questi servizi non è necessario anzi è deleterio informare glialtri 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 traf-fico recapitato agli stessi.

VOLUME_3.book Page 22 Monday, April 2, 2012 9:30 AM

Page 18: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

23

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

Ad esempio il service provider che ospita il sito di Google frequentato da milio-ni di utenti dovrà rendere disponibile una infrastruttura di adeguata capacità.

Questo operatore richiederà pertanto il pagamento di un onere per collegarea se altri operatori attraverso cui pervengono le richieste al sito Google.

Le interconnessioni tra operatori avvengono spesso in locali comuni all’uopopredisposti 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:

connessioni di operatori a nodi di interconnessione Mix, Namex dove gliscambi di informazioni di routing sono paritetiche (senza tariffe di accesso);

connessione diretta a carrier (a pagamento).

Nei nodi di interconnessione avvengono gli scambi di informazioni circa ledestinazioni raggiunte dai diversi operatori.

Le informazioni sono trasportate e distribuite all’interno delle reti di ciascunoperatore.

In funzione delle informazioni acquisite gli ISP indirizzano il traffico generatodei clienti.

È bene notare che il Service Provider tende a non propagare le informazioni

as1234

as4321

as1243

as3421

bgp

bgp

bgpbgp

bgp

cli1

cli2cli3

cli4

cli5

cli7

cli9 cli8

P

P

P

P

P

P

PE

PE

PE

Scambi tra ispSono comunicate le

destinazioni dei clienti e non

quelle delle reti isp Figura 14.7Scambio di informaioni di routing tra ISP sono annunciate le rotte dei clienti e non le rotte interne

VOLUME_3.book Page 23 Monday, April 2, 2012 9:30 AM

Page 19: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

24 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

delle destinazioni intermedie all’interno della sue reti.

In questo modo infatti ogni ISP mantiene autonomia ed indipendenza per lascelta dei percorsi all’interno del suo AS.

Sarà così possibile che ogni ISP possa applicare tariffe differenziate in funzio-ne degli accordi economici e di SLA raggiunti.

In definitiva Il service provider annuncia le reti dei suoi clienti e non le reti inter-ne al suo backbone.

14.4.2 Scenario di comunicazione tra un large end-usercon uno o più ISP

Uno scenario molto differente è quello di comunicazione tra un end-user colle-gato a più service provider che offrono con servizi diversi.

In questo caso di parla di un AS multihomed.

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 gestiscel’AS2 ed è collegato con AS1 ed AS3 medianti due connessioni distinte, conun costo per l’utilizzo e service level agreement diversi.

Annuncio in

Annuncio in

200.0.0.0/18

0.0.0.0

Filt

ro a

nnu

nci o

ut

Annuncio out

201.0.0

0/19

SelezioneRotte

valide e migliori

Tabella di

routing

AS1

AS2

AS3

Le rotte ricevute da AS1,AS3 sono ricevute filtrate

e non ritrasmesse.

Le rotte sono manipolate ed introdotte in IGP di AS2

Filtro annunci in

Figura 14.8AS multihomedle rotte da AS1,

AS3 sonoricevute filtrate enon ritrasmesse

VOLUME_3.book Page 24 Monday, April 2, 2012 9:30 AM

Page 20: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

25

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

Negli annunci ricevuti da AS1 è presente la rotta di default che deve esserepropagata all’interno di AS2 per fornire a tutte le utenze interne la rottaverso l’internet.

L’obiettivo del progetto di comunicazione è quindi quello di instradare versoAS1 tutto il traffico verso l’internet.

Il collegamento con AS3 è stato invece acquisito e deve essere riservato allacomunicazione tra le sedi.

Questa politica genera una sequenza di decisioni di instradamento e diconfigurazione di apparati che attuano questi processi (si pensi solo ai pro-cessi nat da attuare per il solo traffico verso internet).

Nella configurazione degli annunci verso AS3, erroneamente l’annuncio dirotta di default non è rimosso.

Gli utenti di AS2 hanno quindi due possibili destinazioni di default ma anche gliutenti di AS3 scoprono una rotta di default che attraversa AS2e raggiunge AS1.

L’end user è penalizzato sia perché il collegamento con as3 è utilizzato insenso inverso a quello per cui è stato predisposto sia perché il collegamentocon AS1 risulterà molto carico per effetto del traffico generato dai clienti diAS3 e riversato in AS2.

2) Il secondo aspetto caratteristico di questo scenario è il diverso ruolo dei filtrisui messaggi in ed out.Infatti gli annunci di rotte di AS1ed AS3 verso AS2 saranno ricevuti ma nonritrasmessi.Sarà adottata una opportuna politica di selezione per le rotte annunciatedai due carrier per realizzare la ripartizione del traffico generato in AS2verso AS1 ed AS3.Negli annunci di AS2 verso AS1 ed AS3 saranno presenti solo le rotte effet-tivamente 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 protocolloBGP.Gli annunci non possono invece riversati nelle tabelle di routing dei proto-colli IGP.Questo aspetto è molto importante ed ha valenza più generale riguardan-do 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.

VOLUME_3.book Page 25 Monday, April 2, 2012 9:30 AM

Page 21: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

26 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

Qui invece è importante notare che un approccio generale da seguire negliscambi di BGP con i protocolli Igp è quello di redistribuire al protocollo IGPsolo la scelta di quando inoltrare verso AS3 e quando inoltrare verso AS1lasciando alle macchine di interfaccia il compito di gestire le tabelle com-plessive di routing.Un buon criterio è quello di ridistribuire delle rotte di default con metrichecondizionate in modo da dare preminenza al percorso attraverso AS1lasciando AS3 come percorso di riserva per certe rotte e viceversa per altre.Nell’esempio che segue le rotte dispari sono indirizzate verso AS1 lascian-do AS3 come percorso per le rotte dispari.

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 è de-nominata EBGP dove E sta per Exetermal,

- l’applicazione di BGP per lo scambio all’interno dello stesso autonomoussystem è 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 pro-fonda implicazione nelle caratteristiche e nel funzionamento del protocollostesso.

Rotte dispari-primaria

0.0.0.0

Rotte dispari secondaria

Rotte pari primaria

traffi

co d

a term

inar

e

Tabella di

Routing

AS1

AS2

AS3

Rotte pari secondaria

DATA-PLANE

BGPBGP

OSPF

redist

ribute redistribute

Control -PLANE

Figura 14.9Sommarizza-

zioni eredistribuzione

da BGP ad OSPFefetto nel data

plane

VOLUME_3.book Page 26 Monday, April 2, 2012 9:30 AM

Page 22: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

27

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

Lo scenario di riferimento per E-Bgp è l’assenza di un protocollo di routingdinamico tra le macchine che intendono effettuare scambi mentre per I-Bgp sisuppone 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 altriscambi I-BGP. (regola della sincronizzazione);

in scambi I-BGP gli attributi ed in particolare il next-hop, non sono cam-biati;

il next-hop è cambiato automaticamente negli scambi E-BGP;

la sequenza degli AS attraversati dalla rotta non è modificata nello scambioI-BGP;

quando avviene un nuovo scambio E-BGP il AS path si arricchisce dell’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 pertantosaranno configurati manualmente. Si specifica talvolta neighbor interni eesterni riferendosi ad internal o esternal BGP.

Attributi: parametri che accompagnano le informazioni di rotte tra-smesse, sono classificati per gruppi in obbligatori e opzionali;

Path vector: uno degli attributi più importanti che accompagnano le infor-mazioni di rotte. È l’elenco degli AS che la destinazione ha attraversatoin scambi successivi;

NLRI: Network Layer Reachability Information: le destinazioni conosciuteespresse in termini di indirizzo IP del target. Nel presente capitolo NLRIequivale all’indirizzo IP dei target conosciuti. In generale il concetto è piùampio e possono essere descritti instradamenti che prescindono dall’indi-rizzo 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 nellatabella di routing un next-hop valido per la destinazione annunciata oricevuta.

VOLUME_3.book Page 27 Monday, April 2, 2012 9:30 AM

Page 23: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

28 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III

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 theBorder Gateway Protocol (BGP-4) using SMIv2;

RFC 1655, (obsoleta) - Application of the Border Gateway Protocol in theInternet;

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 è mol-to diverso dai protocolli di routing IGP.

I membri con cui è instaurata la conversazione sono accuratamente scelti e nonsemiautomatici (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 processodi 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 selezionatinon tra i router di next-hop come negli IGP ma tra macchine raggiungibilinell’internet.

VOLUME_3.book Page 28 Monday, April 2, 2012 9:30 AM

Page 24: PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER · 6 PROGETTAZIONE E CONDUZIONE DI RETI DI COMPUTER - VOL. III CAP. 9 Principi di routing CAP. 10 RIP versione 1 e 2 CAP. 11 Il protocollo

29

Q U

A D

E R

N I

p e

r l

a p

r o

g e

t t a

z i

o n

e I C

T

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 mag-gior parte dei casi, garantita dalla presenza di un protocollo di routing interno(IGP). Scopo del protocollo IGP è quello di rendere ogni nodo accessibile a tuttigli altri e tutte le destinazioni a tutti i membri della rete. Molto diverso è lo sce-nario della raggiungibilità e degli scambi in internet.

Quando invece la raggiungibilità deve essere garantita tra due macchineappartenenti a differenti AS non è pensabile che ci sia un protocollo automa-tico di instradamento che renda le due macchine comunque raggiungibili:

Questa differenza si traduce nell’affermazione pratica che i due neighbor diuna sessione di external bgp devono essere direttamente connessi mentrequelli di una sessione internal non lo saranno, sempre che sia disponibile unprotocollo di routing interno che definisca le rotte per la raggiungibilità reci-proca.

L’uso di questa definizione deve essere spesso conciliata con altre esigenze. Infigura è rappresentata una sessione External BGP in cui la relazione di nei-ghbor è creata tra interfacce loopback per utilizzare al meglio la ridondanzadi collegamenti.

Le interfacce di loopback non sono direttamente raggiungibili. Sono perciònecessarie istruzioni di instradamento ulteriori. In figura sono aggiunte rottestatiche.

Figura 14.10Sessione BGPtra due loopback per sfruttare la ridondanza dei circuiti fisici

VOLUME_3.book Page 29 Monday, April 2, 2012 9:30 AM