Dalawang linya ng internet ang makapagpapataas ng pagiging magagamit ng isang VPN, at makapagpapabilis nito para sa ilang kargada ng trabaho, ngunit ang mekanismo ang nagpapasya kung alin sa dalawa ang mangyayari. Ang router na may dalawang default na ruta ay hindi buklod, at ang tunel na may dalang libu-libong panloob na koneksyon ay isa pa ring panlabas na daloy. Ang pagpangalan ng pangako muna ang pagkakaiba ng disenyo at ng mamahaling pagkabigo. Hinahati ng talahanayan sa ibaba ang mga pagpipilian ayon sa kailangan ng bawat isa sa malayong dulo at sa ginagawa ng pagkawala ng link sa isang paglilipat.

Tatlong pangako, at isa lang ang nangangailangan ng katuwang

Pinapanatili ng failover na magagamit ang isang landas kapag nawala ang gustong link. Ikinakalat ng pagbabalanse sa hash ng daloy ang mga malayang daloy sa dalawang uplink. Pinapayagan ng pagbubuklod ng isang daloy ang isang paglilipat na gamitin ang dalawang link nang sabay. Magkaibang produkto ang mga ito na may magkaibang pangangailangan, at ang huli lang ang nangangailangan ng pakikipagtulungan ng isang bagay sa labas ng iyong router.

MechanismFar-end requirementEffect on one transferWhat breaks under a link loss
Packet-spraying overlayA cooperating endpoint that reassembles the streamPackets can spread across both linksReordering and buffering on the surviving path; its own recovery logic decides what continues
MPTCP subflowsA peer or proxy that accepts subflowsSubflows can share one connectionSurviving subflows continue if the peer keeps them alive
Flow-hash balancingNothing new; the existing tunnel endpoint is enoughOne outer flow still follows one linkFlows hashed onto the dead link move; established sessions break
Link failoverNothing newOne path at a time; the second link sits idleThe session stalls or restarts on the other link

Walang anuman sa talahanayang iyon ang dahilan para bumili ng ikalawang linya. Ang ginagawa nito ay pigilan ang isang disenyo ng failover na tasahin na parang pagbubuklod.

Bakit ang tunel ay mukhang isang daloy sa router

Ang router na nagbabalanse ng karga ay nagha-hash ng source at destination na address kasama ng mga port, pagkatapos ay ipinapadala ang buong daloy kung saan itinuturo ng hash. Ang tunel ng VPN ay isang ganoong daloy mula sa pananaw ng router, anuman ang tumatakbo sa loob nito. Hindi kailanman narating ng panloob na koneksyon ang desisyon ng hash, dahil napagpasyahan na ng panlabas na header ang landas. Kaya naman ang ikalawang uplink ay makapagdodoble ng kabuuang kapasidad para sa maraming gumagamit at walang mababago sa malaking paglilipat ng isang gumagamit.

Ang dalawang hiwalay na tunel ay makapagbibigay sa iyo ng dalawang kandidato, ngunit kailangan pa rin nila ng sinadyang patakaran na naglalaan ng trapiko at nagpapanatili ng mga tugon sa landas na dinaanan ng kahilingan. Ang asimetrikong routing ang karaniwang resulta ng paglaktaw sa hakbang na iyon. Ang pinakamababa ay isang patakarang nagpapangalan sa daloy, sa gustong link at sa reserbang link.

Ang pagbubuklod ng Ethernet ay hindi tumatawid sa magkakaibang provider, dahil kailangang sumali ng malayong dulo sa protocol ng pagsasama. Ang pagbubuklod sa dalawang ISP ay proyektong pananaliksik maliban kung may pakikipagtulungang dulo.

Ano ang kailangan ng multipath TCP sa dalawang dulo

