MP-BGP EVPN ile VxLAN Network Kurulumu

VxLAN Nedir

VxLAN (Virtual eXtensible LAN) network sanallaştırması için üst bir teknolojidir. Paylaşılan bir Layer-3 altyapı ağı üzerinde IP UDP tünelleme enkapsülasyonunda MAC adresini kullanarak (MAC in IP/UDP) Layer-2 uzantı sağlar. Bu teknoloji Ethernet headeri altında MPLS paketleri göndermeye benzemektedir. IP paketi dış headeri altında VxLAN headerları ile Layer-2 genişleme sağlar.

Overlay katmanda Layer-2 uzatması elde etme amacı, fiziksel sunucu raflarının ve coğrafi konum sınırlarının limitlerini aşmak ve bir veri merkezi yada farklı veri merkezleri arasında iş yükü yerleşimi için esneklik sağlamaktır.

İlk IETF VXLAN standartları (RFC 7348) multicast tabanlı flood-and-learn VXLAN’ı control-plane olmaksızın tanımladı. Uzaktaki VXLAN tünel bitiş noktası (VTEP – VxLAN Tunnel End Point) komşuluk keşfi ve uzak ana bilgisayarları öğrenmesi için veri odaklı “flood ile öğrenme davranışı” (flood-and-learn) ‘na güvenir.

Ovarlay (üst katman) Networkteki broadcast, bilinmeyen unicast ve multicast yayın trafikleri; multicast VxLAN paketlerine kapsüllenir ve underlay (alt katman) multicast yönlendirme vasıtası ile uzak VTEP switch’lerine taşınır. Böyle bir yapılandırmada flooding yapmak çözümün ölçeklenebilirliği için sorun yaratabilir. Altkatman ağında (Underlay Network) multicast yeteneklerini etkinleştirme gereksinimi de bir zorluk gösterebilir. Çünkü bazı kuruluşlar veri merkezlerinde veya WAN ağlarında multicast yayını etkinleştirmeyi istemezler.

RFC 7348’de tanımlanan flood-and-learn VxLAN’ın sınırlarını aşmak için kurum Multiprotocol Border Gateway Protocol Ethernet Virtual Private Network (MP-BGP EVPN) teknolojisi VxLAN için kontrol plane niteliğinde olabilir.

MP-BGP EVPN, IETF tarafında VxLAN yer paylaşımları için standartlara dayalı control-plane olarak tanımlanmıştır. MP-BGP control-plane’i özel yada genel bulutlar için daha ölçeklenebilir VxLAN yer paylaşımı ve ağ tasarımlarına izin veren protokol tabanlı VTEP komşuluk keşfi ve uçtaki ana bilgisayar erişilebilirlik bilgilerinin dağıtımını sağlar. MP-BGP EVPN control-Plane overlay (üstKatman) networkteki trafiki selini (flood) azaltan veya ortadan kaldıran hem doğu-batı trafiğini hemde güney-kuzey trtafiğini en iyi iletmeyi sağlayan bir dizi özellik sunar.

MP-BGP EVPN Control-Plane Nedir?

MP-BGP EVPN endüstri standartlarına dayalı VxLAN için bir kontrol protokolüdür. EVPN’den önce, VxLAN’lar flood-and-learn modunda çalışırdı. VTEP’ler arasında sunucu ulaşılabilirlik bilgilerini dağıtmak için herhangibir kontrol protokolüne sahip değildir. Bu modda uçtaki ana bilgisayar bilgisi öğrenme ve VTEP keşfi Data-Plane tarafından gerçekleştirilir. MP-BGP EVPN bu modeli değiştirir. Uzak VTEP’ler arkasında çalışan uç ana bilgisayarlar için Control-Plane öğrenimini sağlar. Bir VxLAN overlay networkünde hem Layer-2 ve Layer-3 routing için Control-Plane ve Data-Plane ayrımı hemde bütünleşik Control-Plane sağlar.

MP-BGP EVPN Control-Plane’i aşağıdaki avantajları sunar:

  • MP-BGP EVPN protokolü multivendor olarak çalışabilirlik sağlayan endüstri standardını temel alır.
  • Kuruluşların daha sağlam ve ölçeklenebilir VxLAN overlay network kurmalarını sağlar. Uçtan uca anabilgisayarlar hem Layer-2 hemde layer-3 olarak ulaşılabilirlik bilgilerini kontrol plane üzerinden öğrenimini sağlar.
  • Ölçeklenebilir çok katmanlı VxLAN overlay networkleri desteklemek için on yıl önceki MP-BGP VPN teknolojisini kullanır.
  • EVPN adres ailesi (address-family) Layer-2 ve Layer-3 ulaşılabilirlik bilgilerini taşır ve böylece VxLAN overlay networklerde bridging ve routing sağlar.
  • Lokal VTEP’ler üzerinde protokol tabanlı ana MAC/IP yolu dağıtımı ve arp gizlemesi ile ağ selini (flooding) en aza indirir.
  • Doğu-Batı ve Kuzey-Güney trafiğinde en iyi iletimi sağlar ve “dağıtılmış yayın” (distributed anycast) fonksiyonu ile “workload mobility” (iş yükü hareketliliği) destekler.
  • VxLAN overlay networkteki hatalı VTEP riskini azaltarak, VTEP komşuluk keşfi ve kimlik doğrulaması sağlar.
  • Layer-2’de aktif-aktif multihoming (birden fazla rota tayini) oluşturmak için mekanizmalar sağlar.

