2013-03-19 11 views
8

Wiele czytałem na temat WebRTC, ale pozostaje jeszcze jedno pytanie. Mam nadzieję, że możesz mi w tym pomóc:Czy WebRTC dopuszcza połączenia jeden-do-wielu (multicast)?

Czy WebRTC pozwala mi utworzyć połączenie jeden-do-wielu? Nie mam na myśli "możliwości posiadania wielu połączeń z różnymi komputerami", naprawdę mówię o posiadaniu jednego połączenia, które przesyła dane do wielu punktów końcowych bez potrzeby "przesyłania" danych raz dla każdego punktu końcowego. Czy będzie możliwe wysłanie pojedynczej paczki do sieci, że po dotarciu do sieci magicznie podzieli się na wiele pakietów o różnych celach?

Mam nadzieję, że to, czego szukam :)

Do tej pory widziałem tylko jeden-do-jednego połączenia lub rozwiązania, które mają jedno podłączenie do centralnego serwera, który robi dla multicast ich (co zwykle powoduje dwukrotne pingowanie).

Ale dla mnie połączenia typu "jeden do jednego" nie wydają się być naprawdę przydatne (z powodu niskiej przepustowości łącza klientów), a rozwiązania z centralnym serwerem są również możliwe bez WebRTC (przy użyciu WebSockets), więc jedynym przypadkiem użycia WebRTC byłoby połączenie jeden-do-wielu.

Czy to jest coś, co będzie możliwe w przyszłości? Czy jest to już możliwe dzisiaj?

Odpowiedz

8

Trzy rzeczy:

  1. multicast IP w Internecie, nie jest to możliwe w tej chwili (adresy multicast nie są kierowane przez ISP)
  2. WebRTC pasuje do wielu przypadków użycia poza komunikacji jeden-do-wielu, po prostu spójrz na ten dokument: http://tools.ietf.org/html/draft-ietf-rtcweb-use-cases-and-requirements-06
  3. Połączenia WebRTC między przeglądarkami są zawsze szyfrowane (przy użyciu SRTP dla danych A/V i DTLS dla danych ogólnych) i parametry szyfrowania (klucze sesji itp.) są negocjowane dla każdego połączenia osobno. Jak zrobiłbyś to w środowisku multiemisji (pomyśl o nim jak o drzewie dystrybucji)?

Więc nie, WebRTC nie może być używany z multicast IP.

+0

Punkt 1. nie jest całkowicie zgodny z prawdą. Usługodawcy internetowi zapewniają przesyłanie multimediów, takich jak strumienie wideo lub audio za pośrednictwem multiemisji. – th0m4d

+1

Masz rację, ISP, tacy jak Deutsche Telekom, używają Multicast do dystrybucji swoich treści IPTV. Te sieci multiemisji są jednak zamknięte i nie mogą być wykorzystywane do rozpowszechniania treści przez żadnego użytkownika z wyjątkiem Deutsche Telekom. – Makkes

+0

@Makkes: Czy możemy utworzyć aplikację wideo wielościeżkową (jeden do wielu) z kompatybilnością różnych urządzeń za pomocą webRTC? (iPhone, iPad i komputer). Ponieważ czytam dużo WebRTC, w końcu wpadam w zakłopotanie. Proszę o poradę. – user2003356

0

Chciałbym odpowiedzieć "To nie na razie", ponieważ jako programista, mogę powiedzieć, że istnieje wiele sposobów, aby twórcy przeglądarek działały, jeśli my (użytkownicy) nalegamy na jego znaczenie.
Ale jak?
Ponieważ jest szyfrowanie, mogą pozwolić udostępnianie klucze szyfrowania sesji do grupy "zarejestrowanych" (multicast) użytkowników.
Ale jak? Cóż, sieć była utworzona do udostępniania.
Najbardziej oczywistym sposobem jest pośrednictwo serwera internetowego i funkcja JS WebRTC API (w celu załadowania kluczy użytkownika). Ponieważ multicast jest najczęściej używany do wydajnej dystrybucji wideo, masz serwer wideo RTP/SRTP. Serwer internetowy może współistnieć @ na tym samym komputerze. Jeśli zdecydują się rozszerzyć go na przeglądarki internetowe, to tylko rola "serwera" może zostać wykonana przez przeglądarkę internetową, która utworzyła strumień rozsyłania grupowego (nadawca). Klienci muszą wiedzieć, kto to jest. Jeszcze raz: @ 2013, grudzień to nadal nie jest możliwe. A multicast są dozwolone w Internecie tylko w: - niektórych eksperymentalnych sieciach WAN; - niektóre sieci ISP Internetu i wideo; - LAN (po włączeniu na poziomie przełącznika tanie przełączniki transmitują je do wszystkich portów). Ale możesz być ISP lub badaczem lub użytkownikiem sieci LAN, więc jest to konieczne.

+0

Po prostu sformatuj odpowiedź w odpowiedni sposób, zasługujesz na +1 –