DE69832247T2 - Auf einem verteilten Internet- Protokollen basierte Echtzeit- Multimedia- Datenströmungs- Architektur - Google Patents

Auf einem verteilten Internet- Protokollen basierte Echtzeit- Multimedia- Datenströmungs- Architektur Download PDF

Info

Publication number
DE69832247T2
DE69832247T2 DE69832247T DE69832247T DE69832247T2 DE 69832247 T2 DE69832247 T2 DE 69832247T2 DE 69832247 T DE69832247 T DE 69832247T DE 69832247 T DE69832247 T DE 69832247T DE 69832247 T2 DE69832247 T2 DE 69832247T2
Authority
DE
Germany
Prior art keywords
media
distribution system
multicast group
access control
push
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69832247T
Other languages
English (en)
Other versions
DE69832247D1 (de
Inventor
Dennis Bushmitch
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of DE69832247D1 publication Critical patent/DE69832247D1/de
Application granted granted Critical
Publication of DE69832247T2 publication Critical patent/DE69832247T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1859Arrangements for providing special services to substations for broadcast or conference, e.g. multicast adapted to provide push services, e.g. data channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/39Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability involving multiple description coding [MDC], i.e. with separate layers being structured as independently decodable descriptions of input picture data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • H04N21/2396Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests characterized by admission policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4622Retrieving content or additional data from different sources, e.g. from a broadcast channel and the Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6402Address allocation for clients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephonic Communication Services (AREA)

Description

  • Hintergrund und Zusammenfassung der Erfindung
  • Die vorliegende Erfindung betrifft allgemein vernetzte Multimediasysteme. Insbesondere betrifft die Erfindung ein Medien-Liefersystem zum Liefern von Medienauswahlen an einen oder mehrere Medien-Clients über ein Multicasting-Netzwerk.
  • Der Aufsatz „Interactive remote recording and playback of multicast videoconferences", Holfelder W., in interactive distributed multimedia systems and telecommunication services, XX, XX, 10. September 1997, Seiten 450–463, XP002088645, offenbart eine prototypische Implementierung eines Dienstes zur Videokonferenzaufzeichnung auf Anforderung (VCRoD) für das Multicast Backbone (MBone). Das System wird als MBoneVCRoD-Dienst (MBoD) bezeichnet und ist eine Client-Server basierte Architektur für die interaktive Fernaufzeichnung und Wiedergabe von MBbone-Sessions.
  • Der MVoD-Dienst besteht aus drei Basiskomponenten, nämlich einem MVoD-Manager, einer MVoD-Videopumpe und einem MVoD-Client, wobei der Manager und die Videopumpe zusammen die logische Einheit eines MVoD-Servers bilden.
  • Die Videopumpe läuft als ein separater Thread und ist verantwortlich für die Handhabung der Echtzeitdaten einer bestimmten Mbone-Session, die möglicherweise aus mehreren Medienströmen besteht. Sie wird auf Anfrage erzeugt und von dem MVoD-Manager gesteuert. Die Videopumpe kann entweder RTP und RTCP-Pakete von dem Netzwerk empfangen, sie synchronisieren und sie auf einem lokalen Filesystem speichern, oder sie kann bereits aufgezeichnete RTP-Daten von dem Filesystem lesen und sie zurück zu dem Netzwerk senden.
  • Allgemein gibt es mit dem explosionsartigen Anwachsen des Internets ein wachsendes Interesse an einer Verwendung des Internets und anderer Internet-Protokoll-basierter Netzwerke, um Multimedia-Auswahlen, wie bspw. Video- und Audiomaterial auszuliefern. Interaktives Fernsehen, Filme auf Abruf und andere Multimedia-Push-Technologien gehören zu den vielversprechenden Anwendungen.
  • Das Internet ist ein verbindungsloses Netzwerk, das einen Auslieferungsdienst hoher Leistung bietet. Datenpakete werden als Datagramme geleitet, die die Adresse des beabsichtigten Empfängers tragen. Eine spezielle Verbindung zwischen dem Sender und dem Empfänger ist nicht erforderlich, da alle Host-Knoten im Netzwerk die inhärente Eigenschaft besitzen, Datagramme von einem Knoten zum nächsten zu lenken, bis die Auslieferung bewirkt ist. Dieses Datagrammpaket-Auslieferungs schema ist als „best effort" Auslieferungssystem aufgebaut, in dem die Auslieferung von Datagrammpaketen nicht garantiert ist. Datagrammpakete können über unterschiedliche Routen mit der Absicht gesendet werden, die Wahrscheinlichkeit der Auslieferung zu erhöhen. Falls ein Knoten im Netzwerk einen Stau bzw. eine Störung erfährt, können folglich nachfolgende Datagramme alternativ gelenkt werden, um den gestörten Knoten zu vermeiden. Dies bedeutet, dass die Daten-Datagrammpakete nicht inhärent eine garantierte Ankunftszeit besitzen. Selbst Pakete, die zu einer einzelnen Nachricht gehören, können ungeordnet empfangen werden. Diese Tatsache beeinflusst signifikant, wie bestimmte Multimediadaten ausgeliefert werden.
  • In vielen Fällen erfordern Multimediadaten eine Echtzeitauslieferung. Im Fall von Audio- und Videodaten muss der Datenstrom, der eine bestimmte Medienauswahl darstellt, in der richtigen Zeitfolge ausgeliefert werden, um dem Benutzer eine Wiedergabe der Audio- oder Videoauswahl „live" zu ermöglichen, so wie sie gesendet wurde. Falls die Datagrammpakete aufgrund unterschiedlicher Auslieferungsrouten, nicht in der Reihenfolge ausgeliefert werden, wird folglich dann die Wiedergabe an einem Multimedia-Client (bspw. ein interaktiver Fernseher beim Benutzer) durcheinander gebracht werden.
  • Das Echtzeit- bzw. Real-time Protocol (RTP) ist ein aktueller De-facto-Standard zur Auslieferung von Echtzeitinhalten über das Internet (oder andere Netzwerke basierend auf einem IP-Protokoll). Das Real-time Protocol ersetzt das herkömmliche Übertragungs-Steuerungsprotokoll bzw. Transmission Control Protocol (TCP) mit einem Rahmenwerk, das Echtzeitanwendungen direkt zum Datentransport benutzen können. Momentan unterstützt der RTP-Standard einen ersten Typ von Nachricht, nämlich eine zum Tragen von Medieninhalts-Daten oder Streaming-Daten. Typischerweise wird ein separates Protokoll, das Real-Time Control Protocol (RTCP) mit RTP benutzt, um Steuerungsnachrichten zum Session-Management, der Geschwindigkeitsanpassung u.Ä. durchzulassen.
  • Während das Real-time Protocol benutzt werden kann, um Multimedia-Streaming-Daten über Computernetzwerke auszuliefern, hat sich die existierende Architektur nicht als robust genug herausgestellt, um eine Darstellung hoher Qualität bereitzustellen, in dem Best-Effort-Netzwerkdienste, wie bspw. jene, die das Internet bereitstellt, benutzt werden. Die vorliegende Erfindung löst dieses Problem, indem eine verteilte Medien-Push-Architektur verwendet wird, die in der Lage ist, Streaming-Daten redundant von mehreren Quellen und über mehrere Verteilungspfade auszuliefern. Die Medien-Push-Maschinen haben zugeordnete Medienspeichereinheiten, die Streaming-Daten als nicht-hierarchische Mengen von Substream-Komponenten speichern. Die Komponenten sind in der Lage, in einen neu aufgebauten Strom aus weniger als allen Komponenten neu aufgebaut zu werden, so dass je höher die Anzahl der Komponenten ist, die zum Neuaufbau verwendet werden, desto größer ist die Qualität des neu aufgebauten Stroms bzw. Stream.
  • Herkömmliche Systeme benutzen ein hierarchisches Kodierungsschema, das einige Komponenten als wichtiger behandelt als die anderen. Somit müssen herkömmliche Systeme typischerweise beträchtliche Ressourcen aufwenden, um zu garantieren, dass die wichtigeren Komponenten immer ausgeliefert werden. Im Gegensatz dazu benutzt das Medienauslieferungssystem der Erfindung ein nicht hierarchisches Kodierungsschema, mehrere Beschreibungskodierungen (MDC), die alle Komponenten gleich behandeln. Somit müssen keine speziellen Ressourcen belegt werden, um zu gewährleisten, dass eine vorgegebene Menge von Substream-Komponenten ausgeliefert wird. Je höher die Anzahl der ausgelieferten Komponenten ist, desto höher ist die erreichte Qualität; andererseits im Gegensatz zu dem herkömmlichen hierarchischen Kodieren, verschlechtert der Verlust irgendeines vorgegebenen einzelnen Pakets nicht die Signalqualität.
  • Das verteilte Medienauslieferungssystem benutzt ebenfalls ein verteiltes Zugangssteuerungssystem. Der Medien-Client kontaktiert eine einzelne Zugangssteuerungseinheit, um ein vorgegebene Medienauswahl anzufordern, aber danach werden die Zugangssteuerungsentscheidungen in verteilter Weise durch die Medien-Push-Maschinen selbst gehandhabt. Die Zugangssteuerungseinheit kommuniziert die Anforderung an eine Vielzahl von Medien-Push-Maschinen, die über das Netzwerk verteilt sind, und jene Push-Maschinen bestimmen individuell, ob sie an der Multicasting-Session teilnehmen können. Folglich prüft jede der einzelnen Medien-Push-Maschinen lokale Verkehrsstauungen, um festzulegen, ob sie in der Lage sind, den angeforderten Datenstrom zu liefern. Die Zugangssteuerungseinheit ist somit nicht bei der direkten Bestimmung beteiligt, welche Medien-Push-Maschinen zu einer Multicast-Gruppen-Session zugelassen sind. Die Zugangssteuerungseinheit weist einfach die Multicast-Gruppen-Session-Adresse zu und ermöglicht dann, dass der Zugangsvorgang automatisch fortgeführt wird in einer verteilten Weise.
  • Für ein vollständigeres Verständnis der Erfindung, seiner Aufgaben und Vorteile wird auf die nachfolgende Beschreibung und die begleitenden Zeichnungen Bezug genommen.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Netzwerk-Diagramm, das eine bevorzugte Ausführungsform der Erfindung zeigt;
  • 2 ist ein detailliertes Netzwerk-Diagramm, das zeigt, wie zwei unterschiedliche Datenströme (X und Y) über das Netzwerk verteilt werden, in dem eine nicht-hierarchische Mehrfachbeschreibungskodierung verwendet wird;
  • 3 ist ein Datenflussdiagramm, das eine Ausführungsform der mehrfachen beschreibenden Kodierung (MDC) zeigt;
  • 4 ist ein Schicht-Diagramm, das die TCP/IP-Architektur darstellt und ebenfalls zeigt, wie die RTP-Architektur in ein IP-basiertes System integriert werden kann;
  • 5 ist ein detailliertes Format-Diagramm, das das Paketformat entsprechend dem Real-time Protocol (RTP) darstellt;
  • 6 ist ein Netzwerk-Diagramm, das die Rufzulassung und Session-Verwaltung entsprechend der Erfindung darstellt;
  • 7 ist ein detailliertes Netzwerk-Diagramm, das den Informationsfluss zwischen einer Medien-Push-Maschine und einem Multimedia-Client über das Multicasting-IP-Netzwerk zeigt;
  • 8 ist ein Netzwerk-Diagramm, das den Vorgang der Quellkomponenten-Serverneuverteilung zeigt; und
  • 9 ist ein Protokoll-Diagramm, das zeigt, wie das Real-time Protocol (RTP) modifiziert werden kann, um seine Zuverlässigkeit zu erhöhen.
  • Detaillierte Beschreibung der bevorzugten Ausführungsform
  • Bezug nehmend auf 1 ist ein beispielhaftes verteiltes vernetztes Multimediasystem am Bezugszeichen 10 dargestellt. Eine Vielzahl von Medien-Push-Maschinen 12 sind über das Multicasting-Netzwerk 14 zugreifbar. Die vorliegende bevorzugte Ausführungsform ist ausgelegt, um über ein Netzwerk zu arbeiten, das das Internet-Protokoll (IP) verwendet; allerdings sind die Prinzipien der Erfindung auch auf Netzwerke ausweitbar, die andere Protokolle benutzen. Das Netzwerk 14 ist ebenfalls zugänglich durch einen oder mehrere Multimedia-Clients 16, wie dargestellt. Eine Zugangssteuerungseinheit 18, zugänglich über das Netzwerk 14, führt bestimmte Zugangssteuerungsfunktionen aus, hauptsächlich, um eine Multicast-Gruppen-Session zu initiieren oder zu öffnen. Die Zugangssteuerungseinheit umfasst ein Katalog-Dienste-System 20. Das Katalog-Dienste-System enthält einen Datenbankeintrag, der angibt, welche Multimedia-Auswahlen zum Ausliefern durch die Vielzahl von Medien-Push-Maschinen verfügbar sind. Obgleich beim Öffnen einer Multicast-Gruppen-Session beteiligt, wird der Zugangssteuerungsvorgang momentan in einer verteilten Weise ausgeführt, wie nachfolgend in größerem Detail diskutiert werden wird.
  • Das verteilte Medienauslieferungssystem antwortet auf Auslieferungsanfragen von einem Multimedia-Client, indem eine Multicast-Gruppen-Session unter dem Media-Client und jenen Multimedia-Push-Maschinen geöffnet wird, die die Medienanauswahl angefordert haben, die zum Ausliefern verfügbar sind. Typischerweise werden mehrere Medien-Push-Maschinen gleichzeitig beim Ausliefern der Streaming-Daten teilnehmen entsprechend der angeforderten Auswahl. Der Multimedia-Client ist ein Benutzer-Host, der die Darstellungsfunktion ausführt. Er baut einen Endstrom aus den verschiedenen Stromkomponenten zusammen, die von den teilnehmenden Medien-Push-Maschinen geliefert werden. Jede Medien-Push-Maschine hat ihren eigenen Datenspeicher für die Stream- bzw. Stromkomponentendaten, und diese Datenspeichersysteme können verwaltet werden von einem geeigneten verteilten Filesystem, das einen transparenten Speicher, der gemounted werden kann, und eine Suchfunktion bereitstellt.
  • Ein wichtiger Gesichtspunkt des verteilten Medienauslieferungssystems besteht in der Art und Weise, in der Streaming-Daten auf den Medien-Push-Maschinen gespeichert werden. Anders als bei traditionellen Systemen, die Multimediadaten in einer hierarchischen Weise speichern, benutzt die vorliegende Erfindung ein nicht-hierarchisches Kodierungsschema, das hier als Multiple Description Coding bzw. mehrfache Beschreibungskodierung (MDC) bezeichnet wird. Das Multiple Description Coding teilt den Video- und/oder Audiostrom in Teilströme, die Komponenten genannt werden. Jede Komponente kann dann kodiert werden und über das Netzwerk unabhängig von allen anderen Komponenten übertragen werden. Die Client-Software auf einem Multimedia-Client 16 kann einen rekonstruierten Strom aus jeder Teilmenge der Komponenten zusammensetzen. Somit kann der rekonstruierte Strom aus weniger als allen Komponenten zusammengebaut werden. Je höher die Anzahl der Komponenten, die zur Rekonstruktion benutzt werden, desto höher ist die Qualität des rekonstruierten Stroms.
  • Das Verwenden dieses nicht-hierarchischen Kodierens, um Streaming-Daten über das inhärent unzuverlässige Netzwerk auszuliefern, liefert überraschenderweise eine robuste Medienauslieferung, insbesondere wenn mehrere Push-Maschinen bei der Auslieferung beteiligt sind. Wie nachfolgend ausführlich diskutiert werden wird, steuern die Medien-Push-Maschinen den Multicast-Gruppen-Session-Zugangsvorgang selbst in einer verteilten Weise, indem sie Medien-Push-Maschinen zu der Gruppen-Session hinzufügen oder herausnehmen, wie dies benötigt wird, um Dienste hoher Qualität aufrechtzuerhalten. Wenn somit das Multicasting-Netzwerk 14 eine geringe Verkehrsballung bzw. Stauung zeigt, werden nur wenige Medien-Push-Maschinen benötigt, um alle Komponenten des MDC-kodierten Stroms zu liefern. Selbst wenn einige Komponenten nicht pünktlich ausgeliefert werden, wird der Multimedien-Client nichtsdestotrotz in der Lage sein, den Strom zur Darstellung zu rekonstruieren (bei leicht verschlechterter Qualität). Falls die Netzwerkverkehrstauung hoch ist, verhandeln die Medien-Push-Maschinen miteinander, um zusätzliche Medien-Push-Maschinen hinzuzufügen. Da der Zugangssteuerungsvorgang verteilt ist, sind einzelne Medien-Push-Maschinen in der Lage, ihre eigenen lokalen Verkehrsballungen zu bewerten und werden folglich in der Gruppen-Session teilnehmen oder nicht abhängig von den lokalen Verkehrsbedingungen.
  • 2 zeigt detaillierter, wie das Multiple Description Coding arbeitet. In 2 werden zwei Multimediaströme, die mit X und Y bezeichnet sind, durch eine Vielzahl von Medien-Push-Maschinen gespeichert. Diese Ströme sind in Teilstromkomponenten aufgebrochen, die mit den Indices X1, X2, ..., Xn; Y1, Y2, ... Yn bezeichnet sind. Es sei angemerkt, dass die Teilstromkomponenten, die über die Vielzahl von Medien-Push-Maschinen gespeichert werden, nicht notwendigerweise die gleichen sind für jede Maschine. Somit speichert die Medien-Push-Maschine 12a Komponenten X1, X6 und Y1. In gleicher Weise speichert die Medien-Push-Maschine 12b die Komponenten X2, X7 und Y2.
  • Die Multimedia-Clients setzen den interessierenden Datenstrom neu zusammen, indem sie die richtigen Teilstromkomponenten in der richtigen Reihenfolge summieren. Somit rekonstruiert der Multimedia-Client 16a den Strom X wie dargestellt, während Multimedia-Client 16b den Strom Y aufbaut, wie dargestellt. Am Multimedia-Client ist nicht von Belang, dass einzelne Teilstromkomponenten über unterschiedliche Pfade von den unterschiedlichen Medien-Push-Maschinen ankommen.
  • Das vorliegende bevorzugte Multiple-Description-Coding-Schema ist wie in 3 dargestellt, aufgebaut. Der ursprüngliche Multimedia-Datenstrom (bspw. Video- und/oder Audiodaten) wird in mehrere Teilsignale aufgetrennt, und jedes Teilsignal wird dann unabhängig komprimiert. Wie zuvor angegeben, ist die Auftrennung nicht-hierarchisch, so dass ein zulässiges Signal aus irgendeinem Teilsignal wiedergewonnen werden kann, eine inkrementale Verbesserung kann realisiert werden durch zusätzliche Teilsignale und eine perfekte Rekonstruktion wird erreicht, wenn alle Teilsignale exakt empfangen werden. Darüber hinaus ist es bevorzugt, den Gesamtkompressionsgewinn zu maximieren, solange die zuvor genanten drei Kriterien erfüllt sind.
  • Ein Weg, das Ursprungssignal zu zerlegen, besteht darin, jedes Teilsignal als eine Darstellung mit reduzierter Auflösung des Ursprungssignals zu konstruieren. Dies kann wie dargestellt ausgeführt werden, indem das Ursprungssignal durch ein Tiefpassfilter gefolgt von einem Downsampling bzw. Unterabtastung geführt wird. Die Teilsignale unterscheiden sich somit nur in den Abtast- bzw. Sampling-Positionen. Falls gewünscht, kann eine solche Aufteilung durch eine Filterbank erreicht werden, die die Vorfilter und deren verschobene Versionen umfassen.
  • Der Vorfilter sollte ausgewählt werden, um die Aliasing-Komponenten in den unterabgetasteten Teilsignalen zu unterdrücken. Dies hilft, die Bitraten, die für das Kodieren der Teilsignale benötigt werden, zu reduzieren, und ermöglicht eine vertretbare Bildwiedergewinnung aus einem einzelnen Teilsignal.
  • Der Vorfilter sollte ferner so gewählt werden, dass er nicht vollständig die hochfrequenten Komponenten beseitigt. Würden die hochfrequenten Komponenten vollständig beseitigt werden, gäbe es keine Möglichkeit, diese Komponenten in dem Ursprungssignal wiederzugewinnen, selbst wenn alle Teilsignale vorhanden wären. Somit sollte das Filter die hochfrequenten Komponenten unterdrücken aber nicht vollständig beseitigen.
  • Mathematisch gesehen, umfasst die Rekonstruktion der Teilstromkomponenten in einen rekonstruierten Strom ein Invertieren der Matrixgleichung, die die Abtastungen in allen Teilströmen betrifft und die Abtastungen in dem Ursprungsstrom. Typischer weise kann dies eine große Matrixgleichung umfassen, deren Invertierung eine große Menge an Berechnung und Speicherplatz benötigt. Ein Weg, diese Berechnungshürde anzugehen, besteht darin, ein blockrekursives Rekonstruktionsverfahren zu verwenden. In jedem Schritt im rekursiven Prozess wird ein Block von 2 × 2 Abtastungen in dem Ursprungsstrom zurückgewonnen, basierend auf bis zu vier entsprechenden Abtastungen in den empfangenen Teilkomponentenströmen. Natürlich können andere Berechnungstechniken verwendet werden, um das gleiche Ergebnis zu erreichen. Für mehr Information über Kodierung und Kodierung in einer nicht-hierarchischen Weise, indem eine Multiple Description Coding eingesetzt wird, sei auf „Robust Image Coding and Transport in Wireless Networks Using a Non-Hierarchial Decomposition", Yao Wang und Doo-man Chung. Mobile Multimedia Communicatons, Goodman (Plenum Press), verwiesen.
  • Die MDC-kodierten Teilströme werden über das Multicasting-Netzwerk als Datagramme ausgeliefert, in dem das Real-Time Protocol (RTP) für die Auslieferung von Inhalt und das Real-Time Protocol (RTCP) verwendet wird, um die Flusssteuerung zu implementieren. Diese Protokolle sind in der Lage, neben dem populären TCP/IP-Protokoll, das von vielen Internet-Anwendungen verwendet wird, natürlich zu koexistieren. 4 zeigt einen Überblick über diese Protokolle mittels eines Beispiels, wie fünf Einheiten miteinander kommunizieren können. In 5 kommunizieren die Einheiten 3038 miteinander, indem die Schicht-Architektur verwendet wird, die durch das Internet populär gemacht wurde. Es versteht sich natürlich, dass 4 nur dazu gedacht ist, zu zeigen, wie das momentan bevorzugte Real-Time Protocol (RTP) sich in ein mögliches Architekturschema integriert. Obgleich das Real-Time Protocol momentan bevor zugt ist, soll dies nicht als Beschränkung bzw. Einschränkung der Erfindung hinsichtlich ihrer breiteren Gesichtspunkte betrachtet werden. Im Gegenteil können andere Nachrichtenauslieferungsprotokolle verwendet werden.
  • In 4 wurde jede der Kommunikationseinheiten 3038 als eine Schichtarchitektur dargestellt, wobei die physikalische Schicht unten und die Anwendungsschicht oben ist. Die Einheit 30 kommuniziert mit der Einheit 32, indem das Ethernet-Protokoll in der physikalischen Schicht verwendet wird. Die Einheit 32 und die Einheit 34 kommunizieren auf der physikalischen Ebene, indem das ATM-Protokoll verwendet wird. In ähnlicher Weise kommuniziert die Einheit 34 mit der Einheit 36, indem das Ethernet-Protokoll verwendet wird, und die Einheit 36 kommuniziert mit der Einheit 38, indem das PPP-Protokoll verwendet wird. Wiederum sind die Kommunikationsprotokolle der physikalischen Schicht, die zur Erläuterung ausgewählt wurden, nicht als Einschränkung bezüglich der Erfindung anzusehen, wie sie in den angehängten Ansprüchen ausgeführt ist.
  • Über der physikalischen Schicht ist die Internet-Protokoll(IP)-Schicht. Das IP-Protokoll isoliert die physikalische oder Transportschicht von der Anwendungsschicht. Das IP-Protokoll unterstützt eine verbindungslose Kommunikation, bei der Informationspakete als Datagramme gesendet und empfangen werden. Es sei angemerkt, dass in dem in 4 dargestellten Beispiel alle Kommunikationseinheiten das IP-Protokoll verwenden.
  • Eine Schicht über dem IP-Protokoll sind zwei unterschiedliche Protokolle höherer Ebene dargestellt, nämlich das TCP-Protokoll und das UDP-Protokoll. Wiederum sind die Darstellun gen nur als ein Beispiel möglicher Konfigurationen zu betrachten. Das UDP-Protokoll oder das User-Datagramm-Protokoll stellt ein einfaches Transportprotokoll dar. Es unternimmt keinen Versuch, die Reihenfolge der Nachrichten, die es ausliefert, aufrecht zu erhalten. Das TCP-Protokoll oder Transmission Control Protocol stellt einen höheren Grad an Zuverlässigkeit bereit und gewährleistet, dass Datagramme in der richtigen Reihenfolge ausgeliefert werden. Das TCP-Protokoll benutzt ein Bestätigungs- bzw. Acknowledgement-System, um zu gewährleisten, dass alle Datagramme in der richtigen Reihenfolge ausgeliefert werden. Das TCP-Protokoll umfasst einen Mechanismus zum erneuten Übertragen von Paketen, die nicht bestätigt wurden. Diese Bestätigungs-Neuübertragungstechnik garantiert eine richtige Paketauslieferung, aber es garantiert nicht die Paketauslieferung in Echtzeit. Somit ist das TCP-Protokoll üblicherweise ungeeignet, um Echtzeitdaten, wie beispielsweise Multimedia-Video und/oder Audiodaten auszuliefern.
  • Das Real-Time-Protokoll (RTP) ersetzt das hoch entwickeltere Transportprotokoll des TCP durch ein einfaches Grundgerüst, das Anwendungen direkt benutzen können. Anstelle einer Implementierung einer Erfassung fehlender Daten und einem Mechanismus zum Neuübertragen – der Übertragungsverzögerungen einfügen kann – ignoriert das RTP-Protokoll einfach fehlende Daten. Das RTP-Protokoll kümmert sich typischerweise auch nicht um die Reihenfolge der Paketauslieferung. Das Protokoll nimmt an, dass die Anwendungsschicht darüber falsch geordnete Daten korrigieren wird. Das RTP-Protokoll ist kompatibel mit einer Anzahl von unterschiedlichen Kodierungsstandards, wie beispielsweise MPEG, JPEG und H.261.
  • In dem gezeigten Beispiel von 4 laufen sowohl die Einheit 30 als auch 38 mit dem RTP-Protokoll. Somit könnten Streaming-Daten von der Einheit 30 zu der Einheit 38 über das Netzwerk geliefert werden, das aus den Einheiten 30, 32, 34, 36 und 38 besteht.
  • Das RTP-Protokoll ist für einen Multicast-Betrieb ausgelegt. Multicasting ist eine Form der Nachrichtenübertragung, bei der die Nachrichten zu vielen unterschiedlichen Empfängern in einer vorgegebenen Menge ausgeliefert werden können. Multicast-Adressen identifizieren die Mengen der Schnittstellen und umfassen häufig mehrere Schnittstellen, die zu mehreren Systemen gehören. Wenn eine Nachricht eine Multicast-Zieladresse hat, ist das Netzwerk bestrebt, diese zu allen Schnittstellen in der Menge auszuliefern. Diese Funktion lässt ein System eine Nachricht einmal generieren und lässt die Nachricht zu vielen unterschiedlichen Empfängern ausliefern.
  • Neben dem Ausliefern von Datagrammpaketen an mehrere Empfänger wird ein Multicasting-Netzwerk typischerweise auch ein Feedback von den Nachrichtenempfängern unterstützen. Typischerweise können alle Teilnehmer in der Multicasting-Gruppensession diese Feedback-Nachrichten empfangen. Solche Feedback-Nachrichten werden üblicherweise für eine Echtzeitverkehrssteuerung verwendet, die einem betroffenen Real-Time Control Protocol (RTCP) folgen. In bestimmter Hinsicht ist das RTCP eine optionale Erweiterung von RTP. RTCP-Pakete werden von der vorliegenden bevorzugten Ausführungsform verwendet, um Flusssteuerungs- und Session-Verwaltungsinformation unter den Einheiten zu senden, die in der Gruppen-Multicast-Session teilnehmen.
  • 5 zeigt das RTP-Paketformat. Es sei angemerkt, dass das Paket eine Reihenfolgennummer und einen Zeitstempel aufweist, der zum Neuzusammensetzen der Pakete in der richtigen Zeitreihenfolge verwendet wird.
  • 6 und 7 zeigen die Details, wie der Multimedia-Client, die Zugangssteuerungseinheit und die Medien-Push-Maschinen miteinander während einer Multicast-Gruppensession kommunizieren. Insbesondere zeigt 6 den Basisnachrichtenstrom und die Kommunikationsreihenfolge der bevorzugten Ausführungsform. 7 zeigt eine detailliertere Ansicht, wie das RTP und das RTCP-Protokoll verwendet werden, um die Teilstromkomponenten-Datagramme von der Medien-Push-Maschine zu dem Multimedia-Client zu lenken bzw. routen.
  • Es wird zuerst auf 6 Bezug genommen. Der Multimedia-Client 16 sendet eine Unicast-TCP-Protokollnachricht an die Zugangssteuerungseinheit 18 und fordert, dass eine bestimmte Medienauswahl mit der Auslieferung beginnt. Die Zugangssteuerungseinheit 18 prüft ihr Katalog-Dienste-System 20, um zu bestimmen, ob die angeforderte Auswahl (d.h. der angeforderte Strom) im Netzwerk vorhanden ist. Unter der Annahme, dass der Strom vorhanden ist, sendet die Zugangssteuerungseinheit eine Stream Open bzw. Öffne-Strom-Nachricht an jene Medien-Push-Maschinen 12, die zumindest einige Teilstromkomponenten der angeforderten Auswahl haben. Diese Open-Stream-Anforderung wird an alle Medien-Push-Maschinen gesendet. Jene Medien-Push-Maschinen, die sich selbst in der Lage sehen, die angeforderten Stromkomponenten zu bedienen, gelangen gemeinsam in die Multicasting-Session-Management und Stromsteuerungssession zwischen nur jenen Hosts, die den spezifischen Strom bedienen und emp fangen. Teilnehmende Medien-Push-Maschinen und teilnehmende Multimedia-Clients erhalten die benötigte Multicast-Adresse für eine solche Steuerungs-Multicast-Gruppensession von der Zugangssteuerungseinheit. Danach fällt die Zugangssteuerungseinheit wirksam aus der Session und erlaubt nachfolgende Session-Management und Flusssteuerungsnachrichten, dass sie nur unter den Multicast-Gruppenteilnehmern ausgetauscht werden (d.h. dem Multimedia-Client und allen entsprechenden Medien-Push-Maschinen). Dies reduziert den Overhead in der Zugangssteuerungseinheit 18.
  • Die Zugangssteuerungseinheit erzeugt eine Multicast-Klasse-D-Adresse zur Verwendung durch die Multicast-Session. Diese Adresse kann aus einem Pool von verfügbaren Multicast-Adresseinträgen gewählt werden. Die Zugangssteuerungseinheit ist somit verantwortlich für die Verwaltung der Belegung von Multicast-Adressen. Wenn eine Multicast-Session endet, gibt die Zugangssteuerungseinheit die Multicast-Session-Adresse zurück in den Pool verfügbarer Adressen.
  • Sobald einmal die Multicast-Gruppen-Session initiiert ist, werden jene Medien-Push-Maschinen, die in der Lage sind, Teilstromkomponenten zu liefern, dies tun, indem sie Unicast-RTP-Session-Stromdaten an den Multimedia-Client 16 senden. Durch das RTCP-Protokoll können diese Medien-Push-Maschinen miteinander kommunizieren, um sich einer Multicast-Gruppen-Session anzuschließen oder sie zu verlassen, wie dies benötigt wird, um einen Dienst hoher Qualität aufrecht zu erhalten.
  • Es wird nun auf 7 Bezug genommen. Die Medien-Push-Maschine und der Multimedia-Client kommunizieren über das Netz werk in zwei unterschiedlichen Ebenen. Wie durch die gestrichelten Linien dargestellt, sendet eine Unicast-RTP-Session die Multimedia-Streaming-Daten an den Multimedia-Client. Gleichzeitig, wenn angefordert, sendet die Medien-Push-Maschine und der Multimedia-Client einander RTCP-Berichte, insbesondere Sende-Berichte und Empfangs-Berichte sowie geeignete Flusssteuerungsbefehle und andere Session-Management-Befehle, beispielsweise Start Push, Pause, Fortsetzen). Die RTCP-Steuerungssignale sind durch die bidirektionale durchgezogene Linie in 7 gezeigt.
  • Nachdem die Stream-Open-Nachricht von der Zugangssteuerungseinheit gesendet wurde, prüft im Wesentlichen jede Medien-Push-Maschine ihr zugeordnetes Medienspeichersystem, um zu bestimmen, ob es in der Lage ist, die angeforderten Stream-Komponenten zu bedienen. Falls dies der Fall ist, schließt sich dann die Medien-Push-Maschine der spezifizierten Multicast-Gruppe an. Andererseits nimmt sie nicht an der Multicast-Session teil (bis sie später angefordert wird). Sobald die Medien-Push-Maschine sich der Multicast-Gruppe angeschlossen hat, nimmt sie an der Kommunikation teil, indem das RTCP-Protokoll verwendet wird, wobei Statistiken der gesendeten Daten und der empfangenen Daten unter den Teilnehmern der Gruppe ausgetauscht werden. Wie zuvor angegeben, muss die Zugangssteuerungseinheit nicht an dieser Kommunikation teilnehmen und bleibt somit im Schlafmodus, bis eine Anforderung für eine andere Session gemacht wird oder bis die aktuelle Session beendet werden soll.
  • Das System implementiert wirksam ein verteiltes Zugangssteuerungssystem, bei dem die teilnehmenden Teilnehmer der Gruppe kollektiv und verteilt die Zugangssteuerungsentscheidun gen treffen. Ein Nutzen dieses verteilten Ansatzes besteht darin, dass die Erfindung intelligente Mechanismen umfassen kann, um Netzwerkstaus zu vermeiden und um die Qualität des Dienstes zu verbessern, trotz der Tatsache, dass das Multicasting-Netzwerk ein Best-Effort-Netzwerk ohne garantierte Echtzeitauslieferung ist.
  • Best-Effort-Netzwerke, insbesondere jene, die hochentwickelte Verkehrs- und Benutzersteuerungspolitiken vermissen lassen, erfahren häufig Staus. Solche Staus können zu einem Verlust oder einer wesentlichen Verzögerung von Echtzeitdaten führen. Wie zuvor diskutiert, werden Echtzeitdaten, die zu spät ausgeliefert werden, tatsächlich als nicht ausgeliefert behandelt. Das kontinuierliche Einfließen von Daten in einen verstopften Knoten des Netzwerks macht den Stau noch schlimmer. Die vorliegende Erfindung benutzt RTCP-Senderberichte und Empfängerberichte für zeitsensitive Übertragungen als Kennzeichen, dass ein vorgegebener Knoten sich zurück auf die Anzahl von Komponenten zurückskalieren muss, die er sendet, wenn die Stauung erfasst wird.
  • 4 zeigt, wie dies erreicht wird. Der Multimedia-Client 16 hat den X-Echtzeitdatenstrom angefordert, der aus den Teilstromkomponenten X1, X2, X3 und X4 besteht. Es sei angenommen, dass die Medien-Push-Maschine 12 in 7 einen lokalen Verkehrsstau erfährt, so dass die Teilstromkomponenten am Multimedia-Client 16 zu spät ankommen. Der RTCP-Empfängerbericht des Multimedia-Clients macht die Medien-Push-Maschine 12 (und alle anderen Medien-Push-Maschinen, die in der Gruppen-Session teilnehmen) darauf aufmerksam, dass ein bestimmter Prozentsatz der Komponentendaten von der Medien-Push-Maschine 12 [zu spät ankommt]. Die Medien-Push-Maschine 12 analysiert diese Berichte und unterbricht das Senden einer ausgewählten Komponente, in diesem Fall X3, um damit die Verkehrsmenge zu verringern, die durch diesen Stauungspunkt fließt. Nach dieser Einstellung liefert somit die Medien-Push-Maschine 12 nur die Komponenten X1, X2 und X4 an den Multimedia-Client. Da die anderen Medien-Push-Maschinen, die in der Gruppen-Session teilnehmen, den gleichen Sender- und Empfängerbericht empfangen, kann der Verlust der X3-Komponente von der Medien-Push-Maschine 12 kompensiert werden, falls andere Push-Maschinen in der Lage sind, diese fehlende Komponente zu liefern. Anderenfalls wird die Qualität des Dienstes leicht verschlechtert, wie nachfolgend diskutiert.
  • 8 zeigt, wie der Datenstrom wirksam neu verteilt werden kann, indem lokale Einstellungen der gesendeten Teilstromkomponenten vorgenommen werden. In dem gezeigten Beispiel sei angenommen, dass es eine lokale Stauung irgendwo in dem Datenpfad gibt, der die Teilstromkomponenten von der Medien-Push-Maschine 12b liefert. Der RTCP-Sender- und -Empfängerbericht wird somit anzeigen, dass ein Teil der Komponenten, die zuvor an den Multimedia-Client 16 durch die Medien-Push-Maschine 12b gesendet wurden, verloren oder verzögert wurden aufgrund lokaler Staus. In dem gezeigten Beispiel sind die verlorenen Komponenten ebenfalls in dem Speichersystem der Medien-Push-Maschine 12a vorhanden. Die Medien-Push-Maschine 12a kann entweder die verlorenen Komponentennutzlasten an den Multimedia-Client liefern oder einfach die Menge von Komponenten einstellen, die in der zukünftigen Echtzeitdatentransaktion zu übertragen sind. Im Falle, dass die verlorenen Nutzlasten von einer anderen Medien-Push-Maschine erneut übertragen werden, sollte eine ausreichen de Pufferung am Multimedia-Client vorgesehen sein, um die fehlenden Komponenten mit den zuvor ausgelieferten Komponenten zusammenzufügen, bevor der Strom rekonstruiert und dem Benutzer präsentiert wird. Im Falle, dass das System lediglich die Komponentenmenge für folgende Übertragungen ändert, bilden solche Änderungen einen skalierbaren Serverkomponenten-Neuverteilungsmechanismus. Dieser Mechanismus unterstützt die verbesserte Qualität des Dienstes durch Verbessern der Darstellung der Stream-Daten beim Multimedia-Client.
  • Obgleich die zuvor beschriebene Ausführungsform allgemein für die meisten Medienauslieferungsanwendungen geeignet ist, gibt es einige Systeme, die selbst eine geringe Qualitätsverschlechterung nicht tolerieren können. Solche Systeme umfassen die Broadcast-Video-Verteilung hoher Qualität. In diesen anspruchsvolleren Anwendungen kann das System der zuvor beschriebenen bevorzugten Ausführungsform modifiziert werden, um einen zusätzlichen Zuverlässigkeitsmechanismus für Echtzeitkomponenten einzusetzen. In diesem Fall kann das Real-Time-Protokoll modifiziert oder erweitert werden, um eine Neuübertragung von verlorenen Echtzeitnutzlasten zu ermöglichen. Dieses "zuverlässige RTP" ist in 9 dargestellt. Die Medien-Push-Maschine kommuniziert mit dem RTP-Stack, indem das Real-Time-Protokoll verwendet wird. In diesem Fall sei angenommen, dass die erste und die dritte Komponente empfangen wird, aber die zweite Komponente verloren geht. Es gibt eine sofortige negative Bestätigung (NACK) von dem RTP-Stack, die der Medien-Push-Maschine mitteilt, dass die zweite Nutzlast nicht empfangen wurde. Die Medien-Push-Maschine überträgt dann die benötigte Nutzlast neu und der RTP-Stack setzt die benötigte Nutzlast an die richtige Stelle innerhalb des Datenpuffers. Die Client-Anwendung liest dann die Daten aus dem Datenpuffer. Doppelte Pakete werden verworfen und übermäßig verspätete Pakete werden ebenfalls verworfen.
  • Aus der vorhergehenden Beschreibung ergibt sich, dass die Erfindung eine Medienauslieferungssystemarchitektur bereitstellt, die eine verteilte Netzwerktechnik zum Ausliefern von Streaming-Daten über ein Best-Effort-Netzwerk benutzt. Die Architektur kann leicht skaliert werden, nach oben oder nach unten, da die Komplexität des Servers linear mit der Anzahl der Clients ansteigt. Die Architektur ist somit eine vollständig verteilte fest gekoppelte parallele Architektur, die in der Lage ist, einen einfachen und dennoch robusten Dienst bereitzustellen.
  • Durch die Verwendung eines Multiple-Description-Coding (MDC) und eines Mehrfach-Pfad-Transports kann die Erfindung einen Dienst hoher Qualität bereitstellen, ohne auf verzögerungserzeugende Übertragungswiederholungstechniken zurückgreifen zu müssen. Somit wird die Erfindung leicht mit dem existierenden Real-Time-Transport-Protokoll (RTP) für den Datentransport und dem Real-Time Control Protocol (RTCP) für die Sessionverwaltung, die Geschwindigkeitsanpassung und Ähnlichem arbeiten. Wenn ein Stau auftritt, kann die Präsentation ohne Unterbrechung abwärts skaliert werden, dank des Multiple-Description-Coding und dadurch, dass Teilnehmer einer Gruppensession der Gruppe hinzugefügt oder aus der Gruppe entfernt werden können. Die Flusssteuerung der Ströme ist ebenfalls über diese gleichen Mechanismen steuerbar, um einen Netzwerkstau zu verhindern oder zu reduzieren, sobald er erfasst ist.
  • Die Erfindung ist deshalb ideal zur Auslieferung von Multimedia-Auswahlen wie Video und Audio-Streaming-Daten geeignet. Die Erfindung wird einfach Datenströme mehrfacher Bitraten unterstützen und ist in der Lage, Dienste sowohl mit konstanter Bitrate als auch mit variabler Bitrate bereitzustellen.
  • Während die Erfindung in ihren momentan bevorzugten Ausführungsformen beschrieben wurde, versteht sich, dass die Erfindung bestimmte Modifikationen und Änderungen erfahren kann, ohne die Erfindung, wie sie in den angehängten Ansprüchen ausgeführt ist, zu verlassen.

