Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun

Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun

“Fe wnaethon ni sefydlu cysylltiad ffôn rhyngom ni a’r dynion yn SRI…,” meddai Kleinrock... mewn cyfweliad:
“Fe wnaethon ni deipio'r L a gofynnom ar y ffôn, “Ydych chi'n gweld yr L?”
“Ie, rydyn ni’n gweld yr L,” daeth yr ymateb.
“Fe wnaethon ni deipio’r O, a gofynnom, “Ydych chi’n gweld yr O.”
"Ie, gwelwn yr O."
“Yna fe wnaethon ni deipio'r G, a chwalodd y system”...

Ond roedd chwyldro wedi dechrau…

Dechrau'r rhyngrwyd.


Helo bawb!

Fy enw i yw Alexander, rwy'n beiriannydd rhwydwaith yn Linxdatacenter. Yn yr erthygl heddiw byddwn yn siarad am bwyntiau cyfnewid traffig (Pwyntiau Cyfnewid Rhyngrwyd, IXP): beth oedd yn rhagflaenu eu hymddangosiad, pa dasgau y maent yn eu datrys a sut y cânt eu hadeiladu. Hefyd yn yr erthygl hon byddaf yn dangos egwyddor gweithredu IXP gan ddefnyddio'r platfform EVE-NG a'r llwybrydd meddalwedd BIRD, fel bod gennych ddealltwriaeth o sut mae'n gweithio “o dan y cwfl”.

Tipyn o hanes

Os edrychwch chi yma, yna gallwch weld bod y twf cyflym yn nifer y pwyntiau cyfnewid traffig wedi dechrau ym 1993. Mae hyn oherwydd y ffaith bod y rhan fwyaf o draffig y gweithredwyr telathrebu a oedd yn bodoli ar y pryd yn mynd trwy rwydwaith asgwrn cefn yr Unol Daleithiau. Felly, er enghraifft, pan aeth traffig o weithredwr yn Ffrainc i weithredwr yn yr Almaen, aeth o Ffrainc i UDA yn gyntaf, a dim ond wedyn o UDA i'r Almaen. Roedd y rhwydwaith asgwrn cefn yn yr achos hwn yn gweithredu fel tramwyfa rhwng Ffrainc a'r Almaen. Roedd hyd yn oed traffig o fewn un wlad yn aml yn pasio nid yn uniongyrchol, ond trwy rwydweithiau asgwrn cefn gweithredwyr Americanaidd.

Roedd y sefyllfa hon yn effeithio nid yn unig ar gost cludo traffig, ond hefyd ar ansawdd sianeli ac oedi. Cynyddodd nifer y defnyddwyr Rhyngrwyd, ymddangosodd gweithredwyr newydd, cynyddodd nifer y traffig, ac aeddfedodd y Rhyngrwyd. Dechreuodd gweithredwyr ledled y byd sylweddoli bod angen dull mwy rhesymegol o drefnu rhyngweithio rhwng gweithredwyr. “Pam ddylwn i, gweithredwr A, dalu am gludiant trwy wlad arall er mwyn danfon traffig i weithredwr B, sydd wedi ei leoli ar y stryd nesaf?” Yn fras, dyma'r cwestiwn a ofynnodd gweithredwyr telathrebu iddynt eu hunain bryd hynny. Felly, dechreuodd pwyntiau cyfnewid traffig ymddangos mewn gwahanol rannau o'r byd ar bwyntiau crynhoi gweithredwyr:

  • 1994 - LINX yn Llundain,
  • 1995 - DE-CIX yn Frankfurt,
  • 1995 - MSK-IX, ym Moscow, ac ati.

Rhyngrwyd a'n dyddiau ni

Yn gysyniadol, mae pensaernïaeth y Rhyngrwyd modern yn cynnwys llawer o systemau ymreolaethol (AS) a llawer o gysylltiadau rhyngddynt, yn gorfforol ac yn rhesymegol, sy'n pennu llwybr traffig o un UG i'r llall.

Mae ASau fel arfer yn weithredwyr telathrebu, darparwyr Rhyngrwyd, CDNs, canolfannau data, a chwmnïau segment menter. Mae ASes yn trefnu cysylltiadau rhesymegol (syllu) ymhlith ei gilydd, gan ddefnyddio protocol BGP fel arfer.