MP-BGP EVPN Control-Plane için Yazılım ve Donanım desteği

Bir cihazın MP-BGP EVPN VxLAN ağında oynadığı role bağlı olarak, MP-BGP EVPN control-plane’i ile VxLAN ağının sadece control-plane işlevlerini veya control-Plane ve Data-Plane işlevlerini desteklemesi gerekebilir.

MP-BGP EVPN çalıştıran IP Transport cihazları

IP aktarım cihazları, underlay (alt ağ) networkde IP routing sağlar. MP-BGP EVPN protokolünü çalıştırarak, VxLAN control-plane’nin bir parçası haline gelir ve MP-BGP EVPN güzergahını kendi MP-BGP EVPN gurupları arasında dağıtırlar. Cihazlar, MP-iBGP EVPN komşuşuğu veya Route Reflector’ler veya MP External BGP (MP-eBGP) EVPN komşuları olabilir. İşletim sistemi yazılımlarının, MP-BGP EVPN güncellemerini anlayabilmesi ve standart tanımlı yapıları kullanarak diğerMP-BGP EVPN komşularına dağıtabilmesi için MP-BGP EVPN’i desteklemesi gerekir. Veri iletimi için, IP aktarım cihazları yalnızca bir VxLAN kapsüllenmiş paketin dış IP adresine dayalı olarak IP yönlendirme gerçekleştirir. VxLAN veri kapsülleme ve dekapsülasyon işlevlerini desteklemelerine gerek yoktur.

MP-BGP EVPN çalıştırabilen VTEP’ler

MP-BGP EVPN’i çalıştıran VTEP’ler hem control-plane hem de Data-Plane işlevlerini desteklemelidir. Control-Plane’de lokal Host’ları tanımak için MP-BGP EVPN rotalarını başlatır. MP-BGP EVPN güncellemelerini komşularından alır ve EVPN rotalarını kendi yönlendirme tablolarına yükler. Veri iletimi için kullanıcı trafiğini VxLAN’a sokar ve IP Underlay (altağ) network üzerinden gönderir. Ters yönde düşünüldüğünde diğer VTEP’lerden VxLAN kapsüllü trafik geldiğinde dekapsüle edip ana bilgisayara yerel ethernet kapsülleme ile trafiği iletirler. Farklı ağ rolleri için doğru anahtar platformlarının seçilmesi gerekir. Ancak donanımın VxLAN data-plane’i desteklemesi gerekmez. VTEP için switch’in hem control-plane hem de Data-Plane işlevlerini desteklemesi gerekir.

Inter-VxLAN Yönlendirme

MP-BGP EVPN Control-Plane VxLAN overlay networkdeki son ana bilgisayar için Layer-2 ve Layer-3 ulaşılabilirlik bilgilerini dağıtarak entegre yönlendirme ve köprüleme sağlar. Farklı subnetteki ana bilgisayarlar arasındaki iletişim, inter-VxLAN routing gerektirir. BGP EVPN bu iletişimi, ya Host IP adresi ya da IP adres prefixi şeklinde Layer-3 ulaşılabilirlik bilgilerini dağıtarak sağlar. Data-Plane’de VTEP’in lookup sonucuna bağlı olarak IP adresi yolunu (Route Lookup) araştırmasını desteklemesi ve VxLAN kapsüllemeyi gerçekleştirmesi gerekiyor. Bu kabiliyete VxLAN yönlendirme (VxLAN Routing) işlevi denir. Tüm switch donanımları VxLAN yönlendirmeyi desteklemez, dolayısı ile donanım platformu seçimi önemlidir.

Cisco Nexus 9000 Serisi Switch’lerde MP-BGP EVPN VxLAN Desteği

VxLAN için MP-BGP EVPN control-Plane’i Cisco Nexus 9000 serisi Switch’ler için Cisco NX-OS yazılım sürümü 7.0(3)| 1(1)’e dahil edildi. Bu yazılım işlevi fonksiyonları tüm Cisco NX-OS yazılımı kullanan Cisco 7000 serisi Switch’ler gibi diğer Cisco Nexus switch platformları içinde geçerlidir. Cisco MX-OS 7.0(3)|1(1) sürümünde, Cisco Nexus 9300 platform Switch’leri hem MP-BGP EVPN Control-Plane işlevini hem de VTEP Data-Plane işlevlerini desteklemektedir. Cisco Nexus 9500 platformu switchler MP-BGP EVPN Control-Plane işlevlerini destkeler. VTEP Data-Plane fonksiyonları, Cisco NX-OS 7.0(3)|1(1) in , bir bakım sürümünde Cisco Nexus 9500 platform Switch’lerine eklenecektir. Cisco Nexus 9300 ve 9500 platformları, donanımlar arası inter-VxLAN routing özelliğini desteklemektedir.

Bu yazıdaki MP-BGP EVPN işlevleri ve tasarım tartışmalarının bir çoğu platformdan bağımsız olmasına rağmen, Cisco Nexus 9000 Serisi Switch’ler bu protokolü destekleyen ilk Switch platformudur. Örnekler Nexus 9000 serisi temel alınarak hazırlanmıştır.

