DE69933637T2 - Funktionalitätsverwaltung für ein system der unterhaltungselektronik - Google Patents

Funktionalitätsverwaltung für ein system der unterhaltungselektronik Download PDF

Info

Publication number
DE69933637T2
DE69933637T2 DE69933637T DE69933637T DE69933637T2 DE 69933637 T2 DE69933637 T2 DE 69933637T2 DE 69933637 T DE69933637 T DE 69933637T DE 69933637 T DE69933637 T DE 69933637T DE 69933637 T2 DE69933637 T2 DE 69933637T2
Authority
DE
Germany
Prior art keywords
station
controller
stations
controlled
controller station
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 - Lifetime
Application number
DE69933637T
Other languages
English (en)
Other versions
DE69933637D1 (de
Inventor
G. Eduard ZONDAG
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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 Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of DE69933637D1 publication Critical patent/DE69933637D1/de
Application granted granted Critical
Publication of DE69933637T2 publication Critical patent/DE69933637T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/281Exchanging configuration information on appliance services in a home automation network indicating a format for calling an appliance service function in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2805Home Audio Video Interoperability [HAVI] networks

Description

  • Die vorliegende Erfindung bezieht sich auf ein Kommunikationssystem mit einer Anzahl Controllerstationen und wenigstens einer gesteuerten Station; wobei die Stationen über ein Kommunikationsnetzwerk miteinander verbunden sind; wobei die Funktionalität jeder gesteuerten Station mit einer betreffenden abstrakten Repräsentation, durch AR bezeichnet, assoziiert sind, was eine Schnittstelle für Softwareelemente in dem System schafft zur Steuerung der Funktionalität der gesteuerten Station mit Hilfe von Nachrichten, die mit der AR über das Kommunikationsnetzwerk ausgetauscht werden.
  • Die vorliegende Erfindung bezieht sich weiterhin auf eine Controllerstation zur Verwendung in einem Kommunikationssystem mit einer Anzahl Controllerstationen und wenigstens einer gesteuerten Station; wobei die Stationen über ein Kommunikationsnetzwerk miteinander verbunden sind; wobei die Funktionalität jeder gesteuerten Station mit einer betreffenden abstrakten Repräsentation, durch AR bezeichnet, assoziiert ist, was eine Schnittstelle für Softwareelemente in dem System schafft zur Steuerung der Funktionalität der gesteuerten Station mit Hilfe von Nachrichten, die mit der AR über das Kommunikationsnetzwerk ausgetauscht werden.
  • Die vorliegende Erfindung bezieht sich insbesondere auf ein Multimedia-Unterhaltungselektroniksystem. Die Unterhaltungselektronikindustrie verlagert sich von vorwiegend analog betriebenen Geräten zu digital betriebenen Geräten. Beim Erscheinen digitaler Speichermedien, wie Compact Disk, und digitalen Sendetechniken, wie DAB, ist Audio digital geworden. Auch Video ist rasch digital geworden. Ein Total-Digital-Multimediasystem mit digitalem Audio und digitalem Video bietet neue Möglichkeiten für den Konsumenten, und zwar wegen eindrucksvoller digitaler Verarbeitungs- und Speicherfähigkeiten, die zu erschwingbaren Preisen verfügbar werden. Weiterhin werden digitale Kommunikationsnetzwerke kräftiger zu reduzierten Kosten.
  • EP-A-0 406 486 beschreibt das D2B Kommunikationssystem für Unterhaltungselektronikgeräte, das eine automatische Steuerung eines elektronischen Geräts über den D2B-Bus ermöglicht. In diesem System kann eine Station als eine Controllerstation wirksam sein, die eine oder mehrere der anderen Stationen steuert, die als gesteuerte Station(en) wirksam ist (sind). Eine gesteuerte Station stellt ihre örtliche Funktionalität in Form eines Satzes von Funktionen zur Verfügung, auf die durch Übertragung von Nachrichten über den D2B Bus zugegriffen werden kann. Der Funktionalitätssatz kann als eine abstrakte Repräsentation der wirklich darunter liegenden Funktionalität betrachtet werden, die von der Hardware und/oder der Software der gesteuerten Station geschaffen wird. Die Repräsentation ist in dem Sinne abstrakt, dass keine strikte Eins-zu-Eins-Beziehung zwischen den extern angebotenen Funktionen und der internen Implementierung erforderlich ist. Typischerweise ist die Repräsentation standardisiert, während die wirkliche Implementierung Lieferant- oder Modellspezifisch ist. Folglich zeichnet die gesteuerte Station die abstrakte Repräsentation (AR) in interne Steuermechanismen und steuert die unterliegende Hardware/Software auf entsprechende Weise (beispielsweise unter Verwendung eines internen Busses, wie I2C, zur Steuerung von Hardwareelementen). Eine derartige Aufzeichnung und Steuerung wird üblicherweise in Software durchgeführt. Dies deckt auch die Funktionalität, die erforderlich ist zum Aufzeichnen der abstrakten Repräsentation zu der konkreten Repräsentation der unterliegenden Hardware/Software der Station.
  • Die AR kann unter Verwendung eines Benachrichtigungsmechanismus gesteuert werden. Befehlsnachrichten werden für jede Funktion definiert, welche die gesteuerte Station instruiert um eine definierte Aufgabe durchzuführen. Beantragungsnachrichten ermöglichen es, dass Information von der gesteuerten Station in Bezug auf die Durchführung einer Funktion erfasst wird, wie den Zustand der Station. Ereignisnachrichten ermöglichen es, dass die gesteuerte Station die steuernde Station über Ereignisse informiert, wie über Zustandsänderungen, die in der gesteuerten Station aufgetreten sind.
  • In der steuernden Station wird die Aufgabe der Steuerung der Funktionalität einer anderen Station dem sog. Audio/Video-Controller (AV/C) zugeordnet. Der AV/C funktioniert unabhängig von den anderen Stationen. Typischerweise startet der AV/C eine Steuersequenz, meistens als Feature oder Applikation bezeichnet, in Reaktion auf eine Auslösung von einem Benutzer (beispielsweise ein Benutzer hat eine Taste einer Fernbedienung betätigt) oder in Reaktion auf ein Ereignis, das in dem System aufgetreten ist. Ein typisches Beispiel einer Applikation, durchgeführt durch den AV/C, ist die automatische Wiedergabe. Für dieses Feature instruiert, in Reaktion auf die Aktivierung der Wiedergabefunktion eines VCRs durch den Benutzer (beispielsweise Betätigung einer Wiedergabetaste oder das Einschieben einer Bandkassette), der AV/C das VCR-Deck das Band abzuspie len, instruiert den VCR das von dem Band herrührende A/V-Signal dem Fernseher zur Verfügung zu stellen und instruiert den Fernseher das von dem VCR herrührende Signal dem Monitor zuzuführen. Es dürfte einleuchten, dass für dieses Beispiel der steuernde AV/C vorzugsweise, obschon nicht unbedingt erforderlich, in dem Fernseher oder in dem VCR vorhanden ist zum reduzieren der Anzahl Befehlsnachrichten, In den Stationen können viele AV/C vorhanden sein. Eine Station kann mit der Zeit oder sogar gleichzeitig als eine steuernde Station oder als eine gesteuerte Station wirksam sein.
  • In dem D2B System war eine Übereinstimmung zwischen einerseits dem Feature, durchgeführt durch einen AV/C, und andererseits den Funktionen in der (den) gesteuerten Station(en). Diese Übereinstimmung hat die Einführung des Systems gehemmt. Typischerweise hatte ein Benutzer bereits ein AN System und ersetzte oder fügte auf individueller Basis Geräte hinzu. Das Erhalten eines einzigen Geräts, das imstande war, als eine D2B Station und/oder als gesteuerte Station wirksam zu sein, fügte zu dem System keine Funktionalität hinzu, da noch keine Partnerstation verfügbar war. Nur dann, wenn der Benutzer geeignete Partnerstationen hatte, wurde eine automatische Steuerfunktionalität, geboten durch das D2B System, verfügbar. Weiterhin war die Funktionalität der steuernden Station und der gesteuerten Station statisch. So wurde beispielsweise die Funktionalität, die durch einen VCR dem Rest des Systems zur Verfügung gestellt wurde, durch Features bestehender AV/C oder AV/C in der Entwicklung zu dem Zeitpunkt der Entwicklung des VCR bestimmt. Wenn zu einem späteren Zeitpunkt ein AV/C mit einem neuen Feature eingeführt wurde, die andere Funktionen des VCRs erforderte, könnte dieser neue AV/R nicht mit dem bestehenden D2B VCR zusammenarbeiten, sogar nicht wenn die Hardware des bestehenden VCR im Grunde die Funktionalität aufbringen könnte. Folglich war Änderung oder Erweiterung der Funktionalität des Systems schwerfällig.
  • Es ist nun u. a. eine Aufgabe der vorliegenden Erfindung, ein Kommunikationssystem der beschriebenen Art zu schaffen, das in Bezug auf die Funktionalität einer gesteuerten Station flexibler ist. Es ist eine weitere Aufgabe der vorliegenden Erfindung dass die Funktionalität der gesteuerten Station auf eine benutzerfreundliche Art und Weise verwaltet werden kann.
  • Um die Aufgabe der vorliegenden Erfindung zu erfüllen umfasst das Kommunikationssystem Führerselektionsmittel zum Selektieren einer einzigen Station der Cont rollerstationen als eine führende Controllerstation; und jede Controllerstation umfasst AR Verteilungsmittel um zu ermitteln, welche Controllerstation der wenigstens einen gesteuerten Stationen die betreffende AR durchführen soll; wobei die AR Verteilungsmittel wirksam sind um, wenn in der führenden Controllerstation vorhanden, jede AR höchstens einer der Controllerstationen zuzuordnen; und Steuermittel zum Durchführen wenigstens einer AR, die der örtlichen Controllerstation zugeordnet ist.
  • Nach der vorliegenden Erfindung kann die abstrakte Repräsentation einer gesteuerten Station an einer anderen Station durchgeführt werden, die als Controllerstation bezeichnet wird. Die Kommunikation zwischen der AR in der Controllerstation und der wirklichen Hardware/Software in der gesteuerten Station kann verschiedenartig durchgeführt werden. Dies kann jeden beliebigen nicht-Standard geschützten Mechanismus umfassen. Auf diese Weise kann eine gesteuerte Station, die an sich nicht imstande ist, die gewünschte AR zu schaffen um andere Stationen in den Stand zu setzen, sie zu steuern, dennoch ein Teil des Systems sein, sei es indirekt über die Controllerstation gesteuert. Während in den D2B Systemen nur zwei Parteien miteinander kommunizierten (und zwar die Feature/Applikation in einem AV/C der Controllerstation und die Funktionalität in der gesteuerten Station), sind in dem vorliegenden Fall drei Parteien im Spiel: eine Feature/Applikation (als Software-Element bezeichnet), eine AR in einer Controllerstation und die gesteuerte Station. Die Feature/Applikation kann in jeder beliebigen Station vorgesehen sein, die imstande ist, zu der AR der Controllerstation Steuernachrichten auszuliefern. Die Feature/Applikation kann auch in der Controllerstation selber vorgesehen sein.
  • Ein weiterer Vorteil der neuen Architektur ist, dass die durch die AR einer gesteuerten Station gelieferte Funktionalität eingestellt oder verbessert werden kann. Wenn beispielsweise anfangs ein Benutzer einen VCR gekauft hat mit einer Basis-AR und einen Fernseher mit einem entsprechenden Basis-Feature, wobei die Basis-Funktionalität angewandt wird, kann der Benutzer nach der vorliegenden Erfindung den Fernseher durch ein neueres Modell ersetzen, das ein moderneres Feature bietet (obschon nicht erforderlich) und eine bessere AR des VCRs, wobei die AR des VCRs in dem Fernseher mit dem VCR auf eine firmeneigene Art und Weise kommuniziert (wenigstens für die hinzugefügte Funktionalität). Nun kann nicht nur das neue Feature in dem Fernseher die verbesserte VCR Funktionalität benutzen, sondern auch ein Feature irgendwo in dem System kann die ver besserte Funktionalität verwenden, indem auf die VCR-AR in dem Fernseher zugegriffen wird.
  • Zur Verwaltung der Zuordnung von AR zu Controllerstationen wird nach der vorliegenden Erfindung eine Annäherung in zwei Schritten angewandt. Erstens wird eine der Controllerstationen zur führenden Controllerstation gewählt. Zweitens ordnet die führende Controllerstation die AR derart Controllerstationen zu, dass eine AR höchstens einmal zugeordnet wird. Auf diese Weise wird vermieden, dass zwei oder mehrere AR verantwortlich sind für Zugriff auf dieselbe gesteuerte Station, was zu Konfliktsituationen führen könnte. Dadurch, dass gewährleistet wird, dass für jede gesteuerte Station höchstens eine AR aktiv ist, werden Konfliktsituationen in der Steuerung der gesteuerten Station vermieden. Da im Grunde viele Stationen imstande sein können, als eine Controllerstation zu funktionieren, werden komplexe Synchronisations- und Verwaltungsthemen dadurch vermieden, dass eine er Controllerstationen als führend bezeichnet wird, wobei diese als solche für die Zuordnung von AR zu Controllerstationen verantwortlich ist.
  • In einer Ausführungsform, wie in dem Unteranspruch 2 definiert, wird die Führerselektion auf eine einfache, verteilte Art und Weise von jeder Controllerstation durchgeführt, die individuell entscheiden, ob sie der Anfangsführer ist. Die Entscheidung basiert auf einzigartigen Identifizierern jeder der Controllerstationen. Vorzugsweise werden für die einzigartigen Identifizierer dieselben Identifizierer verwendet, die zum Identifizieren einer Station in Bezug auf das Netzwerk, wie eine Netzwerkadresse, verwendet werden. Die Identifizierer können zentral, beispielsweise in einer der Controllerstationen, oder verteilt gespeichert werden, wobei jede Controllerstation den eigenen Identifizierer speichert. Unter Verwendung der einzigartigen Identifizierer kann jede Station einfach ermitteln, ob sie der Führer ist oder nicht. Die Entscheidung kann beispielsweise auf der Ermittlung des höchsten oder des niedrigsten Identifizierers beruhen. Auch können andere Algorithmen verwendet werden (beispielsweise das Transformieren des Identifizierers in eine kleinere Anzahl, wobei eine Hash-Funktion angewandt wird und über diese Anzahl entschieden wird).
  • In einer Ausführungsform, wie in dem Unteranspruch 3 definiert, erhalten die Bits niedrigster Ordnung des Identifiziers mehr Gewichtung bei der Ermittlung des Führers. Auf diese Weise wird die Situation vermieden, dass in allen oder vielen Systemen eine Station desselben Herstellers als die führende Station wirksam ist. Diese Situation könnte auftreten, wenn ein direkter Entscheidungsmechanismus angewandt werden würde, der die Werte der Identifizierer vergleicht, da typischerweise die Bits höherer Ordnung eines Identifizierers herstellerspezifisch sind. Da die Bits niedrigerer Ordnung meistens sequentiell und unabhängig von jedem Hersteller ermittelt werden, führt dies zu einer einfachen Art und Weise zum Erreichen eines gewissen Zufalls in der Wahl des Führers. Auf diese Weise gibt es in verschiedenen Systemen mit Stationen von demselben Hersteller (beispielsweise einen Fernseher der Marke X und einen VCR der Marke Y) eine Möglichkeit, dass eine Station eines der Hersteller nicht in allen Systemen als Führer selektiert wird. Vorteilhafterweise wird für ein festes System immer derselbe Führer selektiert. Dies kann die Konsistenz in der Zuordnung von AR zu Controllerstationen steigern, insbesondere, wenn, auf Basis von Vorzügen oder anderer Information für eine gesteuerte Station zwischen gleichwertig geeigneten Controllerstationen gewählt werden muss. Dies steigert auch die Konsistenz im Betrieb des Systems.
  • In einer Ausführungsform, wie in dem Unteranspruch 4 definiert, wird jede Controllerstation mit einem Fähigkeitsindikator assoziiert, der eine Fähigkeit der assoziierten Controllerstation angibt um als führende Controllerstation zu funktionieren (d.h. die Zuordnung der AR zu verwalten). Durch Verwendung von Fähigkeitsindikatoren wird die effiziente aber ziemlich wahllose erste Selektion eines Führers auf eine einfache Art und Weise verfeinert. Stattdessen, dass alle Controllerstationen die Fähigkeiten aller Controllerstationen sammeln und darüber entscheiden sollen, wird dieser Vorgang von nur einer einzigen Station durchgeführt (dem Ausgangsführer), wonach die Verantwortlichkeit zu einer anderen Controllerstation behandelt wird, wenn diese beim Entscheiden, wo die AR durchgeführt werden sollen, als die fähigste herauskommt. Dadurch, dass nur eine einzige Station verwendet wird (der Ausgangsführer) zum Selektieren des schlussendlichen Führers können auch Konflikte, die auftreten könnten, wenn die Fähigkeitsindikatoren gleich fähige Stationen angeben, auf einfache Weise gelöst werden. So wählt der Anfangsführer eine der fähigsten Stationen, beispielsweise eine mit einem niedrigsten oder höchsten Identifizierer, eine die zunächst ihren Fähigkeitsindikator angibt, oder auf eine andere geeignete Art und Weise. Es wird vermieden, dass eine andere Station, auf Basis derselben Daten eine andere Station als die fähigste Station wählen.
  • In einer Ausführungsform, wie in dem Unteranspruch 5 definiert, werden Controllerstationen, die imstande sind, aktualisierte Software für die ARen bevorzugt. Die Software kann beispielsweise dem Internet, einem neu programmierbaren Speicher, wie einer Festplatte, in dem System entnommen werden, oder durch Einfügung eines aktualisierten Speichermediums, wie einer CD-ROM, in einen Speicherleser. Auf diese Weise kann die Funktionalität des Systems oder vorzugsweise während der Lebenszeit der Produkte geändert werden.
  • Um die Aufgabe der vorliegenden Erfindung zu erfüllen umfasst das Kommunikationssystem Führerselektionsmittel um zu ermitteln, ob die Controllerstation eine führende Controllerstation ist; und die Controllerstation umfasst: AR Verteilungsmittel um zu ermitteln, welche Controllerstation die betreffenden Aren jeder der wenigstens einen Controllerstationen durchführen soll; wobei die AR Verteilungsmittel wirksam sind um, wenn die Controllerstation als die führende Controllerstation gewählt worden ist, jede AR höchstens einer der Controllerstationen in dem System zuzuordnen; und Steuermittel zum Durchführen wenigstens einer AR, die der Controllerstation zugeordnet ist.
  • Ausführungsbeispiele der vorliegenden Erfindung sind in der Zeichnung dargestellt und werden im Folgenden näher beschrieben. Es zeigen:
  • 1 ein Blockschaltbild eines Systems mit Konsumentengeräten nach der vorliegenden Erfindung, und
  • 2 ein Blockschaltbild der Softwarearchitektur einer Controllerstation in dem System nach 1.
  • In den Figuren bezeichnen dieselben Bezugszeichen gleiche oder ähnliche Elemente. Einige der in der Zeichnung angegebenen Elemente werden typischerweise in Software implementiert, und stellen als solche Software-Entitäten dar, wie Software-Module oder Objekte.
  • 1 ist ein Blockschaltbild eines Steuersystems 100 nach der vorliegenden Erfindung. Das System 100 umfasst wenigstens eine gesteuerte Station; dargestellt sind die gesteuerten Stationen 102, 104, 106, 108, 110, ... und 112. System 100 umfasst weiterhin eine Anzahl Controllerstationen. Die Figur zeigt die Controllerstationen 114 und 116. Die Controllerstationen sind über das Haupt-Kommunikationsnetzwerk 120 des Systems verbunden, beispielsweise auf Basis von IEEE 1394, unter Anwendung derselben Kommuni kationsprotokolle höheren Pegels. Die Controllerstationen 102106 sind unmittelbar mit der Controllerstation 114 verbunden. Die Verbindung kann über jedes beliebige geeignete Kommunikationsmittel, wie ein firmeneigenes Netzwerk sein. Die gesteuerte Station 108 ist mit dem Hauptnetzwerk 120 verbunden, verwendet aber nicht alle erforderlichen Protokolle um die AR zur Steuerung zur Verfügung zu stellen, auf eine Art und Weise, die für das Hauptnetzwerk 120 erforderlich ist. Die Station 108 kann aber andere Protokolle anwenden (beispielsweise firmeneigene oder entsprechend einer anderen Norm) und an sich imstande sein, mit einer Controllerstation zu kommunizieren.
  • In dem System wird ein Unterschied gemacht zwischen Controllerstationen (oder kurz Controllern) und gesteuerten Stationen. Ein Controller ist eine Station, die als Gastgeber für eine gesteuerte Station wirksam sein kann. Eine gesteuerte Station und ihr Controller können in derselben physikalischen Anordnung oder in einzelnen Anordnungen vorhanden sein. Es heißt, dass ein Controller eine abstrakte Repräsentation (AR) für die gesteuerte Anordnung beherbergt. Die Steuerschnittstelle wird über die API ("Application Program Interface") dieser AR freigegeben. Diese API ist der Zugriffspunkt für Applikationen (Elemente) zur Steuerung der Station. So könnte beispielsweise ein intelligenter Fernseher im Wohnzimmer der Controller für eine Anzahl miteinander verbundener gesteuerter Stationen sein. Eine gesteuerte Station könnte einen Code enthalten, der eine Benutzerschnittstelle für die Station konstruiert und eine externe Steuerung der Station ermöglicht. Wenn eine derartige Station das erste Mal verbunden wird, erhält der Controller die Benutzerschnittstelle und den Steuercode. An dem Fernsehschirm kann dann eine Ikone erscheinen, welche die Station darstellt, und Manipulation der Ikone kann dafür sorgen, dass Elemente des Steuerprogramms die dargestellte Station oder die dargestellten Stationen auf vorgeschriebene Art und Weise betätigen.
  • Um die Wirkungsweise und den veränderlichen Charakter des Systems 100 verstehen zu können, wird zunächst eine Kategorisierung der Kommunikationsfähigkeiten der Unterhaltungselektronikstationen 102112 beschrieben. Während es in Wirklichkeit ein geschmeidigeres Kontinuum von Anordnungsfähigkeiten gibt al hier erkannt, ist diese Kategorisierung nützlich zum Verstehen des Modells des Systems 100. Die Kommunikationsfähigkeiten der Stationen 102112 in diesem allgemeinen Beispiel haben verschiedene Perfektionspegel. Je nach den Kommunikationsfähigkeiten gehören die Stationen 102112 zu einer der nachfolgenden Klassen:
  • – Controllerstationen
  • Es kann ein Unterschied gemacht werden zwischen den nachfolgend zwei Typen von Controllerstationen:
  • – Voll-AV-Gerät (FAV)
  • Ein Voll-AV-Gerät hat im Allgemeinen einen reichen Satz an Mitteln und ist imstande eine komplexe Softwareumgebung zu unterstützen. Das primär unterscheidbare Feature eines FAVs ist das Vorhandensein einer Laufzeitumgebung zum Durchführen einer abstrakten Repräsentation (AR) für eine gesteuerte Station. Dies ermöglicht es, dass ein FAV von anderen Stationen oder über andere LAN oder WAN Netzwerke eine AR hochladet und auf diese Weise verbesserte Fähigkeiten für die Steuerung schafft. Das FAV kann auch imstande sein, Applikationen/Features herunter zu laden. Vorzugsweise ist der herunter geladene Code eine bestimmte Form eines durchführbaren Codes einer virtuellen Maschine (beispielsweise Java oder ähnliche Bytecodes). Ähnliche Kandidaten für FAV-Geräte wären Settopboxen (STB), digitale Fernsehgeräte (DTV), Allzweck-Unterhaltungsgeräte und sogar Heimcomputer.
  • – Zwischen-AV-geräte (IAV)
  • Zwischen-AV-Geräte sind im Allgemeinen preisgünstiger als FAV-Geräte und haben weniger Mittel. Sie liefern nicht eine Laufzeitumgebung für herunter ladbare ARen und können folglich nicht als Controller für beliebige Geräte innerhalb des Systems wirksam sein. Aber ein IAV-Gerät kann systemeigene Unterstützung liefern zur Steuerung bestimmter gesteuerter Stationen in dem System.
  • – Gesteuerte Stationen
  • Es können die nachfolgenden zwei Typen von Controllerstationen unterschieden werden:
  • – Basis-AV-Geräte (BAV)
  • Dies sind Geräte, die aus geschäftlichen oder Mittelgründen dafür wählen, zukunftsbeständiges Verhalten zu implementieren, indem eine hochladbare AR geschaffen wird, aber die Geräte selber führen keine AR durch. Diese Geräte können von einer Controllerstation gesteuert werden (durch ein FAV-Gerät über den hochladbaren Bytecode oder durch ein IAV-Gerät über einen systemeigenen Code). Das Protokoll zwischen dem BAV-Gerät und der Controllerstation ist typischerweise firmeneigen. Kommunikation zwischen einer Control lerstation und einem BAV-Gerät erfordert, dass Befehle für die AR in das und aus dem Protokoll übersetzt werden, das von dem BAV-Gerät angewandt wird. Diese Übersetzung erfolgt durch die Controllerstation, welche die AR durchführt.
  • – Altere AV-Geräte (LAV)
  • :AV-Geräte sind Geräte, die der beschriebenen Systemarchitektur und den Kommunikationsprotokollen nicht entsprechen. Typischerweise wurden derartige Gerät früher gebaut. Diese Geräte benutzen firmeneigene Protokolle zu ihrer Steuerung, und meistens haben sie einfache Nur-Steuerungsprotokolle. Derartige Geräte können in einem Heimnetzwerk funktionieren, aber erfordern, dass FAV oder LAV-Geräte als Durchgang wirksam s. Kommunikation zwischen einem Voll- oder Zwischen-AV-Gerät und einem älteren AV-Gerät erfordert, dass Befehle in das ältere und aus dem älteren Befehlsprotokoll übersetzt werden sollen.
  • Im Laufe der Interaktion können Stationen Steuerung und Daten auf eine direkte Weise austauschen. Dies gewährleistet, dass bei dem Kommunikationspegel kein einziges Gerät als Master oder als Controller für das System erforderlich ist. Aber es ermöglicht auch, dass ein logischer Master oder Controller eine Steuerstruktur auf das direkte Kommunikationsmodell auferlegt.
  • Software-Architektur
  • Die Software-Architektur einer Controllerstation ist in 2 dargestellt. Die Software-Elemente der Architektur unterstützen die Basisbegriffe der Netzwerkverwaltung, der Geräteabstraktion, der Inter-Gerätekommunikation, und der Gerät-Benutzerschnittstellenverwaltung (UI). Kollektiv zeigen diese Software-Elemente die Zusammenarbeitsfähigkeit API, einen Satz von Diensten zum Aufbauen tragbarer verteilter Applikationen in dem System. Die Software-Elemente selber befinden sich über einer firmenspezifischen Plattform 210, wie einem Echtzeit-Operationssystem. 2 zeigt die Anordnung von Software-Elementen in einer Controllerstation. Obschon nicht beabsichtigt als ein Implementierungsblaudruck, hebt die Darstellung hervor, wie Software-Elemente eine Mittelschicht zwischen plattformspezifischen APIs und plattformunabhängigen Applikationen bilden. Ein wichtiges Software-Element ist die abstrakte Repräsentation (AR). Angegeben sind drei ARen (220, 222 und 224). Die AR ist ein Software-Element, verwendet zum Steu ern einer Station. Eine AR umfasst einen Code für die AR selbst und einen Code für "Functional Component Modules" (FCM) für jede funktionelle Komponente innerhalb der gesteuerten Station. Ein FCM ist eine (Software)Abstraktion einer funktionellen Komponente, welche die Funktionalität dieser funktionellen Komponente für die Software-Umgebung und -Applikationen schafft. Applikationen kommunizieren nicht mit einer funktionellen Komponente direkt, sondern nur über das FCM, FCM seinerseits kommuniziert nicht mit der funktionellen Komponenten direkt, sondern immer über die AR (dies ist wenigstens das Modell, das verwendet wird um die Beziehung darzustellen). Ein FCM ist ein Objekt in dem Sinne, dass es als ein Empfänger in einem Register registriert ist (Einzelheiten werden nachstehend noch gegeben) und es kann mit anderen Objekten über ein Nachrichtensystem kommunizieren. Eine funktionelle Komponente stellt Funktionen dar, die mit einer identifizierbaren Hauptfunktion einer Station assoziiert sind. So kann beispielsweise eine VCR AR separate FCM für das Tapedeck und den Tuner enthalten; eine Fernseher AR kann separate FCM für den Monitor, PIP (Bild-im-Bild-Wiedergabe) und den Tuner enthalten. Außerdem kann eine AR eine Gerätesteuerungsapplikation enthalten – ein Software-Element, das es ermöglicht, dass das Gerät und die funktionellen Komponenten vom Benutzer gesteuert werden. In der Figur stellt AR 220 die Funktionalität der Controllerstation selber dar, während AR 222 und 224 die Funktionalität zweier gesteuerten Stationen darstellt.
  • Die Controllerstation umfasst Steuermittel 240, die eine Laufzeitumgebung für ARen schaffen (beispielsweise Hochladungs-ARen) oder Applikationen. Die Controllerstation umfasst weiterhin AR Verteilungsmittel 250 und AR Zuordnungsmittel 260. Die AR Zuordnungsmittel 260 ordnen eine AR, die in dieser Controllerstation durchgeführt werden soll, den Steuermitteln 240 zur Durchführung zu. Die Verteilungsmittel 250 erfüllen die Aufgabe eines AR Verwalters, der die Installation und die Entfernung von ARen in den Controllerstationen steuert.
  • ARen sind ein zentrales Konzept für die Architektur und das Mittel der Flexibilität beim Unterbringen neuer Geräte und Features. ARen gibt es in zwei Haupttypen:
    • – eingebettete AR – eine AR vorinstalliert in einer Controllerstation.
    • – hochgeladene AR – eine AR implementiert unter Verwendung eines herunterladbaren Codes, beispielsweise eines Bytecodes. Hochladbare ARen laufen nur in FAV-Geräten.
  • Vorzugsweise ist eine eingebettete AR imstande, zum Steuern einer Reihe steuerbarer Sta tionen, wie einer Reihe von VCRern ein und desselben Herstellers verwendet zu werden. Sollte dies der Fall sein, so erhält die Controllerstation vorzugsweise zusätzliche Information über die zur Zeit gesteuerten betreffenden Station (beispielsweise durch Auslesung der Modellnummer übers Internet) und stellt die allgemeine AR ein um ggf. für die spezifische gesteuerte Station zu arbeiten. Als solche können ARen APIs zur Steuerung von Familien von Geräten oder, ggf. nur von spezifischen Modellen schaffen. Im Allgemeinen werden die familienorientierten ARen einen breiteren Anwendungsbereich haben, aber die spezifischen ARen ermöglichen eine Steuerung von firmenspezifischen Features und Fähigkeiten.
  • Für eine gesteuerte Station muss eine assoziierte AR in dem System vorhanden sein und für diejenige gesteuerte Station laufen, die imstande ist, teilzunehmen. Für ein BAV-Gerät kann die AR unmittelbar aus dem Speicher in dem BAV-Gerät oder aus einem anderen Speicher, der mit dem BAV-Gerät assoziiert ist, (wie einer Festplatte in einer anderen Station in dem Netzwerk oder sogar über Zugriff über ein großflächiges Netzwerk) erhalten (herunter geladen) werden. In dem letzteren Fall wird eine Angabe der Speicherstelle für die gesteuerte Station gespeichert. Diese Angabe kann in der gesteuerten Station selber oder in einer anderen Station, wie in einer Controllerstation oder in einer zentralen Station gespeichert werden. Für LAV-Geräte wird die AR in der Controllerstation voreingestellt oder aus einer beliebigen Speicherstelle erhalten. Auf gleiche Weise ist auch für eine Controllerstation zur Verwendung durch Applikationen/Features in anderen Stationen eine laufende AR erforderlich. Normalerweise wird eine derartige AR in der Controllerstation selber laufen, obschon dies nicht unbedingt notwendig ist.
  • Eine Controllerstation kann auch eine oder mehrere Applikationen )Features) enthalten; dargestellt sind die Applikationen 270, 272 und 274. Die Applikation sendet Nachrichten zu einer oder mehreren betreffenden ARen. Die ARen können in derselben Station oder in einer anderen Station vorgesehen sein, wobei in diesem Fall die Nachricht über das Netzwerk transportiert wird.
  • Andere Software-Elemente können auch in der Controllerstation vorgesehen sein, wie:
    • – ein Kommunikations-Mediaverwalter 230 – ermöglicht es, dass andere Elemente Kommunikation durchführen, wie synchrone und asynchrone Kommunikation über das Netzwerk. Vorzugsweise wird IEEE 1394 als Netzwerk verwendet.
    • – ein Nachrichtensystem 232 – verantwortlich für das Weiterleiten von Nachrichten zwischen Elementen.
    • – ein Ereignisverwalter 234 – dient als Ereignislieferdienst. Ein Ereignis ist die Änderung in dem Zustand eines Objektes oder des Heimnetzwerkes.
    • – ein Stromverwalter 236 – verantwortlich für die Verwaltung von Echtzeitübertragung von AV und anderen Medien zwischen funktionellen Komponenten.
    • – ein Register 238 – dient als Verzeichnisdienst, ermöglicht es, dass jedes beliebige Objekt ein anderes Objekt in dem Heimnetzwerk ausfindig machen kann.
  • Stationen in dem System können erklärende Daten ("Self-Describing Device"-Daten oder SDD) über die Station und ihre Fähigkeiten enthalten. Wenn IEEE 1394 als Netzwerk angewandt wird, folgt diese Information vorzugsweise dem IEEE 1212 Adressierungsschema, das für den Konfigurations-ROM angewandt wird. Die SDD-Daten können einen AR-Code enthalten und Daten zum Konstruieren von Benutzerschnittstellenelementen.
  • Kommunikationsmedienverwalter
  • Der Kommunikationsmedienverwalter (CMM, 230) ist eine mediumabhängige Entität in dem Netzwerk. Er verbindet das unterliegende Kommunikationsmedium zum Liefern von Diensten zu anderen Komponenten oder Applikationsprogrammen in demselben Gerät, in dem auch der CMM vorhanden ist. Jedes physikalische Kommunikationsmedium hat einen eigenen CMM für die oben genannten Zwecke. Nachstehend wird der CMM für den IEEE 1394 Bus detailliert beschrieben.
  • Von dem CMM werden zwei Diensttypen geschaffen. Der eine Dienst ist, einen Transportmechanismus zu schaffen um Anträge zu Fern-Geräten zu senden und Angaben von denselben zu empfangen. Der andere Dienst ist die Busaktivitäten zu extrahieren und die Information dem System anzubieten. Der IEEE 1394 Bus ist ein dynamische konfigurierbares Netzwerk. Nach jeder Bus-Rückstellung kann es sein, dass ein Gerät eine völlig andere physikalische ID hat als vorher. Wenn ein Netzwerkelement oder eine Applikation mit einem Gerät in dem Netzwerk kommuniziert kann es sein, dass es die Kommunikation nach der Rückstellung des Busses fortsetzen möchte, obschon das Gerät eine andere physikalische ID hat. Um ein Gerät ungeachtet oft auftretender Busrückstellungen einzigartig zu identifizieren wird eine Allgemeine Einzigartige ID ("Global Unique ID" GUID) von dem CMM und anderen Entitäten angewandt. GUID ist eine 64 Bit Zahl, die aus 24 Bits der Knotenfirmen-ID und 40 Bits der Chip-ID zusammengesetzt ist. Während die physikalische ID eines Geräts konstant ändern kann, ist GUID permanent. Der CMM stellt die GUID-Information des Geräts für andere Kunden zur Verfügung.
  • Eines der modernen Features des 1394 Busses ist die Unterstützung für dynamische Gerätaktionen, wie im Betriebszustand koppeln und entkoppeln. Um dies bis auf den Benutzerpegel völlig zu unterstützen sollen Systemkomponenten oder Applikationen diese Änderungen der Umgebung kennen. Der CMM arbeitet mit dem Ereignisverwalter ("Event Manager") (EM) um derartige dynamische Busänderungen zu detektieren und anzukündigen. Da jede Änderung der Topologie in dem 1394 Bus dafür sorgt, dass eine Busrückstellung auftritt, kann der CMM Änderungen ausfindig machen und den Ereignisverwalter über die Änderungen zusammen mit der assoziierten Information informieren. Der Ereignisverwalter wird danach relatierte Ereignisse über alle interessierte Entitäten oder Applikationen verteilen.
  • Das Nachrichtensystem 232 versorgt die Software-Elemente mit Kommunikationsmöglichkeiten. Es ist unabhängig von den Netzwerk- und Transportschichten. Ein Nachrichtensystem ist in jedes FAV- und IAV-Netzwerk eingebettet. Das Nachrichtensystem eines Geräts steht unter der Leitung von der Zuordnung von Identifizierern für die Software-Elemente dieses Geräts. Diese Identifizierer werden erstens von den Software-Elementen zur Registrierung verwendet. Danach werden sie von den Software-Elementen zum gegenseitigen Identifizieren in dem Heimnetzwerk verwendet; wenn ein Software-Element (A) Nachrichten zu einem anderen Software-Element (B) senden möchte, soll es den Software-Elementidentifizierer von B verwenden, indem es das Nachrichtensystem API anruft.
  • Gerätesteuerung
  • In dem System nach der vorliegenden Erfindung soll es für jedes BAV-Gerät und LAV-Gerät, das in dem Netzwerk bekannt ist, eine AR geben. Die AR schafft eine Schnittstelle zu dem Gerät und präsentiert es als ein Software-Element in der Architektur. Innerhalb einer AR gibt es verschiedene FCM, welche die funktionellen Komponenten des Geräts darstellen und die auch als Software-Elemente in der Architektur präsentiert werden. Andere Applikationen können das Register abfragen um die Geräte und die funktionellen Komponenten ausfindig zu machen, die verfügbar sind und um einen Identifizierer des Software-Elementes zu erhalten, damit dieses Element mit dem Gerät über die AR und die FCM interaktiv sein können. ARen werden von einem FAV oder LAV, die sie installieren können behandelt. Installation einer AR-Codeeinheit führt zu der Installation aller assoziierten FCM. Der Code kann in einem Standard-Bytecode geschrieben sein, wobei er in diesem Fall in allen FAV-Geräten, oder in einem firmeneigenen Code installiert werden kann, wobei er in diesem Fall nur in einigen FAV oder LAV installiert werden kann, das den Code kennt und für diese Art von Code vorbereitet ist.
  • Funktionelles Komponentenmodul (FCM)
  • Ein FCM ist eine (Software) Abstraktion einer funktionellen Komponente, welche die Funktionalität dieser funktionellen Komponente zu der Software-Umgebung und zu den Applikationen liefert. Applikationen werden nicht unmittelbar mit einer funktionellen Komponente kommunizieren, sondern nur über das FCM, das FCM seinerseits kommuniziert nicht unmittelbar mit der funktionellen Komponente, sondern immer über die AR (dies ist wenigstens das Modell, das angewandt wird zum Darstellen der Beziehung; die FCM Implementierung kann direkt mit dem CMM kommunizieren). Ein FCM ist ein Software-Objekt in dem Sinne, dass es als ein Empfänger in dem Register registriert ist und es kann mit anderen Objekten über das Nachrichtensystem kommunizieren. Über das Nachrichtensystem bietet es das Befehlsprotokoll entsprechend den Vereinbarungen des Systems.
  • Für die jeweiligen Geräte-Typen spielen ARen eine verschiedene Rolle, wie nachstehend zusammengefasst:
    • – Ein FAV-Gerät beherbergt möglicherweise eine AR, die sich selbst und Null darstellt, oder mehrere ARen, die LAV-Geräte und/oder BAV-Geräte darstellen.
    • – Ein LAV-Gerät beherbergt möglicherweise eine AR, die sich selbst und Null darstellt, oder mehrere ARen, die LAV-Geräte und/oder BAV-Geräte (die in der LAV-Mode arbeiten) darstellen.
    • – Ein BAV-Gerät selber beherbergt überhaupt keine ARen, liefert aber eine AR-Code- Einheit (siehe unten) in einem standardisierten Code. Wenn an ein Netzwerk mit einem FAV-Gerät angehängt, kann jedes FAV-Gerät die AR hochladen und installieren um das BAV-Gerät andern Komponenten zur Verfügung zu stellen. Installation der AR-Code-Einheit führt zu der Installation der AR und aller FCM, die mit dem Gerät relatiert sind. Die Kommunikation zwischen den AR/FCM und dem BAV-Gerät erfolgt auf eine Standardweise über den CMM, aber die wirkliche Kommunikation zwischen dem AR/FCM und dem Gerät ist firmeneigen für den BAV-Hersteller. Wenn an ein System ohne FAV-Geräte aber mit einem IAV-Gerät, das weiß, wie dieses BAV behandelt werden soll, angehängt, kann ein IAV-Gerät eine AR-Code-Einheit selber liefern um das BAV-Gerät für andere Komponenten verfügbar zu machen. Danach soll das BAV-Gerät in der LAV-Mode arbeiten, wobei in diesem Fall die Situation wie für ein LAV-Gerät ist.
    • – Ein LAV-Gerät selber hat keine Ahnung von ARen. Wenn an das Hauptnetzwerk mit einem FAV oder LAV-Gerät, das weiß, wie dieses LAV-Gerät behandelt werden muss, angehängt, soll ein FAV-Gerät oder ein LAV-Gerät den AR-Code liefern um das LAV-Gerät für andere Stationen verfügbar zu machen. Wie dies erfolgt und wie die AR/FCM mit dem LAV-Gerät kommunizieren ist völlig firmeneigen für den Hersteller des FAV-Geräts oder des IAV-Geräts.
  • Nebst eines API zur Steuerung des Geräts (und seiner funktionellen Komponenten) kann eine AR auch eine gerätspezifische Applikation schaffen. Dies ist eine allgemeine Applikation, die von dem System so wie alle andere Applikationen behandelt werden. Durch diese Applikation kann ein Gerätehersteller dem Benutzer eine Möglichkeit bieten, alle speziellen Features des Geräts auf eine vom Hersteller entschiedene Art und Weise zu steuern, ohne die Notwendigkeit einer Standardisierung all dieser Features in dem System.
  • AR-Verwalter sind verantwortlich für die Installation neuer ARen (Code-Einheiten) für neue Geräte, die an das System angehängt werden, beispielsweise wenn neue Geräte an das Netzwerk angehängt werden. Ein Gerät kann aus mehr als nur einer funktionellen Komponente bestehen: so kann beispielsweise ein Gerät aus einem Tuner und einem VCR bestehen. Für BAV/LAV-Geräte erfolgt die Installation der AR-Code-Einheit vorzugsweise auf eine Je-Gerät-Basis, nicht für jede AR-Komponente separat, folglich für ei nen AR-Verwalter ist eine AR-Code-Einheit eine einzige Entität zum Installieren, Entfernen und Ersetzen von AR-Komponenten. Weiterhin entspricht eine einzige AR-Code-Einheit einem einzigen BAV/LAV-Gerät, d.h. sie enthält alle AR-Komponenten für dieses Gerät.
  • Die AR schafft einen Basisdienst für elementare Kommunikation mit dem BAV/LAV-Gerät. Vorzugsweise detektiert der AR-Verwalter die Anhängung eines neuen Geräts und erhält einen einzigartigen Identifizierer (GUID) dieses Geräts; danach kann er mit dem Gerät kommunizieren zum Erhalten von Basisinformation über das Gerät und zum Installieren der AR-Code-Einheit. Der AR-Verwalter steuert die Installation (und die spätere Entfernung) der AR-Code-Einhe. Die Installation führt dazu, dass die AR und FCM-Objekte zur Kommunikation mit dem Gerät über CMM und den vorgesehenen GUID verfügbar werden. Bei Installation machen ARen und FCM sich selber über das Register bekannt (so dass sie von anderen Applikationen über das Nachrichtensystem gefunden werden können).
  • Die Kommunikation zwischen den AR-Komponenten und dem CMM basiert auf dem GUID des BAV/LAV-Geräts. Der CMM schafft nur den GUID zur Kommunikation mit dem von allen AR-Komponenten zu verwendenden Gerät. In diesem Fall braucht der CMM überhaupt keine Kenntnisse der Struktur der Basiskomponenten innerhalb des BAV/LAV-Geräts zu haben. Dies vereinfacht die Kommunikation zwischen einem FAV/IAV- und einem BAV/LAV-Gerät, macht den Standardisierungsaufwand geringer und steigert die Möglichkeiten der Anwendung von firmeneigenen Protokollen. Die AR-Komponenten selber sind für die Anwendung des CMMs verantwortlich, d.h. zum Verschachteln der Kommunikation auf eine geeignete Art und Weise und der Verteilung von Nachrichten, die von dem BAV-Gerät erhalten wurden, über die betreffenden AR-Komponenten.
  • Der Inhalt der AR-Code-Einheit wird vorzugsweise standardisiert, so dass jeder AR-Verwalter AR-Code-Einheiten für beliebige BAV/LAV-Geräte behandeln können. Die AR-Code-Einheit kann eine Art von selbsextrahierendem Paket sein, beispielsweise in einem Standard-Bytecode; es versieht den AR-Verwalter mit Hanteln zur Installation und zur Entfernung. Der AR-Verwalter ruft nur die Installationshantel (wobei der GUID des Geräts für Kommunikation mit dem Gerät über den CMM geschaffen wird) für den die AR-Code-Einheit selber verantwortlich ist zum Installieren aller AR-Komponenten in demselben Gerät. Auf gleiche Weise versieht die Entfernungshantel den AR-Verwalter mit einer Hantel zum Entfernen aller AR-Komponenten innerhalb der AR-Code-Einheit. Dies bietet maximale Freiheit für den BAV-Hersteller in der Strukturierung der AR-Code-Einheiten.
  • AR-Verwalter
  • Das AR-Verwaltungssystem ist verantwortlich für die Installation und die Deinstallation von AR-Code-Einheiten zur Steuerung gesteuerter Stationen (BAV- und LAV-Geräte), die unmittelbar mit einem Netzwerk verbunden sind. AR-Verwaltung erfolgt kollektiv durch die AR-Verwalter in allen Controllerstationen (FAV- und IAV-Geräten). AR-Code-Einheiten für Controllerstationen werden von den Stationen selber auf eine firmeneigene Art und Weise verwaltet. Stationen, die nicht mit dem Netzwerk verbunden sind, sondern stattdessen ein anderes Kommunikationsmedium verwenden, wie ein firmeneigenes Netzwerk oder andere Protokolle höheren Pegels, die über dasselbe Medium arbeiten, werden vorzugsweise von den Controllerstationen auf eine firmeneigene Weise verwaltet. Jede gesteuerte Station soll durch eine AR-Code-Einheit, die in einer Controllerstation installiert ist, die als Gastgeber bezeichnet wird, erleichtert werden.
  • Eine AR-Code-Einheit kann von einem Profil begleitet werden, das einen Hinweis auf die Laufzeitgröße umfasst, erforderlich für die AR-Code-Einheit und die Komponenten.
  • Jeder AR-Verwalter bietet eine Anzahl Verfahren, die von Software-Elementen abgerufen werden können, und eine Anzahl allgemeiner Ereignisse, welche die Ergebnisse der AR-Code-Einheitinstallation und -deinstallation anzeigen. Die Meisten AR-Verwaltungsaktivitäten werden von einem Netzwerkrückstellereignis ausgelöst, das typischerweise erzeugt wird, wenn die Netzwerktopologie sich ändert oder ein Gerät (de)aktiviert wird. Ein derartiges Ereignis wird erzeugt, wenn beispielsweise ein Gerät hinzugefügt oder von dem Netzwerk entfernt wird, wenn das Netzwerk in zwei kleinere aufgeteilt wird, oder wenn zwei Netzwerke zu einem zusammengefügt werden.
  • Auf alternative Weise können andere Ereignisse die Verwaltungsaktivität auslösen, beispielsweise ein Benutzer, der eine Neuinstallation beantragt.
  • AR-Verwaltungsprotokoll
  • Vorzugsweise wird das AR-Verwaltungssystem aus einer verteilten Gruppe von AR-Verwaltern in den Controllerstationen zusammengestellt. AR-Verwalter sind auf Basis einer direkten Verbindung interaktiv zum Implementieren des gelieferten Dienstes, während die erforderlichen Dienste von örtlichen Systemelementen erforderlich sind. Dies sind CMM, Nachrichtensystem, Ereignisverwalter und AR-Code-Einheiten. Vorzugsweise kann jeder AR-Verwalter SDD-Daten unmittelbar aus Stationen auslesen, die mit dem Netzwerk verbunden sind. Das Protokoll unterstützt die Verwendung eines Speichers und Internet-Zugriffsmöglichkeiten. Nachstehend wird das verteilte AR-Verwaltungsprotokoll detailliert beschrieben. In diesem Protokoll wird in zwei Schritten ein Führer selektiert (ein "Anfangs"-Führer kann seine Verantwortlichkeit zu einem "End"-Führer übergeben). Der Endführer ordnet Controllerstationen AR-Code-Einheiten zu. Es sei bemerkt, dass statt einer verteilten Annäherung auch eine teilweisen oder völlig zentralisierte Annäherung für die AR-Verwaltung angewandt werden kann. So kann beispielsweise eine zentrale Station als Vorgabe eingestellt oder von einem Benutzer eingestellt werden um als Endführer wirksam zu sein, was die beiden Führerselektionsphasen redundant macht. Auf alternative Weise kann eine zentrale Station als Anfangsführer bezeichnet werden, wobei nur das nachstehend beschriebene Protokoll für die schlussendliche Führerselektion angewandt wird. Aber insbesondere in Kollektor-Elektrode-Systemen mit Produkten von mehreren Lieferanten und bei einer schnellen Einführung digitaler Techniken ist es schwer eine geeignete Zuordnung einer "zentralen" Führerstation (Fernseher gegenüber PC gegenüber Settopbox) oder eines Herstellers eines derartigen Geräts durchzuführen.
  • Weiterhin kann ein System zu bestimmten Zeitpunkten mehr als nur eine "zentrale" Station enthalten. Um derartige Situationen zu vermeiden wird die verteilte Annäherung bevorzugt. Dennoch dürfte es einleuchten, dass ein Fachmann eine zentralisierte Annäherung auf Basis der Information von der verteilten Annäherung implementieren kann.
  • Nach Auslösung zur Installation startet jeder AR-Verwalter eine Prozedur zum Auswählen eines Anfangsführers. Es wird ein einziger AR-Verwalter zum Führer gewählt. Alle AR-Verwalter sind Folger und dem Führer untergeordnet (folglich spielt der Führer-AR-Verwalter auch die Rolle eines Folgers in dem Protokoll). Führer und Folger führen daraufhin autonom eine AR-Code-Einheitinstallation durch. Dieser Prozess wird normalerweise enden, wenn AR-Code-Einheiten für alle gesteuerten Stationen in dem Netzwerk installiert worden sind. Der Fehler wird die meisten der Protokollaktivitäten steuern.
  • In Bezug auf die Führerwahl gibt es drei IAV-Varianten: eine, die den Voll-AR-Verwalter unterstützt; eine, die in einer "Dummymode" ist, wobei nur der Führerwahlprozess unterstützt wird; und eine, die überhaupt keine AR-Verwaltungsaktivität unterstützt. Die Dummyvariante beteiligt sich nicht an den anderen AR-Verwaltungsaktivitäten, ausgenommen an der Führerwahl. AR-Verwalter können URL-Zugriffsmöglichkeiten unterstützen und können diese während der Führerwahl ankündigen. Es wird bevorzugt, dass FAV-Geräte imstande sind, diese Ankündigung zu machen. IAV-Geräte können, brauchen aber nicht, eine derartige Fähigkeit ankündigen. Jedes Gerät, das eine derartige Fähigkeit ankündigt, kann zum Führer gewählt werden.
  • Führerwahl
  • Nachdem ein Gastgebergerät eingeschaltet worden ist, oder nachdem ein Netzwerkrückstellereignis (oder eine andere Auslösung, die eine Installation/Entfernung verursacht) empfangen worden ist, wird jeder AR-Verwalter diese Aktivität eingeben oder neu eingeben. (Für das 1394 Netzwerk verursacht eine Rückstellung oder Ein/Ausschaltung eines Geräts Netzwerkrückstellereignisse in allen anderen Gastgebergeräten).
  • Der AR-Verwalter findet die Identifizierer, wie GUID, aller Stationen in dem System wieder, beispielsweise aus den SDD-Daten der Stationen. Außerdem können andere relevante Daten aus den SDD-Datenfeldern aller Geräte (GUID, Modell_Lieferant_ID, Modell_ID, Geräte_Typ) gefinden werden. Geräte ohne den Identifizierer werden als LAV gesteuerte Stationen klassifiziert.
  • Aus allen Gastgeber-Identifizierern wird auf Basis eines vorbestimmten Kriteriums einer selektiert und der AR-Verwalter in dem Gerät mit diesem Identifizierer wird zum Anfangsführer erklärt. So kann beispielsweise der höchste oder der niedrigste Identifizierer gewählt werden. Vorzugsweise wird der Identifizierer mit der höchsten umgekehrten Bitordnung berechnet. Die Umkehrung vermeidet, dass in Systemen, in denen der Identifizierer an einer Stelle hoher Ordnung einen Lieferanten-Identifizierer hat, Geräte von be stimmten Lieferanten im Allgemeinen in den meisten Netzwerkkonfigurationen als Anfangsführer wirksam sein werden. Es sei bemerkt, dass alle Geräte dieselbe Identifiziererliste lesen und denselben AR-Verwalter zum Anfangsführer erklären. Zu diesem Zeitpunkt weiß jeder Verwalter ob er ein Anfangsführer oder ein Anfangsfolger ist. Jedes Gerät weiß, welche anderen AR-Verwalter es gibt.
  • Der Anfangsführer benimmt sich wie folgt zum Selektieren und Ankündigen des Endführers: er erhält die Fähigkeit aller identifizierter Anfangsfolger (beispielsweise indem er auf eine Nachricht wartet, die ihn über die Fähigkeit informiert oder dadurch, dass er dies beantragt). Vorzugsweise gibt die Fähigkeit an, ob das Gerät eine URL-Zugriffsmöglichkeit hat oder nicht. Im Allgemeinen stellt die URL-Fähigkeit den Pegel der Neuprogrammierbarkeit dar, die von der Station geboten wird, d.h. ist die Station imstande, eine AR aus einer Speichereinheit ausfindig zu machen, außerhalb der Controllerstation oder aus einem Speichermittel innerhalb der Controllerstation, dessen Inhalt aktualisiert werden kann. Es kann ein Unterschied gemacht werden zwischen den jeweiligen Formen von Ausfindig machen (beispielsweise übers Internet, über ein örtliches Netzwerk, von einer Festplatte, aus einem neu programmierbaren elektronischen Speicher (beispielsweise einem nicht flüchtigen RAM, oder einem EEPROM), oder von einem nicht neu programmierbaren aber austauschbaren Speichermittel, wobei die Speicherfunktion relativ einfach ersetzt werden kann (beispielsweise eine neue Programm-CD in einen CD-ROM-Spieler eingeben, oder eine ROM-Speicherkarte in einen Kartenleser stecken). Die Fähigkeit kann auch Leistungsdaten schaffen, wie eine CPU-Geschwindigkeit und den Betrag an Hauptspeicherraum verfügbar zum Durchführen von ARen. Ggf. kann die Fähigkeit angeben, ob die Station ein Dummy-IAV-Gerät ist oder nicht.
  • In Anbetracht der URL-Zugriffsfähigkeiten und welche Geräte Dummy-IAV-Geräte sind, kann die Selektion des Endführers wie folgt sein:
    • – wenn es FAV-Geräte mit einer ausgesprochenen URL-Zugriffsfähigkeit gibt, wird eines derselben selektiert.
    • – Sonst, wenn es IAV-Geräte gibt mit einer ausgesprochenen URL-Zugriffsfähigkeit, wird eines derselben gewählt.
    • – Sonst, wenn es FAV-Geräte gibt, wird eines derselben gewählt.
    • – Sonst, wenn es IAV-Geräte nicht in der Dummy-Mode gibt, wird eines derselben gewählt.
    • – Sonst wird irgendein Dummy-IAV-Gerät gewählt.
  • Es dürfte einleuchten, dass wenn gleichwertige Kandidaten gefunden werden, die zusätzlichen Fähigkeitsindikatoren, wie die Leistung, zur Wahl eines am meisten geeigneten Kandidaten beitragen kann.
  • Alle Anfangsfolger werden über die Endselektion informiert, beispielsweise dadurch, dass ihnen eine Nachricht "DMleaderDeclaration" (<selected final leader>, <identified dummy devices> gesendet wird. Vorzugsweise ist der Endführer der letzte, dem diese Nachricht zugesendet wird. Und zwar zu Synchronisationszwecken.
  • Ein Anfangsfolger verhält sich wie folgt um zu der Wahl des Endführers beizutragen. Der Anfangsfolger stellt seine Fähigkeit dem Anfangsführer zur Verfügung, beispielsweise dadurch, dass dem Anfangsführer eine Nachricht gesendet wird: "DMCapabilityDeclaration(<my capability>". Vorzugsweise wird die Nachricht alle 3 Sekunden wiederholt, bis eine Nachricht "DMLeaderDeclaration" zu Synchronisationszwecken empfangen wird. Die Pausezeit ist nicht kritisch und kann nach einer Pause gesteigert werden. Wenn de Anfangsführer ihn informiert (beispielsweise durch eine Nachricht "DMLeaderDeclaration(<selected final leader>,< identified dummy devices>), weiß er, welcher AR-Verwalter der Endführer ist und welche Dummy-IAV-Geräte sind.
  • Am Ende der Prozedur wissen die anfangs führenden und nachfolgenden AR-Verwalter welcher der Endführer ist und welche anderen die Endfolger sind. Wenn es nur Dummy-Modegeräte in dem Netzwerk gibt, endet der Protokollvorgang an dieser Stelle. Sonst startet der autonome Vorgang.
  • Wenn der Endführer keine URL-Zugriffsfähigkeit hat, kann er unmittelbar entscheiden, dass jeder Antrag in Bezug auf eines URLs in dem ganzen Netzwerk nicht geschafft werden kann. Ein Führer mit URL-Zugriffsfähigkeiten ruft alle URL-bestimmte AR-Code-Einheitprofile ab. Diese Profile werden allen Controllerstationen zugesendet, um es zu ermöglichen, dass sie bestimmen, ob sie als Gastgeber für die AR-Code-Einheit wirksam sein können, die dem Profil entspricht. Wenn von einem AR-Verwalter beantragt, wird eine AR-Code-Einheit dem Antragsteller zugesendet.
  • Die Liste <identified dummy devices> wird von dem Endführer verwendet um zu vermeiden, dass Dummy-Geräten Nachrichten zugesendet werden. Dummy-Geräte unterstüen nur den Führerwahlteil des Protokolls. Dem AR-Verwalter in einem Dummy-IAV-Gerät braucht überhaupt keine Nachrichten zugesandt zu werden.
  • Autonomer Betrieb der führenden Controllerstation
  • Nachdem die Führerwahl beendet ist, wird der Endführer die Initiative ergreifen, AR-Code-Installationen zu behandeln. Der Führer steuert vorzugsweise den Betrieb wie folgt, für jede in dem Netzwerk gefundene gesteuerte Station. Jedem Endfolger wird eine Nachricht "DMInquiry" gesendet, wobei die Installation einer bestimmten AR-Code-Einheit beantragt wird (die Spezifikation kann auf dem GUID der gesteuerten Station beruhen). Der erste Antrag enthält vorzugsweise kein URL-gefundenes Profil, um einen unnötigen URL-Zugriff zu vermeiden. Aus allen empfangenen Beantragungsdateien lernt der Führer vorzugsweise Folgendes:
    • – Die Vorzüge für die gesteuerte Station, falls vorhanden (festgestellt entsprechend den unten beschriebenen Regeln).
    • – Für jeden Gastgeber, ob die gesteuerte Station von demselben Lieferanten ist, und ob sie eine firmeneigene AR-Code-Einheit für die gesteuerte Station installieren kann.
    • – Für jeden Gastgeber, ob eine AR-Code-Einheit für die gesteuerte Station installiert ist.
    • – Für jeden Gastgeber, die Anzahl installierter AR-Cde-Einheiten.
  • Auf Basis dieser Information entscheidet der Führer für jede gesteuerte Station an welcher Controllerstation die AR der gesteuerten Station durchgeführt werden soll. Er ordnet die AR der gesteuerten Station zu, und zwar unter Verwendung der "DMCommand" Nachricht.
  • Wenn keine installierte AR-Code-Einheit für eine gesteuerte Station gefunden wurde, sendet der Führer eine andere "DMInquiry" und eine zusätzliche "DMCommand" Nachricht zu allen oder einigen Folgern und installiert eine AR-Code-Einheit. Das Ergebnis dieses Installationsversuches kann von dem installierenden AR-Verwalter gemeldet werden indem ein "ARInstallIndication" Ereignis gesendet wird.
  • Wenn ein Endfolger eine Nachricht "DMInquiry" oder "DMCommand" von dem Endführer empfängt, soll er diese behandeln und das erreichte Ergebnis dem Endführer zurückschicken. Vorzugsweise informiert eine AR-Code-Einheit den AR-Verwalter über die Deinstallation.
  • AR-Code-Einheit-Installation und -Deinstallantion
  • Die Entscheidungen des AR-Verwaltungssystems als Ergebnis einer Installationsauslösung (beispielsweise eines Netzwerkrückstellereignisses) sind oben beschrieben, was zu einer vorgegebenen Installationsprozedur führt. Diese Entscheidungen können durch Vorzüge überstimmt werden. Die Vorzüge schaffen Information in Bezug auf die Wünsche einer gesteuerten Station um von der vorgegebenen Installationsprozedur abzuweichen. Die Vorzüge werden in dem System gespeichert, im Zusammenhang mit der gesteuerten Station. Die Vorzüge können in der gesteuerten Station selber gespeichert werden (beispielsweise als Teil der SDD-Daten). Da Controllerstationen im Allgemeinen stärker sind, werden die Vorzüge örtlich in AR-Verwaltern in einer oder in mehreren Stationen gespeichert. Auch eine zentrale Station kann zur Speicherung der Vorzüge verwendet werden.
  • Für jede gesteuerte Station läuft höchstens eine installierte AR-Code-Einheit aktiv in dem ganzen Netzwerk. Wegen Probleme durch Mangel an Mitteln kann es passieren, dass für einige gesteuerte Stationen in dem Netzwerk keine AR-Code-Einheit installiert ist. Es kann auch passieren, dass eine AR-Code-Einheit sich selber aus irgendeinem Grund deinstalliert. Vorzugsweise wird ein anderer Gastgeber für eine AR-Code-Einheit einer gesteuerten Station selektiert, wenn der vorhergehende Gastgeber aus dem Netzwerk entfernt wird. Eine AR-Code-Einheit wird deinstalliert, wenn die entsprechende gesteuerte Station in dem Netzwerk nicht länger verfügbar ist.
  • Der AR-Verwalter in dem selektierten Führer steuert vorzugsweise die Installation einer AR-Code-Einheit nach dem folgenden Schema. Wenn es einen Gastgeber desselben Lieferanten gibt, wie der der gesteuerten Station und wenn der Gastgeber imstande ist, die gesteuerte Station zu steuern, dann wird ein derartiger Gastgeber selektiert zum Installieren einer AR-Code-Einheit auf eine geeignete Art und Weise für die gesteuerte Station. Sonst wird, wenn es für die gesteuerte Station eine verfügbare AR-Code-Einheit gibt, ein FAV-Gastgeber selektiert zum Laden und Installieren der AR-Code-Einheit. Sollte diese nicht vorhanden sein, wird jeder beliebige Gastgeber, der eine (eingebettete) AR-Code-Einheit auf geeignete Art und Weise für die gesteuerte Station installieren kann, selektiert.
  • Ein BAV-Gerät kann eine AR-Code-Einheit und/oder eine URL für eine derartige Einheit intern speichern, beispielsweise in den SDD-Daten. Wenn eine URL für eine AR-Code-Einheit in einem BAV-Gerät spezifiziert ist, wird sie von der spezifizierten Stelle aus geladen und anstelle der AR-Code-Einheit in dem BAV-Gerät selber, in einem FAV-Gastgeber installiert. Sollte das Laden misslingen, so wird stattdessen die AR-Code-Einheit, die in dem BAV-Gerät vorhanden ist, geladen und installiert.
  • Wenn einige Controllerstationen im Grunde auf gleiche Weise geeignet sind zum Durchführen einer bestimmten AR, wird vorzugsweise eine dieser Controllerstationen mit der geringsten Anzahl bereits installierter AR-Code-Einheiten selektiert (Lastenverteilung über das System).
  • Eine sog. URL ("Universal Resource Locator") kann verwendet werden um die Stelle einer AR anzugeben. Der allgemeine Syntax einer URL ist:
    "scheme:/host.domain: port/directory/filename", wobei einige Teile beliebig sind. Das Schema kann beispielsweise "http" oder "file" sein. Die URL bezeichnet eine AR-Code-Einheit und/oder das Profil in dem Internet oder in einem (permanenten) Speichermedium.
  • Vorzüge
  • Die Aktivitäten des AR-Verwaltungssystems werden von Vorzügen geführt, die von Applikationen oder Benutzern eingestellt werden können. Vorzüge spezifizieren typischerweise die Variationen von den oben beschriebenen vorgegebenen Installationsaktivitäten. Es sind zwei Verfahren verfügbar zum Einstellen und Suchen von Vorzügen bei AR-Verwaltern in dem System. Vorzüge können beispielsweise durch den Benutzer modifiziert werden.
  • Die nachfolgenden drei Vorzüge für AR-Verwaltung können mit Vorteil angewandt werden, die je mit einer einzigen gesteuerten Station assoziiert werden können (beispielsweise durch den GUID) oder mit einem gesteuerten Stationsmodell (durch den "Vendor Model Identifier" oder VMID). Für eine LAV-gesteuerte Station kann es sein, dass die erste Variante möglich ist, da es sein kann, dass ein VMIND für LAV-Geräte nicht verfügbar ist. Ein GUID-basierter Vorzug für eine gesteuerte Station hebt einen VMIND-basierten Vorzug für das gesteuerte Stationsmodell auf, wenn überhaupt, ohne dass dadurch eine Konfliktsituation entsteht.
    Figure 00260001
    • – ARPreferVendorHost – Eine Bezeichnung, ob ein Gastgeber desselben Lieferanten wie der gesteuerten Station zum Installieren einer ARCode-Einheit bevorzugt wird. Wenn für eine beliebige gesteuerte Station oder für ein gesteuertes Stationsmodell der Wert auf wahr für jeden AR-Verwalter gesetzt wird, soll das AR-Verwaltungssystem einen Gastgeber desselben Lieferanten bevorzugen.
    • – ARPreferredHost – Eine Bezeichnung eines bestimmten Gastgebers, der zum Installieren einer A-Code-Einheit für eine bestimmte gesteuerte Station oder für ein gesteuertes Stationsmodell bevorzugt wird. Der Grund dieser Einstellung können beispielsweise Leistungs- oder Zuverlässigkeitserwägungen sein.
    • – ARPreferredURL – Eine URL (oder ähnliches) zum Bezeichnen der Stelle einer AR-Code-Einheit und des Profils für eine gesteuerte Station oder ein gesteuertes Stationsmodell. Für eine BAV-gesteuerte Station wird dieser Vorzug angewandt um zu spezifizieren, dass eine AR-Code-Einheit statt einer AR-Code-Einheit bezeichnet durch eine URL in dem BAV-Gerät installiert wird, oder die AR-Code-Einheit, die in dem BAV-Gerät enthalten ist. Für eine LAV-gesteuerte Station ist es üblich eine AR-Code-Einheit zu spezifizieren, die in einem FAV-Gastgeber installiert werden kann.
  • Wenn Vorzüge für eine gesteuerte Station in mehr als nur einer gesteuerten Station gespeichert sind, kann es passieren, dass strittige Werte eingestellt werden. In diesem Fall kann einer der Werte beliebig selektiert werden. Vorzugsweise, für ARPreferVendorHost, wird der Wert wahr im Falle einer Konfliktsituation selektiert. Auf vorteilhafte Weise werden Konfliktsituationen berichtet, wodurch der Benutzer oder das System die Möglichkeit hat, die Konfliktsituation durch Einstellung des Vorzugs zu lösen.
  • Es dürfte einleuchten, dass normalerweise Vorzüge Netzwerkrückstellungsereignisse und das Abrufen von (De)Installationsanträgen beeinflussen, nicht zu dem Zeit punkt, wo sie eingestellt werden. Auf vorteilhafte Weise gibt es eine Priorität unter den Vorzügen um Zweideutigkeit zu lösen. Die nachfolgende Liste gibt die bevorzugte Rangordnung, in der AR-Code-Einheitsinstallationsversuche von dem AR-Verwalter der führenden Station für eine bestimmte gesteuerte Station durchgeführt werden:
    • 1. Wenn <ARPreferVendorHost> wahr ist, versuche einen Gastgeber von demselben Lieferanten wie die gesteuerte Station (firmeneigene AR-Code-Einheit). Wenn zutreffend: wird <ARPreferredHost> auch berücksichtigt, unter der Bedingung, dass es in dem Satz der Lieferantengastgeber.
    • 2. Wenn <ARPreferredHost> spezifiziert, versuche diesen Gastgeber (eingebettete oder hochladbare AR-Code-Einheit). Wenn zutreffend: wird <ARPreferredURL> auch berücksichtigt, unter der Bedingung, dass <ARPreferredHost> ein FAV-Gerät ist.
    • 3. Wenn <ARPreferredURL> spezifiziert ist, versuche die ARL-bezeichnete hochladbare AR-Code-Einheit in einem FAV-Gastgeber.
    • 4. Versuche eine URL-bezeichnete hochladbare AR-Code-Einheit in dem BAV-Gerät in jedem beliebigen FAV-Gastgeber (gilt nur für BAV-gesteuerte Stationen).
    • 5. Versuche eine BAV-enthaltene hochladbare AR-Code-Einheit in jedem beliebigen FAV-Gastgeber (gilt nur für BAV-gesteuerte Stationen).
    • 6. Versuche eine firmeneigene AR-Code-Einheit in jedem beliebigen Gastgeber.

Claims (7)

  1. Kommunikationssystem mit einer Anzahl Controllerstationen und wenigstens einer gesteuerten Station, wobei die Stationen über ein Kommunikationsnetzwerk miteinander verbunden sind, wobei die Funktionalität jedes gesteuerten Station mit einer betreffenden abstrakten Darstellung, durch AR bezeichnet, assoziiert ist, die eine Schnittstelle für Softwareelemente in dem System schafft zum Steuern der Funktionalität der gesteuerten Station mit Hilfe von Nachrichten, die über das Kommunikationsnetzwerk mit der AR ausgetauscht werden, dadurch gekennzeichnet, dass das Kommunikationssystem Vorlaufselektionsmittel aufweist zum Selektieren einer der Controllerstationen, und dass jede Controllerstation Folgendes umfasst: – AR Verteilungsmittel um zu ermitteln, welche Controllerstation die betreffende AR jeder der wenigstens einen gesteuerten Station durchführen soll, wobei die AR Verteilungsmittel wirksam sind, wenn sie sich in der Vorlauf-Controllerstation befinden, jede AR höchsten einer der Controllerstationen zuzuordnen, und – Steuermittel zum Durchführen wenigstens einer der örtlichen Controllerstation zugeordneten AR.
  2. Kommunikationssystem nach Anspruch 1, wobei das Kommunikationssystem Mittel aufweist zur Speicherung eines assoziierten einzigartigen Identifizierers für jede betreffende Controllerstation, wobei jede Controllerstation betreffende Vorlaufselektionsmittel aufweist; wobei jedes Vorlaufselektionsmittel wirksam ist zum Erhalten der einzigartigen Identifizierer aller Controllerstationen und zum Ermitteln, ob die örtliche Controllerstation auf Basis der Identifizierer die Vorlaufcontrollerstation ist oder nicht.
  3. Kommunikationssystem nach Anspruch 2, wobei der einzigartige Identifizierer wenigstens einen geringeren Teil mit am wenigsten signifikanten Bits des Identifizierers und einen größeren Teil enthält, wobei der größere Teil eine Verkauf/Herstellungs identifikation aufweist, wobei die Vorlaufselektionsmittel wirksam sind zum Durchführen der Ermittlung durch einen Vergleich eines Wertes, der von dem Identifizierer hergeleitet ist, der mit der eigenen Controllerstation assoziiert ist, mit Werten, die von Identifizierern hergeleitet sind, die mit anderen Controllerstationen assoziiert sind, wobei jeder der Werte im Wesentlichen durch Bitumkehrung des entsprechenden Identifizierers gebildet wird.
  4. Kommunikationssystem nach Anspruch 1, wobei das Kommunikationssystem Mittel aufweist zum Speichern eines assoziierten Fähigkeitsindikators für jede betreffende Controllerstation, wobei der Fähigkeitsindikator eine Eignung der assoziierten Controllerstation angibt um als führende Controllerstation wirksam zu sein, wobei die Vorlaufselektionsmittel für die nachfolgenden Vorgänge wirksam sind, wenn sie sich in der führenden Controllerstation befinden: – das Erhalten der Fähigkeitsindikatoren, die mit jeder den Controllerstationen assoziiert sind, – das Ermitteln, welche der Controllerstationen die fähigste ist, und – das Neuzuordnen der Rolle der führenden Controllerstation zu einer fähigsten Station.
  5. Kommunikationssystem nach Anspruch 4, wobei der Fähigkeitsindikator angibt, ob die assoziierte Controllerstation imstande ist, eine AR aus einem Speichermittel wiederzugewinnen, das außerhalb der Controllerstation liegt, oder aus einem Speichermittel innerhalb der Controllerstation, dessen Inhalt aktualisiert werden kann, wobei das Vorlaufselektionsmittel eine Controllerstation mit einer derartigen Wiedergewinnungsfähigkeit als fähiger beurteilt als eine Controllerstation ohne eine derartige Wiedergewinnungsfähigkeit.
  6. Controllerstation zur Verwendung in einem Kommunikationssystem mit einer Anzahl Controllerstationen und wenigstens einer gesteuerten Station, wobei die Stationen über ein Kommunikationsnetzwerk miteinander verbunden sind, wobei die Funktionalität jeder gesteuerten Station mit einer betreffenden, als AR bezeichneten, abstrakten Darstellung assoziiert ist, die eine Schnittstelle für Softwareelemente in dem System zur Steuerung der Funktionalität der gesteuerten Station mit Hilfe von Nachrichten schafft, die über das Kommunikationsnetzwerk mit der AR ausgetauscht werden, wobei das Kommunikati onssystem Vorlaufselektionsmittel aufweist um zu ermitteln, ob die Controllerstation eine führende Controllerstation ist, wobei die Controllerstation gekennzeichnet ist durch: – AR Verteilungsmittel um zu ermitteln, welche Controllerstation die betreffende AR jeder der wenigstens einen gesteuerten Stationen durchführen soll, wobei die AR Verteilungsmittel wirksam sind um, wenn die Controllerstation als die führende Controllerstation selektiert worden ist, jede AR wenigstens einer der Controllerstationen in dem System zuzuordnen, und – Steuermittel zum Durchführen wenigstens einer AR, die der Controllerstation zugeordnet ist.
  7. Controllerstation nach Anspruch 6, wobei die Controllerstation die Vorlaufselektionsmittel umfasst, wobei die Vorlaufselektionsmittel wirksam sind zum Erhalten einzigartiger Identifizierer aller Controllerstationen in dem System und um auf Basis der Identifizierer, zu ermitteln, ob die Controllerstation die führende Controllerstation ist oder nicht.
DE69933637T 1998-04-22 1999-04-22 Funktionalitätsverwaltung für ein system der unterhaltungselektronik Expired - Lifetime DE69933637T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP98201293 1998-04-22
EP98201293 1998-04-22
EP98204053 1998-12-01
EP98204053 1998-12-01
PCT/IB1999/000720 WO1999055071A2 (en) 1998-04-22 1999-04-22 Management of functionality in a consumer electronics system

Publications (2)

Publication Number Publication Date
DE69933637D1 DE69933637D1 (de) 2006-11-30
DE69933637T2 true DE69933637T2 (de) 2007-08-23

Family

ID=26150255

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69933637T Expired - Lifetime DE69933637T2 (de) 1998-04-22 1999-04-22 Funktionalitätsverwaltung für ein system der unterhaltungselektronik

Country Status (5)

Country Link
US (1) US6600958B1 (de)
EP (1) EP1004198B1 (de)
JP (1) JP4245670B2 (de)
DE (1) DE69933637T2 (de)
WO (1) WO1999055071A2 (de)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6556875B1 (en) * 1998-06-30 2003-04-29 Seiko Epson Corporation Device control system
US6823519B1 (en) * 1999-06-24 2004-11-23 Microsoft Corporation Control object and user interface for controlling networked devices
US6639918B1 (en) * 2000-01-18 2003-10-28 Apple Computer, Inc. Method and apparatus for border node behavior on a full-duplex bus
JP2001237862A (ja) * 2000-02-21 2001-08-31 Sony Corp 情報処理装置および方法、並びに記録媒体
WO2001063413A2 (en) * 2000-02-25 2001-08-30 Koninklijke Philips Electronics N.V. Communication system and method
TW496040B (en) * 2000-04-04 2002-07-21 Koninkl Philips Electronics Nv Communication system and device
EP1239644A1 (de) * 2001-03-08 2002-09-11 THOMSON multimedia Verfahren zur Verwaltung isochroner Datenübertragungen in einer HAVI Umgebung
EP1241829A1 (de) * 2001-03-14 2002-09-18 Sony International (Europe) GmbH Verteilte Software-Anwendungen in einem HAVi- Heimnetzwerk
US7904176B2 (en) * 2006-09-07 2011-03-08 Bio Control Medical (B.C.M.) Ltd. Techniques for reducing pain associated with nerve stimulation
KR100406857B1 (ko) * 2002-01-09 2003-11-21 엘지전자 주식회사 홈네트워크에서의 구성 매니저 결정방법
WO2003067457A1 (en) * 2002-02-07 2003-08-14 Abb Ab An adaptive control device
US7885711B2 (en) * 2003-06-13 2011-02-08 Bio Control Medical (B.C.M.) Ltd. Vagal stimulation for anti-embolic therapy
US7266726B1 (en) 2003-11-24 2007-09-04 Time Warner Cable Inc. Methods and apparatus for event logging in an information network
US8302111B2 (en) 2003-11-24 2012-10-30 Time Warner Cable Inc. Methods and apparatus for hardware registration in a network device
US9213538B1 (en) 2004-02-06 2015-12-15 Time Warner Cable Enterprises Llc Methods and apparatus for display element management in an information network
US8078298B2 (en) * 2004-03-26 2011-12-13 Harman International Industries, Incorporated System for node structure discovery in an audio-related system
AU2007222400B2 (en) * 2006-03-06 2010-01-21 Lg Electronics Inc. Data transfer controlling method, content transfer controlling method, content processing information acquisition method and content transfer system
US20090133129A1 (en) * 2006-03-06 2009-05-21 Lg Electronics Inc. Data transferring method
US8429300B2 (en) * 2006-03-06 2013-04-23 Lg Electronics Inc. Data transferring method
KR20080022476A (ko) * 2006-09-06 2008-03-11 엘지전자 주식회사 논컴플라이언트 컨텐츠 처리 방법 및 디알엠 상호 호환시스템
EP2044549B1 (de) * 2007-01-05 2014-03-12 LG Electronics Inc. Verfahren zur ressourcenübertragung und verfahren zur informationsbereitstellung
WO2008100120A1 (en) * 2007-02-16 2008-08-21 Lg Electronics Inc. Method for managing domain using multi domain manager and domain system
WO2011052807A1 (ko) * 2009-10-26 2011-05-05 엘지전자 주식회사 물리적으로 분리된 다수의 독립 공간 중 하나의 독립 공간내 위치한 dtv(digital television)의 ap(access point) card와 접속 가능한 모바일 디바이스의 제어 방법 및 상기 모바일 디바이스
US8374180B2 (en) * 2009-10-26 2013-02-12 Lg Electronics Inc. Digital broadcasting system and method of processing data in digital broadcasting system
EP2339779B1 (de) * 2009-10-26 2016-02-17 LG Electronics Inc. Steuerverfahren für ein innerhalb eines unabhängigen raums zwischen mehreren physisch getrennten unabhängigen räumen positioniertes dtv (digital-fernsehgerät) und entsprechendes dtv
US8374127B2 (en) * 2009-10-26 2013-02-12 Lg Electronics Inc. Digital broadcasting system and method of processing data in digital broadcasting system
WO2011052808A1 (ko) * 2009-10-26 2011-05-05 엘지전자 주식회사 물리적으로 분리된 다수의 독립 공간 중 하나의 독립 공간내 위치한 dtv(digital television)의 제어 방법 및 상기 dtv를 제어하는 관리 서버의 제어 방법
US8539524B2 (en) * 2009-10-26 2013-09-17 Lg Electronics Inc. Digital broadcasting system and method of processing data in digital broadcasting system
US11716558B2 (en) 2018-04-16 2023-08-01 Charter Communications Operating, Llc Apparatus and methods for integrated high-capacity data and wireless network services
US11129213B2 (en) 2018-10-12 2021-09-21 Charter Communications Operating, Llc Apparatus and methods for cell identification in wireless networks
US11129171B2 (en) 2019-02-27 2021-09-21 Charter Communications Operating, Llc Methods and apparatus for wireless signal maximization and management in a quasi-licensed wireless system
US11026205B2 (en) 2019-10-23 2021-06-01 Charter Communications Operating, Llc Methods and apparatus for device registration in a quasi-licensed wireless system

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU5929190A (en) * 1989-06-02 1991-01-07 Aisi Research Corporation Appliance interface for exchanging data
US5650775A (en) * 1989-07-06 1997-07-22 U.S. Philips Corporation Control system for controlling consumer apparatus
EP0406486B1 (de) * 1989-07-06 1996-10-30 Koninklijke Philips Electronics N.V. Steuerungssystem zur Steuerung von Konsumgeräten, insbesondere von Audio- und/oder Videogeräten, und Konsumgerät für Anwendung in solchem Steuerungssystem
JPH06205313A (ja) * 1992-12-28 1994-07-22 Sony Corp Avシステム
KR940016216A (ko) * 1992-12-28 1994-07-22 오오가 노리오 오디오/비디오시스템 및 접속설정방법
DE19503209C1 (de) * 1995-02-02 1996-10-02 Becker Gmbh Verfahren zur Initialisierung eines Netzwerkes mit mehreren masterfähigen also taktgebefähigen Netzteilnehmern
KR100290626B1 (ko) * 1996-02-02 2001-06-01 크리트먼 어윈 엠 복사 관리 방법
US5909368A (en) * 1996-04-12 1999-06-01 Fisher-Rosemount Systems, Inc. Process control system using a process control strategy distributed among multiple control elements
US5959536A (en) * 1996-10-15 1999-09-28 Philips Electronics North America Corporation Task-driven distributed multimedia consumer system
JP3870983B2 (ja) * 1997-02-17 2007-01-24 ソニー株式会社 電子機器制御装置および方法、並びに電子機器
US6282205B1 (en) * 1997-09-02 2001-08-28 Simon Lu Digital audio-video network system
US6052750A (en) * 1998-01-06 2000-04-18 Sony Corporation Of Japan Home audio/video network for generating default control parameters for devices coupled to the network, and replacing updated control parameters therewith
US6085236A (en) * 1998-01-06 2000-07-04 Sony Corporation Of Japan Home audio video network with device control modules for incorporating legacy devices
US6032202A (en) * 1998-01-06 2000-02-29 Sony Corporation Of Japan Home audio/video network with two level device control
JP4248028B2 (ja) * 1998-04-22 2009-04-02 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 消費者用電子システムにおける機能の管理
US6199136B1 (en) * 1998-09-02 2001-03-06 U.S. Philips Corporation Method and apparatus for a low data-rate network to be represented on and controllable by high data-rate home audio/video interoperability (HAVi) network
US6298069B1 (en) * 1999-09-30 2001-10-02 Sony Corporation System and method for implementing self-device control modules in an electronic network
US6314447B1 (en) * 1999-10-04 2001-11-06 Sony Corporation System uses local registry and load balancing procedure for identifying processing capabilities of a remote device to perform a processing task

Also Published As

Publication number Publication date
JP2002506552A (ja) 2002-02-26
WO1999055071A2 (en) 1999-10-28
JP4245670B2 (ja) 2009-03-25
WO1999055071A3 (en) 2000-01-20
EP1004198B1 (de) 2006-10-18
DE69933637D1 (de) 2006-11-30
US6600958B1 (en) 2003-07-29
EP1004198A2 (de) 2000-05-31

Similar Documents

Publication Publication Date Title
DE69933637T2 (de) Funktionalitätsverwaltung für ein system der unterhaltungselektronik
DE69808501T3 (de) Verfahren zum erstellen von makrobefehlen für ein hausnetzwerk
DE69829218T2 (de) Ein audio-video-netzwerk mit gerätsteuerung
DE69921342T2 (de) Verfahren und system zur elektronischen kommunikation
DE69813566T2 (de) Ein verfahren und eine vorrichtung zum versehen von geräten mit selbstbeschreibenden informationen
DE69829219T2 (de) Verfahren und system in verbindung mit einem audio-video-netz
DE69836101T2 (de) Ein audio-video-gerät
DE69737525T2 (de) Aufgabengesteuertes steuerungssystem für elektronische verbraucher
DE60036072T2 (de) Verfahren zur brückenverbindung von mehreren heimnetzsoftwarearchitekturen
DE60311396T2 (de) Verfahren zur Gestaltung eines Peer-to-Peer Netzwerks mit Hilfe eines gemeinsamen Gruppenetiketts
DE69930534T2 (de) Szenarioandeutende Anrufe für Steuerung von Softwareobjekten mittels Eigenschaftsverbindungen
DE60119357T2 (de) Verfahren und zum datenaustausch zwischen netzwerkgeräte
DE69829221T2 (de) Ein audio-video-netzwerk
DE602004011517T2 (de) Einbetten einer upnp av mediaserverobjektidentifikation in einem uri
DE60029321T2 (de) Verfahren und vorrichtung zur fernbedienung eines hausnetzwerks von einem externen kommunikationsnetz
DE602005005730T2 (de) Steuerverfahren für Informationsbereitstellung, Informationswiedergabesystem und Informationsbereitstellungsvorrichtung
DE60303903T2 (de) Verfahren zur Erzeugung einer graphischen Benutzerschnittstelle auf einem HAVi Gerät für die Steuerung eines nicht HAVi Gerätes
DE69930585T2 (de) Verfahren zur Verbindung mit einem Server für ein auf Browser basiertes Netzwerk
US6389466B1 (en) Management of functionality in a consumer electronics system
DE602004007064T2 (de) Verfahren zur Zuteilung von einem Identifikator zu einer Gruppe von gleichrangigen Knoten in einem gleichrangigen Netz
DE19548776A1 (de) Verfahren zur Fernbedienung von elektronischen Geräten und Vorrichtung zur Fernbedienung von elektronischen Geräten sowie elektronisches Gerät
DE60207243T2 (de) Netzanpassungsgerät zur Steuerung von Audio/Video-Geräten in einem lokalen Netz
DE602004009746T2 (de) Teilen von Diensten in einem Netz
DE10312630A1 (de) Vorrichtung für und Verfahren von einem nahtlosen, drahtlosen Multimedia-Download-Weg zu vernetzten Partneranwendungen
DE102004018980A1 (de) Verfahren zur Steuerung eines Gerätes in einem Netzwerk verteilter Stationen sowie Netzwerkstation

Legal Events

Date Code Title Description
8364 No opposition during term of opposition