Mae nifer o ffactorau’n pennu sut mae systemau ymreolaethol yn trefnu’r cysylltiadau hyn:

  • daearyddol,
  • economaidd,
  • gwleidyddol,
  • cytundebau a buddiannau cyffredin rhwng perchnogion UG,
  • ac ati

Wrth gwrs, mae gan y cynllun hwn strwythur a hierarchaeth benodol. Felly, rhennir gweithredwyr yn haen-1, haen-2 a haen-3, ac os yw'r cleientiaid ar gyfer darparwr Rhyngrwyd lleol (haen-3), fel rheol, yn ddefnyddwyr cyffredin, yna, er enghraifft, ar gyfer haen-1 gweithredwyr lefel y cleientiaid yn weithredwyr eraill. Mae gweithredwyr Haen-3 yn agregu traffig eu tanysgrifwyr, mae gweithredwyr telathrebu haen-2, yn eu tro, yn agregu traffig gweithredwyr haen-3, a haen-1 - yr holl draffig Rhyngrwyd.

Yn sgematig gellir ei gynrychioli fel hyn:

Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun
Mae’r llun hwn yn dangos bod traffig yn cael ei agregu o’r gwaelod i’r brig, h.y. o ddefnyddwyr terfynol i weithredwyr haen-1. Mae yna hefyd gyfnewidiad llorweddol o draffig rhwng ASau sydd fwy neu lai yn cyfateb i'w gilydd.

Rhan annatod ac ar yr un pryd anfantais i'r cynllun hwn yw dryswch penodol o gysylltiadau rhwng systemau ymreolaethol sydd wedi'u lleoli'n agosach at y defnyddiwr terfynol, o fewn ardal ddaearyddol. Ystyriwch y llun isod:

Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun

Gadewch i ni dybio bod yna 5 gweithredwr telathrebu mewn dinas fawr, sy'n edrych rhwng y rhain, am ryw reswm neu'i gilydd, wedi'u trefnu fel y dangosir uchod.

Os yw'r defnyddiwr Petya, sydd wedi'i gysylltu â'r Go ISP, eisiau cyrchu gweinydd sy'n gysylltiedig â'r darparwr ASM, yna bydd y traffig rhyngddynt yn cael ei orfodi i basio trwy 5 system ymreolaethol. Mae hyn yn cynyddu'r oedi oherwydd mae nifer y dyfeisiau rhwydwaith y bydd traffig yn mynd drwyddynt yn cynyddu, yn ogystal â maint y traffig cludo ar systemau ymreolaethol rhwng Go ac ASM.

Sut i leihau nifer yr ASau cludo y mae traffig yn cael eu gorfodi i fynd drwyddynt? Mae hynny'n iawn - pwynt cyfnewid traffig.

Heddiw, mae ymddangosiad IXPs newydd yn cael ei yrru gan yr un anghenion ag yn y 90au cynnar-2000au, dim ond ar raddfa lai, mewn ymateb i'r nifer cynyddol o weithredwyr telathrebu, defnyddwyr a thraffig, y swm cynyddol o gynnwys a gynhyrchir gan rwydweithiau CDN a chanolfannau data.

Beth yw pwynt cyfnewid?

Mae pwynt cyfnewid traffig yn lle gyda seilwaith rhwydwaith arbennig lle mae cyfranogwyr sydd â diddordeb mewn cyfnewid traffig cydfuddiannol yn trefnu syllu ar y cyd. Prif gyfranogwyr pwyntiau cyfnewid traffig: gweithredwyr telathrebu, darparwyr Rhyngrwyd, darparwyr cynnwys a chanolfannau data. Mewn mannau cyfnewid traffig, mae cyfranogwyr yn cysylltu'n uniongyrchol â'i gilydd. Mae hyn yn eich galluogi i ddatrys y problemau canlynol:

  • lleihau hwyrni,
  • lleihau faint o draffig cludo,
  • optimeiddio llwybro rhwng UG.

O ystyried bod IXPs yn bresennol mewn llawer o ddinasoedd mawr ledled y byd, mae hyn i gyd yn cael effaith fuddiol ar y Rhyngrwyd yn ei gyfanrwydd.

Os bydd y sefyllfa uchod gyda Petya yn cael ei datrys gan ddefnyddio IXP, bydd yn troi allan rhywbeth fel hyn:

Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun

Sut mae pwynt cyfnewid traffig yn gweithio?