MP-BGP EVPN’de Çoklu Görevlilik (Multitenancy)

Mevcut MP-BGP’nin bir uzantısı olan MP-BGP EVPN, sanal yönlendirme ve iletme (VRF – Virtual Routing and Forwarding) yapısı kullanarak VPN ile çok katmanlı (multitenancy) olma desteği verir. MP-BGP EVPN de , birden fazla Tenant (Kiracı) birlikte bulunabilir ve ortak IP ulaşım ağını paylaşabilirken her biri VxLAN overlay networkde kendi ayrı VPN’lerine sahip olabilirler. EVPN, VxLAN overlay netowkrdeki VxLAN Ağ Kimlikleri (VNI’s – VxLAN Network Identifiers) Layer-2 trafiğinin VNI sınırlarını geçmesine izin vermeyerek Layer-2 domain adlarını tanımlar ve Layer-2’de sınırlamayı sağlar.

Benzer şekilde, VxLAN tenantları (kiracıları) arasında Layer-3 segmentasyonu Layer-3 VRF teknolojisi uygulayarak ve her VRF instance’ına (örneğine) eşlenen ayrı bir Layer-3 VNI kullanarak tenantlar arasında routing yalıtımı uygulamak sureti ile sağlanır. Tüm tenantların kendine ait instance’ı vardır. Belirli bir kiracı (tenant) için VNI’lerin IP subnetleri, Layer-3 yönlendirme alanını diğer tenant’lardan ayıran Layer-3 VRF instance’ı ile aynıdır.

Multicast özelliği bulunan VXLAN ile Multitenant yeteneği olmayan diğer Layer-2 uzatma teknolojileri ile karşılaştırıldığında MP-BGP EVPN VXLAN’ın gömülü Multitenancy desteği bir avantajdır. VXLAN teknolojisi, multitenant modeli kullanarak konuşlandırılan bulut ağlarını daha uygun hale getirir.

MP-BGP EVPN NLRI ve L2VPN EVPN Adres Ailesi (address-Family)

Diğer ağ yönlendirme kontrol protokolleri gibi, MP-BGP EVPN’de network için ağkatmanı erişilebilirlik bilgilerini (NLRI – Network Layer Reachability Informatoin) dağıtmak için tasarlanmıştır. EVPN NLRI’nin benzersiz bir özelliğide EVPN VxLAN overlay ağında bulunan son ana makinalar için Layer-2 ve Layer-3 ulaşılabilirlik bilgilerini içeriyor olmasıdır. Başka bir değişle, EVPN VxLAN sın ana bilgisayar hem MAC hem de IP adreslerini bildiriyor olmasıdır. Bu özellik VxLAN’a entegre edilmiş köprüleme ve yönlendirme desteğinin temelini oluşturmaktadır.

VxLAN aslında bir Layer-2 uzatma teknolojisi olduğu için Layer-2 Mac adreslerinin dağıtılması gerekir. Bir ağdaki, belirli bir yere sınırlandırılmış, Layer-2 ve Layer-3 sınırlarında kalmanın aksine, bir VNI overlay  networkteki Layer-2 segmenttir. Bununla birlikte, underlay (altağ) altyapısının Layer-2 ve Layer-3 sınırlarının ötesine uzanan çoklu bitişik olmayan sitelere yayılabilir (Şekil-1). Aynı VNI’deki son ana bilgisayarlar arasındaki trafik, o VNI’deki VTEP cihazlarının, bu VNI’deki son ana makinelerin MAC adreslerini bilmeleri gerektiği anlamına gelen overlay networkte köprüleme (bridging) yapmak zorundadır. MAC adreslerinin BGP EVPN aracılığı ile dağıtılması, VxLAN’da bilinmeyen tek noktaya yayın seli (unknown unicast flooding)’ nin azaltılmasına veya ortadan kaldırılmasına olanak verir.

Layer-3 ana bilgisayar IP adresleri, MP-BGP EVPN vasıtası ile duyrulur, böylece inter-VxLAN trafiği, ilgili sunucuya en uygun yoldan yönlendirilebilir. Hedef son bilgisayara yönlendirilmesi gereken inter-VxLAN trafiği için ana bilgisayar tabalı IP yönlendirmesi hedef ana makinanın tam konumu için en iyi yönlendirme yolunu sağlayabilir. MP-BGP EVPN, VNI’lerin IP subnet prefix rotalarını ilan (advertise) edebilir. Ana IP yolları eksik olduğunda, prefix rotaları hedef hostlara trafik yönlendirmek için kullanılabilir: Örneğin, ana bilgisayar IP rotaları henüz VTEP’ler tarafından MP-BGP aracılığı ile öğrenilmediğinde. VTEP, subnetlerin yönlendirilebilir olması ve VxLAN ağının dışında bilinmesi gerekiyorsa prefix rotalarını VxLAN ağının dışına da tanıtabilir. EVPN NLRI, BGP’de Layer-2 VPN (L2VPN) EVPN olarak adlandırılan yeni adres ailesi olan BGP Multiprotocol eklentisini kullanarak taşınır. EVPN için L2VPN EVPN adres ailesi BGP MPLS tabanlı IP VPN (RFC 4364) de VPNv4 adres ailesine benzer şekilde, farklı VRF instance’larında özdeş rotalar arasında eşsizliği korumak için Rota Ayırıcılar (RD – Route Distinguishers) kullanır ve varklı VRF instance’ları tarafından rotaların dağıtımı ve yayılmasının nasıl yapılacağını belirleyen ilkeleri tanımlamak için Rota Hedefleri (RT – Route Targets) ‘ni kullanır. Bir rota ayırıcı (RD)bir rota dizisini (yani bir VRF instance’ını) diğerlerinden ayırmak için kullanılan 8 bitlik bir oktet numarasıdır. Bu sayı her rota için önceden belirlenmiş benzersiz bir yapıdadır. Böylece aynı rota birden çok farklı yollar olarak kullanılabilir. EVPN rotaları MP-BGP komşuları ile (exchange edildiğinde) değiştirildiğinde rota ayırıcı (RD) MP-BGP rotası ile birlikte iletilir.

