Ukusuka kwiSkype ukuya kwiWebRTC: indlela esilungelelanise ngayo unxibelelwano lwevidiyo ngewebhu

Ukusuka kwiSkype ukuya kwiWebRTC: indlela esilungelelanise ngayo unxibelelwano lwevidiyo ngewebhu

Unxibelelwano ngevidiyo yeyona ndlela iphambili yonxibelelwano phakathi kotitshala kunye nomfundi kwiqonga leVimbox. Sayiyeka iSkype kwakudala, sazama izisombululo ezininzi zeqela lesithathu kwaye ekugqibeleni sahlala kwiWebRTC - iJanus-gateway indibaniselwano. Kangangexesha elithile sasonwabile ngayo yonke into, kodwa sekunjalo eminye imiba engathandekiyo iqhubekile nokuvela. Ngenxa yoko, ulwalathiso lwevidiyo olwahlukileyo lwenziwa.

Ndabuza uKirill Rogovoy, intloko yendlela entsha, ukuba athethe malunga nokuvela konxibelelwano lwevidiyo e-Skyeng, iingxaki ezifunyenweyo, izisombululo kunye neentonga esiye sazisebenzisa ekugqibeleni. Siyathemba ukuba eli nqaku liya kuba luncedo kwiinkampani ezenza ividiyo ngokwazo ngesicelo sewebhu.

Inxalenye ethile yembali

Ehlotyeni lika-2017, intloko yophuhliso lweSkyeng, uSergey Safonov, wathetha kwi-Backend Conf ngebali malunga nendlela "esiyishiyile ngayo iSkype saza sasebenzisa iWebRTC." Abo banomdla banokubukela ukurekhodwa kwentetho ku unxibelelwano (~45 min), kwaye apha ndiza kuchaza ngokufutshane undoqo wayo.

KwiSikolo saseSkyeng, unxibelelwano ngevidiyo bekusoloko kuyeyona ndlela iphambili yonxibelelwano lukatitshala nomfundi. Ekuqaleni, i-Skype yayisetyenziswe, kodwa yayinganelisi ngenxa yezizathu ezininzi, ngokukodwa ngenxa yokungabikho kwelogi kunye nokungenakwenzeka kokudibanisa ngqo kwisicelo sewebhu. Ke ngoko, senze zonke iintlobo zovavanyo.

Ngokwenyani, iimfuno zethu zonxibelelwano ngevidiyo bezimalunga nezi zilandelayo:
- uzinzo;
- ixabiso eliphantsi ngesifundo ngasinye;
- izifundo zokurekhoda;
β€” ukulandelela ukuba ngubani othetha kakhulu (kubalulekile kuthi ukuba abafundi bathethe ngaphezu kukatitshala ngexesha lezifundo);
- ukulinganiswa komgca;
- ukukwazi ukusebenzisa zombini i-UDP kunye ne-TCP.

Eyokuqala ukuzama yaba kukusebenzisa iTokbox ngo-2013. Yonke into yayilungile, kodwa yabonakala ibiza kakhulu - ii-ruble ze-113 ngesifundo ngasinye - kwaye yadla inzuzo.

Ke ngo-2015, iVoximplant yadityaniswa. Nantsi umsebenzi esiwudingayo ukulandelela ukuba ngubani othetha kangakanani, kwaye ngexesha elifanayo isisombululo sasingabizi kakhulu: ukuba kuphela i-audio irekhodwe, ixabisa i-ruble ye-20 ngesifundo ngasinye. Nangona kunjalo, isebenze kuphela nge-UDP kwaye ayikwazanga ukutshintshela kwi-TCP. Nangona kunjalo, malunga ne-40% yabafundi baphela beyisebenzisa.

Emva konyaka, saqala ukuba nabathengi bequmrhu abaneemfuno zabo ezikhethekileyo. Umzekelo, yonke into kufuneka isebenze ngesikhangeli; inkampani ivula kuphela i-http kunye ne-https; o.t. akukho Skype okanye UDP. Abathengi benkampani = imali, ngoko babuyela kwi-Tokbox, kodwa ingxaki yexabiso ayizange ihambe.

Isisombululo - WebRTC kunye noJanus

