Brevet FR3077906A1 — publié le 20190816

PROCEDE DE DIFFUSION DE SESSIONS D'UTILISATEUR, ORDINATEUR HOTE PERMETTANT DE METTRE EN OEUVRE CE PROCEDE, ET PROCEDE DE FOURNITURE DE SERVICES A UN UTILISATEUR. DOMAINE DE L'INVENTION La présente invention concerne un procédé de gestion des sessions d'utilisateur, lesdites sessions d'utilisateur étant exécutées sur des serveurs d'un ordinateur hôte. Chaque session 10 d'utilisateur peut être associée à un client distant, et les informations d'affichage et de commande peuvent être communiquées entre chaque session d'utilisateur et son client associé. 15 ARRIÈRE-PLAN TECHNOLOGIQUE DE L'INVENTION Les documents U52017228851 et FR3047576 décrivent une configuration de système informatique, dans lequel des 20 dispositifs d'interface d'utilisateur (affichage, clavier, sont séparés de la partie traitement de l'application. Les dispositifs d'interface d'utilisateur se trouvent sur le bureau de l'utilisateur (également dénommé le "client") alors que les composants de traitement et de stockage de l'ordinateur se 25 trouvent dans un lieu d'hébergement distant. Les appareils d'interface utilisateur ont alors accès, au niveau de I 'ordinateur hôte, à une machine virtuelle dédiée par l'intermédiaire d'un réseau (le plus souvent Internet.), la machine virtuelle émulant le traitement, le stockage et autres 30 ressources informatiques requises. L'ordinateur hôte héberge le système d'exploitation et les applications logicielles utilisées par les clients, ce qui limite les ressources de traitement du côté client. Les dispositifs d'interface utilisateur dépendent donc fortement de l'ordinateur hôte qui remplit les fonctions 35 informatiques pour les clients. Tl est habituel que l'ordinateur hôte soit constitué d'une pluralité de systèmes informatiques physiques (serveurs), chacun hébergeant une pluralité de machines virtuelles. Chaque machine virtuelle est connectée à un client, et fournit un environnement virtuel dédie pour émuler les fonctions d'un ordinateur personnel physique, y compris le traitement des données graphiques, et fournir les informations d'affichage de -session d'utilisateur sur l'écran du client. Les données à afficher sont transférées au client par l'intermédiaire du réseau. Le client possède des ressources informatiques suffisantes pour recevoir le flux de données et afficher celles-ci. Le client dispose également de dispositifs d'entrée/sortie (clavier, souris...) pour échanger des informations ou des instructions avec la machine virtuelle, via le réseau. Dans cette configuration de système informatique, P sessions d'utilisateur (c'est-à-dire les environnements virtuels isolés qui émulent les ordinateurs personnels physiques de l'utilisateur) se trouvent toutes dans le même hôte ou réparties sur un nombre limité d'hôtes. Cette configuration permet aux utilisateurs d'avoir accès à des services qui ne sont pas disponibles dans une configuration classique de réseau informatique physique. BUT DE L'INVENTION Un objet de la présente invention est donc de proposer des procédés activant ces services. Plus particulièrement, l'invention. propose un procédé de gestion des sessions d'utilisateur, de telle manière qu'un utilisateur ou un groupe d'utilisateurs puissent diffuser leur environnement informatique au bénéfice d'abonnés distants. Les sessions diffusées peuvent être traitées pour fournir des services à l'utilisateur. t' invention propose également un procédé permettant à. une pluralité d'abonnés distants d'interagir simultanément avec une session d'utilisateur. 5 RÉSUMÉ DE L' INVENTION Pour ce faire, l'invention concerne un procédé 10 d'interaction simultanée avec une session d'utîlisateur à partir d'une pluralité d'abonnés distants, chaque abonné distant fournissant des informations d'abonné à la session d'utilisateur, ledit procédé comprenant l'étape consistant à : - recevoir des informations d'abonné provenant de chaque 15 abonné distant au niveau dé ports de réception respectifs d'une plateforme de diffusion ; agréger, au niveau de la plateforme de diffusion, les informations d'abonné afin de constituer un flux de commande ; 20 - fournir, à partir d'un port d'émission de la plateforme de diffusion, le flux de commande à la session d'utilisateur. Selon d'autres caractéristiques non limitatives de 25 l'invention, prises soit individuellement soit en une combinaison techniquement possible quelconque : - les informations d'abonné sont reçues sous la forme de paquets de données, et l'étape d'agrégation des 30 informations de commande comprend le stockage des paquets de données dans une structure de mémoire FIFO ; la session d'utilisateur est associée à un client distant, et le procédé comprend la transmission des informations de 4 session entré la session d'utilisateur et son client associé ; dans lequel les informations d'abonné comprennent des 5 informations fournies par au moins un dispositif d'entrée choisi dans la liste consistant en : un clavier, une souris, un pavé tactile, un écran tactile, une manette, un masque de réalité virtuelle ; 10 - les dispositifs d'entrée d'au moins deux abonnés distants sont différents les uns des autres. Selon un autre aspect, J'invention concerne un ordinateur hôte comprenant : 15 une pluralité de serveurs, chacun étant configure pour exécuter une pluralité de sessions d'utilisateur ; une plateforme de diffusion en communication avec les serveurs et configurée pour : i. recevoir des informations d'abonné fournies par 20 des abonnés distants, chaque abonné distant étant. associé à une session d'utilisateur ; ii.. agréger des informations d abonné reçues et qui sont fournies par des abonnés distants associés à la même session d'utilisateur afin de former 25 une pluralité de flux de commande ; iii. fournir les flux de commande aux sessions d'utilisateur respectives. 30 FIGURES De nombreux autres avantages et fonctions de la présente invention seront plus apparents après la lecture de la description détaillée qui suit, prise conjointement avec les 35 dessins joints, parmi lesquels : 5 La figure 1 représente une architecture informatique permettant de mettre en oeuvre la présente invention ; Les figures 2a à 2c représentent schématiquement une plateforme de diffusion d'un ordinateur hôte ; La figure 3 représente une architecture informatique comprenant une pluralité d'ordinateurs hôtes. 10 DESCRIPTION DETAILLEE DE MODES DE REALISATION SPECIFIQUES DE L'INVENTION Dans la description qui suit, des descriptions détaillées de fonctions et d'éléments connus, qui pourraient 15 inutilement rendre obscur l'essentiel de la présente invention, seront omises. Architecture informatique 20 Sur la figure 1, une architecture informatique comprend. un ordinateur hôte 1 qui présente une pluralité de serveurs 9. Comme cela est bien connu, les serveurs 2 peuvent être confiaurés pour héberger une ou plusieurs machine (s) 3 virtuelle(s), en même temps que son/leur système d'exploitation ses/leurs 25 applications. La virtualisation permet qu'une pluralité de machines virtuelles 3 soient hébergées dans chaque serveur 2 tout en fournissant une pluralité d'environnements virtuels totalement isolés dans un seul serveur 2. On peut citer, parmi les technologies de virtualisation bien. connues Citrix 30 XenServer, Microsoft Hyper-V, VMWare ESXi, Oracle Virtual box, Quick Emulator sous licence ouverte GNU (OEMU), etc. Chacune des machines virtuelles 3 dans l'ordinateur hôte peut être dédiée à un utilisateur spécifique. L'utilisateur 35 interagit avec sa machine virtuelle dédiée 3 à partir du client 6 distant 4, 4 connecté à l'ordinateur hôte 1 par l'intermédiaire d'un réseau comme Internet. Étant donné que la plus grande partie, si ce n'est l'intégralité, du traitement se fait au niveau de l'ordinateur hôte 1, les clients distants 4, 4' peuvent 5 rester très simples, et peuvent inclure, par exemple, un simple terminal, un connecteur de réseau et des dispositifs d'entrée/sortie de base (clavier, souris...) comme représenté par le client distant 4 sur la figure 1 Le client distant 4, 4' peut également être une tablette ou un Smartphone. Selon une 10 autre solution, il peut s'agir d'un ordinateur personnel standard, avec sa propre Unité Centrale, sa carte graphique, ses périphériques, ... comme représenté par le client distant 4'. La figure 1 représente également un ordinateur 4" connecté au réseau, tel qu'une tablette, un ordinateur personnel ou un 15 Smartphone. L'ordinateur 4" est équipé de toutes les ressources d'exploitation nécessaires, de telle manière que tous les traitements soient exécutés localement. Il ne bénéficie donc pas des ressources de traitement fournies par les serveurs 2 de l'hôte 1. L'ordinateur. 4" peut cependant interagir, c'est-a- 20 dire échanger des informations, les sessions d'utilisateur étant exécutées sur ces serveurs 2. Chaque serveur 2 héberge, de préférence, moins de dix machines virtuelles 3 pour fournir des ressources informatiques 25 suffisantes à chaque machine virtuelle 3 pour exécuter des applications hautes performances avec un niveau suffisant de service. Chaque machin è virtuelle 3 est créée au moment de la connexion du client et comprend une UC virtuelle, une mémoire principale virtuelle, une carte graphique virtuelle ou physique 30 ainsi que d'autres ressources. Chaque machine virtuelle 3 fournit un ordinateur personnel virtuel hautes performances qui est commandé par un client distant 4, 4'. Chaque machine virtuelle 3 constitue donc, ou est l'équivalent, d'une session d'utilisateur, et un grand nombre de ces sessions d'utilisateur 35 3 peuvent être exécutées sur les serveurs 2 de l'ordinateur hôte 7 1. L'architecture informatique peut comprendre une pluralité d'ordinateurs hôtes 1, qui se trouvent dans des centres de données informatiques géographiquement séparés. Chaque session d'utilisateur 3 est associée à un client distant. Pour afficher les images de la session d'utilisateur sur le terminal du client distant, l'ordinateur hôte 1 approvisionne le système distant 4, 4 sur le réseau en informations d'affichage, de son et de commande pour les 10 dispositifs d'entrée/sortie installés sur le site distant. A l'inverse, les clients distants 4, 4' approvisionnent l'ordinateur hôte I en informations de commande en provenance des dispositifs d'entrée/sortie qui se trouvent sur le site distant (clavier, souris), et éventuellement d'autres formes de données telles que des informations d'affichage et sonores fournies par un dispositif USB ou intégrées dans une caméra et un microphone du client distant 4, 4', ou des périphériques de réseau, au niveau du client distant, tels des imprimantes... Dans la présente description, on fera généralement référence aux informations échangées entre la session d'utilisateur de l'ordinateur hôte 1 et le client distant 4, 4' sous le terme "d'informations de session". Ces informations de session sont codées pour limiter l'utilisation de la bande passante du réseau. Les C; lients distants 4, 4' sont approvisionnés en ressources matérielles et/ou logicielles appropriées pour coder/décoder les 30 informations communiquées avant qu'elles soient affichées, OU plus généralement utilisées du côté client, ou transmises à l'hôte 1. Les échanges d'informations entre une session d'utilisateur 3 et un système distant 4, 4' (et des abonnés distants, comme cela sera examiné en détails ci-dessous) peuvent 20 25 être réalisés en utilisant n'importe quel protocole, comme TOP ou UDP. Ils incluent généralement, du côté émission, la préparation de paquets de données de charge active, pour chaque type d'information (vidéo, audio, commande, ...) et des informations d'en-tête, et le paquet est fourni sur le support 5 de communication habituellement par entrelacement des paquets de différentes sources, et le paquet de données est décodé du côté réception en utilisant l'en-tête pour reconstituer les informations originales. L'en-tête comprend habituellement des informations suffisantes, telles que l'identification de la 10 session d'utilisateur et/ou du client distant, de telle façon que les paquets de données puissent être acheminés correctement de l'émetteur au récepteur. En référence à la description de la figure 1, 15 l'ordinateur hôte 1 comprend également une plateforme de dlffusion 5. La plateforme de diffusion 5 est en communication avec les serveurs 2 de l'hôte 1, et collecte des informations de session provenant d'au moins certaines des sessions d'utilisateur qui sont exécutées sur les serveurs 2. 20 Simultanément avec la transmission des informations de session entre chaque session d'utilisateur, et leurs clients distants 4, 4' associés, les informations de session provenant de certaines sessions d'utilisateur sélectionnées sont transmises à la plateforme de diffusion 5. La plateforme de diffusion 5 est 25 également configurée pour émettre, de manière sélective, les informations de session d'utilisateur à des abonnés distants 4, 4', 4". Un abonné distant à une session d'utilisateur 30 particulière peut correspondre à un client distant 4, 4' (associé à une autre session d'utilisateur) ou à un dispositif informatique 4", qui s'est connecté à l'hôte 1 et qui s'est abonné pour recevoir des informations de session de la session. d'utilisateur particulière. 35 Les informations de session reçues par l'abonné distant 4', 4" peuvent être traitées par l'abonné distant, par exemple pour être affichées sur un écran au niveau d'un emplacement distant ou traitées pour fournir d'autres services L-; à la session. d'utilisateur 3, à l'utilisateur lui-même, ou bien, d'une manière plus générale, pour communiquer les informations de service à tout dispositif informatique 4" on sur le réseau ou à toute session. d'utilisateur 3 de l'hôte 1. 10 Programme de diffusion La transmission des informations de session entre une session d'utilisateur 3 et la plateforme de diffusion 5 peut être effectuée par un programme de diffusion exécuté par la 15 session d'utilisateur 3. Chaque utilisateur de l'architecture informatique peut commander la diffusion ou la non-diffusion de sa session, et configurer les paramètres de diffusion en ayant accès au programme de diffusion. Par exemple, un utilisateur résidant dans un site distant et un client distant exploitant 4, 20 4' peut configurer le programme de diffusion pour autoriser la diffusion de sa session 3, c'est-à-dire autoriser le programme de diffusion à transmettre les informations de session (informations d'affichage et/ou de commande de la session) vers la plateforme de diffusion 5. Le programme de diffusion exécute 25 pendant chaque session d'utilisateur 3 permet à chaque utilisateur d'entrer, d'éditer, de modifier et d'enregistrer les paramètres de diffusion. En faisant cela, un utilisateur indique si au moins une partie de sa session informatique peut être partagée avec des abonnés distants 4, 4', 4" ou non, et dans 30 quelles conditions. La configuration du programme de diffusion peut être plus complexe que le simple fait d'autoriser ou de bloquer la diffusion. Par exemple, une session d'utilisateur peut inclure des bureaux ou des écrans multiples, et la configuration peut indiquer vers quel bureau ou vers quel écran 35 la diffusion doit être effectuée. La configuration peut 10 également autoriser ou bloquer la transmission d'informations de sons et/ou de commande, indépendamment de l'autorisation ou du blocage de données d'affichage pures. La configuration peut également établir la liste des abonnés distants autorisés ou 5 bloqués, c'est-à-dire des abonnés distants qui sont, individuellement, autorisés à ou interdits de s'abonner aux information d'affichage de la session d'utilisateur. Le programme de diffusion peut également garder la trace 10 du statut de diffusion de la session d'utilisateur 3 chez l'hôte 1, de telle manière qu'il est possible de consulter, chez l'hôte 1, la liste des sessions d'utilisateur diffusées disponibles. Ce traçage peut contenir, par exemple, une identification d'utilisateur, une référence de session d'utilisateur, le port 15 de réception de la plateforme de diffusion dans laquelle les informations de session correspondantes sont collectées, une liste d'abonnés distants qui sont autorisés à s'abonner à la session d'utilisateur... 20 Abonnés distants Comme cela été exposé d'une manière générale dans un précédent passage de la présente description, un abonné distant consiste en des ressources informatiques 4, 4', 4" qui 25 s'abonnent auprès de l'hôte 1 pour recevoir des informations de session d'au moins une session d'utilisateur. L'abonné distant 4, 4', 4" à une session d'utilisateur déterminée 3 peut correspondre à un client distant 4, 4' associé 30 à une autre session d'utilisateur d'une architecture informatique représentée sur la figure I. Il peut également s'agir d'un dispositif informatique 4", tel qu'une tablette, un PC, un serveur ou un Smartphone, connecté à l'hôte par l'intermédiaire d'un réseau, et non associé à l'une quelconque 35 des sessions d'utilisateur de l'architecture informatique. Dans 11 un exemple particulier, un abonné distant peut être un serveur HTTP qui peut donner le libre accès à des données d'affichage d'une/de session(s) d'utilisateur à d'autres dispositifs informatiques connectés au réseau. Les autres dispositifs 5 informatiques peuvent alors afficher et traiter les informations de session (s) par l'intermédiaire d'un navigateur Internet. Pour obtenir des informations de session issues d'une session d'utilisateur déterminée 3, un abonné distant 4, 4', 4" 10 se connecte en priorité chez l'hôte 1 et s'abonne pour recevoir les informations de session de la session d'utilisateur déterminée. Cette étape peut comprendre l'accès à, et éventuellement la mise à jour du statut de traçage de la session stocké au niveau de l'hôte 1, afin de sélectionner, parmi les - sessions d'utilisateur disponibles, une ou plusieurs session (s) d'utilisateur disponible (s) pour la diffusion. La sélection peut, par exemple, être fondée sur l'identification. de l'utilisateur. Celle-ci peut inclure la vérification que l'abonné distant 4, 4', 4" est bien autorisé à s'abonner à la 20 session d'utilisateur sélectionnée. Cette étape peut également comprendre la réception d'une identification du port d'émission de la plateforme de diffusion 5, de telle sorte que l'abonné distant puisse se connecter et recevoir, lors d'une étape ultérieure, les informations de session déterminée. 25 L'abonné distant se connecte ensuite à la plateforme de la diffusion 5 et reçoit les informations de session provenant de la session d'utilisateur déterminée. 30 Comme cela a été mentionné, d'une manière générale, ci- dessus, un abonné distant 4, 4', 4" peut ensuite traiter les informations de session. Dans sa forme la plus simple, le traitement correspond à la décompression et/ou au décodage des données de session de telle sorte qu'elles puis sent être 35 affichées sur un écran au niveau du site de l'abonné distant. 12 Au lieu d'être affichées, les informations brutes peuvent être communiquées à d'autres dispositifs informatiques, comme cela est le cas lorsque l'abonné distant est un serveur HTTP. De manière avantageuse, l'abonné distant 4, 4', 4" effectue un traitement avancé des informations d'utilisateur pour donner des informations de service. Le sous-programme de 10 traitement d'image peut traiter les informations de session pour donner des informations (de service) supplémentaires à la session à une pluralité de sessions d'utilisateur, ou à l'utilisateur lui-même. 15 Par exemple, le sous-programme de traitement d'image peut être exécuté chez un abonné distant afin d'attribuer une classification aux images correspondant aux informations affichées, aux fins de surveillance parentale. La classification détectée (qui définit les informations de service fournies par 20 l'abonné distant) peut alors être communiquée en retour à la session d'utilisateur, par exemple pour interrompre la session, si la classification dépasse un seuil prédéfini. Selon une autre solution, si la classification détectée dépasse un seuil prédéfini, un bref message ou un mail peut être envoyé à un 25 numéro de téléphone ou à une adresse mail prédéterminé(e) associé (e) à la session. d'utilisateur. Dans un autre exemple, le sous-programme de traitement d'image exécuté chez l'abonné distant peut analyser les 30 informations de session afin d'identifier le message d'erreur qui s'ouvre sur le bureau de la session d'utilisateur. Dès l'apparition d'un tel message, l'abonné distant peut générer une alerte auprès d'une équipe d'assistance qui peut 13 apporter de l'aide à l'utilisateur, par exemple, en contactant l'utilisateur par email ou par téléphone. Une large gamme de services peut être fournie par un ou une pluralité d'abonné(s) distant(s). Un utilisateur particulier de l'architecture informatique peut sélectionner les services qu'il souhaite utiliser en configurant le programme de diffusion, et en autorisant les abonnés distants qui fournissent les services sélectionnés à avoir accès aux informations 10 d'affichage de la session. d'utilisateur. Plateforme de diffusion La figure 2 représente schématiquement l'architecture de 15 la plateforme de diffusion 5. Elle comprend un récepteur de flux 51 qui collecte des informations de session dans des ports de réception 52 respectifs. Les informations de session provenant des sessions d'utilisateur sont communiquées par des programmes de diffusion respectifs aux ports 52 et stockées dans 20 des tampons temporaires associés à chaque port. La plateforme de diffusion 5 comprend également un émetteur de flux 53 doté d'une pluralité de ports d'émission 54 pour fournir les informations de session respectives à des 25 abonnés distants 4, 4', 4". Lorsqu'il se connecte à la plateforme de diffusion, un abonné distant se connecte en fait à un port d'émission 54 de l'émetteur de flux 53. - La plateforme de diffusion 5 comprend également un 30 routeur de flux 55 permettant de transférer, de manière sélective, des informations de session à partir des ports de réception 52, vers les ports d'émission 54. Chaque canal de réception 52 est dédié à la réception d'informations de session provenant d'une session d'utilisateur particulière. Chaque canal 14 de réception 54 est dédié à l'émission d'informations de session vers un abonné distant particulier. Dés la réception d'un paquet de données dans un port de 5 réception 52 du récepteur de flux 51, le routeur de flux 55 transfère le paquet de données vers les ports d'émission 54 de l'émetteur de flux 53, de telle sorte que le paquet de données peut être en outre communiqué à/aux l'abonné(s) distant (s) approprié(s). La. figure 2b représente une vue détaillée de la 10 mise en oeuvre d'un routeur de flux 55, sous la forme d'un système de mise en file d'attente de messages. Chaque port de réception 52 du récepteur de flux 51 est en communication avec une structure de mémoire FIFO 55a. Un paquet de données reçu par le port de réception 52 est poussé vers le haut de la structure de 15 mémoire FIFO 55b. Le routeur de flux 55 comprend également un fil de distribution 55b permettant de lire le paquet de données en bas de la structure de mémoire FIFO 55a et de le pousser vers un ou plusieurs port(s) d'émission. 54 de l'émetteur de flux 53. Le fil de distribution 55b peut avoir accès au suivi de diffusion 20 qui se trouve chez l'hôte afin de déterminer vers quels port (s) d'émission 54 (c'est-à-dire les abonnés distants) un paquet de données reçu au niveau d'un port de réception 52 (c'est-à-dire une session d'utilisateur déterminée) et stocké dans la structure de mémoire FIFO doit être acheminé. Il peut également 25 avoir accès à l'en-tête du paquet de données pour identifier, le cas échéant, la session d'utilisateur à l'origine du paquet de données. Il convient de noter que les informations d'affichage 30 reçues dans un port de réception 52 peuvent être copiées vers de multiples ports d'émission 54 pour être transmises à de multiples abonnés distants. Ceci est le cas lorsque de multiples abonnés distants se sont abonnés pour recevoir des informations de session de la .même session d'utilisateur. De même, les 35 informations de session de multiples sessions d'utilisateur sont 15 reçues dans de multiples ports de réception 52 et Peuvent être acheminées vers un port d'émission 54 unique pour être transmises à un abonné distant unique. Ceci est tout particulièrement le cas lorsque l'abonné distant est un serveur HTTP, qui redistribue 5 les informations de session d'une pluralité de sessions d'utilisateur à d'autres ordinateurs connectés au réseau. Comme cela a été mentionné ci-dessus et représenté sur la figure 3, l'architecture informatique compatible avec 10 l'invention peut comprendre une pluralité d'hôtes 1, l', chaque hôte comprenant une plateforme de diffusion 5, 5'. Un abonné distant 4" peut se connecter sur l'émetteur de flux 53 d'une première plateforme de diffusion 5 qui se trouve chez un premier hôte 1, pour recevoir les informations de session d'une session 15 d'utilisateur 3' hébergée sur un serveur 2' d'un second hôte l', et fournir des informations de session à l'émetteur de flux 51' d'une seconde plateforme de diffusion 5' du second hôte 1'. Dans une configuration telle que celle-ci, il est avantageux de fournir une liaison à haut débit entre le routeur de flux 55 de 20 la première plateforme de diffusion. 5 et le second transmetteur de flux 55' de la seconde plateforme de diffusion 5'. Grâce à cette liaison à haut débit, les routeurs de flux 55, 55' peuvent copier le port de réception de l'une des plateformes de diffusion 5, 5' dans le port d'émission de l'autre des plateformes de 25 diffusion 5, 5'. Interaction des abonnés avec une session d'utilisateur. Dans un mode de réalisation particulièrement avantageux 30 de la présente description, un abonné distant 4, 4', 4" peut également communiquer des informations d'abonné à la session d'utilisateur 3 à laquelle il est connecté par l'intermédiaire de la plateforme de diffusion 5. Les informations d'abonné peuvent comprendre toutes sortes de données ou d'informations de 35 commande, par exemple des informations de commande fournies par 16 un ou des dispositif(s) d'entrée qui se trouve(nt) à l'emplacement de chaque abonné distant.. Les dispositif d'entrée peuvent être de toute nature, par exemple, un clavier, une souris, un pavé tactile, un écran tactile, une manette, un masque 5 de réalité virtuelle. Les informations d'abonné peuvent également comprendre ou correspondre à des informations de service fournies par l'abonné distant 4, 4', 4". Les informations d'abonné peuvent être fournies par un dispositif d'entrée virtuel, c'est-à-dire un dispositif de traitement de 10 données qui fournit des informations pouvant être traitées par la session d'utilisateur. Les informations d'abonné, tout comme les informations de session, sont fournies sous la forme d'un flux de paquet de données, et comprennent un en-tête d'identification de l'abonné distant et/ou de la session 15 d'utilisateur à laquelle il a été souscrit, et comprennent les informations de charge active (c'est-à-dire les données relatives au dispositif d'entrées, les informations relatives au service, 20 Si une pluralité d'abonnés distants 4, 4', 4" reçoit des informations de session provenant de l'une des sessions d'utilisateur sélectionnées 3, la pluralité d'abonnés distants 4, 4', 4" peut fournir leurs informations d'abonné respectives à cette session d'utilisateur 3 particulière. Ceci permet à une 25 pluralité d'abonnés distants d'interagir simultanément avec la session d'utilisateur 3 choisie. Par exemple, un premier abonné distant peut être un ordinateur standard et interagir avec la session d'utilisateur en utilisant son clavier et sa souris comme dispositifs d'entrée, alors qu'un second abonné distant peut 30 être un Smartphone et interagir avec la session d'utilisateur 3 en utilisant un écran tactile ou un masque RIT. Le fait que des abonnés distants hétérogènes soient capables d'interagir simultanément avec la même session d'utilisateur est une caractéristique avantageuse de la présente description. 17 Les informations d'abonné peuvent être reçues par le programme de diffusion de la session d'utilisateur 3, ou par d'autres processus gui sont en cours d'exécution dans la session d'utilisateur 3. Le programme de diffusion peut également être 5 utilisé pour autoriser ou bloquer la réception d'informations d'abonné, d'une manière générale pour des abonnés distants particuliers ou bien pour un type particulier de dispositifs d'entrée. Par exemple, un utilisateur peut configurer le programme de diffusion de telle manière que des abonnés ne lu puissent interagir avec la session d'utilisateur 3 qu'en utilisant leur clavier, tout autre type de dispositif d'entré étant rendu inopérant. Plus généralement, le programme de diffusion peut configurer tous les paramètres qui se rapportent aux informations fournies par les abonnés distants. 15 Dans ce mode de réalisation particulier, la plateforme de diffusion 5 est configurée pour permettre le transfert bidirectionnel des informations entre le récepteur de flux 51 et l'émetteur de flux 53. A cet effet, les ports 52, 54 sont 20 configurés pour être des ports bidirectionnels, c'est-à-dire des ports d'émission-réception. Le routeur de flux 55 transfère, de manière sélective, des informations de session provenant du port d'émission-réception 52 du récepteur de flux 51 vers le port d'émission-réception 54 de l'émetteur de flux 53, et transfère 25 également, de manière sélective, des informations d'abonné provenant des ports d émission-réception 54 de l'émetteur de flux 53 vers les ports d'émission-réception 52 du récepteur de L_Lux 51. 30 Pour interagir simultanément avec une session d'utilisateur 3 à partir d'une pluralité d'abonnés distants 4, 4', 4", les informations 'd'abonné de chaque abonné distant sont reçues au niveau d'une pluralité de ports d'émission-réception 54 d'un. émetteur de flux 53 et agrégées afin de former un flux de 35 commande. Le flux de commande est transféré au niveau du port d'émission-réception 52 du récepteur de flux 51 et fourni à la session d'utilisateur 3. Comme représenté sur la figure 3c, le 18 routeur de flux 55 peut être mis en oeuvre en tant que système bi-directionnel de mise en attente de messages. Le routeur de flux 55 comprend, pour chaque port d'émission-réception 52 du récepteur de flux 51, une première structure de mémoire FIFO 55a 5 et un premier fil de distribution 55b, similaire à celui qui est présenté en liaison avec la description de la figure 2b. Le routeur de flux 55 comprend également, pour chaque port d'émission-réception 52 d'un récepteur de flux 51, une seconde structure de mémoire FIFO 55a.' et un second fil de distribution. 10 55b'. Les informations d'abonné reçues, sous la forme de paquets de données, au niveau des ports d'émission-réception 54 de l'émetteur de flux 53 sont stockées en haut de la seconde structure de mémoire FIFO. Les informations d'en-tête de chaque paquet de données peuvent être décodées pour identifier le port 15 d'émission-réception 52 du récepteur de flux 51 vers lequel elles doivent être acheminées pour un stockage temporaire dans la structure de mémoire FIFO associée. Un mécanisme de blocage et de libération de la seconde structure de mémoire FIGO permet de coordonner la réception asynchrone des paquets de données 20 provenant de chaque port d'émission-réception 54, de telle sorte qu'ils puissent tous être stockés efficacement. La seconde structure FIFO 55e' agglomère en fait les informations d'abonné en un flux de commande, qui est ensuite 25 poussé, paquet par paquet, vers le port d'émission-réception. 52 du récepteur de flux 51 par le second fil de distribution 55b'. Comme on l'a expliqué dans la description de ce mode de réalisation, la plateforme de diffusion 5 est en. communication 30 avec les serveurs qui hébergent les sessions d'utilisateur. La plateforme de diffusîon 5 est configurée pour recevoir des informations d'abonné fournies par des abonnés distants 4, 4',4", chaque abonné distant étant associé à une session d'utilisateur 3 ; 35 agréger les informations d'abonné reçues qui sont fournies par les abonnés distants associés à la même session d'utilisateur afin de former une pluralité de 19 flux de commande, chaque flux de commande étant associé à une session d'utilisateur particulière ; fournir respectivement les flux de commande aux sessions d'utilisateur 3 associées. 5 Les informations de commande peuvent être décodées dès leur réception et traitées par la session d'utilisateur en fonction de leur nature. De cette façon, une pluralité d'abonnés à une session d'utilisateur interagissent simultanément avec la 10 session d'utilisateur. De nombreuses variantes du mode de réalisation décrit peuvent être comprises et effectuées par les spécialistes de la technique dans la mise en pratique de l'invention revendiquée, 15 d'après une étude des dessins, la description, et les revendications jointes. En particulier, il est possible de tirer parti de l'existence de la plateforme de diffusion 5, en particulier 20 lorsqu'elle est configuiée selon le mode de réalisation avantageux qui vient d'être présenté, pour communiquer de s informations d'affichage et de commande de chaque session d'utilisateur 3 de l'hôte 1 à son client distant 4, 4' correspondant. Dans ce cas, chaque client. distant 4, 4' se 25 connecte à un port d'émission-réception 53 de la plateforme de diffusion 5 exactement comme un abonné distant se connecterait. Dans cette configuration, il n'est pas nécessaire de fournir directement (c'est-à-dire sans passer par la plateforme de diffusion 5) des informations de session de chaque session d'utilisateur 3 à REVENDICATIONSI. Procédé d'interaction simultanée avec une session d'utilisateur (3) à partir d'une pluralité d'abonnés L; distants (4, 4', 4"), chaque abonné distant fournissant des informations d'abonné à. la session d'utilisateur (3), ledit procédé comprenant l'étape consistant à : - recevoir des informations d'abonné provenant de chaque abonné distant (4, 4', 4") au niveau de ports de 10 réception respectifs (54) d'une plateforme Hp diffusion (5) ; - agréger, au niveau de la plateforme de diffusion (5), les informations d'abonné afin de constituer un flux de commande ; 15 fournir, à partir d'un port d'émission (52) de la plateforme de diffusion (5), le flux de commande à la session d'utilisateur (3). 2. Procédé selon la revendication 1, dans lequel les 20 informations d'abonné sont reçues sous la forme de paquets de données, et l'étape 'a régation des informations de commande comprend le stockage des paquets de données dans une structure de mémoire FI PC) (55a'). 25 3. Procédé selon l'une quelconque des revendications précédentes, dans lequel la session d'utilisateur (3) est associée à un client distant (4, 4'), et le procédé comprend la transmission d'informations de session entre: la session. d'utilisateur (3) et son client associé (4, 30 4. Procédé selon l'une quelconque des revendications précédentes, dans lequel les informations d'abonné comprennent des informations fournies par au moins un. dispositif d'entrée choisi dans la liste consistant en : un 21 clavier, une souris, un pavé tactile, un écran tactile, une manette, un masque de réalité virtuelle. 5. Procédé selon la revendication précédente, dans lequel les dispositifs d'entrée d'au moins deux abonnés distants sont différents les uns des autres. 6. Ordinateur hôte (1) comprenant : - une pluralité de. serveurs (2), chacun étant configure pour exécuter une pluralité de sessions d'utilisateur (3) ; - une plateforme de diffusion en communication avec les serveurs (2) et configuree pour : recevoir des informations d'abonne fournies par ID des abonnes distants (4, 4',4"), chaque abonné distant étant associé à une session d'utilisateur (3) ; agréger des informations d'abonné reçues et qui sont fournies par des abonnés distants associés 20 à la même session d'utilisateur (3) afin de former une pluralité de flux de commande ; fournir les flux de commande aux sessions d'utilisateur (3) respectives.