Universal Plug and Play: Porovnání verzí

Odebráno 26 bajtů ,  před 12 lety
Styl, typo
m (Robot: opravy pravopisu)
(Styl, typo)
'''Universal Plug and Play''' ('''UPnP''') je sada [[Počítačová_síť|síťových]] [[protokol (informatika)|protokolů]] vyhlašovaných [[UPnP Forum|UPnP Forem]].
Cílem UPnP je umožnit jednoduché připojení [[Periferie|periferních]] součástí [[počítač]]e a zjednodušítzjednodušit zavádění [[Počítačová_síť|sítí]] v domácnostech (sdílení dat, komunikace a zábava) i podnicích. UPnP toho dosahuje definováním a publikováním UPnP kontrolních protokolů zařízení postavených na otevřených, na [[Internet]]u založených komuikačníchkomunikačních [[standard]]ech.
 
Termín UPnP je odvozen od [[plug-and-play]], což je technologie pro dynamické připojování jednotek k počítači
 
 
== Přehled ==
[UPnP architektura<ref>http://www.upnp.org/resources/upnpresources.zip UPnP architectura]</ref> umožňuje [[peer-to-peer]] spojení počítačů, síťových zařízení a zařízení pro [[Bezdrátová komunikace|bezdrátovou komunikaci]]. JeJedná tose distribuovanáo otevřenádistribuovanou technologieotevřenou založenátechnologii založenou na stanovených standardech, jako jsou [[TCP/IP]], [[UDP]], [[Hypertext Transfer Protocol|HTTP]] a [[Extensible Markup Language|XML]].
 
UPnP architektura podporuje automatickou konfiguraci sítě. Zařízení kompatibilní s UPnP od libovolného výrobce se může dynamicky připojit k síti, obdržet [[IP adresa|IP adresu]], na vyžádání oznámit své schopnosti a dozvědět se schopnosti ostatních zařízení v síti. [[Dynamic Host Configuration Protocol|DHCP]] and [[Domain Name System|DNS]] servery jsou volitelné a jsou použity jen když jsou dostupné v síti. Zařízení mohou opustit síť automaticky bez zanechání nežádoucích stavových informací na pozadí.
 
Další vlastnosti UPnP :
; Nezávislosti sdělovacích prostředků a zařízení: UPnP technologie dokáže fungovat na mnoha mediích, která podporují IP (např. [[Ethernet]], [[FireWire]], [[IrDA]], komunikace přes elektrické vedení, [[Bluetooth]], [[Wi-Fi]]). Není potřeba žádný specialní ovladač zařízení, jsou používány společné protokoly.
;Kontrola uživatelským rozhraním : UPnP architektura umožňuje kontorolu zařízení přes uživatelské rozhraní a interaktivní použití přes [[webový prohlížeč]]
; Nezávislost na [[Operační systém|operačním systému]] a [[programovací jazyk|programovacím jazyku]] : K vytvoření UPnP produktu může být použit každý operační systém a každý programovací jazyk . UPnP nespecifikuje ani nepřikazuje vzhled [[API]] aplikací běžících v kontrolních bodech, výrobci OS mohou vytvořit API kterré jejich zákazníci potřebují.
; Programová kontrola: UPnP také umožňuje konvenční aplikaci programové kontroly.
; Rozšiřitelnost: Každý UPnP produkt může mít služby specifické pro zařízení nad rámec základní architektury.
 
 
==Protokol==
Základem UPnP sítí je IP adresace. Každé zařízení musí mít DHCP klienta a hledat DHCP server když se poprvé připojí do sítě. Pokud není DHCP server dostupný, tak si musí jednotka zařízení přiřadit adresu sama. Pokud během DHCP transakce obdrží jednotka jméno (např. přes [[DNS]]), může toto jméno používat v komunikaci v podsíti.
 
=== ObjevováníZjišťování (Discovery) ===
První krok po obdržení IP adresy je zjišťování ostatních zařízení na síti. Po připojení zařízení do sítě mu UPnP Discovery protokol umožní ohlásit své služby kontrolním bodům na síti. Podobně, pokud je přidán kontrolní bod, Discovery protokol mu umožní hledat na síti požadovaná zařízení. Základní prvek je v obou případech zpráva Discovery, obsahující několik základních specifik o daném zařízení či jeho službách, například jeho typ, indentifikátor a ukazatel na detailnější informace. UPnP Discovery protokol je založen na [[SSDP]] (Simple Service Discovery Protocol) navrženém firmami [[Microsoft]] a [[Hewlett-Packard]].
První krok po obdržení IP adresy je objevování ostatních zařízení na síti. Po připojení zařízení do sítě mu UPnP
Discovery protokol umožní ohlásit své služby kontrolním bodům na síti. Podobně, pokud je přidán kontrolní bod, Discovery protokol mu umožní hledat na síti požadovaná zařízení. Základní prvek je v obou případech zpráva
Discovery, obsahující několik základních specifik o daném zařízení či jeho službách, například jeho typ,
indentifikátor a ukazatel na detailnější informace.UPnP Discovery protokol je založen na [[SSDP]] (Simple Service
Discovery Protocol) navrženém firmami [[Microsoft]] a [[Hewlett-Packard]].
 
=== Popis (Description) ===
Dalším krokem UPnP je Popis. Po té, co kontrolní bod v předchozím kroku objeví zařízení, stále o něm nemá dostatek informací (o zařízení a jeho službách). Musí tedy získat popis zařízení z [[URL]] poskytnutého v Discovery zprávě. Popis zařízení je v UPnP poskytován ve formě [[XML]] a zahrnuje výrobní údaje jako například jméno a označení zařízení, sériové číslo, název výrobce a URL na jeho webové stránky, apod. Popis také zahrnuje seznam intergrovaných zařízení a služeb, URL pro jejich ovládání. Ke každé službě je také poskytnut seznam příkazů či akcí na které služba reaguje, jejich parametry a proměnné, které určují stav služby.
Dalším krokem UPnP je Popis. Po té, co kontrolní bod v předchozím kroku objeví zařízení, o něm stále nemá dostatek
informací o zařízení a jeho službách. Musí tedy získat popis zařízení z [[URL]] poskynutého v Discovery zprávě.
Popis zařízení je v UPnP poskytován ve formě [[XML]] a zahrnuje výrobní údaje jako například jméno a označení
zařízení, sériové číslo, název výrobce a URL na jeho webové stránky, apod. Popis také zahrnuje seznam
intergrovaných zařízení a služeb, URL pro jejich ovládání. Ke každé službě je také poskytnut seznam příkazů či
akcí na které služba reaguje, jejich parametry a proměnné, které určují stav služby.
 
=== Ovládání (Control) ===
Po obdržení popisu zařízení může kontrolní bod komunikovat se službami daného zařízení. Komunikace probíhá přes kontrolní zprávy, posílané na URL služby (poskytnuté v popisu). Zprávy jsou ve formě XML a používají [[SOAP]] (Simple Object Acces Protocol). Po obdržení kontrolní zprávy služba vrací specifické hodnoty, případné učinky akce jsou vyjádřeny změnami stavových proměnných.
kontrolní zprávy, posílané na URL služby (poskytnuté v popisu). Zprávy jsou ve formě XML a používají [[SOAP]]
(Simple Object Acces Protocol). Po obdržení kontrolní zprávy služba vrací specifické hodnoty, případné učinky akce
jsou vyjádřeny změnami stavových proměnných.
 
=== Upozornění o události (Event notification) ===
Popis služby zahrnuje seznam akcí na které služba reaguje a seznam proměnných které charakterizují stav služby. Služba zveřejňuje aktualizace pokud dojde ke změně některé z těchto proměnných a kontrolní bod může odebírat tyto aktualizované informace. Aktualizace probíhá posláním zprávy o události. Zpráva o události obsahuje název jedné nebo více stavových proměnných a jejich aktualizované hodnoty. Tyto zprávy jsou vyjádřeny v XML a jsou formátovány pomocí [[GENA]] (General Event Notification Architecture). Při prvním přihlášení kontrolního bodu je odeslána speciální inicializační zpráva, obsahující jména a hodnoty všech proměnných, sloužící k inicializaci stavu služby na straně kontrolního bodu. Pro podporu více kontrolních bodů je zasíláni zpráv navrhnuto tak, aby měl každý kontrolní bod stejný přehled o všech změnách. Každý z odběratelů zpráv dostává všechny zprávy o událostech a jsou mu zaslány zprávy o všech proměnných které se změnily.
Popis služby zahrnuje seznam akcí na které služba reaguje a seznam proměnných které charakterizují stav služby.
Služba zveřejňuje aktualizace pokud dojde ke změně některé z těchto proměnných a kontrolní bod může odebírat tyto
aktualizované informace. Aktualizace probíhá posláním zprávy o události. Zpráva o události obsahuje název jedné
nebo více stavových proměnných a jejich aktualizované hodnoty. Tyto zprávy jsou vyjádřeny v XML a jsou formátovány
pomocí [[GENA]] (General Event Notification Architecture). Při prvním přihlášení kontrolního bodu je odeslána
speciální inicializační zpráva, obsahující jména a hodnoty všech proměnných, sloužící k inicializaci stavu služby
na straně kontrolního bodu. Pro podporu více kontrolních bodů je zasíláni zpráv navrhnuto tak, aby měl každý
kontrolní bod stejný přehled o všech změnách. Každý z odebiratelů zpráv dostává všechny zprávy o událostech a jsou
mu zaslány zprávy o všech proměnných které se změnily.
 
=== Prezentace (Presentation) ===
Finálním krokem v UPnP je prezentace. Pokud má zařízení URL k prezentaci, může kontrolní bod získat stránku z této URL, zobrazit ji v prohlížeči a případně umožnit uživateli ovládat zařízeni, či zjistit jeho stav. Stupeň této prezentace závisí na možnostech daného zařízení a jeho prezentační stránky.
URL, zobrazit ji v prohlížeči a případně umožnit uživateli ovládat zařízeni, či zjistit jeho stav. Stupeň této
prezentace závisí na možnostech daného zařízení a jeho prezentační stránky.
 
==NAT traversal==
Jedno z řešení pro [[NAT|NAT traversal]], nazvané IGD (Internet Gateway Device) Protokol, je [[implementace|implementováno]] přes UPnP. Mnoho [[router|routerů]] a [[firewall|firewallů]] se používá jako Internetové [[Gateway|brány]], umožnující jakémukoliv lokálnímu UPnP zařízení provádět množství akcí, zahrnující získání externí IP adresy zařízení, zjištění existujícího namapování portů a namapovat či odebrat port. Namapováním portu může UPnP zařízení za Internetovou bránou vytvořit tunel v bráně a umožnit externí adrese spojení s interním klientem.
Jedno z řešení pro [[NAT|NAT traversal]], nazvané IGD (Internet Gateway Device) Protokol, je
[[implementace|implementováno]] přes UPnP. Mnoho [[router|routerů]] a [[firewall|firewallů]] se používá jako
Internetové [[Gateway|brány]], umožnující jakémukoliv lokálnímu UPnP zařízení provádět množství akcí, zahrnující
získání externí IP adresy zařízení, zjištění existujícího namapování portů a namapovat či odebrat port.
Namapováním portu může UPnP zařízení za Internetovou bránou vytvořit tunel v bráně a umožnit externí adrese
spojení s interním klientem.
 
==Problémy s UPnP==
===Nedostatečná Autentizace===
UPnP protokol neimplementuje žádnou [[autentizace|autentizaci]], takže UPnP zařízení musí implementovat jejich vlastní autentizační mechanismy, nebo implementovat Device Security Service. Bohužel hodně UPnP zařízení postrádá autentizační mechanismy a standardně předpokládá, že lokální systémy a jejich uživatelé jsou plně důvěryhodní. Routery a firewally na kterých běží UPnP IGD protokol, jsou napadnutelné, protože kostra IGD implementace opomíjí standardní autentizační metodu. Například programy vytvořené v [[Adobe Flash]] jsou schopné generování specifických HTTP dotazů. Router s implementací UPnP IGD protokolu pak může být pomocí těchto dotazů kontrolován škodlivými stránkami, stačí aby uživatel s routerem na kterém je povoleno UPnP tyto stránky pouze navštívil. Kód vložený do Flashového objektu na stránce pak může bez vědomí uživatele provést následující akce:
UPnP protokol neimplentuje žádnou [[autentizace|autentizaci]], takže UPnP zařízení musí implementovat jejich
vlastní autentizační mechanismy, nebo implementovat Device Security Service. Bohužel hodně UPnP zařízení postrádá
autentizační mechanismy a standardně předpokládá, že lokální systémy a jejich uživatelé jsou plně důvěryhodní.
Routery a firewally na kterých běží UPnP IGD protokol, jsou napadnutelné, protože kostra IGD implementace opomíjí
standardní autentizační methodu. Například programy vytvořené v [[Adobe Flash]] jsou schopné generování
specifických HTTP dotazů. Router s implementací UPnP IGD protokolu pak může být pomocí těchto dotazů kontrolován
škodlivými stránkami, stačí aby uživatel s routerem na kterém je povoleno UPnP tyto stránky pouze navštívil. Kód
vložený do Flashového objektu na stránce pak může bez vědomí uživatele provést následující akce:
 
*[[Přesměrování_portů|Přesměrovánípřesměrování]] interních služeb (portů) na internetovou stranu routeru (např. vystavení počítače za Firewallem akcím z Internetu, například ůtokůmútokům).
*Přesměrovánípřesměrování webového administračního rozhraní zařízení (např. routeru) na inetrnetovouinternetovou stranu routeru.
*Přesměrovánípřesměrování na jakýkoliv server na Internetu, umožnující útočníkovi napadnout daný server bez odhalení útočníkovy IP adresy.
*Změnitzměnit nastavení [[DNS]], umožnující [[Phishing|oklamání]] oběti (např. místo stránky internetové banky je oběti zobrazena podvodná stránka).
*Změnitzměnit přihlašovací údaje k routeru/firewallu.
*Změnitzměnit nastavení [[Point-to-Point_Protocol|PPP]].
*Změnitzměnit IP adresu pro webové rozhraní zařízení.
*Změnitzměnit nastavení [[Wi-Fi]]
 
Tyto problémy se vztahují pouze k UPnP vlastnosti Firewall-hole-punching. Nevztahují se k routerům nepodporujícím UPnP, či k routerům s vypnutou podporou UPnP. Také ne všechny routery mají věci jako nastavení DNS řešeno přes UPnP, protože implementace mnoha vlastností specifikace pro routery s podporou UPnP je volitelná.
 
===Ostatní Problémy===
* UPnP používá nestandardní HTTPU (HTTP využívající [[UDP]] místo [[TCP]]) a HTTPMU, popsané pouze v návrhu I-D ([[RFC|Internet-Draft]]), který vypršel v roce 2001.
* Navzdorynavzdory komplexním bezpečnostním protokolům UPnP postrádá autentizační protokol., Mnohoproto má mnoho UPnP zařízení má tedyimplicitně UPnP defaultně vypnuto, jako formu bezpečnostního opatření.
 
==Vývoj do budoucna==
Kandidátem na nástupce UPnP je DWPS Standart, který řeší mnoho UPnP problémů. DWPS klient je například součástí [[Windows Vista]]. Další alternativou je [[NAT|NAT-PMP]] návrh předložený firmou [[Apple]] v roce 2005.
 
UPnP 1.1 bylo na podzim roku 2008 ratifikováno UPnP fórem jako nástupce UPnP 1.0 .
Další alternativou je [[NAT|NAT-PMP]], návrh předložený firmou [[Apple]] v roce 2005.
 
== Reference ==
UPnP 1.1 bylo na podzim roku 2008 ratifikováno UPnP fórem jako nástupce UPnP 1.0 .
<references />
 
== Externí odkazy ==
* [http://upnp.org/standardizeddcps/default.asp UPnP™ Forum: Universal Plug and Play Device Standards]
 
 
{{Překlad|en|Universal_Plug_and_Play}}