SDA cisco: overview protocols

Home » Blog » SDN » SDA Software Defined Access » SDA cisco: overview protocols

SDA cisco: overview protocols

16.02 2024 | by massimiliano

La tecnologia Cisco SDA (Software Defined Access) con DNA Center software è per un sistema di orchestrazione in termini di […]



La tecnologia Cisco SDA (Software Defined Access) con DNA Center software è per un sistema di orchestrazione in termini di Automation (NCP for wired and wireless services), Assurance (data-collectors NDP) ed Identity Services (ISE for SGT groups).

Un esempio di Architettura SDA:

SDA prevede l’assegnazione di specifici ruoli che ogni singolo devices deve avere ed in particolare

  • ISE (Identity Service Engine): assegna in modo dinamico gruppi di endpoint classificati come SGT (Scalable Group Tags) per configurazioni basate su policies;
  • Control Plane Node: attraverso un database mappa l’identificativo di un endpoint ID associato ad una posizione (loopback address node); significa che il CP riceve un messaggio di registrazione ID dall’edge node come dal border node e risolve il path di comunicazione end-to-end tra sorgente e destinazione di un flusso.
  • Border Node: sono i devices delegati ad avere connettività layer 3 verso il mondo esterno alla Fabric SDA. Questi border node si dividono in differenti classi:
  • Internal Border: è il nodo che ruota traffico verso destinazioni considerate interne al campus di FM (ad esempio il datacenter); in pratica nella sua tabella di routing esistono solo routes interne registrate con il CP (control Plane);
  • External Border: è il nodo che ruota traffico verso destinazioni considerate esterne al campus FM (ad esempio Internet) e rappresenta anche il last resort gateway. Questo nodo non registra nessuna routes con il CP, ma invece ha un ruolo di LISP Proxy Egress Tunnel Router (PETR).
  • Edge Node: è il nodo di accesso e rappresenta anche il first-hop per un endpoint collegato al sistema Fabric SDA; è sua responsabilità le funzioni di autenticazione ed autorizzazione di un endpoint come pure la sua registrazione ID con il control plane node. SDA utilizza un indirizzo anycast layer 3 gateway (IP address + MAC address) e questo permette a ciascun endpoint di essere connesso alla Fabric senza distinzione a quale edge node sia collegato, permettendo mobility e optimal-forwarding;
  • Intermediate Node: questi nodi hanno il compito di collegare il livello di Edge (accesso) con quello di Border (core) a livello IP (layer 3); sono logicamente presenti alla parte underlay della Fabric ma non entrano in gioco alla parte overlay e quindi del work-flow della Fabric stessa.
  • Fabric WLC: questo nodo prende parte alle operazioni control plane quali la registrazione di un wireless client verso il CP node, ma non partecipa al forwarding plane in quanto il suo ruolo è quello di collegare gli Access Point (AP) compatibili con la Fabric e la creazione di un tunnel CAPWAP verso il WLC (Wireless Lan Controller) più un VXLAN tunnel verso il nodo edge a cui è connesso.
  • Fusion Router: hanno il ruolo di gestire VRF Leaking tra applicazioni di servizi shared datacenter generalemente esistenti in una GRT (Global Routing Table) e Virtual Network (VN/VRF) della Fabric SDA. Hanno inoltre il compito di collegare a livello 3 (IP routing) gli external domain rispetto alla Fabric. Non fanno parte della Fabric SDA.

SDA Underlay

Il livello underlay è definito dai nodi switches e router che stabiliscono connettività IP attraverso un protocollo di routing (ISIS). Ciascun link tra nodi della Fabric sono P2P ed il protocollo di routing utilizza la funzione di ECMP per load-balancing e optimal bandwidth. Ogni nodo della Fabric annuncia la propria loopback address in modo puntuale (/32) e questi indirizzi rappresentano la destinazione per flussi di pacchetti transitanti nella Fabric.

BFD è utilizzato per migliorare tempi di convergenza e decrementare eventuali failover.

Importante notare che le subnets endpoint non sono parte del livello underlay ma del livello overlay della Fabric stessa.

SDA Overlay

