U bood nuxurka ugu muhiimsan
OpenAI

Maayo 4, 2026

Injineernimada

Sida OpenAI ay si ballaaran u bixiso AI cod ah oo daahitaan yar leh

Waxaa qoray Yi Zhang iyo William McDonald, xubnaha ka tirsan Shaqaalaha Farsamada

AI-ga codka wuxuu u dareemaa dabiici oo rasmi ah haddii wada-sheekeysigu ku socdo xawaaraha hadalka. Marka shabakadu caqabad noqoto, dadku isla markiiba waxay u maqlaan hakadyo aan dabiici ahayn, kala-go’yo hadal oo googo’an, ama soo dhex-gal hadal oo dib u dhacay. Taasi waxay muhiim u tahay codka ChatGPT, horumariyeyaasha ku dhisaya Realtime API, wakiillada ka shaqeeya socodka shaqo ee isdhexgalka leh, iyo moodooyinka u baahan inay farsameeyaan maqalka inta isticmaaluhu weli hadlayo.

Marka loo eego baaxadda OpenAI, taasi waxay ka dhigan tahay saddex shuruudood oo cad oo qeexan:

  • Saameyn caalami ah oo gaaraysa in ka badan 900 milyan oo isticmaaleyaal firfircoon toddobaadkii
  • Dejinta isku-xirka degdegga ah si isticmaaluhu u bilaabi karo hadalka isla marka kal-fadhigu bilaabmo
  • Waqti hoose oo deggan oo warbaahintu ku tagto kuna soo noqoto, oo leh isbeddel dib-u-dhac hoose iyo luminta xirmooyinka oo yar, si is-dhaafsiga hadalku u dareemo degdeg oo cad

Kooxda OpenAI ee mas’uulka ka ah isdhexgalka waqtiga-dhabta ah ee AI ayaa dhawaan dib u qaabaysay stack-keeda WebRTC si ay wax uga qabato saddex caqabadood oo isku dhacay markii baaxaddu korodhay: joojinta warbaahinta ee hal-deked-kulan-kiiba si fiican uguma habboona kaabayaasha OpenAI, kulamada ICE (Interactive Connectivity Establishment) iyo DTLS (Datagram Transport Layer Security) ee xaalad-haynta waxay u baahan yihiin lahaansho deggan, halka marin-habeynta caalamiga ahna ay tahay inay ilaaliso daahitaanka boodada koowaad inuu hooseeyo. Qoraalkan, waxaan ku sharxaynaa qaab-dhismeedka kala qaybsan ee relay plus transceiver ee aan dhisnay si aan macaamiisha ugu ilaalinno hab-dhaqanka caadiga ah ee WebRTC, annagoo beddelayna sida xirmooyinka loogu jiheeyo gudaha kaabayaasha OpenAI.

WebRTC waxay noo suurtagelisaa inaan samayno alaabooyinka AI ee waqti-dhab ah

WebRTC waa halbeeg furan oo loogu talagalay dirista cod, fiidiyow, iyo xog daahitaan yar leh oo u dhexeeya daalacdayaasha, barnaamijyada moobilka, iyo adeegayaasha. Badanaa waxaa lala xiriiriyaa wicitaannada isku-fil ilaa isku-fil, laakiin sidoo kale waa aasaas wax ku ool ah oo loogu talagalay nidaamyada waqtiga-dhabta ah ee macmiil-ilaa-server, sababtoo ah waxay jaangoynaysaa qaybaha adag ee warbaahinta is-dhexgalka ah: ICE oo loogu talagalay dejinta isku xirnaanta iyo ka gudbidda NAT (Tarjumaadda Cinwaanka Shabakadda), DTLS iyo SRTP (Hab-maamuuska Gaadiidka Waqtiga-dhabta ah ee Sugan) oo loogu talagalay gudbinta sirgaysan, gorgortanka codec-ka oo loogu talagalay cadaadinta iyo furfuridda codka, RTCP (Hab-maamuuska Xakamaynta Gaadiidka Waqtiga-dhabta ah) oo loogu talagalay xakamaynta tayada, iyo astaamaha dhinaca macmiilka sida baabi’inta dhawaaqa celiska ah iyo kaydinta jitter-ka.

