True Internet Channel Summation - OpenMPTCPRouter

True Internet Channel Summation - OpenMPTCPRouter

Er hægt að sameina nokkrar netrásir í eina? Það eru margar ranghugmyndir og goðsagnir í kringum þetta efni; jafnvel reyndir netverkfræðingar vita oft ekki að þetta er mögulegt. Í flestum tilfellum er tengisöfnun ranglega kölluð jafnvægi á NAT-stigi eða bilun. En raunveruleg samantekt leyfir ræstu eina TCP tengingu samtímis yfir allar netrásirtd myndbandsútsendingar þannig að ef einhver af netrásunum er truflað verður útsendingin ekki rofin.

Það eru til dýrar viðskiptalausnir fyrir myndbandsútsendingar, en slík tæki kosta marga kílódala. Greinin lýsir því hvernig á að stilla ókeypis, opna OpenMPTCPRouter pakkann og fjallar um vinsælar goðsagnir um samantekt rása.

Goðsögn um samantekt rása

Það eru margir heimabeini sem styðja Multi-WAN aðgerðina. Stundum kalla framleiðendur þessa rás samantekt, sem er ekki alveg satt. Margir netverjar telja að auk þess LACP og samantekt á L2 laginu, engin önnur rásarsamsöfnun er til. Ég heyrði oft að þetta væri almennt ómögulegt frá fólki sem vinnur í fjarskiptum. Þess vegna skulum við reyna að skilja vinsælar goðsagnir.

Jafnvægi á IP-tengingarstigi

Þetta er hagkvæmasta og vinsælasta leiðin til að nota nokkrar netrásir á sama tíma. Til einföldunar skulum við ímynda okkur að þú sért með þrjár netveitur, sem hver gefur þér alvöru IP tölu frá sínu neti. Allar þessar veitur eru tengdar við beini sem styður Multi-WAN aðgerðina. Þetta gæti verið OpenWRT með mwan3 pakkanum, mikrotik, ubiquiti eða öðrum heimilisleiðum, þar sem slíkur valkostur er ekki lengur óalgengur.

Til að líkja eftir ástandinu skulum við ímynda okkur að veitendurnir hafi gefið okkur eftirfarandi heimilisföng:

WAN1 — 11.11.11.11
WAN2 — 22.22.22.22
WAN2 — 33.33.33.33

Það er að segja að tengjast ytri netþjóni example.com Í gegnum hverja þjónustuveituna mun ytri netþjónninn sjá þrjá sjálfstæða IP viðskiptavini. Jafnvægi gerir þér kleift að skipta álaginu yfir rásir og nota þær allar þrjár samtímis. Til einföldunar skulum við ímynda okkur að við deilum álaginu jafnt á milli allra rása. Þar af leiðandi, þegar viðskiptavinur opnar síðu með þremur myndum, hleður hann niður hverri mynd í gegnum sérstaka þjónustuveitu. Á síðunni lítur það út eins og tengingar frá þremur mismunandi IP-tölum.

True Internet Channel Summation - OpenMPTCPRouter
Þegar jafnvægi er á tengingarstigi fer hver TCP tenging í gegnum sérstaka þjónustuveitu.

Þessi jafnvægisstilling veldur notendum oft vandamálum. Til dæmis binda margar síður vafrakökur og tákn stranglega við IP-tölu viðskiptavinarins og ef það breytist skyndilega er beiðninni hafnað eða viðskiptavinurinn er skráður út af síðunni. Þetta er oft afritað í viðskiptabankakerfi og öðrum síðum með ströngum notendalotureglum. Hér er einfalt lýsandi dæmi: tónlistarskrár á VK.com eru aðeins fáanlegar með gildum lotulykli, sem er bundinn við IP, og viðskiptavinir sem nota slíka jafnvægisstillingu spila oft ekki hljóð vegna þess að beiðnin fór ekki í gegnum þjónustuveituna sem þingið er jafnt.

True Internet Channel Summation - OpenMPTCPRouter
Þegar straumum er hlaðið niður er jafnvægi á tengingarstigi samantekt á bandbreidd allra rása

