Uplink-Bandbreitenanforderungen für HD-Streaming?

1431
JakeHawkes42

Ich habe einen TV-Dienst, der ADSL-Technologie verwendet. Das bedeutet, dass mein Fernseher im Wesentlichen alles über das Internet streamen kann.

Mir wurde heute gesagt, dass dies mindestens 1 MB / s Uplink erfordern würde, um arbeiten zu können. Ist das korrekt?

Beachten Sie, ich spreche nicht von der Bandbreite, die um einiges höher wäre. Dies ist nach oben, mit anderen Worten, mein TV - Anbieters Set-Top - Box benötigt mindestens 1 MB / s Upload - Kapazität um eine 2-3MB / s - Stream Stream nach unten (Ich vermute, auf das).

Was sendet es? ACKs

6
@rahuldottech So? Das Fernsehen kann über ADSL übertragen werden, auch wenn eine Kabelverbindung üblicher ist. DavidPostill vor 5 Jahren 1
Benötigen Sie eine Smartcard mit CI + Modul? Thomas Moors vor 5 Jahren 0

3 Antworten auf die Frage

18
Spiff

Dies hängt vom Streaming-Protokoll ab, es können jedoch Acks gesendet werden, Wiederholungsanforderungen, Berichte zur Kundenqualität, Wiedergabebefehle (Wiedergabe / Pause / Rücklauf) und Anforderungen zum Ändern der Stream-Bitrate zur Anpassung an die Netzwerkbedingungen.

Keines dieser Systeme würde annähernd eine konstante Datenrate von 1 MBit / s erreichen, so dass sie wahrscheinlich mehr verlangen, als sie wirklich benötigen, in der Hoffnung, dass mit dem zusätzlichen Headroom anderer Verkehr nicht ausreichen wird, um Staus und Pufferblasen auszulösen, die den Datenverkehr beeinträchtigen können reibungslose Wiedergabe und Betrieb des Streaming-Dienstes.

10
Horn OK Please

Ohne das genaue Modell Ihrer Set-Top Box und das Protokoll zu kennen, mit dem es mit Ihrem TV-Anbieter verbunden ist, ist es unmöglich zu wissen, wofür genau diese Bandbreite verwendet wird. Wir können jedoch einige fundierte Vermutungen auf der Grundlage der von Ihnen erhaltenen Dienste machen.

Erstens, jedes digitale Videoprotokoll wird, wie Sie vermuteten, eine Form von "ACK" haben, um den erfolgreichen Empfang von Daten anzuzeigen. Digitalvideo ist kein Einwegprotokoll. Um die Pakete in der richtigen Reihenfolge zu halten und den Videostream synchron zu halten (um sicherzustellen, dass der Videoplayer kein Video zu schnell oder zu langsam abspielt), senden beide Seiten häufig Timing-Daten miteinander. Verworfene Pakete werden basierend auf einem Algorithmus behandelt, um zu bestimmen, ob es Zeit ist, das Paket erneut zu senden, oder einfach das Video zu schneiden und weiterzumachen. Es könnte auch bereit sein, unvollständige Daten zu entschlüsseln und abzuspielen, und die dadurch möglicherweise auftretende Verfälschung akzeptieren (aus diesem Grund hat manchmal digitales Fernsehen drahtlos dieses Problem).