Fel rheol, mae IXP yn UG ar wahân gyda'i floc ei hun o gyfeiriadau IPv4/IPv6 cyhoeddus.

Mae rhwydwaith IXP yn aml yn cynnwys parth L2 di-dor. Weithiau, yn syml, VLAN yw hwn sy'n cynnal yr holl gleientiaid IXP. O ran IXPs mwy, wedi'u dosbarthu'n ddaearyddol, gellir defnyddio technolegau fel MPLS, VXLAN, ac ati i drefnu parth L2.

Elfennau IXP

  • SKS. Nid oes dim byd anarferol yma: raciau, croesgysylltiadau optegol, paneli clwt.
  • Switsys - sail IXP. Y porthladd switsh yw'r pwynt mynediad i'r rhwydwaith IXP. Mae'r switshis hefyd yn cyflawni rhan o'r swyddogaethau diogelwch - maent yn hidlo traffig sothach na ddylai fod yn bresennol ar y rhwydwaith IXP. Fel rheol, dewisir switshis yn seiliedig ar ofynion swyddogaethol - dibynadwyedd, cyflymder porthladd â chymorth, nodweddion diogelwch, cefnogaeth sFlow, ac ati.
  • Gweinydd llwybr (RS) – rhan annatod ac angenrheidiol o unrhyw bwynt cyfnewid traffig modern. Mae'r egwyddor o weithredu yn debyg iawn i'r adlewyrchydd llwybr yn iBGP neu'r llwybrydd dynodedig yn OSPF ac mae'n datrys yr un problemau. Wrth i nifer y cyfranogwyr mewn man cyfnewid traffig gynyddu, mae nifer y sesiynau BGP y mae angen i bob cyfranogwr eu cefnogi yn cynyddu, h.y. mae hyn yn ein hatgoffa o'r dopoleg rhwyll lawn glasurol yn iBGP. Mae RS yn datrys y broblem yn y ffordd ganlynol: mae'n sefydlu sesiwn BGP gyda phob cyfranogwr IXP sydd â diddordeb, ac mae'r cyfranogwr hwnnw'n dod yn gleient RS. Gan dderbyn diweddariad BGP gan un o'i gleientiaid, mae RS yn anfon y diweddariad hwn at ei holl gleientiaid eraill, wrth gwrs, ac eithrio'r un y derbyniwyd y diweddariad hwn ohono. Felly, mae RS yn dileu'r angen i sefydlu rhwyll lawn rhwng holl aelodau IXP ac yn datrys y broblem scalability yn gain. Mae'n werth nodi bod y gweinydd llwybr yn trosglwyddo llwybrau o un UG i'r llall yn dryloyw heb wneud newidiadau i'r priodoleddau a drosglwyddir gan BGP, er enghraifft, nid yw'n ychwanegu'r rhif yn ei UG i'r llwybr UG. Hefyd ar RS mae hidlo llwybrau sylfaenol: er enghraifft, nid yw RS yn derbyn rhwydweithiau Marsiaid a rhagddodiaid yr IXP ei hun.

    Mae llwybrydd meddalwedd ffynhonnell agored, BIRD (daemon llwybro rhyngrwyd adar), yn aml yn cael ei ddefnyddio fel datrysiad gweinydd llwybr. Y peth da amdano yw ei fod yn rhad ac am ddim, yn cael ei ddefnyddio'n gyflym ar y rhan fwyaf o ddosbarthiadau Linux, mae ganddo fecanwaith hyblyg ar gyfer sefydlu polisïau llwybro / hidlo, ac nid yw'n gofyn am lawer o adnoddau cyfrifiadurol. Hefyd, gellir dewis llwybrydd caledwedd/rhithwir o Cisco, Juniper, ac ati fel RS.

  • Diogelwch. Gan fod rhwydwaith IXP yn grynodiad o nifer fawr o ASau, rhaid i'r polisi diogelwch y mae'n rhaid i bob cyfranogwr ei ddilyn fod wedi'i ysgrifennu'n dda. Yn gyffredinol, mae pob un o'r un mecanweithiau sy'n berthnasol wrth sefydlu ffin BGP rhwng dau gymar BGP ar wahân y tu allan i IXP yn berthnasol yma, ynghyd â rhai nodweddion diogelwch ychwanegol.

    Er enghraifft, mae'n arfer da caniatáu traffig yn unig o gyfeiriad mac penodol y cyfranogwr IXP, sy'n cael ei drafod ymlaen llaw. Gwadu traffig â meysydd etherteip heblaw 0x0800(IPv4), 0x08dd(IPv6), 0x0806(ARP); gwneir hyn er mwyn hidlo traffig nad yw'n perthyn i sbecian BGP. Gellir defnyddio mecanweithiau fel GTSM, RPKI, ac ati hefyd.