Claims (15)

  1. Verteiltes Medien-Verteilungssystem zum Verteilen von Medienauswahlen an einen Medien-Client (16) über ein Multicasting-Netzwerk (14), mit: einer Vielzahl von Medien-Push-Maschinen (12), die über das Netzwerk (14) verteilt und über dieses erreichbar sind, wobei jede Push-Maschine (12) eine zugeordnete Medienspeichereinheit aufweist, oder ausgelegt ist, um Streaming-Daten zu speichern, die die Medienauswahlen darstellen, die zur Verteilung verfügbar sind; wobei die Medienspeichereinheiten konfiguriert sind, um die Streaming-Daten als eine nicht hierarchische Menge von Teilstrom-Komponenten zu speichern, die in einen neu aufgebauten Strom aus weniger als alle der Komponenten neu aufgebaut werden kann, derart, dass je höher die Anzahl von Komponenten, die zum Neuaufbau verwendet werden, desto höher die Qualität des neu aufgebauten Stroms; und einem Zugangs-Steuerungssystem (18, 20), das über das Netzwerk (14) zugänglich ist, wobei das Zugangs-Steuerungssystem (18, 20) einen Katalog zum Speichern der Identität der Medienauswahlen umfasst, die zum Verteilen von jeder der Medien-Push-Maschinen (12) verfügbar sind, wobei das Zugangs-Steuerungssystem (18, 20) in Antwort auf eine Anforderung für eine gegebene Medienauswahl von einem Medien-Client (16), eine Multicast-Gruppen-Session unter dem Medien-Client (16) und zumindest einem Teil der Medien-Push-Maschinen (12) öffnet, die die gegebene Medienauswahl aufweist, die zur Verteilung verfügbar ist, wobei die Medien-Push-Maschinen ausgelegt sind, um einzeln zu bestimmen, ob sie in der Multicast-Gruppen-Session teilnehmen können und die Medien-Push-Maschinen, die in der Multicast-Gruppen-Session teilnehmen, ausgelegt sind, jeweils dem Netzwerk jene Teilstrom-Komponenten zuzuführen, die der gegebenen Medienauswahl entsprechen, für eine Verteilung zu und einem Neuaufbau durch den Medien-Client.
  2. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass das Zugangs-Steuerungssystem (18, 20) ein verteiltes System ist, das zumindest teilweise über eine Interaktion zwischen den Medien-Push-Maschinen (12) definiert ist.
  3. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass die Medien-Push-Maschinen (12) ausgelegt sind, um mit dem Netzwerk (14) über unterschiedliche Kommunikationspfade zu kommunizieren.
  4. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass das Netzwerk (14) ein verbindungsloses Netzwerk ist, das die bestmöglichen Verteilungsdienstleistungen bietet.
  5. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass das Netzwerk (14) das Internet ist.
  6. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass der Medien-Client (16) und die Medien-Push-Maschinen (12), die in der Multicast-Gruppen-Session teilnehmen, ausgelegt sind, um ein Real-Time Transport Protocol (RTP) für den Datentransport zu verwenden.
  7. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass der Medien-Client (16) und die Medien-Push-Maschinen (12), die in der Multicast-Gruppen-Session teilnehmen, ausgelegt sind, um ein Real-Time Control Protocol (RTCP) für die Sessionverwaltung zu verwenden.
  8. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass zumindest ein Teil der Teilstrom-Komponenten über verschiedene Medien-Push-Maschinen (12) repliziert wird.
  9. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass zumindest ein Teil der Teilstrom-Komponenten über die erste und die zweite Medien-Push-Maschine (12) repliziert wird und dass das Verteilungssystem ferner ein Anhäufungs-Handhabungssystem zur Identifizierung der ersten oder der zweiten Medien-Push-Maschine (12) aufweist als Fall der Anhäufung und zum automatischen Aufrufen der anderen der ersten und der zweiten Medien-Push-Maschine (12), um in der Multicast-Gruppen-Session teilzunehmen.
  10. Medien-Verteilungssystem nach Anspruch 9, gekennzeichnet durch ein Datenpuffersystem, das dem Medien-Client (16) zum Speichern von Teilstrom-Komponenten vor dem Neuaufbau zugeordnet ist.
  11. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass die Zugangs-Steuerungseinheit (18, 20) ferner in Antwort auf eine Anforderung von dem Medien-Client (16) zur Beendigung einer Multicast-Gruppen-Session arbeitet, um alle Medien-Push-Maschinen (12), die an der Multicast-Gruppen-Session teilnehmen, zu instruieren, die Session zu beenden.
  12. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass das Zugangs-Steuerungssystem (18, 20) eine Zugangs-Steuerungseinheit (18) aufweist, die ausgelegt ist, um einen Pool von Multicast-Sessionadressen zur Verwendung beim Aufrufen von Multicast-Gruppen-Session aufrechtzuerhalten, und wobei die Zugangs-Steuerungseinheit (18) ausgelegt ist, um eine bestimmte Multicast-Sessionadresse, die aus dem Pool ausgewählt ist, zur Benutzung durch die Multicast-Gruppen-Session zuzuordnen.
  13. Medien-Verteilungssystem nach Anspruch 12, dadurch gekennzeichnet, dass die Zugangs-Steuerungseinheit (18) ferner in Antwort auf eine Anforderung von dem Medien-Client (16), eine Multicast-Gruppen-Session zu beenden, arbeitet, um die festgelegte Multicast-Sessionadresse an den Pool zurückzugeben.
  14. Medien-Verteilungssystem nach Anspruch 12, dadurch gekennzeichnet, dass der Medien-Client (16) und die Medien-Push-Maschinen (12) ausgelegt sind, um in der Multicast-Gruppen-Session teilzunehmen und ausgelegt sind, um Flusskontrollnachrichten ohne Beteiligung der Zugangs-Steuerungseinheit (18) auszutauschen.
  15. Medien-Verteilungssystem nach Anspruch 1, dadurch gekennzeichnet, dass es zwischen dem Medien-Client (16) und jeder Medien-Push-Maschine (12), die in der Multicast-Gruppen-Session teilnimmt, einen Unicastfluss von Datagrammen gibt, die Echtzeit-Strom-Komponentendaten enthalten.