Þessi jafnvægi gerir þér kleift að fá samantekt á hraða internetrásarinnar þegar þú notar margar tengingar. Til dæmis, ef hver af þessum þremur veitendum er með 100 megabita hraða, þá fáum við 300 megabita þegar þú hleður niður straumum. Vegna þess að straumur opnar margar tengingar, sem dreifast á milli allra veitenda og nýta að lokum alla rásina.

Það er mikilvægt að skilja að ein TCP tenging mun alltaf fara í gegnum aðeins einn þjónustuaðila. Það er að segja ef við hleðum niður einni stórri skrá í gegnum HTTP, þá verður þessi tenging gerð í gegnum eina þjónustuveituna og ef tengingin við þessa veitu rofnar, þá rofnar niðurhalið líka.

True Internet Channel Summation - OpenMPTCPRouter
Ein tenging mun alltaf nota eina netrás

Þetta á einnig við um myndbandsútsendingar. Ef þú ert að útvarpa straumspiluðu myndbandi til einhvers konar skilyrts Twitch, þá mun jafnvægi á stigi IP-tenginga ekki veita neinn sérstakan ávinning, þar sem myndbandsstraumurinn verður útvarpaður innan einnar IP-tengingar. Í þessu tilviki, ef WAN 3 veitandinn fer að lenda í samskiptum, svo sem pakkatapi eða minni hraða, þá muntu ekki geta skipt strax yfir í aðra þjónustuaðila. Stöðva þarf útsendinguna og tengja hana aftur.

Sannkölluð rás samantekt

Raunveruleg rásarsummur gerir það mögulegt að keyra eina tengingu við skilyrt Twitch í gegnum allar veitendur í einu á þann hátt að ef einhver veitanna bilar verður tengingin ekki rofin. Þetta er furðu erfitt vandamál sem enn hefur ekki ákjósanlega lausn. Margir vita ekki einu sinni að þetta er mögulegt!

Frá fyrri myndum munum við að skilyrti Twitch þjónninn getur tekið á móti myndbandsstraumi frá okkur frá aðeins einni uppruna IP tölu, sem þýðir að það verður alltaf að vera stöðugt fyrir okkur, óháð því hvaða veitendur hafa fallið frá og hverjir eru að vinna. Til að ná þessu þurfum við samantektarþjón sem mun slíta öllum tengingum okkar og sameina þær í eina.

True Internet Channel Summation - OpenMPTCPRouter
Samantektarþjónninn safnar saman öllum rásum í ein göng. Allar tengingar eru upprunnar frá veffangi netþjónsins sem samanlagt er

Í þessu kerfi eru allir veitendur notaðir og að slökkva á einhverjum þeirra mun ekki valda tapi á samskiptum við Twitch netþjóninn. Í meginatriðum eru þetta sérstök VPN göng, undir hettunni sem það eru nokkrar internetrásir í einu. Meginverkefni slíks kerfis er að fá hágæða samskiptarás. Ef einhver veitandinn fer að lenda í vandræðum, tapi á pökkum, auknum töfum, þá ætti það ekki að hafa áhrif á gæði samskipta á neinn hátt, þar sem álagið dreifist sjálfkrafa á aðrar betri rásir sem eru í boði.

Viðskiptalausnir

Þetta vandamál hefur lengi verið áhyggjuefni fyrir þá sem senda viðburði í beinni útsendingu og hafa ekki aðgang að hágæða interneti. Fyrir slík verkefni eru til nokkrar viðskiptalausnir, til dæmis framleiðir Teradek svo svakalega beina sem pakkar af USB mótaldum eru settir í:

True Internet Channel Summation - OpenMPTCPRouter
Bein fyrir myndbandsútsendingar með rásum samantektaraðgerð

Slík tæki hafa venjulega innbyggða getu til að fanga myndmerki í gegnum HDMI eða SDI. Samhliða beininum er seld áskrift að rásarupptökuþjónustunni, auk þess að vinna myndbandsstrauminn, umkóða hann og miðla honum áfram. Verð á slíkum tækjum byrjar frá $2k með setti af mótaldum, auk sérstakra áskriftar að þjónustunni.