Il livello overlay è definito dalle VN (Virtual Network) e la segnalazione control e data plane sono all’interno di ciascun segmento virtuale di rete, mantenendo così una separazione logica tra esse attraverso la configurazione di VRF; multiple istanze overlay quindi utilizzano la stessa piattaforma underlay.

  • Il Control Plane SDA utiliza Instance ID per mantenere una topologia separata su base VN/VRF (default VRF = Instance ID = 4098);
  • Nodi aggiungono un VNID per l’encapsulation alla Fabric; la micro-segmentazione utilizza poi il valore di SGT che permette una gestione di gruppi endpoint attraverso policies;
  • IP subnet possono essere streched attraverso la Fabric;

DNA CENTER

Il cuore del sistema SDA Cisco è il DNA Center che rappresenta il punto centrale per configurazioni ed operazioni ed è costituito da:

Design: per la configurazione di device global settings, network site profiles per inventory, DNS, DHCP, IP addressing, SWIM repositoty, device template e telemetry quale syslog, snmp e netflow.

Policy: per la definizione di VN (Virtual Network), assegnazione di gruppi endpoint alle VNs, contract policy per groups e QoS applications.

Provision: provvede all’inserimento di devices per l’inventory, supporto di Cisco PnP, la creazione di Fabric Site in relazione a tutti i componenti SD-Access e provvede anche a Service Catalogs quali Stealthwatch Security Analitics ed Application Hosting Cisco devices 9000 switches.

Assurance: abilita un efficiente monitoring per la verifica dello stato di ogni elemento hardware e software in esso configurato.

Platform: consente l’accesso programmato alla rete per sistemi di Terze Parti via API.

DNA Center prevede un sistema di work-flow chiamato Lan Automation per la costruzione della parte underlay Fabric in una modalità greenfiled.

Questo permette l’integrazione di switches in Fabric compreso la loro configurazione (nessuna configurazione è necessaria via ssh o telnet) ma richiede la presenza di un nodo “seed” per il processo di discovery e automatic configuration, dove è sufficiente che esso sia raggiungibile dal DNA Center e già riconosciuto da quest’ultimo nel suo inventory.

Lan Automation utilizza la funzionalità PnP Agent (abilitato di default nei devices Cisco) che facilità il processo per l’introduzione nella Fabric di ogni singolo nuovo devices sulla base del proprio ruolo

Cisco PnP IOS Agent è un software embedded nei Cisco devices e comunica attraverso il processo PnP Network process via HTTPS; di default questo agent lavora mediante vlan 1 e quando uno switch viene accesso tutte le sue interfacce sono automaticamente associate alla vlan 1.

ISE (Identity Service Engine)

ISE è il sistema Cisco che garantisce accessi sicuri alla rete sia per endpoint che devices e si integra totalmente con la soluzione SD-Access attraverso pxGrid (Cisco Platform Exchange Grid) e REST API (Representational State Transfer Application Programming Interfaces).

ISE di fatto configura policies, abilita un processo di mapping tra users e SGT (Scalable Groups Tags) con l’integrazione di TrustSec.

SGT sono valori espressi in metadata che sono trasmessi all’interno dell’header del pacchetto encapsulato attraverso la Fabric. I valori SGT sono amministrati da ISE, mentre DNA Center ne definisce le policies per autorizzare il corretto workflow.

LISP Control Plane

A livello di Control Plane, SD-Access utilizza il protocollo LISP (Locator ID Separation Protocol) per una identificazione degli indirizzi IP presenti nella rete (network layer locator); LISP scambia messaggi tra i suoi peers, permettendo la separazione tra una identità e la sua collocazione attraverso un mapping tra due valori espressi come namespaces:

  • EID = Endpoint Identity
  • RLOC = Routing Locator

Pertanto, la Fabric interroga specifici nodi aventi ruolo di Control Plane Fabric per determinare il routing locator associato all’indirizzo di destinazione di un pacchetto (EID to RLOC mapping).

Node Control Plane

