Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Оё мумкин аст, ки якчанд каналҳои интернетиро ба як муттаҳид созем? Дар атрофи ин мавзӯъ тасаввуроти нодуруст ва афсонаҳои зиёде мавҷуданд; ҳатто муҳандисони ботаҷрибаи шабака аксар вақт намедонанд, ки ин имконпазир аст. Дар аксари мавридҳо, агрегатсияи истинод ба иштибоҳан мувозинат дар сатҳи NAT ё нокомӣ номида мешавад. Аммо чамъоварии хакикй имкон медихад як пайвасти ягонаи TCP-ро ҳамзамон тавассути тамоми каналҳои Интернет оғоз кунед, масалан, пахши видео, то ки агар ягон канали интернетӣ қатъ шавад, пахши он қатъ нашавад.

Қарорҳои гаронбаҳои тиҷоратӣ барои пахши видео вуҷуд доранд, аммо чунин дастгоҳҳо килобакҳои зиёд арзиш доранд. Дар мақола чӣ гуна танзим кардани бастаи ройгони кушодаи OpenMPTCPRouter тасвир шудааст ва афсонаҳои маъмул дар бораи ҷамъбасти каналро баррасӣ мекунад.

Мифҳо дар бораи ҷамъбасти канал

Бисёр роутерҳои хонагӣ мавҷуданд, ки функсияи Multi-WAN-ро дастгирӣ мекунанд. Баъзан истеҳсолкунандагон ин каналро ҷамъбаст меноманд, ки ин комилан дуруст нест. Бисёре аз шабакаҳо боварӣ доранд, ки ба ғайр аз LACP ва ҷамъбаст дар сатҳи L2, дигар агрегатсияи канал вуҷуд надорад. Ман борҳо шунидаам, ки ин аз одамоне, ки дар телекоммуникатсия кор мекунанд, умуман ғайриимкон аст. Аз ин рӯ, биёед кӯшиш кунем, ки афсонаҳои маъмулро фаҳмем.

Мувозинат дар сатҳи пайвасти IP

Ин роҳи дастрастарин ва маъмултарини истифодаи якчанд каналҳои интернетӣ дар як вақт аст. Барои содда, биёед тасаввур кунем, ки шумо се провайдери интернет доред, ки ҳар кадоме ба шумо суроғаи воқеии IP аз шабакаи худ медиҳад. Ҳамаи ин провайдерҳо ба роутер пайвастанд, ки функсияи Multi-WAN-ро дастгирӣ мекунад. Ин метавонад OpenWRT бо бастаи mwan3, mikrotik, ubiquiti ё ягон роутери дигари хонагӣ бошад, зеро чунин вариант дигар камназир нест.

Барои тақлид кардани вазъият, биёед тасаввур кунем, ки провайдерҳо ба мо суроғаҳои зеринро доданд:

WAN1 — 11.11.11.11
WAN2 — 22.22.22.22
WAN2 — 33.33.33.33

Яъне пайвастшавӣ ба сервери дурдаст example.com Тавассути ҳар як провайдер сервери дурдаст се мизоҷи мустақили IP-ро мебинад. Мувозинат ба шумо имкон медиҳад, ки сарбориро дар байни каналҳо тақсим кунед ва ҳар сеи онҳоро ҳамзамон истифода баред. Барои соддагӣ, биёед тасаввур кунем, ки мо сарбориро дар байни ҳама каналҳо баробар тақсим мекунем. Дар натиҷа, вақте муштарӣ сайтеро бо се тасвир мекушояд, ҳар як тасвирро тавассути провайдери алоҳида зеркашӣ мекунад. Дар тарафи сайт он ба пайвастшавӣ аз се IP-и гуногун монанд аст.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter
Ҳангоми мувозинат дар сатҳи пайвастшавӣ, ҳар як пайвасти TCP аз провайдери алоҳида мегузарад.

Ин ҳолати мувозинат аксар вақт барои корбарон мушкилот меорад. Масалан, бисёр сайтҳо кукиҳо ва токенҳоро ба суроғаи IP-и муштарӣ ба таври қатъӣ мепайвандад ва агар он ногаҳон тағир ёбад, дархост рад карда мешавад ё муштарӣ аз сайт хориҷ мешавад. Ин аксар вақт дар системаҳои муштарӣ-бонк ва дигар сайтҳо бо қоидаҳои қатъии сессияи корбар такрор карда мешавад. Ин аст як мисоли оддии тасвирӣ: файлҳои мусиқӣ дар VK.com танҳо бо калиди дурусти сессия дастрасанд, ки ба IP пайваст карда шудааст ва муштариёне, ки аз чунин тавозун истифода мебаранд, аксар вақт садоро наменавозанд, зеро дархост тавассути провайдери ба он нарасидааст. сессия баробар аст.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter
Ҳангоми зеркашии ҷӯйборҳо, мувозинати сатҳи пайваст фарохмаҷрои ҳама каналҳоро ҷамъбаст мекунад