Ang dokumentasyon ng Linux tungkol sa Multipath TCP ay naglalarawan ng ilang subflow na kabilang sa isang koneksyon. Ang suporta ng kernel sa isang dulo ay walang binabago nang mag-isa, dahil kailangan ding tanggapin ng katapat ang mga subflow na iyon. Ang proxy sa malayong panig ang isa pang karaniwang kaayusan, at nagiging bahagi ito na may sariling kapasidad at pagkakaroon na kailangang planuhin. Ang parehong lohika ay nag-aalis ng madaling sagot para sa WireGuard, na ang transportasyon ay UDP: pinapalaki ng MPTCP ang mga subflow ng TCP at hindi nito maisasama ang tunel na iyon nang walang ibang bagay sa disenyo.

Suriin kung naka-enable ang tampok ng kernel bago magdisenyo sa paligid nito, dahil maraming distribusyon ang naghahatid nito nang patay. Sinasagot ng tatlong utos na ito iyon sa isang minuto.

sysctl net.mptcp.enabled
ss -M | head
ip mptcp limits show

Pumili batay sa kargada ng trabaho, hindi sa brosyur

Kung ang kargada ng trabaho ay maraming malayang sesyon, makapagdadagdag ng kapasidad ang pagbabalanse sa hash ng daloy nang walang pakikipagtulungan sa malayong dulo. Kung isang malaking paglilipat, disenyo ng pagsasama lang ang makakatulong, at kailangan ng disenyong iyon ng katapat na nakikipagtulungan. Kung ang pangangailangan ay magpatuloy ang trabaho kapag namatay ang link, ang sagot ay failover at walang kaugnayan ang throughput ng isang paglilipat.

Isulat ang pangangailangan sa isang pangungusap na may pandiwa: ang isang backup ay natatapos nang doble ang bilis, o ang bumagsak na link ay hindi nagtatapos ng sesyon. Ang malabong layunin ay lumilikha ng disenyong walang makakatanggap o makakatanggi. Pagkatapos ay magpasya kung ano ang maaaring maging malayong dulo, dahil ang pinakamurang pagpipilian ay madalas ang hindi nangangailangan ng anumang bago doon. Inaalis ng hadlang na iyon ang karamihan ng mga pag-aangkin sa brosyur bago ang unang pulong.

Panatilihing hiwalay ang tatlong pangako sa dokumento ng pangangailangan. Ang disenyong nagsasabing taglay nito ang tatlo ay karaniwang naghahatid ng isa at tahimik na ipinapalagay ang iba. Sinusubok ng susunod na bahagi kung alin ang tunay na ibinibigay.

Subukan ang isang paglilipat at marami, pagkatapos ay hilahin ang isang link

Ihambing ang isang tuloy-tuloy na paglilipat sa ilang magkatulad na paglilipat patungo sa parehong destinasyon, at itala ang pagkawala, pagkaantala at paggamit ng bawat link. Ang pakinabang na sa magkatulad na sesyon lang ay tumutukoy sa pamamahagi ng daloy, hindi sa pagbubuklod ng isang daloy. Subukan nang hiwalay ang pagkawala ng isang uplink, dahil ang kapasidad habang gumagana ang dalawang link ay walang sinasabi tungkol sa failover para sa isang naitatag na sesyon. Itala ang ruta, ang socket at ang mga counter ng muling pagpapadala bago at pagkatapos ng bawat pagsubok.

ip route show default
ip route get 10.80.0.5
mtr -n -c 20 -r 10.80.0.5

Kapag ang nag-iisang paglilipat ay gumagamit pa rin ng isang uplink, ginagawa ng disenyo ang eksaktong ipinahihiwatig ng hash ng daloy. Kapag ang magkatulad na paglilipat ay kumalat sa dalawa, gumagana ang pagbabalanse at hindi ang pagbubuklod. Itala kung alin sa tatlong pangako ang tunay na tinutupad ng disenyo, at ang susunod na usapan tungkol sa kapasidad ay magsisimula sa ebidensya, hindi sa pag-aangkin ng vendor.

Kaugnay na mga artikulo