Jaangoyntaasi waxay muhiim u tahay badeecadaha AI-ga. WebRTC la’aanteed, macmiil kasta wuxuu u baahnaan lahaa xal gaar ah oo ku saabsan sida loo dhiso isku-xirnaanta NAT-yada, loo sirgeliyo warbaahinta, loo waafajiyo codecs-yada (koodheeyayaasha-furayaasha loo xushay gudbinta iyo ka-saarista cadaadiska), iyo loola qabsado xaaladaha shabakadda ee is beddelaya. WebRTC, waxaan ku dhisi karnaa xirmo hab-maamuus oo horeyba looga hirgeliyey daalacashada iyo madalaha moobilka, annagoo shaqadeenna diiradda saarayna kaabayaasha isku xira warbaahinta waqtiga-dhabta ah iyo moodellada.

Waxaan sidoo kale ka sii dhisnaa bay’adda WebRTC lafteeda, oo ay ku jiraan hirgelinno il-furan oo bisil iyo shaqada jaangooynta ee ka dhigta biraawsarrada, app-yada moobilka, iyo serverrada kuwo wada shaqayn kara. Shaqadii aasaasiga ahayd ee Justin Uberti (mid ka mid ah naqshadeeyayaashii asalka ahaa ee WebRTC) iyo Sean DuBois (abuuraha iyo dayactiraha Pion) waxay suuragelisay in kooxo sideenna oo kale ah ay ku dhisaan kaabayaasha warbaahinta ee si adag loo tijaabiyay, halkii ay dib uga abuuri lahaayeen gudbinta heer-hoose, sirgelinta, iyo hab-dhaqanka xakamaynta ciriiriga. Waxaan nasiib u leenahay in Justin iyo Sean labaduba ay hadda yihiin asxaab shaqo halkan OpenAI, iyagoo gacan ka geysanaya hagidda sida aan WebRTC iyo AI-ga waqtiga-dhabta ah isugu soo dhoweynno.

AI-ga, sifada ugu muhiimsan waa in maqalku u yimaado qaab qulqul joogto ah. Wakiil cod ku shaqeeya wuxuu bilaabi karaa qoraal-u-rogista, caqliyeynta, wicitaanka qalabka, ama abuurista hadal inta isticmaaluhu weli hadlayo, halkii uu ka sugi lahaa soo gelin dhammaystiran, iyadoo la ilaalinayo hab rasmi ah. Taasi waa farqiga u dhexeeya nidaam u ekaada mid wada-sheekaysi rasmi ah iyo mid u ekaada habka riix-si-aad-u-hadasho.

Doorashada qaab-dhismeedka warbaahinta

Markii aan doorannay WebRTC, su’aasha xigtay waxay ahayd halka lagu soo afjari lahaa (halka aan ku aqbali lahayn oo aan mas’uul uga noqon lahayn xiriirka WebRTC—tusaale ahaan, xadka) iyo sida fadhiyadaas loogu xiriirin lahaa backend-ka inference-ka. Joojintu waa muhiim sababtoo ah waxay go’aamisaa sida aan u maareyno xaaladda kal-fadhiga waqtiga-dhabta ah, gudbinta warbaahinta, jiheynta, daahitaanka, iyo go’doominta fashilka.

Ikhtiyaarka 1: Habka SFU wuxuu AI-ga ugu darayaa ka-qaybgale WebRTC ahaan

SFU, ama unug gudbin xulasho leh, waa adeege warbaahineed oo ka hela hal qulqul WebRTC ka-qaybgale kasta, kadibna si xulasho leh ugu gudbiya qulqullada kuwa kale si rasmi ah. Qaabkan, SFU-gu wuxuu ku soo afjaraa xiriir WebRTC oo gooni ah ka qaybgale kasta, AI-guna wuxuu fadhiga ugu soo biiraa sidii ka qaybgale kale si rasmi ah. Taasi waxay si fiican ugu habboonaan kartaa alaabooyinka si dabiici ah u leh ka-qaybgalayaal badan, sida wicitaannada kooxeed, fasallada, ama kulamada wada-shaqayneed si rasmi ah. Waxay hal meel ku haysaa codecs-ka maqalka, farriimaha RTCP, kanaallada xogta, duubista, iyo siyaasadda stream kasta si rasmi ah.1