Ин мувозинат ба шумо имкон медиҳад, ки ҳангоми истифодаи пайвастҳои сершумор ҷамъбасти суръати канали интернетиро ба даст оред. Масалан, агар ҳар яке аз се провайдерҳо суръати 100 Мегабит дошта бошанд, пас ҳангоми зеркашии торрентҳо мо 300 Мегабит мегирем. Азбаски ҷӯйе пайвастҳои зиёдеро мекушояд, ки дар байни ҳама провайдерҳо тақсим карда мешаванд ва дар ниҳоят тамоми каналро истифода мебаранд.

Фаҳмидани он муҳим аст, ки як пайвасти ягонаи TCP ҳамеша тавассути як провайдер мегузарад. Яъне, агар мо як файли калонро тавассути HTTP зеркашӣ кунем, пас ин пайвастшавӣ тавассути яке аз провайдерҳо сурат мегирад ва агар иртибот бо ин провайдер канда шавад, зеркашӣ низ қатъ мешавад.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter
Як пайвастшавӣ ҳамеша танҳо як канали интернетиро истифода мебарад

Ин ба пахши видеоӣ низ дахл дорад. Агар шумо видеои ҷараёнро ба ягон намуди шартии Twitch пахш кунед, пас мувозинат дар сатҳи пайвастҳои IP ягон фоидаи махсус намедиҳад, зеро ҷараёни видео дар як пайвасти IP пахш карда мешавад. Дар ин ҳолат, агар провайдери WAN 3 бо иртибот мушкилӣ пайдо кунад, ба монанди гум шудани баста ё паст шудани суръат, шумо наметавонед фавран ба провайдери дигар гузаред. Пахш бояд қатъ ва дубора пайваст карда шавад.

Ҷамъбасти ҳақиқии канал

Ҷамъбасти воқеии канал имкон медиҳад, ки як пайвастшавӣ ба Twitch-и шартӣ дар як вақт тавассути ҳамаи провайдерҳо тавре иҷро карда шавад, ки агар яке аз провайдерҳо қатъ шавад, пайвастшавӣ қатъ нашавад. Ин як масъалаи тааҷҷубовар душвор аст, ки то ҳол ҳалли оптималӣ надорад. Бисёр одамон ҳатто намедонанд, ки ин имконпазир аст!

Аз тасвирҳои қаблӣ, мо дар хотир дорем, ки сервери шартии Twitch метавонад аз мо танҳо аз як суроғаи IP-и манбаъ ҷараёни видео қабул кунад, яъне он бояд ҳамеша барои мо доимӣ бошад, новобаста аз он ки кадом провайдерҳо аз байн рафтаанд ва кадомашон кор мекунанд. Барои ноил шудан ба ин, ба мо сервери ҷамъбастӣ лозим аст, ки ҳамаи пайвастҳои моро қатъ мекунад ва онҳоро ба як муттаҳид мекунад.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter
Сервери ҷамъбаст ҳамаи каналҳоро дар як нақб ҷамъ мекунад. Ҳама пайвастҳо аз суроғаи ҷамъбасти сервер сарчашма мегиранд

Дар ин схема, ҳама провайдерҳо истифода мешаванд ва хомӯш кардани яке аз онҳо боиси гум шудани иртибот бо сервери Twitch нахоҳад шуд. Аслан, ин як нақби махсуси VPN аст, ки дар зери сарпӯши он якбора якчанд каналҳои интернетӣ мавҷуданд. Вазифаи асосии чунин схема ба даст овардани канали баландтарини алоқа мебошад. Агар яке аз провайдерҳо ба мушкилот, гум шудани бастаҳо, зиёд шудани таъхирҳо шурӯъ кунад, он гоҳ ин набояд ба ҳеҷ ваҷҳ ба сифати муошират таъсир расонад, зеро сарборӣ ба таври худкор ба дигар каналҳои беҳтари дастрас тақсим карда мешавад.

Қарорҳои тиҷоратӣ

Ин мушкилот кайҳо боз онҳоеро, ки рӯйдодҳои мустақим пахш мекунанд ва ба интернети баландсифат дастрасӣ надоранд, нигарон кардааст. Барои чунин вазифаҳо якчанд ҳалли тиҷоратӣ мавҷуданд, масалан, ширкати Teradek чунин роутерҳои даҳшатнокро месозад, ки ба онҳо бастаҳои модемҳои USB ворид карда мешаванд:

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter
Роутер барои пахши видео бо функсияи ҷамъбасти канал

