WebRTC - WebRTC - Wikipedia

WebRTC
WebRTC Logo.svg
Asl muallif (lar)Jastin Uberti
Piter Tetcher
Dastlabki chiqarilish2011; 9 yil oldin (2011)
Barqaror chiqish
1.0[1] / 2018 yil 4-may; 2 yil oldin (2018-05-04)
Omborwebrtc.googlesource.com
YozilganC ++,[2] JavaScript
LitsenziyaBSD litsenziyasi
Veb-saytwebrtc.org

WebRTC (Internet-real vaqt aloqasi) bepul, ochiq manbali taqdim etadigan loyiha veb-brauzerlar va mobil ilovalar bilan haqiqiy vaqt oddiy (RTC) aloqa amaliy dasturlash interfeyslari (API). Bu to'g'ridan-to'g'ri ruxsat berish orqali audio va video aloqalarni veb-sahifalar ichida ishlashga imkon beradi foydalanuvchilararo aloqa o'rnatish, o'rnatish zaruratini yo'q qilish plaginlari yoki mahalliy dasturlarni yuklab oling.[3] Tomonidan qo'llab-quvvatlanadi olma, Google, Microsoft, Mozilla va Opera, WebRTC standartlashtirilmoqda Butunjahon Internet tarmog'idagi konsortsium (W3C) va Internet muhandisligi bo'yicha maxsus guruh (IETF).[4]

Uning vazifasi "brauzer, mobil platformalar va. Uchun boy, yuqori sifatli RTC dasturlarini ishlab chiqishga imkon berishdir IoT qurilmalar va ularning barchasiga umumiy to'plam orqali aloqa qilishlariga imkon bering protokollar ".[4]

Tarix

2010 yil may oyida Google sotib oldi Global IP echimlari yoki GIPS, a VoIP va videokonferentsaloqa dasturiy ta'minot kompaniyasi, RTC uchun zarur bo'lgan ko'plab komponentlarni ishlab chiqdi, masalan, kodeklar va echolarni bekor qilish texnikasi. Google GIPS texnologiyasini ochgan va tegishli standartlar bilan hamkorlik qilgan IETF va W3C sanoat konsensusini ta'minlash.[5][6] 2011 yil may oyida, Google ozod qilingan ochiq manbali WebRTC nomi bilan tanilgan brauzerga asoslangan real vaqtda aloqa uchun loyiha.[7] Buning ortidan tegishli narsalarni standartlashtirish bo'yicha doimiy ishlar olib borildi protokollar ichida IETF[8] va W3C-dagi brauzer API-lari.[9]

2011 yil may oyida, Ericsson Laboratoriyalar WebRTC-ning birinchi dasturini o'zgartirilgan yordamida qurdilar WebKit kutubxona.[10] 2011 yil oktyabr oyida W3C spektakl uchun o'zining birinchi loyihasini nashr etdi.[11] WebRTC bosqichlari orasida birinchi kross-brauzerning videoqo'ng'irog'i (2013 yil fevral), birinchi kross-brauzer ma'lumotlarini uzatish (2014 yil fevral) va 2014 yil iyul holatiga kiradi. Google Hangouts WebRTC-dan foydalanishda "bir xil" edi.[12]

W3C API loyihasi dastlabki ishlarga asoslangan WHATWG.[13] U ConnectionPeer API deb nomlangan va standartlardan oldingi kontseptsiyani amalga oshirishda yaratilgan Ericsson Laboratoriyalar.[14] WebRTC ishchi guruhi ushbu spetsifikatsiyani quyidagilarga asoslangan holda sezilarli darajada rivojlanishini kutmoqda.

  • RTCWEB guruhidagi doimiy almashinuv natijalari IETF[15] to'plamini aniqlash uchun protokollar ushbu hujjat bilan birgalikda aniqlang real vaqt aloqalari veb-brauzerlarda. Hech kim signalizatsiya protokoli majburiy emasligiga qaramay, SIP ustida WebSockets (RFC  7118 ) ko'pincha qisman SIP-ning ko'zda tutilgan aloqa stsenariylarining ko'pchiligida qo'llanilishi hamda ochiq manbali dasturiy ta'minot mavjudligi kabi ishlatiladi. JsSIP.
  • Maxfiylik muammolari mahalliy imkoniyatlar va mahalliy oqimlarni ochib berishda paydo bo'ladi
  • Guruh ichidagi, xususan ma'lumotlar kanallarini amalga oshirish bo'yicha texnik munozaralar[16]
  • Dastlabki tajribalar natijasida to'plangan tajriba
  • Boshqa guruhlar va shaxslarning mulohazalari

2017 yil noyabr oyida WebRTC 1.0 spetsifikatsiyasi Ishchi loyihadan nomzodlar tavsiyalariga o'tdi.[17]

Umumiy nuqtai

Dizayn