Isigqibo sokusebenzisa iqonga lomkhangeli zincwadi wonxibelelwano lwevidiyo yoontanga-kwi-WebRTC. Inoxanduva lokuseka uxhulumaniso, i-encoding kunye ne-decoding streams, ukuvumelanisa amathrekhi kunye nokulawulwa komgangatho kunye nokusingatha i-glitches yenethiwekhi. Kwinxalenye yethu, kufuneka siqinisekise ukufundwa kwemijelo ukusuka kwikhamera kunye nemakrofoni, ukuzoba ividiyo, ukulawula unxibelelwano, ukuseka uqhagamshelo lweWebRTC kunye nokuhambisa imijelo kuyo, kunye nokuhambisa imiyalezo yomqondiso phakathi kwabathengi ukuseka unxibelelwano (iWebRTC ngokwayo ichaza kuphela ifomati yedata, kodwa hayi indlela yogqithiselo). Ukuba abathengi basemva kwe-NAT, iWebRTC idibanisa abancedisi be-STUN; ukuba oku akuncedi, JIKELA abancedisi.

Uxhulumaniso oluqhelekileyo lwe-p2p alwanelanga kuthi, kuba sifuna ukurekhoda izifundo zohlalutyo olongezelelweyo kwimeko yezikhalazo. Ke ngoko sithumela imijelo yeWebRTC nge-relay UJanus Gateway nguMeetecho. Ngenxa yoko, abaxhasi abazazi iidilesi zomnye nomnye, bebona kuphela idilesi yomncedisi kaJanus; yenza kwakhona imisebenzi yomncedisi wesignali. UJanus uneempawu ezininzi esizifunayo: ngokuzenzekelayo utshintshela kwi-TCP ukuba umxhasi une-UDP evaliwe; inokurekhoda zombini i-UDP kunye ne-TCP imilambo; i-scalable Kukho ne-plugin eyakhelwe-ngaphakathi yovavanyo lwe-echo. Ukuba kuyimfuneko, iiseva ze-STUN kunye ne-TURN ezivela kwi-Twilio ziqhagamshelwe ngokuzenzekelayo.

Ehlotyeni lika-2017, saba neeseva ezimbini zikaJanus ezisebenzayo, kunye neseva eyongezelelweyo yokucubungula iifayile ezirekhodiweyo zeaudio kunye nevidiyo, ukuze ungahlali kwiiprosesa zezona ziphambili. Xa kudityaniswa, iiseva zikaJanus zikhethwe ngokwesiseko esingaqhelekanga (inombolo yoqhagamshelo). Ngelo xesha, oku kwakwanele, ngokweemvakalelo zethu, wanika malunga nomda wokhuseleko ophindwe kane, ipesenti yokuphunyezwa yayimalunga ne-80. Ngelo xesha, ixabiso lancitshiswa libe ngu ~ 2 ruble ngesifundo ngasinye, kunye nophuhliso kunye nenkxaso.

Ukusuka kwiSkype ukuya kwiWebRTC: indlela esilungelelanise ngayo unxibelelwano lwevidiyo ngewebhu

Ukubuyela kwisihloko sonxibelelwano lwevidiyo

Sihlala sibeka esweni ingxelo yabafundi nootitshala ukuze sichonge kwaye silungise iingxaki kwangexesha. Ngehlobo le-2018, umgangatho wefowuni wawuqinile kwindawo yokuqala phakathi kwezikhalazo. Kwelinye icala, oku kwakuthetha ukuba siye sazoyisa ngempumelelo ezinye iintsilelo. Ngakolunye uhlangothi, kwakuyimfuneko ukwenza into ngokukhawuleza: ukuba isifundo siphazamiseka, sibeka umngcipheko wokulahlekelwa yixabiso layo, ngamanye amaxesha kunye neendleko zokuthenga iphakheji elandelayo, kwaye ukuba isifundo sokuqala siphazamiseka, sibeka umngcipheko wokulahlekelwa ngumthengi onokubakho. ngokupheleleyo.