Xitaa badeecooyinka macmiil-ilaa-AI, SFU badanaa waa barta bilowga caadiga ah sababtoo ah waxay u oggolaanaysaa kooxaha inay dib u isticmaalaan hal nidaam oo la xaqiijiyay oo loogu talagalay calaamadeynta, marin-u-socodsiinta warbaahinta, duubista, la-socodka nidaamka, iyo ballaarinno mustaqbalka ah sida wareejinta bini’aadam ama ku darista ka-qaybgalayaal dheeraad ah.

Ikhtiyaarka 2: Habka gudbinta ayaa ku soo afjaraa WebRTC geeska wuxuuna u beddelaa hab-raaca backend ah

Culayska shaqadeennu wuu ka duwan yahay. Fadhiyada intooda badan waa 1:1—hal isticmaale oo la hadlaya hal nooc, ama hal codsi oo la hadlaya hal wakiil waqtiga-dhabta ah—iyadoo wareeg kasta uu leeyahay xasaasiyad ku saabsan daahitaanka. Qaabka taraafikadaas awgeed, waxaan doorannay nooc transceiver ah: adeeg WebRTC oo edge ah ayaa soo afjara xiriirka macmiilka, ka dibna warbaahinta iyo dhacdooyinka u beddela borotokoollo gudaha ah oo ka fudud, si loogu adeegsado inference-ka nooca, qoraal-duubista, curinta hadalka, isticmaalka qalabka, iyo isku-duwidda.

Naqshaddan, transceiver-ku waa adeegga keliya ee leh xaaladda kalfadhiga WebRTC, oo ay ku jiraan hubinnada isku-xirnaanta ICE, gacan-qaadka DTLS, furayaasha siraynta SRTP, iyo meertada nolosha kalfadhiga. “Termination” halkan waxay ka dhigan tahay in transceiver-ku yahay bar-dhammaadka dhammaystira gacan-qaadyadaas oo sirgeliya ama furfura xogta warbaahinta. In xaaladdaas lagu hayo hal meel waxay ka dhigtay lahaanshaha kalfadhiga mid si fudud loo fahmo loona falanqeeyo, waxayna u oggolaatay adeegyada backend-ka inay u ballaadhaan sida adeegyada caadiga ah halkii ay iyagu laftoodu u dhaqmi lahaayeen sidii ka-qaybgalayaal WebRTC ah.

Dhibaatada aasaasiga ah ee hawlgelinta: WebRTC waxay la kulantaa Kubernetes

Kadib markii aan doorannay nooca transceiver-ka, hirgelinteenní ugu horreysay waxay ahayd hal adeeg oo Go ah oo lagu dhisay Pion kaas oo maareynayay labadaba signaling-ka iyo soo-afjaridda warbaahinta. Waxay awood siisaa codka ChatGPT, bar-dhammaadka WebRTC ee API-ga wakhtiga-dhabta ah, iyo tiro mashruucyo cilmi-baaris ah.

Hawlgal ahaan, adeegga transceiver-ka wuxuu qabtaa laba hawlood:

  • Calaamadeynta: gorgortanka SDP, xulashada codec-ka, aqoonsiyada gelitaanka ICE, iyo dejinta kalfadhiga
  • Warbaahin: Joojinta isku-xirnaanta WebRTC ee hoos-u-socda iyo sii wadidda isku-xirnaanta kor-u-socda ee adeegyada backend-ka loogu talagalay falanqaynta iyo isku-dubaridka

Waxaan rabnay in adeeggu u shaqeeyo sida inta kale ee kaabayaashayada: Kubernetes, halkaas oo culeysyada shaqada la ballaarin karo ama la yareyn karo, isla markaana ay uga guuri karaan martigeliyaha ilaa mid kale marka baahidu is beddesho. Laakiin nooca WebRTC ee caadiga ah ee hal port fadhi kasta si liidata ayuu ugu habboon yahay deegaankaas, sababtoo ah wuxuu ku tiirsan yahay xaddiyo waaweyn oo port-yada UDP ee dadweynaha ah, kuwaas oo ay adag tahay in la soo bandhigo, la sugo, lana ilaaliyo marka pods lagu daro, la saaro, ama dib loo jadwaleeyo.2

Dhammaanshaha port-yada

