Universal Plug and Play
# Universal Plug and Play

Universal Plug and Play (UPnP) è un protocollo di rete creato dall'UPnP Forum. L'obiettivo della tecnologia UPnP è quello di permettere a diversi terminali di connettersi l'uno all'altro e di semplificare drasticamente l'utilizzo di reti domestiche (condivisione dati, comunicazioni e intrattenimento) e aziendali. Il termine UPnP deriva da Plug and play che in inglese significa letteralmente Inserisci e utilizza e che indica la possibilità di utilizzare un componente non appena viene connesso al computer o alla rete.

Originariamente creato da Microsoft nell'ottobre 1999 come pacchetto di protocolli, UPnP è stato sviluppato ulteriormente dalla Open Connectivity Foundation (OCF), che dal 2016 ne gestisce tutti gli sforzi.

## Panoramica

L'architettura UPnP permette la creazione di una rete Peer-to-peer tra personal computer e periferiche di rete, wireless e non. È un'architettura aperta e distribuita basata sui protocolli Internet (IP, TCP, UDP (porta 1900) e HTTP).

UPnP permette la comunicazione di due periferiche nella rete in cui sia presente una periferica di controllo (un server o un router).

Caratteristiche principali:

* Indipendenza dal mezzo trasmissivo: UPnP è compatibile con linee telefoniche, linee a onde convogliate, Ethernet, IrDA, Wi-Fi, Bluetooth e Firewire.
* Nessun driver richiesto, in quanto vengono utilizzati protocolli comuni.
* Controllo con interfaccia grafica. I dispositivi possono essere controllati da un'interfaccia web tramite un web browser.
* Indipendenza dal sistema operativo e dai vari linguaggi di programmazione. Tutti i sistemi e i linguaggi possono essere utilizzati per gestire un dispositivo UPnP.
* Tecnologie Internet-Based. UPnP è basato in particolare su IP, TCP, UDP, HTTP e XML.

L'architettura UPnP supporta zero-configuration, invisible networking, e la ricerca automatica di periferiche: ogni dispositivo può automaticamente connettersi a una rete, ottenere un indirizzo IP, annunciare il suo nome, offrire le sue funzionalità alla rete e conoscere la presenza e le funzionalità degli altri dispositivi. Non sono indispensabili server DHCP o DNS, ma vengono utilizzati se presenti. Inoltre, i dispositivi possono lasciare la rete automaticamente senza inviare informazioni sullo stato.