Чунин дастгоҳҳо одатан қобилияти дарунсохт барои сабт кардани сигналҳои видео тавассути HDMI ё SDI доранд. Дар баробари роутер, обуна ба хидмати ҷамъбасти канал, инчунин коркарди ҷараёни видео, транскодкунии он ва интиқоли минбаъдаи он фурӯхта мешавад. Нархи чунин дастгоҳҳо бо маҷмӯи модемҳо ва иловаи обунаи алоҳида ба хидмат аз 2 ҳазор доллар оғоз мешавад.

Баъзан он хеле даҳшатнок менамояд:

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Насб кардани OpenMPTCPRouter

Протокол MP-TCP (MultiPath TCP) ихтироъ шудааст, ки қодир ба як вақт тавассути якчанд канал пайваст шавад. Масалан, вай iOS-ро дастгирӣ мекунад ва ҳамзамон метавонад ба сервери дурдаст тавассути WiFi ва тавассути шабакаи мобилӣ пайваст шавад. Фаҳмидани он муҳим аст, ки инҳо на ду пайвасти алоҳидаи TCP, балки як пайвастшавӣ дар ду канал якбора муқаррар карда мешаванд. Барои ин кор сервери дурдаст бояд MPTCP-ро низ дастгирӣ кунад.

OpenMPTCPRouter лоиҳаи роутер нармафзори кушодаасос аст, ки барои ҷамъбасти воқеии канал имкон медиҳад. Муаллифон мегӯянд, ки лоиҳа дар ҳолати версияи алфа қарор дорад, аммо онро аллакай истифода бурдан мумкин аст. Он аз ду қисм иборат аст - сервери ҷамъбастӣ, ки дар Интернет ҷойгир аст ва роутер, ки ба он якчанд провайдерҳои интернетӣ ва худи дастгоҳҳои муштарӣ пайваст мешаванд: компютерҳо, телефонҳо. Роутери фармоишӣ метавонад Raspberry Pi, баъзе роутерҳои WiFi ё компютери муқаррарӣ бошад. Барои платформаҳои гуногун васлҳои тайёр мавҷуданд, ки ин хеле қулай аст.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter
OpenMPTCPRouter чӣ гуна кор мекунад

Ташкили сервери ҷамъбасткунанда

Сервери ҷамъбастӣ дар Интернет ҷойгир аст ва пайвастҳоро аз ҳама каналҳои роутери мизоҷ ба як канал қатъ мекунад. Суроғаи IP-и ин сервер ҳангоми дастрасӣ ба Интернет тавассути OpenMPTCPRouter суроғаи беруна хоҳад буд.

Барои ин вазифа мо сервери VPS-ро дар Debian 10 истифода мебарем.

Талабот ба сервери ҷамъбаст:

  • MPTCP дар виртуализатсияи OpenVZ кор намекунад
  • Он бояд ядрои Linux-и худро насб кардан мумкин бошад

Сервер тавассути иҷрои як фармон ҷойгир карда мешавад. Скрипт як ядроро бо дастгирии mptcp ва ҳама бастаҳои зарурӣ насб мекунад. Скриптҳои насбкунӣ барои Ubuntu ва Debian дастрасанд.

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

Натиҷаи насби бомуваффақияти сервер.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Мо паролҳоро захира мекунем, ба мо барои танзим кардани роутери муштарӣ ва бозоғозӣ лозим мешавад. Дар хотир доштан муҳим аст, ки пас аз насбкунӣ, SSH дар бандари 65222 дастрас хоҳад буд. Пас аз бозоғозӣ, мо бояд боварӣ ҳосил кунем, ки мо бо ядрои нав бор кардаем.

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

Мо дар паҳлӯи рақами версия навиштаҷоти mptcp-ро мебинем, ки ин маънои онро дорад, ки ядро ​​дуруст насб шудааст.

Насб кардани роутери муштарӣ

Дар бораи он сомона барои баъзе платформаҳо, аз қабили Raspberry Pi, Banana Pi, роутерҳои Lynksys ва мошинҳои виртуалӣ сохтмонҳои тайёр дастрасанд.
Ин қисми openmptcprouter ба OpenWRT асос ёфтааст, ки LuCI-ро ҳамчун интерфейс истифода мебарад, ки барои ҳар касе, ки ягон бор бо OpenWRT дучор шудааст, шинос аст. Тақсим тақрибан 50 МБ вазн дорад!

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Ҳамчун курсии санҷишӣ ман Raspberry Pi ва якчанд модемҳои USB-ро бо операторҳои гуногун истифода хоҳам кард: МТС ва Мегафон. Ман фикр намекунам, ки ба шумо гӯям, ки чӣ гуна тасвирро ба корти SD нависед.

