Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX

Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX

"Mir hunn eng Telefonverbindung tëscht eis an de Kärelen vum SRI opgeriicht ...", sot de Kleinrock ... an engem Interview:
"Mir hunn de L ageschriwwen a mir hunn um Telefon gefrot: "Gesitt Dir de L?"
"Jo, mir gesinn den L," koum d'Äntwert.
"Mir hunn den O getippt, a mir hu gefrot: "Kuckt Dir den O."
"Jo, mir gesinn den O."
"Dunn hu mir den G ageschriwwen, an de System ass erofgefall" ...

Awer eng Revolutioun huet ugefaang ...

Den Ufank vum Internet.


Hallo jiddereen!

Mäin Numm ass Alexander, ech sinn en Netzwierkingenieur am Linxdatacenter. Am heutegen Artikel schwätze mir iwwer Traffic Exchange Points (Internet Exchange Points, IXP): wat virun hirem Optrëtt, wéi eng Aufgaben se léisen a wéi se gebaut ginn. Och an dësem Artikel wäert ech de Prinzip vun der Operatioun vun IXP mat der EVE-NG Plattform an dem BIRD Software Router demonstréieren, sou datt Dir e Verständnis hutt wéi et "ënnert der Hood" funktionnéiert.

E bësse vun der Geschicht

Wann Dir kuckt hei, da gesitt Dir datt de séiere Wuesstum vun der Unzuel vun de Verkéiersaustauschpunkten am Joer 1993 ugefaang huet. Dëst ass wéinst der Tatsaach, datt de gréissten Deel vum Traffic vun den Telekomoperateuren, deen deemools existéiert huet, duerch d'US Backbone-Netz gaang ass. Also, zum Beispill, wann de Verkéier vun engem Bedreiwer a Frankräich op en Bedreiwer an Däitschland gaang ass, ass et fir d'éischt vu Frankräich an d'USA gaang, an eréischt duerno vun den USA an Däitschland. De Backbone Reseau huet an dësem Fall als Transit tëscht Frankräich an Däitschland gehandelt. Och de Verkéier an engem Land ass dacks net direkt gaang, mee duerch d'Backbone Netzwierker vun den amerikanesche Betreiber.

Dësen Zoustand beaflosst net nëmmen d'Käschte fir den Transitverkéier ze liwweren, awer och d'Qualitéit vun de Kanäl a Verspéidungen. D'Zuel vun den Internetbenotzer ass eropgaang, nei Betreiber erschéngen, de Volume vum Traffic ass eropgaang, an den Internet reift. Opérateuren ronderëm d'Welt hunn ugefaang ze realiséieren datt eng méi rational Approche fir d'Interoperateur Interaktioun ze organiséieren néideg war. "Firwat soll ech, Bedreiwer A, den Transit duerch en anert Land bezuelen, fir de Bedreiwer B ze liwweren, deen op der nächster Strooss läit?" Dat ass ongeféier d'Fro déi d'Telekomoperateure sech deemools gestallt hunn. Also hunn de Verkéiersaustauschpunkten a verschiddenen Deeler vun der Welt op Bedreiwer Konzentratiounspunkte ugefaang:

  • 1994 - LINX zu London,
  • 1995 - DE-CIX zu Frankfurt,
  • 1995 - MSK-IX, zu Moskau, etc.

Internet an eis Deeg

Konzeptuell besteet d'Architektur vum modernen Internet aus villen autonomen Systemer (AS) a ville Verbindungen tëscht hinnen, souwuel kierperlech wéi logesch, déi de Wee vum Traffic vun engem AS an en aneren bestëmmen.

ASs sinn normalerweis Telekomoperateuren, Internet Ubidder, CDNs, Datenzenteren, an Enterprise Segmentfirmen. ASes organiséieren logesch Verbindungen (peering) ënner sech, normalerweis mam BGP Protokoll.

Wéi autonom Systemer dës Verbindungen organiséieren gëtt vun enger Rei vu Faktoren festgeluegt:

  • geographesch,
  • wirtschaftlech,
  • politesch,
  • Accorden a gemeinsam Interesse tëscht AS Besëtzer,
  • an esou weider.