Dhibaatadii ugu horreysay waxay ahayd moodeelka laftiisa ee “hal deked (port) kal-fadhi kasta”. Marka isku-mar ahaanshuhu sarreeyo, taasi waxay ka dhigan tahay in la soo bandhigo lana maareeyo baaxado aad u ballaaran oo dekedo UDP ah.

  • Isu-dheellitirayaasha culayska daruurta iyo adeegyada Kubernetes looma qaabayn in ay ku salaysnaadaan tobannaan kun oo dekedo UDP dadweyne ah halkii adeeg. Baaxad kasta oo dheeraad ah waxay ku kordhisaa kakanaanta hawlgalka habaynta dheellitiraha culayska, hubinta caafimaadka, siyaasadda firewall-ka, iyo badqabka hirgelinta.3
  • Xadadka ballaaran ee dekedaha UDP way adag tahay in la sugo, sababtoo ah waxay kordhiyaan baaxadda meelaha dibadda laga gaari karo waxayna adkeeyaan hubinta siyaasadaha shabakadda.
  • Sidoo kale kuma habboona autoscaling-ka. Pod-yada si joogto ah ayaa loogu daraa, looga saaraa, loona dib loogu jadwaleeyaa Kubernetes. In pod kasta looga baahan yahay inuu kaydiyo oo shaaciyo baaxad weyn oo dekedo xasilloon waxay dabacsanaantaas ka dhigtaa mid si fudud u jabi karta.4

Taasi waa sababta nidaamyo badan oo WebRTC ah ay ugu dhaqaaqaan hal deked UDP oo server kasta ah, iyadoo kala-soocid heer-codsi ah ay ka dambeyso dekeddaas.5

Ku-dhegganaanta xaaladda dawladnimo

Naqshadaha hal port server-kiiba waxay xalliyaan dhibaatada tirada port-yada, balse waxay keenaan dhibaato labaad: ilaalinta lahaanshaha kalfadhi kasta guud ahaan koox serverro ah.

ICE iyo DTLS waa hab-maamuusyo xaalad-ku-tiirsan. Habraaca abuuray kal-fadhi wuxuu u baahan yahay inuu sii helo xirmooyinka kal-fadhigaas si uu u xaqiijiyo hubinnada isku-xirnaanta, u dhammaystiro gacan-qaadka DTLS, uga saaro sirta SRTP, una maareeyo isbeddellada dambe ee kal-fadhiga sida dib-u-bilowyada ICE. Haddii xirmooyinka isla kal-fadhiga ay ku dhacaan habraac ka duwan, habayntu way fashilmi kartaa ama socodka warbaahintu wuu kala go’i karaa.

Arrintani waxay keentay in la helo bartilmaameed gaar ah: in la bandhigo aag yar oo go'an oo UDP ah oo loo furo internet-ka dadweynaha, iyadoo weli xirmo kasta loo gudbinayo transceiver-ka leh fadhiga WebRTC ee u dhigma.

Isbarbardhigga qaab-dhismeedyada warbaahinta WebRTC

Waxaan qiimeynay dhowr hab oo lagu gaari karo yoolkaas, oo ay ku jirto TURN (Traversal Using Relays around NAT), halkaas oo relay cidhif ah uu soo afjaro qoondaymaha macaamiisha oo uu taraafikada u gudbiyo isagoo iyaga ku matalaya si rasmi ah.2

Habka

Faa'iidooyinka

Khasaaraha

IP:port gaar ah oo u gaar ah kalfadhi kasta (sidoo kale loo yaqaan UDP toos ah oo asal ah)

Dariiqa tooska ah ee xog u marta inta u dhaxaysa macmiilka iyo server-ka.

Ma jiro lakab dhexe oo xogta sii gudbiya inta ay dhex mareyso marinka xogta

Waxaa loo baahan yahay hal port UDP oo dadweyne ah kalfadhi kasta.

Meelo badan oo port-yo ah oo la furo waa ay adag tahay in la maareeyo iyo in la sugo amnigooda.

Ku habboonaan aan fiicnayn oo loogu talagalay Kubernetes iyo nidaamyada xamuul-qaybiyeyaasha ee cloud-ka

IP:port u gaar ah server kasta

In si weyn loo yareeyo tirada port-yada UDP ee bannaanka u furan, halkii mid walba si gaar ah loo soo bandhigi lahaa

Hal socket oo lala wadaago server-ka kasta wuxuu kala saari karaa kalfadhiyo badan

Si fiican ayuu ugu shaqaynayaa hal computer, laakiin kuma shaqayn karo nidaam weyn oo ay ka wada dhex shaqaynayaan koox server-yo ah oo xamuul-qaybiye leh