WebRTC-ning asosiy tarkibiy qismlariga bir nechta kiradi JavaScript API-lar:

  • getUserMedia audio va video vositalarni sotib oladi (masalan, qurilma kamerasi va mikrofoniga kirish orqali).[18]
  • RTCPeerConnection tengdoshlari o'rtasida audio va video aloqani ta'minlaydi. U bajaradi signallarni qayta ishlash, kodek muomala, peer-to-peer muloqot, xavfsizlik va tarmoqli kengligi boshqaruv.[19]
  • RTCDataChannel tengdoshlari o'rtasida o'zboshimchalik bilan ma'lumotlarning ikki tomonlama aloqasini ta'minlaydi. U xuddi shu API dan foydalanadi WebSockets va juda past kechikish.[20]

WebRTC API-da statistik funktsiya ham mavjud:

  • getStats veb-dasturga WebRTC sessiyalari haqidagi statistik ma'lumotlar to'plamini olish imkonini beradi. Ushbu statistik ma'lumotlar alohida W3C hujjatida tasvirlangan.[21]

WebRTC API o'z ichiga oladi signalizatsiya uchun qoidalar yo'q, bu ulanish uchun tengdoshlarni kashf etish va ular orasida qanday qilib aloqa o'rnatishni aniqlash. Ilovalardan foydalanish Interfaol ulanishni o'rnatish ulanishlar uchun va qandaydir tarzda sessiyalarni boshqarish, ehtimol ulardan biriga ishonish Sessiyani boshlash protokoli, Kengaytiriladigan xabarlar va mavjudlik protokoli, Telemetriya transportida navbatda turish, Matritsa (protokol) yoki boshqa protokol. Signalizatsiya bir yoki bir nechta serverga bog'liq bo'lishi mumkin.[22][23]

RFC 7874 ta'minlash uchun amalga oshirishni talab qiladi PCMA /PCMU (RFC  3551 ), Telefon voqeasi DTMF (RFC  4733 ) va Opus (RFC  6716 ) audio kodeklari minimal imkoniyatlar sifatida. PeerConnection, ma'lumotlar kanali va media capture brauzerining API-lari W3C-da batafsil bayon etilgan.

W3C WebRTC uchun ORTC (Object Real-Time Communications) ishlab chiqmoqda.[24]

Misollar

Dastlab veb-brauzerlar uchun ishlab chiqilgan bo'lsa-da, WebRTC-da brauzer bo'lmagan qurilmalar, shu jumladan mobil platformalar va IOT qurilmalari. Masalan, brauzerga asoslangan VoIP telefoniya, shuningdek, bulutli telefonlar yoki veb-telefonlar deb ataladi, bu qo'ng'iroqlarni veb-brauzer ichida amalga oshirishga va qabul qilishga imkon beradi, bu esa softphone-ni yuklab olish va o'rnatish talabini o'zgartiradi.[25]

Qo'llab-quvvatlash

WebRTC quyidagi brauzerlar tomonidan qo'llab-quvvatlanadi:

GStreamer to'g'ridan-to'g'ri bepul WebRTC dasturini taqdim etadi.[31]

Xavotirlar

2015 yil yanvar oyida, TorrentFreak WebRTC-ni qo'llab-quvvatlaydigan brauzerlarda xavfsizlik nuqtai nazaridan jiddiy nuqson borligi haqida xabar berib, uning xavfsizligini buzishini aytdi VPN tunnellar haqiqatni oshkor qilish orqali IP-manzil foydalanuvchi.[32] IP-manzilni o'qish so'rovlari brauzerning ishlab chiquvchi konsolida ko'rinmaydi va ko'pchilik tomonidan bloklanmagan reklama blokirovkasi /maxfiylik /xavfsizlik ehtiyot choralariga qaramay reklama beruvchilar va boshqa tashkilotlar tomonidan onlayn kuzatuvni amalga oshirishga imkon beradigan qo'shimchalar[33] (ammo uBlock Origin plagin bu muammoni hal qilishi mumkin). 2019 yil sentyabr oyidan boshlab, ushbu WebRTC xatosi Firefox 69.x-da yuz beradi va hali ham foydalanuvchining ichki IP-manzilini veb-saytga chiqaradi.[34]

Shuningdek qarang

