專利名稱:用于公共網絡環境中的upnp服務的設備和方法
技術領域:
本發明的各方面涉及一種用于公共網絡環境中的通用即插即用(UPnP)服 務的設備和方法,更具體地講,涉及一種構建專用網絡并去除不必要的UPnP 通信量以在比如公寓大樓的公共網絡環境中支持UPnP服務的設備和方法。
背景技術:
最近,隨著互聯網的廣泛使用以及數字技術的發展,有關行業正在從事 改進家庭聯網技術,以在家中連接PC、網絡設備、音頻/視頻(A/V)設備、電 子家庭裝置、家庭自動化裝置等。
通用即插即用(UPnP)是家庭網絡領域中的主要行業標準之一,它提供多 種UPnP服務(比如使用UPnP裝置發現功能搜索執行UPnP功能的所有裝置, 以及通過UPnP控制點來執行裝置控制、媒體播放和媒體傳輸)。
在UPnP裝置檢測處理中,發送IP多播包以檢測UPnP裝置,并且相應
的UPnP裝置通過單播響應包傳輸,所述單播是一種用于在網絡上單個發送 器和單個接收器之間執行通信的通信系統。
圖1是示出公共網絡的結構的示圖。通常,在圖l示出的網絡結構中, 公共IP和專用IP共存于比如公寓大樓(apartment complex)或工廠大樓 (industrial complex)的大規模網絡環境中。在下面的描述中,公寓大樓結構將 作為示例。
大樓路由器101是用于在公共IP和專用IP之間提供連接的路由器或網 關。在從大樓中分配的專用IP向外部發送數據的情況下,大樓路由器101執 行將數據映射到已經被限制性分配的公共IP的操作。在向專用IP發送通過 公共IP接收的數據的情況下,大樓路由器執行將數據映射到相應的專用IP 的操作。大樓路由器101還準備、管理和轉換映射表。
公寓單元或層單元連接裝置102是這樣的裝置它將大樓中的專用IP分 發到公寓大樓的各家和各層,并執行相應IP的交換或路由。根據大樓中家庭 的數目,連接裝置102被構造為執行集線器的功能,或者執行交換功能或路 由功能。
家庭連接裝置103執行與各個家庭的IP裝置的連接,向外部發送家庭中 產生的數據,以及向家庭中的IP裝置傳送流到家庭的數據。通常,家庭連接 裝置103包括用作轉發器、集線器和路由器的復用器。
UPnP家庭網絡104可以是包括用于使用UPnP功能的共享服務的UPnP 裝置103a,并且能夠在IP網絡被共享的環境下執行服務和裝置的自動共享的 服務網絡。UPnP裝置103a包括在UPnP裝置架構中定義的所有IP裝置和具 有UPnP模塊的控制點以及在UPnP AV架構中定義的UPnP媒體服務器、渲 染器和AV控制點。
在圖l中,定義的網絡以IPC類或子類為單位來定義各個家庭。因此, 所有的UPnP多播包可通過集線器、交換機、路由器等被發送到其他家庭。
然而,由于UPnP多播包具有TTL(生存時間)值4并且使用多播地址被 發送的事實而存在問題。設置TTL值為4指示可通過四個路由器來執行發送。 因此,在如圖l所示的定義的網絡中,發送的UPnP多播包可到達所有家庭 的UPnP裝置103a。另外,通過使用多播地址,能夠識別和分析相應的多播 IP的所有裝置可響應UPnP多播包。
因此,所有家庭的具有UPnP模塊的裝置可接收UPnP裝置發現多播包, 響應并發送請求包。然而,這引起UPnP內容和控制裝置的共享不以家庭為 單位而執行,而是以整個單元(即,所有的家庭)而執行的問題。
結果,不能保護隱私(包括個人隱私和家庭成員的內容),也不能保證控 制裝置的安全性,從而裝置易受到嚴重攻擊。
因此,在將UPnP應用到網絡時,需要劃分家庭網絡以按照家庭為單位 保證隱私保護和安全性的方案。
另外,由于多播包總是被發送到所有的端口,并且已經接收到相應多播 包的裝置使用單播包作出響應,所以這可能會影響整個網絡通信量開銷。結 果,多播包被拷貝并被發送到所有端口,這可引起公寓單元或層單元連接裝 置102的處理性能降低。
為了保證UPnP裝置的安全性并防止UPnP裝置的性能降低,公開號為
2005-0240758的美國未審查專利公開了 一種"controlling device on an internal network from an external network"。 然而,上述問題仍沒有解決。
發明內容
本發明的各方面提供了 一種保護隱私(包括個人隱私和以公共網絡為單 元的內容)的用于公共網絡環境中的通用即插即用(UPnP)服務的設備和方法。
本發明的各方面還提供了這樣一種用于公共網絡環境中的UPnP服務的 設備和方法,所述設備和方法通過減小由UPnP多播包引起的不必要的網絡 通信量的發生來防止公寓單元或層單元連接裝置的性能的降低。
根據本發明的一方面,提供了 一種用于公共網絡環境中的通用即插即用 (UPnP)服務的設備,所述設備包括UPnP多播監控模塊,監控輸入幀,并且 如果該幀是UPnP多播幀,則請求丟棄該幀;丟棄控制模塊,如果UPnP多播 監控模塊請求丟棄該幀,則丟棄控制模塊丟棄該幀;切換管理模塊,登記和 管理關于丟棄的幀的信息。
根據本發明的另 一方面,提供了 一種用于公共網絡環境中的通用即插即 用(UPnP)服務的方法,所述方法包括監控輸入幀;如果該幀是UPnP多播 幀,則請求丟棄該幀;如果請求丟棄該幀,則丟棄該幀;登記和管理關于丟 棄的幀的信息。
根據本發明的一方面,提供了 一種用于公共網絡環境中的通用即插即用 (UPnP)服務的設備,所述設備包括UPnP多播監控模塊,確定輸入幀是否是 UPnP多播幀;丟棄控制模塊,如果UPnP多播監控模塊確定該幀是UPnP多 播幀,則丟棄控制模塊丟棄該幀。
根據本發明的另 一方面,提供了 一種用于公共網絡環境中的通用即插即 用(UPnP)服務的方法,所述方法包括確定輸入幀是否是UPnP多播幀;如 果該幀被確定為是UPnP多播幀,則丟棄該幀。
本發明的另外的方面和/或優點將會在下面的描述中部分地闡述,部分 地,從下面的描述中這些方面和/或優點將會清楚或者通過實施本發明而被了 解。
下面通過結合附圖對本發明的實施例的描述,本發明的這些和/或其他方
面和優點將會清楚并更容易理解,其中 圖1是示出公共網絡的結構的示圖2是示出根據本發明實施例的用于公共網絡環境中的UPnP服務的設 備的結構的框圖3是示出根據本發明實施例的轉換UPnP多播IP的MAC地址的結果 的示圖4是示出根據本發明實施例的用于公共網絡環境中的UPnP服務的方 法的流程圖。
具體實施例方式
現在將詳細描述本發明實施例,其示例在附圖中示出,其中,相同的標 號始終指示相同的部件。下面參照附圖來描述這些實施例以解釋本發明。
將參照示出框圖和流程圖的附圖來描述本發明的各方面,以解釋根據本 發明實施例的用于在公共網絡環境中的UPnP服務的設備和方法。應該理解, 可通過計算機程序指令來實現流程圖的每一塊以及流程圖中多個塊的結合。 這些計算機程序指令可被提供給通用計算機、專用計算機或其他可編程數據 處理設備的處理器以產生機器,從而這些經計算機或其他可編程數據處理設 備的處理器執行的指令創建實現在一個流程圖塊或者多個流程圖塊中指定的 功能的裝置和/或方法。
這些計算機程序指令還可被存儲在計算機可用或者計算機可讀存儲器 中,所述計算機可用或者計算機可讀存儲器可指導計算機或者其他可編程數 據處理設備以特定的方式工作,從而存儲在計算機可用或者計算機可讀存儲 器中的這些指令可產生包括實現在一個流程圖塊或者多個流程圖塊中指定的
功能的指令的一件產品。
計算機程序指令還可被加載到計算機或者其他可編程數據處理設備以使 得一系列的操作在計算機或者其他可編程設備上執行以產生計算機實現的處 理,從而在計算機或其他可編程設備上執行的指令提供實現在一個流程圖塊 或多個流程圖塊中指定的功能的4喿作。
另外,流程圖中的每一塊可表示模塊、代碼段或者一部分代碼,其包括 一個或者多個可實現指定的邏輯功能的可執行指令。還應該注意到,在一些 可選的實現中,在塊中表示的功能可不按順序發生。例如,根據涉及的功能,
實際上連續顯示的兩個塊可基本同時執行,或者有時還可以相反的順序執行。
圖2是示出根據本發明實施例的用于在公共網絡環境中的UPnP服務的 設備200的結構的框圖。在圖2中,示出了具有通用即插即用(UPnP)多播偵 聽功能的公寓單元或層單元連接裝置、或者家庭連接裝置。應該理解,本發 明的各方面并不限于家庭或公寓,而可被應用到公共網絡環境中的任何UPnP服務。
圖2中示出的設備200的功能基于LAN交換。然而,設備200的功能還 可被應用到具有MAC地址轉換功能等的公寓單元或層單元連接裝置,或者
家庭連接裝置。
用于在公共網絡環境中的UPnP服務的設備200包括物理連接模塊201, 與公共網絡的各個單元(比如家庭、辦公室和教室等)的外部線纜連接;轉發器 202a和202b,通過轉發器202a和202b發送和/或接收具有兼容性的網絡信號 (比如10Base-T和100Base-T); UPnP多播監控模塊203,監控輸入到轉發器 202a和202b的幀的指定的必要部分,并請求丟棄幀;丟棄控制模塊204;選 擇和丟棄已經被請求丟棄的幀;切換管理模塊205,登記和管理關于丟棄的 幀的信息;和緩沖器206a和206b,存儲發送的幀,或者由于轉發器202a和 202b需要不同大小的發送的幀,所以將發送的幀轉換到必要的幀的大小以發 送轉換的幀。在下面的描述中,家庭將被用作公共網絡的單元(專用網絡)的示 例。
這里使用的術語"模塊"指的是,但并不限于,執行特定任務的軟件或 硬件組件,例如現場可編程門陣列(FPGA)或專用集成電路(ASIC)。模塊可被 構造為駐留在可尋址存儲介質上,以及在一個或多個處理器上執行。因而, 舉例來說,模塊可包括組件(例如軟件組件、面向對象的軟件組件、類組 件和任務組件)、進程、函數、屬性、過程、子程序、程序代碼段、驅動程序、 固件、微碼、電路、數據、數據庫、數據結構、表、數組和變量。在組件和 模塊中所提供的功能可被組合成更少的組件和模塊,或者進一步分為另外的
組件和模塊。
物理連接模塊201連接相應的線纜,從而數據被發送到外部或者被發送 到其他家庭。由于物理連接模塊201的各個連接部件是執行網橋功能的端口, 所以物理連接模塊201管理哪些裝置被連接到與所述端口連接的區段。
UPnP多播監控才莫塊203對輸入到轉發器的幀的UPnP IP和UPnP MAC
地址中的一個或者多個執行監控。如果沒有找到相應的UPnP IP和/或UPnP MAC地址,則UPnP多播監控模塊203停止監控并等待下一幀以監控該下一幀。
如果找到了 UPnP IP和/或UPnP MAC地址,則UPnP多播監控模塊203 將關于相應的幀的信息傳送到丟棄控制模塊204,從而丟棄控制模塊204丟 棄相應的UPnP多播幀。
如果將被丟棄的UPnP多播幀被存儲在緩沖器206a和206b中,則丟棄 控制模塊204丟棄存儲在緩沖器中的UPnP多播幀。作為選4奪,如果將被丟 棄的UPnP多播幀位于切換管理模塊205中,而沒有被存儲在緩沖器206a和 206b中,則丟棄控制模塊204搜索并丟棄相應的幀。為了搜索相應的幀,丟 棄控制模塊204可從UPnP多播監控模塊203接收必要的信息。
除了將輸入幀的頭值改變為打算輸出的幀的頭值之外,切換管理模塊 205還登記和管理關于將被丟棄的相應幀的信息。
圖3是示出根據本發明實施例的轉換UPnP多播IP的MAC地址的結果 的示圖。參照圖3, UPnP多播IP被確定為將使用類D IP地址239.255.255.250: 1900被發送。因此,為了將UPnP多播IP發送到IEEE 802.3網絡,IEEE 802.3 MAC地址被轉換為Ox 01-00-5e-7f-ff-fa的地址結構。具有目的地址結構Ox 01 -00-5e-7f-ff-fa的幀被傳送到在相應的網絡中存在的所有裝置。
圖4是示出根據本發明實施例的用于公共網絡環境中的UPnP服務的方 法的流程圖。參照圖2和圖4,物理連接模塊201接收幀,并且接收的幀經 過相應的轉發器202(操作S401)。
接下來,UPnP多播監控模塊203通過監控接收的幀確定接收的幀是 UPnP相關的巾貞還是從外部輸入的幀(操作S402)。
如果接收的幀是從外部輸入的幀,那么接收的幀與UPnP多播幀不相關。 因此,UPnP多播監控模塊203停止監控相應的幀,并對下一幀進行監控(操 作S403)。
如果接收的幀是UPnP相關的幀,則因為如圖3所示的通信地址(比如 IEEE 802.3 MAC地址)的多播/廣播位被設置在UPnP多播IP中,所以UPnP 多播監控模塊203監控該位(操作S404)。
如果沒有設置該相應位,那么相應幀不具有UPnP多播IP。在這種情況 下,UPnP多播監控模塊203停止監控相應幀,并對下一幀進行監控。
另一方面,如果已經設置了該相應位,則UPnP多播監控模塊203通過 監控幀的目的地址來檢查幀的目的地址是否與相應的UPnP MAC地址一致 (操作S405)。
如圖3所示,UPnP MAC地址具有Ox 01-00-5e-7f-ff-fa的地址結構。如 果接收的幀的MAC地址不具有0x01-00-5e-7f-ff-fa的地址結構,則UPnP多 播監控模塊203停止當前監控,并對下一幀進行監控。
如果UPnP MAC地址具有Ox 01-00-5e-7f-ff-fa的地址結構,則UPnP多 播監控模塊203監控IP頭部分的目的地址(操作S406)。
UPnP IP頭的目的地址字段具有IP地址239.255.255.250。也就是說, 239.255.255.250是UPnP通信量的標準目的IP地址。由于UPnP多播地址是 唯一的,所以如果當前監控的幀在目的地址字段具有UPnP多播地址,那么 該幀是UPnP多播幀。
如果相應的IP頭的目的地址不是239.255.255.250,則UPnP多播監控模 塊203停止相應的監控,并對下一幀進行監控。
如果當前監控的幀是UPnP多播幀(即,在操作S406中,UPnP多播監控 模塊203確定該幀的目的IP地址是239.255.255.250),那么可從緩沖器206a 和206b或者切換管理模塊205丟棄該幀。在這種情況下,UPnP多播監控模 塊203將丟棄該相應幀所需的信息發送到丟棄控制模塊204,并對下一幀進 行監控。
如上所述,根據依據本發明各方面的用于公共網絡環境中的UPnP服務 的設備和方法,可獲得下面所述的一個或者多個效果。專用網絡以公共網絡 為單位而被構造以支持由很多單元共享的公共網絡環境中的UPnP服務,并 且可以保護隱私(包括個人隱私和單元成員的內容)。此外,減少由UPnP多播 包引起的不必要的網絡通信量的發生,從而可防止例如公寓單元或層單元連 接裝置的性能的降低。
盡管已經顯示并描述了本發明的幾個實施例,但是本領域的技術人員應 該理解,在不脫離本發明的原理和精神的情況下,可對這些實施例進行各種 改變,本發明的范圍由權利要求及其等同物限定。
權利要求
1、一種用于公共網絡環境中的UPnP服務的設備,所述設備包括UPnP多播監控模塊,監控輸入幀,并且如果該幀是UPnP多播幀,則請求丟棄該幀;丟棄控制模塊,如果UPnP多播監控模塊請求丟棄該幀,則丟棄控制模塊丟棄該幀;切換管理模塊,登記和管理關于丟棄的幀的信息。
2、 如權利要求l所述的設備,其中,UPnP多播監控模塊監控輸入幀的 頭以確定該幀是否是UPnP多播幀。
3、 如權利要求l所述的設備,其中,該幀被輸入到轉發器。
4、 如權利要求2所述的設備,其中,UPnP多播監控模塊確定UPnP IP 是否被包括在該幀的頭中以確定該幀是否是UPnP多播幀。
5、 如權利要求2所述的設備,其中,UPnP多播監控模塊確定UPnPMAC
6、 如權利要求1所述的設備,其中,UPnP多播監控模塊確定多播和/ 或廣播位是否被設置在UPnP多播IP中以確定該幀是否是UPnP多播幀。
7、 如權利要求l所述的設備,其中,如果將被丟棄的幀被存儲在緩沖器 中,則丟棄控制模塊丟棄存儲在緩沖器中的幀。
8、 如權利要求l所述的設備,其中,如果將被丟棄的幀被存儲在切換管 理模塊中,則丟棄控制模塊丟棄存儲在切換管理模塊中的幀。
9、 如權利要求l所述的設備,其中,UPnP多播監控模塊確定該幀是否 是從公共網絡的外部輸入,如果確定該幀從所述外部輸入,則確定該幀不是 UPnP多播幀。
10、 如權利要求1所述的設備,其中,如果UPnP多播監控模塊確定該 幀不是UPnP多播幀,則UPnP多播監控模塊停止監控該幀。
11、 如權利要求l所述的設備,其中,所述設備是家庭連接裝置。
12、 如權利要求l所述的設備,其中,所述設備是公寓單元或層單元連接裝置。
13、 一種用于公共網絡環境中的UPnP服務的方法,所述方法包括 監控輸入幀; 如果該幀是UPnP多播幀,則請求丟棄該幀; 如果請求丟棄該幀,則丟棄該幀; 登記和管理關于丟棄的幀的信息。
14、 如權利要求13所述的方法,其中,監控輸入幀的步驟包括 監控輸入幀的頭以確定該幀是否是UPnP多播幀。
15、 如權利要求13所述的方法,其中,該幀被輸入到轉發器。
16、 如權利要求14所述的方法,其中,監控輸入幀的頭的步驟包括 確定UPnP IP是否被包括在該幀的頭中以確定該幀是否是UPnP多播幀。
17、 如權利要求14所述的方法,其中,監控輸入幀的頭的步驟包括多播幀。 、 、"、 、
18、 如權利要求13所迷的方法,其中,監控輸入幀的步驟包括 確定多播和/或廣播位是否被設置在UPnP多播IP中以確定該幀是否是UPnP多播幀。
19、 如權利要求13所述的方法,其中,丟棄該幀的步驟包括 如果將被丟棄的幀被存儲在緩沖器中,則丟棄存儲在緩沖器中的幀。
20、 如權利要求13所述的方法,其中,丟棄該幀的步驟包括 如果將被丟棄的幀被存儲在切換管理模塊中,則丟棄存儲在切換管理模塊中的幀。
21、 如權利要求13所述的方法,其中,監控輸入幀的步驟包括 確定該幀是否從公共網絡的外部輸入;如果確定該幀從所述外部輸入,則確定該幀不是UPnP多播幀。
22、 如權利要求13所述的方法,還包括 如果該幀被確定為不是UPnP多播幀,則停止監控該幀。
23、 一種用于公共網絡環境中的UPnP服務的設備,所述設備包括 UPnP多播監控模塊,確定輸入幀是否是UPnP多播幀; 丟棄控制模塊,如果UPnP多播監控模塊確定該幀是UPnP多播幀,則丟棄控制模塊丟棄該幀。
24、 如權利要求23所述的設備,還包括 切換管理模塊,登記和管理關于丟棄的幀的信息。
25、 如權利要求23所述的設備,其中,如果UPnP多播監控模塊確定該 幀是UPnP多播幀,則UPnP多播監控模塊請求丟棄該幀。
26、 如權利要求23所述的設備,其中,UPnP多播監控模塊監控輸入幀 的頭以確定該幀是否是UPnP多播幀。
27、 如權利要求26所述的設備,其中,UPnP多播監控模塊確定UPnP IP 是否被包括在該幀的頭中以確定該幀是否是UPnP多播幀。
28、 如權利要求26所述的設備,其中,UPnP多播監控模塊確定UPnP MAC地址是否被包括在該幀的頭中以確定該幀是否是UPnP多播幀。
29、 如權利要求23所述的設備,其中,UPnP多播監控模塊確定多播和 /或廣播位是否被設置在UPnP多播IP中以確定該幀是否是UPnP多播幀。
30、 如權利要求23所述的設備,其中,UPnP多播監控模塊確定幀是否 是從公共網絡的外部輸入,如果該幀是從所述外部輸入,則確定該幀不是 UPnP多播幀。
31、 一種用于公共網絡環境中的通用即插即用UPnP服務的方法,所述 方法包括確定輸入幀是否是UPnP多播幀; 如果該幀被確定為是UPnP多播幀,則丟棄該幀。
32、 如權利要求31所述的方法,還包括 登記和管理關于丟棄的幀的信息。
33、 如權利要求31所述的方法,還包括如果該幀被確定為是UPnP多 播幀,則請求丟棄該幀。
34、 如權利要求31所述的方法,其中,確定輸入幀是否是UPnP多播幀 的步驟包括監控輸入幀的頭以確定該幀是否是UPnP多播幀。
35、 如權利要求34所述的方法,其中,監控輸入幀的頭的步驟包括 確定UPnP IP是否被包括在該幀的頭中以確定該幀是否是UPnP多播幀。
36、 如權利要求34所述的方法,其中,監控輸入幀的頭的步驟包括確定UPnP MAC地址是否被包括在該幀的頭中以確定該幀是否是UPnP 多播幀。
37、 如權利要求31所述的方法,其中,確定輸入幀是否是UPnP多播幀 的步驟包括確定多播和/或廣播位是否被設置在UPnP多播IP中以確定該幀是否是 UPnP多播幀。
38、如權利要求31所述的方法,其中,確定輸入幀是否是UPnP多播幀 的步驟包括確定該幀是否從公共網絡的外部輸入;如果該幀被確定為是從所述外部輸入,則確定該幀不是UPnP多播幀。
全文摘要
一種用于在公共網絡環境中的通用即插即用(UPnP)服務的設備和方法,所述設備包括UPnP多播監控模塊,監控輸入到轉發器的幀的頭,并請求丟棄該幀;丟棄控制模塊,選擇并丟棄被請求丟棄的幀;切換管理模塊,登記和管理關于丟棄的幀的信息。
文檔編號H04L29/06GK101115071SQ200710139119
公開日2008年1月30日 申請日期2007年7月25日 優先權日2006年7月25日
發明者樸仁昊, 申東潤 申請人:三星電子株式會社