專利名稱:具有引用的信息項的同步的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及客戶機與服務(wù)器之間的信息同步,更具體來
說,涉及兩個裝置即第一裝置與笫二裝置之間的信息雙向同步的系統(tǒng) 及方法,在其中同步被限制于已修改數(shù)據(jù)的交換,以及同步的請求可 由兩個裝置中的任一個發(fā)起。
背景技術(shù):
在當今的移動電話應(yīng)用中,不同種類的信息可被存儲和 處理。其實例為圖片、音樂、視頻、日程表信息和聯(lián)系人登記簿???br>
況的 一 個典型實例是,通過把來自聯(lián)系人登記簿的聯(lián)系人與會議相 關(guān),因為他們將參加那個會議。此外,已知的是,使圖片與電話號碼 相關(guān)或者使特定旋律與 一個或多個特定號碼相關(guān)。 同步是使將在其間更新信息的不同系統(tǒng)中駐留的信息 保持一致的過程。在移動裝置或者任何其它裝置上的信息同步因多種 原因^皮執(zhí)行
使各系統(tǒng)具有最新的信息
具有分布信息的系統(tǒng)由多個站點組成,各站點保存有那個站點上 所需的數(shù)據(jù)的局部副本。同步技術(shù)可在站點之間交換信息,從而使它 們?nèi)烤哂凶钚碌恼_數(shù)據(jù)。
減少網(wǎng)絡(luò)數(shù)據(jù)流
通過訪問局部同步數(shù)據(jù)而不是始終訪問中央服務(wù)器,網(wǎng)絡(luò)上的數(shù) 據(jù)流可顯著減少。請求可對局部服務(wù)器進行,局部服務(wù)器可用其局部 同步及更新的數(shù)據(jù)進行響應(yīng)。
更快的響應(yīng)時間
在訪問局部數(shù)據(jù)而不是服務(wù)器數(shù)據(jù)時,響應(yīng)時間也將更快。業(yè)務(wù) 量、網(wǎng)絡(luò)故障、服務(wù)器停機可能是網(wǎng)絡(luò)等待時間的原因。通過局部訪 問,用戶不依靠服務(wù)器便能夠訪問數(shù)據(jù)。
可靠的數(shù)據(jù)
雖然移動裝置不一定始終連接到網(wǎng)絡(luò),但仍然假定它們包含通過 上一次與另一個裝置的成功同步所檢索的最近的正確信息。目前存在許多同步協(xié)議。最常用的是
Palm HotSync協(xié)議
* IntelIiSync
* Acitve Sync
* SyncML 在移動裝置上同步具有引用的信息、例如具有對聯(lián)系人 項的引用的會議時,僅處理日程表信息(會議信息)而不處理聯(lián)系人登 記簿。換言之,如果第一類別中的項被更新,則該項引用進一步更新 的其它類別,則在同步第一類別時,不會相對于其它類別執(zhí)行同步, 除非由用戶明確請求。 這可能導(dǎo)致同步服務(wù)器上的一致性問題,因為會議將具 有對服務(wù)器上不存在的聯(lián)系人的公開引用。可能發(fā)生這種問題的其它 情況是通過結(jié)合圖像與聲音、視頻與文本、聯(lián)系人與圖片等。 通過一次執(zhí)行所有類別的完全同步,其中將與另一個裝 置同步的一個裝置中的所有數(shù)據(jù)項逐個字段(類別對類別)相互比較 可避免這些問題。但是,只要已經(jīng)為同步建立的所有數(shù)據(jù)庫都必須被 同步,從而產(chǎn)生許多不必要的數(shù)據(jù)業(yè)務(wù),則這種解決方案是費時的。 因此,需要檢查是否必須對于除了由于同步具有引用的 信息實體而明確請求之外的其它信息實體執(zhí)行同步。是否同步相關(guān)信 息實體的判定將根據(jù)它們的狀態(tài)(新的、已更新或已刪除)來進行。本發(fā)明的優(yōu)點相當明顯。如果客戶機裝置上的不同項類
型之間在同步之前存在引用,則在已經(jīng)執(zhí)行同步之后,引用將保存在 同步服務(wù)器上,例如,曰程表項以及它的相關(guān)參加者已經(jīng)同步,并且 存在于同步服務(wù)器上。此外,只要在兩個或兩個以上裝置之間很少存在對于執(zhí)
行完全同步(其中為同步建立的所有數(shù)據(jù)庫都被同步)的任何需求, 則業(yè)務(wù)量將會減少。
發(fā)明內(nèi)容
通過所附從屬權(quán)利要求、特別是通過用于兩個裝置即第 一裝置與第二裝置之間的信息雙向同步的方法,其它有利效果將會非 常明顯,在其中同步被限制于已修改數(shù)據(jù)的交換,以及同步的請求可 由兩個裝置中的任一個發(fā)起,該方法包括以下步驟
a) 從第 一裝置向第二裝置發(fā)送初始化消息/數(shù)據(jù)包,
b) 通過從第二裝置向第 一裝置發(fā)送初始化消息/數(shù)據(jù)包進行響
應(yīng),
c) 從第 一裝置向第二裝置發(fā)送一個或多個同步消息/數(shù)據(jù)包,
d) 在第二裝置分析同步消息/數(shù)據(jù)包,以及
e) 與步驟d同時或基本上同時執(zhí)行引用測試,檢查同步消息/數(shù) 據(jù)包中包含的項是否對其它項進行引用。
下面是本發(fā)明的附圖的簡要描述。圖1:移動電話和服務(wù)器的同步實例,
圖2:同步初始化的MSC [OMA SyncML],
圖3:雙向同步的MSC [OMA SyncML],
圖4:具有與聯(lián)系人項相關(guān)的日程表項的客戶機裝置,
圖5:同步之前的客戶機裝置和服務(wù)器的狀態(tài),
圖6:同步之后的客戶機裝置和服務(wù)器的狀態(tài), 圖7:具有對已經(jīng)在服務(wù)器上更新的聯(lián)系人的引用的日程表項, 圖8:完成第一同步循環(huán)/步驟時的情況圖, 圖9:最終同步循環(huán)/步驟之后的客戶機裝置和服務(wù)器的狀態(tài),及 圖10:項與關(guān)系的同步的流程圖。
具體實施例方式下面參照附圖來公開本發(fā)明的詳細描述。 附圖包含在其中以便于理解本發(fā)明,但它們不是要定義 本發(fā)明的保護范圍。 要理解,下文中無論在什么位置使用詞語"移動電話", 移動電話都可用適合于與具有相同能力的另 一裝置同步內(nèi)部存儲的 信息的任何裝置來替代。這類裝置可以是以下任一個移動電話、智能電話、 PDA、膝上型計算機、計算機、MP3播放器或者多媒體播放器。 要理解,下文中無論在什么位置上使用詞語"服務(wù)器,,, 服務(wù)器都可用適合于與具有相同能力的另 一裝置同步信息的任何裝 置來替代。服務(wù)器的使用只是要便于說明書的可讀性。 服務(wù)器可以是任何計算機,為手持、臺式、膝上型、傳 統(tǒng)網(wǎng)絡(luò)服務(wù)器、應(yīng)用服務(wù)器或者甚至被認為是外設(shè)的裝置。 客戶機服務(wù)器術(shù)語的使用是為了便于可讀性,以及本文 公開的本發(fā)明的 一般原理不應(yīng)當受這種使用影響。
'
本發(fā)明公開將針對SyncML協(xié)議,因為它是移動裝置上 最公開并且常用的同步協(xié)議。但是,本發(fā)明具有一般方法,并且也適 用于其它同步協(xié)議。下面作為舉例來公開相等價值的實施例。 在SyncML同步系統(tǒng)中存在兩種作用,如以下部分所示 以及進一步說明的。 SyncML客戶機包含首先向SyncML服務(wù)器發(fā)送其修改 的同步客戶機代理。它必須能夠接收來自服務(wù)器的響應(yīng)。這通常是移 動電話、PC、 PDA或者適合于發(fā)起同步的另一裝置。在許多節(jié)點保 持一致數(shù)據(jù)的網(wǎng)格網(wǎng)絡(luò)中,節(jié)點可以是作為服務(wù)器響應(yīng)節(jié)點以及作為 服務(wù)器向節(jié)點請求數(shù)據(jù)的組合客戶機和服務(wù)器。在這種設(shè)定中,客戶 機通常還可以是服務(wù)器裝置。 SyncML服務(wù)器包含同步服務(wù)器代理和同步引擎,它通 常等待客戶機啟動同步過程并向服務(wù)器傳遞其修改。它在接收到數(shù)據(jù) 時處理同步分析。這通常是服務(wù)器裝置或PC。 本發(fā)明不是針對任何具體協(xié)議,但為了方便起見,我們 在這個部分對SyncML協(xié)議進行概述。 SyncML規(guī)范[OMA SyncML]定義七種不同的同步類 型。這些類型在下表1中列出。
表1
同步情況描述
雙向同步(快速同步)客戶機和服務(wù)器交換與這些裝置中的已修改數(shù)據(jù)有關(guān)的 信息。客戶機是首先發(fā)送修改的。
慢速同步這是一種雙向同步,其中所有數(shù)據(jù)項逐個字段相互比 較。客戶機將它的所有數(shù)據(jù)發(fā)送給處理兩個數(shù)據(jù)集的同 步分析的服務(wù)器。
僅從客戶機的單向同步客戶機將其修改發(fā)送給服務(wù)器,但是服務(wù)器不將它自己 的修改發(fā)送回客戶機。
僅從客戶機的刷新同步客戶機將它的所有數(shù)據(jù)發(fā)送給服務(wù)器,服務(wù)器用新的所 接收數(shù)據(jù)替換目標數(shù)據(jù)庫中的所有數(shù)據(jù)。
僅從服務(wù)器的單向同步服務(wù)器將其修改發(fā)送給客戶機,但是客戶機不將它自己 的修改發(fā)送回服務(wù)器。
僅從服務(wù)器的刷新同步服務(wù)器將它的所有數(shù)據(jù)發(fā)送給客戶機,客戶機用新的所 接收數(shù)據(jù)替換目標數(shù)據(jù)庫中的所有數(shù)據(jù)。
服務(wù)器告警同步服務(wù)器警告客戶機執(zhí)行同步。服務(wù)器然后通知客戶機開 始與服務(wù)器的特定類型同步。 表l: SyncML同步類型
下面給出公開通過本發(fā)明實現(xiàn)的優(yōu)點的典型情況。
一個示范實施例 在這個示范實施例中,我們將觀察同步保持對其它實體 引用的信息實體的過程。 圖4說明一種情況,其中的客戶機裝置包含日程表和聯(lián) 系人登記簿。存在從日程表項A到聯(lián)系人項A的引用。 如果我們把同步服務(wù)器引入圖中,則在圖5中看到,它 在同步之前沒有包含任何項。 圖6說明采用例如前一部分中所述的SyncML協(xié)議進行 同步之后的情況,從而導(dǎo)致日程表項和聯(lián)系人項駐留在具有正確《1用 的位置中的情況。其它同步協(xié)議顯示相同的結(jié)果。 另一個示范實施例 在這個實施例中,說明公開客戶機和服務(wù)器側(cè)上的相關(guān) 信息同步的使用情況。 我們將檢查信息項具有對在服務(wù)器上已經(jīng)更新的元素 的引用時的情況。 圖7說明一種情況圖,其中在具有對聯(lián)系人的引用的客 戶機裝置上存在日程表項。聯(lián)系人還駐留在服務(wù)器中,但是以更新的 形式存在。 在這種情況中,同步過程將以兩個循環(huán)/步驟發(fā)生。在 第一循環(huán)/步驟,客戶機將主動同步日程表項。然后,情況將如圖8 所示。但是,日程表項這時將具有對在服務(wù)器上更新的聯(lián)系人項的引 用。服務(wù)器然后將在第二循環(huán)/步驟主動更新客戶機裝置上的聯(lián)系人 項。最后,情況將如圖9所示。 又一個示范實施例 第一個人被邀請參加與另 一個人或者與其它人的會 議;第一個人隨身攜帶適合于PIM同步的移動電話。在會議結(jié)束時, 參加者同意召開電視會議,作為當前會議的后續(xù)行動。聯(lián)系人信息在 參加者之間保持。第一個人負責發(fā)起安排的電視會議,因此他把即將 召開的電碎見會議的時間和日期添加到他的移動電話上,另外他還添加 與將要參加安排的會議的參加者有關(guān)的已更新聯(lián)系人信息。被邀請參 加電視會議的各方之一已經(jīng)對他的電4見會議設(shè)施改變了電話號碼,因 此,第一個人務(wù)必特別注意將新的電話號碼輸入他的移動電話。 回到他的辦公室,第一個人執(zhí)行與他的個人計算機的日 程表同步,以便更新即將召開的會議安排。 在安排的電視會議時,通過由第一個人進行呼叫來邀請 所有參加者;但是無法與已經(jīng)變更其電話號碼的參加者獲得聯(lián)系。 本發(fā)明通過它的智能雙向同步(快速同步、遞增同步)的 特性來克服這類問題,例如以上所述的一個問題。采用根據(jù)本發(fā)明的 智能雙向同步結(jié)果將是,對沒有明確請求被同步的其它類別項的交叉 引用的所有項將被同步,只要交叉引用項自上一次更新這個類別項以 來就已經(jīng)被更新了。換言之,在這種具體情況中,新的電話號碼已經(jīng)
添加到第一個人的計算機中,從而避免了沒有呼叫所有被邀請的參加 者參與電視會議的尷尬情況。在這個實例中,第一個人隨身攜帶移動電話,但是適合
與另 一個裝置同步的任何裝置都可用作實例。 又一個示范實施例 根據(jù)本發(fā)明,當發(fā)生所引用項的同步時存在兩種可能的 情況,第一個包括更新同步錨,第二個不包括。同步錨用作具有項/ 類別如日程表、聯(lián)系人等的數(shù)據(jù)庫的最后一次更新的時標。第一種方 法其特征在于,當一個或多個所引用項將被同步時,將同步與具有一 個或多個引用的信息項關(guān)聯(lián)的整個數(shù)據(jù)庫,因此可更新與關(guān)聯(lián)一個或 多個所引用項的整個數(shù)據(jù)庫關(guān)聯(lián)的同步錨。 備選地,可更新所述一個或多個所引用項,以及^fc同步 錨的當前時標設(shè)置成等于與關(guān)聯(lián)數(shù)據(jù)庫的先前完全同步關(guān)聯(lián)的時標 的時標,或者可在后一種備選方案中保留同步錨"不變"。 同步判定算法 SyncML協(xié)議描述在同步過程中執(zhí)行的消息序列。本發(fā) 明沒有同樣地處理SyncML協(xié)議,而是處理必須對客戶機和服務(wù)器執(zhí) 行以便判定哪些項需要被同步的判定。 為了判定哪些項必須被同步以便保持更新的引用,已經(jīng) 開發(fā)了一種算法。同步過程的流程圖如圖IO所示。算法的開始點是 準備進行同步的項的列表,例如,包含聯(lián)系人項的聯(lián)系人登記簿或者 包含會議項的日程表。
SyncML 同步標記語言
LUID 局部唯一標識符。每一個裝置具有LUID作為項的
標識符。
GUID 全局唯一標識符。服務(wù)器具有GUID作為項的標識
符。對于各裝置,存在LUID與GUID之間的映射。
參考文獻 OMA SyncML Common Specification,
http:〃www.openmobilealliance.org/release—program/SyncML—v12.html
Hong Nhung Thi Vo, Synchronization of mobile clients with server
applications, Master thesis , NTNU, 200權(quán)利要求
1.一種用于兩個裝置即第一裝置與第二裝置之間的信息雙向同步的方法,在其中所述同步被限制于已修改數(shù)據(jù)的交換,并且同步的請求可由所述兩個裝置中的任一個發(fā)起,所述方法包括以下步驟a)從第一裝置向第二裝置發(fā)送初始化消息/數(shù)據(jù)包,b)通過從第二裝置向第一裝置發(fā)送初始化消息/數(shù)據(jù)包進行響應(yīng),c)從第一裝置向第二裝置發(fā)送一個或多個同步消息/數(shù)據(jù)包(包括有關(guān)自先前同步以來的所有數(shù)據(jù)修改的信息)其特征在于,所述方法還包括以下步驟d)在第二裝置分析所述同步消息/數(shù)據(jù)包,以及e)與步驟d同時或基本上同時執(zhí)行引用測試,檢查所述同步消息/數(shù)據(jù)包中包含的項是否對其它項進行引用。
2. 如權(quán)利要求1所述的方法,其特征在于,步驟e還包括在所述引用測試之后同時或基本上同 時檢查對其它項進行引用的項是否必須被同步的步驟。
3. 如權(quán)利要求1或2所述的方法, 其特征在于,所述方法還包括以下步驟f) 從第二裝置向第 一裝置發(fā)送一個或多個同步消息/數(shù)據(jù)包,包 括在第二裝置的同步分析的結(jié)果,g) 在第一裝置分析所述同步消息/數(shù)據(jù)包,以及h) 與步驟g同時或基本上同時執(zhí)行引用測試,檢查從第二裝置接 收的所述同步消息/數(shù)據(jù)包中包含的項是否對其它項進行引用。
4. 如權(quán)利要求3所述的方法,其特征在于,步驟h還包括在所述引用測試之后同時或基本上同 時檢查對其它項進行引用的項是否必須被同步的步驟。
5. 如權(quán)利要求3或4所述的方法, 其特征在于,所述方法還包括以下步驟i)從第 一裝置向第二裝置發(fā)送數(shù)據(jù)更新消息/數(shù)椐包(包括在第一 裝置的所述同步分析的結(jié)果)。
6. 如權(quán)利要求5所述的方法,其特征在于,步驟i還包括以下動作為第二裝置提供在第一裝 置中添加的新項的LUID,以及為第二裝置提供從第一裝置發(fā)送的臨 時GUID。
7. 如權(quán)利要求l-6所述的方法,其特征在于,所述方法還包括從第二裝置向第一裝置發(fā)送確認消 息/數(shù)據(jù)包的步驟。
8. 如以上權(quán)利要求中的任一項所述的方法,其特征在于,當一個或多個所引用項將被同步時,同步與所述一 個或多個所引用項關(guān)聯(lián)的整個數(shù)據(jù)庫。
9. 如權(quán)利要求8所述的方法,其特征在于,更新與關(guān)聯(lián)所述一個或多個所引用項的所述整個數(shù) 據(jù)庫關(guān)聯(lián)的同步錨。
10. 如權(quán)利要求1-6中任一項所述的方法, 其特征在于以下步驟 更新所述一個或多個所引用項,以及把所述同步錨的當前時標設(shè)置為與所關(guān)聯(lián)數(shù)據(jù)庫的先前完全同 步關(guān):f關(guān)的時標。
11. 如以上權(quán)利要求中任一項所述的方法, 其特征在于,所述引用測試的執(zhí)行包括引用項的條件測試。
12. 如權(quán)利要求11所述的方法,其特征在于,所述條件測試所顯示的狀態(tài)可以是以下任一個 新的、已更新或者已刪除。
13. —種用于兩個裝置即第一裝置與第二裝置之間的信息雙向 同步的系統(tǒng),在其中所述同步被限制于已修改數(shù)據(jù)的交換,以及所述 兩個裝置中的任一個適合于發(fā)起同步的請求,所述系統(tǒng)包括i) 第一裝置,適合于從第一裝置向第二裝置發(fā)送初始化消息/數(shù) 據(jù)包,ii) 第二裝置,適合于通過從第二裝置向第一裝置發(fā)送初始化消息 /數(shù)據(jù)包進行響應(yīng),iii) 第 一裝置適合于從第 一裝置向第二裝置發(fā)送一個或多個同步 消息/數(shù)據(jù)包(包括有關(guān)自先前同步以來的數(shù)據(jù)修改的信息)其特征在于,所述系統(tǒng)還包括iv) 第二裝置包括適合于分析第一裝置所發(fā)送的所述同步消息/數(shù) 據(jù)包的分析部件,以及v) 第二裝置還包括適合于檢查所述同步消息/數(shù)據(jù)包中包含的項 是否對其它項進行引用的引用測試檢查部件。
14. 如權(quán)利要求13所述的系統(tǒng), 其特征在于,所述系統(tǒng)還包括vi) 適合于從第二裝置向第一裝置發(fā)送包含在第二裝置的所述同 步分析的結(jié)果的 一 個或多個同步消息/數(shù)據(jù)包的部件,vii) 第一裝置的分析部件,適合于分析所述同步消息/數(shù)據(jù)包,及viii) 適合于與vii同時或基本上同時執(zhí)行引用測試、;險查/人第二 裝置接收的所述同步消息/數(shù)據(jù)包中包含的項是否對其它項進行^ 1用 的部件。
15. 如權(quán)利要求13或14所述的系統(tǒng), 其特征在于,所述系統(tǒng)還包括ix) 適合于從第 一裝置向第二裝置發(fā)送數(shù)據(jù)更新消息/數(shù)據(jù)包(包 括在第 一裝置的同步分析的結(jié)果)的部件。
16. 如權(quán)利要求13-15中任一項所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括用于從第二裝置向第一裝置發(fā)送確 認消息/數(shù)據(jù)包的部件。
17. 如權(quán)利要求13-16中任一項所述的系統(tǒng), 其特征在于,第一裝置是客戶機,以及第二裝置是服務(wù)器。
18.如權(quán)利要求17所述的系統(tǒng), 其特征在于,所述客戶機可以是下列任一個 —移動電話, —智能電話 —PDA一膝上型計算機, 一計算機,—MP3播放器,或者 一多媒體播放器。
全文摘要
本發(fā)明涉及用于兩個裝置即第一裝置與第二裝置之間的信息雙向同步的方法及系統(tǒng),在其中同步被限制于已修改數(shù)據(jù)的交換,以及同步的請求可由兩個裝置中的任一個發(fā)起。同步屬于適合于同步對其它項進行引用/結(jié)合的項的遞增類型。
文檔編號H04LGK101189854SQ200680019973
公開日2008年5月28日 申請日期2006年1月16日 優(yōu)先權(quán)日2005年6月6日
發(fā)明者G·梅爾比, H·N·T·武, K·E·胡薩 申請人:艾利森電話股份有限公司