Stundum lítur það alveg skelfilega út:

True Internet Channel Summation - OpenMPTCPRouter

Setja upp OpenMPTCPRouter

Bókun MP-TCP (MultiPath TCP) var fundið upp til að geta tengst í gegnum nokkrar rásir í einu. Til dæmis hans styður iOS og getur samtímis tengst ytri netþjóni í gegnum WiFi og í gegnum farsímakerfi. Það er mikilvægt að skilja að þetta eru ekki tvær aðskildar TCP tengingar, heldur ein tenging sem komið er á yfir tvær rásir í einu. Til að þetta virki verður ytri þjónninn að styðja MPTCP líka.

OpenMPTCPRouter er opinn hugbúnaðarleiðarverkefni sem gerir ráð fyrir sannri samantekt á rásum. Höfundar fullyrða að verkefnið sé í alfa útgáfu, en það er nú þegar hægt að nota það. Það samanstendur af tveimur hlutum - samantektarþjónn, sem er staðsettur á internetinu og beini, sem nokkrir netveitur og biðlaratækin sjálf eru tengd: tölvur, símar. Sérsniði beininn getur verið Raspberry Pi, sumir WiFi beinir eða venjuleg tölva. Það eru tilbúnar samsetningar fyrir ýmsa palla, sem er mjög þægilegt.

True Internet Channel Summation - OpenMPTCPRouter
Hvernig OpenMPTCPRouter virkar

Að setja upp yfirlitsþjón

Samantektarþjónninn er staðsettur á internetinu og slítur tengingum frá öllum rásum biðlarabeins í eina. IP-tala þessa netþjóns verður ytra vistfangið þegar aðgangur er að internetinu í gegnum OpenMPTCPRouter.

Fyrir þetta verkefni munum við nota VPS netþjón á Debian 10.

Kröfur fyrir samantektarþjóninn:

  • MPTCP virkar ekki á OpenVZ sýndarvæðingu
  • Það ætti að vera hægt að setja upp þinn eigin Linux kjarna

Miðlarinn er settur upp með því að framkvæma eina skipun. Handritið mun setja upp kjarna með mptcp stuðningi og öllum nauðsynlegum pakka. Uppsetningarforskriftir eru fáanlegar fyrir Ubuntu og Debian.

wget -O - http://www.openmptcprouter.com/server/debian10-x86_64.sh | sh

Afrakstur árangursríkrar uppsetningar á netþjóni.

True Internet Channel Summation - OpenMPTCPRouter

Við vistum lykilorðin, við þurfum þau til að stilla biðlarabeini og endurræsa. Það er mikilvægt að hafa í huga að eftir uppsetningu verður SSH tiltækt á port 65222. Eftir endurræsingu þurfum við að ganga úr skugga um að við höfum ræst með nýja kjarnanum

uname -a 
Linux test-server.local 4.19.67-mptcp

Við sjáum áletrunina mptcp við hlið útgáfunúmersins, sem þýðir að kjarninn var rétt settur upp.

Að setja upp biðlarabeini

Á heimasíðu verkefnisins Tilbúnar smíðir eru fáanlegar fyrir suma palla, eins og Raspberry Pi, Banana Pi, Lynksys beinar og sýndarvélar.
Þessi hluti openmptcprouter er byggður á OpenWRT, með LuCI sem viðmóti, sem allir þekkja sem hafa einhvern tíma kynnst OpenWRT. Dreifingin vegur um 50MB!

True Internet Channel Summation - OpenMPTCPRouter

Sem prófunarbekkur mun ég nota Raspberry Pi og nokkur USB mótald með mismunandi rekstraraðilum: MTS og Megafon. Ég held að ég þurfi ekki að segja þér hvernig á að skrifa mynd á SD-kort.

