Articles

BGP as a Service

Comprensione di BGP as a Service

La funzionalità BGP as a Service (BGPaaS) consente a una macchina virtuale guest (VM) di inserire route nella propria istanza virtual routingand forwarding (VRF) utilizzando BGP.

  • Scia di BGPaaS Caratteristiche

  • BGPaaS Casi d’Uso

Scia di BGPaaS Caratteristiche

Utilizzando BGPaaS con Scia di Rete richiede l’ospite VMto dispone di connettività per il nodo di controllo e di essere in grado di advertiseroutes in VRF istanza.

Con la funzione BGPaaS:

  • L’agente vRouter è in grado di accettare connessioni BGP dalle VM e di proxy al nodo di controllo.

  • L’agente vRouter seleziona sempre uno dei nodi di controllo che sta usando come server XMPP.

Contrail Networking fornisce funzionalità di esportazione percorso sessioni forBGPaaS. L’hop successivo per tutte le rotte pubblicizzate su tenantVM è impostato sull’indirizzo gateway predefinito della sottorete di tenantVM. Ciò consente all’implementazione BGP tenant di essere relativamente semplice, non richiedendo il supporto per la risoluzione ricorsiva del BGP next hop.

L’oggetto BGPaaS è associato a un’interfaccia macchina virtuale,non solo a una macchina virtuale (VM), che consente a una VM tenant di avere sessioni GP in più reti virtuali, se necessario.

BGPaaS in Contrail Networking ha le seguenti caratteristiche:

  • Per impostazione predefinita, tutte le sessioni BGPaaS sono configurate per avere scambio bidirezionale di rotte. La proprietà booleana bgpaas-suppress-route-advertisement non garantisce alcuna pubblicità delle rotte verso la VM tenant.

  • Se i percorsi inet6 vengono pubblicizzati alla VM tenant,vengono pubblicizzati con l’indirizzo gateway predefinito della sottorete IPv6 come BGP next hop. Una proprietà booleana, bgpaas-ipv4-mapped-ipv6-nexthop, fa sì che il gateway predefinito della sottorete IPv4, nel formato IPv6 mappato IPv4,venga utilizzato come hop successivo.

  • Se più VM tenant nella stessa rete virtuale hanno sessioni BGPAAS e usano eBGP, le regole standard BGP AS path loop preventionrules impediscono che i percorsi pubblicizzati da una VM tenant vengano pubblicizzati sulle altre VM tenant. Il campo as-override, aggiunto all’esistente BgpSessionAttributes nell’oggetto Bgpaas, fa sì che il nodo di controllo sostituisca il numero AS della VM tenant con il proprio numero AS, quando le rotte pubblicitarie apprendono da una VM tenant a un’altra VM tenant nella stessa rete virtuale.La VM tenant non ha bisogno di implementare alcuna nuova funzionalità.

La rete di Contrail fornisce il supporto per architetture ad alta disponibilità (HA), BGPaaS supporta la selezione della zona del nodo di controllo, con opzioni disponibili per configurare i peer della zona del nodo di controllo BGPaaS.

Questa funzionalità consente di impostare le zone nodo primario e secondario, che possono avere uno o più nodi di controllo. Thereason per questo è perché BGPaaS è spesso invocato per providerouting da e verso VNFs, che sono costituiti da diversi nodi acrossdifferent calcoli, e il VNFs di solito si basano su due coetanei BGP forHA. Queste caratteristiche zona nodo di controllo aumentano la robustezza e failovercapabilities per BGPaaS in Contrail.

I seguenti sono avvertimenti:

  • Le sessioni BGP devono utilizzare il trasporto IPv4.

  • Il VNF deve supportare RFC 2545, l’uso di estensioni BGP-4Multiprotocol per il routing inter-dominio IPv6,per trasportare percorsi IPv6 sul peer IPv4.

  • Solo le famiglie di indirizzi IPv4 (inet) e IPv6 (inet6) sono supportate.

Le seguenti funzionalità sono supportate nella configurazione di Contrail Networkingfor BGPaaS:

  • Global-System-Config ha un’opzione per aggiungere, modificare, ordelete nodo di controllo zone

  • Controllo-Nodo-Zona ha un’opzione per aggiungere, modificare, o deletecontrol nodi

  • nodo di Controllo ha un’opzione per aggiungere, modificare o eliminare acontrol nodo di zona e si può avere un solo nodo di controllo orario

  • BGPaaS ha un’opzione per aggiungere, modificare, o eliminare un primaryor secondaria nodo di controllo orario

  • Se il nodo di controllo di zona ha più di un controllo di un nodo, selectionof control-node for BGP Peering is random in a control node zone

  • Utilizzando un solo nodo di controllo in ogni zona, VNF può predittablyestablish bgp-peering a quel particolare nodo di controllo.

Casi d’uso BGPaaS