Natierlech huet dëst Schema eng gewësse Struktur an Hierarchie. Also sinn d'Bedreiwer an Tier-1, Tier-2 an Tier-3 opgedeelt, a wann d'Clientë fir e lokalen Internetprovider (Tier-3) normalerweis normal Benotzer sinn, dann zum Beispill fir Tier-1 Niveau Opérateuren d'Clientë sinn aner Opérateuren. Tier-3 Betreiber aggregéiert de Traffic vun hiren Abonnenten, Tier-2 Telekombetreiber, am Tour, aggregéiert de Traffic vun Tier-3 Betreiber, an Tier-1 - all Internetverkéier.

Schematesch kann et esou duergestallt ginn:

Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX
Dëst Bild weist datt de Verkéier vun ënnen no uewen aggregéiert ass, d.h. vun Endbenotzer bis Tier-1 Bedreiwer. Et gëtt och en horizontalen Austausch vu Verkéier tëscht ASen déi ongeféier gläichwäerteg matenee sinn.

En integralen Deel a gläichzäiteg en Nodeel vun dësem Schema ass eng gewëssen Duercherneen vu Verbindungen tëscht autonome Systemer, déi méi no beim Endverbraucher sinn, an engem geographesche Gebitt. Bedenkt d'Bild hei drënner:

Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX

Loosst eis dovun ausgoen datt et an enger grousser Stad 5 Telekomoperateuren sinn, peering tëscht deenen, aus engem oder anere Grond, organiséiert ass wéi uewen gewisen.

Wann de Benotzer Petya, verbonne mam Go ISP, wëll Zougang zu engem Server verbonne mat dem ASM Provider, da gëtt de Verkéier tëscht hinnen gezwongen duerch 5 autonom Systemer ze passéieren. Dëst vergréissert d'Verspéidung well d'Zuel vun de Reseau Apparater duerch déi de Verkéier geet erop, wéi och de Volume vun Transitstreck Verkéier op autonom Systemer tëscht Go an ASM.

Wéi d'Zuel vun den Transit ASs ze reduzéieren, déi de Verkéier gezwongen ass duerchzegoen? Dat ass richteg - Verkéiersaustauschpunkt.

Haut gëtt d'Entstoe vun neien IXPs duerch déiselwecht Bedierfnesser gedriwwen wéi an de fréien 90er-2000er, nëmmen op enger méi klenger Skala, als Äntwert op d'Erhéijung vun den Telekomoperateuren, Benotzer a Verkéier, déi wuessend Quantitéit un Inhalt generéiert vun CDN Netzwierker an Daten Zentren.

Wat ass en Austauschpunkt?

E Verkéiersaustauschpunkt ass eng Plaz mat enger spezieller Netzwierkinfrastruktur, wou Participanten, déi am géigesäitege Trafficaustausch interesséiert sinn, géigesäitege Peering organiséieren. D'Haaptrei Participanten vun Verkéier Austausch Punkten: Telecom Opérateuren, Internet Ubidder, Inhalt Provider an Daten Zentren. Bei Verkéiersaustauschpunkte verbannen d'Participanten direkt mateneen. Dëst erlaabt Iech déi folgend Problemer ze léisen:

  • latency reduzéieren,
  • d'Quantitéit vum Transitverkéier reduzéieren,
  • optimiséieren Routing tëscht AS.

Bedenkt datt IXPs a ville grousse Stied ronderëm d'Welt präsent sinn, huet dëst alles e positiven Effekt op den Internet als Ganzt.

Wann déi uewe genannte Situatioun mam Petya mat IXP geléist gëtt, da wäert et esou erauskommen:

Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX

Wéi funktionéiert e Verkéiersaustauschpunkt?

Als Regel ass en IXP eng separat AS mat engem eegene Block vun ëffentlechen IPv4/IPv6 Adressen.

Den IXP Netz besteet meeschtens aus engem kontinuéierleche L2 Domain. Heiansdo ass dëst einfach e VLAN deen all IXP Clienten hält. Wann et ëm méi grouss, geographesch verdeelt IXPs geet, kënnen Technologien wéi MPLS, VXLAN, etc., benotzt ginn fir en L2 Domain z'organiséieren.

