Naha mungkin pikeun ngagabungkeun sababaraha saluran Internét janten hiji? Aya seueur misconceptions sareng mitos ngeunaan topik ieu; bahkan insinyur jaringan anu berpengalaman sering henteu terang yén ieu mungkin. Dina kalolobaan kasus, link aggregation salah disebut balancing dina tingkat NAT atanapi failover. Tapi summation nyata ngamungkinkeun ngajalankeun hiji sambungan TCP tunggal sakaligus dina sakabéh saluran Internet, contona, siaran pidéo supados upami aya saluran Internét anu kaganggu, siaran éta moal kaganggu.
Aya solusi komérsial anu mahal pikeun siaran pidéo, tapi alat sapertos kitu hargana seueur kilobucks. Tulisan éta ngajelaskeun kumaha carana ngonpigurasikeun pakét OpenMPTCPRouter gratis, open-source sareng alamat mitos populér ngeunaan penjumlahan saluran.
Mitos ngeunaan saluran summing
Aya seueur router bumi anu ngadukung fungsi Multi-WAN. Kadang-kadang produsén nelepon saluran ieu summing, nu teu sagemblengna bener. Loba networkers yakin yén salian ti
Balancing dina tingkat sambungan IP
Ieu mangrupikeun cara anu paling murah sareng populér pikeun ngagunakeun sababaraha saluran Internét dina waktos anu sami. Pikeun kesederhanaan, hayu urang bayangkeun yén anjeun gaduh tilu panyadia Internét, masing-masing masihan anjeun alamat IP nyata tina jaringanna. Sadaya panyadia ieu disambungkeun ka router anu ngarojong fungsi Multi-WAN. Ieu tiasa OpenWRT sareng pakét mwan3, mikrotik, ubiquiti, atanapi router rumah tangga anu sanés, sabab pilihan sapertos kitu henteu jarang.
Pikeun simulasi kaayaan, hayu urang bayangkeun yén panyadia masihan kami alamat ieu:
WAN1 — 11.11.11.11
WAN2 — 22.22.22.22
WAN2 — 33.33.33.33
Nyaéta, nyambungkeun ka server jauh example.com Ngaliwatan unggal panyadia, pangladén jauh bakal ningali tilu klien IP sumber mandiri. Balancing ngamungkinkeun anjeun ngabagi beban kana saluran sareng nganggo tilu aranjeunna sakaligus. Pikeun kesederhanaan, hayu urang ngabayangkeun yén urang ngabagi beban anu sami antara sadaya saluran. Hasilna, nalika klien muka situs kalayan tilu gambar, anjeunna ngundeur unggal gambar ngaliwatan panyadia misah. Di sisi situs sigana sambungan tina tilu IP anu béda.
Nalika balancing dina tingkat sambungan, unggal sambungan TCP ngaliwatan panyadia misah.
Mode kasaimbangan ieu sering nyababkeun masalah pikeun pangguna. Salaku conto, seueur situs sacara ketat ngabeungkeut cookies sareng token ka alamat IP klien, sareng upami ujug-ujug robih, pamundut ditolak atanapi klien kaluar tina situs. Ieu sering dihasilkeun dina sistem klien-bank jeung situs séjén kalawan aturan sési pamaké ketat. Ieu conto illustrative basajan: file musik dina VK.com ngan sadia kalawan konci sési valid, nu dihijikeun ka IP, sarta klien nu ngagunakeun balancing misalna mindeng teu maén audio sabab pamundut teu ngaliwatan panyadia nu. sési dihijikeun.
Nalika ngundeur torrents, balancing tingkat sambungan nyimpulkeun rubakpita sadaya saluran
Balancing ieu ngamungkinkeun anjeun pikeun nyimpulkeun laju saluran Internét nalika nganggo sababaraha sambungan. Contona, upami tiap tina tilu panyadia boga speed 100 Megabits, lajeng nalika ngundeur torrents urang bakal meunang 300 Megabits. Kusabab torrent muka seueur sambungan, anu disebarkeun ka sadaya panyayogikeun sareng pamustunganana ngagunakeun sadayana saluran.
Kadé ngartos yen hiji sambungan TCP tunggal bakal salawasna ngaliwatan ngan hiji panyadia. Nyaéta, upami urang ngaunduh hiji file ageung ngalangkungan HTTP, maka sambungan ieu bakal dilakukeun ngaliwatan salah sahiji panyadia, sareng upami sambungan sareng panyadia ieu rusak, undeuran ogé bakal rusak.
Hiji sambungan bakal salawasna make ngan hiji saluran Internet
Ieu ogé bener keur siaran video. Upami anjeun nyiarkeun streaming pidéo kana sababaraha jinis Twitch kondisional, teras kasaimbangan dina tingkat sambungan IP moal masihan kauntungan khusus, sabab aliran pidéo bakal disiarkeun dina hiji sambungan IP. Dina hal ieu, upami panyadia WAN 3 mimiti ngalaman masalah sareng komunikasi, sapertos pakét leungitna atanapi ngirangan laju, maka anjeun moal tiasa langsung ngalih ka panyadia anu sanés. Siaranna kedah dieureunkeun sareng sambungkeun deui.
Nyimpulkeun saluran leres
Summing saluran nyata ngamungkinkeun pikeun ngajalankeun hiji sambungan ka Twitch kondisional ngaliwatan sagala panyadia sakaligus dina cara sapertos nu lamun salah sahiji panyadia ngarecah, sambungan nu moal interrupted. Ieu mangrupikeun masalah anu hese anu masih teu gaduh solusi anu optimal. Seueur jalma henteu terang yén ieu mungkin!
Tina ilustrasi sateuacana, urang émut yén server Twitch kondisional tiasa nampi aliran pidéo ti kami tina ngan ukur hiji alamat IP sumber, anu hartosna éta kedah tetep konstan pikeun urang, henteu paduli panyadia mana anu murag sareng anu mana anu damel. Pikeun ngahontal ieu, urang peryogi server summing anu bakal ngeureunkeun sadaya sambungan urang sareng ngagabungkeun kana hiji.
The summing server aggregates sadaya saluran kana hiji torowongan. Sadaya sambungan asalna tina alamat server summing
Dina skéma ieu, sadaya panyadia dianggo, sareng nganonaktipkeun salah sahijina moal nyababkeun leungitna komunikasi sareng server Twitch. Intina, ieu mangrupikeun torowongan VPN khusus, di handapeun tiungna aya sababaraha saluran Internét sakaligus. Tugas utama skéma ieu nyaéta pikeun ménta saluran komunikasi kualitas pangluhurna. Upami salah sahiji panyadia mimiti ngalaman masalah, kaleungitan pakét, ningkat telat, maka ieu henteu kedah mangaruhan kualitas komunikasi ku cara naon waé, sabab beban bakal otomatis disebarkeun kana saluran anu sanés anu langkung saé.
Solusi komérsial
Masalah ieu parantos lami ngaganggu jalma anu nyiarkeun acara langsung sareng henteu ngagaduhan aksés kana Internét anu kualitas luhur. Pikeun tugas sapertos kitu, aya sababaraha solusi komérsial, contona, perusahaan Teradek ngadamel router anu monstrous sapertos dimana bungkus modem USB diselapkeun:
Router pikeun siaran pidéo sareng fungsi summing saluran
Alat sapertos kitu biasana gaduh kamampuan pikeun nangkep sinyal pidéo via HDMI atanapi SDI. Marengan router, langganan kana layanan summing channel dijual, kitu ogé ngolah aliran video, transcoding eta sarta relaying salajengna. Harga alat sapertos mimitian ti $2k sareng sakumpulan modem, ditambah langganan anu misah pikeun jasa éta.
Kadang-kadang katingalina rada pikasieuneun:
Nyetél OpenMPTCPROuter
Protokol
Kumaha OpenMPTCPRouter jalan
Nyetel hiji server summarizing
Server summing aya dina Internét sareng ngeureunkeun sambungan tina sadaya saluran router klien janten hiji. Alamat IP pangladén ieu bakal janten alamat éksternal nalika ngaksés Internét ngalangkungan OpenMPTCPRouter.
Pikeun tugas ieu kami bakal nganggo server VPS dina Debian 10.
Syarat pikeun server summing:
- MPTCP henteu tiasa dianggo dina virtualisasi OpenVZ
- Sakuduna tiasa masang kernel Linux anjeun nyalira
Server disebarkeun ku ngalaksanakeun hiji paréntah. Skrip bakal masang kernel kalayan dukungan mptcp sareng sadaya bungkusan anu diperyogikeun. Skrip instalasi sayogi pikeun Ubuntu sareng Debian.
wget -O - http://www.openmptcprouter.com/server/debian10-x86_64.sh | sh
Hasil tina instalasi server suksés.
Urang nyimpen kecap akses, urang bakal butuh aranjeunna pikeun ngonpigurasikeun router klien, sarta reboot. Kadé tetep dina pikiran yén sanggeus instalasi, SSH bakal sadia dina port 65222. Saatos rebooting, urang kudu mastikeun yén urang booted kalawan kernel anyar.
uname -a
Linux test-server.local 4.19.67-mptcp
Kami ningali prasasti mptcp gigireun nomer versi, anu hartosna kernel dipasang leres.
Nyetel hiji router klien
on
Ieu bagian tina openmptcprouter dumasar kana OpenWRT, ngagunakeun LuCI salaku panganteur, akrab jeung saha anu geus kungsi encountered OpenWRT. Sebaran beuratna sakitar 50MB!
Salaku bangku tés, kuring bakal nganggo Raspberry Pi sareng sababaraha modem USB sareng operator anu béda: MTS sareng Megafon. Ku teu sangka kuring kudu ngabejaan ka maneh kumaha nulis gambar ka kartu SD.
Mimitina, port Ethernet dina Raspberry Pi dikonpigurasi salaku lan sareng alamat IP statik 192.168.100.1. Pikeun ngahindarkeun kabel dina méja, kuring nyambungkeun Raspberry Pi ka titik aksés WiFi sareng nyetél adaptor WiFi komputer ka alamat statik. 192.168.100.2. Pangladén DHCP henteu diaktipkeun sacara standar, janten anjeun kedah nganggo alamat statik.
Ayeuna anjeun tiasa log in kana antarmuka wéb
Nalika anjeun pertama kali asup, sistem bakal naroskeun anjeun nyetél kecap akses root; SSH bakal sayogi sareng kecap konci anu sami.
Dina setélan LAN, anjeun tiasa nyetél subnet anu dipikahoyong sareng ngaktipkeun pangladén DHCP.
Kuring make modem nu diartikeun interfaces USB Ethernet jeung server DHCP misah, jadi ieu diperlukeun instalasi
Satuluyna anjeun perlu ngonpigurasikeun interfaces WAN. Mimitina, sistem nyiptakeun dua antarmuka virtual WAN1 sareng WAN2. Aranjeunna kedah ditugaskeun alat fisik, bisi kuring ieu mangrupikeun nami antarmuka modem USB.
Pikeun ngahindarkeun kabingungan sareng nami antarmuka, kuring nyarankeun ningali pesen dmesg nalika nyambungkeun via SSH.
Kusabab modem kuring sorangan meta salaku routers, sarta sorangan boga server DHCP, Kuring kungsi ngarobah setelan rentang jaringan internal maranéhanana sarta nganonaktipkeun server DHCP, sabab mimitina duanana modem ngaluarkeun alamat ti jaringan anu sarua, sarta ieu ngabalukarkeun konflik a.
OpenMPTCPRouter merlukeun alamat panganteur Wan statik, jadi urang datang nepi ka subnets pikeun modem jeung ngonpigurasikeun aranjeunna dina sistem → openmptcprouter → menu setélan panganteur. Di dieu anjeun kedah netepkeun alamat IP sareng konci server anu dicandak nalika pamasangan server summing.
Upami setelan suksés, gambar anu sami kedah muncul dina halaman status. Ieu bisa ditempo yén router éta bisa ngahontal server summing sarta duanana saluran jalan normal.
Modeu standar nyaéta shadowsocks + mptcp. Ieu mangrupikeun proxy anu ngabungkus sadaya sambungan dina dirina. Mimitina dikonpigurasi pikeun ngolah TCP wungkul, tapi UDP ogé tiasa diaktipkeun.
Upami teu aya kasalahan dina halaman status, setelan tiasa dianggap lengkep.
Kalayan sababaraha panyadia, kaayaan tiasa timbul nalika bandéra mptcp dipotong sapanjang jalur lalu lintas, teras kasalahan ieu bakal muncul:
Dina hal ieu, anjeun tiasa nganggo mode operasi anu béda, tanpa nganggo MPTCP, langkung seueur ngeunaan ieu
kacindekan
Proyék OpenMPTCPRouter pisan metot jeung penting, sabab sugan hijina solusi komprehensif kabuka pikeun masalah summing channel. Sagalana sejenna boh ditutup pageuh tur proprietary, atawa ngan saukur misahkeun modul nu hiji jalma biasa teu bisa ngarti. Dina tahap pangwangunan ayeuna, proyékna masih rada atah, dokuméntasina parah pisan, seueur hal anu henteu dijelaskeun. Tapi dina waktos anu sareng masih jalan. Kuring miharep éta bakal neruskeun ngamekarkeun, sarta kami bakal meunang routers somah anu bakal tiasa leres ngagabungkeun saluran out of the box.
Turutan pamekar kami dina Instagram
sumber: www.habr.com