I nodi con ruolo di CP hanno le seguenti funzionio:

  • Host Tracking Database (HTDB): rappresenta il database centrale per il mapping tra endpoint ID ed il routing locator (EID to RLOC), dove RLOC è rappresentato da un indirizzo di Loopback0 di un devices di Fabric. HTDB è equivalente al valore di Lisp Site;
  • EndPoint Identified (EID): rappresenta un indirizzo utilizzato per l’identificazione di un endpoint devices e SD-Access supporta MAC address, IPv4 o IPv6 address come EIDs;
  • Map-Server MS: Lisp Map Server (MS) riceve la registrazione di EID con l’associazione RLOC ed utilizza questa informazione per popolare il HTDB;
  • Map-Resolver MR: Lisp Map Resolver (MR) risponde alle queries inviate dai nodi della Fabric che richiedono le informazioni di mapping EID to RLOC binding.

VXLAN Data Plane

VXLAN rappresenta la metodologia di encapuslation per un pacchetto trasmesso nella Fabric SDA e di fatto si viene a creare un tunnel a livello overlay all’interno di una infrastruttura di livello 3.

SD-Access di fatto sostituisce il campo riservato al valore di VXLAN per trasportare più di 64000 SGT mediante un sistema chiamato VXLAN-GPO (anche conosciuto come VXLAN-GBP).

Layer 3 VNI mappa una VRF instance

TrustSec Policy Plane

TrustSec disaccopia l’accesso basato su IP address e Vlan, utilizzando un metodo conosciuto come Group-Based Access Control (GBAC), assegnando un valore SGT al pacchetto in ingresso alla rete.

VXLAN utilizzato in SD-Access viene impiegato per entrambi i livelli di data plane e policy plane ed in quest’ultimo gli attributi SGT e VNI-L3 sono codificati e trasportati a livello overlay nella Fabric.

Edge Node

Il nodo con ruolo di Edge ha la funzione di Ingress ed Egress Tunnel Router (xTR) attraverso sessioni LISP verso i Control Plane Node; implementa un layer 3 routed access design e provvede alle seguenti funzionalità:

  • EndPoint Registration: appena un endpoint è rilevato da un Edge Node, viene aggiunto ad un database locale chiamato EID-Table ed una volta registrato in questo database, l’edge node invia un LISP map-register message per informare i Control Plane node di questo endpoint. Questo permette ai CP Node di aggiornare il suo HTDB;
  • Anycast L3 Gateway: un indirizzo (IP e MAC address) utilizzato da ciascun Edge node della Fabric che condivide un comune EID subnet; di fatto un anycast address L3 gateway è configurato per mezzo di una SVI (switched virtual interface) con un hard-code mac address uniforme per tutti gli edge node fabric;
  • Mapping User to VN: endpoint sono assegnati a VN (virtual network) associando il loro valore di vlan ad una SVI appartenete ad una VRFs;
  • AAA Authenticator: Il mapping di un endpoint all’interno di una vlan può essere fatto staticamente o dinamicamente utilizzando un Server Radius o Tacacs; ogni Edge node è parte integrante del processo 802.1X port-based authentication.

Border Node

Border Node rappresentano il last resort gateway tra la Fabric SDA ed il mondo esterno ad esso; implementa le seguenti funzioni:

  • Advertisement EID subnets: il protocollo BGP è delegato per gli annunci di endpoint prefix space outside la Fabric e la ricezione di prefix di tipo “unknow”;
  • Fabric site exit-point: ruolo assunto dagli External Border quali punto di exit per tutti gli Edge Node Fabric con l’uso della funzionalità di Lisp Proxy Tunnel Router (PxTR); funzionalità possibile anche per gli Internal Border i quali registrano IP Prefix di tipo “know” con i Control Plane Node;
  • Network virtualization extension to the external domain: funzionalità che prevede VRF-lite e VRF-aware routing protocols;
  • Policy Mapping: mapping delle informazioni SGT per la gestione di flussi di comunicazione intra ed inter Fabric domain (SGT Exchange Protocol SXP oppure Inline Tagging)
  • VXLAN encapsulation/decapsulation: anche i Border Node sono a garanzia di pacchetti che sono trasmessi da external domain verso la Fabric e viceversa per funzionalità di encapsulation e decapsulations tra sorgenti e destinazioni inter-Fabric.

