Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe

Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe

"Kita nyiyapake sambungan telpon antarane kita lan wong lanang ing SRI ...", Kleinrock ... ngandika ing wawancara:
"Kita ngetik L lan takon ing telpon, "Apa sampeyan ndeleng L?"
"Ya, kita ndeleng L," wangsulane.
"Kita ngetik O, lan takon, "Apa sampeyan ndeleng O?"
"Ya, kita ndeleng O."
"Banjur kita ngetik G, lan sistem nabrak"...

Nanging revolusi wis diwiwiti ...

Wiwitane internet.


ВсСм ΠŸΡ€ΠΈΠ²Π΅Ρ‚!

Jenengku Alexander, aku insinyur jaringan ing Linxdatacenter. Ing artikel dina iki, kita bakal ngomong babagan titik ijol-ijolan lalu lintas (Internet Exchange Points, IXP): apa sing sadurunge katon, tugas apa sing diatasi lan cara dibangun. Uga ing artikel iki aku bakal nduduhake prinsip operasi IXP nggunakake platform EVE-NG lan router piranti lunak BIRD, supaya sampeyan duwe pangerten babagan cara kerjane "ing hood".

Sawetara sejarah

Yen sampeyan ndeleng kene, banjur sampeyan bisa ndeleng manawa wutah kanthi cepet ing jumlah titik ijol-ijolan lalu lintas diwiwiti ing taun 1993. Iki amarga kasunyatan sing umume lalu lintas operator telekomunikasi sing ana ing wektu kasebut liwat jaringan backbone AS. Dadi, contone, nalika lalu lintas pindhah saka operator ing Prancis menyang operator ing Jerman, mula saka Prancis menyang Amerika Serikat, lan mung saka Amerika Serikat menyang Jerman. Jaringan backbone ing kasus iki tumindak minangka transit antarane Prancis lan Jerman. Malah lalu lintas ing sawijining negara asring ora liwati langsung, nanging liwat jaringan tulang punggung operator Amerika.

Kahanan iki ora mung kena pengaruh biaya kiriman lalu lintas transit, nanging uga kualitas saluran lan telat. Jumlah pangguna Internet tambah akeh, operator anyar muncul, volume lalu lintas tambah akeh, lan Internet wis diwasa. Operator ing saindenging jagad wiwit ngerti manawa pendekatan sing luwih rasional kanggo ngatur interaksi antar operator dibutuhake. "Yagene aku, operator A, kudu mbayar transit liwat negara liya supaya bisa ngirim lalu lintas menyang operator B, sing ana ing dalan sabanjure?" Iki kira-kira pitakonan operator telekomunikasi ing wektu iku. Mangkono, titik ijol-ijolan lalu lintas wiwit katon ing macem-macem wilayah ing titik konsentrasi operator:

  • 1994 - LINX ing London,
  • 1995 - DE-CIX ing Frankfurt,
  • 1995 - MSK-IX, ing Moskow, lsp.

Internet lan dina kita

Secara konseptual, arsitektur Internet modern kasusun saka akeh sistem otonom (AS) lan akeh sambungan ing antarane, fisik lan logis, sing nemtokake jalur lalu lintas saka siji AS menyang AS liyane.

AS biasane operator telekomunikasi, panyedhiya Internet, CDN, pusat data, lan perusahaan segmen perusahaan. ASes ngatur sambungan logis (peering) antarane piyambak, biasane nggunakake protokol BGP.

Cara sistem otonom ngatur sambungan kasebut ditemtokake dening sawetara faktor:

  • geografis,
  • ekonomi,
  • politik,
  • persetujuan lan kapentingan umum antarane pemilik AS,
  • lan liya-liyane.

Mesthi, skema iki nduweni struktur lan hirarki tartamtu. Mangkono, operator dipΓ©rang dadi tier-1, tier-2 lan tier-3, lan yen klien kanggo panyedhiya Internet lokal (tier-3), minangka aturan, pangguna biasa, banjur, contone, kanggo tier-1. operator level klien minangka operator liyane. Operator Tier-3 nglumpukake lalu lintas pelanggan, operator telekomunikasi tier-2, banjur nglumpukake lalu lintas operator tier-3, lan tier-1 - kabeh lalu lintas Internet.