DE69832247T 1997-10-30 1998-09-23 Auf einem verteilten Internet- Protokollen basierte Echtzeit- Multimedia- Datenströmungs- Architektur Expired - Fee Related DE69832247T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US960799 1997-10-30
US08/960,799 US5928331A (en) 1997-10-30 1997-10-30 Distributed internet protocol-based real-time multimedia streaming architecture

Publications (2)

Publication Number Publication Date
DE69832247D1 DE69832247D1 (de) 2005-12-15
DE69832247T2 true DE69832247T2 (de) 2006-08-03

Family

ID=25503650

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69832247T Expired - Fee Related DE69832247T2 (de) 1997-10-30 1998-09-23 Auf einem verteilten Internet- Protokollen basierte Echtzeit- Multimedia- Datenströmungs- Architektur

Country Status (6)

Country Link
US (1) US5928331A (de)
EP (1) EP0915598B1 (de)
JP (1) JP3448490B2 (de)
KR (1) KR100327791B1 (de)
CN (1) CN1126344C (de)
DE (1) DE69832247T2 (de)

Families Citing this family (164)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778187A (en) * 1996-05-09 1998-07-07 Netcast Communications Corp. Multicasting method and apparatus
US7266686B1 (en) 1996-05-09 2007-09-04 Two-Way Media Llc Multicasting method and apparatus
JP3150624B2 (ja) * 1996-09-13 2001-03-26 株式会社ディジタル・ビジョン・ラボラトリーズ 通信システム及び通信経路制御方法
US6490584B2 (en) * 1997-11-26 2002-12-03 International Business Machines Corporation User-centered push methods and system
US6292844B1 (en) 1998-02-12 2001-09-18 Sony Corporation Media storage device with embedded data filter for dynamically processing data during read and write operations
US6345125B2 (en) * 1998-02-25 2002-02-05 Lucent Technologies Inc. Multiple description transform coding using optimal transforms of arbitrary dimension
US6253185B1 (en) * 1998-02-25 2001-06-26 Lucent Technologies Inc. Multiple description transform coding of audio using optimal transforms of arbitrary dimension
US6182084B1 (en) 1998-05-26 2001-01-30 Williams Communications, Inc. Method and apparatus of data comparison for statistical information content creation
US6466574B1 (en) * 1998-06-05 2002-10-15 International Business Machines Corporation Quality of service improvement of internet real-time media transmission by transmitting redundant voice/media frames
US6389471B1 (en) * 1998-07-07 2002-05-14 At&T Corp. Network broadcasting system for broadcasting audiovisual information to an identified audience
US6704790B1 (en) * 1998-09-16 2004-03-09 Microsoft Corporation Server-side stream switching
US6298385B1 (en) * 1998-10-28 2001-10-02 Qwest Communications Int'l., Inc. Method and apparatus for optimizing playback of media files over a data network
DE60020417T2 (de) 1999-01-25 2005-10-27 Nippon Telegraph And Telephone Corp. Push-Netzwerk
US6795092B1 (en) * 1999-02-15 2004-09-21 Canon Kabushiki Kaisha Data processing apparatus and method, and storage medium
US6782490B2 (en) 1999-03-17 2004-08-24 At&T Corp. Network-based service for the repair of IP multicast sessions
US6405256B1 (en) * 1999-03-31 2002-06-11 Lucent Technologies Inc. Data streaming using caching servers with expandable buffers and adjustable rate of data transmission to absorb network congestion
US7007096B1 (en) 1999-05-12 2006-02-28 Microsoft Corporation Efficient splitting and mixing of streaming-data frames for processing through multiple processing modules
US6859846B2 (en) * 1999-05-12 2005-02-22 Sony Corporation Method of distributed recording whereby the need to transition to a second recording device from a first recording device is broadcast by the first recording device
ATE243865T1 (de) * 1999-05-12 2003-07-15 Microsoft Corp Aufsplittern und mischen von strömenden datenrahmen
US6247069B1 (en) * 1999-05-12 2001-06-12 Sony Corporation Automatically configuring storage array including a plurality of media storage devices for storing and providing data within a network of devices
KR100366295B1 (ko) * 1999-06-04 2002-12-31 한국전자통신연구원 연속 미디어 처리용 신뢰 멀티캐스트 데이터 전송 방법
US6957255B1 (en) 1999-06-28 2005-10-18 Amdocs (Israel) Ltd. Method and apparatus for session reconstruction and accounting involving VoIP calls
US7346677B1 (en) 1999-07-02 2008-03-18 Cisco Technology, Inc. Method and apparatus for creating policies for policy-based management of quality of service treatments of network data traffic flows
US6466978B1 (en) * 1999-07-28 2002-10-15 Matsushita Electric Industrial Co., Ltd. Multimedia file systems using file managers located on clients for managing network attached storage devices
JP2001054095A (ja) * 1999-08-09 2001-02-23 Fujitsu Ltd 情報配信/再生制御装置、情報配信/再生制御方法および情報配信/再生制御プログラムを記録したコンピュータ読み取り可能な記録媒体
JP3636947B2 (ja) * 1999-08-31 2005-04-06 株式会社日立製作所 情報サービスシステム、サービス利用クライアント及びサービス規制方法
US6721859B1 (en) 1999-10-21 2004-04-13 Sony Corporation Multi-protocol media storage device implementing protocols optimized for storing and retrieving both asynchronous and isochronous data
US6700893B1 (en) 1999-11-15 2004-03-02 Koninklijke Philips Electronics N.V. System and method for controlling the delay budget of a decoder buffer in a streaming data receiver
US6788647B1 (en) 1999-11-19 2004-09-07 Cisco Technology, Inc. Automatically applying bi-directional quality of service treatment to network data flows
KR100668207B1 (ko) * 1999-12-13 2007-01-11 주식회사 케이티 실시간 자원 관측에 기반한 사용자 수용 제어 방법
US6665726B1 (en) * 2000-01-06 2003-12-16 Akamai Technologies, Inc. Method and system for fault tolerant media streaming over the internet
US20010029525A1 (en) * 2000-01-28 2001-10-11 Lahr Nils B. Method of utilizing a single uniform resource locator for resources with multiple formats
US20020023165A1 (en) * 2000-01-28 2002-02-21 Lahr Nils B. Method and apparatus for encoder-based distribution of live video and other streaming content
WO2001055877A1 (en) * 2000-01-28 2001-08-02 Diva Systems Corporation A system for preprocessing content for streaming server
US7159235B2 (en) 2000-01-28 2007-01-02 Sedna Patent Services, Llc Method and apparatus for content distribution via non-homogeneous access networks
US7054948B2 (en) * 2000-03-07 2006-05-30 Opcoast Llc Collaborative host masquerading system
KR20010093875A (ko) * 2000-04-01 2001-10-31 이승룡 멀티미디어 스트리밍 환경에서 클라이언트 측에서 통합된푸시/풀 버퍼 관리 방법
KR20000063196A (ko) * 2000-05-08 2000-11-06 천두배 다자간 화상/음성 회의(채팅)시의 부하 분산 방법
US6731605B1 (en) * 2000-06-19 2004-05-04 Sharp Laboratories Of America, Inc. Prioritized optimal server side bandwidth allocation in a multimedia session with push and pull sources
US7191242B1 (en) * 2000-06-22 2007-03-13 Apple, Inc. Methods and apparatuses for transferring data
US7720821B1 (en) 2000-06-30 2010-05-18 Sony Corporation Method of and apparatus for writing and reading time sensitive data within a storage device
US6959332B1 (en) 2000-07-12 2005-10-25 Cisco Technology, Inc. Basic command representation of quality of service policies
US7133922B1 (en) * 2000-08-07 2006-11-07 The Hong Kong University Of Science And Technology Method and apparatus for streaming of data
US7099932B1 (en) 2000-08-16 2006-08-29 Cisco Technology, Inc. Method and apparatus for retrieving network quality of service policy information from a directory in a quality of service policy management system
ATE504164T1 (de) * 2000-08-31 2011-04-15 Ericsson Television Inc Systeme und verfahren für die interaktion mit benutzern in einem kommunikationsnetzwerk
US7096260B1 (en) * 2000-09-29 2006-08-22 Cisco Technology, Inc. Marking network data packets with differentiated services codepoints based on network load
US6822940B1 (en) 2000-09-29 2004-11-23 Cisco Technology, Inc. Method and apparatus for adapting enforcement of network quality of service policies based on feedback about network conditions
US6988133B1 (en) 2000-10-31 2006-01-17 Cisco Technology, Inc. Method and apparatus for communicating network quality of service policy information to a plurality of policy enforcement points
US20020107971A1 (en) * 2000-11-07 2002-08-08 Bailey Brian W. Network transport accelerator
GB0027931D0 (en) * 2000-11-16 2001-01-03 Sgs Thomson Microelectronics Solid state imaging device
US7050396B1 (en) 2000-11-30 2006-05-23 Cisco Technology, Inc. Method and apparatus for automatically establishing bi-directional differentiated services treatment of flows in a network
KR100739308B1 (ko) * 2000-12-15 2007-07-12 주식회사 케이티 비디오 스트림의 알티피 패킷화 방법
US8554940B2 (en) 2001-01-19 2013-10-08 Single Touch Interactive, Inc. System and method for routing media
US20040025186A1 (en) * 2001-01-19 2004-02-05 Jennings Charles A. System and method for managing media
US7191244B2 (en) * 2001-01-19 2007-03-13 Streamworks Technologies, Inc. System and method for routing media
US7054949B2 (en) * 2001-01-19 2006-05-30 World Streaming Network, Inc. System and method for streaming media
US7305697B2 (en) 2001-02-02 2007-12-04 Opentv, Inc. Service gateway for interactive television
US7017175B2 (en) * 2001-02-02 2006-03-21 Opentv, Inc. Digital television application protocol for interactive television
US20020175991A1 (en) * 2001-02-14 2002-11-28 Anystream, Inc. GPI trigger over TCP/IP for video acquisition
US20020129159A1 (en) 2001-03-09 2002-09-12 Michael Luby Multi-output packet server with independent streams
US20040117427A1 (en) * 2001-03-16 2004-06-17 Anystream, Inc. System and method for distributing streaming media
US7124292B2 (en) * 2001-05-21 2006-10-17 Sony Corporation Automatically configuring storage array including a plurality of media storage devices for storing and providing data within a network of devices
US20090031419A1 (en) 2001-05-24 2009-01-29 Indra Laksono Multimedia system and server and methods for use therewith
US7099951B2 (en) * 2001-05-24 2006-08-29 Vixs, Inc. Method and apparatus for multimedia system
US8291457B2 (en) 2001-05-24 2012-10-16 Vixs Systems, Inc. Channel selection in a multimedia system
US7305011B2 (en) * 2001-06-14 2007-12-04 International Business Machines Corporation Periodic broadcast and location of evolving media content with application to seminar and stroke media
US20030007515A1 (en) * 2001-07-03 2003-01-09 Apostolopoulos John G. System and method for receiving mutiple description media streams in fixed and mobile streaming media systems
US7200402B2 (en) 2001-07-03 2007-04-03 Hewlett-Packard Development Company, L.P. Method for handing off streaming media sessions between wireless base stations in a mobile streaming media system
US6757735B2 (en) 2001-07-03 2004-06-29 Hewlett-Packard Development Company, L.P. Method for distributing multiple description streams on servers in fixed and mobile streaming media systems
US6996618B2 (en) * 2001-07-03 2006-02-07 Hewlett-Packard Development Company, L.P. Method for handling off multiple description streaming media sessions between servers in fixed and mobile streaming media systems
US20030009578A1 (en) * 2001-07-03 2003-01-09 Apostolopoulos John G. Method and system for delivering streaming media to fixed clients or mobile clients with multiple description bitstreams
US20030014532A1 (en) * 2001-07-16 2003-01-16 Shean-Guang Chang Method and apparatus for multicast support
KR100595066B1 (ko) * 2001-07-20 2006-06-30 엘지전자 주식회사 디지털 아이템 생성방법
US6996393B2 (en) * 2001-08-31 2006-02-07 Nokia Corporation Mobile content delivery system
US6996624B1 (en) * 2001-09-27 2006-02-07 Apple Computer, Inc. Reliable real-time transport protocol
EP1446925A1 (de) 2001-10-25 2004-08-18 Worldcom, Inc. Qualitätsanzeiger für kommunikationssitzungen
JP4132788B2 (ja) * 2001-11-15 2008-08-13 三菱電機株式会社 データ通信装置
US6754203B2 (en) 2001-11-27 2004-06-22 The Board Of Trustees Of The University Of Illinois Method and program product for organizing data into packets
KR100450795B1 (ko) * 2001-12-12 2004-10-01 삼성전자주식회사 무선 독립망에서 혼합형 자원 공유 방법과 이를 위한 단말및 데이타 포맷
MXPA04005816A (es) * 2001-12-15 2004-09-10 Thomson Licensing Sa Determinacion de calidad de servicio en una base de reservacion de tiempo.
US6820116B1 (en) 2001-12-21 2004-11-16 Nokia Corporation Mobile browsing booster system
US7333432B1 (en) 2002-02-12 2008-02-19 Cisco Technology, Inc. Method and apparatus for configuring network elements to support real time applications
US7477600B1 (en) 2002-02-12 2009-01-13 Cisco Technology, Inc. Method and apparatus for configuring network elements to support real time applications based on meta-templates
US20040071083A1 (en) * 2002-02-22 2004-04-15 Koninklijke Philips Electronics N.V. Method for streaming fine granular scalability coded video over an IP network
JP4039086B2 (ja) * 2002-03-05 2008-01-30 ソニー株式会社 情報処理装置および情報処理方法、情報処理システム、記録媒体、並びにプログラム
US7020823B2 (en) * 2002-03-19 2006-03-28 Matsushita Electric Industrial Co., Ltd. Error resilient coding, storage, and transmission of digital multimedia data
US20030204614A1 (en) * 2002-04-29 2003-10-30 The Boeing Company Method and apparatus for the display and distribution of cinema grade content in real time
US20030206549A1 (en) * 2002-05-03 2003-11-06 Mody Sachin Satish Method and apparatus for multicast delivery of information
ATE300840T1 (de) * 2002-05-06 2005-08-15 Ericsson Telefon Ab L M Mehrbenutzermultimedianachrichtendiensten
JP3799607B2 (ja) * 2002-05-08 2006-07-19 ソニー株式会社 情報配信システム、情報処理装置および方法、記録媒体、並びにプログラム
US7471630B2 (en) * 2002-05-08 2008-12-30 Verizon Business Global Llc Systems and methods for performing selective flow control
US7529846B2 (en) * 2002-05-14 2009-05-05 Thomson Licensing Video receiver architecture for digital subscriber line networks
KR100860581B1 (ko) 2002-05-18 2008-09-26 엘지전자 주식회사 멀티캐스트 데이터 전송 방법
US7876681B2 (en) 2002-05-24 2011-01-25 Verizon Business Global Llc Systems and methods for controlling network-bound traffic
KR20030097559A (ko) 2002-06-22 2003-12-31 엘지전자 주식회사 무선이동통신 시스템의 멀티미디어 서비스 방법
US20040216164A1 (en) * 2002-07-17 2004-10-28 William Hayhurst Decentralized media delivery
WO2004040928A1 (en) * 2002-10-29 2004-05-13 Telefonaktiebolaget Lm Ericsson (Publ) Reporting for multi-user services in wireless networks
US20040107242A1 (en) * 2002-12-02 2004-06-03 Microsoft Corporation Peer-to-peer content broadcast transfer mechanism
US7668968B1 (en) 2002-12-03 2010-02-23 Global Ip Solutions, Inc. Closed-loop voice-over-internet-protocol (VOIP) with sender-controlled bandwidth adjustments prior to onset of packet losses
US6996626B1 (en) 2002-12-03 2006-02-07 Crystalvoice Communications Continuous bandwidth assessment and feedback for voice-over-internet-protocol (VoIP) comparing packet's voice duration and arrival rate
US7023813B2 (en) * 2002-12-31 2006-04-04 Motorola, Inc. Methods for managing a pool of multicast addresses and allocating addresses in a communications system
US7366780B2 (en) * 2002-12-31 2008-04-29 Motorola, Inc. System and method for controlling and managing sessions between endpoints in a communications system
US7792982B2 (en) * 2003-01-07 2010-09-07 Microsoft Corporation System and method for distributing streaming content through cooperative networking
US7633926B1 (en) * 2003-02-06 2009-12-15 Cisco Technology, Inc. Extending multicast applications available on data networks to cell-based wireless networks
FR2851704A1 (fr) * 2003-02-20 2004-08-27 France Telecom Procede de gestion de presence selective pour service de messagerie instantanee au sein d'un reseau de telecommunication tel que le reseau internet
US20040179608A1 (en) * 2003-02-27 2004-09-16 Intel Corporation Multiple-description coding methods and apparatus
US7010538B1 (en) 2003-03-15 2006-03-07 Damian Black Method for distributed RDSMS
US8626944B2 (en) * 2003-05-05 2014-01-07 Hewlett-Packard Development Company, L.P. System and method for efficient replication of files
CN100417155C (zh) * 2003-05-08 2008-09-03 上海交通大学 远程教学多模式实时多媒体交互***
US7349906B2 (en) * 2003-07-15 2008-03-25 Hewlett-Packard Development Company, L.P. System and method having improved efficiency for distributing a file among a plurality of recipients
US7523217B2 (en) * 2003-07-15 2009-04-21 Hewlett-Packard Development Company, L.P. System and method having improved efficiency and reliability for distributing a file among a plurality of recipients
US20050033829A1 (en) * 2003-08-04 2005-02-10 Nokia Corporation System and method for wireless multicast downloading
EP1519529B1 (de) * 2003-09-25 2012-06-27 RealNetworks, Inc. Medienausgabevorrichtung zur Bereitstellung von personalisierten Medieninhalten
KR100592072B1 (ko) * 2003-10-02 2006-06-21 (주)디디오넷 전송 제어 프로토콜 기반의 다중경로 방식을 이용한스트림 데이터 전파 방법
US7349358B2 (en) * 2003-10-06 2008-03-25 Kontiki, Inc. Method and apparatus for optimizing content delivery on local subnets
KR100595646B1 (ko) 2004-01-09 2006-07-03 엘지전자 주식회사 Mbms서비스를 제공하는 무선통신 시스템
US7693938B2 (en) 2004-02-13 2010-04-06 Envisionit Llc Message broadcasting admission control system and method
US7801538B2 (en) 2004-02-13 2010-09-21 Envisionit Llc Message broadcasting geo-fencing system and method
JP4589343B2 (ja) 2004-02-13 2010-12-01 エンビジョンアイティー・エルエルシー 公共サービスメッセージの放送システム及び方法
US7676722B2 (en) * 2004-03-31 2010-03-09 Sony Corporation Multimedia content delivery using pre-stored multiple description coded video with restart
US7853676B1 (en) 2004-06-10 2010-12-14 Cisco Technology, Inc. Protocol for efficient exchange of XML documents with a network device
US7640317B2 (en) * 2004-06-10 2009-12-29 Cisco Technology, Inc. Configuration commit database approach and session locking approach in a two-stage network device configuration process
US7660882B2 (en) * 2004-06-10 2010-02-09 Cisco Technology, Inc. Deploying network element management system provisioning services
US7568059B2 (en) * 2004-07-08 2009-07-28 Asocs Ltd. Low-power reconfigurable architecture for simultaneous implementation of distinct communication standards
FI20041267A0 (fi) * 2004-09-29 2004-09-29 Nokia Corp Tiedottaminen solukkotietoverkossa
FI20055046A0 (fi) * 2005-02-01 2005-02-01 Nokia Corp Tulevan datan käsittely
DE102005009082A1 (de) * 2005-02-28 2006-09-07 Siemens Ag Verfahren zum Verwalten von Datenströmen in einer Datenverarbeitungsanlage
US20080022343A1 (en) * 2006-07-24 2008-01-24 Vvond, Inc. Multiple audio streams
US8225083B2 (en) * 2005-03-09 2012-07-17 Vudu, Inc. Secured seeding of data in a distributed environment
US7797440B2 (en) * 2005-03-09 2010-09-14 Vudu, Inc. Method and system for managing objects distributed in a network
US9176955B2 (en) * 2005-03-09 2015-11-03 Vvond, Inc. Method and apparatus for sharing media files among network nodes
US8904463B2 (en) * 2005-03-09 2014-12-02 Vudu, Inc. Live video broadcasting on distributed networks
US8219635B2 (en) * 2005-03-09 2012-07-10 Vudu, Inc. Continuous data feeding in a distributed environment
US8887224B2 (en) * 2005-03-09 2014-11-11 Vudu, Inc. Updating content libraries by transmitting release data
US8099511B1 (en) * 2005-06-11 2012-01-17 Vudu, Inc. Instantaneous media-on-demand
US8588210B2 (en) * 2005-07-22 2013-11-19 Motorola Solutions, Inc. Method and apparatus for floor control in a communication system
AU2006203487B2 (en) * 2005-08-12 2008-04-24 Samsung Electronics Co., Ltd. System and method for transmitting system messages insession initiation protocol
KR100741885B1 (ko) * 2005-10-26 2007-07-23 지유소프트 주식회사 다진 트리 구조를 이용한 응용계층 멀티캐스트 그룹 구성방법
US7535857B2 (en) * 2005-11-18 2009-05-19 Motorola, Inc. Method for transmitting data from a participant device in a session in an internet protocol (IP) system
CN101361316B (zh) 2005-11-23 2011-12-14 想象It公司 消息广播准入控制***和方法
CN101361317B (zh) 2005-11-23 2013-05-08 因维日内特有限公司 消息广播计费***和方法
KR100772385B1 (ko) * 2005-12-07 2007-11-01 삼성전자주식회사 분산 스토리지 시스템 상에서 컨텐트를 송수신하는 방법 및장치
EP1798928A1 (de) * 2005-12-16 2007-06-20 Alcatel Lucent Paketbasiertes Medienverteilungssystem mit einem Gemeinschaftskanalverwalter
KR100848128B1 (ko) * 2006-04-24 2008-07-24 한국전자통신연구원 실시간 스트리밍 프로토콜을 이용한 프로그래시브 스트리밍방법
US7689695B2 (en) * 2006-06-28 2010-03-30 International Business Machines Corporation System and method for distributed utility optimization in a messaging infrastructure
US7913284B2 (en) * 2006-08-31 2011-03-22 Qualcomm Incorporated Method and apparatus for capturing mobile multimedia signals
US8296812B1 (en) 2006-09-01 2012-10-23 Vudu, Inc. Streaming video using erasure encoding
US8656442B1 (en) 2007-11-21 2014-02-18 BitGravity, Inc. Efficient video delivery
US8949434B2 (en) * 2007-12-17 2015-02-03 Microsoft Corporation Automatically provisioning a WWAN device
ATE500691T1 (de) * 2007-12-20 2011-03-15 Koninkl Kpn Nv System und verfahren zum konfigurieren eines tv- signals
US8667175B2 (en) * 2008-03-13 2014-03-04 Cisco Technology, Inc. Server selection for routing content to a client using application layer redirection
CN101998174B (zh) * 2009-08-24 2012-11-28 中兴通讯股份有限公司 组播rtp会话快速接入的方法、服务器、客户端及***
CN101753271B (zh) * 2009-12-29 2013-05-08 中兴通讯股份有限公司 多描述编码的分布式媒体流分发***及方法
EP2362651A1 (de) 2010-02-19 2011-08-31 Thomson Licensing Mehrwegige Lieferung für anpassungsfähige Strömung
EP2525587B1 (de) * 2011-05-17 2017-07-05 Alcatel Lucent Verfahren zum Streaming von Videoinhalt, Knoten in einem Netzwerk zur Überwachung des Streaming von Videoinhalt
US9736548B2 (en) 2011-06-08 2017-08-15 Qualcomm Incorporated Multipath rate adaptation
US9001804B2 (en) * 2011-06-16 2015-04-07 Qualcomm Incorporated Sharing multi description coded content utilizing proximate helpers
US9367501B2 (en) 2011-11-10 2016-06-14 International Business Machines Corporation Dynamic streaming data dispatcher
US8972815B1 (en) * 2012-03-20 2015-03-03 Xilinx, Inc. Recovery of media datagrams
US9215568B2 (en) * 2012-04-26 2015-12-15 CMMB Vision USA Inc. Distributed storage and sharing of data packets in hybrid networks
US9131254B2 (en) * 2012-07-19 2015-09-08 Alcatel Lucent Cross layer coding for satellite mobile TV broadcast method and apparatus
CN104811826A (zh) * 2014-01-29 2015-07-29 莘翔四海(北京)科技有限公司 多媒体播放方法及装置
US10917760B1 (en) 2020-06-02 2021-02-09 Envisionit Llc Point-to-multipoint non-addressed message processing system
CN111906594B (zh) * 2020-06-08 2022-07-08 深圳众为兴技术股份有限公司 一种五轴联动机床rtcp参数标定方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0242489A (ja) * 1988-08-02 1990-02-13 Nec Corp 画像表示装置
JP3357393B2 (ja) * 1992-07-01 2002-12-16 日本電信電話株式会社 画像情報サービスシステム
ES2148197T3 (es) * 1993-06-29 2000-10-16 Cit Alcatel Metodo de resecuenciacion y dispositivo de resecuenciacion que realiza tal metodo.
JP3204434B2 (ja) * 1993-09-30 2001-09-04 松下電器産業株式会社 ビデオサーバ
US5557724A (en) * 1993-10-12 1996-09-17 Intel Corporation User interface, method, and apparatus selecting and playing channels having video, audio, and/or text streams
US5544327A (en) * 1994-03-01 1996-08-06 International Business Machines Corporation Load balancing in video-on-demand servers by allocating buffer to streams with successively larger buffer requirements until the buffer requirements of a stream can not be satisfied
DE69428186T2 (de) * 1994-04-28 2002-03-28 Hewlett-Packard Co.(A Delaware Corporation), Palo Alto Mehrfachsendeeinrichtung
JPH098844A (ja) * 1995-06-16 1997-01-10 Hitachi Ltd 広域マルチキャスト通信方法
US5737531A (en) * 1995-06-27 1998-04-07 International Business Machines Corporation System for synchronizing by transmitting control packet to omit blocks from transmission, and transmitting second control packet when the timing difference exceeds second predetermined threshold
JPH0937241A (ja) * 1995-07-14 1997-02-07 Nec Eng Ltd 高能率画像符号化伝送システムとそのエンコーダ装置及びデコーダ装置
JPH0991186A (ja) * 1995-09-20 1997-04-04 Hitachi Ltd 情報配信システム
US5724355A (en) * 1995-10-24 1998-03-03 At&T Corp Network access to internet and stored multimedia services from a terminal supporting the H.320 protocol
US5862450A (en) * 1995-12-14 1999-01-19 Sun Microsytems, Inc. Method and apparatus for delivering simultaneous constant bit rate compressed video streams at arbitrary bit rates with constrained drift and jitter
US5768527A (en) * 1996-04-23 1998-06-16 Motorola, Inc. Device, system and method of real-time multimedia streaming
US5768513A (en) * 1996-06-27 1998-06-16 At&T Corp. Multimedia messaging using the internet