Fabric WLC

Questi nodi provvedono alla registrazione di MAC address di wireless clients verso HTDB presente nei Control Plane Node.

SD-Access permette ad un DNAC Center di configurare wireless AP appartenenti ad una VN chiamata INFRA_VN mappata in GRT e questo permette l’instaursi del tunnel CAPWAP tra AP e WLC e viene utilizzato per il solo traffico di controllo (data traffic partente da un wireless endpoint è tunneled sino al first-hop Fabric Edge Node dove le policies possono essere applicate nello stesso modo di un traffico di tipo wired).

Ogni Fabric Site deve avere un WLC unico.

Ogni AP lavora in local-mode e questo richiede un RTT (round-trip time) di 20 msec o minore tra WLC ed AP stesso.

SD-Access Embedded Wireless è una funzionalità prevista da Cisco Catalyst 9800 e Catalyst 9000 come un software package operante in install mode e lavora a livello control-plane come se fosse un hardware WLC.

Il tunnel CAPWAP è instaurato, qundi, tra il 9800 Node Embedded Wireless e l’Access-Point; a livello data-plane si instaura sempre un tunnel vxlan tra quest’ultimo ed il suo first-hop edge switch.

Fabric AP

Ogni AP è compatibile con WiFi 6 802.11ax e 802.11ac Wave 2 associato con il Fabric WLC configurato con uno o più SSID.

Sono collegati direttamente al Fabric Edge Node (oppure ad un Extended Node); mentre il control-plane è gestito via tunnel CAPWAP, il data-plane stabilisce dei tunnel vxlan terminato il loro first-hop edge switch e successivamente considerato come un “wired host” per essere trasportato in modalità wired network.

Un wired host AP ha un dedicato EID space, registrato con il Control Plane Node, ed associato ad una INFRA_VN attraverso il DNAC Center.

Transit and Peer network

Il termine Transit si riferisce ad una connettività tra multili site SDA Fabric e/o external domain; questo permette ad un DNAC Center di automatizzare la configurazione a livello Border Node per la tipologia di Transit Peer Network da stabilire.

La configurazione di Transit Peer Network si basa su due differenti tipi:

  • SD-Access
  • IP-Based

SD-Access sono utilizzati esclusivamente per la connettività tra multipli Fabric Site; i pacchetti sono qundi incapsulati e decapsulati attraverso il forwarding-plane VXLAN Fabric e nativamente trasporta VN/VRF e SGT policies configurate tra Fabric Site.

IP-Based sono pacchetti decapsulati dalla VXLAN Fabric all’interno di native IP packets e da qui trasportati attraverso il tradizionale routing e switching forwarding.

IP-Based sono generalmente utilizzati per collegamenti VRF-lite verso upstream devices per Shared Services (VRF aware peer) oppure external domain quali firewall per WAN/Internet.

Transit Control Plane Node

Ogni Fabric Site ha il proprio Site-Local Control Plane Node per intra-site communication e per comunicazioni inter-site l’intero Fabric Domain utilizza questi Transit Control Plane Node.

Questi nodi hanno queste funzionalità:

  • Site aggregate prefix-registration: i Border Node utilizzano LISP register-map per informare i CP Transit Node delle prefix aggregate associato al Fabric Site; questo crea un aggregate HTDB per tutte le Fabric Site connesse via Transit Peer Network.
  • Control Plane signaling: una volta che il prefisso aggregato è registrato per ogni Fabric Site, la segnalazione CP permette di trasportare traffico inter-site determinando quale Border Transit Node è presente in un path end-to-end tra endpoint.

Fabric Domain and Fabric Site

Fabric domain indica una organizzazione che consiste di multiple Fabric Site ed associa esse a Transit Networks.

Fabric site consiste in un unico set di devices con il proprio ruolo; un Fabric Site opera attraverso dei Control Plane Node, Edge Node per la parte di access e Border Node per collegamenti verso external domain.

Un Fabric Site è sempre associato con un WLC e con ISE policy service node (PSN).

Fabric Multicast

Multicast è supportato sia a livello overlay che underlay e viene utilizzato per scopi differenti.

