WebRTC - WebRTC - Wikipedia

WebRTC
WebRTC Logo.svg
Түпнұсқа автор (лар)Джастин Уберти
Питер Тэтчер
Бастапқы шығарылым2011; 9 жыл бұрын (2011)
Тұрақты шығарылым
1.0[1] / 2018 жылғы 4 мамыр; 2 жыл бұрын (2018-05-04)
Репозиторийwebrtc.googlesource.com
ЖазылғанC ++,[2] JavaScript
ЛицензияBSD лицензиясы
Веб-сайтwebrtc.org

WebRTC (Интернеттегі нақты уақыттағы байланыс) тегін, ашық көзі қамтамасыз ететін жоба веб-шолғыштар және мобильді қосымшалар бірге шынайы уақыт қарапайым (RTC) байланыс бағдарламалық интерфейстер (API). Бұл аудио және видео байланыстың веб-парақтарда тікелей жұмыс жасауына мүмкіндік береді пиринг жүйесі орнату қажеттілігін жоятын байланыс плагиндер немесе жергілікті қолданбаларды жүктеп алыңыз.[3] Қолдаушы алма, Google, Microsoft, Mozilla, және Опера, WebRTC стандартталған Дүниежүзілік желі консорциумы (W3C) және Интернет-инженерлік жұмыс тобы (IETF).[4]

Оның миссиясы «браузерге, мобильді платформаларға және т.б. арналған бай, сапалы RTC қосымшаларын жасауға мүмкіндік беру» IoT құрылғыларға қосылып, олардың барлығына жалпы жиынтығы арқылы байланысуға мүмкіндік береді хаттамалар ".[4]

Тарих

2010 жылдың мамырында Google сатып алды Ғаламдық IP шешімдері немесе GIPS, а VoIP және бейнеконференциялар RTC-ге қажет көптеген компоненттерді, мысалы, кодектер мен эходы жою техникасын әзірлеген бағдарламалық жасақтама. Google GIPS технологиясын ашады және тиісті стандарттармен жұмыс істейді IETF және W3C салалық консенсусқа қол жеткізу.[5][6] 2011 жылдың мамырында, Google шығарды ашық көзі WebRTC деп аталатын нақты уақыт режиміндегі браузерге негізделген байланыс жобасы.[7] Осыдан кейін тиісті стандарттау бойынша тұрақты жұмыс жүргізілді хаттамалар ішінде IETF[8] және W3C ішіндегі браузердің API интерфейстері.[9]

2011 жылдың мамырында, Эриксон Зертханалар WebRTC-дің алғашқы енгізілуін модификацияланған қолданумен жасады WebKit кітапхана.[10] 2011 жылдың қазанында W3C сипаттамаға арналған алғашқы жобасын жариялады.[11] WebRTC кезеңдеріне бірінші кросс-шолғыштың бейнеқоңырауы (2013 ж. Ақпан), бірінші кросс-браузердің деректері (2014 ж. Ақпан) және 2014 ж. Шілде айындағы жағдай кіреді. Google Hangouts WebRTC-ді қолданудың «түрі» болды.[12]

W3C жобасы API-де алдын-ала жасалған жұмыстарға негізделген WHATWG.[13] Ол ConnectionPeer API деп аталды және стандарттардың алдын-ала тұжырымдамасын енгізу кезінде жасалды Эриксон Зертханалар.[14] WebRTC жұмыс тобы осы спецификацияның айтарлықтай дамуын күтеді:

  • RTCWEB тобындағы тұрақты алмасулардың нәтижелері IETF[15] жиынын анықтау үшін хаттамалар осы құжатпен бірге анықтайтын нақты уақыт режиміндегі байланыс веб-браузерлерде. Ешкімге сигнал беру хаттамасы ұсынылмаса да, SIP аяқталды WebSockets (RFC  7118 ) көбінесе SIP-ті қарастырылған байланыс сценарийлерінің көпшілігіне, сондай-ақ ашық кодты бағдарламалық жасақтаманың болуына байланысты ішінара қолданылады. JsSIP.
  • Құпиялылық мәселелері жергілікті мүмкіндіктер мен жергілікті ағындарды ашқан кезде пайда болады
  • Топ ішінде техникалық талқылау, атап айтқанда деректер арналарын енгізу бойынша[16]
  • Ерте тәжірибе жасау арқылы жинақталған тәжірибе
  • Басқа топтар мен жеке тұлғалардың кері байланысы

2017 жылдың қарашасында WebRTC 1.0 спецификациясы жұмыс жобасынан үміткердің ұсынымына көшті.[17]

Шолу

Дизайн