Kala-soocidda kalfadhiga hal marti-geliye waxay kaliya caawisaa ka dib marka baakaddu gaarto marti-geliyahaas; marka loo eego raxan miisaan leh, baakadda ugu horreysa waxay wali ku degi kartaa xaalad khaldan, markaa wali waxaad u baahan tahay hab go'an oo loogu jiheeyo geeddi-socodka iska leh.


Gudbiyaha TURN (joojinta borotokoolka)

Macaamiishu waxay keliya u baahan yihiin inay gaaraan cinwaanka relay-ga TURN iyo port-ka

Waxay xeerka dhexe ka dhigi kartaa mid aan dhammaad lahayn

Qoondaynta TURN waxay ku dartaa wareegyo dejin ah

Dhaqaajinta ama soo celinta qoondaynta ee adeegayaasha TURN wali way adag tahay

Gudbiye aan xogta kaydin + Soo-dhoweeye xogta maamula(relay-ga OpenAI + relay-ga + transceiver-ka)

Raad ama muuqaal yar oo uu computer-kaagu ku leeyahay internet-ka

Transceiver-ka ayaa weli maamulaya dhammaan fadhiga WebRTC-ga

Waxay ku daraysaa hal tallaabo oo gudbin ah ka hor inta aysan warbaahinta gaarin transceiver-ka iska leh maamulka.

Waxay u baahan tahay isku-dubbarid gaar ah oo ka dhexeeya relay-ga iyo transceiver-ka.

Dulmarka Qaab-dhismeedka: Relay + Transceiver

Qaab-dhismeedka aan soo saarnay wuxuu kala saaraa jiheynta xirmooyinka xogta iyo soo-afjaridda hab-maamuuska. Calaamadeyntu weli waxay gaartaa transceiver-ka si loo dejiyo fadhiga, halka xogta warbaahintu ay marka hore soo marto relay-ga. Relay-gu waa lakab gudbin UDP oo fudud lehna raad dadweyne oo yar, transceiver-kuna waa bar-dhammaadka WebRTC ee xaalad-haysa ee ka dambeeya.

Relay-gu si bilaa-xaalad ah ayuu xirmooyinka ugu sii gudbiyaa transiivarka.

Relay-gu ma furfuro sirta warbaahinta, ma socodsiiyo mashiinnada xaaladda ICE, mana ka qaybqaato gorgortanka codec-ka. Waxay akhrisaa metadata ku filan oo xirmada ah si ay u doorato meesha loo socdo, ka dibna waxay xirmada u sii gudbisaa gudbiye-qaadaha maamula kal-fadhiga. Gudbiye-qaataha weli wuxuu arkaa socod WebRTC oo caadi ah, welina wuxuu leeyahay dhammaan xaaladda borotokoolka. Marka laga eego aragtida macmiilka, waxba kama beddelmaan fadhiga WebRTC.

U weecinta ku salaysan aqoonsiyada gelitaanka ICE

Jihaynta xirmada koowaad waa tallaabada muhiimka ah ee habayntan. Relay-gu waa inuu xirmada ugu horreysa ee ka timaadda macmiilka ku hago dariiqa xirmada laftiisa ka hor inta aanu jirin wax kalfadhi ah, halkii uu hakad gelin lahaa si uu u adeegsado adeeg raadin dibadeed.

Kalfadhi kasta oo WebRTC ah wuxuu horey u leeyahay barta marin-habeynta oo hab-maamuuska asal ahaan leeyahay: jajabka magaca isticmaalaha ee ICE, ama ufrag, oo ah aqoonsi gaaban oo la is-weydaarsado inta lagu jiro dejinta kalfadhiga laguna celiyo hubinnada isku-xirnaanta ee STUN. Waxaan soo saarnaa ufrag-ka dhinaca server-ka si uu ugu jiro metadata hagid oo ku filan, taas oo relay-ga u oggolaanaysa inuu ka soo qiyaaso cluster-ka loo socdo iyo transceiver-ka iska leh.

Jaantuska taxanaha wuxuu muujinayaa sida isku xirka loo aasaaso