Questa sezione fornisce scenari di esempio per l’implementazione di BGPaaSwith Contrail.

  • Tunnel Dinamico di Inserimento all’Interno di un Inquilino di Sovrapposizione

  • Rete Dinamica di Raggiungibilità di Applicazioni

  • Liveness di Rilevamento per l’Alta Disponibilità,

Tunnel Dinamico di Inserimento all’Interno di un Inquilino di Sovrapposizione

le Varie applicazioni che hanno bisogno di inserire dinamica tunnel in virtualnetworks. Le funzioni di rete virtuale (VNFs) forniscono la funzione di terminazione del tunnel. I tipi di terminazione del tunnel variano tra i tipi di applicazione, come business VPN, mobility small site backhaul, VPC e simili. Il requisito chiave è che i tunnel devono inserire dinamicamentenuove informazioni sulla raggiungibilità della rete nella rete virtuale. I metodi predominanti di inserimento della raggiungibilità della rete di tunnel utilizzano BGP.

BGPaaS consente la migrazione di VNF brownfield in Contrail,preservando il comportamento dell’applicazione e il requisito per BGP, senza riscrivere l’applicazione.

La figura 1 mostra la necessità di inserire un tunnel dinamico in una rete virtuale.

Figura 1: Dinamica Tunnel di Inserimento

Tunnel Dinamico di Inserimento

Rete Dinamica di Raggiungibilità di Applicazioni

Il DNS (Domain Name System) è un’applicazione generalizzata di thatuses BGP come un meccanismo per ottimizzare la raggiungibilità dei servizi, basedon metriche quali il carico, di manutenzione, la disponibilità, e simili.Poiché i servizi DNS vengono migrati in ambienti utilizzando sovrapposizioni, è necessario un meccanismo per preservare il comportamento e i requisiti dell’applicazione esistenti, inclusa la possibilità di annunciare e ritirare la raggiungibilità all’applicazione disponibile.

Questo requisito non è limitato al DNS. Altre applicazioni, come virtualized evolved packet core (vEPC) e altre, utilizzano BGPas un meccanismo per la raggiungibilità della rete in base alla disponibilità e al carico.

Rilevamento di Liveness per alta disponibilità

Vari meccanismi keepalive per la raggiungibilità dei tenant sono stati forniti da componenti di rete come BGP, OSPF, PING, VRRP, BFD o meccanismi specifici dell’applicazione. Con BGP sull’agente vRouter, BGP può essere utilizzato per fornire un meccanismo di rilevamento della liveness tra il tenant sul nodo di calcolo locale e i servizi forniti dalla VM specifictenant.

Configurazione di BGPaaS utilizzando l’API VNC

Per configurare BGPaaS utilizzando le API VNC:

  1. Accedere al progetto predefinito.

    default_project = self._vnc_lib.project_read(fq_name=)

  2. Create a BGPaaS object.

    bgpaas_obj = BgpAsAService(name=‘bgpaas_1’,parent_obj=default_project)

  3. Attach the BGP object to a precreated virtual machineinterface.

    bgpaas_obj.add_virtual_machine_interface(vmi)

  4. Set the ASN. It must be an eBGP session.

    bgpaas_obj.set_autonomous_system('65000')

    If the ASN is not set, the primary instance IP will be chosen.

    bgpaas_obj.set_bgpaas_ip_address(u’10.1.1.5’)

  5. Set session attributes.

    bgp_addr_fams = AddressFamilies()
    bgp_sess_attrs = BgpSessionAttributes(address_families=bgp_addr_fams,hold_time=60)
    bgpaas_obj.set_bgpaas_session_attributes(bgp_sess_attrs)
    self._vnc_lib.bgp_as_a_service_create(bgpaas_obj)

Per eliminare un BGPaaS oggetto, seguire la data di codice:

fq_name=
bgpaas_obj = self._vnc_lib.bgp_as_a_service_read(fq_name=fq_name)
bgpaas_obj.del_virtual_machine_interface(vmi)
self._vnc_lib.bgp_as_a_service_update(bgpaas_obj)
self._vnc_lib.bgp_as_a_service_delete(id=bgpaas_obj.get_uuid())

Configurazione BGPaaS dalla Scia di interfaccia Web

