- UPNP
-
Universal Plug and Play
Pile de protocoles 7 • Application 6 • Présentation 5 • Session 4 • Transport 3 • Réseau 2 • Liaison 1 • Physique Modèle Internet
Modèle OSIL’Universal Plug and Play (UPnP) est un protocole réseau promulgué par l'UPnP Forum. Le but de l'UPnP est de permettre à des périphériques de se connecter aisément et de simplifier la mise en oeuvre de réseaux à la maison (partages de fichiers, communications, divertissements) ou dans les entreprises. UPnP le permet en définissant et en publiant les protocoles de commande UPnP au-dessus des standards de communication de l'Internet.
Le terme UPnP est dérivé de Plug and Play, une technologie pour attacher dynamiquement les périphériques à l'ordinateur.
Sommaire
Présentation
L'architecture UPnP permet une mise en réseau poste à poste d'ordinateurs personnels, d'appareils réseaux et de périphériques sans fil. C'est une architecture ouverte, distribuée, basée sur les protocoles TCP/IP, UDP et HTTP.
UPnP permet la communication entre deux dispositifs quelconques sur le réseau local. Parmi ses possibilités :
- Indépendance vis-à-vis des médias et des périphériques : UPnP peut être utilisé sur plusieurs supports dont le courants porteurs en ligne, l'Ethernet, l'IrDA, les radiofréquences (Wi-Fi, Bluetooth), FireWire, MoCA.
Aucun pilote spécifique n'est utilisé, des protocoles communs leurs sont préférés.
- Contrôle par interface utilisateur (UI Control). L'architecture d'UPnP permet le contrôle des dispositifs par une interface utilisateur visible depuis un navigateur web.
- Indépendance vis-à-vis du système d'exploitation et du langage de programmation. Tout système d'exploitation et tout langage de programmation peut être utilisé pour créer des produits UPnP. UPnP ne spécifie ni ne contraint d'API pour les applications exécutées sur des points de contrôle ; les fournisseurs de systèmes d'exploitations peuvent créer les API dont les clients ont besoin.
- Basé sur les technologies internet : entre autres IP, TCP, UDP, HTTP et XML.
- Contrôle applicatif. L'architecture d'UPnP permet également un contrôle par des applications conventionnelles, des programmes.
- Extensibilité. Chaque produit UPnP peut implémenter des services spécifiques à ses périphériques au dessus de l'architecture de base.
L'architecture UPnP supporte la zéro configuration, le « réseau invisible » et la découverte automatique pour plusieurs catégories de périphériques. Chaque périphérique peut joindre dynamiquement un réseau, obtenir une adresse IP, annoncer son nom, préciser ses possibilités sur simple demande et interroger les autres périphériques sur leur présence et leurs capacités. Les serveurs DHCP et DNS sont facultatifs et ne sont utilisés que s'ils sont présents sur le réseau. Les périphériques peuvent se déconnecter du réseau automatiquement sans laisser d'informations erronées.
La base du réseau UPnP est l'adressage IP. Chaque périphérique doit avoir un client DHCP et rechercher un serveur DHCP quand il est connecté pour la première fois au réseau. Si aucun serveur DHCP n'est disponible, c'est-à-dire que le réseau n'est pas géré, le périphérique s'assigne lui-même une adresse. Si durant les transactions DHCP, le périphérique obtient un nom de domaine, par exemple, par un serveur DNS ou via le DNS forwarding, le périphérique devrait utiliser ce nom pour chaque opération réseau sinon il doit utiliser son adresse IP.
Le protocole
Découverte (discovery)
Pour une adresse IP donnée, la première étape de la gestion d'un réseau UPnP est la découverte de services. Quand un périphérique est connecté au réseau, le protocole de découverte d'UPnP permet à ce dispositif de prévenir les points de contrôle du réseau de ses services. Parallèlement, quand un point de contrôle est connecté au réseau, le protocole de découverte permet à ce point de contrôle de rechercher les dispositifs intéressants sur le réseau. Les échanges fondamentaux dans ces deux cas, sont des messages contenants les informations spécifiques essentielles sur le dispositif et un de ses services, comme, par exemple, son type, son identifiant ou un pointeur vers des informations plus détaillées. Le protocole de découverte UPnP est basé sur SSDP.
Description
L'étape suivante dans un réseau UPnP est la description. Quand un point de contrôle a découvert un dispositif, il ne lui connaît que peu d'informations.
Pour qu'un point de contrôle puisse en apprendre davantage sur le dispositif et ses possibilités, ou pour interagir avec celui-ci, il doit récupérer la description du dispositif depuis l'URL fournie par celui-ci dans le message de découverte.
La description UPnP d'un dispositif est exprimée en XML et comprend des informations spécifiques au fournisseur du dispositif comme le nom du modèle, le numéro de série ou le nom du fournisseur, des URL vers les sites web des fournisseurs.
Ces descriptions incluent également une liste des dispositifs embarqués ou services ainsi que les URL pour les commandes, les contrôles ou les présentations.
Pour chaque service, la description inclut une liste de commandes ou d'actions auxquelles le service répond et les paramètres ou arguments pour chacune de ces actions.
La description de service inclut également la liste des variables décrivant l'état de ce service pendant son exécution en termes de types de données, de plage de valeurs ou de caractéristiques d'évènements.
Contrôle (control)
L'étape suivante est le contrôle. Après qu'un point de contrôle a reçu une description du dispositif, celui-ci peut envoyer des actions au service d'un dispositif. Pour cela, un point de contrôle envoie un message de contrôle approprié à l'URL de contrôle du service (fournie par la description du dispositif). Les messages de contrôle sont également décrits en XML en utilisant SOAP. Comme tout appel de fonction, en réponse aux messages de contrôle, les services renvoient des valeurs spécifiques aux actions. Les effets de ces actions, le cas échéant, sont visibles par le changement des variables qui décrivent l'état d'exécution du service.
Notification d'événements (event notification)
Après le contrôle vient la notification d'évènement.
Une description de service UPnP inclut une liste d'actions auxquelles le service répond et une liste des variables qui caractérisent le service à l'exécution.
Quand ses variables changent, le service publie des mises à jour.
Les mises à jours sont des messages XML de type GENA contenant le nom des variables et leurs valeurs.
Les points de contrôles peuvent s'abonner pour les recevoir.
Un message initial particulier est envoyé quand un point de contrôle s'inscrit, ce message contient les noms et les valeurs de toutes les variables pour permettre à l'abonné de s'initialiser.
Pour supporter les scénarios de réseaux à plusieurs points de contrôle, la notification est prévue pour que tous les points de contrôles soient informés uniformément des effets de chaque action.
En conséquence, tout abonné reçoit des messages d'évènements pour toutes les variables « notifiantes » qui ont changé et des messages d'événements sont envoyés, quelle que soit la raison pour laquelle l'état de la variable a changé (que le changement soit le résultat d'une action ou parce que l'état du service a changé).
Présentation
La dernière étape d'un réseau UPnP est la présentation. Si un dispositif a une URL de présentation, un point de contrôle peut recevoir une page depuis cette URL, charger la page dans un navigateur web et, selon les capacités de la page, permettre à un utilisateur de contrôler le dispositif et/ou de voir l'état d'un dispositif. Les possibilités d'une telle page peuvent changer en fonction des capacités du périphérique qui présente la page à l'utilisateur.
Standards audio et vidéo (UPnP AV standards)
UPnP AV (pour UPnP Audio and Video) est un groupe à l'intérieur du standard UPnP supervisé par la Dlna (anciennement : Digital Home Working Group), qui est un regroupement de constructeurs et vendeurs de l'industrie du divertissement à la maison (home entertainment) proposant le label "DLNA CERTIFIED™" ("certifié DLNA") pour les produits qui respectent leur guide d'interopérabilité pour périphériques réseau. Les membres du forum DLNA "partagent une vision de l'interopérabilité sur les réseaux câblés et sans-fils des ordinateurs personnels (PC), des matériels électroniques (Consumers Electronics - CE) et des périphériques mobiles à la maison permettant un environnement transparent (pour l'utilisateur) de partage et d'extension des nouveaux médias et des services de contenu" et "DLNA est attaché à fournir un cadre d'interopérabilité des guides de conception basés sur les standards ouverts de l'industrie pour compléter la convergence numérique. Le 12 juillet 2006, le Forum UPnP a annoncé la disponibilité des 'Spécifications étendues AV', cette réalisation est la version2 des spécifications Audio et Vidéo (UPnP AV v2), avec de nouvelles classes MediaServer version 2.0 et un MediaRenderer version 2.0. Ces perfectionnements sont créés par l'ajout de possibilités aux classes de dispositifs MediaServer et MediaRenderer permettant un meilleur niveau d'interopérabilité entre les MediaServers et MediaRenderers de différents constructeurs.
Les composants Audio et Vidéo d'UPnP AV
- UPnP MediaServer DCP : le serveur UPnP (un dispositif « esclave ») qui partage ses médias (comme l'audio, la vidéo, des images) avec les clients UPnP du réseau.
- UPnP MediaServer ControlPoint : le client UPnP (un dispositif « maitre ») qui peut détecter automatiquement les serveurs UPnP du réseau pour rechercher et visionner leurs fichiers.
- UPnP MediaRenderer DCP : dispositif « esclave » pouvant afficher du contenu.
- UPnP RenderingControl DCP : dispositif permettant de contrôler les paramètres de rendu d'un contenu : volume, brillance ...
- UPnP Remote User Interface (RUI) client/server : clients et serveurs UPnP qui peuvent envoyer des commandes sur le réseau (comme enregistrer, programmer, lecture, pause, stop, etc.).
- Web4CE (CEA 2014) for UPnP Remote UI[1] - Standard CEA-2014 conçu par le Home Network Committee R7 de la Consumer Electronics Association. Protocole basé sur des pages web pour les Remote User Interface des réseaux UPnP et Internet (Web4CE). Ce standard permet à un réseau résidentiel UPnP de fournir son interface (affichage et points de contrôles) comme une page web pour l'afficher sur n'importe quel périphérique connecté. C'est-à-dire que vous pouvez contrôler les périphériques du réseau résidentiel avec n'importe quelle méthode de communication basée sur la navigation web
pour les dispositifs CE sur un réseau résidentiel utilisant ethernet et une version spéciale de HTML appelé CE-HTML.
- QoS (Quality of Service) - La qualité de service est un service important (mais non obligatoire) pour l'utilisation d'UPnP AV. QoS se réfère au contrôle des mécanismes proposant différentes priorités aux différents utilisateurs des flux de données, ou garantit un certain niveau de performance à un flux de données en accord avec les requêtes des applications. Depuis que l'UPnP AV est surtout utilisé pour délivrer des médias en lecture en continu, qui sont souvent de l'audio/vidéo en proche temps réel, voire en temps réel, ce qui est critique à délivrer dans un temps donné ?? Les garanties QoS sont spécialement importantes si le réseau a une capacité limitée comme, par exemple, les réseaux publics comme l'Internet.
- QoS pour l'UPnP consiste en services de Sink Device (dispositif client récepteur) et Source Device (dispositif source émetteur). Avec des classes comme Traffic Class qui indique le type de trafic dans le flux de données (par exemple : audio ou vidéo). Traffic identifier (TID) qui identifie les paquets uniques de données dans le flux. Traffic Specification (TSPEC) qui contient les paramètres définissant les caractéristiques du traffic du flux (par exemple les opérations requises et l'ordonnancement). Traffic Stream (TS) qui est un flux unidirectionnel de données qui prend son origine à la source et se termine aux récepteurs d'un ou plusieurs dispositifs (sinks).
Traduction des adresses
UPnP utilise Internet Gateway Device pour la traduction des adresses réseaux (NAT traversal). Cette traduction permet aux paquets UPnP de passer à travers un routeur ou un pare-feu sans problèmes et sans interaction de l'utilisateur (si le routeur ou le pare-feu supporte NAT).
Problèmes d'UPnP
- UPnP utilise HTTP par-dessus UDP (aussi connu sous les sigles HTTPU et HTTPMU pour l'unicast et le multicast) bien que cette spécification ne soit pas standardisée et que son brouillon ait expiré en 2001.
- UPnP n'intègre pas de protocole léger d'authentification, les protocoles de sécurités disponibles sont complexes.
En conséquence, beaucoup de dispositifs sont implicitement déconnectés pour des questions de sécurité.
- Pour des raisons inconnues, l'utilisation de SSDP et d'UPnP sur certaines installations de Microsoft Windows XP provoque régulièrement la disparition des icônes de la barre des tâches[réf. nécessaire]
Développements futurs
Le standard Devices Profile for Web Services (DPWS) est un candidat à la succession d'UPnP. Il résout plusieurs problèmes d'UPnP et est notamment inclus dans Microsoft Windows Vista comme partie des technologies Windows Rally.
Serveurs de médias UPnP
Les serveurs de médias UPnP (UPnP AV MediaServers) enregistrent et partagent des médias électroniques comme des photographies, des films ou de la musique. Des serveurs de médias sont disponibles sur la plupart des systèmes d'exploitation et sur beaucoup de matériels. Les serveurs de médias sont logiciels ou matériels. Les serveurs logiciels peuvent tourner sur ordinateur personnel surtout sous Microsoft Windows, Linux, BSD, UNIX ou Mac OS X. Les serveurs matériels peuvent tourner sous tous dispositif de stockage réseau (NAS) ou sur tout dispositif matériel spécifique pour délivrer des médias, comme les enregistreurs vidéo personnels. Actuellement, il existe plus de serveurs logiciels que matériels, mais il est possible que le rapport change dans le futur.
Serveurs de médias UPnP logiciels
- EyeConnect, logiciel UPnP™ commercial transforme un Mac OS X en régie finale audio-vidéo-photo pour diffusion sur iPhone et iPod touch...
- Xbox Media Center (XBMC), un lecteur multimédia/Media Center libre et gratuit pour la console de jeux Xbox de Microsoft, ainsi que sur MAC OS X, Windows et Linux.
- Le code des clients et serveurs UPnP de la XBMC est extrait de Platinum UPnP C++ SDK (libre sous Licence publique générale GNU)
- Windows Media Connect (WMC) de Microsoft - serveur de médias et point de contrôle (client et serveur) UPnP pour Microsoft Windows
- Windows Media Connect version 2.0 peut être installé pour être utilisé avec Windows Media Player 10 pour Microsoft Windows XP
- Windows Media Connect version 3.0 peut être installé pour être utilisé avec Windows Media Player 11 pour Microsoft Windows XP
- Windows Media Connect version 4.0 est pré-installé sur Microsoft Windows Vista pour tourner avec Windows Media Player 11
- FreeNAS un système d'exploitation libre permettant de transformer un ordinateur (basé sur x86) en périphérique de stockage réseau (NAS). Le code du serveur UPnP est tiré du projet Portable Universal Plug and Play (UPnP) SDK
- AwoX mediaCTRL un Controlleur DLNA 1.5 commercial, serveur et renderer pour Microsoft Windows
- MythTV, un HTPC et PVR pour Linux avec un serveur de médias incorporé
- SnapStream Beyond TV (BTV), un serveur/renderer/contrôleur de médias commercial et PVR pour Microsoft Windows
- Musicmatch Jukebox un serveur de médias et lecteur de musique commercial pour Microsoft Windows
- Rhapsody par RealNetworks un serveur de médias commercial (avec service de musique en ligne) pour Microsoft Windows et Mac OS X, Rhapsody requiert une connexion chiffrée pour la Gestion numérique des droits
- PyMedS un serveur de médias libre en Python pour Windows/Mac OS X/Linux/UNIX
- GeeXboX un media center léger libre pour Linux
- MediaTomb un serveur de médias libre et gratuit pour Linux, Mac OS X, FreeBSD et Cygwin qui peut aussi lancer des services NAS
- TwonkyMedia un serveur de médias commercial léger pour Windows, Linux, MAC OS X et systèmes embarqués
- Nero MediaHome lecteur multimédia/media center logiciel commercial pour Windows composant de la suite logiciel de Nero
- Fuppes serveur de médias libre et gratuit, supporte l'encodage de divers formats audio en mp3
- TVersity serveur de médias gratuit permettant l'encodage à la volée en wmv
- SimpleCenter est un serveur de médias en Java
- Philips Media Manager est un serveur de médias gratuit pour Windows basé sur Streamium
- Coherence un framework python UPnP/DLNA offrant également un serveur de médias libre. Disponible pour BSD/Linux/Windows
- Opera Unite un serveur web gratuit inclus dans le navigateur web Opera. Disponible pour BSD/Linux/Solaris/Windows/Mac OS X/…
Serveurs de médias UPnP matériels
- Xbox console de jeux avec Xbox Media Center
- ICY BOX IB-NAS1000 NAS avec 30 jours d'essai de TwonkyMedia (peut être activé)
- ICY BOX IB-NAS2000 NAS avec 30 jours d'essai de TwonkyMedia (peut être activé)
- NSLU2 avec une version modifiée de ushare
- HP Media Vault un NAS d'HP avec un serveur Audio/Vidéo
- UPnP Home Automation system domotique UPnP
- NETGEAR ReadyNAS une gamme de NAS de NetGear (ex Infrant Technologies) supportant l'UPnP AV
- DLink - DNS-323 et DSM-G600 des NAS de D-Link supportant l'UPnP AV
- Linksys WRTSL54GS un routeur 'tout-en-un'
- Linksys WRT350N un routeur Wifi avec la particularité d'être équipé d'un switch Gigabit
- Synology Disk Station les NAS de Synology supportent l'UPnP AV depuis le firmware DSM 2.1
- Maxtor Shared Storage Plus lecteur incluant un serveur UPnP Mediabolic, le serveur UPnP Twonky est aussi disponible pour ce lecteur
- WESTERN DIGITAL My Book World Disque dur externe réseau incluant un serveur UPnP
- Cybervia Serveur média HDTV (incluant le serveur UPnP mediatomb).
- Ve-hotech VHS-4 Home Serveur UPnP AV intégrant Mediatomb et Fuppes.
- NAS Qnap Gamme de NAS de divers tailles incluant le serveur Twonky.
Clients UPnP AV (points de contrôle)
Les points de contrôle UPnP MediaServer sont des clients UPnP qui fonctionnent comme lecteurs audio/vidéo. Ils peuvent détecter automatiquement les serveurs UPnp sur le réseau pour naviguer et récupérer leurs fichiers/données multimédia.
Points de contrôles et lecteurs logiciels
- EyeConnect, logiciel UPnP™ commercial transforme un Mac OS X en régie finale audio-vidéo-photo pour diffusion sur iPhone et iPod touch...
- Playstation 3 console de jeux avec système d'exploitation en version 1.8 et supérieur.
- XBox 360 console de jeux avec Windows Media Connect.
- XBMC client libre et gratuit, lecteur multimédia/Media center pour la Xbox de Microsoft.
- Le clients et serveurs UPnP de XBMC sont construit autour de Platinum UPnP C++ SDK (bibliothèque à code ouvert - GPL).
- WinDVD d'InterVideo, un lecteur commercial de DVD vidéos et de fichiers vidéos pour Windows.
- PowerDVD de CyberLink, un lecteur commercial de DVD vidéos et de fichiers vidéos pour Windows.
- AwoX media CTRL, un contrôler DLNA 1.5 et serveur pour Windows.
- LobsterTunes, un lecteur de musique commercial pour les SmartPhones Windows Mobile qui peut également lire les radios internet et la TV.
- Musicmatch Jukebox, un serveur UPnP et lecteur de musique commercial pour Windows.
- Yahoo! Music Jukebox, un serveur UPnP et lecteur de musique gratuit pour Windows.
- Winamp, un lecteur multimédia gratuit pour Windows utilisant un plug-in On2Share UPnP.
- Windows Media Player 11 inclus avec Windows Vista ou avec le plug-in On2Share UPnP commercial pour Windows XP.
- GeeXboX, un media center sur liveCD léger et libre.
- Cidero, un point de contrôle UPnP et passerelle de radio internet libre.
- 4u2stream, un point de contrôle UPnP libre en technologie .NET, en utilisant peu de place à l'écran.
- Nero MediaHome, un media center commercial pour Windows livré avec la suite logicielle Nero product. Il inclut un client et un serveur UPnP. La dernière version est capable de capturer et diffuser la TV et d'encoder tous les formats communs vers d'autres clients UPnP.
- Nero ShowTime, un lecteur multimédia commercial.
- Windows Media Connect de Microsoft, un serveur et un point de contrôle) UPnP gratuit pour Windows
- Windows Media Connect 2.0 peut être installé et utilisé avec Windows Media Player 10 pour Windows XP
- Windows Media Connect 3.0 peut être installé et utilisé avec Windows Media Player 11 pour Windows XP
- Windows Media Connect 4.0 pré-installé avec Windows Vista et son Windows Media Player 11
Points de contrôles matériels
- Freebox, boîte du fournisseur d'accès à internet Free depuis le 14 mai 2009 [2]
- Philips RC9800i
- Philips Streamium
- Logik IR100
Afficheur de média matériels
- Freebox HD V5, equipement ADSL réservé aux abonnés de Free (Support uPnP AV à partir du firmware 1.5.11, menu "magneto")
- iPhone ou iPod touch, avec l'Apps PlugPlayer (Howard Abrams) ou iMediaSuite (Cyber Garage)
- Nokia 770, tablette internet avec le lecteur MediaStreamer
- Playstation 3, console de jeux avec le système d'exploitation 1.8 ou supérieur avec la Cross Media Bar.
- Xbox, console de jeux avec XBMC, un lecteur multimédia gratuit et libre.
- Xbox 360, console de jeux avec le Xbox 360 Dashboard.
- Loewe Connect, téléviseur avec Media Center intégré.
Lecteurs multimédia en réseau :
- LinkTheater™ de Buffalo Technology
- MediaLounge de D-Link
- GoVideo D2730 Networked DVD
- Gamme Helios
- NETGEAR Digital Entertainer HD EVA8000
- NETGEAR Digital Entertainer ELITE EVA9150
- Roku SoundBridge
- Wyplayer, disque dur multimédia enregistreur à double Tuner TNT HD, réseau Wifi et HDMI
- Zensonic Z500.
- Ziova
- Philips SLM5500
- Noxon Players
- CFULLHDMAi de Conceptronic, lecteur multimédia Full HD (vendu notamment par Cybervia SAS).
Voir aussi
Technologies similaires ou associées
- Zeroconf
- Apple Bonjour
- NAT-PMP
- Microsoft DPWS
- Jini
- SNMP
- OSGi
- Service Location Protocol
- Salutation
- CORBA
- File Area Networking
- Storage Area Network
- Network attached storage
- Data Storage Server
- Protocole réseau
Liens externes
Notes et références
- Portail de l’informatique
Catégorie : Protocole réseau
Wikimedia Foundation. 2010.