cdn

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revisionBoth sides next revision
cdn [2022/04/27 21:58] – [Repo Links] andicdn [2022/07/11 12:09] andi
Line 7: Line 7:
 Das File-CDN wird dagegen auf der Seite [[software:voctoweb]] beschrieben. Das File-CDN wird dagegen auf der Seite [[software:voctoweb]] beschrieben.
 </bootnote> </bootnote>
-== Architektur+ 
 + 
 + 
 +== The Future of Streaming 
 + 
 +Um die Redundanz zu erhöhen und das Management zu vereinfachen werden die Streams auf dem CDN über ein verteiltes System verwaltet welches auf Consul aufbaut. 
 + 
 +Damit ist es möglich redundante CDN-Master sowie redundante Ingest-Server zu betreiben und trotzdem ein Web-Backend mit allen relevanten Streaming-Infos bereitzustellen. Weiterhin könnte die Streaming-Webseite intelligent auf das Vorhandensein/Fehlen von Streams im CDN reagieren und zusätzliche Metadaten von Encodern verarbeiten. 
 + 
 +Ein weiterer Vorteil des angedachten Setups sind deutlich geringere Latenz durch den fehlenden Fanout, sowie deutlich schnellere Stream-Restarts durch aktive Benachrichtigung der Transcoder. 
 + 
 +=== Übersicht 
 +{{drawio>diagram1.png}} 
 + 
 +==== Repo Links 
 +  * Stream-api, Upload-Proxy, Upload-Server: https://github.com/iSchluff/stream-api 
 +  * rtmp-auth daemon: https://github.com/voc/rtmp-auth 
 +  * Transcoding-Script: https://github.com/iSchluff/transcoding 
 + 
 +=== Änderungen zu v1 
 +==== 1. Kein Fanout auf dem Master-Relay mehr 
 +Transcoder pushen direkt die fertig gemuxten Client-Streams auf 1-N Master-Relays. Damit brauchen die Transcoder potentiell etwas mehr Bandbreite, dafür wird der Prozess vereinfacht weil der Master Format-unabhängig verteilen kann. 
 + 
 +Weiterhin kann damit die Latenz um mindestens ein Keyframe-Intervall (3s), vermutlich sogar mehr gesenkt werden. 
 + 
 +==== 2. Keine WebM-Icecast Streams mehr 
 +Um die Zahl der gepushten Streams zu reduzieren (siehe 1) werden die alten Icecast-Streams abgeschaltet. Seit 2 Jahren sind diese nicht mehr default in der Streaming-Webseite. Als Vorbereitung hierzu wurde Frühling 2020 der Legacy-Tab entfernt. 
 + 
 +Audio-Only Streams über Icecast bleiben aber vermutlich erhalten genauso wie das interne Relaying über Icecast. 
 + 
 + 
 +== Ursprüngliche Architektur v1
 Die CDN-Kaskade hat 5 Stufen: Master-Encoder, Transcoder, Fanout, Transport-/Master-Relays und schließlich Edge-Relays. Die CDN-Kaskade hat 5 Stufen: Master-Encoder, Transcoder, Fanout, Transport-/Master-Relays und schließlich Edge-Relays.
  
Line 206: Line 237:
  
 Die RTMP-Url für den endpunkt ''stream/qtest23'' mit auth token lautet z.B.: ''%%rtmp://ingest.c3voc.de/stream/qtest23?auth=token%%'' Die RTMP-Url für den endpunkt ''stream/qtest23'' mit auth token lautet z.B.: ''%%rtmp://ingest.c3voc.de/stream/qtest23?auth=token%%''
- 
- 
-== The Future of Streaming? 
-Um die Redundanz zu erhöhen und das Management zu vereinfachen ist geplant die Streams auf dem CDN zukünftig über ein verteiltes System zu managen welches auf consul aufbaut. 
- 
-Damit wäre es möglich redundante CDN-Master sowie redundante Ingest-Server zu betreiben und trotzdem ein Web-Backend mit allen relevanten Streaming-Infos bereitzustellen. Weiterhin könnte die Streaming-Webseite intelligent auf das Vorhandensein/Fehlen von Streams im CDN reagieren und zusätzliche Metadaten von Encodern verarbeiten. 
- 
-Ein weiterer Vorteil des angedachten Setups sind deutlich geringere Latenz durch den fehlenden Fanout, sowie deutlich schnellere Stream-Restarts durch aktive Benachrichtigung der Transcoder. 
- 
-=== Übersicht 
-{{drawio>diagram1.png}} 
- 
-==== Repo Links 
-  * Stream-api, Upload-Proxy, Upload-Server: https://github.com/iSchluff/stream-api 
-  * rtmp-auth daemon: https://github.com/voc/rtmp-auth 
-  * Transcoding-Script: https://github.com/iSchluff/transcoding 
- 
-=== Änderungen zum Jetzt-Stand 
-==== 1. Kein Fanout auf dem Master-Relay mehr 
-Transcoder pushen direkt die fertig gemuxten Client-Streams auf 1-N Master-Relays. Damit brauchen die Transcoder potentiell etwas mehr Bandbreite, dafür wird der Prozess vereinfacht weil der Master Format-unabhängig verteilen kann. 
- 
-Weiterhin kann damit die Latenz um mindestens ein Keyframe-Intervall (3s), vermutlich sogar mehr gesenkt werden. 
- 
-==== 2. Keine WebM-Icecast Streams mehr 
-Um die Zahl der gepushten Streams zu reduzieren (siehe 1) werden die alten Icecast-Streams abgeschaltet. Seit 2 Jahren sind diese nicht mehr default in der Streaming-Webseite. Als Vorbereitung hierzu wurde Frühling 2020 der Legacy-Tab entfernt. 
- 
-Audio-Only Streams über Icecast bleiben aber vermutlich erhalten genauso wie das interne Relaying über Icecast. 
  
  
  • cdn.txt
  • Last modified: 2024/01/29 10:45
  • by ischluff