Ngelo xesha, unxibelelwano lwethu lwevidiyo lwalusekwimo ye-MVP. Ngamafutshane, bayisungula, yasebenza, bayilinganisa kanye, baqonda ukuba yenziwa njani - kuhle, kuhle. Ukuba iyasebenza, musa ukuyilungisa. Akukho mntu wawuthetha ngabom umbandela womgangatho wonxibelelwano. Ngo-Agasti, kwacaca ukuba le nto ayinakuqhubeka, kwaye saqalisa isalathiso esahlukileyo sokufumanisa ukuba yintoni engalunganga ngeWebRTC kunye noJanus.

Ngegalelo, olu lwalathiso lufunyenwe: isisombululo se-MVP, akukho metrics, akukho njongo, akukho nkqubo yokuphucula, ngelixa i-7% yootitshala bekhalaza malunga nomgangatho wonxibelelwano (kwakungekho datha kubafundi nokuba).

Ukusuka kwiSkype ukuya kwiWebRTC: indlela esilungelelanise ngayo unxibelelwano lwevidiyo ngewebhu

Indlela entsha isendleleni

Umyalelo ujongeka ngolu hlobo:

  • Intloko yesebe, okwangumphuhlisi ophambili.
  • I-QA inceda ukuvavanya utshintsho, ijonge iindlela ezintsha zokwenza iimeko zonxibelelwano ezingazinzanga, kwaye ibike iingxaki kumgca wangaphambili.
  • Umhlalutyi uhlala ejonga ulungelelwaniso oluhlukeneyo kwidatha yobugcisa, uphucula uhlalutyo lwengxelo yomsebenzisi, kwaye ujonga iziphumo zovavanyo.
  • Umphathi wemveliso unceda ngomkhombandlela jikelele kunye nokwabiwa kwezibonelelo zovavanyo.
  • Umphuhlisi wesibini uhlala encedisa ngokucwangcisa kunye nemisebenzi ehambelanayo.

Ukuqala, siseta i-metric ethembekileyo elandelele utshintsho kuvavanyo lwekhwalithi yonxibelelwano (umyinge weentsuku, iiveki, iinyanga). Ngelo xesha, la yayingamabanga avela kubafundisi-ntsapho; kamva amabanga aphuma kubafundi ongezwa kuwo. Emva koko baqala ukwakha iingqikelelo malunga nokuba yintoni na engalunganga, bayilungise, kwaye bajonge utshintsho kwi-dynamics. Saya kwisiqhamo esisezantsi: umzekelo, sitshintshe i-codec ye-vp8 nge-vp9, ukusebenza kuphuculwe. Sazama ukudlala kunye noseto lukaJanus kwaye siqhube ezinye iimvavanyo - kwiimeko ezininzi azizange zikhokele kuyo nantoni na.

Kwinqanaba lesibini, i-hypothesis yavela: I-WebRTC isisombululo sontanga, kwaye sisebenzisa umncedisi phakathi. Mhlawumbi ingxaki ilele apha? Siqale ukugrumba kwaye safumana olona phuculo lubalulekileyo ukuza kuthi ga ngoku.

Ngelo xesha, umncedisi ovela echibini wakhethwa kusetyenziswa i-algorithm yobudenge: ngamnye wayeno "ubunzima" bakhe, ngokuxhomekeke kwijelo kunye namandla, kwaye sazama ukuthumela umsebenzisi kulowo "ubunzima" obukhulu, ngaphandle kobunzima. ukunika ingqalelo apho umsebenzisi ebekuyo ngokwejografi . Ngenxa yoko, umfundisi-ntsapho waseSt. Petersburg wayenokunxibelelana nomfundi osuka eSiberia ukutyhubela eMoscow, kungekhona ngomncedisi wethu kaJanus eSt.

I-algorithm yenziwe kwakhona: ngoku, xa umsebenzisi evula iqonga lethu, siqokelela iipings kuye kuzo zonke iiseva usebenzisa i-Ajax. Xa useka uxhulumaniso, sikhetha iperi yeepings (utitshala-umncedisi kunye nomncedisi womfundi) kunye neyona mali incinci. I-ping encinci ithetha umgama omncinci womnatha kumncedisi; umgama omfutshane uthetha amathuba asezantsi okulahleka kweepakethi; Ukulahleka kwepakethi yeyona nto imbi kunxibelelwano lwevidiyo. Isabelo se-negativity sehle ngesiqingatha kwiinyanga ezintathu (ukuba silungile, ezinye iimvavanyo zenziwa ngeli xesha, kodwa esi siphantse sibe nempembelelo enkulu).