Efallai mai'r uchod yw prif gydrannau unrhyw IXP, waeth beth fo'i raddfa. Wrth gwrs, efallai y bydd gan IXPs mwy dechnolegau ac atebion ychwanegol ar waith.
Mae'n digwydd bod IXP hefyd yn darparu gwasanaethau ychwanegol i'w gyfranogwyr:

  • gosod ar y gweinydd DNS IXP TLD,
  • gosod gweinyddwyr NTP caledwedd, gan ganiatáu i gyfranogwyr gydamseru amser yn gywir,
  • darparu amddiffyniad rhag ymosodiadau DDoS, ac ati.

Egwyddor o weithredu

Edrychwn ar egwyddor gweithredu pwynt cyfnewid traffig gan ddefnyddio'r enghraifft o IXP syml, wedi'i fodelu gan ddefnyddio EVE-NG, ac yna ystyried gosodiad sylfaenol llwybrydd meddalwedd BIRD. I symleiddio'r diagram, byddwn yn hepgor pethau mor bwysig â dileu swyddi a goddef diffygion.

Dangosir topoleg y rhwydwaith yn y ffigur isod.

Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun

Gadewch i ni dybio ein bod yn gweinyddu pwynt cyfnewid bach ac yn darparu'r opsiynau syllu canlynol:

  • syllu cyhoeddus,
  • syllu preifat,
  • edrych trwy weinydd llwybr.

Ein rhif UG yw 555, rydym yn berchen ar floc o gyfeiriadau IPv4 - 50.50.50.0/24, ac oddi yno rydym yn cyhoeddi cyfeiriadau IP ar gyfer y rhai sydd am gysylltu â'n rhwydwaith.

50.50.50.254 - Cyfeiriad IP wedi'i ffurfweddu ar ryngwyneb y gweinydd llwybr, gyda'r IP hwn bydd cleientiaid yn sefydlu sesiwn BGP rhag ofn y byddant yn edrych trwy RS.

Hefyd, ar gyfer sbecian trwy RS, rydym wedi datblygu polisi llwybro syml yn seiliedig ar y gymuned BGP, sy'n caniatáu i gyfranogwyr IXP reoleiddio at bwy ac at ba lwybrau i'w hanfon:

cymuned BGP
Disgrifiad

LOCAL_AS:PEER_AS
Anfon rhagddodiaid i PEER_AS yn unig

LOCAL_AS: IXP_AS
Trosglwyddo rhagddodiaid i holl gyfranogwyr IXP

Mae 3 cleient eisiau cysylltu â'n IXP a chyfnewid traffig; Gadewch i ni ddweud mai darparwyr Rhyngrwyd yw'r rhain. Maen nhw i gyd eisiau trefnu sbecian trwy weinydd llwybr. Isod mae diagram gyda pharamedrau cysylltiad cleient:

Cwsmer
Rhif UG y cwsmer
Cleient yn hysbysebu rhagddodiaid
Cyfeiriad IP a roddwyd i'r cleient i gysylltu â'r IXP

ISP #1
AS 100
1.1.0.0/16
50.50.50.10/24

ISP #2
AS 200
2.2.0.0/16
50.50.50.20/24

ISP #3
AS 300
3.3.0.0/16
50.50.50.30/24

Gosodiad BGP sylfaenol ar lwybrydd y cleient:

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

Mae'n werth nodi'r gosodiad dim gorfodi-yn-gyntaf fel bgp yma. Yn ddiofyn, mae BGP yn ei gwneud yn ofynnol i fel-lwybr diweddariad BGP a dderbyniwyd gynnwys y rhif fel bgp y cymheiriaid y derbyniwyd y diweddariad ohono. Ond gan nad yw'r gweinydd llwybr yn gwneud newidiadau i'r llwybr fel, ni fydd ei rif yn yr as-path a bydd y diweddariad yn cael ei daflu. Defnyddir y gosodiad hwn i wneud i'r llwybrydd anwybyddu'r rheol hon.