Also Published As

Publication number Publication date
DE69832247D1 (de) 2005-12-15
EP0915598B1 (de) 2005-11-09
EP0915598A3 (de) 2003-09-24
EP0915598A2 (de) 1999-05-12
JP3448490B2 (ja) 2003-09-22
JPH11239134A (ja) 1999-08-31
KR100327791B1 (ko) 2002-05-09
US5928331A (en) 1999-07-27
KR19990037501A (ko) 1999-05-25
CN1216422A (zh) 1999-05-12
CN1126344C (zh) 2003-10-29

Similar Documents

Publication Publication Date Title
DE69832247T2 (de) Auf einem verteilten Internet- Protokollen basierte Echtzeit- Multimedia- Datenströmungs- Architektur
DE60103005T2 (de) Datenstrom in einer peer-to-peer Architektur
DE602005001815T2 (de) Verfahren zur effizienten Mehrfachverbreitung von Inhalten in einem Peer-to-peer Netzwerk
DE60305880T2 (de) Skalierbare gezielte videomehrfachsendung auf basis der bandbreite oder fähigkeit des clients
DE60111276T2 (de) Verfahren und vorrichtung zur mehrfachsendung in einem umts-netzwerk
DE60217171T2 (de) Verfahren, System und Vorrichtung zur Datenübertragung
DE112006002677T5 (de) Verfahren und Vorrichtung für RTP-Ausgabe-Streaming unter Verwendung von komplementären Richtungsdateien
DE69931513T2 (de) Datentransport
DE60314106T2 (de) Datenstruktur für ein datenübertragungssystem
DE102005054978A1 (de) Verfahren zum Aktualisieren eines Datensatzes sowie Vorrichtung zur Durchführung des Verfahrens
DE60310249T2 (de) System und verfahren zur bereitstellung von fehlerbehebung für streaming-fgs-codierte videosignale über ein ip-netzwerk
DE60026006T2 (de) System zum Empfang von Mehrfachdaten
EP2938085B1 (de) Verfahren und vorrichtung zur übermittlung von kodierten mediendaten
EP1122954B1 (de) Verfahren und Vorrichtung zum Übertragen von Dateneinheiten eines Datenstroms
DE102009012992A1 (de) Verfahren und System zum Bereitstellen von Medieninhalten für eine Mehrzahl von Knoten in einem Datennetz
DE60310752T2 (de) Datenzugriffsprozess
EP1428371B1 (de) Verfahren zum übertragen eines datenstroms von einem produzenten an eine mehrzahl von zuschauern
EP2454863A1 (de) Steuerung der datenrate eines medien-downloads anhand von client-wiedergabestatusinformation
DE602005005709T2 (de) Verfahren und System zur Übertragung von Broadcast relatierten Daten auf ein mobiles Endgerät
DE602005002602T2 (de) Method of transmission of a video stream in a mobile network with limited bandiwdth
WO1999012312A1 (de) Datenübertragungssystem und verfahren zum übertragen von echtzeit-daten und/oder speicher-daten in datenkommunikationsnetzen
DE102006014592A1 (de) Verfahren zur Übertragung von Daten in einem Datennetz
EP1981284B1 (de) Verfahren zum Auslesen von Daten und Vorrichtung
DE102005046382A1 (de) Verfahren, Kommunikationsanordnung und dezentrale Kommunikationseinrichtung zum Übermitteln von Multimedia-Datenströmen
DE10104961A1 (de) Verfahren zur bandbreiteneffizienten Übertragung von Datenströmen in einem IP-Netz

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: WITTE, WELLER & PARTNER, 70178 STUTTGART

8339 Ceased/non-payment of the annual fee