Zu den zusätzlichen Funktionen, die jeder teilnehmerbasierte TV-Dienst bieten sollte, gehören:

  • Eine Form der Authentifizierung, um festzustellen, dass Sie ein registrierter zahlender Kunde sind, und um Sie (den Abonnenten) spezifisch gegenüber anderen zu identifizieren . Der Dienst ist nicht anonym, da Sie wahrscheinlich ein "Paket" mit abonnierten Kanälen haben und nur die Kanäle erhalten, für die Sie bezahlen.
  • Eine Form der Verfolgung, welche Kanäle Sie wann ansehen. Dies kann ein seltenes Signal sein, z. B. "Wenn der Benutzer den Kanal wechselt, teilen Sie dem Anbieter mit, welchen Kanal wir gerade betrachten". Ob der Anbieter wählt verwendet diese Daten für Marketingzwecke ist ihre Sache, aber es hat ungeachtet sie zur Verfügung gestellt werden, damit sie wissen, welcher Kanal Video - Stream zu schicken Sie!
  • Eine Form der Aktivitätsverfolgung, die den Anbieter benachrichtigt, wenn Sie auf der Fernbedienung Tasten drücken. Dies wird immer häufiger, um die Benutzeroberfläche zu verbessern: Sie werden Daten zu den schwierigsten Aufgaben sammeln und versuchen, diese in zukünftigen Updates zu vereinfachen. Sie können Optionen beseitigen, die selten verwendet werden.
  • Daten zur Signalqualität: Ihre STB kann dem Provider mitteilen, wenn das Signal häufig unterbrochen wird. Das könnte die Techniker automatisch darauf aufmerksam machen, dass ein Fehler vorliegt. Oder sie bieten möglicherweise einen Stream mit geringerer Qualität an, der zuverlässiger ist (z. B. ein elegantes Downgrade von 1080p auf 720p).
  • Diagnosedaten: Ihre STB kann gelegentlich Daten über die Betriebszeit, verfügbare Ressourcen wie Speicherplatz und Arbeitsspeicher sowie Protokolle von Software-Abstürzen hochladen.

1 Mbit / s hört sich nach viel an, der nominale Overhead einer regulären HTTP-Anforderung (die dieser Dienst möglicherweise verwendet oder nicht verwendet) liegt bei etwa 2% . Ihre Schätzung von 1 Mbit / s basiert wahrscheinlich auf:

  • Wenn Sie über genügend Bandbreite für Dinge wie Debug-Protokolle verfügen (die mehrere Megabyte groß sein können), um schnell genug hochgeladen zu werden, sodass der Prozess, der sie sendet, keine Zeitüberschreitung verursacht. Vielleicht dauert es nur 60 oder 90 Sekunden, bis der Vorgang abgeschlossen ist, bevor er aufgibt.
  • Ein verschlechtertes Signal in Ihrer Leitung könnte bedeuten, dass ein 1 Mbit / s- Provision tatsächlich etwa die Hälfte oder weniger liefert, und der ISP ist möglicherweise nicht motiviert, das zu verbessern. Im Idealfall funktioniert Ihr Fernsehgerät auch unter solch schlechten Bedingungen. Wenn Sie also nur 512 Kbit / s benötigen, können Sie mit 1 Mbit / s rechnen.
  • Normaler Betrieb während des TV-Streamings kann erheblich weniger Bandbreite verbrauchen, aber 1 Mbit / s kann ein "Worst-Case" sein, wenn Sie beispielsweise häufig mit Ihrer Fernbedienung spielen, häufig die Kanäle wechseln, den TV-Guide anzeigen usw. - sie Sie möchten sicherstellen, dass Ihre Verbindung all das erledigen kann, ohne dass der Upstream zu stark belastet wird und ein Zeitlimit auftritt.
  • Wenn die ADSL-Leitung mit etwas anderem geteilt wird (insbesondere mit Computern, die aus wesentlich mehr Gründen als TV-STBs hochgeladen werden), benötigen Sie ausreichend Kapazität auf der Teilnehmerleitung für den Upstream. 1 Mbit / s ist heutzutage eine relativ niedrige Geschwindigkeit im Vergleich zu den meisten Dingen.

Der Overhead des Videoprotokolls kann tatsächlich viel höher als 2% sein. Die Verschlüsselung (in beide Richtungen) kann einige Prozent hinzufügen. Möglicherweise ist die Größe jedes Datenpakets sehr klein, was den Gesamtaufwand erhöhen würde, da Sie mehr Gesamtpakete hätten und jedes mit Metadaten verknüpft ist. Das alles beinhaltet ein bisschen Upstream und das summiert sich schließlich.