IXP Elementer

  • SKS. Et gëtt näischt ongewéinlech hei: Racken, optesch Cross-Connects, Patch Panels.
  • Schalter - d'Basis vun IXP. De Schalterhafen ass den Entrée an den IXP Netz. Schalter maachen och en Deel vun de Sécherheetsfunktiounen - si filteren de Junkverkéier deen net am IXP Netz soll sinn. Als Regel, Schalter sinn ausgewielt baséiert op funktionell Ufuerderunge - Zouverlässegkeet, ënnerstëtzt Port Geschwindegkeet, Sécherheet Fonctiounen, sFlow Ënnerstëtzung, etc.
  • Route Server (RS) - en integralen an noutwendegen Deel vun all modernen Verkéiersaustauschpunkt. De Prinzip vun der Operatioun ass ganz ähnlech wéi de Routerreflektor an iBGP oder dem designéierte Router an OSPF a léist déiselwecht Probleemer. Wéi d'Zuel vun de Participanten an engem Verkéiersaustauschpunkt wiisst, erhéicht d'Zuel vun de BGP Sessiounen, déi all Participant muss ënnerstëtzen, d.h. dëst erënnert un déi klassesch Vollmesh Topologie an iBGP. RS léist de Problem op déi folgend Manéier: et stellt eng BGP Sessioun mat all interesséierten IXP Participant, an dee Participant gëtt en RS Client. Kritt e BGP Update vun engem vu senge Clienten, RS schéckt dësen Update un all seng aner Clienten, natierlech, mat Ausnam vun deem aus deem dësen Update kritt gouf. Also eliminéiert RS de Besoin fir e Vollmesh tëscht all IXP Memberen z'etabléieren an elegant de Skalierbarkeetproblem léist. Et ass derwäert ze notéieren datt de Routeserver transparent Strecken vun engem AS an en anert iwwerdréit ouni Ännerungen un den Attributer ze maachen, déi vu BGP iwwerdroe ginn, zum Beispill, et füügt d'Zuel a sengem AS net un den AS-Wee. Och op RS gëtt et Basisfilter vu Strecken: zum Beispill, RS akzeptéiert net Martians Netzwierker an d'Präfixe vum IXP selwer.

    En Open Source Software Router, BIRD (Vogel Internet Routing Daemon), gëtt dacks als Route Server Léisung benotzt. Déi gutt Saach doriwwer ass datt et gratis ass, séier op déi meescht Linux Verdeelungen ofsetzt, e flexibele Mechanismus huet fir Routing-/Filterpolitiken opzestellen an net op Rechenressourcen erfuerderlech ass. Och eng Hardware / virtuell Router aus Cisco, Juniper, etc.. kann als RS ausgewielt ginn.

  • Sécherheet. Well en IXP Netz eng Konzentratioun vun enger grousser Zuel vun ASen ass, muss d'Sécherheetspolitik déi all Participanten verfollegen muss gutt geschriwwe sinn. Am Allgemengen, all déiselwecht Mechanismen, déi gëllen wann Dir e BGP-Adjacency tëscht zwee separate BGP-Peer ausserhalb vun engem IXP opstellt, gëllen hei, plus e puer zousätzlech Sécherheetsfeatures.

    Zum Beispill ass et gutt Praxis fir de Verkéier nëmme vun enger spezifescher Mac Adress vum IXP Participant z'erméiglechen, déi am Viraus ausgehandelt gëtt. Verleegnen Traffic mat Ethertype Felder aner wéi 0x0800 (IPv4), 0x08dd (IPv6), 0x0806 (ARP); dat gëtt gemaach fir den Traffic auszefilteren deen net an de BGP Peering gehéiert. Mechanismen wéi GTSM, RPKI, etc.

Vläicht déi uewendriwwer sinn d'Haaptkomponente vun all IXP, onofhängeg vun der Skala. Natierlech kënne méi grouss IXPs zousätzlech Technologien a Léisungen op der Plaz hunn.
Et geschitt datt IXP och seng Participanten zousätzlech Servicer ubitt:

  • op den IXP TLD DNS Server gesat,
  • Hardware NTP Server installéieren, wat d'Participanten erlaabt d'Zäit präzis ze synchroniséieren,
  • bidden Schutz géint DDoS Attacken, etc.

Wéi se funktionéiert

Loosst eis op de Prinzip vun der Operatioun vun engem Verkéiersaustauschpunkt kucken, andeems Dir d'Beispill vun engem einfachen IXP benotzt, mat EVE-NG modelléiert, a betruecht dann d'Basiskonfiguratioun vun engem BIRD Software Router. Fir d'Diagramm ze vereinfachen, wäerte mir sou wichteg Saachen wéi Redundanz a Feelertoleranz ausgoen.

D'Netzwierktopologie gëtt an der Figur hei ënnen gewisen.

Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX

Loosst eis unhuelen datt mir e klengen Austauschpunkt verwalten an déi folgend Peeringoptiounen ubidden:

  • ëffentlech Peering,
  • Privatsphär,
  • peering iwwer Route Server.

Eis AS Nummer ass 555, mir besëtzen e Block vun IPv4 Adressen - 50.50.50.0/24, aus deem mir IP Adresse erausginn fir déi, déi mat eisem Netz verbannen wëllen.

50.50.50.254 - IP Adress konfiguréiert op der Route Server Interface, mat dëser IP Clienten wäert eng BGP Sëtzung am Fall vun Peering via RS etabléieren.

Och, fir Peering iwwer RS, hu mir eng einfach Routing Politik baséiert op der BGP Gemeinschaft entwéckelt, déi IXP Participanten erlaabt ze regléieren op wien a wéi eng Strecken ze schécken:

BGP Communautéit
Beschreiwung

LOCAL_AS:PEER_AS
Schéckt Präfixe nëmmen op PEER_AS

LOCAL_AS:IXP_AS
Transfert Präfixe fir all IXP Participanten

3 Clientë wëllen un eisem IXP konnektéieren an de Verkéier austauschen; Loosst eis soen datt dëst Internet Ubidder sinn. Si wëllen all Peering duerch e Routeserver organiséieren. Drënner ass en Diagramm mat Client Verbindung Parameteren:

Client
Client AS Nummer
Client ugekënnegt Präfixe
IP Adress un de Client ausgestallt fir un den IXP ze verbannen

ISP #1
AS 100 virgestallt
1.1.0.0/16
50.50.50.10/24

ISP #2
AS 200 virgestallt
2.2.0.0/16
50.50.50.20/24

ISP #3
AS 300 virgestallt
3.3.0.0/16
50.50.50.30/24

Basis BGP Setup um Client Router:

router bgp 100
 no bgp enforce-first-as
 bgp log-neighbor-changes
 neighbor 50.50.50.254 remote-as 555
address-family ipv4
  network 1.1.0.0 mask 255.255.0.0
  neighbor 50.50.50.254 activate
  neighbor 50.50.50.254 send-community both
  neighbor 50.50.50.254 soft-reconfiguration inbound
  neighbor 50.50.50.254 route-map ixp-out out
 exit-address-family

ip prefix-list as100-prefixes seq 5 permit 1.1.0.0/16
route-map bgp-out permit 10
 match ip address prefix-list as100-prefixes
 set community 555:555

Et ass derwäert de no bgp enforce-first-as Astellung hei ze notéieren. Par défaut erfuerdert BGP datt den as-Wee vun engem empfangenen BGP Update d'as bgp Nummer vum Peer enthält, aus deem den Update kritt gouf. Awer well de Routeserver keng Ännerungen am as-path mécht, wäert seng Nummer net am as-path sinn an d'Aktualiséierung gëtt verworf. Dës Astellung gëtt benotzt fir de Router dës Regel ze ignoréieren.

Mir gesinn och datt de Client bgp Gemeinschaft 555:555 op dëse Präfix gesat huet, wat no eiser Politik bedeit datt de Client dëse Präfix fir all aner Participanten wëll annoncéieren.

Fir Router vun anere Clienten wäerten d'Astellunge ähnlech sinn, mat Ausnam vun hiren eenzegaartege Parameteren.

Beispill BIRD Konfiguratioun:

define ixp_as = 555;
define ixp_prefixes = [ 50.50.50.0/24+ ];

template bgp RS_CLIENT {
  local as ixp_as;
  rs client;
}

Déi folgend beschreift e Filter deen net Martians Präfixe akzeptéiert, souwéi d'Präfixe vum IXP selwer:

function catch_martians_and_ixp()
prefix set martians;
prefix set ixp_prefixes;
{
  martians = [ 
  0.0.0.0/8+,
  10.0.0.0/8+,
  100.64.0.0/10+,
  127.0.0.0/8+,
  169.254.0.0/16+,
  172.16.0.0/12+,
  192.0.0.0/24+,
  192.0.2.0/24+,
  192.168.0.0/16+,
  198.18.0.0/15+,
  198.51.100.0/24+,
  203.0.113.0/24+,
  224.0.0.0/4+,
  240.0.0.0/4+ ];

  if net ~ martians || net ~ ixp_prefixes then return false;

  return true;
}