Rydym hefyd yn gweld bod y cleient wedi gosod cymuned bgp 555:555 i'r rhagddodiad hwn, sydd yn ôl ein polisi yn golygu bod y cleient am hysbysebu'r rhagddodiad hwn i'r holl gyfranogwyr eraill.

Ar gyfer llwybryddion cleientiaid eraill, bydd y gosodiadau yn debyg, ac eithrio eu paramedrau unigryw.

Ffurfweddiad BIRD enghreifftiol:

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

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

Mae'r canlynol yn disgrifio hidlydd nad yw'n derbyn rhagddodiaid martians, yn ogystal â rhagddodiaid yr IXP ei hun:

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;
}

Mae'r swyddogaeth hon yn gweithredu'r polisi llwybro a ddisgrifiwyd gennym yn gynharach.

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;


}

Rydym yn ffurfweddu sbecian, yn defnyddio hidlwyr a pholisïau priodol.

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;
  }
}

Mae'n werth nodi ei bod yn arfer da ar weinydd llwybr i roi llwybrau o wahanol gymheiriaid mewn RIBs gwahanol. Mae BIRD yn caniatáu ichi wneud hyn. Yn ein hesiampl, er mwyn symlrwydd, mae'r holl ddiweddariadau a dderbynnir gan bob cleient yn cael eu hychwanegu at un RIB cyffredin.

Felly, gadewch i ni wirio'r hyn a gawsom.

Ar y gweinydd llwybr gwelwn fod sesiwn BGP wedi'i sefydlu gyda'r tri chleient:

Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun

Gwelwn ein bod yn derbyn rhagddodiaid gan bob cleient:

Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun

Ar y llwybrydd fel 100, gwelwn os mai dim ond un sesiwn BGP sydd gyda'r gweinydd llwybr, rydym yn derbyn rhagddodiaid o'r ddau fel 200 a 300, tra nad yw'r priodoleddau BGP wedi newid, fel pe bai sbecian rhwng cleientiaid yn cael ei wneud yn uniongyrchol:

Pwynt cyfnewid traffig: o'r gwreiddiau i greu eich IX eich hun

Felly, gwelwn fod presenoldeb gweinydd llwybr yn symleiddio trefniadaeth sbecian ar yr IXP yn fawr.

Rwy'n gobeithio bod yr arddangosiad hwn wedi eich helpu i ddeall yn well sut mae IXPs yn gweithio a sut mae'r gweinydd llwybr yn gweithio ar IXP.

Canolfan ddata IX

Yn Linxdatacenter, fe wnaethom adeiladu ein IXP ein hunain yn seiliedig ar seilwaith goddef diffygion o 2 switsh a 2 weinydd llwybr. Mae ein IXP bellach yn rhedeg yn y modd prawf, ac rydym yn gwahodd pawb i gysylltu â Linxdatacenter IX a chymryd rhan mewn profion. Pan fyddwch wedi'ch cysylltu, byddwch yn cael porthladd gyda lled band o 1 Gbit yr eiliad, y gallu i edrych trwy ein gweinyddwyr llwybr, yn ogystal â mynediad i'ch cyfrif personol o'r porth IX, sydd ar gael yn ix.linxdatacenter.com.

Ysgrifennwch sylwadau neu negeseuon preifat i gael mynediad at brofion.

Allbwn

Cododd pwyntiau cyfnewid traffig ar doriad gwawr y Rhyngrwyd fel arf ar gyfer datrys mater llif traffig is-optimaidd rhwng gweithredwyr telathrebu. Nawr, gyda dyfodiad gwasanaethau byd-eang newydd a chynnydd yn nifer y traffig CDN, mae pwyntiau cyfnewid yn parhau i wneud y gorau o weithrediad y rhwydwaith byd-eang. Mae'r cynnydd yn nifer yr IXPs yn y byd o fudd i ddefnyddiwr terfynol y gwasanaeth a gweithredwyr telathrebu, gweithredwyr cynnwys, ac ati. Ar gyfer cyfranogwyr IXP, mynegir y fantais o leihau costau trefnu sbecian allanol, lleihau faint o draffig y mae'n rhaid i weithredwyr lefel uwch dalu amdano, optimeiddio llwybro, a'r gallu i gael rhyngwyneb uniongyrchol â gweithredwyr cynnwys.

Dolenni defnyddiol

Ffynhonnell: hab.com

Ychwanegu sylw