Ukusuka kwiSkype ukuya kwiWebRTC: indlela esilungelelanise ngayo unxibelelwano lwevidiyo ngewebhu

Ukusuka kwiSkype ukuya kwiWebRTC: indlela esilungelelanise ngayo unxibelelwano lwevidiyo ngewebhu

Kutshanje sifumene enye into engabonakaliyo, kodwa ebaluleke kakhulu: endaweni yomncedisi we-Janus onamandla kwisitishi esityebileyo, kungcono ukuba nezibini ezilula kunye ne-bandwidth encinci. Oku kuye kwacaca emva kokuba sithenge oomatshini abanamandla ngethemba lokuxinana kumagumbi amaninzi (iiseshoni zonxibelelwano) kubo ngaxeshanye. Iiseva zinomda we-bandwidth, esinokuyiguqulela ngokuchanekileyo kwinani lamagumbi - siyazi ukuba zingaphi ezinokuvulwa, umzekelo, kwi-300 Mbit / s. Ngokukhawuleza ukuba kukho amagumbi amaninzi avulekileyo kwiseva, siyayeka ukuyikhetha kwimisebenzi emitsha de umthwalo uyancipha. Ingcamango yayiyeyokuba, emva kokuthenga umatshini onamandla, siza kulayisha itshaneli kuyo ukuya phezulu, ukwenzela ukuba ekugqibeleni iya kunqunyulwa ngumprosesa kunye nememori, kwaye kungekhona nge-bandwidth. Kodwa kwavela ukuba emva kwenani elithile lamagumbi avulekileyo (420), nangona umthwalo kwiprosesa, imemori kunye nediski isekude kakhulu kwimida, i-negativity iqala ukufika kwinkxaso yobugcisa. Kuyabonakala ukuba, kukho into eya isiba mandundu ngaphakathi kuJanus, mhlawumbi kukho izithintelo apho. Saqala ukuzama, sanciphisa umda we-bandwidth ukusuka kwi-300 ukuya kwi-200 Mbit / s, kwaye iingxaki zahamba. Ngoku sithenge amaseva amathathu amatsha kanye kunye nemida ephantsi kunye neempawu, sicinga ukuba oku kuya kukhokelela ekuphuculeni okuzinzile kumgangatho wonxibelelwano. Kakade ke, asizange sizame ukufumanisa ukuba kuqhubeka ntoni apho; iintonga zethu ziyinto yonke. Ekukhuseleni kwethu, masithi ngelo xesha kwakuyimfuneko ukucombulula ingxaki yoxinzelelo ngokukhawuleza, kwaye ungenzi kakuhle; ngaphandle koko, uJanus wethu yibhokisi emnyama ebhalwe ngo-C, kubiza kakhulu ukuyilungisa.

Ukusuka kwiSkype ukuya kwiWebRTC: indlela esilungelelanise ngayo unxibelelwano lwevidiyo ngewebhu

Ewe, kwinkqubo si:

  • ihlaziywe zonke izixhomekeke ezinokuthi zihlaziywe, zombini kumncedisi kunye nakumxhasi (ezi nazo zaziyimifuniselo, sizijonge iziphumo);
  • ilungisiwe zonke iibugs ezichongiweyo ezinxulumene nemeko ethile, umzekelo, xa uxhulumaniso lululiwe kwaye aluzange lubuyiselwe ngokuzenzekelayo;
  • Sibambe iintlanganiso ezininzi kunye neenkampani ezisebenza kwintsimi yonxibelelwano lwevidiyo kunye nokuqhelana neengxaki zethu: ukusasaza imidlalo, ukuququzelela iiwebinars; sazama yonke into eyayibonakala iluncedo kuthi;
  • Kwenziwa uphononongo lobugcisa lwehardware kunye nomgangatho wonxibelelwano lootitshala, ekwaphuma kubo ezona zikhalazo zininzi.

