專利名稱::并行IGRS-UPnP的制作方法
技術領域:
:IGRS是信息設備資源共享協同服務標準(IntelligentGroupingandResourceSharing,簡稱IGRS標準),通用即插即用(UPnP)是由通用型即插即用論壇(UPnPTMForum)提出的一套網絡協議。本發明適用于消費電子設備中的設備互用性。更具體地,本發明涉及處理一個兼容IGRS和UPnP標準的并行IGRS-UPnP體系架構。
背景技術:
:消費電子標準經常是承諾遠大于現時實際所能提供的。其它設備標準經常導致設備互用性降低而不是功能性增強。美國專利7,218,243,標題為"自動設置通用遠程控制的系統和方法(Systemandmethodforautomaticallysettingupauniversalremotecontrol),是一個描述自動設置遠程控制設備的系統和方法的例子。所述系統和方法與其它引用有一個共同的方面,就是需要一個額外服務器和數據庫來上載所需的接口信息。結果可能出現需要外部的服務器連接、安全性問題和設備低效等問題。同樣,美國專利7,206,853,標題為"用于家庭網絡應用的內容提取層(Contentabstractionlayerforuseinhomenetworkapplications),定義了一個用于電子設備網絡的網絡架構體系,其包括一個使用網絡中樞的多個電子設備互連的設備層。在披露的網絡架構體系里,許多電子設備各自使用設備本身的通信協議進行運作。為了通過定義的提取層控制電子設備,需要使用一個專用API來實現披露的控制點(ControlPoint)。公開的中國專利申請200610021946.1(標題為"家庭網絡中間件開發平臺及其代碼轉換方法")詳細描述了中間件的架構體系,其傳輸用戶輸入的WSDL文檔到IGRS服務,并產生源代碼。6公開的中國專利00808405.X(標題為"橋連HAVi子網絡和UPnP子網絡的方法及實施所述方法的裝置")描述了一種網關,其連接UPnP網絡和HAVi網絡上的設備,并轉換兩種協議,從而設備能夠通過一個專用網關設備來發現和控制其它不同協議的設備。發明概述前述參考文獻的問題包括這個事實沒有支持并行的IGRS和UPnP協議。大多數文獻要求一個外部網關來將UPnP協議轉換為其它協議,并專注于設計一個控制點以便控制具有不同協議的設備。依照本發明提供的設備和相關方法,使用本發明堆桟建立的遠程控制可以控制IGRS和UPnP設備,并且不需要額外進行設置。通過任何IGRS或UPnP標準控制點,可以控制使用本發明的設備。依照本發明,一個設定的堆棧能夠提供API給開發者,以便注冊其回叫(callback)并轉換成符合IGRS和UPnP標準的服務。結果,本發明使一種設備能夠支持兩種協議,且不需要外部設備。另外,一些披露的設備需要額外修改現有的設備,以便能夠實施其他的標準。在參考文獻里披露的設備需要連接到一個額外服務器和數據庫,以便上載所需的接口,其可能導致安全性問題和設備低效。使用有關本發明堆棧而建立的遠程控制能夠控制IGRS和UPnP設備,而不需要額外進行設置。通過規避對外部網關的需求,本發明提供的設備能夠使用單個控制點來支持IGRS和UPnP應用。一個具有并行IGRS/UPnP堆棧的設備可以通過IGRS或UPnP兼容控制點來控制,而不需要對現有的IGRS/UPnP設備進行改造。IGRS和UPnP都具有相同的目標,因為兩個都期望形成一個行業標準來完成跨行業設備融合。這兩個標準都專注于相同的消費電子產品,包括家庭和公司環境里使用的智能應用和移動設備。這兩個標準都采用相似的分布式、開放的網絡架構體系。另外,這兩個標準都采用相同的TCP/IP、XML和HTTP標準。只要設備指令和命令沒有干擾地在同一網絡里出現,本發明就是有用的。由于不同的消息格式,安全性技術和協議標題,IGRS和UPnP消息經常發生消息沖突和設備錯誤。在本發明里,使用單個控制點來支持IGRS和UPnP應用。具有并行IGRS/UPnP堆棧的設備可以通過IGRS或UPnP兼容的控制點來控制,而不需要對現有的IGRS/UPnP設備進行改造,并且不需要外部網關。表格2全面比較了IGRS和UPnP協議:<table>tableseeoriginaldocumentpage8</column></row><table>在線通知當一個設備加入到網絡時,它廣告/通告其可用性和它能夠提供的所有服務。這讓控制點知道所有的設備功能性和能夠發現設備的所有不同方式。這個通知通過網絡被多播出去。表格3,IGRS在線通知消息<table>tableseeoriginaldocumentpage8</column></row><table><table>tableseeoriginaldocumentpage9</column></row><table>01-服務安全性列表(ServiceSecurityList)如果是IGRS設備在線消息,需要字符串服務安全性ID列表,由";"間隔開01-安全偵聽器列表(SecureListenerUst)可選字符串安全偵聽器列表,每個偵聽器的格式是"IPaddress:port",列表字符串由";"間隔開01-偵聽器列表(ListenerList)需要字符串偵聽器列表,每個偵聽器的格式是"IPaddress:port",列表字符串由";"間隔開表格4,Ul^nP在線通知消息標題(Header)是否需要類型描述主機(Host)需要多播地址和主機必須是239.255.255.250:l卿緩存控制(Cache-Control)需要必須有max-age指示指定廣告有效的秒數,應該大于1800秒位置需要單個URL如果設備支持非安全管道,此URL指向根設備的UPnP設備描述文檔的位置NT需要通知類型可以采用以下一種格式up叩rootdeviceuuid:<fevfc£t/SiVNTS需要單個URI必須是ssdp:alive服務器(server)需要字符串串聯OS名稱、OS版本、UPnP/1.0、產品名稱、和產品版本USN需要單個URI可以采用以下一種格式uuid:rfeviceWJV::upnp:rootdeviceuuid:rfev/ce-f/iW::swv/ce^VpeWiV表格5,并行IGRS隱UPnP在線通知消息標題(Header)是否需要類型描述主機(Host)需要多播地址和主機必須是239.255.255.250:l卯0緩存控制(Cache-Control)需要必須有max-age指示指定廣告有效的秒數,應該大于1800秒位置需要單個URL如果設備支持非安全管道,此URL指向并行IGRS-UPnP設備描述文檔的位置NT需要通知類型可以采用以下一種格式upnp:rootdeviceNTS需要單個URI必須是ssdp:alive服務器(server)需要字符串串聯OS名稱、OS版本、協議/1.0、產品名稱、和產品版本USN需要單個URI可以采用以下一種格式uuid:i/ev/cen^::up叩rootdeviceuuid:devJcel/RiVuuid:rfevfceWW::rfev/ce7Vpe10<table>tableseeoriginaldocumentpage11</column></row><table>離線通知當一個設備離開網絡時,它通過發送離線通知消息通知控制點它要離開,以對應之前已經發出的每個在線通知。從而通知控制點此設備及其服務將不再可用。這個通知通過網絡被多播出去。表格6,IGRS離線通知消息<table>tableseeoriginaldocumentpage12</column></row><table>01-IGRS消息類型(IGRSMessageType)需要字符串必須是以下一個值DeviceOfflineAdvertisementServiceOfflineAdvertisementOl-源設備ID(SourceDeviceld)需要單個URI與對應在線通知消息里的01-SourceDeviceld標題值相同01-服務ID(Serviceld)如果是IGRS月艮務離線消息,稀^^32比特無符號整數(o保留)與對應在線通知消息里的01-Serviceld標題值相同當控制點發出發現消息以搜索在網絡上的設備和服務并找到一個滿足其搜索條件時,發現(discovery)就產生了。表格9,IGRS發現請求消息(DiscoveryRequestMessage):標題(Header)是否需要類型描述主機需要多播地址和主機必須是239.255.255.250:1900Man需要字符串必須是ssdp:discoverMX需要整數回應的最大秒數,最大值是120秒ST需要單個URI必須是以下一個值urn:schemas-IGRS-org:device:IGRSdevice:lurn:schemas-IGRS-org:service:IGRSservice:lM加需要字符串必須是"http:〃www.igrs.org/specl.0";ns-0101-IGRS版本(IGRSVersion)需要字符串必須是IGRS/1.001-IGRS消息類型(IGRSMessageType)需要字符串必須是以下一個值ScarchDeviceRcqucstSearchServiceRequestOl-源設備ID(SourceDeviceld)需要單個URI設備URNOl-序列ID(Sequenceld)需要32比特無符號整數(o保留)搜索請求消息的序列IDOl-客戶機ID(Clientld)需要32比特無符號整數(o保留)客戶機ID01-搜索全部(SearchAll)可選字符串必須是TRUEOl-根據設備名稱搜索(SearchByDeviceName)可選字符串設備名稱Ol-根據設備類型搜索(SearchByDeviceType)可選單個URI設備類型UKNOl-根據設備ID搜索(SearchByDeviceld)可選單個URI設備UKNOl-根據設備組ID搜索(SearchByDeviceGroupId)可選單個URI設備組URNOl-根據服務類型搜索(SearchByServiceType)可選單個URI服務類型URNOl-根據服務名稱搜索(SearchByServiceName)可選字符串服務名稱13表格10,UPnP發現請求消息(DiscoveryRequestMessage):<table>tableseeoriginaldocumentpage14</column></row><table>表格11,并行IGRS-UPnP發現請求消息(DiscoveryRequestMessage):_<table>tableseeoriginaldocumentpage14</column></row><table>01-根據服務類型搜索(SearchByServiceType)可選單個URI服務類型URN01-根據服務名稱搜索(SearchByServiceName)可選字符串服務名稱表格12,IGRS發現回應消息(DiscoveryResponseMessage):<table>tableseeoriginaldocumentpage15</column></row><table>需要字符串設備安全性ID列表,列表字符串通過";"間隔開。表格13,UPnP發現回應消息:<table>tableseeoriginaldocumentpage15</column></row><table>uuichrfew'ce!7AV:upnp-rootdeviceuuid:vtoC/iW表格13,并行IGRS-UPnP發現回應消息(DiscoveryResponseMessage):_標題(Header)是否需要類型描述緩存控制(Cache-Control)需要必須有max-agc指不指定廣告有效的秒數,應該大于1800秒。Ext需要無數值位置(Location)需要單個URL如果設備支持非安全管道,此URL指向并行IGRS-UpnP設備描述的位置。服務器(Server)需要字符串串聯OS名稱、OS版本、協議/1.0、產品名稱、和產品版本ST需要單個URI與在對應請求消息里的ST標題值相同。USN需要單個URI可以采取以下任何一種格式uuid:cfevfceWfiV:up叩-rootdeviceuuid:fevfceC^Vuuid:dcviceURN::service7ypel7RJVMan需要字符串必須是http:〃www.igrs.org/specl.0;ns=0101-IGRS版本需要字符串必須是IGRS/1.001-IGRS消息類型需要字符串必須是以下一個數值SearchDeviceResponseSearchServiceResponseOl-源設備IDCSourceDeviceld)需要單個URI源設備URNOl-目標設備ID(TargetDeviceld)需要單個URI目標設備UKNOl-安全偵聽器列表(SecureListenerList)可選字符串安全偵聽器列表,每個偵聽器的格式是"IPaddress:port",列表字符串通過";"間隔開。Ol-偵聽器列表(ListenerList)需要字符串偵聽器列表,每個偵聽器的格式是"IPaddress:port",列表字符串通過";"間隔開。Ol-設備安全性ID列表(DeviceSecurityldList)需要字符串設備安全性ID列表,列表字符串通過";"間隔開。通過實施本發明披露的并行IGRS-UPnP堆棧,可以通過模塊再用而使消息合并和降低存儲器使用量,從而降低網絡流量。作為直接和期望的結果,不需要從各個標準團體獲得支持,因為此堆棧是完全兼容標準的。圖1是本發明首選實施例的模塊圖。16圖2描述本發明首選實施例結構體系被施加到IGRS、UPnP和并行IGRS-UPnP設備的模塊圖。圖3描述依照本發明運行的電子設備的示意圖。圖4描述本發明的并行IGRS-UPnP設備運行的流程圖。優選實施例描述圖l描述本發明首選實施例的模塊示意圖。依照圖l,設備lOl、103、105之間的互動是由四個運行階段即發現(在線)121、描述131、控制141和發現(離線)151掌控。對于IGRS和并行IGRS-UPnP設備,發現(在線)121從實時通知123開始,其中該設備將"設備是活動的"通知給網絡上的其它設備。在實時通知之后,進入描述階段131,其中管道設置133之后,是IGRS設備描述135和IGRS服務描述137。在完成描述階段131之后,控制階段141開始會話設置143、動作控制145、會話中止147和管道斷開19。發現(離線)151以離線通知153結束。依照本發明的一個實施例,并行IGRS-UPnP設備是一個控制點,通過動作控制145控制網絡里IGRS設備的動作。圖1還描述實施到UPnP和并行IGRS-UPnP設備的本發明首選實施例的模塊圖。對于UPnP設備,設備IOI、103、105之間的互動同樣是由四個運行階段即發現(在線)121、描述131、控制141和發現(離線)151掌控。對于UPnP和并行IGRS-UPnP設備,發現(在線)121是從實時通知122開始,其中設備將"設備是活動的"通知給網絡上的其它設備。在實時通知之后,進入描述階段131,其中UPnP設備描述134之后是UPnP服務描述136。在完成描述階段131之后,控制階段141是從動作控制144開始。發現(離線)151以離線通知154結束。依照本發明的一個實施例,并行IGRS-UPnP設備是一個控制點,通過動作控制144控制網絡里UPnP設備的動作。依照本發明的另一個實施例,并行IGRS-UPnP設備充當一個控制點,分別通過動作控制145和動作控制144控制網絡里IGRS設備和UPnP設備的動作。圖2描述本發明首選實施例的一個架構體系模塊圖,其被實施到IGRS、UPnP和并行IGRS-UPnP設備。圖2架構體系概覽201詳細描述端口層210,其具有被連接到迷你服務器(mini-server)214的第一端口211和被連接到多播偵聽器(multicasUistener)224的第二端口221。包括mini-server214和多播偵聽器224的應用(或API)層220也包括HTTP發送器(sender)228。在應用層220之下是概要處理器(profilehandler)會話層230,其中UPnP概要處理器231和IGRS概要處理器233支持迷你服務器214、多播偵聽器224和HTTP發送器228。在概要處理器會話層230之下是設備處理器會話層240。設備處理器會話層240包括廣告處理器(AdvertisementHandler)242、事件處理器(EventHandler)244、描述處理器(DescriptionHandler)246、發現處理器(DiscoveryHandler)247和IGRS管道/會話管理器248。傳輸層250包括核心庫(CoreLibrary)252,其處理諸如HTTP,XML,SSDP,GENA,SOAP,WSDL和安全性的協議。架構體系概覽201也描述了提取層(AbstractLayer)260和硬件平臺層(HardwarePlatformlayer)270。圖3描述本發明電子設備運行的結構示意圖。設備群301包括無線IGRS顯示器303、無線UPnP音頻內容設備307、UPnP顯示器309、被連接到并行IGRS-UPnP媒體播放器315的有線和無線網關312、控制點318和安裝有IGRS和UPnP軟件以便具有合并IGRS和UPnP控制能力的計算機321。圖4描述本發明的并行IGRS-UPnP設備運行的流程圖。在在線步驟401,依照本發明的一個實施例,并行IGRS-UPnP設備在一個具有IGRS設備和UPnP設備的網絡里發現了其它在線設備;依照本發明的另一個實施例,并行IGRS-UPnP設備通知網絡里的一些或所有在線設備該并行IGRS-UPnP設備就要在線了。依照本發明的一個實施例,在線步驟401包括構成共同操作消息,該消息包括一部分僅與IGRS協議兼容的內容、一部分僅與UPnP協議兼容的內容、和一部分與IGRS和UPnP協議都兼容的內容,使得整個18消息可在網絡中的IGRS設備和UPnP設備之間共同操作。然后,并行IGRS-UPnP設備可以被廣播或傳輸這個消息到網絡里的其它設備。依照本發明的一個實施例,并行IGRS-UPnP設備積極主動地廣播可共同消息以便發現網絡里的其它設備。依照本發明的另一個實施例,并行IGRS-UPnP設備構成并廣播共同操作操作消息以便通知網絡里其它設備就要在線了。在描述步驟402,并行IGRS-UPnP設備描述了那些在線設備,它們在發現步驟401被發現的。在控制步驟403,并行IGRS-UPnP設備設備控制一些或所有在線設備。依照本發明的一個實施例,并行IGRS-UPnP設備在控制步驟403里以1對1方式構成并傳輸以上所述共同操作消息。在通知步驟404,并行IGRS-UPnP設備通知網絡里的一些或所有在線設備該并行IGRS-UPnP設備就要離線了。依照本發明的一個實施例,并行IGRS-UPnP設備在通知步驟404構成并廣播以上所述的共同操作消息。以上披露與詳細描述的技術內容及其發明特征有關。本領域技術人員可以基于所述本發明的披露和建議作出各種改變和替換,而不會脫離本發明的特征。然而,盡管在以上描述里沒有完全披露這種改變和替換,但它們屬于以下附加權利要求的范圍內。權利要求1.一種在具有至少一個IRGS設備或至少一個UPnP設備或兩者都有的網絡上運行并行IGRS-UPnP設備的方法,包括步驟包括至少一個消息,所述消息包括僅與IGRS協議兼容的第一部分內容;僅與UPnP協議兼容的第二部分內容;和與IGRS和UPnP協議都兼容的第三部分內容;以及廣播所述消息到網絡上的其它設備;其中整個消息可在網絡中的IRGS設備和UPnP設備之間共同操作。2.根據權利要求1所述的并行IGRS-UPnP設備運行方法,另外還包括步驟發現在線設備;描述在線設備;控制在線設備;和通知在線設備有一個指定設備就要離線了;其中所述廣播步驟至少在所述發現步驟、所述控制步驟和所述通知步驟上進行。3.根據權利要求2所述的并行IGRS-UPnP設備運行方法,其中所述發現步驟還包括一個實時通知(AliveNotification)步驟。4.根據權利要求2所述的并行IGRS-UPnP設備運行方法,其中所述發現步驟還包括步驟:積極主動地廣播消息以便發現所述網絡里其它設備的。5.根據權利要求2所述的并行IGRS-UPnP設備運行方法,其中所述描述步驟還包括一個管道設置(PipeSetup)步驟。6.根據權利要求5所述的并行IGRS-UPnP設備運行方法,其中所述描述步驟還包括一個管道斷開(PipeDisconnection)步驟。7.根據權利要求2所述的并行IGRS-UPnP設備運行方法,其中所述描述步驟還包括一個IGRS設備描述(DeviceDescription)步驟。8.根據權利要求7所述的并行IGRS-UPnP設備運行方法,其中所述描述步驟還包括一個IRGS服務描述(ServiceDescription)步驟。9.根據權利要求2所述的并行IGRS-UPnP設備運行方法,其中所述控制步驟還包括一個管道設置步驟。10.根據權利要求9所述的并行IGRS-UPnP設備運行方法,其中所述控制步驟還包括一個會話設置(SessionSetup)步驟。11.根據權利要求10所述的并行IGRS-UPnP設備運行方法,其中所述控制步驟還包括一個用來控制網絡里IGRS設備、UPnP設備或此兩種類型設備動作的動作控制(ActionControl)步驟。12.根據權利要求10所述的并行IGRS-UPnP設備運行方法,其中所述控制步驟還包括一個會話中止(SessionTermination)步驟。13.根據權利要求9所述的并行IGRS-UPnP設備運行方法,其中所述控制步驟還包括一個管道斷開步驟。14.根據權利要求2所述的并行IGRS-UPnP設備運行方法,其中所述通知步驟還包括一個離線通知(OfflineNotification)步驟。15.根據權利要求2所述的并行IGRS-UPnP設備運行方法,其中所述控制步驟命令在所述IGRS設備和所述UPnP設備之間的直接數據轉換。16.—個用于具有至少一個IGRS設備或至少一個UPnP設備或兩種設備都有的網絡里的并行IGRS-UPnP設備,包括一個處理單元,用來構成至少一個消息,包括僅與IGRS協議兼容的第一部分內容;僅與UPnP協議兼容的第二部分內容;和與IGRS和UPnP協議都兼容的第三部分內容;其中整個消息可在所述網絡中的IRGS設備和UPnP設備之間共同操作;一個存儲器單元,用來存儲所述消息;和一個網絡接口單元,包括一個用來廣播所述消息到網絡里其它設備的傳輸模塊。17.根據權利要求16所述的并行IGRS-UPnP設備,其中所述網絡接口單元還包括一個收發模塊,用來發送消息到網絡里的其它設備或從網絡里的其它設備接收消息;一個協議處理器模塊,用來翻譯與HTTP、XML、SSDP、GENA、SOAP和WSDL協議兼容的消息。18.根據權利要求16所述的并行IGRS-UPnP設備,還包括至少一個用戶接口單元。19.一個并行IGRS-UPnP系統,包括至少一個IGRS設備;至少一個UPnP設備;一個控制點設備,可被操作以廣播至少一個消息到所述IGRS和UPnP設備,所述消息包括僅與IGRS協議兼容的第一部分內容;僅與UPnP協議兼容的第二部分內容;和與IGRS和UPnP協議都兼容的第三部分內容;其中整個消息可在所述IRGS設備和UPnP設備之間共同操作。20.根據權利要求19所述的并行IGRS-UPnP系統,其中所述控制點設備還可以被操作以從所述IGRS設備和所述UPnP設備發送或接收消息。21.根據權利要求20所述的并行IGRS-UPnP系統,其中所述控制點設備還被操作以控制所述IGRS設備和UPnP設備之間的直接數據轉換。全文摘要在此披露的本發明可用于消費電子設備互用。本發明提供用于處理一個兼容IGRS和UPnP標準的并行IGRS-UPnP體系架構201的系統、裝置和方法。文檔編號H04L29/06GK101547206SQ20091013286公開日2009年9月30日申請日期2009年4月14日優先權日2008年4月14日發明者吳志剛,王夏妍申請人:香港應用科技研究院有限公司