WebRTC негізгі компоненттеріне бірнеше кіреді JavaScript API:

  • getUserMedia аудио және бейне медианы алады (мысалы, құрылғының камерасы мен микрофонына қол жеткізу арқылы).[18]
  • RTCPeerConnection құрдастарының арасындағы аудио және бейне байланысын қамтамасыз етеді. Ол орындайды сигналдарды өңдеу, кодек өзара іс-қимыл, тең-теңімен байланыс, қауіпсіздік және өткізу қабілеттілігі басқару.[19]
  • RTCDataChannel құрбыларының арасындағы ерікті деректердің екі бағытты байланысына мүмкіндік береді. Ол бірдей API пайдаланады WebSockets және өте төмен кешігу.[20]

WebRTC API-де статистика функциясы бар:

  • getStats веб-қосымшаға WebRTC сессиялары туралы статистиканың жиынтығын алуға мүмкіндік береді. Бұл статистикалық мәліметтер W3C жеке құжатында сипатталған.[21]

WebRTC API құрамына кіреді сигнал беруге арналған ережелер жоқ, бұл құрдастарды қосуға және олардың арасында қалай байланыс орнатуға болатындығын анықтауға мүмкіндік береді. Қолданбалар қолданылады Интерактивті байланыс орнату қосылымдар үшін және қандай-да бір жолмен сеанстарды басқару, мүмкін кез-келгеніне сену Сессияны бастау туралы хаттама, Кеңейтілген хабарламалар және қатысу хаттамасы, Хабарлама кезегінде тұрған телеметриялық көлік, Матрица (протокол) немесе басқа хаттама. Сигнал бір немесе бірнеше серверлерге байланысты болуы мүмкін.[22][23]

RFC 7874 қамтамасыз ету үшін іске асыруды қажет етеді PCMA /ПКМУ (RFC  3551 ), Телефон оқиғасы DTMF (RFC  4733 ), және Опус (RFC  6716 ) аудио кодектер минималды мүмкіндіктер ретінде. PeerConnection, деректер арнасы және медиа түсіру шолғышының API интерфейстері W3C-де егжей-тегжейлі көрсетілген.

W3C WebRTC үшін ORTC (Object Real-Time Communications) дамытады.[24]

Мысалдар

Бастапқыда веб-браузерлерге арналған болса да, WebRTC-де браузерден тыс құрылғыларға, оның ішінде мобильді платформаларға арналған қосымшалар бар IoT құрылғылары. Мысалдар шолғышқа негізделген VoIP телефония, сонымен қатар бұлтты телефондар немесе веб-телефондар деп аталады, олар қоңырау шалуға және веб-шолғыштан алуға мүмкіндік береді, софтфонды жүктеу және орнату талабын ауыстырады.[25]

Қолдау

WebRTC-ге келесі браузерлер қолдау көрсетеді:

GStreamer тікелей WebRTC іске асыруды қамтамасыз етеді.[31]

Мазасыздық

2015 жылдың қаңтарында, TorrentFreak WebRTC-ді қолдайтын браузерлердегі қауіпсіздіктің маңызды ақаулығы туралы хабарлады, бұл оның қауіпсіздігіне зиян келтіреді VPN туннельдер шындықты көрсету арқылы IP мекен-жайы пайдаланушының.[32] IP мекенжайын оқуға арналған сұраныстар браузердің консолінде көрінбейді және оларды көпшілік бұғаттамайды жарнаманы бұғаттау /жеке өмір /қауіпсіздік сақтандырғыштарға қарамастан жарнама берушілер мен басқа ұйымдардың онлайн бақылауына мүмкіндік беретін қондырмалар[33] (дегенмен uBlock Origin қондырма бұл мәселені шеше алады). 2019 жылдың қыркүйегінен бастап, бұл WebRTC ақаулығы Firefox 69.x-те әлі де болса, әдепкі бойынша пайдаланушының ішкі IP мекен-жайын вебке шығарады.[34]

Сондай-ақ қараңыз