Dës Funktioun implementéiert d'Routing Politik déi mir virdru beschriwwen hunn.

function bgp_ixp_policy(int peer_as)
{
  if (ixp_as, ixp_as) ~ bgp_community then return true;
  if (ixp_as, peer_as) ~ bgp_community then return true;

  return false;
}

filter reject_martians_and_ixp
{
  if catch_martians_and_ixp() then reject;
  if ( net ~ [0.0.0.0/0{25,32} ] ) then {
    reject;
  }
  accept;


}

Mir konfiguréieren Peering, applizéieren entspriechend Filteren a Politiken.

protocol as_100 from RS_CLIENT {
  neighbor 50.50.50.10 as 100;
  ipv4 {
    export where bgp_ixp_policy(100);
    import filter reject_martians_and_ixp;
  }
}

protocol as_200 from RS_CLIENT {
  neighbor 50.50.50.20 as 200;
  ipv4 {
    export where bgp_ixp_policy(200);
    import filter reject_martians_and_ixp;
  }
}

protocol as_300 from RS_CLIENT {
  neighbor 50.50.50.30 as 300;
  ipv4 {
    export where bgp_ixp_policy(300);
    import filter reject_martians_and_ixp;
  }
}

Et ass derwäert ze notéieren datt et op engem Routeserver gutt ass fir Strecken vu verschiddene Peer a verschidde RIBs ze setzen. BIRD erlaabt Iech dëst ze maachen. An eisem Beispill, fir Einfachheet, all Aktualiséierungen, déi vun alle Cliente kritt ginn, ginn op eng gemeinsam RIB bäigefüügt.

Also, loosst eis kucken wat mir hunn.

Um Route Server gesi mir datt eng BGP Sessioun mat allen dräi Clienten etabléiert ass:

Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX

Mir gesinn datt mir Präfixe vun alle Cliente kréien:

Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX

Op den als 100 Router gesi mir datt wann et nëmmen eng BGP Sessioun mam Routeserver gëtt, mir Präfixe vu béiden 200 an als 300 kréien, während d'BGP Attributer net geännert hunn, wéi wann d'Peering tëscht Clienten direkt duerchgefouert gouf:

Verkéier Austausch Punkt: vun Originen ze schafen Är eege IX

Also gesi mir datt d'Präsenz vun engem Routeserver d'Organisatioun vum Peering op der IXP staark vereinfacht.

Ech hoffen datt dës Demonstratioun Iech gehollef huet besser ze verstoen wéi IXPs funktionnéieren a wéi de Routeserver op engem IXP funktionnéiert.

Linxdatacenter IX

Am Linxdatacenter hu mir eisen eegene IXP gebaut op Basis vun enger Feelertolerant Infrastruktur vun 2 Schalteren an 2 Routeserveren. Eis IXP leeft elo am Testmodus, a mir invitéieren jiddereen op Linxdatacenter IX ze verbannen an un Testen deelzehuelen. Wann Dir ugeschloss hutt, kritt Dir e Port mat enger Bandbreedung vun 1 Gbit / s, d'Fäegkeet fir duerch eise Routeserver ze peeren, souwéi Zougang zu Ärem perséinleche Kont vum IX Portal, verfügbar op ix.linxdatacenter.com.

Schreift a Kommentarer oder privat Messagen fir Zougang zum Test ze kréien.

Konklusioun

Verkéiersaustauschpunkte sinn am Sonnenopgang vum Internet entstanen als Tool fir d'Fro vum suboptimale Verkéiersfloss tëscht Telekomoperateuren ze léisen. Elo, mat dem Advent vun neie globale Servicer an enger Erhéijung vun der Quantitéit vum CDN-Traffic, Austauschpunkte weider fir d'Operatioun vum globalen Netzwierk ze optimiséieren. D'Erhéijung vun der Unzuel vun IXPs op der Welt profitéiert souwuel den Endbenotzer vum Service wéi och Telekomoperateuren, Inhaltsbedreiwer, etc. Fir IXP Participanten ass de Benefice ausgedréckt an d'Reduktioun vun de Käschte fir extern Peering z'organiséieren, d'Reduktioun vum Betrag vum Traffic fir dee méi héije Bedreiwer musse bezuelen, d'Routing optimiséieren an d'Fäegkeet fir en direkten Interface mat Inhaltsbedreiwer ze hunn.

Nëtzlech Adressen

Source: will.com

Setzt e Commentaire