Brevet FR2871640A1 — publié le 20051216

La présente invention concerne les dispositifs de communication pour appareils électroniques connecté par un protocole de transport en temps réel à un réseau de données de type Internet, et, plus particulièrement, les appareils électroniques qui implémentent la norme HAVi (Home AudioNideo Interoperability; Interopérabilité AudioNidéo pour la maison). Celle-ci est une spécification d'architecture de communication entre différents appareils audiovisuels utilisés dans un cadre familial. Cette norme est développée par un consortium d'industriels du domaine de l'électronique grand public. Cette norme est disponible sur le site web du consortium à l'adresse www.havi.orq. A la date du dépôt de la présente demande, les spécifications en vigueur portent le numéro de version 1.1 datée du 15 mai 2001. L'architecture HAVi est destinée à être implantée sur des équipements électroniques grand public ainsi que sur des équipements de calcul tels des. ordinateurs personnels. Cette architecture fournit un ensemble de services qui facilitent l'interopérabilité et le développement d'applications distribuées sur des réseaux domestiques. Initialement, cette architecture est destinée à des équipements grand public supportant la norme IEEE 1394-1995 ainsi que la norme IEC 61883 qui lui est associée. L'architecture HAVi est une architecture logicielle qui doit permettre à de nouveaux équipements de s'intégrer facilement dans un réseau domestique et d'offrir des services de façon aisée. Cette architecture fournit: - un ensemble d'éléments logiciels ainsi que des protocoles et des interfaces de programmation nécessaires pour permettre l'interopérabilité, - des modèles de commande et d'abstraction des équipements, - un schéma d'adressage pour les équipements et leurs ressources, - un environnement d'exécution ouvert supportant les présentations 30 visuelles et les commandes d'équipement et fournissant un support exécutable pour des applications de tiers, - des mécanismes de communication pour étendre l'environnement dynamiquement à travers des capacités de connexion directe, et la gestion de flux de données isochrones. Les types d'équipement supportant HAVi sont les récepteurs radio, les magnétoscopes, les caméras, les disques audio et vidéo, les écrans d'affichage, les amplificateurs, modems, etc, ... Comme indiqué précédemment, l'architecture HAVi repose sur le réseau IEEE 1394 ainsi que la norme IEC 61883 qui le complète. Cette norme IEC 61883 définit la gestion des flux de données isochrones en utilisant le concept de registres de gestion de prises (Plug Control Register: PCR) ainsi que des procédures de gestion de connexion (Connection Management Procedures: CMP) nécessaires pour l'initialisation et la clôture des transmissions de données isochrones. Le réseau IEEE 1394 ayant des limitations, il a été proposé de mettre l'architecture HAVi sur un réseau à la norme IP (Internet Protocol, Protocole Internet) afin de réutiliser une technologie très commune et bien acceptée. L'avantage supplémentaire espéré est de rendre l'architecture HAVi indépendante de la structure physique du réseau. La demanderesse a ainsi proposé un nouveau type de protocole de transport ayant toutes les structures de l'architecture HAVi nécessaires. Cependant, la norme IP ne connaît pas le concept de connexion. Il est alors difficile, et peut-être même impossible, de connaître le nombre de flux de données qu'un équipement HAVi est capable de gérer simultanément. Un flux de données étant lié à une prise, cela veut dire que le nombre de prises pour un équipement HAVi ne peut pas être fixé à l'avance et être bien connu. Le but de l'invention est donc fournir des prises au sens de la norme HAVi et de la norme IEC 61883 qui soient compatibles avec la norme IP. L'objet de la présente invention est un dispositif de communication d'un appareil électronique connecté par un protocole de transport en temps réel à un réseau de données de type Internet et comportant des moyens de connexion d'au moins un flux de données entre le réseau et l'appareil, ce flux de données ayant une direction entrante ou sortante de l'appareil, et ces moyens de connexion comportant des moyens de stockage d'au moins une adresse correspondant au flux et de sa direction, caractérisé en ce que les moyens de connexion comportent en outre des moyens de création d'une zone de stockage de l'adresse et de la direction du flux lors de la création de celui-ci et, des moyens de destruction de ladite zone de stockage lors de la clôture du flux. Suivant d'autres caractéristiques de l'invention: - pour un flux donné, les moyens de connexion stockent l'adresse et la direction du flux dans une zone de stockage prédéterminée ou dans une zone de stockage créée par les moyens de création, - tous les flux ayant la même direction ont leur adresse et leur direction stockées dans une zone de stockage du même type, prédéterminée ou créée par les moyens de créations, - les zones de stockage créées lors de la création d'un flux sont caractérisées par une valeur unique différente de celles des zones de stockage prédéterminées, le protocole de transport est à la norme RTP, - le dispositif de communication implémente le protocole HAVi. L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple, et en référence aux dessins annexés, sur lesquels: - la figure 1 est un schéma de fonctionnement de la norme IEC 61883 sur un réseau IEEE 1394, selon l'art antérieur; - la figure 2 est un schéma de fonctionnement des prises IEC 61883, selon l'art antérieur, - la figure 3 est un schéma de fonctionnement de flux HAVi sur un réseau IP, selon l'art antérieur; - la figure 4 est un schéma de l'en-tête d'un message de création d'une adresse source; - la figure 5 est un schéma d'ensemble d'un appareil à la norme HAVi 25 connecté à un réseau IP. Afin de permettre une étude aisée de cette description, plusieurs définitions extraites de la spécification HAVi vont maintenant être données. Un réseau domestique est le nom générique utilisé pour définir une infrastructure de communication à l'intérieur d'une maison. Ce nom est utilisé comme une abstraction des supports physiques et des protocoles qui leur sont associés. Un réseau domestique supporte à la fois des échanges d'informations de gestion d'équipement et des échanges de contenu audio et/ou vidéo. Un module de gestion d'équipement (Device Control Module: DCM) est un élément logiciel de l'architecture HAVi fournissant une interface pour commander des fonctions générales d'un équipement. Un. module de composants fonctionnels (Functional Components Module FCM) est un élément logiciel de cette architecture fournissant une interface pour contrôler un composant fonctionnel spécifique d'un équipement. Par composants fonctionnels on entend un niveau d'abstraction qui représente un groupe de fonctions associées à un équipement. Par exemple, dans un téléviseur numérique, il peut y avoir plusieurs composants fonctionnels tels que le récepteur radio, le décodeur, l'amplificateur audio, etc... Une connexion est un chemin de transfert de données unidirectionnel créé par un composant d'architecture HAVi appelé le Stream Manager. Une connexion est utilisée typiquement pour un flux de données. Ainsi le concept de prises (Plug) d'entrée ou de sortie, figure 1, a été introduit pour identifier les noeuds à l'intérieur d'un réseau IEEE 1394. Un flux de données isochrones 1 est mis en relation avec une prise de sortie 2. En réglant les paramètres correspondants dans les registres de gestion des prises (iPCR pour les flux entrants, oPCR pour les flux sortants), ce flux peut être connecté à un canal isochrone 3 résultant dans un flux de données réel sur le réseau IEEE 1394. Une prise est statique, figure 2, dans le sens où elle est physiquement représentée par un registre 4 du PCR 5, celui-ci comportant au plus 63 registres. Cette prise fait ainsi le lien entre le flux 1 de données et l'application de traitement 6. Dans le cas d'un réseau IP, figure 3, pour un équipement donné 10, sa connexion est définie par son adresse IP X ainsi que part un numéro de porte Y correspondant à l'application ou au protocole utilisé. Par exemple, le numéro de porte 80 est bien connu pour être utilisé par le protocole HTTP. Dans le cas d'un flux HAVi, le protocole de transport utilisé est le protocole Temps-Réel (Real-Time Protocol-RTP) standardisé par Internet Engineering Task Force (IETF) sous la référence RFC 3550 et d'autres références relatives à des données particulières. Le protocole RTP a été choisi comme particulièrement bien adapté aux flux de données audio et vidéo. En effet, il possède des possibilités de marquage temporel des paquets ainsi que des mécanismes de gestion pour synchroniser des flux différents possédant des caractéristiques temporelles. Pour chaque session RTP, un numéro de porte est défini. Ayant ainsi défini un numéro de porte RTP, un numéro de prise 11 lui est associé pour indiquer l'adresse ultime du flux. Un flux HAVi sur réseau IP se définit donc par un triplet (adresse IP, numéro de porte, numéro de prise) pour chaque extrémité de ce flux. A titre d'exemple, la figure 4 illustre l'en-tête 15 d'un message de création d'une adresse source avec ce triplet ( destination IP address 16, RTP port 17, plug Number 18). Un appareil électronique 21 à la norme HAVi, figure 5, comporte donc des moyens 22 de connexion sur un réseau 23 de données tel qu'un réseau à la norme IP. Les moyens 22 de connexion comportent, outre les dispositifs physiques, les modules DCM et FCM qui sont chargés, dans la norme HAVi, de la relation entre l'appareil et son environnement et assurent la gestion locale des flux sous le contrôle global du Stream Manager. Dans la suite de cette description, le terme DCM est employé indifféremment pour désigner un module DCM ou un module FCM, les différences de fonctionnalité entre les deux types de modules n'étant pas pertinentes pour la compréhension de ce qui va suivre. Les moyens 22 de connexion permettent ainsi l'établissement d'un flux 24 de données entre cet appareil et au moins un second appareil à la norme HAVi. Ce flux de données est unidirectionnel, c'est-à-dire que les données sont émises ou bien reçues sur ce flux. Comme indiqué précédemment, ce flux 24 se définit donc au niveau de l'appareil 21 par un triplet: adresse IP de l'appareil, numéro de porte du flux HAVi et numéro de la prise. Il possède donc également un sens entrant ou sortant par rapport à cet appareil. Le DCM gère ainsi les flux destinés à l'appareil grâce à ce triplet et à la direction du flux. L'appareil électronique 21 possède donc des moyens de stockage 25, 26, la prise HAVi, lui permettant de conserver les caractéristiques du ou des flux 24 le concernant. Cependant, deux flux peuvent aussi se différencier sur l'adresse du second appareil. Ainsi, un seul numéro de prise est suffisant pour gérer plusieurs flux. Le DCM comporte alors des moyens 27 de création d'une nouvelle prise 25 quand un nouveau flux est créé. Et quand ce flux est fermé, le DCM libère la prise 25 correspondante grâce à des moyens 28 de destruction. La création, ou la libération, d'une prise 25 correspond à une opération de gestion de la mémoire, ou de la zone de stockage, pour allouer les champs caractéristiques de ce flux, en particulier son numéro de prise et sa direction. Le nombre de prises n'est donc pas fixé a priori mais dépend seulement de la taille maximale de la zone de stockage. Cela correspond à une gestion dynamique des prises. Ces prises dynamiques doivent cependant être différentiées des prises statiques classiques. C'est ainsi, par exemple, qu'il n'est plus possible de répondre à une interrogation sur le nombre de prises par les moyens de HAVi 1.1. L'architecture HAVi définit, par exemple, une fonction DCM GetPlugCount permettant de connaître le nombre de prises. Dans le cas de prises dynamiques, il est nécessaire de prévoir une valeur spéciale, par exemple ffffh (h pour hexadécimal) pour indiquer qu'une seule prise dynamique est utilisée. Bien sûr, l'utilisation de cette valeur ffffh implique que le nombre de prises statiques est au plus fffeh afin de pouvoir différencier prise statique et prise dynamique. La fonction GetPlugCount retourne donc la valeur ffffh dans le cas de 25 prises dynamiques et une autre valeur, différente, correspondant réellement au nombre de prises dans le cas de prises statiques. On conçoit donc que les prises dynamiques doivent être différentiées des prises statiques dans leurs utilisations. Afin d'assurer une coexistence entre ces deux types de prises, il est donc nécessaire de limiter le couple module et direction à un seul type. Il est ainsi possible d'avoir un schéma prises DCM dynamiques et prises FCM statiques ou l'inverse, ou bien encore prises DCM entrantes dynamiques, prises DCM sortantes statiques, prises FCM entrantes statiques et prises FCM sortantes dynamiques. Et la valeur de la fonction GetPlugCount permet ainsi de déterminer le type de prises utilisées. Dans le protocole décrit, il y a une relation biunivoque entre la prise et la porte. Cependant il est aussi possible d'avoir plusieurs portes en relation avec une prise et donc un flux HAVi. Par exemple, si ce flux combine des données audio et vidéo, ces deux types de données peuvent être séparés au niveau du protocole RTP et donc utiliser deux portes différentes. Les prises dynamiques ainsi décrites permettent donc d'utiliser l'architecture HAVi sur un réseau à la norme IP. L'implémentation décrite s'appuie sur l'architecture HAVi qui permet la communication de flux temps réel entre appareils électroniques. L'homme du métier peut cependant adapter sans difficulté cette implémentation à des architectures similaires. REVENDICATIONS 1. Dispositif de communication d'un appareil électronique (21) connecté par un protocole de transport en temps réel à un réseau (23) de données de type Internet et comportant des moyens (22) de connexion d'au moins un flux (24) de données entre le réseau et l'appareil, ce flux (24) de données ayant une direction entrante ou sortante de l'appareil, et ces moyens de connexion (22) comportant des moyens (25, 26) de stockage d'au moins une adresse correspondant au flux et de sa direction, caractérisé en ce que les moyens (22) de connexion comportent en outre des moyens (27) de création d'une zone de stockage (25) de l'adresse et de la direction du flux lors de la création de celui-ci et, des moyens (28) de destruction de ladite zone de stockage (25) lors de la clôture du flux. 2. Dispositif de communication d'un appareil électronique (21) selon la revendication 1, caractérisé en ce que, pour un flux (24) donné, les moyens de connexion (22) stockent l'adresse et la direction du flux dans une zone de stockage (26) prédéterminée ou dans une zone de stockage (25) créée par les moyens de création (27). 3. Dispositif de communication d'un appareil électronique (21) selon la revendication 2, caractérisé en ce que tous les flux (24) ayant la même direction ont leur adresse et leur direction stockées dans une zone de stockage (25, 26) du même type, prédéterminée ou, créée par les moyens de création (27). 4. Dispositif de communication d'un appareil électronique (21) selon l'une quelconque des revendications précédentes, caractérisé en ce que les zones (25) de stockage créées lors de la création d'un flux sont caractérisées par une valeur unique différente de celles des zones de stockage prédéterminées. 5. Dispositif de communication d'un appareil électronique (21) selon l'une quelconque des revendications précédentes, caractérisé en ce que le protocole de transport (23) est à la norme RTP. 6. Dispositif de communication d'un appareil électronique (21) selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il implémente le protocole de communication HAVi.