專利名稱:在網絡中維持用于裝置的永久唯一標識符的方法和系統的制作方法
技術領域:
本發明涉及裝置識別,更具體地說涉及網絡中的裝置識別。
背景技術:
很多用于網絡的裝置體系標準采用兩裝置類型模型控制器裝置(即,控制器)和被控裝置。在這種模型中,控制器擔當被控裝置的控制者。控制器跟蹤被控裝置的狀態以維持對被控裝置的連接和操作。在家庭網絡環境中,被控裝置可因為諸如軟件缺陷、電源故障、用戶干預等的不同的原因從網絡中被移除。在這種情況下,如果被控裝置被從家庭網絡中移除且隨后被重新連接到該家庭網絡,則控制器可要求采用該被控裝置的相同的狀態以繼續以前的操作,而沒有中斷。如此,對于識別所述裝置并采用相同的狀態來說,用于裝置的永久唯一標識符是必要的。
傳統地,通用即插即用(UPnP)采用兩個標識符(1)根設備(root device)的UPnP描述的統一資源定位符(URL)包含文字IP地址和端口號;和(2)唯一設備名(UDN)是UPnP描述中的用于裝置的通用唯一標識符。但是,所述UPnP裝置體系規范規定了UND是基于MAC地址和時間的,所以UND不是根據時間的恒量。由于當裝置重新啟動時可能分配新IP地址或者不同的端口號,所以URL也可被改變。
家用視聽交互操作(HAVi)體系采用全局唯一標識符(GUID)以不依賴于火線總線復位地識別裝置,因為火線標識符可在火線總線復位后改變。然而,如果裝置沒有永久性,則用于該裝置的GUID被允許隨時間而改變。另外,一些裝置體系沒有為裝置定義標識符。這種情況下,識別裝置成為了控制器的責任。
當不同裝置堆棧和協議在網絡中被混合并且控制器必須采用混合的裝置時,情況變得更加復雜。在這樣的環境中,控制器需要從不同的裝置體系中識別裝置。另外,很多控制器可在網絡中共存。
因此,需要一種維持用于裝置的永久唯一標識符的方法和系統。還需要這樣一種方法和系統,該方法和系統允許控制器使用用于相同裝置的相同標識符,從而通過共享標識符,來自一個控制器的操作可容易地傳送到其他控制器。
發明內容
本發明處理了上述問題。在一個實施例中,本發明提供了一種自動地維持用于聯網的裝置的永久唯一標識符的方法和系統,所述聯網的裝置可從網絡中被移除,并且隨后被重新引入該網絡。
根據本發明的在網絡中維持用于相互連接的裝置的永久唯一標識符的方法的實施例包括步驟從裝置獲得信息;從所述信息生成指紋;確定所述指紋是否以前與網絡中的標識符相關聯;如果所述指紋以前不與網絡中的標識符相關聯,則(a)生成與指紋相關聯的新的標識符;和(b)在存儲器中存儲所述指紋和相關聯的新的標識符,其中,所述新的標識符形成用于所述裝置的永久唯一標識符(PUID);反之,如果所述指紋以前與網絡中的標識符相關聯,則利用存儲在所述存儲器中的相關聯的標識符作為用于所述裝置的永久唯一標識符。
從裝置獲得的信息可包括裝置信息。確定所述指紋是否以前與網絡中的標識符相關聯的步驟還可包括在存儲器中搜索存儲的指紋和相關聯的標識符的步驟。生成與指紋相關聯的新的標識符的步驟還可包括將所述指紋映射到唯一標識符的步驟。另外,生成指紋的步驟還可包括從獲得的信息生成消息摘要的步驟。
存儲新的標識符的步驟還可包括將與所述消息摘要相關聯的新的標識符存儲在控制器的存儲器或者永久存儲器中的消息摘要表中的所述步驟。另外,生成與消息摘要相關聯的新的標識符的步驟可包括將消息摘要映射到唯一標識符的步驟。所述的方法還可包括向網絡中的裝置控制器廣播新的PUID的步驟,為了在網絡中的所述裝置控制器間維持用于所述裝置的PUID的一致性。
本發明的另一實施例提供了一種在網絡中維持用于相互連接的裝置的永久唯一標識符的系統,包括識別設備,用于從自裝置獲得的信息生成指紋;映射器,用于確定所述指紋是否以前與網絡中的標識符相關聯;生成器,用于生成新的標識符;因此如果所述指紋以前不與網絡中的標識符相關聯,則生成器生成與所述指紋相關聯的新的標識符,并且映射器在存儲器中存儲所述指紋和相關聯的新的標識符,其中,所述新的標識符形成用于所述裝置的永久唯一標識符;反之,如果所述指紋以前與網絡中的標識符相關聯,則映射器利用存儲在所述存儲器中的相關聯的標識符作為用于所述裝置的永久唯一標識符。
在本發明的另一實施例中提供了一種網絡,包括多個與控制器相互連接的裝置,所述控制器用于控制一個或多個所述裝置;和與網絡連接的系統,其中,所述系統允許控制器為一個或多個所述裝置維持永久唯一標識符,所述系統包括識別設備,用于從自裝置獲得的消息生成指紋;映射器,用于確定所述指紋是否以前與網絡中的標識符相關聯;生成器,用于生成新的標識符;其中,如果所述指紋以前不與網絡中的標識符相關聯,則生成器生成與所述指紋相關聯的新的標識符,并且映射器在存儲器中存儲所述指紋和相關聯的新的標識符,其中,新的標識符形成用于所述裝置的永久唯一標識符;并且如果所述指紋以前與網絡中的一個標識符相關聯,則映射器利用存儲在所述存儲器中的相關聯的標識符作為用于所述裝置的永久唯一標識符。
根據本發明,通過采用永久唯一標識符,控制器可識別相同的被控裝置并且采用他們先前的狀態以在不重新配置的情況下引用相同的被控裝置的操作。這允許了快速錯誤恢復。這種方法和系統提供了唯一標識符,即使所述裝置體系沒有定義標識符。
另外,通過使用永久唯一標識符,控制器可共享所述標識符并且容易地向其他控制器傳送操作。通過將操作從有故障的控制器傳送到其他控制器,網絡可更加可靠。另外,用戶可移動到其他位置并且可通過將操作從網絡中的以前的位置的控制點傳送到新位置的控制點來繼續操作。在另一實施例中,控制點利用將被識別的裝置來將全局唯一永久ID存儲回所述裝置。然后,當該控制點再次遇到該裝置時,所述控制點可從該裝置中重新得到該ID。
從以下的結合附圖的說明中,本發明的其他實施例、特點和優點將變得明顯。
圖1示出了根據本發明實施例的網絡的示例的功能框圖;圖2示出了根據本發明另一實施例的在網絡中維持用于裝置的永久唯一標識符的系統的示例的功能框圖;和圖3示出了根據本發明另一實施例的網絡中維持用于裝置的永久唯一標識符的示例的方法的流程圖。
具體實施例方式
在本發明的一個實施例中提供了一種方法和系統,所述方法和系統用于自動地維持用于聯網的裝置的永久唯一標識符,所述聯網的裝置可從網絡中被移除,并隨后被再次引入網絡。
圖1示出了網絡10(例如,家庭網絡)的示例的功能框圖,在所述網絡中本發明的實施例被實現。在本示例中,手持裝置100、遙控器110、以及諸如DVD播放器120、TV130和CD自動電唱機140的家用電子裝置被連接到家庭網絡10。所述手持裝置100和遙控器110是用于控制家用電子裝置(即,被控裝置)的控制點(即,控制器)。
控制器100和110發現網絡10中的被控裝置120、130和140,并且從被控裝置120、130和140檢索裝置描述。利用所述裝置描述,控制器100和110產生用于控制被控裝置120、130和140的永久唯一標識符(persistentunique identifier,PUID)。
在一個示例中,手持裝置100使用永久唯一標識符控制CD自動電唱機140為用戶播放樂曲列表,同時將當前樂曲的信息顯示在手持裝置100的顯示器上。手持裝置100執行維持用于每一被控裝置的永久唯一標識符的方法,通過所述永久唯一標識符,手持裝置100可跟蹤被控裝置的操作。
在一種操作情景中,如果CD自動電唱機140被從網絡10中斷開(例如,由于暫時的電源斷電),并隨后重新連接到網絡10,則手持裝置100唯一地重新識別CD自動電唱機140(即,產生相同的永久唯一標識符)以繼續先前播放樂曲列表的會話。如果沒有根據本發明的這個特點,則用戶需要重新調用手持裝置100的命令以播放所述樂曲列表。
圖2示出了根據本發明的系統200的結構的示例的功能框圖,所述系統200為每個被控裝置產生并維持永久唯一標識符(PUID)。所述系統200可被實現在每個控制器中。在本示例中,所述系統包括識別器部件210、映射器220、PUID生成器230和PUID共享部件240。
在本示例中,識別器部件210識別相同的被控裝置,即使在該裝置重啟后。所述識別器部件210使用來自裝置的裝置描述來識別該裝置(裝置描述的例子包括裝置名稱的hash、裝置API、裝置MAC地址、裝置服務描述、裝置配置、裝置序列號等)。識別器部件210利用裝置和服務描述,而不是來自該裝置的簡單的標識符,因為來自裝置的簡單的標識符可通過重啟而改變。另外,采用裝置描述提供了更健壯的識別處理。
如本領域技術人員將理解的,根據本發明,可利用允許系統為每個裝置生成永久唯一標識符的其他信息來代替所述裝置描述或與其一起使用。
識別器部件210從裝置描述生成指紋或者消息摘要(message digest)。諸如MD5消息摘要算法或者循環冗余碼校驗(CRC)的技術可被用于生成消息摘要。消息摘要通常是128比特的固定的數,并且從任意長度的消息被生成。一般,生成兩個具有相同消息摘要的消息或者生成具有預定的目標消息摘要的任何消息在計算上是不可行的。想法是多種信息被獲得并且被用于生成所述ID。因此,映射器220不存儲信息,而是利用hash功能從所述信息生成PUID。
映射器220使用由識別器部件210生成的消息摘要來確定所述裝置對于與系統相關聯的控制器來說是否是已知的。為此,映射器220從內部表(例如,消息摘要表)中搜索該消息摘要,所述內部表維持從消息摘要到永久標識符的映射。映射器220可采用諸如hash表的已知技術進行從一個實體到另一個實體的映射,其中,hash表是一個字典,在hash表中關鍵字通過hash功能被映射到一個位置。在本發明的一個實施例中,所述字典的關鍵字是消息摘要,所述字典的值是永久標識符。
如果裝置的消息摘要在映射器220的內部表中被找到,則相關聯的PUID250被控制器采用。如果裝置的消息摘要沒有在映射器220的內部表中被找到,則生成器230生成唯一標識符。全局唯一標識符(GUID)廣泛用于生成唯一標識符。由于GUID算法要求可能不可用的實時時鐘(RTC),因此,簡單的隨機數可代替時鐘值。新的PUID 250通過映射器220被生成并且與消息摘要相關聯。新的PUID 250也被存儲在映射器220的內部表中。
在另一個實施例中,沒有使用表,而是對于裝置的某些分類,在hash功能中使用了與裝置相關的特定信息以生成全局唯一PUID。如此,指紋從消息摘要和識別器部件被生成并且被用作PUID。使用裝置描述以生成PUID的示例包括步驟讀取UPnP描述;檢查PUID是否已經存在;如果不存在,則從所述描述中提取API,從所述描述中提取裝置名稱,從所述描述中提取制造商名稱和序列號,對提取的信息進行hash,結果為128比特數,采用該數作為PUID。可選實施例是將hash本身作為ID,從而不再需要查找表。Hash通常為128比特數,所以他們本身可容易地被用作ID。
PUID共享部件240向網絡中的其他控制器廣播新的PUID 250。PUID共享240負責在控制器間維持用于裝置的永久標識符PUID的一致性。其他控制器有可能同時生成新的PUID并且向其他控制器廣播。每一控制器中的PUID共享部件240實現典型分布式更新,以拾取網絡中使用的唯一標識符。在另一個示例中,復制技術可被用于PUID共享部件240以通過減少網絡通信量使PUID共享部件240更有效率。
在可選實施例中,識別器部件210實現規則基礎決策邏輯(rule-baseddecision logic)而不是來自裝置的裝置描述。規則基礎決策邏輯可被用于識別裝置描述字段以確定相似的裝置。在一個示例中,規則使用序列號或者產品UPC來識別裝置。本領域技術人員應該理解,其他示例規則也可被采用。
當控制器被開啟并連接到網絡時,控制器促使映射器建立上述用于網絡中的被控裝置的映射。采用永久存儲器存儲由映射器220維持的永久標識符,控制器可避免重復建立映射,并且向用戶提供一致性。
圖3示出了根據本發明的另一實施例的生成并且維持唯一永久裝置標識符的步驟的示例的流程圖。所述步驟可作為連接到網絡10的獨立系統被實現或者被實現在圖1的每個控制器中。在圖3的流程圖中,控制器中的示例的操作被描述,其中,所述控制器初始地或者在裝置重新連接到網絡之后識別該裝置。同樣,控制器執行以下步驟從裝置獲得裝置描述以識別該裝置(步驟300)。
從裝置描述生成指紋或者消息摘要(步驟310)。
在消息摘要表中搜索生成的消息摘要以確定所述裝置對控制器是否是已知的(步驟320)。
是否在消息摘要表中找到生成的消息摘要(步驟330)。
如果在消息摘要表中找到用于該裝置的消息摘要,則訪問消息摘要表中的相關聯的PUID,并且控制器使用所述PUID以識別裝置(步驟340)。
如果在消息摘要表中沒有找到用于該裝置的消息摘要,則如上所述生成新的PUID(步驟350)。
在消息摘要表中存儲新的PUID(步驟360)。
向網絡中的其他控制器廣播新的PUID(步驟370)。
在控制器間維持用于裝置的PUID的一致性(步驟380)。
通過采用永久唯一標識符,控制器可識別相同的被控裝置并且采用他們先前的狀態來在不重新配置的情況下引用相同被控裝置的操作。這允許了快速錯誤恢復,并且更重要的是,允許了對用戶的一致性。這種方法和系統提供了唯一標識符,即使所述裝置體系沒有定義標識符。
例如,如果用戶有一部手機,并且使用該手機連接到系統以傳輸內容到該手機,則當用戶從系統斷開連接并且隨后返回并使用同一手機重新連接到系統時,利用根據本發明的PUID方案,所述系統可再次識別出該相同的手機。
另外,通過使用永久唯一標識符PUID,控制器可共享所述標識符并且容易地向其他控制器傳送操作。通過將操作從有故障的控制器傳送到其他控制器,網絡可更加可靠。另外,用戶可移動到其他位置并且可通過將操作從網絡中的以前的位置上的控制點傳送到新位置上的控制點來繼續操作。
盡管本發明允許很多不同形式的實施例,但是本發明優選實施例在附圖中被示出并且在此將被詳細說明,這是基于這樣的理解,即本公開應被認為是本發明原理的示例,并且本公開不意味著將本發明的范圍限于所示實施例。如本領域技術人員已知,根據本發明的上述圖1和圖2中的示例結構可以以很多方式實現,諸如由處理器執行的程序指令、邏輯電路、ASIC、固件等。因此,本發明不限定于在此描述的示例性實施例。
本發明參照其特定優選版本被相當詳細的描述;但是,其他版本也可能存在。因此,權利要求的精神和范圍不應限定在這里包含的優選版本的描述。
權利要求
1.一種在網絡中維持用于相互連接的裝置的永久唯一標識符的方法,所述方法的步驟包括從裝置獲得信息;從所述信息生成指紋;確定所述指紋是否以前與網絡中的標識符相關聯;如果所述指紋以前不與網絡中的標識符相關聯,則(a)生成一個與所述指紋相關聯的新的標識符;和(b)在存儲器中存儲所述指紋和相關聯的新的標識符,其中,所述新的標識符形成用于該裝置的永久唯一標識符;如果所述指紋以前與網絡中的標識符相關聯,則利用存儲在存儲器中的相關聯的標識符作為用于所述裝置的永久唯一標識符。
2.如權利要求1所述的方法,其中,從裝置獲得信息的步驟還包括從裝置獲得裝置信息的步驟。
3.如權利要求1所述的方法,其中,確定所述指紋是否以前與網絡中的標識符相關聯的步驟還包括在存儲器中搜索存儲的指紋和相關聯的標識符的步驟。
4.如權利要求1所述的方法,其中,生成與所述指紋相關聯的新的標識符的步驟還包括將該指紋映射到唯一標識符的步驟。
5.如權利要求1所述的方法,其中,生成指紋的步驟還包括從獲得的信息生成消息摘要的步驟。
6.如權利要求5所述的方法,其中,存儲新的標識符的步驟還包括將與消息摘要相關聯的所述新的標識符存儲在存儲器中的消息摘要表中的步驟。
7.如權利要求5所述的方法,其中,生成與消息摘要相關聯的新的標識符的步驟還包括將該消息摘要映射到唯一的標識符的步驟。
8.如權利要求1所述的方法,還包括向網絡中的裝置控制器廣播新的永久唯一標識符的步驟。
9.如權利要求8所述的方法,還包括在網絡中所述裝置控制器間維持用于所述裝置的永久唯一標識符的一致性的步驟。
10.一種在網絡中維持用于相互連接的裝置的永久唯一標識符的系統,包括識別設備,用于從自裝置獲得的信息生成指紋;映射器,用于確定所述指紋是否以前與網絡中的標識符相關聯;生成器,用于生成新的標識符;其中,如果所述指紋以前不與網絡中的標識符相關聯,則生成器生成與所述指紋相關聯的新的標識符,并且映射器在裝置的存儲器中存儲所述指紋和相關聯的新的標識符,其中,所述新的標識符形成用于所述裝置的永久唯一標識符;和如果所述指紋以前與網絡中的標識符相關聯,則映射器利用存儲在所述存儲器中的相關聯的標識符作為用于所述裝置的永久唯一標識符。
11.如權利要求10所述的系統,其中,從所述裝置獲得的信息包括裝置信息。
12.如權利要求10所述的系統,其中,所述映射器通過在所述存儲器中搜索存儲的指紋和相關聯的標識符來確定所述指紋是否以前與網絡中的標識符相關聯。
13.如權利要求10所述的系統,其中,所述生成器還將所述指紋映射到唯一標識符。
14.如權利要求10所述的系統,其中,所述識別設備通過從獲得的信息生成消息摘要來生成指紋。
15.如權利要求14所述的系統,其中,所述映射器在所述存儲器中的消息摘要表中存儲與所述消息摘要相關聯的新的標識符。
16.如權利要求14所述的系統,其中,所述生成器通過將所述消息摘要映射到唯一標識符來生成與所述消息摘要相關聯的新的標識符。
17.如權利要求10所述的系統,還包括一致性檢查器,用于向網絡中的裝置控制器廣播新的永久唯一標識符。
18.如權利要求17所述的系統,其中,所述一致性檢查器用于在網絡中的裝置控制器間維持用于所述裝置的永久唯一標識符的一致性。
19.一種網絡,包括多個裝置,與控制器相互連接,所述控制器用于控制一個或多個所述裝置;和與網絡連接的系統,其中,所述系統允許控制器為一個或多個所述裝置維持永久唯一標識符,所述系統包括識別設備,用于從自裝置獲得的消息生成指紋;映射器,用于確定所述指紋是否以前與網絡中的標識符相關聯;生成器,用于生成新的標識符其中,如果所述指紋以前不與網絡中的標識符相關聯,則生成器生成與所述指紋相關聯的新的標識符,并且映射器在裝置的存儲器中存儲所述指紋和相關聯的新的標識符,其中,所述新的標識符形成所述裝置的永久唯一標識符;和如果所述指紋以前與網絡中的標識符相關聯,則映射器利用存儲在所述存儲器中的相關聯的標識符作為用于所述裝置的永久唯一標識符。
20.如權利要求19所述的網絡,其中,從所述裝置獲得的信息包括裝置信息。
21.如權利要求19所述的網絡,其中,所述映射器通過在存儲器中搜索存儲的指紋和相關聯的標識符來確定所述指紋是否以前與網絡中的標識符相關聯。
22.如權利要求19所述的網絡,其中,所述生成器還將所述指紋映射到唯一標識符。
23.如權利要求19所述的網絡,其中,所述識別設備還通過從獲得的信息生成消息摘要來生成指紋。
24.如權利要求23所述的網絡,其中,所述映射器在存儲器中的消息摘要表中存儲與消息摘要相關聯的新的標識符。
25.如權利要求23所述的網絡,其中,所述生成器通過將消息摘要映射到唯一標識符來生成與所述消息摘要相關聯的新的標識符。
26.如權利要求19所述的網絡,還包括兩個或者更多用于控制所述裝置的控制器,其中,所述系統還包括一致性檢查器,用于向網絡中的控制器廣播新的永久唯一標識符。
27.如權利要求26所述的網絡,其中,所述一致性檢查器用于在網絡中的控制器間維持用于所述裝置的永久唯一標識符的一致性。
全文摘要
一種維持用于網絡中相互連接的裝置的永久唯一標識符的方法。信息從裝置被獲得并且指紋從所述信息被生成。然后確定所述指紋是否以前與網絡中的標識符相關聯。如果所述指紋以前不與網絡中的標識符相關聯,則與所述指紋相關聯的新的標識符被生成,并且所述指紋和相關聯的新的標識符被存儲在存儲器中,其中,所述新的標識符形成用于所述裝置的永久唯一標識符(PUID)。反之,如果指紋以前與網絡中的標識符相關聯,則存儲在存儲器中的相關聯的標識符被作為用于所述裝置的永久唯一標識符被使用。
文檔編號H04L29/06GK1897553SQ20061008791
公開日2007年1月17日 申請日期2006年6月7日 優先權日2005年6月7日
發明者樸昊容, 普文·庫瑪, 艾倫·梅瑟, 朱勝 申請人:三星電子株式會社