Bi goranzko esteka baina tunel bakarra: hutsegite-aldaketa, orekatzea edo lotzea
Hutsegite-aldaketa, fluxu bakoitzeko orekatzea eta fluxu bakarraren lotzea hiru promes desberdin dira. Bi bide lehenetsik lehena ematen dizute, eta ez beste biak.
Bi internet lineak VPN bat eskuragarriago egin dezakete, eta karga-lan batzuetarako azkarrago, baina mekanismoak erabakitzen du bi horietatik zein gertatzen den. Bi bide lehenetsi dituen bideratzailea ez dago lotuta, eta milaka barne-konexio daramatzan tunel bat kanpoko fluxu bakarra da oraindik. Promesa lehenengo izendatzea diseinu baten eta etsipen garesti baten arteko aldea da. Beheko taulak aukerak bereizten ditu bakoitzak urruneko muturrean zer behar duen eta esteka galerak transferentzia bati zer egiten dion arabera.
Hiru promes, eta bakarra behar da bazkide bat
Hutsegite-aldaketak bidea eskuragarri mantentzen du esteka hobetsia desagertzen denean. Fluxu-hasharen bidezko orekatzeak fluxu independenteak bi goranzko esteketara zabaltzen ditu. Fluxu bakarraren lotzeak transferentzia bati bi estekak aldi berean erabiltzeko aukera ematen dio. Produktu desberdinak dira, eskakizun desberdinekin, eta azkenak bakarrik behar du zure bideratzailetik kanpoko zerbaiten lankidetza.
| Mechanism | Far-end requirement | Effect on one transfer | What breaks under a link loss |
|---|---|---|---|
| Packet-spraying overlay | A cooperating endpoint that reassembles the stream | Packets can spread across both links | Reordering and buffering on the surviving path; its own recovery logic decides what continues |
| MPTCP subflows | A peer or proxy that accepts subflows | Subflows can share one connection | Surviving subflows continue if the peer keeps them alive |
| Flow-hash balancing | Nothing new; the existing tunnel endpoint is enough | One outer flow still follows one link | Flows hashed onto the dead link move; established sessions break |
| Link failover | Nothing new | One path at a time; the second link sits idle | The session stalls or restarts on the other link |
Taula horretan ezer ez da bigarren linea bat erosteko arrazoi. Egiten duena da hutsegite-aldaketaren diseinu bat lotzea balitz bezala ebaluatzea eragoztea.
Zergatik ikusten duen bideratzaileak tunela fluxu bakar gisa
Karga orekatzen duen bideratzaileak iturburu- eta helburu-helbideak portuekin batera hash egiten ditu, eta gero fluxu osoa hasha seinalatzen duen tokira bidaltzen du. VPN tunel bat halako fluxu bat da bideratzailearen ikuspegitik, barruan edozer exekutatzen dela ere. Barne-konexioak ez dira inoiz hasheko erabakira iristen, kanpoko goiburuak bidea erabaki baitu jada. Horregatik bigarren goranzko esteka batek erabiltzaile askoren gaitasun osoa bikoiztu dezake eta erabiltzaile baten transferentzia handian ezer ez aldatu.
Bi tunel bereizik bi hautagai eman diezazkizukete, baina oraindik behar dute trafikoa esleitzen duen eta erantzunak eskaera eraman zuen bidean mantentzen dituen politika nahita egina. Bideratze asimetrikoa da urrats hori saltzearen ohiko emaitza. Gutxienekoa fluxua, esteka hobetsia eta erreserbako esteka izendatzen dituen politika da.
Ethernet lotzeak ez du erlaziorik gabeko hornitzaileen artean zeharkatzen, urruneko muturrak agregazio-protokoloan parte hartu behar baitu. Bi ISPren arteko lotzea ikerketa-proiektu bat da, lankidetzan aritzen den mutur bat badago izan ezik.
Zer behar duen bide anitzeko TCPk bi muturretan
Linuxen Multipath TCP dokumentazioak konexio bati dagozkion hainbat azpifluxu deskribatzen ditu. Mutur batean kernelaren laguntzak bere horretan ez du ezer aldatzen, parekoak azpifluxu horiek onartu behar baititu. Urruneko aldean proxy bat da beste antolamendu ohikoa, eta bere gaitasun eta erabilgarritasun propioa duen osagai bihurtzen da, aurreikusi beharrekoa. Logika berak WireGuardentzako erantzun erraza baztertzen du, haren garraioa UDP baita: MPTCPk TCP azpifluxuak hazten ditu eta ezin du tunel hori agregatu diseinuan beste zerbait gabe.
Egiaztatu kernelaren funtzioa gaituta dagoen haren inguruan diseinatu aurretik, banaketa askok itzalita ematen baitute. Hiru komando hauek minutu batean erantzuten dute.
sysctl net.mptcp.enabled
ss -M | head
ip mptcp limits show
Aukeratu karga-lanaren arabera, ez liburuxkaren arabera
Karga-lana saio independente asko bada, fluxu-hasharen bidezko orekatzeak gaitasuna gehi dezake urruneko muturrean lankidetzarik gabe. Transferentzia handi bat bada, agregazio-diseinu batek bakarrik lagunduko du, eta diseinu horrek lankidetzan aritzen den pareko bat behar du. Baldintza esteka bat hiltzean lana jarraitzea bada, hutsegite-aldaketa da erantzuna eta transferentzia bakarraren emaria garrantzirik gabea da.
Idatzi baldintza aditz bat duen esaldi bakarrean: segurtasun-kopia bat bikoiztu bezain azkar amaitzen da, edo eroritako esteka batek ez du saio bat amaitzen. Helburu lausek inork onar edo bazter ezin dituen diseinuak sortzen dituzte. Gero erabaki urruneko muturra zer izan daitekeen, aukera merkeena sarritan han ezer berririk eskatzen ez duena baita. Muga horrek liburuxkaren baieztapen gehienak ezabatzen ditu lehen bileraren aurretik.
Eduki hiru promesak bereizita eskakizun-dokumentuan. Hirurak aldarrikatzen dituen diseinu batek bat ematen du normalean eta besteak isilik suposatzen ditu. Hurrengo atalak probatzen du zein ematen den benetan.
Probatu transferentzia bat eta asko, gero tiratu esteka bat
Konparatu transferentzia jarraitu bat helmuga berera paraleloan egindako hainbat transferentziarekin, eta erregistratu galera, atzerapena eta esteka bakoitzeko erabilera. Irabazia saio paraleloekin soilik bada, fluxuen banaketa adierazten du, ez fluxu bakarraren agregazioa. Probatu goranzko esteka baten galera bereizita, bi estekak funtzionatzen duten bitarteko gaitasunak ezer esaten ez baitu ezarritako saio baterako hutsegite-aldaketari buruz. Erregistratu bidea, socket-a eta birbidalketa-kontagailuak proba bakoitzaren aurretik eta ondoren.
ip route show default
ip route get 10.80.0.5
mtr -n -c 20 -r 10.80.0.5
Transferentzia bakarrak goranzko esteka bat erabiltzen jarraitzen duenean, diseinuak fluxu-hash batek inplikatzen duen zehazki egiten du. Transferentzia paraleloak bien artean banatzen direnean, orekatzeak funtzionatzen du eta agregazioak ez. Erregistratu hiru promesetatik zein betetzen duen diseinuak benetan, eta hurrengo gaitasun-elkarrizketa frogak hasiko da, ez hornitzaile baten baieztapenetik.