Bu instance ile diğer VRF instance’ları arasındaki rotaları (import and export) içe / dışa aktarmayı kontrol etmek için bir Rota Hedefleri (RT) uygulanabilir. Bir rota için route-target öznitelikleri (attributes), BGP genişletilmiş (extended) topluluk (community) niteliği şeklinde dağıtıldığından, bu nitelikleri oluşturmak veya işlemek için MP-BGP EVPN’yi çalıştıran aygıtlardaki BGP yapılandırması gerekli konfigürasyonlarla etkinleştirilmelidir.

Cisco NX-OS uygulamasında, yapılan konfigürasyonu kolaylaştırmak için BGP rota ayırıcı (RD) ve rota hedefi (RT) otomatik olarak oluşturulabilir. BGP rota ayırıcı (RD) otomatik olarak VNI ve VTEP Switch’in BGP Router ID’sinden türetilebilir ve BGP rota hedefi (RT) otomatik olarak BGP AS: VNI olarak oluşturulabilir. Alternatif olarak, BGP rota ayırıcıyı (RD) ve rota hedefini (RT) manuel olarak da yapılandırabilirsiniz. Bir ağdaki tüm MP-BGP EVPN VTEP’leri Cisco Nexus Switch platformlarından oluşuyor ise, önerilen yaklaşım otomatik üretilen rota ayırıcı (RD) ve rota hedef (RT) değerlerini kullanmaktır. Birden fazla üreticinin VTEP aygıtı birlikte çalışıyorsa, önerilen yaklaşım satıcıların uygulamalarında farklılıkların neden olduğu sorunları önlemek için değerleri elle yapılandırmaktır. VTEP’lerin farklı BGP domainlerinde olduğu eBGP dağıtım senaryoları için, BGP rota hedefleri (RT) manuel olarak atanmalıdır.

MP-BGP EVPN Control-Plane  ile Routing ve Bridging Entegrasyonu

MP-BGP EVPN Control-Plane’i, VxLAN Overlay Networkte bulunan son ana bilgisayar için Layer-2 ve Layer-3 erişilebilirlik bilgilerini dağıtarak tümleşik yönlendirme ve köprüleme sağlar. Her bir VTEP, lokal olarak bağlı ana makinelerden MAC ve IP adresi bilgilerini elde etmek için yerel öğrenme gerçekleştirir ve daha sonra bu bilgiyi MP-BGP EVPN Control-Plane’i üzerinden dağıtır. Uzak VTEP’lere bağlı olan ana bilgisayarlar MP-BGP Control-Plane’i vasıtasıyla uzaktan öğrenilir. Bu yaklaşım uç ana bilgisayarların öğrenilmesi için ağ selini azaltır ve uç ana makinenin erişilebilirlik bilgileri dağıtımında daha iyi kontrol sağlar. Şekil 2, Route-Reflektörleri kullanan bir MP-iBGP EVPN’de son ana NLRI öğrenme ve dağıtımı örneğini göstermektedir.

Şekil 2. MP-BGP EVPN Ana bilgisayar NLRI Öğrenme ve Dağıtımı

Lokal-Host Öğrenme

MP-BGP’deki bir VTEP EVPN yerel olarak bağlı uç ana bilgisayarların MAC ve IP adreslerini yerel öğrenme metoduyla  öğrenir. Bu öğrenme, gelen Ethernet framelerinden; kaynak MAC adresi öğrenme ve ana bilgisayarların Gratuitous ARP (GARP) ve Reverse ARP (RARP) paketleri gönderdiğinde IP adresi öğrenme gibi standart Ethernet ve IP öğrenme prosedürleri kullanılarak yerel Data-Plane tabanlı olabilir veya ARP, VTEP’deki ağ geçidi IP adresini talep eder.  Alternatif olarak, öğrenme, bir Control-Plane kullanarak veya VTEP ve yerel bilgisayarlar arasındaki Management-Plane entegrasyonu yoluyla gerçekleştirilebilir.

EVPN Route Advertisement (Rota paylaşımı) ve Uzaktan Ana Bilgisayar Öğrenme

VTEP, Yerel ana MAC ve IP adreslerini öğrendikten sonra, MP-BGP EVPN Control-Plane’nde bu bilginin dağıtılabilmesi için  ana bilgisayar bilgisini diğer VTEP’lere duyurur. Bu yaklaşım, EVPN VTEP’lerinin MP-BGP EVPN Control-Plane’deki uzaktaki uç ana bilgisayarları öğrenmesini sağlar.