Iimvavanyo notshintsho oluthe lwalandela zenze ukuba kube nokwenzeka ukunciphisa ukunganeliseki ngonxibelelwano phakathi kootitshala ukusuka ku-7,1% ngoJanuwari 2018 ukuya kwi-2,5% ngoJanuwari 2019.

Yintoni elandelayo

Ukuzinzisa iqonga lethu leVimbox yenye yeeprojekthi eziphambili zenkampani ngo-2019. Sinethemba elikhulu lokuba siya kukwazi ukugcina umfutho kwaye singasaboni unxibelelwano lwevidiyo kwizikhalazo eziphezulu. Siyaqonda ukuba inxalenye ebalulekileyo yezi zikhalazo inxulumene nokulala kwiikhompyuter zabasebenzisi kunye ne-Intanethi, kodwa kufuneka simisele le nxalenye kwaye sisombulule ezinye. Yonke enye into yingxaki yobugcisa, kubonakala ngathi kufuneka sikwazi ukumelana nayo.

Ubunzima obuphambili kukuba asazi ukuba leliphi inqanaba elinokwenzeka ngokwenene ukuphucula umgangatho. Ukufumana le siling ngowona msebenzi uphambili. Ke ngoko, kwacwangciswa imifuniselo emibini:

  1. thelekisa ividiyo nge-Janus kunye ne-p2p eqhelekileyo kwiimeko zokulwa. Olu vavanyo sele lwenziwe, akukho mahluko abalulekileyo afunyenweyo phakathi kwesisombululo sethu kunye ne-p2p;
  2. Masibonelele ngeenkonzo (ezibizayo) kwiinkampani ezenza imali kuphela kwizisombululo zonxibelelwano lwevidiyo, kwaye sithelekise ubungakanani bokungahoyi kubo kunye nale ikhoyo.

Le mifuniselo mibini iya kusivumela ukuba sichonge injongo enokufikelelwa kwaye sigxile kuyo.

Ukongeza, kukho inani lemisebenzi enokusonjululwa ngokwesiqhelo:

  • Senza i-metric yobugcisa bomgangatho wonxibelelwano endaweni yokuphononongwa okuzimeleyo;
  • Senza iilog zeseshoni ezineenkcukacha ngakumbi ukuze sihlalutye ngokuchanekileyo ngakumbi ukungaphumeleli okwenzekayo, ukuqonda ukuba zenzeke nini kwaye phi kanye, kwaye zeziphi iziganeko ezibonakala zingahambelani ezenzekayo ngelo xesha;
  • Silungiselela uvavanyo lomgangatho woxhulumaniso oluzenzekelayo phambi kwesifundo, kwaye sikwanika umxhasi ithuba lokuvavanya ngesandla uqhagamshelo ukuze kuncitshiswe inani lokungakhathali okubangelwa yi-hardware yakhe kunye nejelo;
  • siya kuphuhlisa kwaye siqhube iimvavanyo zomthwalo wonxibelelwano lwevidiyo ngakumbi kwiimeko ezimbi, ngokulahleka kwepakethi eguquguqukayo, njl.;
  • sitshintsha ukuziphatha kweeseva kwimeko yeengxaki zokwandisa ukunyamezela iimpazamo;
  • Siya kulumkisa umsebenzisi ukuba kukho into engalunganga ngokudibanisa kwakhe konke, njengoko iSkype yenza, ukuze aqonde ukuba ingxaki isecaleni lakhe.

Ukusukela ngo-Epreli, umkhombandlela wonxibelelwano ngevidiyo ube yiprojekthi eyahlukileyo epheleleyo ngaphakathi kweSkyeng, ejongene nemveliso yayo, ingeyiyo nje inxalenye yeVimbox. Oku kuthetha ukuba siqala ukukhangela abantu ukusebenza ngevidiyo kwimodi yexesha elizeleyo. Ewe, njengesiqhelo Sijonge abantu abaninzi abalungileyo.

Kwaye, ewe, siyaqhubeka nokunxibelelana nabantu kunye neenkampani ezisebenza ngonxibelelwano lwevidiyo. Ukuba ufuna ukutshintshiselana ngamava nathi, siya kuvuya! Phawula, qhagamshelana - siya kuphendula wonke umntu.

umthombo: www.habr.com