專利名稱:家庭間dlna設(shè)備發(fā)現(xiàn)和控制方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及互聯(lián)網(wǎng)領(lǐng)域,更為具體地,涉及一種基于DLNA協(xié)議的家庭間DLNA設(shè)備 發(fā)現(xiàn)方法及其設(shè)備,以及基于DLNA協(xié)議的家庭間設(shè)備控制方法及裝置。
背景技術(shù):
隨著科學(xué)技術(shù)的不斷發(fā)展,在家庭中使用的電子設(shè)備越來越多,比如,平板電視、 手機(jī)、數(shù)碼相機(jī)、攝像機(jī)、音響系統(tǒng)、電腦、多媒體播放器、游戲機(jī)等。通常,在這些電子設(shè)備 上,各自存儲有不同的文件,比如各種音頻、相片和視頻文件。如果用戶希望觀看或欣賞這 些電子設(shè)備中的一個(gè)電子設(shè)備上存儲的文件,則必須在該電子設(shè)備上利用相應(yīng)的處理軟件 對該文件進(jìn)行處理,然后才進(jìn)行觀看或欣賞。也就是說,如果用戶希望對一個(gè)電子設(shè)備上的 文件進(jìn)行處理,就必須在該電子設(shè)備上進(jìn)行相應(yīng)的操作。在存在非常多的電子設(shè)備或者該 電子設(shè)備遠(yuǎn)離用戶的觸及范圍的情況下,這種文件處理方式容易給用戶帶來不便。為此,索尼、英特爾、微軟等發(fā)起成立的數(shù)字生活網(wǎng)絡(luò)聯(lián)盟(DLNA)提出了 DLNA協(xié) 議,其目的在于實(shí)現(xiàn)個(gè)人PC,消費(fèi)電器,移動設(shè)備在內(nèi)的無線網(wǎng)絡(luò)和有線網(wǎng)絡(luò)的互聯(lián)互通, 從而使得數(shù)字媒體和內(nèi)容服務(wù)的無限制的共享和增長成為可能。采用DLNA協(xié)議的DLNA設(shè)備通常可以實(shí)現(xiàn)下述功能(1)在家里的任何地方共享、 存儲和訪問數(shù)字音樂,(2)輕松地管理、瀏覽、打印和分享數(shù)字照片,(3)隨身攜帶喜歡的娛 樂內(nèi)容以便在戶外欣賞,以及(4)對可被多用戶訪問的內(nèi)容進(jìn)行記錄和重放。在實(shí)現(xiàn)上述功能時(shí),DLNA通常選擇目前所應(yīng)用很廣泛的各種技術(shù)和協(xié)議,將整個(gè) 應(yīng)用規(guī)定成5個(gè)功能組件,從下到上依次為網(wǎng)絡(luò)互連,網(wǎng)絡(luò)協(xié)議,媒體傳輸,設(shè)備的發(fā)現(xiàn)控 制和管理,媒體格式。在網(wǎng)絡(luò)互連組件中,規(guī)定了所接入網(wǎng)絡(luò)的類型和協(xié)議,例如802. 3. i/u以及 802. 11/a/b/g。在網(wǎng)絡(luò)協(xié)議組件中,規(guī)定了所使用的網(wǎng)絡(luò)協(xié)議。在目前,規(guī)定所使用的網(wǎng)絡(luò) 協(xié)議必須支持IPv4。優(yōu)選地,所使用的網(wǎng)絡(luò)協(xié)議可以支持IPv6。在媒體傳輸組件中,規(guī)定 所有DLNA設(shè)備都必須支持使用HTTP協(xié)議進(jìn)行媒體的傳輸。此外,也可以采用TLS協(xié)議、 IPSEC協(xié)議或RTP協(xié)議。在媒體格式組件中,規(guī)定了進(jìn)行數(shù)字媒體和內(nèi)容的共享和使用的時(shí) 候的媒體格式,目前,其必須支持的媒體格式是JPEG、LPCM和MPEG2。在DLNA中,最重要的組件是設(shè)備的發(fā)現(xiàn)、控制和管理組件,該組件通過一系列的 步驟和協(xié)議來達(dá)到設(shè)備的發(fā)現(xiàn)和管理。目前的家庭間DLNA設(shè)備發(fā)現(xiàn)和控制方法按照傳輸 協(xié)議可以劃分為基于SIP協(xié)議的家庭間DLNA設(shè)備發(fā)現(xiàn)和控制方法以及基于VPN協(xié)議的家 庭間DLNA設(shè)備發(fā)現(xiàn)和控制方法。這兩類方法的核心在于對設(shè)備發(fā)現(xiàn)和控制消息中所包含 的URL進(jìn)行改寫,即,將URL中包含的IP地址和端口號替換為對端家庭的有意義IP和端口 號,其中不同IP地址均替換為對端家庭同一 IP,并且包含不同IP的URL連接在對端家庭以 不同的端口號進(jìn)行區(qū)分。然而,在這種家庭間DLNA設(shè)備發(fā)現(xiàn)和控制方法中,由于不同IP地址均替換為對端 家庭同一 IP,并且包含不同IP的URL連接在對端家庭以不同的端口號進(jìn)行區(qū)分,從而導(dǎo)致產(chǎn)生以下問題。(1)隨著家庭內(nèi)符合DLNA標(biāo)準(zhǔn)的設(shè)備增多,這些設(shè)備具備不同的IP地址,由此導(dǎo) 致對端家庭的代理服務(wù)器需要同時(shí)監(jiān)聽多個(gè)端口,從而增加了代理服務(wù)器的負(fù)擔(dān),而且擴(kuò) 展性不好。(2)當(dāng)家庭內(nèi)增加新的DLNA設(shè)備時(shí),需要與對端家庭的代理服務(wù)器協(xié)商增加新的 監(jiān)聽端口,額外增加了家庭間設(shè)備發(fā)現(xiàn)與控制的成本。(3)增加了 “端口占用”沖突的概率。
發(fā)明內(nèi)容
鑒于上述問題,本發(fā)明提供了一種家庭間DLNA設(shè)備發(fā)現(xiàn)和控制方法及裝置,該方 法能夠?qū)崿F(xiàn)URL中包含的IP地址和端口號到對端家庭的多對一映射,即,不同IP地址和端 口號都映射到對端家庭的同一 IP和端口號。根據(jù)本發(fā)明的一個(gè)方面,提供了一種用于在本地家庭和對端家庭之間進(jìn)行家庭間 DLNA設(shè)備發(fā)現(xiàn)的方法,用于家庭間DLNA設(shè)備發(fā)現(xiàn)的設(shè)備檢索多播消息從所述本地家庭中 發(fā)出,以及被所述對端家庭接收,所述方法包括本地家庭中的第一 SSDP中繼設(shè)備將所述 本地家庭中的第一 SSDP代理以多播方式從本地家庭中的家庭DLNA設(shè)備接收的設(shè)備檢索 多播消息,經(jīng)由VPN隧道發(fā)送給對端家庭的第二 SSDP中繼設(shè)備;在所述對端家庭中的第二 SSDP代理從所述第二 SSDP中繼設(shè)備接收到所述設(shè)備檢索多播消息后,以多播方式向所述 對端家庭中的家庭DLNA設(shè)備發(fā)送所述設(shè)備檢索多播消息;所述對端家庭中的URL改寫單元 基于所述對端家庭中的家庭DLNA設(shè)備的唯一標(biāo)識符(UUID),對從該家庭DLNA設(shè)備接收的 針對所述設(shè)備檢索多播消息的檢索響應(yīng)進(jìn)行URL改寫,所述檢索響應(yīng)至少包括URL字段和 ST字段,所述ST字段存儲檢索目標(biāo);通過所述第二 SSDP代理和第二 SSDP中繼設(shè)備,經(jīng)由 所述VPN隧道將經(jīng)過URL改寫后的檢索響應(yīng)發(fā)送到所述第一 SSDP中繼設(shè)備;以及通過所述 第一 SSDP代理對所述第一 SSDP中繼設(shè)備所接收的經(jīng)過URL改寫后的檢索響應(yīng)進(jìn)行處理, 從而以單播方式將經(jīng)過URL改寫后的檢索響應(yīng)發(fā)送到本地家庭中的所述家庭DLNA設(shè)備,其 中,所述URL改寫單元基于所述對端家庭中的家庭DLNA設(shè)備的UUID,對從所接收的檢索響 應(yīng)進(jìn)行URL改寫的步驟包括將所述檢索響應(yīng)中的URL的IP地址和端口號分別改寫為所述 本地家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地址和監(jiān)聽端口的端口號;以及將所述檢索響應(yīng) 中的URL的路徑部分改寫為所述對端家庭中的所述家庭DLNA設(shè)備的UUID。此外,如果接收到多個(gè)經(jīng)過URL改寫后的檢索響應(yīng),則通過所述第一 SSDP代理對 經(jīng)過URL改寫后的檢索響應(yīng)進(jìn)行處理的步驟還可以包括從所述第一 SSDP中繼設(shè)備所接收 的經(jīng)過URL改寫后的檢索響應(yīng)中獲取所述ST字段的值;使用socket創(chuàng)建用于單播的UDP 套接字sock ;根據(jù)所述ST字段的值和本地家庭中發(fā)送設(shè)備檢索多播請求的家庭DLNA設(shè)備 的檢索目標(biāo),確定與所述檢索響應(yīng)匹配的家庭DLNA設(shè)備;以及通過所述UDP套接字sock, 以單播方式將所述經(jīng)過URL改寫后的檢索響應(yīng)發(fā)送到所確定出的匹配家庭DLNA設(shè)備。根據(jù)本發(fā)明的另一方面,提供了一種家庭間DLNA設(shè)備發(fā)現(xiàn)裝置,包括SSDP中繼 設(shè)備,用于將從SSDP代理接收的設(shè)備檢索多播消息經(jīng)由VPN隧道發(fā)送到所述對端家庭,以 及從所述對端家庭接收對設(shè)備檢索多播消息的檢索響應(yīng)并發(fā)送給SSDP代理;或者將從所 述對端家庭接收的設(shè)備檢索多播消息發(fā)送到SSDP代理,以及向所述對端家庭發(fā)送從SSDP代理接收的對設(shè)備檢索多播消息的檢索響應(yīng),其中所述檢索響應(yīng)至少包括URL字段和ST字 段,所述ST字段存儲檢索目標(biāo);SSDP代理,用于將以多播方式從家庭內(nèi)部的家庭DLNA設(shè)備 接收的設(shè)備檢索多播消息發(fā)送到所述SSDP中繼設(shè)備,以及將從所述SSDP中繼設(shè)備接收的 檢索響應(yīng)以單播方式發(fā)送給家庭內(nèi)部的對應(yīng)家庭DLNA設(shè)備,或者多播從所述SSDP中繼設(shè) 備接收的設(shè)備檢索多播消息,獲取家庭內(nèi)部的家庭DLNA設(shè)備對該設(shè)備檢索多播消息的檢 索響應(yīng),所述檢索響應(yīng)至少包括URL字段和ST字段,所述ST字段存儲檢索目標(biāo),并且將經(jīng) 過改寫后的檢索響應(yīng)發(fā)送到所述SSDP中繼設(shè)備;URL改寫單元,用于基于家庭內(nèi)部的家庭 DLNA設(shè)備的唯一標(biāo)識符(UUID),對從該家庭DLNA接收的所述檢索響應(yīng)進(jìn)行URL改寫,以及 網(wǎng)關(guān),包括Web代理服務(wù)器,其中,所述URL改寫單元還包括IP地址和端口改寫單元,用于 將所述檢索響應(yīng)的URL的IP地址和端口號分別改寫為對端家庭的網(wǎng)關(guān)中的Web代理服務(wù) 器的IP地址和監(jiān)聽端口的端口號;URL路徑改寫單元,用于將所述檢索響應(yīng)的URL的路徑 部分改寫為所述家庭DLNA設(shè)備的UUID。此外,優(yōu)選地,在所述SSDP代理接收到多個(gè)經(jīng)過URL改寫后的檢索響應(yīng)時(shí),所述 SSDP代理還可以包括ST字段值獲取單元,用于從所述SSDP中繼設(shè)備所接收的經(jīng)過URL改 寫后的檢索響應(yīng)中獲取所述ST字段的值;套接字創(chuàng)建單元,用于使用socket創(chuàng)建用于單播 的UDP套接字sock ;匹配家庭DLNA設(shè)備確定單元,用于根據(jù)所述ST字段的值和所述SSDP 代理所屬家庭中發(fā)送設(shè)備檢索多播請求的家庭DLNA設(shè)備的檢索目標(biāo),確定與所述檢索響 應(yīng)匹配的家庭DLNA設(shè)備,其中在確定出匹配的家庭DLNA設(shè)備后,所述SSDP代理通過所述 UDP套接字sock,以單播方式將所述經(jīng)過URL改寫后的檢索響應(yīng)發(fā)送到所確定出的匹配家 庭DLNA設(shè)備。根據(jù)本發(fā)明的另一方面,提供了一種基于SSDP代理和SSDP中繼設(shè)備的家庭間 DLNA設(shè)備發(fā)現(xiàn)方法,包括在家庭DLNA設(shè)備上線后,生成設(shè)備上線通知消息,所述設(shè)備上線 通知消息中至少包括URL字段;基于所述家庭DLNA設(shè)備的唯一標(biāo)識符(UUID),對所生成的 設(shè)備上線通知消息進(jìn)行URL改寫,通過所述家庭DLNA設(shè)備所屬家庭中的第一 SSDP代理和 第一 SSDP中繼設(shè)備,經(jīng)由VPN隧道將所述經(jīng)過URL改寫后的設(shè)備上線通知消息發(fā)送到所述 對端家庭中的第二SSDP中繼設(shè)備;通過所述對端家庭中的第二SSDP代理,以多播方式向所 述對端家庭中的家庭DLNA設(shè)備發(fā)送所述經(jīng)過URL改寫后的設(shè)備上線通知消息,其中,對所 述設(shè)備上線通知消息進(jìn)行URL改寫的步驟包括將所述設(shè)備上線通知消息中的URL的IP地 址和端口號分別改寫為所述對端家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地址和監(jiān)聽端口的 端口號;將所述設(shè)備上線通知消息中的URL的路徑部分改寫為所述家庭DLNA設(shè)備的UUID。根據(jù)本發(fā)明的另一方面,提供了一種家庭間DLNA設(shè)備發(fā)現(xiàn)裝置,包括設(shè)備上線 通知消息生成單元,用于在家庭DLNA設(shè)備上線后,生成設(shè)備上線通知消息,所述設(shè)備上線 通知消息中至少包括URL字段;URL改寫單元,用于基于所述家庭DLNA設(shè)備的唯一標(biāo)識符 (UUID),對所述設(shè)備上線通知消息進(jìn)行URL改寫,SSDP中繼設(shè)備,用于將從SSDP代理接收的 來自家庭內(nèi)部的家庭DLNA設(shè)備的所述設(shè)備上線通知消息通過VPN隧道發(fā)送到所述對端家 庭,或者從所述對端家庭接收所述設(shè)備上線通知消息并發(fā)送給家庭內(nèi)部的SSDP代理;SSDP 代理,用于將從所述URL改寫單元接收的經(jīng)過URL改寫后的設(shè)備上線通知消息發(fā)送到所述 SSDP中繼設(shè)備,或者將從所述SSDP中繼設(shè)備接收的所述對端家庭所發(fā)送的經(jīng)過URL改寫后 的設(shè)備上線通知消息,以多播方式向家庭內(nèi)部的家庭DLNA設(shè)備發(fā)送所述經(jīng)過URL改寫后的設(shè)備上線通知消息;以及網(wǎng)關(guān),包括Web代理服務(wù)器,其中,所述URL改寫單元還包括IP地 址和端口改寫單元,用于將所述設(shè)備上線通知消息的URL的IP地址和端口號分別改寫為所 述家庭DLNA設(shè)備所屬家庭的對端家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地址和監(jiān)聽端口的 端口號;URL路徑改寫單元,用于將所述設(shè)備上線通知消息的URL的路徑部分改寫為所述家 庭DLNA設(shè)備的UUID。根據(jù)本發(fā)明的另一方面,提供了一種家庭間DLNA設(shè)備發(fā)現(xiàn)系統(tǒng),包括如上所述 的位于發(fā)送設(shè)備檢索多播請求或接收設(shè)備上線通知消息的家庭中的家庭間DLNA設(shè)備發(fā)現(xiàn) 裝置;如上所述的位于接收設(shè)備檢索多播請求或發(fā)送設(shè)備上線通知消息的家庭中的家庭間 DLNA設(shè)備發(fā)現(xiàn)裝置;VPN隧道,設(shè)置在兩個(gè)家庭之間,用于在兩個(gè)家庭之間進(jìn)行數(shù)據(jù)傳輸; 一個(gè)或多個(gè)位于發(fā)送設(shè)備檢索多播請求或接收設(shè)備上線通知消息的家庭中的家庭DLNA設(shè) 備;以及一個(gè)或多個(gè)位于接收設(shè)備檢索多播請求或發(fā)送設(shè)備上線通知消息的家庭中的家庭 DLNA設(shè)備。根據(jù)本發(fā)明的另一方面,提供了一種基于Web代理服務(wù)器的家庭DLNA設(shè)備控制方 法,該方法由接收HTTP請求的對端家庭的Web代理服務(wù)器執(zhí)行,所述方法包括在通過專用 端口接收到發(fā)出HTTP請求的本地家庭中的Web代理服務(wù)器經(jīng)由VPN隧道中繼的HTTP請求 后,基于所存儲的URL改寫數(shù)據(jù)庫,對所接收的HTTP請求中的URL進(jìn)行改寫,其中所述HTTP 請求是本地家庭的Web代理服務(wù)器通過公用端口從本地家庭的家庭DLNA設(shè)備接收的,所存 儲的URL改寫數(shù)據(jù)庫是在進(jìn)行家庭DLNA設(shè)備發(fā)現(xiàn)時(shí)建立的,并且在所述URL改寫數(shù)據(jù)庫中 存儲有改寫前URL和改寫后URL之間的對應(yīng)關(guān)系;基于改寫后的HTTP請求,獲取與該改寫 后的HTTP對應(yīng)的對端家庭中的家庭DLNA設(shè)備的IP地址和端口號;利用所獲得的對端家 庭中的家庭DLNA設(shè)備的IP地址和端口號,與對端家庭中的家庭DLNA設(shè)備建立通信連接, 并通過所建立的通信連接,將改寫后的HTTP請求發(fā)送給所述家庭DLNA設(shè)備;在改寫后的 HTTP請求是設(shè)備描述文件請求或SOAP請求時(shí),接收來自所述家庭DLNA設(shè)備的完整響應(yīng)數(shù) 據(jù);利用所存儲的URL改寫數(shù)據(jù)庫對所接收的完整響應(yīng)數(shù)據(jù)進(jìn)行URL改寫,并將改寫后的響 應(yīng)數(shù)據(jù)中繼給本地家庭的Web代理服務(wù)器,其中,在進(jìn)行家庭DLNA設(shè)備發(fā)現(xiàn)時(shí)建立URL改 寫數(shù)據(jù)庫的步驟包括將要被發(fā)現(xiàn)的家庭DLNA設(shè)備中的包含有URL的消息中的URL的IP地 址和端口號分別改寫為發(fā)出設(shè)備檢索多播請求的家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地 址和監(jiān)聽端口的端口號;將要被發(fā)現(xiàn)的家庭DLNA設(shè)備中的所述包含有URL的消息中的URL 的路徑部分改寫為該家庭DLNA設(shè)備的UUID ;以及建立URL改寫數(shù)據(jù)庫并將所述URL改寫數(shù) 據(jù)庫存儲在所述對端家庭的網(wǎng)關(guān)中,所述URL改寫數(shù)據(jù)存儲有改寫前URL和改寫后URL之 間的對應(yīng)關(guān)系。根據(jù)本發(fā)明的另一方面,提供了一種用于家庭DLNA設(shè)備控制的Web代理服務(wù)器, 包括接收單元,用于通過公用端口從所述Web代理服務(wù)器所屬的本地家庭的家庭DLNA設(shè) 備接收HTTP請求,以及接收來自本地家庭內(nèi)的家庭DLNA設(shè)備的對該HTTP請求的響應(yīng)數(shù) 據(jù),或者通過專用端口從對端家庭的Web代理服務(wù)器接收經(jīng)由VPN隧道中繼的HTTP請求; URL改寫單元,用于在進(jìn)行家庭DLNA設(shè)備發(fā)現(xiàn)期間,基于對端家庭的家庭DLNA設(shè)備的唯一 標(biāo)識符(UUID)建立URL改寫數(shù)據(jù)庫,并將所述URL改寫數(shù)據(jù)庫存儲在所述Web代理服務(wù)器 中,在所述URL改寫數(shù)據(jù)庫中存儲有改寫前URL和改寫后URL之間的對應(yīng)關(guān)系;HTTP請求改 寫單元,用于基于所存儲的URL改寫數(shù)據(jù)庫,對通過專用端口從對端家庭中的Web代理服務(wù)器接收到的經(jīng)由VPN隧道中繼的HTTP請求中的URL進(jìn)行改寫;IP地址和端口號獲取單元, 用于基于改寫后的HTTP請求,獲取與該改寫后的HTTP對應(yīng)的本地家庭中的家庭DLNA設(shè)備 的IP地址和端口號;通信連接建立單元,用于利用所獲得的本地家庭中的家庭DLNA設(shè)備的 IP地址和端口號,與本地家庭中的家庭DLNA設(shè)備建立通信連接;響應(yīng)數(shù)據(jù)改寫單元,用于 基于所存儲的URL改寫數(shù)據(jù)庫,對所接收的完整響應(yīng)數(shù)據(jù)進(jìn)行URL改寫;發(fā)送單元,用于通 過VPN隧道將HTTP請求發(fā)送到對端家庭,或者通過所建立的通信連接,將改寫后的HTTP請 求發(fā)送給本地家庭中的對應(yīng)家庭DLNA設(shè)備,以及將響應(yīng)數(shù)據(jù)經(jīng)由VPN隧道中繼給對端家庭 的Web代理服務(wù)器,其中,在所述Web代理服務(wù)器用于接收HTTP請求時(shí),在改寫后的HTTP 請求是設(shè)備描述文件請求或SOAP請求時(shí),在所述接收單元接收到來自所述DLNA設(shè)備的完 整響應(yīng)數(shù)據(jù)后,所述響應(yīng)數(shù)據(jù)改寫單元對所接收的完整響應(yīng)數(shù)據(jù)進(jìn)行URL改寫,并且所述 發(fā)送單元將改寫后的響應(yīng)數(shù)據(jù)中繼給本地家庭的Web代理服務(wù)器,其中,所述URL改寫單元 還包括IP地址和端口改寫單元,用于將要被發(fā)現(xiàn)的家庭DLNA設(shè)備的URL的IP地址和端 口號分別改寫為發(fā)出設(shè)備檢索多播請求的家庭DLNA設(shè)備所屬家庭的網(wǎng)關(guān)中的Web代理服 務(wù)器的IP地址和監(jiān)聽端口的端口號;URL路徑改寫單元,用于將要被發(fā)現(xiàn)的家庭DLNA設(shè)備 的URL的路徑部分改寫為該家庭DLNA設(shè)備的UUID ;以及URL改寫數(shù)據(jù)庫建立單元,用于建 立URL改寫數(shù)據(jù)庫,在所述URL改寫數(shù)據(jù)庫中存儲有改寫前URL和改寫后URL之間的對應(yīng) 關(guān)系。根據(jù)本發(fā)明的另一方面,提供了一種家庭DLNA設(shè)備控制系統(tǒng),包括如上所述的 位于發(fā)出HTTP請求的家庭中的Web代理服務(wù)器;如上所述的位于接收HTTP請求的家庭中 的Web代理服務(wù)器;VPN隧道,設(shè)置在兩個(gè)家庭之間,用于在兩個(gè)家庭之間進(jìn)行數(shù)據(jù)傳輸;一 個(gè)或多個(gè)位于發(fā)出HTTP請求的家庭中的家庭DLNA設(shè)備;以及一個(gè)或多個(gè)位于接收HTTP請 求的家庭中的家庭DLNA設(shè)備。為了實(shí)現(xiàn)上述以及相關(guān)目的,本發(fā)明的一個(gè)或多個(gè)方面包括后面將詳細(xì)說明并在 權(quán)利要求中特別指出的特征。下面的說明以及附圖詳細(xì)說明了本發(fā)明的某些示例性方面。 然而,這些方面指示的僅僅是可使用本發(fā)明的原理的各種方式中的一些方式。此外,本發(fā)明 旨在包括所有這些方面以及它們的等同物。
通過參考以下結(jié)合附圖的說明及權(quán)利要求書的內(nèi)容,本發(fā)明的上述和其它目的、 特征和優(yōu)點(diǎn)將更加明白及易于理解。在附圖中圖1示出了根據(jù)本發(fā)明的用于對本地家庭中的家庭DLNA設(shè)備向?qū)Χ思彝ブ械募?庭DLNA設(shè)備發(fā)送的包含有URL的消息進(jìn)行URL改寫的方法的流程圖;圖2示出上述URL改寫方法的一個(gè)示例的示意圖;圖3示出了根據(jù)本發(fā)明的用于對本地家庭中的家庭DLNA設(shè)備向?qū)Χ思彝ブ械募?庭DLNA設(shè)備發(fā)送的包含有URL的消息進(jìn)行URL改寫的URL改寫裝置的方框示意圖;圖4示出了根據(jù)本發(fā)明實(shí)施例的家庭間DLNA設(shè)備發(fā)現(xiàn)系統(tǒng)的方框示意圖;圖5示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置的方框示意 圖;圖6示出了根據(jù)本發(fā)明的由包括圖5中示出的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置的家庭間DLNA設(shè)備發(fā)現(xiàn)系統(tǒng)執(zhí)行的家庭間DLNA設(shè)備發(fā)現(xiàn)過程的示圖;圖7示出了在發(fā)出設(shè)備檢索多播消息的家庭中的SSID代理接收到多個(gè)經(jīng)過URL 改寫后的檢索響應(yīng)時(shí)的處理過程的流程圖;圖8示出了根據(jù)本發(fā)明的另一實(shí)施例的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置的方框示意 圖;圖9示出了根據(jù)本發(fā)明的由包括圖8中示出的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置的家庭 間DLNA設(shè)備發(fā)現(xiàn)系統(tǒng)執(zhí)行的家庭間DLNA設(shè)備發(fā)現(xiàn)過程的示圖;圖10示出根據(jù)本發(fā)明的家庭間DLNA控制系統(tǒng)的方框示意圖;圖11示出了根據(jù)本發(fā)明實(shí)施例的Web代理服務(wù)器的方框示意圖;圖12示出了根據(jù)本發(fā)明的由包括圖11中示出的Web代理服務(wù)器的家庭間DLNA 控制系統(tǒng)執(zhí)行的家庭間DLNA設(shè)備控制方法的流程圖;和圖13示出了在執(zhí)行家庭間DLNA控制時(shí)由接收HTTP請求的對端家庭的Web代理 服務(wù)器執(zhí)行的過程的流程圖。在所有附圖中相同的標(biāo)號指示相似或相應(yīng)的特征或功能。
具體實(shí)施例方式下面描述本公開的各個(gè)方面。應(yīng)該明白的是,本文的教導(dǎo)可以以多種多樣形式具 體體現(xiàn),并且在本文中公開的任何具體結(jié)構(gòu)、功能或兩者僅僅是代表性的?;诒疚牡慕?導(dǎo),本領(lǐng)域技術(shù)人員應(yīng)該明白的是,本文所公開的一個(gè)方面可以獨(dú)立于任何其它方面實(shí)現(xiàn), 并且這些方面中的兩個(gè)或多個(gè)方面可以按照各種方式組合。例如,可以使用本文所闡述的 任何數(shù)目的方面,實(shí)現(xiàn)裝置或?qū)嵺`方法。另外,可以使用其它結(jié)構(gòu)、功能、或除了本文所闡述 的一個(gè)或多個(gè)方面之外或不是本文所闡述的一個(gè)或多個(gè)方面的結(jié)構(gòu)和功能,實(shí)現(xiàn)這種裝置 或?qū)嵺`這種方法。此外,本文所描述的任何方面可以包括權(quán)利要求的至少一個(gè)元素。以下將結(jié)合附圖對根據(jù)本發(fā)明的家庭間DLNA設(shè)備發(fā)現(xiàn)和控制過程及裝置進(jìn)行詳 細(xì)描述。在家庭間DLNA設(shè)備發(fā)現(xiàn)和控制過程中,通常會涉及到設(shè)備檢索響應(yīng),設(shè)備上線 NOTIFY消息,設(shè)備描述文件,SOAP控制消息和事件訂閱消息。這些消息中都包含URL,并且 該URL只對本地家庭內(nèi)部的設(shè)備有意義。如果要保證家庭間設(shè)備可以相互發(fā)現(xiàn)、控制和事 件通知,必須對這些URL中進(jìn)行改寫。因此,在進(jìn)行家庭間DLNA設(shè)備發(fā)現(xiàn)和控制時(shí),需要對 上述消息進(jìn)行URL改寫。在對根據(jù)本發(fā)明家庭間DLNA設(shè)備發(fā)現(xiàn)和控制過程及裝置進(jìn)行詳細(xì)描述之前,下 面首先描述根據(jù)本發(fā)明的對本地家庭中的家庭DLNA設(shè)備向?qū)Χ思彝ブ械募彝LNA設(shè)備發(fā) 送的包含有URL的消息進(jìn)行URL改寫過程。圖1示出了根據(jù)本發(fā)明的用于對本地家庭中的家庭DLNA設(shè)備向?qū)Χ思彝ブ械募?庭DLNA設(shè)備發(fā)送的包含有URL的消息進(jìn)行URL改寫的方法的流程圖。如圖1所示,在本地家庭中的家庭DLNA設(shè)備接收到對端家庭中的家庭DLNA設(shè)備 發(fā)送的請求而要向?qū)Χ思彝ブ械脑摷彝LNA設(shè)備發(fā)送消息時(shí),首先,在步驟SllO中,將本 地家庭中的家庭DLNA設(shè)備要發(fā)送的所述消息中的URL的IP地址和端口號分別改寫為對端 家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地址和監(jiān)聽端口的端口號。然后,在步驟S120中,將本地家庭的家庭DLNA設(shè)備要發(fā)送的所述消息中的URL的路徑部分改寫為該家庭DLNA設(shè)備 的唯一標(biāo)識符(UUID)。此外,優(yōu)選地,如圖1中所示,在對所述消息中的URL進(jìn)行上述修改 后,所述進(jìn)行URL改寫的方法還可以包括步驟S130,在步驟S130中,建立URL改寫數(shù)據(jù)庫并 將所述URL改寫數(shù)據(jù)庫存儲在本地家庭的網(wǎng)關(guān)中,所述URL改寫數(shù)據(jù)存儲有改寫前URL和 改寫后URL之間的對應(yīng)關(guān)系。在其它示例中,可以不需要步驟S130。下面將參照圖2中示出的示例來對上述URL改寫過程進(jìn)行描述。圖2中示出了兩個(gè)通過hternet網(wǎng)絡(luò)(例如,VPN隧道)互聯(lián)的家庭A和B。家庭 A中包括家庭網(wǎng)關(guān)A、兩個(gè)DLNA設(shè)備,例如兩個(gè)數(shù)字媒體服務(wù)器(DMS)Al和A2,其中家庭網(wǎng) 關(guān)A的公有IP地址為202. 118.1.1,VPN隧道的IP地址(即,Web代理服務(wù)器的IP地址)為 10. 0. 0. 1,Intranet IP 地址為 192. 168. 0. 1,DMS Al 和 A2 的 IP 地址分別為 192. 168. 0. 2 和192. 168. 0. 3。家庭B中包括家庭網(wǎng)關(guān)B、一個(gè)DLNA設(shè)備,比如數(shù)字媒體控制器(DMC)或 數(shù)字媒體播放器(DMP),其中家庭網(wǎng)關(guān)B的公有IP地址為202. 118. 1.2,VPN隧道的IP地 址(即,Web代理服務(wù)器的IP地址)為10. 0. 0. 2,Intranet IP地址為192. 168. 0. 1,DMC 或DMP的IP地址分別為192. 168. 0. 1。假定DMS Al和DMS A2的唯一標(biāo)識符(UUID)分別 為Ul和U2。所述唯一標(biāo)識符例如可以為設(shè)備標(biāo)識符等。此外,假設(shè)DMS Al和DMS A2設(shè)備 描述文件的URL分別如下DMS Al :http//192.168. 0. 241952/description. html,DMS A2 :http://192. 168. 0. 341952/description html。顯然DMS Al和DMS A2的URL對家庭B內(nèi)的DMC或DMP是沒有任何意義的。如果 不對URL進(jìn)行任何處理,家庭B內(nèi)的DMC或DMP將不能獲取DMS Al和DMS A2的設(shè)備描述 文件。當(dāng)在根據(jù)本發(fā)明對圖2中的DMS Al和A2接收到DMC或DMP的請求而要向DMC或 DMP發(fā)送的消息中的URL進(jìn)行改寫時(shí),首先,將DMS Al和A2的URL的IP和端口號分別改寫 為對端家庭(即,家庭B)的網(wǎng)關(guān)上Web代理服務(wù)器的IP地址和Web代理服務(wù)器的監(jiān)聽端 口 8080。此時(shí),DMS Al和DMS A2設(shè)備描述文件的URL被改寫為DMS All :http://10.0.0.28080/description. html,DMS A21 :http://10. 0. 0. 2:8080/description. html。然后,將DMS Al和DMS A2的URL中路徑部分(描述文件)改寫為DMS Al和A2 的UUID,從而將DMS Al和A2的URL進(jìn)一步改寫成如下的格式DMS Al :http ://10. 0. 0. 2:8080/Ul,DMS A2 :http ://10. 0. 0. 2:8080/U2o在對DMS Al和A2的URL進(jìn)行上述改寫后,建立URL改寫數(shù)據(jù)庫,在該URL改寫數(shù) 據(jù)庫中存儲改寫前URL和改寫后URL的對應(yīng)關(guān)系,如表1所示,并且將所建立的URL改寫數(shù) 據(jù)庫存儲在家庭A的網(wǎng)關(guān)中,例如網(wǎng)關(guān)中的Web代理服務(wù)器中。
權(quán)利要求
1.一種用于在本地家庭和對端家庭之間進(jìn)行家庭間DLNA設(shè)備發(fā)現(xiàn)的方法,用于家庭 間DLNA設(shè)備發(fā)現(xiàn)的設(shè)備檢索多播消息從所述本地家庭中發(fā)出,以及被所述對端家庭接收, 所述方法包括本地家庭中的第一 SSDP中繼設(shè)備將所述本地家庭中的第一 SSDP代理以多播方式從本 地家庭中的家庭DLNA設(shè)備接收的設(shè)備檢索多播消息,經(jīng)由VPN隧道發(fā)送給對端家庭的第二 SSDP中繼設(shè)備;在所述對端家庭中的第二 SSDP代理從所述第二 SSDP中繼設(shè)備接收到所述設(shè)備檢索多 播消息后,以多播方式向所述對端家庭中的家庭DLNA設(shè)備發(fā)送所述設(shè)備檢索多播消息;所述對端家庭中的URL改寫單元基于所述對端家庭中的家庭DLNA設(shè)備的唯一標(biāo)識符 (UUID),對從該家庭DLNA設(shè)備接收的針對所述設(shè)備檢索多播消息的檢索響應(yīng)進(jìn)行URL改 寫,所述檢索響應(yīng)至少包括URL字段和ST字段,所述ST字段存儲檢索目標(biāo);通過所述第二 SSDP代理和第二 SSDP中繼設(shè)備,經(jīng)由所述VPN隧道將經(jīng)過URL改寫后 的檢索響應(yīng)發(fā)送到所述第一 SSDP中繼設(shè)備;以及通過所述第一 SSDP代理對所述第一 SSDP中繼設(shè)備所接收的經(jīng)過URL改寫后的檢索響 應(yīng)進(jìn)行處理,從而以單播方式將經(jīng)過URL改寫后的檢索響應(yīng)發(fā)送到本地家庭中的所述家庭 DLNA設(shè)備,其中,所述URL改寫單元基于所述對端家庭中的家庭DLNA設(shè)備的UUID,對從所接收的 檢索響應(yīng)進(jìn)行URL改寫的步驟包括將所述檢索響應(yīng)中的URL的IP地址和端口號分別改寫為所述本地家庭的網(wǎng)關(guān)中的Web 代理服務(wù)器的IP地址和監(jiān)聽端口的端口號;以及將所述檢索響應(yīng)中的URL的路徑部分改寫為所述對端家庭中的所述家庭DLNA設(shè)備的 UUID。
2.如權(quán)利要求1所述的方法,其中,如果接收到多個(gè)經(jīng)過URL改寫后的檢索響應(yīng),則通 過所述第一 SSDP代理對經(jīng)過URL改寫后的檢索響應(yīng)進(jìn)行處理的步驟包括從所述第一 SSDP中繼設(shè)備所接收的經(jīng)過URL改寫后的檢索響應(yīng)中獲取所述ST字段的值;使用socket創(chuàng)建用于單播的UDP套接字sock ;根據(jù)所述ST字段的值和本地家庭中發(fā)送設(shè)備檢索多播請求的家庭DLNA設(shè)備的檢索目 標(biāo),確定與所述檢索響應(yīng)匹配的家庭DLNA設(shè)備;以及通過所述UDP套接字sock,以單播方式將所述經(jīng)過URL改寫后的檢索響應(yīng)發(fā)送到所確 定出的匹配家庭DLNA設(shè)備。
3.一種家庭間DLNA設(shè)備發(fā)現(xiàn)裝置,包括SSDP中繼設(shè)備,用于將從SSDP代理接收的設(shè)備檢索多播消息經(jīng)由VPN隧道發(fā)送到所述 對端家庭,以及從所述對端家庭接收對設(shè)備檢索多播消息的檢索響應(yīng)并發(fā)送給SSDP代理; 或者將從所述對端家庭接收的設(shè)備檢索多播消息發(fā)送到SSDP代理,以及向所述對端家庭 發(fā)送從SSDP代理接收的對設(shè)備檢索多播消息的檢索響應(yīng),其中所述檢索響應(yīng)至少包括URL 字段和ST字段,所述ST字段存儲檢索目標(biāo);SSDP代理,用于將以多播方式從家庭內(nèi)部的家庭DLNA設(shè)備接收的設(shè)備檢索多播消息 發(fā)送到所述SSDP中繼設(shè)備,以及將從所述SSDP中繼設(shè)備接收的檢索響應(yīng)以單播方式發(fā)送給家庭內(nèi)部的對應(yīng)家庭DLNA設(shè)備,或者多播從所述SSDP中繼設(shè)備接收的設(shè)備檢索多播消 息,獲取家庭內(nèi)部的家庭DLNA設(shè)備對該設(shè)備檢索多播消息的檢索響應(yīng),所述檢索響應(yīng)至少 包括URL字段和ST字段,所述ST字段存儲檢索目標(biāo),并且將經(jīng)過改寫后的檢索響應(yīng)發(fā)送到 所述SSDP中繼設(shè)備;URL改寫單元,用于基于家庭內(nèi)部的家庭DLNA設(shè)備的唯一標(biāo)識符(UUID),對從該家庭 DLNA接收的所述檢索響應(yīng)進(jìn)行URL改寫,以及網(wǎng)關(guān),包括Web代理服務(wù)器,其中,所述URL改寫單元還包括IP地址和端口改寫單元,用于將所述檢索響應(yīng)的URL的IP地址和端口號分別改寫為對 端家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地址和監(jiān)聽端口的端口號;URL路徑改寫單元,用于將所述檢索響應(yīng)的URL的路徑部分改寫為所述家庭DLNA設(shè)備 的 UUID。
4.如權(quán)利要求3所述的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置,其中,在所述SSDP代理接收到多個(gè) 經(jīng)過URL改寫后的檢索響應(yīng)時(shí),所述SSDP代理還包括ST字段值獲取單元,用于從所述SSDP中繼設(shè)備所接收的經(jīng)過URL改寫后的檢索響應(yīng)中 獲取所述ST字段的值;套接字創(chuàng)建單元,用于使用socket創(chuàng)建用于單播的UDP套接字sock ;以及匹配家庭DLNA設(shè)備確定單元,用于根據(jù)所述ST字段的值和所述SSDP代理所屬家庭 中發(fā)送設(shè)備檢索多播請求的家庭DLNA設(shè)備的檢索目標(biāo),確定與所述檢索響應(yīng)匹配的家庭 DLNA設(shè)備,在確定出匹配的家庭DLNA設(shè)備后,所述SSDP代理通過所述UDP套接字sock,以單播方 式將所述經(jīng)過URL改寫后的檢索響應(yīng)發(fā)送到所確定出的匹配家庭DLNA設(shè)備。
5.如權(quán)利要求3所述的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置,其中,當(dāng)所述家庭間DLNA設(shè)備發(fā)現(xiàn) 裝置位于發(fā)送設(shè)備檢索多播請求的家庭時(shí),所述SSDP中繼設(shè)備將從SSDP代理接收的設(shè)備 檢索多播消息經(jīng)由VPN隧道發(fā)送到所述對端家庭以及從所述對端家庭接收對設(shè)備檢索多 播消息的檢索響應(yīng)并發(fā)送給SSDP代理;所述SSDP代理將以多播方式從家庭內(nèi)的家庭DLNA 設(shè)備接收的設(shè)備檢索多播消息發(fā)送到所述SSDP中繼設(shè)備,以及將從所述SSDP中繼設(shè)備接 收的檢索響應(yīng)以單播方式發(fā)送給家庭內(nèi)的對應(yīng)家庭DLNA設(shè)備。
6.如權(quán)利要求3所述的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置,其中,當(dāng)所述家庭間DLNA設(shè)備發(fā)現(xiàn) 裝置位于接收設(shè)備檢索多播請求的家庭時(shí),所述SSDP中繼設(shè)備將從所述對端家庭接收的 設(shè)備檢索多播消息發(fā)送到SSDP代理,以及向所述對端家庭發(fā)送從SSDP代理接收的對設(shè)備 檢索多播消息的檢索響應(yīng),所述SSDP代理多播從所述SSDP中繼設(shè)備接收的設(shè)備檢索多播 消息,獲取家庭內(nèi)部的家庭DLNA設(shè)備對該設(shè)備檢索多播消息的檢索響應(yīng),并且將經(jīng)過改寫 后的檢索響應(yīng)發(fā)送到所述SSDP中繼設(shè)備。
7.一種基于SSDP代理和SSDP中繼設(shè)備的家庭間DLNA設(shè)備發(fā)現(xiàn)方法,包括在家庭DLNA設(shè)備上線后,生成設(shè)備上線通知消息,所述設(shè)備上線通知消息中至少包括URL字段;基于所述家庭DLNA設(shè)備的唯一標(biāo)識符(UUID),對所生成的設(shè)備上線通知消息進(jìn)行URL 改寫,通過所述家庭DLNA設(shè)備所屬家庭中的第一 SSDP代理和第一 SSDP中繼設(shè)備,經(jīng)由VPN 隧道將所述經(jīng)過URL改寫后的設(shè)備上線通知消息發(fā)送到所述對端家庭中的第二 SSDP中繼 設(shè)備;通過所述對端家庭中的第二 SSDP代理,以多播方式向所述對端家庭中的家庭DLNA設(shè) 備發(fā)送所述經(jīng)過URL改寫后的設(shè)備上線通知消息,其中,對所述設(shè)備上線通知消息進(jìn)行URL改寫的步驟包括將所述設(shè)備上線通知消息中的URL的IP地址和端口號分別改寫為所述對端家庭的網(wǎng) 關(guān)中的Web代理服務(wù)器的IP地址和監(jiān)聽端口的端口號;將所述設(shè)備上線通知消息中的URL的路徑部分改寫為所述家庭DLNA設(shè)備的UUID。
8.一種家庭間DLNA設(shè)備發(fā)現(xiàn)裝置,包括設(shè)備上線通知消息生成單元,用于在家庭DLNA設(shè)備上線后,生成設(shè)備上線通知消息, 所述設(shè)備上線通知消息中至少包括URL字段;URL改寫單元,用于基于所述家庭DLNA設(shè)備的唯一標(biāo)識符(UUID),對所述設(shè)備上線通 知消息進(jìn)行URL改寫,SSDP中繼設(shè)備,用于將從SSDP代理接收的來自家庭內(nèi)部的家庭DLNA設(shè)備的所述設(shè)備 上線通知消息通過VPN隧道發(fā)送到所述對端家庭,或者從所述對端家庭接收所述設(shè)備上線 通知消息并發(fā)送給家庭內(nèi)部的SSDP代理;SSDP代理,用于將從所述URL改寫單元接收的經(jīng)過URL改寫后的設(shè)備上線通知消息發(fā) 送到所述SSDP中繼設(shè)備,或者將從所述SSDP中繼設(shè)備接收的所述對端家庭所發(fā)送的經(jīng)過 URL改寫后的設(shè)備上線通知消息,以多播方式向家庭內(nèi)部的家庭DLNA設(shè)備發(fā)送所述經(jīng)過 URL改寫后的設(shè)備上線通知消息;以及 網(wǎng)關(guān),包括Web代理服務(wù)器, 其中,所述URL改寫單元還包括IP地址和端口改寫單元,用于將所述設(shè)備上線通知消息的URL的IP地址和端口號分別 改寫為所述家庭DLNA設(shè)備所屬家庭的對端家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地址和監(jiān) 聽端口的端口號;URL路徑改寫單元,用于將所述設(shè)備上線通知消息的URL的路徑部分改寫為所述家庭 DLNA設(shè)備的UUID。
9.一種家庭間DLNA設(shè)備發(fā)現(xiàn)系統(tǒng),包括如權(quán)利要求3-6和8中任何一個(gè)所述的位于發(fā)送設(shè)備檢索多播請求或接收設(shè)備上線通 知消息的家庭中的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置;如權(quán)利要求3-6和8中任何一個(gè)所述的位于接收設(shè)備檢索多播請求或發(fā)送設(shè)備上線通 知消息的家庭中的家庭間DLNA設(shè)備發(fā)現(xiàn)裝置;VPN隧道,設(shè)置在兩個(gè)家庭之間,用于在兩個(gè)家庭之間進(jìn)行數(shù)據(jù)傳輸; 一個(gè)或多個(gè)位于發(fā)送設(shè)備檢索多播請求或接收設(shè)備上線通知消息的家庭中的家庭 DLNA設(shè)備;以及一個(gè)或多個(gè)位于接收設(shè)備檢索多播請求或發(fā)送設(shè)備上線通知消息的家庭中的家庭 DLNA設(shè)備。
10.一種基于Web代理服務(wù)器的家庭DLNA設(shè)備控制方法,該方法由接收HTTP請求的對端家庭的Web代理服務(wù)器執(zhí)行,所述方法包括在通過專用端口接收到發(fā)出HTTP請求的本地家庭中的Web代理服務(wù)器經(jīng)由VPN隧道 中繼的HTTP請求后,基于所存儲的URL改寫數(shù)據(jù)庫,對所接收的HTTP請求中的URL進(jìn)行改 寫,其中所述HTTP請求是本地家庭的Web代理服務(wù)器通過公用端口從本地家庭的家庭DLNA 設(shè)備接收的,所存儲的URL改寫數(shù)據(jù)庫是在進(jìn)行家庭DLNA設(shè)備發(fā)現(xiàn)時(shí)建立的,并且在所述 URL改寫數(shù)據(jù)庫中存儲有改寫前URL和改寫后URL之間的對應(yīng)關(guān)系;基于改寫后的HTTP請求,獲取與該改寫后的HTTP對應(yīng)的對端家庭中的家庭DLNA設(shè)備 的IP地址和端口號;利用所獲得的對端家庭中的家庭DLNA設(shè)備的IP地址和端口號,與對端家庭中的家庭 DLNA設(shè)備建立通信連接,并通過所建立的通信連接,將改寫后的HTTP請求發(fā)送給所述家庭 DLNA設(shè)備;在改寫后的HTTP請求是設(shè)備描述文件請求或SOAP請求時(shí),接收來自所述家庭DLNA設(shè) 備的完整響應(yīng)數(shù)據(jù);利用所存儲的URL改寫數(shù)據(jù)庫對所接收的完整響應(yīng)數(shù)據(jù)進(jìn)行URL改寫,并將改寫后的 響應(yīng)數(shù)據(jù)中繼給本地家庭的Web代理服務(wù)器,其中,在進(jìn)行家庭DLNA設(shè)備發(fā)現(xiàn)時(shí)建立URL改寫數(shù)據(jù)庫的步驟包括 將要被發(fā)現(xiàn)的家庭DLNA設(shè)備中的包含有URL的消息中的URL的IP地址和端口號分別 改寫為發(fā)出設(shè)備檢索多播請求的家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地址和監(jiān)聽端口的 端口號;將要被發(fā)現(xiàn)的家庭DLNA設(shè)備中的所述包含有URL的消息中的URL的路徑部分改寫為 該家庭DLNA設(shè)備的UUID ;以及建立URL改寫數(shù)據(jù)庫并將所述URL改寫數(shù)據(jù)庫存儲在所述對端家庭的網(wǎng)關(guān)中,所述URL 改寫數(shù)據(jù)存儲有改寫前URL和改寫后URL之間的對應(yīng)關(guān)系。
11. 一種用于家庭DLNA設(shè)備控制的Web代理服務(wù)器,包括接收單元,用于通過公用端口從所述Web代理服務(wù)器所屬的本地家庭的家庭DLNA設(shè)備 接收HTTP請求,以及接收來自本地家庭內(nèi)的家庭DLNA設(shè)備的對該HTTP請求的響應(yīng)數(shù)據(jù), 或者通過專用端口從對端家庭的Web代理服務(wù)器接收經(jīng)由VPN隧道中繼的HTTP請求;URL改寫單元,用于在進(jìn)行家庭DLNA設(shè)備發(fā)現(xiàn)期間,基于對端家庭的家庭DLNA設(shè)備的 唯一標(biāo)識符(UUID)建立URL改寫數(shù)據(jù)庫,并將所述URL改寫數(shù)據(jù)庫存儲在所述Web代理服 務(wù)器中,在所述URL改寫數(shù)據(jù)庫中存儲有改寫前URL和改寫后URL之間的對應(yīng)關(guān)系;HTTP請求改寫單元,用于基于所存儲的URL改寫數(shù)據(jù)庫,對通過專用端口從對端家庭 中的Web代理服務(wù)器接收到的經(jīng)由VPN隧道中繼的HTTP請求中的URL進(jìn)行改寫;IP地址和端口號獲取單元,用于基于改寫后的HTTP請求,獲取與該改寫后的HTTP對應(yīng) 的本地家庭中的家庭DLNA設(shè)備的IP地址和端口號;通信連接建立單元,用于利用所獲得的本地家庭中的家庭DLNA設(shè)備的IP地址和端口 號,與本地家庭中的家庭DLNA設(shè)備建立通信連接;響應(yīng)數(shù)據(jù)改寫單元,用于基于所存儲的URL改寫數(shù)據(jù)庫,對所接收的完整響應(yīng)數(shù)據(jù)進(jìn) 行URL改寫;發(fā)送單元,用于通過VPN隧道將HTTP請求發(fā)送到對端家庭,或者通過所建立的通信連接,將改寫后的HTTP請求發(fā)送給本地家庭中的對應(yīng)家庭DLNA設(shè)備,以及將響應(yīng)數(shù)據(jù)經(jīng)由 VPN隧道中繼給對端家庭的Web代理服務(wù)器,其中,在所述Web代理服務(wù)器用于接收HTTP請求時(shí),在改寫后的HTTP請求是設(shè)備描述 文件請求或SOAP請求時(shí),在所述接收單元接收到來自所述DLNA設(shè)備的完整響應(yīng)數(shù)據(jù)后,所 述響應(yīng)數(shù)據(jù)改寫單元對所接收的完整響應(yīng)數(shù)據(jù)進(jìn)行URL改寫,并且所述發(fā)送單元將改寫后 的響應(yīng)數(shù)據(jù)中繼給本地家庭的Web代理服務(wù)器, 其中,所述URL改寫單元還包括IP地址和端口改寫單元,用于將要被發(fā)現(xiàn)的家庭DLNA設(shè)備的URL的IP地址和端口號 分別改寫為發(fā)出設(shè)備檢索多播請求的家庭DLNA設(shè)備所屬家庭的網(wǎng)關(guān)中的Web代理服務(wù)器 的IP地址和監(jiān)聽端口的端口號;URL路徑改寫單元,用于將要被發(fā)現(xiàn)的家庭DLNA設(shè)備的URL的路徑部分改寫為該家庭 DLNA設(shè)備的UUID ;以及URL改寫數(shù)據(jù)庫建立單元,用于建立URL改寫數(shù)據(jù)庫,在所述URL改寫數(shù)據(jù)庫中存儲有 改寫前URL和改寫后URL之間的對應(yīng)關(guān)系。
12. 一種家庭DLNA設(shè)備控制系統(tǒng),包括如權(quán)利要求11所述的位于發(fā)出HTTP請求的家庭中的Web代理服務(wù)器; 如權(quán)利要求11所述的位于接收HTTP請求的家庭中的Web代理服務(wù)器; VPN隧道,設(shè)置在兩個(gè)家庭之間,用于在兩個(gè)家庭之間進(jìn)行數(shù)據(jù)傳輸; 一個(gè)或多個(gè)位于發(fā)出HTTP請求的家庭中的家庭DLNA設(shè)備;以及 一個(gè)或多個(gè)位于接收HTTP請求的家庭中的家庭DLNA設(shè)備。
全文摘要
本發(fā)明提供一種用于在本地家庭和對端家庭之間進(jìn)行家庭間DLNA設(shè)備發(fā)現(xiàn)的方法,所述方法包括在所述對端家庭中的SSDP代理將所接收的設(shè)備檢索多播消息以多播方式向所述對端家庭中的家庭DLNA設(shè)備發(fā)送后,基于所述家庭DLNA設(shè)備的UUID,對從該家庭DLNA設(shè)備發(fā)出的檢索響應(yīng)進(jìn)行URL改寫,然后以單播方式將經(jīng)過URL改寫后的檢索響應(yīng)發(fā)送到本地家庭中的所述家庭DLNA設(shè)備,其中,在URL改寫時(shí),將所述檢索響應(yīng)中的URL的IP地址和端口號分別改寫為所述本地家庭的網(wǎng)關(guān)中的Web代理服務(wù)器的IP地址和監(jiān)聽端口的端口號;以及將所述檢索響應(yīng)中的URL的路徑部分改寫為所述對端家庭中的所述家庭DLNA設(shè)備的UUID。
文檔編號H04L12/28GK102123065SQ20101062137
公開日2011年7月13日 申請日期2010年12月29日 優(yōu)先權(quán)日2010年12月29日
發(fā)明者劉冉, 劉捷妤, 張霞, 張騫, 李強(qiáng), 楊明, 趙立軍 申請人:東軟集團(tuán)股份有限公司