EVPN güzergahları, L2VPN EVPN adres ailesi (address-family) aracılığıyla duyurulmaktadır. BGP L2VPN EVPN güzergahları aşağıdaki bilgileri içerir:

● RD: Rota ayırıcı
● MAC adresi uzunluğu: 6 bayt
● MAC adresi: Ana makine MAC adresi
● IP adresi uzunluğu: 32 veya 128
● IP adresi: Ana bilgisayar IP adresi (IPv4 veya IPv6)
● L2 VNI: son ana bilgisayarın ait olduğu köprü etki alanının VNI numarası
● L3 VNI: Tenant VRF yönlendirme instance’ı ile ilişkili VNI

MP-BGP EVPN, EVPN rotasında iletilen rota hedeflerini (RT) iletmek için BGP extended community attribute’larını kullanır. EVPN VTEP bir EVPN rotası aldığında, alınan rotadaki; rota hedef özniteliklerini yerel olarak yapılandırılmış rota hedefi alma politikasıyla karşılaştırarak, rotayı alıp almayacağına karar verir. Bu yaklaşım, on yıl eski MP-BGP VPN teknolojisi (RFC 4364) kullanır ve yerel olarak VRF’ye sahip olmayan bir düğümün ilgili rotaları içe aktarmadığı ölçeklendirilebilir çoklu ortam sağlar. VPN ölçeklemesi rota hedefi kısıtlı rota dağıtımı (RFC 4684) gibi BGP yapıları kullanılarak daha da geliştirilebilir. Bir VTEP anahtarı, yerel olarak öğrendiği son ana bilgisayarlar için MP-BGP EVPN rotalarını başlattığında, kendi VTEP adresi, BGP Next-Hop olarak kullanılmaktadır.

Uzak VTEP, kapsül ağı için paketleri iletirken orijinal VTEP adresini VXLAN kapsüllemesi için bir sonraki atlama noktası olarak öğrenmesi gerektiğinden dolayı bu BGP Next-Hop, ağdaki rota dağıtımı boyunca değişmeden kalmalıdır. Alt katman (underlay) networkü, kapsüllenmiş VXLAN paketlerini alt katman (underlay) ağı üzerinden çıkış VTEP yönünde yönlendirmek için kullanılan tüm VTEP adresleri için IP erişilebilirliği sağlar. EVPN rotalarını öğrenmek zorunda değiller. Bu yaklaşım, underlay ağ operasyonunu basitleştirmekte ve istikrarı ve ölçeklenebilirliğini artırmaktadır.

Simetrik ve Asimetrik Entegre Yönlendirme ve Köprüleme (Routing and Bridging)

IETF EVPN, asimetrik IRB ve simetrik IRB olmak üzere iki adet entegre yönlendirme ve köprüleme (IRB – Integrated Routing and Bridging) taslağı hazırladı. Cisco Nexus Switch platformları için Cisco NX-OS, ölçeklenebilirlik avantajları ve Basitleştirilmiş Layer-2 ve Layer-3 multitenancy desteği için simetrik IRB uygular.

Asimetrik IRB

Asimetrik IRB ile giriş (ingress) VTEP hem Layer-2 köprüleme ve Layer-3 rota bulma gerçekleştirirken, çıkış (egress) VTEP yalnızca Layer-2 köprü arama (bridging lookup) yapar. Şekil 3’te gösterildiği gibi asimetrik IRB ile bir paket iki VNI arasında dolaşırken giriş VTEP, paketi kaynak VNI’den hedef VNI’e yönlendirir. Çıkış VTEP, paketi hedef VNI içindeki varış noktasına köprü yapar.

Şekil 3. Asimetrik IRB ile VXLAN Yönlendirme

Asimetrik IRB, hem Layer-2 hem de Layer-3 iletme için hem kaynak hem de hedef VNI’ler ile yapılandırılmış giriş VTEP’e ihtiyaç duyar. Aslında bu, her bir VTEP’in VXLAN ağındaki tüm VNI’lerle yapılandırılmasını ve bu VNI’lere bağlı tüm son bilgisayarların ARP girdilerini ve MAC adreslerini öğrenmesini gerektirir. Bu davranış, son ana bilgisayarların yoğunluğu ve/veya overlay networkteki VXLAN VNI’lerin sayısı arttıkça, ölçeklenebilirlik sorunlarına neden olabilir.

Şekil 4. Asimetrik IRB’ye VTEP VNI Üyeliği

Simetrik IRB

Simetrik IRB ile hem giriş hem de çıkış VTEP’leri Layer-2 ve Layer-3 aramalarını gerçekleştirir. Simetrik IRB aşağıdaki bazı yeni mantıksal yapılar getirmektedir:

● Layer-3 VNI: Tüm tenant’ların (kiracı) her bir VRF instace’ı, ağda benzersiz Layer-3 VNI olarak haritalanır. Bu haritalamanın ağdaki tüm VTEP’lerde tutarlı olması gerekir. Tüm VXLAN’lar arası yönlendirilen trafik, VXLAN header’inde Layer-3 VNI ile kapsüllenir ve alıcı VTEP için VRF contex sağlar. Alıcı VTEP, iç IP paketinin yönlendirileceği VRF içeriğini belirlemek için bu VNI’yi kullanır. Bu VNI, Data-Plane’de Layer-3 segmentasyonunun uygulanması için temel sağlar.

