UPnP通用隨插即用

來源:互聯網
上載者:User

來自維基百科-自由的百科全書。非**似的 b***u搜尋。

通用隨插即用(UPnP)是由通用隨插即用論壇(UPnP
Forum)提出的一套網路通訊協定。該協議的目標是使家用網路(資料共用、通訊和娛樂)

和公司網路中的各種裝置能夠相互無縫串連,並簡化相關網路的實現。UPnP 通過定義和發布基於開放、網際網路通訊網協議標準的 UPnP 裝置控制

協議來實現這一目標。

UPnP 這個詞是從隨插即用(Plug-and-play)衍生而來的。隨插即用是一種熱拔插技術。

概述

UPnP 體系允許 PC 間的點對點連接、網際互連和無線裝置。它是一種基於 TCP/IP、UDP 和 HTTP 的分布式、開放體系。

UPnP 使得任意兩個裝置能在 LAN 控制裝置的管理下相互連信。其特性包括:

  • 傳輸介質和裝置獨立。UPnP 技術可以應用在許多媒體上,包括電話線、電線(電力線通訊PLC)、乙太網路、紅外通訊技術(IrDA)、無線電(Wi-Fi,藍芽)和Firewire(1394)。無需任務裝置驅動;而是採用共同的協議。
  • 使用者介面(UI)控制。UPnP 技術使得裝置廠商可以通過網頁瀏覽器來控制裝置並進行互動。
  • 作業系統和程式語言獨立。任何作業系統和程式語言均可以用於構建 UPnP產品。UPnP 並沒有設定或限制運行於控制裝置上的應用程式 API;OS廠商可以創
                          建滿 足他們客戶需求的 API。UPnP使得廠商可以像開發常規應用程式一樣來控制裝置 UI 和互動。
  • 基於網際網路技術。UPnP 構建於 IP, TCP, UDP, HTTP,和 XML 等許多協議之上。
  • 編程式控制制。UPnP 體系同時支援常規應用程式編程式控制制。
  • 擴充性。每個 UPnP 裝置都可以有構建於基本體系之上、與具體裝置相關的服務。

UPnP 支援零配置,"看不見的網路" 和自動檢測;任何裝置能自動加入一個網路, 擷取一個 IP 位址,宣布自己的名字,根據請求檢查自身功能以及檢測出其它裝置                      和它們的功能。DHCP 和 DNS 服務是可選的,並只有它們在網路上存在的時候才會
使用。裝置可以自動離開網路而不會遺留下任何不需要的狀態資訊。

UPnP 的基礎是 IP 位址解析。每一個裝置都應當有一個 DHCP 用戶端並在連入網 絡的時候自動搜尋 DHCP 服務。如果沒有找到 DHCP 服務,也就是說網路是缺乏

管理狀態,那麼裝置必須給自己設定一個地址。如果在和 DHCP 伺服器互動的過程中, 裝置獲得了一個網域名稱(比如通過 DNS 伺服器或者 DNS 傳遞),那麼它應當

在接下 來的網路操作中使用這個網域名稱;否則,裝置應當使用它的 IP 位址。

協議

發現

給定一個IP地址,UPnP 網路中的第一步是發現。當一個裝置被加入到網路中, UPnP檢測協議允許該裝置向控制點廣播自己的服務。類似地,當一個控制點加入到 網路中的時候,它也能夠搜尋到網路中存在的、感興趣的裝置相關資訊。這兩種類 型的基礎互動是一種僅包含少量、重要相關裝置資訊或者它的某個服務。比如,類 型、標識和指向更詳細資料的連結。UPnP 檢測協議是基於簡單服務發現協議(SSDP)的。

描述

UPnP 網路的下一步是描述。當一個控制點檢測到一個裝置時,它對該裝置仍然知 甚少。為了使控制點瞭解更多關於該裝置的資訊或者和裝置進行互動,控制點必須 從裝置發出的檢測資訊中包含的 URL 擷取更多的資訊。某個裝置的 UPnP 描述是 XML 的方式,包括品牌、廠商相關資訊,如型號名和編號、序號、廠商名、品牌 相關 URL 等。描述還包括一個嵌入式裝置和服務列表,以及控制、事件傳遞和存
在相關的 URL。對於每種裝置,描述還包括一個命令或動作列表,包括響應何種服 務,針對各種動作的參數;這些變數描述出運行時裝置的狀態資訊,並通過它們的 資料類型、範圍和事件來進行描述。

控制UPnP 網路的下一步是控制。當一個控制點擷取到裝置描述資訊之後,它就可以向該 裝置發送指令了。為了實現此,控制點發送一個合適的控制訊息至服務相關控制 URL(包含在裝置描述中)。控制訊息也是通過簡易物件存取通訊協定 (SOAP)(SOAP)用
XML 來描 述的。類似函數調用,服務通過返回動作相關的值來回應控制訊息。動作的效果, 如果有的話,會反應在用於刻畫運行中服務的相關變數。

事件通知

下一步是事件通知。一個 UPnP 描述包括一組命令欄表和刻畫運行時狀態資訊的變 量。服務在這些變數改變的時候進行更新,控制點可以進行訂閱以擷取相關改變。 服務通過發送事件訊息來發布更新。事件訊息包括一個或多個狀態資訊變數以及它 們的當前數值。這些訊息也是採用 XML 的格式,用通用事件通知體系(GENA)進行
格式化。一個特殊的初始化訊息會在控制點第一次訂閱的時候發送,它包括服務相 關的變數名及值。為了支援多個控制點並存的情形,事件通知被設計成對於所有的 控制點都平行通知。因此,所有的訂閱者同等地收到所有事件通知。

存在

最後一步是存在。如果裝置帶有存在 URL,那麼控制點可以通過它來擷取裝置存在 資訊,即在瀏覽器中載入 URL,並允許使用者來進行相關控制或查看操作。具體支援 哪些操作則是由存在頁面和裝置完成的。

參考資料

  • UPnP Forum Universal Plug and
    Play Device Standards
  • Golden G. Richard:Service
    and Device Discovery : Protocols and Programming
    , McGraw-Hill Professional, ISBN
    0-07-137959-2
  • Michael Jeronimo,Jack
    Weast:UPnP Design by Example: A Software Developer's Guide to Universal Plug and Play, Intel Press, ISBN
    0-9717861-1-9

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.