Insgesamt lässt sich nicht mit Sicherheit sagen, warum sie der Meinung sind, dass sie 1 Mbit / s Upstream für Ihre TV-STB benötigen, aber es ist wahrscheinlich nur eine Vermutung oder aufgrund von Tests, die darauf hindeuten, dass bestimmte Vorgänge einen gewissen Upstream-Schub erfordern Sie müssen eine bestimmte Geschwindigkeit haben, um eine anständige Leistung zu erzielen (z. B. erfordert der anfängliche Handshake zur Authentifizierung Ihrer STB möglicherweise jedes Mal einen Burst, wenn die Box die Verschlüsselungsschicht mit der Provider-Zentrale neu aushandeln muss).

Ich bezweifle, werden sie mit einem stetigen 1 Mbit / s, während nur normal Video - Streaming, though. Die Qualität und die Bitrate des Videos müssten extrem hoch sein, damit jedes vernünftig effiziente Video-Streaming-Protokoll kontinuierlich so viel Upstream erfordert.

Terminologieproblem in * Digitalvideo ist kein Einwegprotokoll *. Ich denke, Sie meinen "Streaming" oder "On-Demand" -Video. Ich kann eine Antenne an meinen Fernseher / Monitor anschließen und digitale Videosendungen über Radiofrequenz empfangen ([ATSC] (https://en.wikipedia.org/wiki/ATSC_tuner)), und das ist definitiv Einweg. Multicast über das Internet ist ebenfalls eine Sache (obwohl normalerweise nicht für Endbenutzer). Sie benötigen nur ACKs mit einem Protokoll wie TCP, das für * zuverlässige * 1: 1-Verbindungen ausgelegt ist. Peter Cordes vor 5 Jahren 1
* Beide Seiten senden häufig Timing-Daten an *. Unwahrscheinlich; Der Player verfügt normalerweise über eine ausreichend genaue Uhr, und die Video-Metadaten (der Container, wie ".mp4" oder ".mkv" oder was auch immer das Streaming-Format ist) verfügen über Frame-Timing-Informationen und A / V-Synchronisationsinformationen. Wenn der Player Pause / Zurückspulen unterstützt, puffert der Player wahrscheinlich einige Sekunden vor dem Server, und der Server kümmert sich nicht wirklich darum, wann der Player einen Frame anzeigt. Das Senden von Anforderungen für weitere Daten ist Teil des Upstream-Aufwands. Oder wenn es nicht auf Abruf ist, muss der Client möglicherweise auf dem Server mithalten. Peter Cordes vor 5 Jahren 1
Sie sollten eine Bearbeitung mit Ihren Ideen vorschlagen, wie Sie die Antwort verbessern können, anstatt Kommentare zu hinterlassen, da die Kommentare nur vorübergehend sind und aus irgendeinem Grund ohne Vorwarnung gelöscht werden können. Wenn ich eine Bearbeitung meiner Antworten sehe, akzeptiere ich sie höchstwahrscheinlich auch dann, wenn Sie "Worte in den Mund nehmen", sofern sich dadurch die Antwort verbessert halten es für eine hervorragende Möglichkeit, einen Beitrag zur Website zu leisten.) Horn OK Please vor 5 Jahren 2
Diese Antwort ist fehlerhaft. Video über TCP erfordert Acks. UDP-Video und Multicast-Video (üblich bei vom Netzbetreiber bereitgestelltem IPTV) erfordert nur seltene Keep-Alives. Das Protokoll ist _designed_, um sich nicht darum zu kümmern, ob Sie die Daten erhalten oder nicht. Diese Aufwärtsverbindung würde weit weniger als 1/10 der Downlink-Rate betragen. user71659 vor 5 Jahren 0
@allquixotic Kommentare sind ausdrücklich dazu gedacht, Verbesserungen an einer Antwort vorzuschlagen, was Peter Cordes tut. (Natürlich können auch hier Bearbeitungen vorgenommen werden, aber in der Regel wird angenommen, dass Bearbeitungen den ursprünglichen Autor respektieren - daher ist es meistens verpönt, etwas zu ändern, um das Sie es gänzlich gesagt haben ...) derobert vor 5 Jahren 0
@allquixotic danke für deine umfassende antwort. Basierend auf zusätzlichen Informationen, die ich heute vom Techniker erhalten habe, denke ich, dass die Zusammenfassung, warum sie einen 1MB / s-Uplink "reservieren", für die allgemeine Benutzererfahrung (dh Reaktionsfähigkeit) und das Sammeln von Leistungs- und Nutzungsdaten gilt. Der Grund, warum ich die Frage zuerst gestellt habe, war, dass DSL in meinem Bereich sehr schlechte Uplink-Verbindungen hat und es zu übertrieben schien, ein so großes Stück für "Streaming" zu reservieren. Machte einfach keinen Sinn. JakeHawkes42 vor 5 Jahren 0
2
Lascaille Sylveste

Bestätigungspakete im Ethernet haben eine Größe von mindestens 64 Bytes, "geladene" Downstream-Pakete in typischen PPPoA-DSL-Bereitstellungen sind normalerweise 1492 Bytes groß.

RFC1122 spezifiziert "in einem Strom von Segmenten voller Größe SOLLTE ein ACK für mindestens jedes zweite Segment sein".

Daher ist Ihr minimales Ack-Bandbreitenverhältnis 64 / (1492 * 2) = 2,15% oder 22.490 Bytes benötigte Bestätigungen pro 1 MB, oder eine Bitrate von etwa 110 KBit / s (0,1 MBit / s) pro 5 MBit / s Down.

Aus irgendeinem Grund denke ich, dass sie Ihre Upstream-Bandbreite wollen.

Wenn ihre "Streams" als eindeutig identifizierte Datenblöcke bereitgestellt werden, wäre es trivial, wenn die Geräte alle heruntergeladenen Blöcke zwischenspeichern und als verteilter Speicher fungieren. Für Live-Streams ist es schwierig, da es nur einen Ursprungspunkt für Datenblöcke gibt. Wenn Sie jedoch jedem Stream-Viewing-Client einen zufälligen Startpunkt für den Blockversatz (entsprechend einer Broadcast-Verzögerung von 0 bis 30 Sekunden) zuweisen, können die Clientanforderungen verteilt werden Eine Reihe von Blöcken und Clients kann zur Weiterverteilung von Blöcken an andere Clients genutzt werden. Die Blockverfügbarkeit kann vom Steuerungs-Server intelligent verwaltet werden, wobei neue Blöcke zunächst an die Clients mit der höchsten Upload-Bandbreite übertragen werden und die Clients wiederum angewiesen werden, Daten an eine andere Client-Klasse zu senden.

Wenn die Geräte über einen moderaten lokalen Speicher (64 GB) verfügen, wäre die Implementierung von VoD / PVR-Diensten für den kürzlich gezeigten Inhalt einfach und für den Anbieter fast keine Bandbreite. Einzelne Geräte würden angewiesen, Streamblöcke nach Bedarf beizubehalten oder zu löschen, um eine ausreichende Blockverfügbarkeit über das verteilte Speichernetzwerk gemäß der vorhergesagten / gemessenen Nachfrage aufrechtzuerhalten. Die Wiedergabe wird einfach durch das Anfordern der relevanten Blöcke und das Durchführen einer lokalen Zwischenspeicherung erreicht, wobei ein zentraler Server verfügbar ist, um bei Bedarf Verfügbarkeit sicherzustellen.

Mit Sicherheit eine interessante Theorie. Ich denke, sie reservieren nur aggressiv 1 MB / s pro Stream als sicheren Schutz, um eine gute Benutzererfahrung zu gewährleisten und um all die verschiedenen Daten zu sammeln, die sie wollen. Unglücklicherweise verlässt mich dieses Internet mit einem aggressiven QoS- und DSL-Profil mit 1 MB / s, was beim Hochladen einer großen Datei auf null reduziert wird. JakeHawkes42 vor 5 Jahren 0