Der SmartPump-Server Ein tolles Stück Technik. 2Der SmartPump Server Architektur Kontrollkommunikation RTP-Videostrom Client Server RTSP Pipeline Daten.

Slides:



Advertisements
Ähnliche Präsentationen
Powerpoint-Präsentation
Advertisements

Attribute Protocol.
Spezifikation der Module / Programme
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Java News & Music Streaming Server und Client. Stefan Pape · Bastian Ruppert · Sebastian Suck Seite 1 von 20 Fachhochschule Lippe und Höxter
FH-Hof Servlets Richard Göbel. FH-Hof Konzept Servlets werden auf der Server-Seite durch ein Formular aufgerufen werten die Eingaben aus einem Formular.
Bs Kommunikation Kommunikation zwischen Benutzerprozessen (IPK) stellt andere Anforderungen als auftragsorientierte Kommunikation in mikrokernbasierten.
Netze Vorlesung 11 Peter B. Ladkin
1. Einführung Lernziele: Auffrischen des Wissens aus Rechnernetze
Martin MauveUniversität Mannheim1 3.6 User Datagram Protocol (UDP) RFC 768. J. Postel. User Datagram Protocol unzuverlässiges Transportprotokoll.
Virtual Private Networks
Einführung in die Technik des Internets
© 2005 Pohlig - Taulien Datenströme GK Informatik 1 Datenströme.
Ralf KüstersDagstuhl 2008/11/30 2 Ralf KüstersDagstuhl 2008/11/30 3.
CCNA2 – Module 4 Learning about Other Devices
Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele
2 Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 4 Folie 2 Message Passing mittels Sockets (1) s.a.
Steuerung externer Komponenten über ein USB-Interface.
Internet: Funktionsweise und Dienste
3 Wie funktioniert TCP/IP?
Learning By Doing TCP/IP Netzwerke mit TCP/IP Das Internet verwendet weitgehend das rund 30-jährige TCP/IP-Protokoll (TCP: Transmission Control Protocol,
Rechnerkommunikation I
TWS/Graph HORIZONT Produkt-Präsentation Software für Rechenzentren
WAP = Wireless Application Protocol Protokollstack Ein Protokoll ...
PSI - Überblick und Szenarien
Julia Grabsch Florian Hillnhütter Fabian Riebschläger
Allgemeine Technologien I Sitzung am Mailserver
Netzwerkprogrammierung
Auslegung eines Vorschubantriebes
Internet und SMS Internet und SMS Daniel Rickenbacher Jeremy Deuel.
1 Peer to Peer – GNUTELLA Seminar Innovative Netztechnologien Christophe LE ROQUAIS, den 17. Juni 2002.
Referat von Markus Hertel
Das Änderungssystem für TWS Definitionen
Modbus Funktionen bei Saia®PCD
Kolloquium zur Bachelorarbeit: Softwaresystem zur Echtzeitaufnahme und Echtzeitgenerierung von stereoskopischen Bildsequenzen und Videos Tobias Nothdurft.
Unterschiedliche Netzwerke
Analyseprodukte numerischer Modelle
Meldungen über Ethernet mit FINS/UDP
Netzwerke.
HTTP IT-Zertifikat Universität zu Köln Allgemeine Technologien II
Client-Server-Modell
Multimedia Streaming.
VPN – Virtual Private Network
prof. dr. dieter steinmannfachhochschule trier © prof. dr. dieter steinmann Folie 1 vom Montag, 30. März 2015.
VoIP Voice over IP per SIP.
Lösungen 1. Zu einem Dienst gehören immer: Diensterbringer (Server), Dienstbenutzer (Client) und Protokoll.
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
TCP/IP.
Schutzvermerk nach DIN 34 beachten TCP / IP. Schutzvermerk nach DIN 34 beachten TCP / IP und das OSI-Referenzmodell Process / Application Host-to-Host.
SNMP – Simple Network Management Protocol
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Spezifikation der Module / Programme
1 Servlets Stephan Baldes. 2 Was ist ein Servlet? S E R V L E T = Eine auf Java-Technologie basierte Web-Komponente, die von einem Container.
Eine komplexe Netzanwendung Webserver und Datenbankserver im Netzwerk in einer Anwendung einrichten.
Flusskontrolle Bei einer Protokollauswahl =/= TCP Wie wird die Flusskontrolle realisiert, worauf muss geachtet werden? Matthias Laesker Hauptseminar Telematik.
IS: Datenbanken, © Till Hänisch 2000 Windows Netzwerke TCP/IP oder was ?
Fragenkatalog GK Informatik Zur Vorbereitung auf das mündliche Abitur.
Center for Biotechnology Bielefeld Bioinformatics Service Netzwerk - Programmierung Netzwerke Alexander Sczyrba Jan Krüger.
ICMP Internet Control Message Protocol Michael Ziegler Universität Freiburg Michael Ziegler.
1. Einführung Lernziele: Auffrischen des Wissens aus Rechnernetze
Netzwerke - Protokolle
Netzwerk - Programmierung
Port-Forwarding Der PC möchte vom Internet aus auf den http-Server zugreifen. Er sieht nur die IP-Adresse und den Port des Routers. http-Server PC Router.
Netzwerk - Programmierung
Systeme II 6. Die Anwendungsschicht
Ich brauche eine Web-Seite vom Server im Internet
Tutorstunde 10.
TCP/IP Transmission Control Protocol/Internet Protocol
 Präsentation transkript:

Der SmartPump-Server Ein tolles Stück Technik

2Der SmartPump Server Architektur Kontrollkommunikation RTP-Videostrom Client Server RTSP Pipeline Daten

3Der SmartPump Server Wiederholung RTSP RTSP = Real Time Streaming Protocol RTSP = Real Time Streaming Protocol Fernbedienung für Mediaserver Fernbedienung für Mediaserver Protokoll auf Anwendungsebene Protokoll auf Anwendungsebene Reicht Funktionen an untere Schichten weiter Reicht Funktionen an untere Schichten weiter

4Der SmartPump Server Wiederholung RTSP (2) Client-Server basiert Ähnlich wie HTTP Ähnlich wie HTTP HTTP: Text und Bilder RTSP: Streaming Audio und Video Wichtigste Funktionen: Wichtigste Funktionen: describe describe setup setup play play teardown teardown

5Der SmartPump Server Initialisierung Start in RtspPump.cc Erzeugen von Hauptkomponenten ContentDataBase ThreadListener Scheduler RTCPServer RecordPreferences SessionPreferences Identifier (RTCP, RTSP)

6Der SmartPump Server Start - RTSP Server RtspServer RtspServerThread RtspHandlerThread... RtspHandlerThread

7Der SmartPump Server RtspServerThread Methode init richtet Socket ein Methode run wartet am Socket (select-Methode) erzeugt RtspHandlerThread für Clientanfragen Terminierung überprüft seinen Zustand weiter bei STATE_RUNNING Ende bei STATE_TERMINATE

8Der SmartPump Server RtspHandlerThread kümmert sich um Anfragen der Clients 2 Arten von Nachrichten (tp_message) request - Anfragen des Clients response - Antwort des Servers request wird vom Parser übersetzt type der Nachricht wird überprüft DESCRIBE, SETUP, PLAY,... entsprechende Methode wird aufgerufen Resourcen freigeben, beenden

9Der SmartPump Server Methoden: setup Test, ob Nachricht Session ID hat ja Ende (Fehlernachricht an Client) checkTransport := Transporteigenschaften (TCP, UDP,...) abspeichern in tp_transport Mode der Nachricht prüfen entsprechendes Setup aufrufen (setup_live, setup_play, setup_record)

10Der SmartPump Server setup_play SessionPreferences werden eingelesen Wahl des Transportprotokolls RTP (wahlweise mit RTCP) plain TCP Erzeugen Datasource Erzeugen eines SystemStreams Erzeugen des DataPaths SessionID erzeugen Transporteigenschaften (Multicast,...)

11Der SmartPump Server Methoden: play Setzen von StartTime und StopTime Erzeugen des RTP-Headers verpacken in Response-Message Starten des Streams (StreamControl)

12Der SmartPump Server Methoden: describe Liefert Daten über Session Bitrate Sendet Daten über session description protocol

13Der SmartPump Server Architektur Kontrollkommunikation RTP-Videostrom Client Server RTSP Pipeline Daten

14Der SmartPump Server ContentDataBase BerkeleyDB speichert den SessionIdentifier zu einer Ressource erreichbar über ResourceName und einen Iterator

15Der SmartPump Server SessionIdentifier Speichert die wichtigsten Daten zu einer Session SessionName, PhysicalFileName, SessionId Version SessionDescription und Phone Length, Width, Height StartTime Bitrate, Datasize PayloadType, PayloadTypeString, MimeType, FileType VideoHeader, MpegHeader TimestampFrequency

16Der SmartPump Server DataSourceThread: run liest segmentweise die Daten ein berechnet die benötigten Zeitstempel anhand der Bitrate des Streams schreibt Daten in die ScheduleQueue des Schedulers

17Der SmartPump Server DataPath Vektor, der aus DataPipe-Objekten besteht DataPipe-Objekte: Scheduler RtpEncoder TcpIpSink

18Der SmartPump Server DataPipe Methode connect verbindet ein DataPipe-Objekt mit dem nächsten Methode write sendet payloadDataUnit zum nächsten DataPipe-Objekt im DataPath

19Der SmartPump Server Datapath Daten-Pipeline TcpIp Sink write FileData Source writesend Rtp Encoder Scheduler DataPipe-Objekte DataSource-Objekt

20Der SmartPump Server SchedulerThread: run Wartet, bis ein Element in der ScheduleQueue ankommt erstes Element der ScheduleQueue wird weitergeschickt Ausnahmen pause stop

21Der SmartPump Server Architektur Kontrollkommunikation RTP-Videostrom Client Server RTSP Pipeline Daten

22Der SmartPump Server Realtime Transport Protocol: RTP Reihenfolgetreue bzw. -wiederherstellung durch Zeitstempel und Sequenznummern unterstützt Entdeckung fehlender Pakete Inhaltsidentifikation (payloadDataUnit) MPEG1 PCM Source-Identifikation

23Der SmartPump Server Real Time Control Protocol: RTCP Client Qualität der Verbindung (Zeitstempel) Server Beschreibung der Source Server & Client Anzahl der Pakete bzw. Bytes (gesendet bzw. empfangen)

24Der SmartPump Server Sessions RtcpSession Frequenz der Protokolle abhängig von Bandbreite und Anzahl der Clients Beschreibung der Source und der Daten RtpSession Zeitstempel und Sequenznummer initialisieren

25Der SmartPump Server Datapath Daten-Pipeline TcpIp Sink FileData Source send Rtp Encoder Scheduler

26Der SmartPump Server RtpEncoder Generiert einen RTP-Header fügt die Sequenznummer ein generiert den Zeitstempel sendet payloadDataUnit und RTP-Header über TCP/IP bzw. UDP/IP

27Der SmartPump Server TcpIpSink Methode init überprüft, ob eine Zieladresse vorliegt überprüft, ob ein Socket angelegt ist, sonst wird ein Socket angelegt bindet das Socket an die lokale Adresse Socket wird mit Zieladresse verbunden IP-Adresse Multicast-Adresse setzt time to live für Multicast Sockets Methode send fügt einen Header an versendet die Pakete

28Der SmartPump Server Socket das Generieren eines Sockets liefert einen Integer-Wert Durch bind kann ein Socket an eine IP- Adresse und einen Port gebunden werden auf einem Socket können Sendeoperationen ausgeführt werden nach dem Senden werden die Daten durch das Netzwerk geroutet

29Der SmartPump Server Ende Bitte sparen Sie nicht mit Applaus