● VTEP yönlendirici MAC adresi: Her VTEP’in, diğer VTEP’lerin inter-VNI (VNI içi) yönlendirme için kullanabileceği benzersiz bir sistem MAC adresi vardır. Bu MAC adresi burada Router MAC adresi olarak anılır. Router MAC adresi, yönlendirilmiş VXLAN paketinin destination MAC adresi olarak kullanılır.

Şekil 5’te gösterildiği gibi, VNI A’dan VNI B’ye bir paket gönderildiğinde, VTEP girişi paketi alır ve Layer-3 VNI’ye yönlendirir. Hedef MAC adresini çıkış VTEP’in yönlendirici MAC adresiyle değiştirerek ve Layer-3 VNI’yi VXLAN header’ine kodlar. Çıkış VTEP, kapsüllenmiş VXLAN paketini aldıktan sonra, öncelikle VXLAN header’ini kaldırarak paketi dekapsüle eder. Sonra iç paketin header’ine bakar.  İç paket headerinde bulunan hedef MAC adresi kendi MAC adresidir ve Layer-3 yönlendirme (routing lookup) araması yapar. VXLAN headerinde bulunan Layer-3 VNI bu yön bulma işleminin gerçekleştirilmesi için VRF contexini sağlar.

Şekil 5. Simetrik IRB ile VXLAN Yönlendirme

Simetrik IRB’nin Avantajları

Simetrik IRB ile, giriş VTEP’inin VNI’lar arası yönlendirme için varış VNI’i bilmesine gerek yoktur. Bu nedenle, VTEP’lerin, yerel ana bilgisayarları olmayan çıkış VNI’lerine bağlı uzak ana bilgisayarlar için MAC adresi bilgilerini öğrenmesi ve muhafaza etmesi gerekmez (Şekil 6). Bu yaklaşım, VTEP’de MAC adres tablosu ve ARP tablolarının daha efektif kullanımını sağlar. Örneğin, Şekil 6’da VNI-B’deki tüm ana makine MAC adresi ve ARP tabloları VTEP-1 üzerinde olması gerekmez. Sonuç olarak, yönlendirme ve köprüleme, asimetrik IRB’den daha ölçeklenebilir olduğu söyleyebiliriz. Cisco NX-OS optimal öğrenme ve ölçeklendirme sağlamak için simetrik IRB’yi kullanır.

Şekil 6. Simetrik IRB ile VTEP VNI Üyeliği

Köprü Domaini ve IP VRF Instace’ları için VNI’ler

Bir EVPN VXLAN tenant’ı her biri ayrı VNI’ye sahip olarak görünen ve buna karşılık gelen birden fazla Layer-2 networke sahip olabilir. Bu Layer-2 networkleri, overlay ağdaki köprü domainleridir.  Bu tür VNI’lere çoğu zaman Layer-2 (L2) VNI adı verilir. VXLAN’lar arası yönlendirme gerekiyorsa her tenant’da simetrik IRB için Layer-3 VNI’ya ihtiyaç duyar. Bir VTEP’de hepsi ya da bir VXLAN EVPN’deki Layer-2 VNI’lerin bir alt kümesi olabilir, ancak VXLAN’lar arası yönlendirme için mutlaka Layer-3 VNI’ye sahip olmalı. EVPN’deki tüm VTEP’lerin aynı Layer-3 VNI’ye sahip olması gerekir (Şekil 7).

Şekil 7. Köprü Domaini ve IP VRF Instace’ları için VNI’ler

Bir EVPN VTEP, yerel son ana makinelerden aldığı paketler için yönlendirme araştırması ve VXLAN kapsüllemesi gerçekleştirdiğinde, paketlerin köprülenmesi veya yönlendirilmesi gerekip gerekmediğine bağlı olarak VXLAN header’inde bir Layer-2 VNI veya Layer-3 VNI kullanır. Orijinal paket header’indeki hedef MAC adresi yerel VTEP’e ait değilse, yerel VTEP bir Layer-2 arama gerçekleştirir ve aynı Layer-2 VNI’de bulunan hedef son ana makineye kaynak ana makineden geliyormuş gibi paketi köprüler. Yerel VTEP, bu Layer-2 VNI’yi VXLAN başlığına gömer. Bu durumda, hem kaynak hem de hedef bilgisayarlar aynı Layer-2 broadcast domainindedir. Hedef MAC adresi yerel VTEP switchine aitse – yani yerel VTEP kaynak ana bilgisayar için IP Gateway ve kaynak ve hedef bilgisayarlar farklı IP subnetinde ise – paket yerel VTEP tarafından yönlendirilir. Daha sonra paketleri VXLAN headerinde Layer-3 VNI ile kapsüller ve iç hedef MAC adresini uzak VTEP’in yönlendirici MAC adresi ile değiştirir. Kapsüllenen VXLAN paketini aldıktan sonra, uzak VTEP, alınan paketteki iç hedef MAC adresi, uzak VTEP’in kendisi ne ait olduğu için iç IP başlığına dayalı bir başka yönlendirme araştırması (routing lookup) gerçekleştirir.