Per configurare BGPaaS all’interno di un inquilino:

  1. Selezionare Configure > Servizi > BGP un Servizio Scia di Web User Interface (UI). Viene visualizzato il BGP come Servicepage.
  2. Fare clic sul pulsante + nella pagina BGPaaS. Viene visualizzata la pagina Crea BGP come servizio.Vedi Figura 2.
    Figura 2: Creare BGP come Servizio

    Creare BGP come Servizio
  3. Nel Creare BGPaaS pagina, compilare il fieldswith i seguenti valori per creare il vostro servizio.

    Campi

    Descrizione

    Nome

    Immettere un nome per il BGP servizio che Il nome può essere un uniquestring di non più di 15 caratteri che contiene alfanumerici charactersand trattino (-).

    Indirizzo IP

    Immettere l’indirizzo di origine IPv4 o IPv6 sulla VM BGPaaS.

    Interfaccia macchina virtuale

    Immettere l’indirizzo IP di un’interfaccia macchina virtuale.

    Famiglia di indirizzi

    Scegli inet o inet6 dall’elenco della famiglia di indirizzi in base alle tue esigenze.

    Autonomous System

    Enter AS number in the range 1- 65,534.

    Advanced Options

    Hold Time

    Enter the maximum time a BGP session remains active ifno Keepalives are received.

    Stato amministratore

    Selezionare la casella Stato amministratore per abilitare lo stato in alto e deselezionare la casella per disabilitare lo stato in BASSO.

  4. Fare clic su Salva per creare l’oggetto BGP.

Configurazione di BGPaaS dal comando Contrail

Per configurare BGPaaS all’interno di un tenant:

  1. Selezionare Servizi> BGPaaS. dall’interfaccia utente (UI) di ContrailCommand. Viene visualizzata la pagina BGPaaS.
  2. Fare clic sul pulsante Crea nella pagina BGPaaS. Viene visualizzata la pagina Crea BGPaaS. Vedere Figura 3.
    Figura 3: Crea BGPaaS

    Crea BGPaaS
  3. Nella pagina Crea BGPaaS, compilare i fieldswith i seguenti valori per creare l’oggetto BGP.

    Campi

    Descrizione

    Nome

    Immettere un nome per il BGP servizio. Il nome può essere un uniquestring di non più di 15 caratteri che contiene caratteri alfanumerici e trattino ( -).

    Interfaccia macchina virtuale

    Immettere l’indirizzo IP di un’interfaccia macchina virtuale.

    Famiglia di indirizzi

    Scegli inet o inet6 dall’elenco della famiglia di indirizzi in base alle tue esigenze.

    Sistema autonomo

    Immettere il numero del sistema autonomo (AS) nell’intervallo 1-65,535.

    Se si abilita 4 Byte ASN in Configurazione globale, è possibile immettere 4 byte COME numero nell’intervallo 1-4,294,967,295.

    Opzioni Avanzate

    Indirizzo IP

    Inserire l’indirizzo IPv4 o IPv6 sorgente-indirizzo BGPaaS VM.

    Shared

    Selezionare questa casella di controllo per collegare tutte le VVI all’oggetto commonbgp-router. Se questa casella non è selezionata, ogni macchina virtualel’interfaccia si collega individualmente al proprio oggetto bgp-router.

    Origine del percorso

    • Scegliere BGP dall’elenco se il percorso ha avuto origine sul router aBGP.

    • Scegliere EGP dall’elenco se il percorso ha avuto origine dalla sessione EGP (External Gateway Protocols).

    • Scegliere Incompleto dall’elenco se il livello di rete ReachabilityInformation (NLRI) viene appreso attraverso metodi come la ridistribuzione delle rotte in BGP e non attraverso BGP.

    Sostituzione origine percorso

    Selezionare questa casella di controllo per sostituire l’attributo di origine dell’origine percorso pubblicizzato in Incompleto.

    Controllo dello stato del servizio

    Selezionare qualsiasi oggetto di controllo dello stato del servizio dall’elenco in base alle proprie esigenze.

    Tempo di attesa

    Inserisci il tempo massimo in cui una sessione BGP rimane attiva se non vengono ricevuti Keepalives.

    Loop Count

    Inserisci il numero di volte in cui lo stesso ASN può essere visto ina route-update. Il percorso viene scartato quando viene superato il conteggio del ciclo.

    ASN locale

    Immettere il numero del sistema autonomo (AS) nell’intervallo 1-65,535.

    Se si abilita 4 Byte ASN in Configurazione globale, è possibile immettere 4 byte COME numero nell’intervallo 1-4,294,967,295.

    AS Override

    Selezionare questa casella di controllo per sostituire il numero AS del nodo di controllo con il numero AS della VM tenant.

    Usa IPv6 mappato IPv4 Nexthop

    Selezionare questa casella di controllo per utilizzare il formato IPv6 mappato IPv4 come hop successivo al gateway predefinito della sottorete IPv4.

    Sopprime la pubblicità di Route

    Selezionare questa casella di controllo per impedire la pubblicità di routesto tenant VM.

    Primary Control Node Zone

    È possibile scegliere il nodo di controllo con cui il BGPaaSVM può eseguire una sessione BGP.

    Zona nodo di controllo secondario

    È possibile scegliere il nodo di controllo con cui il BGPaaSVM può eseguire una sessione BGP.

  4. Fare clic sul pulsante Crea per creare l’oggetto BGP.