Una sorgente multicast può essere presente in un external domain oppure direttamente collegato ad un Edge Node, Extended Node o associato con un Fabric AP (overlay fabric)

I ricevitori di traffico multicast sono anch’essi collegati come sopra ed in caso di sorgente presente in overlay fabric può essere presente all’esterno della SDA Fabric.

PIM-ASM (il root del tree multicast è il RP) e PIM-SSM (il root è la sorgente multicast) sono supportati entrambi sia in overlay che underlay; la modalità di overlay ed underlay dipende dalla modalità di forwarding.

Multicast forwarding

SD-Access supporta due metodi di trasporto multicast:

  • Overlay: si riferisce al metodo Head-End Replication
  • Underlay: si riferisce al metodo Native Multicast

Rendezvous Point

PIM-ASM prevede l’utilizzo di un RP riferito come shared tree (RP-Tree)

Un RP è un router L3 in una rete multicast che appunto lavora che un punto centrale di root tree e può essere configurato per coprire differenti multicast groups e nel caso di SD-Access differenti VNs.

Possiamo avere un RP attivo per multipli multicast groups, oppure avere multipli RP per ogni singolo gruppo.

Anycast RP permette di avere due o più RP per condividere il carico di registrazione di sorgenti multicast ed operano come hot-standby RPs.

Anycast RP è il sistema preferito da SD-Access con PIM-ASM automation workflow.

Quando PIM-ASM è presente in overlay e multipli RP sono definiti all’interno della Fabric, il DNA Center automatizza MSDP configuration per RP e configura ogni altro Fabric Node in modo che essi puntino a questi determinati RPs.

External RP

A partire dalla release 1.3.3 SDA supporta un external RP; prima di questa release era mandatorio avere un RP all’interno della Fabric configurato a livello di Border Node.

Con un External RP configurato per workflow DNAC, i Fabric Devices incluso Border ed Edge dovrebbero essere configurati con i rispettivi RP addressess.

È possibile creare un massimo di due RPs, con un solo RP assegnato per VNs.

SSM Multicast

Sempre a partire dalla release 1.3.3. SDA supporta il sistema SSM overlay multicast; di fatto è possibile customizzare un SSM multicast range per un determinato workflow transitante nella SDA Fabric.

Example:

ip access-list standard SSM_Range_VN

permit <range_ssm_vn>

ip pim vrf VN ssm range SSM_Range_VN

In caso di nessun range settato per una specifica VN, il default range è 232.0.0.0/8

SSM quindi è usato in overlay mode, cioè per un flusso end-to-end senza il requisito di avere un RP.

Head-End Replication

Con Head-End Replication, il flusso multicast che transita per una overlay VN, necessità di essere trasportato in underlay mode in unicast VXLAN tunnel tra nodi RLOCs (Routing Locator) presente nella Fabric; questo significa che il pacchetto multicast è composto da un inner packet in overlay VN ed un outer IP header che contiene sorgente e destinazione dei nodi RLOC interessati a ricevere il traffico multicast (PIM Join).

Native Multicast

Viceversa rispetto al sistema Head-End replication, il Native Multicast trasporta il flusso overlay VN come multicast packets in congiunzione al gruppo SSM abilitato in underlay.

Prerequisito di Native Multicast è quello di avere multicast enabled e SSM configurato in underlay.

Layer 2 flooding

Per servizi dove è previsto l’utilizzo di broadcast ed ARP request, i Fabric Edge node con una determinata overlay VN ed IP subnet configurata e layer 2 flooding enabled, inviano un multicast PIM join per i rispettivi underlay multicast groups e ruotati verso il RP ed affinchè il layer 2 possa operare correttamente, l’RP si deve trovare in underlay mode.

Lan Automation per mezzo di MSDP automatizzato tra peer devices seed permette un Anycast-RP per il flooding layer 2; in caso Lan Automation non è impiegato per il discovery dei nodi della fabric, multicast routing deve essere abilitato manualmente per devices e MSDP configurato tra RPs in underlay.

Loopback0 sono impegate come connect-source and originator-ID per MSDP peering.

Torna in alto