Adabiyotlar

  1. ^ "WebRTC 1.0: Brauzerlar o'rtasidagi real vaqtda aloqa". Butunjahon Internet tarmog'idagi konsortsium. 27 sentyabr 2018 yil. Olingan 25 mart 2019.
  2. ^ "Src / webrtc - Google-da Git".
  3. ^ Qanday qilib WebRTC telefoniyani inqilob qilmoqda. Blogs.trilogy-lte.com (2014-02-21). 2014-04-11 da qabul qilingan.
  4. ^ a b "WebRTC". WebRTC. Arxivlandi asl nusxasi 2018 yil 9-yanvarda. Olingan 6 fevral 2018.
  5. ^ "WebRTC komponentlari Google tomonidan Global IP Solutions-ni sotib olishdanmi?". WebRTC. Olingan 6 fevral 2018.
  6. ^ Wauters, Robin (2010 yil 18-may). "Google Global IP Solutions uchun 68,2 million dollarlik naqd taklif qilmoqda". TechCrunch. Olingan 6 fevral 2018.
  7. ^ Xarald Alvestrand (2011-05-31). "WebRTC manba kodining Google-da chiqarilishi". [email protected]. Olingan 2012-09-12.
  8. ^ WEB-brauzerlarda (rtcweb) ishchi guruhda real vaqtda aloqa to'g'risidagi nizom
  9. ^ "WebRTC 1.0: Brauzerlar o'rtasidagi real vaqtda aloqa". W3.org. Olingan 2012-09-12.
  10. ^ Stefan Xakansson; Stefan Elund (2011 yil 26-may). "HTML5dan tashqari: brauzerda real vaqtda aloqa yordamida tajriba". Ericsson Research blog. Olingan 6 fevral 2018.
  11. ^ "WebRTC 1.0: Brauzerlar o'rtasidagi real vaqt aloqasi (2011 yil 27 oktyabrdagi W3C ishchi loyihasi)". Butunjahon Internet tarmog'idagi konsortsium. 2011 yil 27 oktyabr. Olingan 6 fevral 2018.
  12. ^ Nowak, Szymon. "WebRTC: videokonferentsiyadan juda ko'p narsa". GitHub. Olingan 6 fevral 2018.
  13. ^ "Kirish - HTML standarti". Whatwg.org. Olingan 2012-09-12.
  14. ^ "HTML5dan tashqarida: peer-to-peer" suhbat videosi. Labs.ericsson.com. Olingan 2012-09-12.
  15. ^ "Rtcweb holati sahifalari". Tools.ietf.org. Olingan 2012-09-12.
  16. ^ "draft-jesup-rtcweb-data -ocol-00 - WebRTC ma'lumotlar kanali protokoli". Tools.ietf.org. Olingan 2012-09-12.
  17. ^ "WebRTC 1.0: Brauzerlar o'rtasida real vaqtda aloqa (W3C nomzodining tavsiyasi 2017 yil 02-noyabr)". 2017 yil 2-noyabr.
  18. ^ "Media ta'qib qilish va oqimlari: getUserMedia". W3C. 2013-09-03. Olingan 2014-01-15.
  19. ^ "WebRTC: RTCPeerConnection interfeysi". W3C. 2013-09-10. Olingan 2014-01-15.
  20. ^ "WebRTC: RTCDataChannel". W3C. 2013-09-10. Olingan 2014-01-15.
  21. ^ "WebRTC Statistika APIsi uchun identifikatorlar". W3C. 2014-09-29.
  22. ^ Tsaxi Levent-Levi (2020 yil 13 aprel). "WebRTC Server: Bu aniq nima?". BlogGeek.me.
  23. ^ Tsaxi Levent-Levi (2014 yil 13-noyabr). "Matrix.org va WebRTC: Metyu Xojson bilan intervyu". BlogGeek.me.
  24. ^ "W3C ORTC (Ob'ektni real vaqtda aloqa) jamoatchilik guruhi".
  25. ^ "Babelfishni tuting: Irlandiyalik telekompaniya bulutli telefonning yangi turini ishlab chiqardi". 2017 yil noyabr.
  26. ^ "ORTC API endi Microsoft Edge-da mavjud". Microsoft. 2015-09-18.
  27. ^ Firefox Notes - ish stoli. Mozilla.org (2013-06-25). 2014-04-11 da qabul qilingan.
  28. ^ "Safari 11.0". Apple Inc. Olingan 6 iyun 2017.
  29. ^ Opera yangiliklari. bloglar.opera.com (2013-11-19). 2015-09-17 da olingan.
  30. ^ Firefox Notes - ish stoli. Mozilla.org (2013-09-17). 2014-08-04 da qabul qilingan.
  31. ^ "GStreamer 1.14 versiyasi yozuvlari". gstreamer.freedesktop.org. Olingan 2019-12-19. 1.14 versiyasidan beri
  32. ^ VPN foydalanuvchilarining ulkan xavfsizlik nuqsonlari "haqiqiy IP-manzillari TorrentFreak.com (2015-01-30). 2015-02-21 da qabul qilingan.
  33. ^ WebRTC uchun STUN IP-manzil so'rovlari 2015-02-21 da qabul qilingan.
  34. ^ Raymond Xill (2016 yil 26 mart). "WebRTC-ning mahalliy IP-manzildan chiqib ketishining oldini olish". uBlock Origin hujjatlari. Olingan 1 sentyabr 2016.

Qo'shimcha o'qish

Tashqi havolalar