Inta lagu jiro calaamadeynta, gudbiye-qaataha wuxuu qoondayaa xaaladda kalfadhiga wuxuuna ku soo celiyaa VIP relay la wadaago iyo deked UDP ah gudaha jawaabta SDP. VIP waa cinwaan IP khayaali ah oo hor yaalla kooxda relay-ga; marka lagu daro dekedda, wuxuu macmiilka siinayaa hal meel oo deggan oo uu u socdo, sida `203.0.113.10:3478`, inkasta oo tusaalooyin badan oo relay ahi ay ka dambeeyaan. Xirmada ugu horreysa ee jidka warbaahinta ee macmiilku badanaa waa codsi xidhitaan STUN (Adeegyada Ka-gudbidda Kal-fadhiga ee NAT), kaas oo ICE u adeegsato inay xaqiijiso in xirmooyinku gaari karaan cinwaanka la shaaciyay.

Relay wuxuu falanqeeyaa kaliya inta ku filan ee xirmada STUN ee ugu horreysa si uu u akhriyo ufrag-ka server-ka, u fasiro tilmaanta marin-hagaynta, una gudbiyo xirmada transceiver-ka iska leh. Gudbiye-qaate kasta wuxuu ka dhageystaa socket UDP ah oo la wadaago, taasoo ka dhigan hal bar-dhammaadka nidaamka hawlgalka oo ku xiran IP:port gudaha ah, ma aha hal socket kalfadhi kasta. Ka dib marka relay-gu ka abuuro kalfadhi IP:dekedda isha ee macmiilka una socota meeshaas transceiver-ka, xirmooyinka DTLS, RTP, iyo RTCP ee xiga waxay ku dhex qulqulaan kalfadhiga iyada oo aan dib loo furfurin ufrag-ka.

Fadhiga relay-ga si ula kac ah ayuu u kooban yahay, wuxuuna ka kooban yahay oo keliya fadhi ku jira xusuusta si uu u wargeliyo gudbinta baakadaha, oo ay weheliyaan tiriyeyaal lagama maarmaan u ah kormeerka iyo waqti-cabbireyaal loogu talagalay dhicitaanka iyo nadiifinta fadhiga. Xulashadan naqshadeynta waxay ilaalisaa marinnaynta xirmooyinka si toos ah waddada xirmada. Haddii relay-gu dib u bilaabmo oo uu lumiyo kalfadhiga, baakadka STUN ee xiga ayaa dib uga dhisa kalfadhiga tilmaanta hagidda ee ufrag. Si looga dhigo mid xitaa la isku halayn karo, Redis cache ayaa loo adeegsadaa in lagu hayo khariidaynta <IP-ga macmiilka + Dekedda, IP-ga transceiver-ka + Dekedda> marka marinka la dejiyo, si dib loogu soo ceshan karo waqti aad uga horreeya inta uusan xirmada STUN ee xigta imaan.

Gudbinta Relay-ga Caalamiga ah iyo Calaamadeynta lagu hago Juqraafi ahaan

Markii aan yareynay dusha sare ee UDP-ga dadweynaha oo aan ku koobnay tiro yar oo cinwaanno iyo dekedo deggan, waxaan awoodnay inaan isla qaabka gudbinta (relay) si caalami ah u hirgelinno. Global Relay waa shabakaddeenna meelaha gelitaanka relay-ga ee juqraafi ahaan loo qaybiyey, kuwaas oo dhammaantood hirgeliya isla hab-dhaqanka gudbinta xirmooyinka.

Gelitaanka juqraafi ahaan ballaaran wuxuu gaabiyaa boodka ugu horreeya ee macmiilka ilaa OpenAI, sababtoo ah xirmo waxay shabakaddeenna ka geli kartaa barta gudbinta ee u dhow isticmaalaha, labadaba juqraafi ahaan iyo qaab-dhismeedka shabakadda, halkii ay marka hore uga gudbi lahayd internet-ka dadweynaha si ay u gaarto gobol fog. Marka si ficil ah loo eego, taasi waxay ka dhigan tahay daahitaan hoose, jitter yar, iyo lumisyo isdaba-joog ah oo laga fogaan karo ka hor inta aysan taraafikadu gaarin laf-dhabarta shabakaddeenna.6

Lakabka Gudbinta Caalamiga ah wuxuu ka helaa baakadaha xogta macmiilka wuxuuna u gudbiyaa kooxda gudbiye-qaataha.

