Your SlideShare is downloading. ×
  • Like
DUMP-2013 Serverside - Когда же мы сможем нормально "звонить браузером"? - Патрушев Антон
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

DUMP-2013 Serverside - Когда же мы сможем нормально "звонить браузером"? - Патрушев Антон

  • 801 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
801
On SlideShare
0
From Embeds
0
Number of Embeds
4

Actions

Shares
Downloads
3
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Когда же мы сможемнормально«звонить браузером» ?Патрушев Антон
  • 2. Начнём с концаСейчас !!!Если у Вас Chrome или Firefox:yacr.pycon.ru:8000Yet Another Chat Roulette(без звука)
  • 3. Начнём с концаЧуть подробнее про yacr — в концепрезентации
  • 4. История VoIP● 1973 — Network Voice Protocol (DARPA)● 1995 — VocalTec● 1996 — попытки забанить в конгрессе● 1996 — H323● 1999 — SIP● 2003 — Skype● 2012 — 35% is Skype● 02/2013 — звонок между Firefox и Chrome
  • 5. Протоколы● H.323 (ITU-T)– Ужасная бинарная хрень (ASN.1/PER)– Звук по RTP● SIP (IETF) — Session Initiation Protocol– HTTP-like– SDP (Session Description Protocol)– Звук по RTP● Jingle XMPP (Google)– Звук по RTP
  • 6. Чего же нехватало ?● Доступ к микрофону и камере● Latency => UDP● UDP => NAT
  • 7. NAT: рождение легенды● Май 1994● Подмена IP адресов на маршрутизаторе● Решение проблемы нехватки IP● … создавшее много рабочих мест :)
  • 8. NAT: FTP active ?● Протоколы уровня приложения имеютобыкновение передавать внутри себя IPадреса (например, FTP active)● А давайте маршрутизатор станет ApplicationLayer Gateway ?
  • 9. NAT: UDP● TCP vs UDP в 1994● Classic STUN (2002)● ICE (2004)● STUN (2005)● TURN (2006)● ICE (2010)
  • 10. Что в браузере тебе моём ?● Adobe Flash– RTMP(E|T|S)?– RTMFP● Плагины для браузера (NPAPI)– Google Hangout– «Переупакованные» софтфоны
  • 11. WebRTC это...● MediaStream API — микрофон и камера● SDP offer/answer — для старта сессии● ICE framework — для «борьбы» с NAT● SRTP — (secure) для безопасности● <video> - для отображения видео :)
  • 12. Кодеки WebRTC● Аудио– SVOPC=>SILK=>Opus (Skype)– G.711– DTMF● Видео– VP8 (Google)● VP3 => Theora● VP6/VP7 => Macromedia Flash– H.264
  • 13. YACR● 59 строк на Python (tornado)● 149 строк на JS● WebSockets● WebRTC● https://github.com/apatrushev/yacr
  • 14. WebRTC работает● Chrome stable● Firefox stable (с опцией)● BOWSER на iOS/Android
  • 15. Код
  • 16. Материалы по теме● http://yacr.pycon.ru:8000● https://github.com/apatrushev/yacr● http://www.webrtc.org/● http://www.w3.org/2011/04/webrtc-charter.html● http://tools.ietf.org/wg/rtcweb/● http://www.html5rocks.com/en/tutorials/webrtc/basic● http://apprtc.appspot.com/
  • 17. Спасибо за внимание.Вопросы ?apatrushev@gmail.com