Skema bisa diwakili kaya mangkene:

Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe
Gambar iki nuduhake yen lalu lintas dikumpulake saka ngisor menyang ndhuwur, yaiku. saka pangguna pungkasan nganti operator tier-1. Ana uga ijol-ijolan lalu lintas horisontal antarane AS sing kira-kira padha karo siji liyane.

Bagean integral lan ing wektu sing padha kerugian saka skema iki minangka kebingungan tartamtu saka sambungan antarane sistem otonom sing luwih cedhak karo pangguna pungkasan, ing wilayah geografis. Coba gambar ing ngisor iki:

Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe

Ayo dadi nganggep yen ing kutha gedhe ana 5 operator telekomunikasi, peering antarane kang, kanggo siji utawa alesan liyane, diatur kaya ing ndhuwur.

Yen pangguna Petya, disambungake menyang ISP Go, pengin ngakses server sing disambungake menyang panyedhiya ASM, banjur lalu lintas ing antarane dheweke bakal dipeksa ngliwati 5 sistem otonom. Iki nambah wektu tundha amarga jumlah piranti jaringan sing bakal dadi lalu lintas mundhak, uga volume lalu lintas transit ing sistem otonom antarane Go lan ASM.

Kepiye cara nyuda jumlah AS transit sing kudu dilewati lalu lintas? Sing bener - titik ijol-ijolan lalu lintas.

Dina iki, munculΓ© IXPs anyar didorong dening kabutuhan sing padha kaya ing awal 90-an-2000-an, mung ing skala sing luwih cilik, kanggo nanggepi tambah akeh operator telekomunikasi, pangguna lan lalu lintas, tambah akeh konten sing digawe dening jaringan CDN. lan pusat data.

Apa iku exchange point?

Titik ijol-ijolan lalu lintas minangka papan kanthi infrastruktur jaringan khusus ing ngendi para peserta sing kasengsem ing pertukaran lalu lintas bebarengan ngatur peering bebarengan. Peserta utama titik ijol-ijolan lalu lintas: operator telekomunikasi, panyedhiya Internet, panyedhiya konten lan pusat data. Ing titik ijol-ijolan lalu lintas, peserta nyambung langsung karo saben liyane. Iki ngidini sampeyan ngatasi masalah ing ngisor iki:

  • nyuda latensi,
  • nyuda jumlah lalu lintas transit,
  • ngoptimalake nuntun antarane AS.

Ngelingi manawa IXP ana ing pirang-pirang kutha gedhe ing saindenging jagad, kabeh iki duwe pengaruh sing migunani ing Internet kanthi wutuh.

Yen kahanan ing ndhuwur karo Petya ditanggulangi nggunakake IXP, bakal katon kaya iki:

Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe

Kepiye cara kerja titik ijol-ijolan lalu lintas?

Minangka aturan, IXP minangka AS sing kapisah kanthi blok alamat IPv4/IPv6 umum.

Jaringan IXP paling asring dumadi saka domain L2 sing terus-terusan. Kadhangkala iki mung VLAN sing dadi tuan rumah kabeh klien IXP. Nalika nerangake luwih gedhe, IXPs geografis mbagekke, teknologi kayata MPLS, VXLAN, etc.. bisa digunakake kanggo ngatur domain L2.