Waxaan u isticmaalnaa hagidda juqraafiyeed iyo u-dhowaanshaha ee Cloudflare calaamadeynta, si codsiga bilowga ah ee HTTP ama WebSocket uu u gaaro koox transceiver ah oo u dhow. Macnaha guud ee codsiga wuxuu go’aamiyaa goobta fadhiga iyo barta gelitaanka ee Global Relay ee loo soo bandhigo macmiilka si rasmi ah. Jawaabta SDP waxay bixisaa cinwaanka Global Relay, halka ufrag-ku uu ka kooban yahay macluumaad ku filan si Global Relay uu warbaahinta ugu jiheeyo cluster-ka loo qoondeeyay, relay-guna uu ugu jiheeyo transceiver-ka loo socdo si rasmi ah.

Marka la isku daro, calaamadeynta juqraafi ahaan la hago iyo Global Relay waxay dejinta iyo warbaahintaba saaraan dariiq gelitaan oo u dhow, iyadoo kalfadhiga lagu sii hayo inuu ku xiran yahay hal gudbiye-qaate si rasmi ah. Taasi waxay yaraynaysaa waqtiga tag-iyo-soo-noqoshada ee calaamad-bixinta iyo hubinta koowaad ee isku-xirnaanta ICE, taas oo si toos ah u gaabinaysa muddada uu isticmaaluhu sugo si rasmi ah ka hor inta hadalku bilaaban karo.

Hirgelinta Relay iyo waxqabadka

Waxaan adeegga relay-ga ku qornay Go, waxaana si kas ah u ilaalinnay in hirgelintu ahaato mid kooban. Linux-ka, xirmada shabakadaynta ee kernel-ku waxay ka heshaa xirmooyinka UDP is-dhexgalka shabakadda ee mashiinka waxayna u gudbisaa socket, oo ah bar-dhammaadka nidaamka hawlgalka ee geeddi-socodku akhriyo ka dib marka uu ku xiro IP:Port. Relay-gu wuxuu ku shaqeeyaa booska isticmaalaha, sidaas darteed hannaan Go oo caadi ah ayaa ka akhriya madaxda xirmooyinka socket-kaas, cusboonaysiiya qaddar yar oo ka mid ah xaaladda socodka, kana gudbiya xirmooyinka iyadoo aan WebRTC la soo afjarin. Uma baahnayn wax qaab-dhismeed ka-boodista kernel-ka ah, kaas oo u oggolaan lahaa habraac ka socda userspace inuu si toos ah u baaro safafka shabakadda si loo helo heerar baakado oo ka sarreeya, balse sidoo kale ku dari lahaa kakanaanta hawlgalka.

Xulashooyinka naqshadeynta ee muhiimka ah:

  • Ma jirto joojinta borotokoolka: Relay-gu wuxuu kala saaraa oo keliya madaxaha STUN/ufrag; wuxuu u adeegsadaa xaalad la kaydiyay DTLS, RTP, iyo RTCP ee xiga, isagoo xirmooyinka ku haya kuwo aan la fasirin.
  • Xaalad ku-meelgaar ah: Waxay ilaalisaa khariidad yar, oo leh waqti-dhicitaan gaaban, kuna jirta xusuusta, taas oo isku xidhaysa cinwaanka macmiilka iyo meesha loo socdo ee transceiver-ka, si loogu adeego xaaladda socodka iyo awoodda la-socodka.
  • Ballaarinta jiifta: Tusaalooyin relay oo badan ayaa si isku mid ah uga shaqeeya gadaasha qalabka dheellitirka culeyska. Xaaladdu ma aha xaalad adag oo WebRTC ah, sidaas darteed dib-u-bilaabiddu waxay keentaa hoos-u-dhac yar oo taraafiko ah iyo soo-kabasho degdeg ah oo qulqulka ah.

Tallaabooyinka lagu kordhinayo hufnaanta:

  • SO_REUSEPORT waa ikhtiyaar socket oo Linux ah kaas oo u oggolaanaya shaqaale gudbin oo badan oo ku jira isla mashiinka inay ku xirmaan isla dekedda UDP-ga. Kernel-ku markaas wuxuu u qaybiyaa xirmooyinka soo galaya hawlwadeennadaas, taas oo ka hortagta caqabad ka dhalata hal wareeg-akhris.
  • runtime.LockOSThread wuxuu ku xiraa goroutine kasta oo akhrisa UDP thread gaar ah oo ka tirsan OS-ka. Marka lagu daro SO_REUSEPORT, taasi badanaa waxay u janjeertaa inay xirmooyinka ka yimaada isla socodka (IP:Port-ka isha iyo halka loo socdo oo lagu daray hab-maamuuska) ku hayso isla xudunta CPU-ga, taasoo hagaajinaysa isku-dhawaanshaha kaydka isla markaana yareynaysa beddelidda macnaha guud.
  • Buffers hore loo qoondeeyay iyo koobiyeynta ugu yar ayaa hoos u dhiga culayska parsing-ka iyo qoondaynta si looga fogaado ururinta qashinka ee Go.