Upphaflega er Ethernet tengið í Raspberry Pi stillt sem LAN með kyrrstöðu IP tölu 192.168.100.1. Til að forðast að fikta í vírum á skrifborðinu tengdi ég Raspberry Pi við WiFi aðgangsstað og stillti WiFi millistykki tölvunnar á kyrrstætt heimilisfang. 192.168.100.2. DHCP þjónninn er ekki virkur sjálfgefið, svo þú verður að nota kyrrstæð vistföng.

Nú geturðu skráð þig inn í vefviðmótið 192.168.100.1

Þegar þú skráir þig inn í fyrsta skipti mun kerfið biðja þig um að stilla rótarlykilorð; SSH verður fáanlegt með sama lykilorði.

True Internet Channel Summation - OpenMPTCPRouter
Í staðarnetsstillingunum geturðu stillt viðkomandi undirnet og virkjað DHCP þjóninn.

Ég nota mótald sem eru skilgreind sem USB Ethernet tengi með aðskildum DHCP miðlara, svo þetta krafðist uppsetningar auka pakka. Aðferðin er eins og að setja upp mótald í venjulegum OpenWRT, svo ég mun ekki fjalla um það hér.

Næst þarftu að stilla WAN viðmótin. Upphaflega bjó kerfið til tvö sýndarviðmót WAN1 og WAN2. Þeir þurfa að úthluta líkamlegu tæki, í mínu tilfelli eru þetta nöfn USB mótaldsviðmóta.

Til að forðast rugling við viðmótsnöfn mæli ég með að skoða dmesg skilaboð á meðan þú tengist í gegnum SSH.

Þar sem mótaldin mín virka sjálf sem bein og eru sjálf með DHCP netþjóni, þurfti ég að breyta stillingum innra netsviða þeirra og slökkva á DHCP miðlaranum, því upphaflega gefa bæði mótaldin út vistföng frá sama neti og það veldur átökum.

OpenMPTCPRouter krefst þess að WAN viðmótsföngin séu kyrrstæð, svo við komum með undirnet fyrir mótaldin og stillum þau í kerfinu → openmptcprouter → tengistillingarvalmynd. Hér þarftu að tilgreina IP tölu og netþjónslykil sem fæst við uppsetningu á samantektarþjóninum.

True Internet Channel Summation - OpenMPTCPRouter

Ef uppsetningin heppnast ætti svipuð mynd að birtast á stöðusíðunni. Það má sjá að beininn náði að ná samantektarþjóninum og báðar rásirnar virka eðlilega.

True Internet Channel Summation - OpenMPTCPRouter

Sjálfgefin stilling er shadowsocks + mptcp. Þetta er umboð sem vefur allar tengingar inn í sig. Það er upphaflega stillt til að vinna aðeins TCP, en einnig er hægt að virkja UDP.

True Internet Channel Summation - OpenMPTCPRouter

Ef engar villur eru á stöðusíðunni má líta á uppsetninguna sem lokið.
Hjá sumum veitendum getur staða komið upp þegar mptcp fáninn er skorinn af meðfram umferðarstígnum, þá mun eftirfarandi villa birtast:

True Internet Channel Summation - OpenMPTCPRouter

Í þessu tilviki geturðu notað aðra aðgerðaham, án þess að nota MPTCP, meira um þetta hér.

Ályktun

OpenMPTCPRouter verkefnið er mjög áhugavert og mikilvægt, þar sem það er kannski eina opna alhliða lausnin á rásarsamantektarvandanum. Allt annað er annaðhvort þétt lokað og einkarekið, eða einfaldlega aðskildar einingar sem venjuleg manneskja getur ekki skilið. Á núverandi þróunarstigi er verkefnið enn frekar gróft, skjölin eru afar léleg, margt er einfaldlega ekki lýst. En á sama tíma virkar það enn. Ég vona að það haldi áfram að þróast og við fáum heimilisleiðir sem geta sameinað rásir almennilega úr kassanum.

True Internet Channel Summation - OpenMPTCPRouter

Fylgdu þróunaraðilanum okkar á Instagram

True Internet Channel Summation - OpenMPTCPRouter

Heimild: www.habr.com

Bæta við athugasemd