Дар аввал, порти Ethernet дар Raspberry Pi ҳамчун LAN бо суроғаи IP статикӣ танзим карда мешавад. 192.168.100.1. Барои роҳ надодан ба ноқилҳо дар рӯи миз, ман Raspberry Pi-ро ба нуқтаи дастрасии WiFi пайваст кардам ва адаптери WiFi-и компютерро ба суроғаи статикӣ насб кардам. 192.168.100.2. Сервери DHCP бо нобаёнӣ фаъол нест, аз ин рӯ шумо бояд суроғаҳои статикиро истифода баред.

Акнун шумо метавонед ба интерфейси веб ворид шавед 192.168.100.1

Вақте ки шумо бори аввал ворид мешавед, система аз шумо хоҳиш мекунад, ки пароли решаро таъин кунед; SSH бо ҳамон парол дастрас хоҳад буд.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter
Дар танзимоти LAN, шумо метавонед зершабакаи дилхоҳро таъин кунед ва сервери DHCP-ро фаъол созед.

Ман модемҳоеро истифода мебарам, ки ҳамчун интерфейси USB Ethernet бо сервери алоҳидаи DHCP муайян карда мешаванд, бинобар ин насбкунӣ лозим аст бастаҳои иловагӣ. Тартиб ба насб кардани модемҳо дар OpenWRT муқаррарӣ шабеҳ аст, аз ин рӯ ман онро дар ин ҷо шарҳ намедиҳам.

Минбаъд шумо бояд интерфейсҳои WAN-ро танзим кунед. Дар аввал, система ду интерфейси маҷозӣ WAN1 ва WAN2 сохтааст. Онҳо бояд як дастгоҳи ҷисмонӣ таъин карда шаванд, дар ҳолати ман инҳо номҳои интерфейсҳои модеми USB мебошанд.

Барои роҳ надодан ба иштибоҳ бо номҳои интерфейс, ман тавсия медиҳам, ки ҳангоми пайвастшавӣ тавассути SSH паёмҳои dmesg -ро тамошо кунед.

Азбаски модемҳои ман худ ҳамчун роутер амал мекунанд ва худ сервери DHCP доранд, ман маҷбур будам, ки танзимоти диапазони шабакаи дохилии худро тағир диҳам ва сервери DHCP-ро ғайрифаъол кунам, зеро дар аввал ҳарду модем аз як шабака суроға медиҳанд ва ин боиси ихтилоф мегардад.

OpenMPTCPRouter талаб мекунад, ки суроғаҳои интерфейси WAN статикӣ бошанд, аз ин рӯ, мо барои модемҳо зершабакаҳоро пайдо мекунем ва онҳоро дар система → openmptcprouter → менюи танзимоти интерфейс танзим мекунем. Дар ин ҷо шумо бояд суроғаи IP ва калиди серверро, ки ҳангоми насби сервери ҷамъбаст гирифта шудааст, муайян кунед.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Агар насб бомуваффақият анҷом дода шавад, тасвири шабеҳ бояд дар саҳифаи вазъият пайдо шавад. Мумкин аст, ки роутер ба сервери ҷамъбаст расида тавонист ва ҳарду канал ба таври мӯътадил кор мекунанд.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Ҳолати пешфарз shadowsocks + mptcp мебошад. Ин прокси аст, ки ҳама пайвастҳоро дар дохили худ мепӯшонад. Он дар аввал барои коркарди танҳо TCP танзим карда мешавад, аммо UDP низ метавонад фаъол карда шавад.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Агар дар саҳифаи вазъият ягон хатогӣ мавҷуд набошад, танзимотро анҷом додан мумкин аст.
Бо баъзе провайдерҳо, вақте ки парчами mptcp дар роҳи трафик бурида мешавад, вазъ метавонад ба миён ояд, пас хатогии зерин пайдо мешавад:

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Дар ин ҳолат, шумо метавонед як ҳолати дигари кориро бидуни истифодаи MPTCP истифода баред, бештар дар бораи ин дар ин ҷо.

хулоса

Лоиҳаи OpenMPTCPRouter хеле ҷолиб ва муҳим аст, зеро он шояд ягона роҳи ҳалли ҳамаҷонибаи мушкилоти ҷамъбасти канал бошад. Ҳама чизи боқимонда ё маҳкам баста ва моликият аст, ё танҳо модулҳои алоҳида, ки одами оддӣ онро дарк карда наметавонад. Дар марҳилаи кунунии рушд, лоиҳа ҳанӯз хеле хом аст, ҳуҷҷатгузорӣ хеле бад аст, бисёр чизҳо танҳо тасвир карда нашудаанд. Аммо дар айни замон он кор мекунад. Ман умедворам, ки он минбаъд инкишоф меёбад ва мо роутерҳои хонагиро мегирем, ки метавонанд каналҳоро аз қуттӣ дуруст муттаҳид кунанд.

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Таҳиягари моро дар Instagram пайгирӣ кунед

Ҷамъбасти воқеии канали интернет - OpenMPTCPRouter

Манбаъ: will.com

Илова Эзоҳ