Hirgelintani waxay si guul leh u maareysay taraafikadayada warbaahinta waqtiga-dhabta ah ee caalamiga ah iyadoo leh baaxad relay oo yar marka la barbardhigo, sidaas darteed waxaan doorbidnay naqshadda fudud halkii aan qaadan lahayn jidka kernel bypass-ka.

Natiijooyinka iyo casharrada la bartay

Qaab-dhismeedkani wuxuu noo suurtagelinayaa inaan warbaahinta WebRTC ku socodsiino Kubernetes annaga oo aan soo bandhigin kumannaan dekedood oo UDP ah. Taasi waa muhiim sababtoo ah aag UDP oo ka yar oo go’an ayaa ka fudud in amnigiisa la sugo oo culeyskiisa la dheellitiro, waxayna u oggolaanaysaa kaabayaasha inay ballaarmaan iyadoo aan loo qoondeyn kala duwanaansho dekedo dadweyne oo ballaaran. Iyada oo ay jirto taageero kaabayaal oo ka wanaagsan oo ka timaadda Kubernetes iyo amni dheeraad ah sababtoo ah aagga dusha oo yar, naqshaddani sidoo kale waxay ilaalinaysaa hab-dhaqanka WebRTC ee caadiga ah ee macmiillada, waxayna xaqiijinaysaa in naqshad aan SFU lahayn ay ahayd ikhtiyaarka caadiga ah ee ku habboon culayska shaqadeenna. Inta badan kalfadhiyadeennu waa kuwo dhibic-ilaa-dhibic ah, xasaasi u ah daahitaanka, wayna sahlan yihiin in la ballaariyo marka adeegyada saadaasha aysan u baahnayn inay u dhaqmaan sida peer-rada WebRTC.

Casharka guud waa in meesha ugu fiican ee lagu daro kakanaanta ay tahay lakab routing oo khafiif ah, ee aysan ahayn adeeg kasta oo backend ah, mana aha hab-dhaqan client oo si gaar ah loo habeeyey. Ku codeynta metadata-ka weecinta gudaha goob u dhalatay borotokoolka waxay na siisay weecin go’an oo xirmada koowaad ah, raad UDP dadweyne oo yar, iyo dabacsanaan ku filan oo lagu meeleeyo barta soo-gelinta meel u dhow isticmaaleyaasha adduunka oo dhan.

Dhowr xulasho ayaa si gaar ah muhiim u ahaa:

  • Ilaali macnaha hab-maamuuska cidhifka. Macmiiladu weli waxay adeegsadaan WebRTC-ga caadiga ah, taas oo isdhexgalka biraawsarrada iyo aaladaha moobilka sidii uu yahay u ilaalinaysa.
  • Ku hay xaaladaha adag ee kal-fadhiga hal meel. Transceiver-ku wuxuu maamulaa ICE, DTLS, SRTP, iyo wareegga nolosha kal-fadhiga; relay-gu wuxuu kaliya gudbiyaa xirmooyinka.
  • Ku samee hagidda adigoo ku salaynaya macluumaadka hore uga jira habaynta. ICE ufrag-ku wuxuu na siiyay hook hagidda xirmada koowaad, isaga oo aan ku darin ku-tiirsanaan lookup (raadis) oo hot-path-ka ah.
  • Hagaaji kiiska caadiga ah ka hor inta aadan gaarin kernel bypass. Hirgelin cidhiidhi ah oo Go ah oo si taxaddar leh loo isticmaalo SO_REUSEPORT, xidhitaanka dunta, iyo falanqaynta qoondaynta hoose ayaa ku filnayd shaqadayada.

Codka AI-ga waqtiga-dhabta ah wuxuu shaqeeyaa oo keliya marka kaabayaasha dhaqaaluhu ka dhigayo dib-u-dhaca mid aan la arki karin. Annaga, taasi waxay la macno ahayd in la beddelo qaabka hawlgalintayada WebRTC iyada oo aan la beddelin waxa macaamiishu ka filayaan WebRTC lafteeda.