Әдебиеттер тізімі

  1. ^ «WebRTC 1.0: Браузерлер арасындағы нақты уақыттағы байланыс». Дүниежүзілік желі консорциумы. 27 қыркүйек 2018 жыл. Алынған 25 наурыз 2019.
  2. ^ «Src / webrtc - Google-де Git».
  3. ^ WebRTC телефонияны қалай өзгертеді. Blogs.trilogy-lte.com (2014-02-21). 2014-04-11 аралығында алынды.
  4. ^ а б «WebRTC». WebRTC. Архивтелген түпнұсқа 9 қаңтар 2018 ж. Алынған 6 ақпан 2018.
  5. ^ «WebRTC компоненттері Google-дің Global IP Solutions-ті сатып алуынан ба?». WebRTC. Алынған 6 ақпан 2018.
  6. ^ Wauters, Робин (18 мамыр 2010). «Google жаһандық IP шешімдері үшін $ 68,2 млн. Қолма-қол ұсыныс жасайды». TechCrunch. Алынған 6 ақпан 2018.
  7. ^ Харальд Алвестран (2011-05-31). «WebRTC бастапқы кодының Google-де шығарылуы». [email protected]. Алынған 2012-09-12.
  8. ^ WEB-браузерлердегі нақты уақыттағы байланыс жарғысы (rtcweb) жұмыс тобы
  9. ^ «WebRTC 1.0: Браузерлер арасындағы нақты уақыттағы байланыс». W3.org. Алынған 2012-09-12.
  10. ^ Стефан Хеканссон; Стефан Алунд (26 мамыр 2011). «HTML5-тен тыс: браузерде нақты уақыттағы байланыс тәжірибесі». Ericsson Research блогы. Алынған 6 ақпан 2018.
  11. ^ «WebRTC 1.0: Браузерлер арасындағы нақты уақыттағы байланыс (W3C жұмыс жобасы 2011 ж. 27 қазан)». Дүниежүзілік желі консорциумы. 27 қазан 2011 ж. Алынған 6 ақпан 2018.
  12. ^ Новак, Шимон. «WebRTC: бейнеконференциядан әлдеқайда көп». GitHub. Алынған 6 ақпан 2018.
  13. ^ «Кіріспе - HTML стандарты». Whatwg.org. Алынған 2012-09-12.
  14. ^ «HTML5-тен тыс: тең-теңімен сөйлесу видеосы». Labs.ericsson.com. Алынған 2012-09-12.
  15. ^ «Rtcweb күй беттері». Tools.ietf.org. Алынған 2012-09-12.
  16. ^ «жоба-jesup-rtcweb-деректер-хаттамасы-00 - WebRTC деректер арнасының хаттамасы». Tools.ietf.org. Алынған 2012-09-12.
  17. ^ «WebRTC 1.0: Браузерлер арасындағы нақты уақыттағы байланыс (W3C үміткерінің ұсынысы 02 қараша 2017 ж.)». 2 қараша 2017.
  18. ^ «Медиа түсіру және ағындар: getUserMedia». W3C. 2013-09-03. Алынған 2014-01-15.
  19. ^ «WebRTC: RTCPeerConnection интерфейсі». W3C. 2013-09-10. Алынған 2014-01-15.
  20. ^ «WebRTC: RTCDataChannel». W3C. 2013-09-10. Алынған 2014-01-15.
  21. ^ «WebRTC статистикасы API үшін идентификаторлар». W3C. 2014-09-29.
  22. ^ Цахи Левент-Леви (13 сәуір 2020). «WebRTC сервері: бұл нақты не?». BlogGeek.me.
  23. ^ Цахи Левент-Леви (13 қараша 2014). «Matrix.org және WebRTC: Мэттью Ходжсонмен сұхбат». BlogGeek.me.
  24. ^ «W3C ORTC (Нақты уақыттағы байланыс объектілері) қауымдастық тобы».
  25. ^ «Бабелфишті аулаңыз: ирландиялық телекомпания бұлтты телефонның жаңа түрін ойлап тапты». Қараша 2017.
  26. ^ «ORTC API енді Microsoft Edge-де қол жетімді». Microsoft. 2015-09-18.
  27. ^ Firefox Notes - жұмыс үстелі. Mozilla.org (2013-06-25). 2014-04-11 аралығында алынды.
  28. ^ «Safari 11.0». Apple Inc. Алынған 6 маусым 2017.
  29. ^ Опера жаңалықтары. blogs.opera.com (2013-11-19). 2015-09-17 аралығында алынды.
  30. ^ Firefox Notes - жұмыс үстелі. Mozilla.org (2013-09-17). 2014-08-04 күні алынды.
  31. ^ «GStreamer 1.14 шығарылым ноталары». gstreamer.freedesktop.org. Алынған 2019-12-19. 1.14 нұсқасынан бастап
  32. ^ Қауіпсіздіктің үлкен кемшіліктері VPN пайдаланушыларының нақты IP-адрестерін жібереді TorrentFreak.com (2015-01-30). 2015-02-21 алынған.
  33. ^ WebRTC үшін STUN IP-мекен-жай сұраулары 2015-02-21 алынған.
  34. ^ Раймонд Хилл (26 наурыз 2016). «WebRTC-дің жергілікті IP мекен-жайын жіберуіне жол бермеңіз». uBlock Origin құжаттамасы. Алынған 1 қыркүйек 2016.

Әрі қарай оқу

Сыртқы сілтемелер