Bir VXLAN paketinin dış IP headerindeki hedef VTEP adresi, underlay networkteki hedef sunucunun konumunu tanımlar. VXLAN paketleri, hedef IP adresine dayalı olarak underlay network aracılığıyla çıkış VTEP yönünde yönlendirilir. Paket çıkı VTEP’ine geldiğinde VXLAN başlığındaki VNI, paketin köprülenmesi gereken VLAN’ı veya yönlendirileceği tenant VRF instance’ını belirlemek için inceler. İkinci durumda, VXLAN header’i Layer-3 VNI ile kodlanır. Bir Layer-3 VNI bir tenant VRF yönlendirme instance’ı ile ilişkilendirilir, böylece çıkış VTEP yönlendirilen VXLAN paketlerini doğrudan uygun tenant yönlendirme instance’ına eşleyebilir. Şekil 8, simetrik IRB’deki bu yönlendirme konseptini göstermektedir. Bu yaklaşım, multitenancy’nin hem Layer-2 hem de Layer-3 segmentasyonunu desteklemesini kolaylaştırıyor.

Şekil 8. Simetrik IRB Yönlendirmeli VXLAN Paket İletimi

MP-BGP EVPN’de VTEP Komşuluk Bulma ve Kimlik Doğrulama

MP-BGP EVPN’den önce, VxLAN’ın kontrol protokol tabanlı VTEP komşuluk bulma mekanizması veya VTEP komşularını doğrulamak için bir yöntem yoktu. Bu kısıtlamalar gerçek dünya VXLAN uygulamalarında büyük güvenlik riskleri sunuyor çünkü VXIAN trafiğini gönderip almak için sahte bir VTEP’in bir VNI segmentine kolayca eklenmesine izin veriyor.

MP-BGP EVPN Control-Plane’inde bir VTEP cihazının önce diğer VTEP’ler ile BGP komşuluğu ilişkisi kurması veya internal BGP (iBGP) Route-Reflector oluşturması gerekir. Son ana makine NLRI bilgisi için BGP güncellemelerine ek olarak, VTEPler BGP aracılığıyla kendileri hakkında aşağıdaki bilgileri değiş tokuş eder:

● Layer-3 VNI
● VTEP adresi
● Yönlendirici MAC adresi

Bir VTEP, uzaktaki bir VTEP BGP komşusundan BGP EVPN rota güncellemelerini alır ve derhal, o rota bilgisinden VTEP adresini VTEP komşu listesine ekler. Bu VTEP komşu listesi daha sonra geçerli bir VTEP koşularının beyaz listesi olarak kullanılır. Bu beyaz listedeki olmayan VTEP’ler geçersiz veya yetkisiz kaynaklar olarak kabul edilir.  Bu geçersiz VTEP’lerden gelen VXLAN olarak kapsüllenmiş trafik diğer VTEP’ler tarafından discard edilir.

Data-Plane’deki yönlendirme, bir BGP EVPN VTEP, VXLAN kapsüllenmiş paketleri yalnızca beyaz listedeki VTEP komşularından kabul eder. Böylece, MP-BGP EVPN, protokol tabanlı VTEP bulgusunu ve VXLAN overlay trafik dağılımını yalnızca BGP tarafından öğrenilen VTEP’ler ile sınırlama kabiliyetini getirir. VTEP komşuluk öğrenmeyi destekleyen VTEP adresi ile birlikte, BGP EVPN rotaları VTEP yönlendirici MAC adreslerinide taşır. Her VTEP’in yönlendirici MAC adresi vardır. Bir VTEP yönlendiricisi MAC adresi MP-BGP vasıtasıyla dağıtıldığında ve diğer VTEP’ler tarafından öğrenildikten sonra, diğer VTEP’ler onu VTEP komşusuna VxLAN’lar arası yönlendirilen paketleri kapsüllemek için VTEP komşusu olarak bir attribute olarak kullanır.

BGP EVPN rotaları VTEP komşuluk öğrenimini destekleyen VTEP adresi ile birlikte VTEP yönlendirici MAC adreslerinide taşır. Her VTEP’in yönlendirici MAC adresi vardır. Bir VTEP’in yönlendirici MAC adresi MP-BGP vasıtasıyla dağıtılır ve diğer VTEP’ler tarafından öğrenilir, diğer VTEP’ler VxLAN’lar arası yönlendirme paketlerini bu VTEP komşusuna kapsüllemek için onu VTEP komşusunun bir attribute’u olarak kullanır. Yönlendirici MAC adresi, yönlendirilen VXLAN paketi için iç hedef MAC adresi olarak programlanmıştır.  Ek güvenlik için, BGP komşuluk oturumlarına mevcut BGP Message Digest 5 (MD5) kimlik doğrulaması uygulanabilir, böylece switchler başarıyla birbirine, önceden yapılandırılmış bir MD5 Üçlü Veri Şifreleme Standardı 3DES anahtarı ile kimlik doğrulaması yapana kadar MP-BGP EVPN güzergahlarını aralarında paylaşabilen BGP komşuları olamazlar. MP-BGP EVPN’de BGP komşu kimlik doğrulaması, daha önce BGP’de desteklenen şekilde yapılandırılmıştır.

Burada bir örnek gösterilmektedir:

Aşağıda, Cisco NX-OS’deki VNI Komşuluk durumu ve bilgisinin bir örneği gösterilmektedir:

MP-BGP EVPN’de Dağıtılmış (Distributed) Anycast Ağ Geçidi

MP-BGP EVPN’de, bir VNI’deki herhangi bir VTEP, aynı sanal ağ geçidi IP adresini ve sanal ağ geçidinin MAC adresini destekleyerek IP subnetindeki son ana makineler için dağıtılan herhangi bir Anycast ağ geçidi olabilir (Şekil 9).  EVPN’deki anycast gateway işlevi ile, VNI’deki uç ana bilgisayarlar her zaman bu VNI için yerel VTEP’lerini, IP alt ağının dışına trafik göndermek için varsayılan ağ geçidi olarak kullanabilir. Bu özellik, VxLAN overlay ağındaki son ana makinelerden gelip kuzeye giden trafik için optimal yönlendirme sağlar. Dağıtılan bir anycast ağ geçidi ayrıca VXLAN overlay ağı içinde kesintisiz ana makine hareketliliğinin faydasını sunar. Ağ geçidi IP ve sanal MAC adresi, bir VNI içindeki tüm VTEP’lerde aynı şekilde sağlandığından dolayı, bir son ana makine bir VTEP’den başka bir VTEP’e taşındığında, ağ geçidi MAC adresini yeniden öğrenmek için yeniden bir ARP isteği göndermek zorunda değildir.

Şekil 9. MP-BGP EVPN’deki Dağıtılmış Anycast Ağ Geçidi

MPP-BGP EVPN’de ARP Saklama (Suppression)

ARP saklama (Suppression),  ARP isteklerinden gelen broadcast trafiğinin neden olduğu ağ sellerini (flooding) azaltmak için MP-BGP EVPN Control-Plane’i tarafından sağlanan bir donanımdır.

Bir VNI için ARP Gizleme etkinleştirildiğinde, VTEP’lerinin her biri bilinen IP ana bilgisayarları için bir ARP gizleme önbellek tablosu ve VNI segmentindeki ilişkili MAC adreslerini korur. Şekil 10’da gösterildiği gibi, VNI’deki bir son ana makine başka bir son ana bilgisayar IP adresi için bir ARP isteği gönderdiğinde, yerel VTEP, ARP isteğini keser ve ARP önleme önbellek tablosundaki ARP’lı IP adresini kontrol eder. Bir eşleşme bulursa, yerel VTEP, uzak uç ana makine adına bir ARP yanıt gönderir. Yerel ana bilgisayar ARP yanıtında uzaktaki bilgisayarın MAC adresini öğrenir. Yerel VTEP ARP saklama tablosundaki ARP’lanmış IP adresine sahip değilse ARP isteğini VNI’deki diğer VTEP’lere taşır. Bu ARP floodu, ağdaki sessiz bir ana bilgisayara ilk ARP isteğinde bulunabilir. Ağdaki VTEP’ler başka bir ana bilgisayar IP adresi için bir ARP isteği gönderene ve ARP yanıtını geri gelene kadar sessiz ana bilgisayardan gelen herhangi bir trafiği görmez. Yerel VTEP, sessiz ana bilgisayarın MAC ve IP adresi hakkında bilgileri edintikten sonra, bilgiler MP-BGP EVPN Control-Plane vasıtasıyla tüm diğer VTEP’lere dağıtılır. Sonraki tüm ARP taleplerinin flood edilmesi gerekmez. Çoğu ana bilgisayar çevrimiçi olduktan hemen sonra , GARP veya RARP üzerinden kendilerini ağa duyurma taleplerini gönderdikleri için yerel VTEP, hemen MAC ve IP adreslerini öğrenme ve bu bilgileri diğer VTEP’lere MP-BGP EVPN Control-Plane yoluyla dağıtma olanağına sahip olacak. Bu nedenle, VXLAN EVPN’deki en aktif IP ana bilgisayarları, VTEP’ler tarafından yerel öğrenme veya kontrol düzlemi tabanlı uzaktan öğrenme yoluyla öğrenilmelidir. Sonuç olarak, ARP saklama, ana bilgisayar ARP öğrenme davranışından kaynaklanan ağ selini (flood) azaltır.

Şekil 10. MP-BGP EVPN’de ARP Saklama

MP-BGP EVPN VTEP Yapılandırması

Bu bölüm,  Cisco cihazlar için MP-BGP EVPN VTEP’i yapılandırma adımlarını özetler.

Adım 1. Her VTEP anahtarının başlangıç yapılandırmasını yapmakla başlayalım.

Adım 2. EVPN tenantının VRF instance’ını yapılandırın.

Aşağıdaki örnekte, iki tenant ve VRF instance’ları için bir yapılandırma gösterilmektedir:

Adım 3. Her tenant VRF instace’ı için bir Layer3 VNI oluşturun.

Adım 4. EVPN Layer-2 VNI’leri Layer-2 ağları için yapılandırın.

Bu adım VLAN’ları Layer-2 VNI’lere eşlemeyi ve EVPN parametrelerinin tanımlamalarını içerir.

Adım 5. SVI’yi Layer-2 VNI’ler için yapılandırın ve SVI altında anycast ağ geçidini etkinleştirin.

DEVAM EDECEK…!