unsur IXP

  • SKS. Ora ana sing ora biasa ing kene: rak, sambungan silang optik, panel tembelan.
  • Ngalih - dhasar IXP. Port switch minangka titik entri menyang jaringan IXP. Ngalih uga nindakake bagean saka fungsi keamanan - nyaring lalu lintas sampah sing ora ana ing jaringan IXP. Minangka aturan, saklar dipilih adhedhasar syarat fungsional - linuwih, kecepatan port sing didhukung, fitur keamanan, dhukungan sFlow, lsp.
  • Server rute (RS) – bagean integral lan perlu saka sembarang titik ijol-ijolan lalu lintas modern. Prinsip operasi meh padha karo reflektor rute ing iBGP utawa router sing ditunjuk ing OSPF lan ngrampungake masalah sing padha. Minangka nomer peserta ing titik ijol-ijolan lalu lintas mundak akeh, nomer sesi BGP sing saben peserta perlu kanggo ndhukung mundhak, i.e. iki kaya topologi full-mesh klasik ing iBGP. RS ngatasi masalah kasebut kanthi cara ing ngisor iki: nggawe sesi BGP karo saben peserta IXP sing kasengsem, lan peserta kasebut dadi klien RS. Nampa nganyari BGP saka salah sawijining klien, RS ngirim nganyari iki menyang kabeh klien liyane, mesthi, kajaba sing nganyari iki ditampa. Mangkono, RS ngilangi kabutuhan kanggo nggawe bolong lengkap antarane kabeh anggota IXP lan kanthi elegan ngrampungake masalah skalabilitas. Wigati dicathet menawa server rute kanthi transparan ngirim rute saka siji AS menyang liyane tanpa owah-owahan ing atribut sing ditularake dening BGP, contone, ora nambah nomer ing AS menyang AS-path. Uga ing RS ana panyaring dhasar rute: contone, RS ora nampa jaringan Martians lan awalan saka IXP dhewe.

    Router piranti lunak open source, BIRD (daemon routing internet manuk), asring digunakake minangka solusi server rute. Sing apik babagan iki yaiku gratis, nyebar kanthi cepet ing paling distribusi Linux, duwe mekanisme fleksibel kanggo nyetel kabijakan rute / nyaring, lan ora nuntut sumber daya komputasi. Uga, hardware / router virtual saka Cisco, Juniper, etc.. bisa dipilih minangka RS.

  • Keamanan. Amarga jaringan IXP minangka konsentrasi saka akeh AS, kabijakan keamanan sing kudu ditindakake kabeh peserta kudu ditulis kanthi apik. UmumΓ©, kabeh mekanisme sing padha ditrapake nalika netepake BGP adjacency antarane loro BGP ora pati cetho ing njaba IXP aplikasi kene, plus sawetara fitur keamanan tambahan.

    Contone, iku laku apik kanggo ngidini lalu lintas mung saka alamat mac tartamtu saka peserta IXP, kang rembugan ing advance. Nolak lalu lintas nganggo kolom ethertype liyane saka 0x0800(IPv4), 0x08dd(IPv6), 0x0806(ARP); iki rampung supaya nyaring metu lalu lintas sing ora kagungane ing BGP peering. Mekanisme kayata GTSM, RPKI, lan liya-liyane uga bisa digunakake.

Mbokmenawa ing ndhuwur minangka komponen utama IXP, preduli saka skala. Mesthine, IXP sing luwih gedhe bisa uga duwe teknologi lan solusi tambahan.
Iku kedadeyan yen IXP uga nyedhiyakake layanan tambahan kanggo para peserta:

  • diselehake ing server DNS IXP TLD,
  • nginstal server NTP hardware, supaya peserta bisa nyinkronake wektu kanthi akurat,
  • menehi pangayoman marang serangan DDoS, etc.

Cara kerjane

Ayo goleki prinsip operasi titik ijol-ijolan lalu lintas nggunakake conto IXP sing prasaja, dimodelake nggunakake EVE-NG, banjur nimbang persiyapan dhasar router piranti lunak BIRD. Kanggo nyederhanakake diagram, kita bakal ngilangi perkara-perkara penting kaya redundansi lan toleransi fault.

Topologi jaringan ditampilake ing gambar ing ngisor iki.

Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe

Ayo nganggep yen kita ngatur titik ijol-ijolan cilik lan nyedhiyakake opsi peering ing ngisor iki:

  • penyuluhan umum,
  • pribadhi nyawang,
  • peering liwat server rute.

Nomer AS kita yaiku 555, kita duwe blok alamat IPv4 - 50.50.50.0/24, saka ngendi kita ngetokake alamat IP kanggo sing pengin nyambung menyang jaringan kita.

50.50.50.254 - alamat IP diatur ing antarmuka server rute, karo klien IP iki bakal netepake sesi BGP ing cilik saka peering liwat RS.

Uga, kanggo peering liwat RS, kita wis ngembangaken kabijakan routing prasaja adhedhasar komunitas BGP, sing ngidini peserta IXP kanggo ngatur kanggo sapa lan apa rute ngirim:

masyarakat BGP
Description

LOCAL_AS:PEER_AS
Kirimi awalan mung menyang PEER_AS

LOCAL_AS:IXP_AS
Transfer awalan menyang kabeh peserta IXP

3 klien pengin nyambung menyang IXP lan ijol-ijolan lalu lintas; Ayo kita ngomong iki panyedhiya Internet. Dheweke kabeh pengin ngatur peering liwat server rute. Ing ngisor iki diagram karo paramèter sambungan klien:

Pelanggan
Nomer AS pelanggan
Ater-ater sing diiklanake klien
Alamat IP ditanggepi kanggo klien kanggo nyambung menyang IXP

ISP #1
ing 100
1.1.0.0/16
50.50.50.10/24

ISP #2
ing 200
2.2.0.0/16
50.50.50.20/24

ISP #3
ing 300
3.3.0.0/16
50.50.50.30/24

Persiyapan BGP dhasar ing router klien:

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

Perlu dicathet yen ora ana setelan bgp enforce-first-as ing kene. Kanthi gawan, BGP mbutuhake minangka-path saka nganyari BGP ditampa ngemot nomer bgp saka peer saka kang nganyari ditampa. Nanging amarga server rute ora nggawe owah-owahan menyang as-path, nomer kasebut ora bakal ana ing as-path lan nganyari bakal dibuwang. Setelan iki digunakake kanggo nggawe router nglirwakake aturan iki.

Kita uga weruh manawa klien wis nyetel komunitas bgp 555:555 menyang awalan iki, sing miturut kabijakan kita tegese klien pengin ngiklanake awalan iki menyang kabeh peserta liyane.

Kanggo router klien liyane, setelan bakal padha, kajaba paramèter unik.

Conto konfigurasi BIRD:

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

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

Ing ngisor iki njlèntrèhaké saringan sing ora nampa awalan martians, uga awalan saka IXP dhewe:

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

Fungsi iki ngetrapake kabijakan routing sing wis diterangake sadurunge.

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;


}

Kita ngatur peering, aplikasi saringan lan kawicaksanan cocok.

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

Iku worth kang lagi nyimak sing ing server rute iku laku apik kanggo sijine rute saka ora pati cetho beda menyang RIBs beda. BIRD ngidini sampeyan nindakake iki. Ing conto kita, kanggo kesederhanaan, kabeh nganyari sing ditampa saka kabeh klien ditambahake menyang siji RIB umum.

Dadi, ayo mriksa apa sing entuk.

Ing server rute kita weruh yen sesi BGP wis ditetepake karo kabeh telung klien:

Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe

Kita weruh manawa kita nampa prefiks saka kabeh klien:

Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe

Ing router minangka 100, kita weruh yen mung ana siji sesi BGP karo server rute, kita nampa awalan saka loro minangka 200 lan 300, nalika atribut BGP ora diganti, kaya peering antarane klien wis digawa metu langsung:

Titik ijol-ijolan lalu lintas: saka asal nganti nggawe IX sampeyan dhewe

Mangkono, kita weruh manawa anane server rute nyederhanakake organisasi peering ing IXP.

Muga-muga demonstrasi iki mbantu sampeyan luwih ngerti cara kerja IXP lan cara kerja server rute ing IXP.

Linxdatacenter IX

Ing Linxdatacenter, kita mbangun IXP dhewe adhedhasar infrastruktur fault-tolerant saka 2 switch lan 2 server rute. IXP kita saiki mlaku ing mode test, lan kita ngajak kabeh wong kanggo nyambung menyang Linxdatacenter IX lan njupuk bagΓ©yan ing testing. Yen disambungake, sampeyan bakal diwenehi port kanthi bandwidth 1 Gbit / s, kemampuan kanggo ndeleng liwat server rute kita, uga akses menyang akun pribadi portal IX, kasedhiya ing ix.linxdatacenter.com.

Tulis ing komentar utawa pesen pribadi kanggo entuk akses menyang testing.

kesimpulan

Titik ijol-ijolan lalu lintas muncul nalika esuke Internet minangka alat kanggo ngatasi masalah aliran lalu lintas suboptimal antarane operator telekomunikasi. Saiki, kanthi tekane layanan global anyar lan nambah jumlah lalu lintas CDN, titik ijol-ijolan terus ngoptimalake operasi jaringan global. Tambah jumlah IXP ing donya entuk manfaat kanggo pangguna pungkasan layanan lan operator telekomunikasi, operator konten, lsp. Kanggo peserta IXP, entuk manfaat dituduhake kanggo ngurangi biaya ngatur peering eksternal, ngurangi jumlah lalu lintas sing kudu dibayar dening operator tingkat sing luwih dhuwur, ngoptimalake rute, lan kemampuan kanggo duwe antarmuka langsung karo operator konten.

link migunani

Source: www.habr.com

Add a comment