亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

關(guān)于電子郵件消息的改進(jìn)的客戶服務(wù)器通信的系統(tǒng)和方法

文檔序號(hào):7566997閱讀:212來(lái)源:國(guó)知局

專利名稱::關(guān)于電子郵件消息的改進(jìn)的客戶服務(wù)器通信的系統(tǒng)和方法
技術(shù)領(lǐng)域
:本發(fā)明一般涉及計(jì)算機(jī)網(wǎng)絡(luò),更具體地說(shuō),涉及用于在客戶應(yīng)用程序與服務(wù)器應(yīng)用程序(例如,電子郵件應(yīng)用程序)之間進(jìn)行通信的方法。
背景技術(shù)
:電子郵件已成為一種重要的通信方法。電子郵件系統(tǒng)通常包括服務(wù)器部件(例如,MicrosoftExchangeServer)和客戶部件(例如,MicrosoftOutlook或MicrosoftOutlookExpress)。這些部件通常是被配置成在計(jì)算設(shè)備(例如,服務(wù)器、PCs、便攜式計(jì)算機(jī)和PDA)上執(zhí)行的軟件應(yīng)用程序。為了促進(jìn)通信,客戶和服務(wù)器(例如,電子郵件系統(tǒng)的客戶部件和服務(wù)器部件)經(jīng)常就通信協(xié)議達(dá)成一致。該協(xié)議提出為通信期間每一方的預(yù)期行為進(jìn)行定義的規(guī)則,例如請(qǐng)求和響應(yīng)的預(yù)期次序。成熟、完善的協(xié)議具有用于處理意料之外的行為的規(guī)則。隨著客戶部件和服務(wù)器部件的改進(jìn),為最終用戶分發(fā)改進(jìn)的版本。為了利用新的部件特點(diǎn)和網(wǎng)絡(luò)特點(diǎn),經(jīng)常發(fā)明新的通信協(xié)議。在安裝的服務(wù)器部件的基礎(chǔ)很重要的情況下,客戶部件可能能夠經(jīng)由一套協(xié)議與所選擇的先前版本的服務(wù)器部件進(jìn)行通信。有時(shí),較后的協(xié)議建立在較早的協(xié)議的基礎(chǔ)上,而不是全部代替它們。在這種情況下,較后的協(xié)議可能由可以被啟用或被禁止的協(xié)議元素構(gòu)成,以便模擬較早的協(xié)議。同樣,在安裝的客戶部件的基礎(chǔ)很重要的情況下,服務(wù)器部件可能能夠經(jīng)由某個(gè)協(xié)議與所選擇的先前版本的客戶部件進(jìn)行通信。本發(fā)明提供了這樣一種系統(tǒng)和方法。通過(guò)這里所提供的本發(fā)明的描述,本發(fā)明的這些和其他的優(yōu)點(diǎn)以及額外的發(fā)明特點(diǎn)將會(huì)一目了然。
發(fā)明內(nèi)容本發(fā)明提供了一種關(guān)于改進(jìn)的客戶與服務(wù)器通信的系統(tǒng)和方法。更具體地說(shuō),本發(fā)明針對(duì)一種改進(jìn)的協(xié)議,該協(xié)議可以被用于客戶與服務(wù)器之間的通信。本發(fā)明與電子郵件服務(wù)器環(huán)境有特殊的關(guān)聯(lián),但是,這里所描述的各種特點(diǎn)可以被用于其他的客戶網(wǎng)絡(luò)和服務(wù)器網(wǎng)絡(luò)中。根據(jù)本發(fā)明的一個(gè)方面,電子郵件客戶部件可以向電子郵件服務(wù)器部件指出它有興趣接收電子郵件消息所具備的最佳消息主體。該電子郵件服務(wù)器部件可以接收消息請(qǐng)求,該請(qǐng)求指示需要該郵件的最佳消息主體。電子郵件服務(wù)器部件可以訪問(wèn)與該電子郵件服務(wù)器部件有關(guān)聯(lián)的數(shù)據(jù)暫存器,確定可不依賴轉(zhuǎn)換可用消息主體的格式的消息的最佳消息主體,并且,檢索和返回該最佳消息主體,而無(wú)須轉(zhuǎn)換該最佳消息主體的格式。照此,減少了電子郵件服務(wù)器部件處的處理時(shí)間,因?yàn)樵陔娮余]件服務(wù)器部件處不會(huì)發(fā)生電子郵件主體的轉(zhuǎn)換。根據(jù)本發(fā)明的另一個(gè)方面,經(jīng)關(guān)于某個(gè)或某套特殊屬性(例如,頭部)的傳送請(qǐng)求,如果這個(gè)或這些屬性在整個(gè)數(shù)據(jù)對(duì)象內(nèi)沒有被明確定義,則電子郵件服務(wù)器部件可以傳送該數(shù)據(jù)對(duì)象。電子郵件客戶部件生成關(guān)于文件夾中的數(shù)據(jù)對(duì)象的請(qǐng)求,該請(qǐng)求包括一個(gè)指示需要這些數(shù)據(jù)對(duì)象的至少一個(gè)屬性。電子郵件服務(wù)器部件接收該請(qǐng)求,并訪問(wèn)該文件夾和該文件夾中的數(shù)據(jù)對(duì)象。關(guān)于該文件夾中的每個(gè)數(shù)據(jù)對(duì)象,如果在該數(shù)據(jù)對(duì)象中明確定義這至少一個(gè)屬性,則電子郵件服務(wù)器部件檢索那個(gè)數(shù)據(jù)對(duì)象的這至少一個(gè)屬性,并將其返回到電子郵件客戶部件。如果沒有為該數(shù)據(jù)對(duì)象明確定義這至少一個(gè)屬性,則電子郵件服務(wù)器部件檢索該數(shù)據(jù)對(duì)象,并將其返回到電子郵件客戶部件。根據(jù)本發(fā)明的另一個(gè)方面,電子郵件客戶部件可能會(huì)強(qiáng)迫電子郵件服務(wù)器部件提供采用統(tǒng)一字符編碼(Unicode)的電子郵件消息。電子郵件客戶部件發(fā)送關(guān)于至少一個(gè)電子郵件消息的請(qǐng)求以及一個(gè)指示,該指示指出電子郵件客戶部件希望電子郵件消息采用統(tǒng)一字符編碼格式。電子郵件服務(wù)器部件響應(yīng)于該請(qǐng)求和指示的接收,來(lái)檢索這至少一個(gè)消息;并且,關(guān)于每個(gè)電子郵件消息,如果該電子郵件消息可采用統(tǒng)一字符編碼格式,則電子郵件服務(wù)器部件將該統(tǒng)一字符編碼格式提供給電子郵件客戶部件。如果該電子郵件消息沒有采用統(tǒng)一字符編碼格式,則電子郵件服務(wù)器部件將該電子郵件消息轉(zhuǎn)換成統(tǒng)一字符編碼格式,并將該統(tǒng)一字符編碼格式提供給電子郵件客戶部件。根據(jù)本發(fā)明的另一個(gè)方面,由電子郵件客戶部件發(fā)送的請(qǐng)求可能沒有指出對(duì)該請(qǐng)求的響應(yīng)的尺寸限制,從而如果需要的話,可允許電子郵件服務(wù)器部件填充緩沖器。該電子郵件客戶部件發(fā)送請(qǐng)求內(nèi)的多個(gè)子請(qǐng)求(subrequests),這每個(gè)子請(qǐng)求要求在電子郵件服務(wù)器部件處進(jìn)行操作并包括尺寸信息。響應(yīng)于每個(gè)子請(qǐng)求,如果該尺寸信息包括該電子郵件服務(wù)器部件所預(yù)期的范圍以內(nèi)的尺寸限制,那么,該電子郵件服務(wù)器部件限制對(duì)該尺寸限制的響應(yīng)。如果該尺寸信息包括該電子郵件服務(wù)器部件所預(yù)期的范圍以外的尺寸限制,那么,該電子郵件服務(wù)器部件在該尺寸信息中尋找新的尺寸限制。這個(gè)新的尺寸限制可能是任意的(例如,“填充可用緩沖器”)。圖1是由網(wǎng)絡(luò)連接的計(jì)算機(jī)的示意圖。圖2是展示被用于執(zhí)行本發(fā)明的實(shí)施例的示范計(jì)算機(jī)系統(tǒng)的示意圖。圖3是示意圖,描繪了具有電子郵件客戶部件和電子郵件服務(wù)器部件的多種版本的環(huán)境。圖4是協(xié)議圖表,表現(xiàn)了電子郵件客戶部件與電子郵件服務(wù)器部件之間的協(xié)議談判程序的一個(gè)例子。圖5是示意圖,表現(xiàn)了范例電子郵件網(wǎng)絡(luò),在該范例電子郵件網(wǎng)絡(luò)中,電子郵件客戶部件和電子郵件服務(wù)器部件具有尺寸固定的通信緩沖器。圖6A是協(xié)議圖表,表現(xiàn)了要求兩個(gè)請(qǐng)求-響應(yīng)周期完成快速傳送操作的范例協(xié)議。圖6B是協(xié)議圖表,表現(xiàn)了要求單一請(qǐng)求-響應(yīng)周期完成快速傳送操作的范例協(xié)議。圖7A是流程圖,描繪了用于將電子郵件消息主體發(fā)送到電子郵件客戶部件的范例程序。圖7B是流程圖,描繪了用于根據(jù)本發(fā)明的一個(gè)方面將電子郵件消息主體發(fā)送到電子郵件客戶部件的程序。圖8A是展示完全項(xiàng)目傳送模式的程序表。圖8B是展示頭部首先傳送模式的程序表。圖8C是展示頭部唯一傳送模式的程序表。圖8D是展示頭部首先傳送模式或頭部唯一傳送模式之例外的程序表。圖9是示意圖,表現(xiàn)了正在隨時(shí)間的推移而改變的電子郵件客戶部件的家庭電子郵件服務(wù)器部件。圖10是協(xié)議圖表,表現(xiàn)了用于使電子郵件客戶部件與電子郵件服務(wù)器部件之間的各個(gè)電子郵件文件夾同步的范例協(xié)議。圖11A是流程圖,描繪了用于優(yōu)化狀態(tài)點(diǎn)(stateblob)的一部分的范例程序。圖11B是流程圖,描繪了用于根據(jù)本發(fā)明來(lái)優(yōu)化狀態(tài)點(diǎn)的一部分的程序。圖12是展示電子郵件文件夾層級(jí)的示意圖。圖13是協(xié)議圖表,表現(xiàn)了用于根據(jù)本發(fā)明的一個(gè)方面來(lái)使電子郵件消息存儲(chǔ)同步并保持這種同步的范例協(xié)議。圖14A是協(xié)議圖表,表現(xiàn)了用于在ROP層次傳達(dá)錯(cuò)誤信息的范例協(xié)議。圖14B是協(xié)議圖表,表現(xiàn)了用于根據(jù)本發(fā)明的一個(gè)方面在每一消息的基礎(chǔ)上傳達(dá)錯(cuò)誤信息的范例協(xié)議。圖15A是流程圖,描繪了用于在ROP層次生成錯(cuò)誤信息的程序。圖15B是流程圖,描繪了用于根據(jù)本發(fā)明的一個(gè)方面在每一消息的基礎(chǔ)上生成錯(cuò)誤信息的程序。圖16A是協(xié)議圖表,表現(xiàn)了用于執(zhí)行快速傳送操作的范例協(xié)議。圖16B是協(xié)議圖表,表現(xiàn)了根據(jù)本發(fā)明的一個(gè)方面在執(zhí)行快速傳送操作的同時(shí)提供進(jìn)展信息的范例協(xié)議。圖17A是流程圖,描繪了用于流出一組消息的程序。圖17B是流程圖,描繪了用于根據(jù)本發(fā)明的一個(gè)方面與進(jìn)展信息一起流出一組消息的程序。圖18是多個(gè)電子郵件客戶部件的示意圖,由于電子郵件服務(wù)器部件處的相同的數(shù)據(jù)對(duì)象的變化,正在通知這多個(gè)電子郵件客戶部件。圖19A是流程圖,描繪了用于通知多個(gè)訂戶的程序。圖19B是流程圖,描繪了用于根據(jù)本發(fā)明的一個(gè)方面來(lái)通知多個(gè)訂戶的程序。圖20是流程圖,描繪了用于根據(jù)本發(fā)明的一個(gè)方面來(lái)提供使用所需代碼頁(yè)的電子郵件消息的程序。具體實(shí)施例方式在繼續(xù)描述本發(fā)明的各個(gè)實(shí)施例之前,現(xiàn)在將對(duì)本發(fā)明的各個(gè)實(shí)施例可以在其中得到實(shí)踐的計(jì)算機(jī)和聯(lián)網(wǎng)環(huán)境進(jìn)行描述。雖然未作要求,但是,本發(fā)明可以由計(jì)算機(jī)所執(zhí)行的程序來(lái)加以實(shí)施。通常,程序包括執(zhí)行特殊任務(wù)或?qū)嵤┨厥獾某橄髷?shù)據(jù)類型的例行程序、對(duì)象、部件、數(shù)據(jù)結(jié)構(gòu)和類似物。如這里所使用的術(shù)語(yǔ)“程序”可以意味著一致行動(dòng)的單一程序模塊或多個(gè)程序模塊。如這里所使用的術(shù)語(yǔ)“計(jì)算機(jī)”包括用電子學(xué)方法執(zhí)行一個(gè)或多個(gè)程序的任何設(shè)備(例如,個(gè)人計(jì)算機(jī)(PCs)、手持設(shè)備、多處理器系統(tǒng)、基于微處理器的可編程消費(fèi)電子設(shè)備、網(wǎng)絡(luò)PCs、小型計(jì)算機(jī)、寫字板PCs、大型計(jì)算機(jī)、具有微處理器或微控制器、路由器、網(wǎng)關(guān)、網(wǎng)絡(luò)集線器和類似物的消費(fèi)器具)。本發(fā)明也可以被用于分布式計(jì)算環(huán)境中,在這些環(huán)境中,由通過(guò)通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來(lái)執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序可以位于本地記憶存儲(chǔ)設(shè)備和遠(yuǎn)程記憶存儲(chǔ)設(shè)備中?,F(xiàn)在,將參照?qǐng)D1來(lái)描述其中可以使用本發(fā)明的聯(lián)網(wǎng)環(huán)境的一個(gè)例子。該范例網(wǎng)絡(luò)包括在網(wǎng)絡(luò)11(由云代表)上彼此進(jìn)行通信的幾臺(tái)計(jì)算機(jī)10。網(wǎng)絡(luò)11可以包括許多眾所周知的部件(例如,路由器、網(wǎng)關(guān)、網(wǎng)絡(luò)集線器等),并且允許計(jì)算機(jī)10經(jīng)由有線和/或無(wú)線媒體來(lái)進(jìn)行通信。當(dāng)在網(wǎng)絡(luò)11上彼此相互作用時(shí),這些計(jì)算機(jī)中的一臺(tái)或多臺(tái)計(jì)算機(jī)可以作為與其他計(jì)算機(jī)有關(guān)的客戶、服務(wù)器或同等設(shè)備。相應(yīng)地,即使這里所包含的特殊例子沒有提及所有這些類型的計(jì)算機(jī),本發(fā)明的各個(gè)實(shí)施例也可以在客戶、服務(wù)器、同等設(shè)備或其組合上得到實(shí)踐。參照?qǐng)D2,示出一種計(jì)算機(jī)的基本配置的一個(gè)例子,這里所描述的全部或部分的本發(fā)明可以在該計(jì)算機(jī)上被加以執(zhí)行。在其最基本的配置中,計(jì)算機(jī)10通常包括至少一個(gè)處理單元14和存儲(chǔ)器16。根據(jù)本發(fā)明的各個(gè)實(shí)施例,處理單元14執(zhí)行指令,以完成任務(wù)。在執(zhí)行這類任務(wù)的過(guò)程中,處理單元14可以將電子信號(hào)傳輸?shù)接?jì)算機(jī)10的其他部分,并將電子信號(hào)傳輸?shù)接?jì)算機(jī)10以外的設(shè)備,從而產(chǎn)生某種結(jié)果。根據(jù)計(jì)算機(jī)10的確切的配置和類型,存儲(chǔ)器16可能是易失的(例如,RAM)、非易失的(例如,ROM或快閃存儲(chǔ)器)或這兩者的某種組合。圖2中用虛線18展示了這種最基本的配置。此外,該計(jì)算機(jī)也可以具有額外的特點(diǎn)/功能性。例如,計(jì)算機(jī)10也可以包括額外的存儲(chǔ)器(可移動(dòng)的201和不可移動(dòng)的202),該額外的存儲(chǔ)器包括(但不局限于)磁盤或光盤或磁帶。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括用關(guān)于信息(包括計(jì)算機(jī)可執(zhí)行指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù))存儲(chǔ)的任何方法或技術(shù)來(lái)加以執(zhí)行的易失和非易失的可移動(dòng)和不可移動(dòng)的介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括(但不局限于)RAM、ROM、EEPROM快閃存儲(chǔ)器、CD-ROM、數(shù)字通用磁盤(DVD)或其他光學(xué)存儲(chǔ)器、盒式磁帶、磁帶、磁盤存儲(chǔ)器或其他磁性存儲(chǔ)設(shè)備、或可以被用來(lái)存儲(chǔ)所需信息并可以由計(jì)算機(jī)10進(jìn)行存取的其他任何介質(zhì)。任何這樣的計(jì)算機(jī)存儲(chǔ)介質(zhì)都可以成為計(jì)算機(jī)10的一部分。計(jì)算機(jī)10最好也包含允許該設(shè)備與其他設(shè)備進(jìn)行通信的通信連接205。通信連接是通信介質(zhì)的一個(gè)例子。通信介質(zhì)通常具體表現(xiàn)計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或調(diào)制數(shù)據(jù)信號(hào)(例如,載波或其他傳送機(jī)制)中的其他數(shù)據(jù),并且包括任何信息傳遞介質(zhì)。舉例來(lái)講(不作限制),術(shù)語(yǔ)“通信介質(zhì)”包括有線介質(zhì)(例如,有線網(wǎng)絡(luò)或直線連接)和無(wú)線介質(zhì)(例如,聲音、RF、紅外線和其他無(wú)線介質(zhì))。如這里所使用的術(shù)語(yǔ)“計(jì)算機(jī)可讀介質(zhì)”包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。計(jì)算機(jī)10也可以具有輸入設(shè)備204(例如,鍵盤、鼠標(biāo)、筆、語(yǔ)音輸入設(shè)備、接觸式輸入設(shè)備等)。也可以包括輸出設(shè)備203(例如,顯示器20、揚(yáng)聲器、打印機(jī)等)。所有這些設(shè)備在該
技術(shù)領(lǐng)域
中眾所周知,不需要在這里詳細(xì)討論。本發(fā)明針對(duì)一種關(guān)于改進(jìn)的客戶與服務(wù)器通信的系統(tǒng)和方法,更具體地說(shuō),是針對(duì)一種可以被用于客戶與服務(wù)器之間的通信的改進(jìn)的協(xié)議。本發(fā)明與電子郵件服務(wù)器環(huán)境有特殊的關(guān)聯(lián),但是,這里所描述的各種特點(diǎn)可以被用于其他的客戶網(wǎng)絡(luò)和服務(wù)器網(wǎng)絡(luò)中。但是,為方便描述,可參照客戶/服務(wù)器電子郵件環(huán)境來(lái)描述本發(fā)明。可以在具有兩個(gè)或多個(gè)版本的客戶應(yīng)用程序或部件以及/或者兩個(gè)或多個(gè)版本的服務(wù)器應(yīng)用程序或部件的客戶/服務(wù)器環(huán)境中執(zhí)行本發(fā)明。為了達(dá)到這個(gè)目的,圖3展示了表現(xiàn)網(wǎng)絡(luò)電子郵件環(huán)境中的客戶部件和服務(wù)器部件的多個(gè)版本的框圖。一般而言,對(duì)該客戶部件和服務(wù)器部件進(jìn)行配置,以便它們向后兼容。也就是說(shuō),客戶部件能夠與新近版本和傳統(tǒng)版本的服務(wù)器部件進(jìn)行通信,反之亦然。建立一套協(xié)議,以便在這多個(gè)版本之間進(jìn)行通信。這套協(xié)議可以組成幾個(gè)不同的協(xié)議,每個(gè)協(xié)議是自含式的。作為選擇,可以具備一套協(xié)議部件,并且,使用特殊部件,在該協(xié)議集內(nèi)配置特殊協(xié)議。無(wú)論如何,在圖3所示的網(wǎng)絡(luò)電子郵件環(huán)境中,最新近版本電子郵件客戶部件303使用協(xié)議307與最新近版本電子郵件服務(wù)器部件306進(jìn)行最佳通信。但是,最新近的電子郵件服務(wù)器部件306也能夠使用協(xié)議集中的其他協(xié)議(例如,圖3中的協(xié)議308和309)與所選擇的先前版本電子郵件客戶部件(例如,電子郵件客戶部件302和電子郵件客戶部件301)進(jìn)行通信。電子郵件客戶部件303也能夠使用諸如協(xié)議310和311的協(xié)議與所選擇的先前版本電子郵件服務(wù)器部件(例如,電子郵件服務(wù)器部件305和電子郵件服務(wù)器部件304)進(jìn)行通信。通常,如這里所使用的,出于描述本發(fā)明的協(xié)議的目的,“最新近”的電子郵件(服務(wù)器或客戶)部件或電子郵件(服務(wù)器或客戶)部件的最新近版本是了解正在被描述的一個(gè)或多個(gè)新特點(diǎn)的服務(wù)器或客戶部件,并且可以利用、執(zhí)行并/或作用于那些特點(diǎn)。雖然在這整個(gè)文檔中使用這些術(shù)語(yǔ)來(lái)描述了解本發(fā)明的協(xié)議的各個(gè)方面的客戶部件和服務(wù)器部件,但是,這些術(shù)語(yǔ)也包括只了解正在被描述的特殊方面的部件,或包括了解多于正在被描述的一個(gè)方面的部件。同樣,“先前”的電子郵件部件或電子郵件部件的先前版本是不了解并且無(wú)法作用于本發(fā)明的協(xié)議的各個(gè)方面的一種部件。經(jīng)常使用協(xié)議談判程序,在客戶與服務(wù)器(例如,最新近版本電子郵件服務(wù)器部件306與最新近版本電子郵件客戶部件303)之間建立協(xié)議。雖然這類協(xié)議談判已知,但是,為了讀者的利益,簡(jiǎn)要描述了電子郵件客戶部件401(圖4)與電子郵件服務(wù)器部件402(也是圖4)之間的協(xié)議談判程序。早在電子郵件客戶部件401與電子郵件服務(wù)器部件402之間的通信對(duì)話期間,電子郵件客戶部件401將消息403發(fā)送到電子郵件服務(wù)器部件402,消息403包括(例如)采取客戶部件版本特征形式的客戶版本信息。電子郵件服務(wù)器部件402利用消息404來(lái)對(duì)消息403作出響應(yīng),消息404包括(例如)采取服務(wù)器部件版本特征形式的服務(wù)器版本信息??梢杂酶鞣N方法使用該客戶和服務(wù)器版本信息,以嘗試在電子郵件客戶部件401與電子郵件服務(wù)器部件402之間建立通信。例如,可以使用版本信息來(lái)為繼續(xù)的通信選擇合適的協(xié)議,或者用于確定是否可以有進(jìn)一步的通信。例如,在建立協(xié)議的過(guò)程中,可以使用版本信息來(lái)啟用和/或禁止使用特殊的可用協(xié)議方面或部件。電子郵件服務(wù)器部件可以并行地接收并處理來(lái)自多個(gè)電子郵件客戶部件的請(qǐng)求。在示出單一客戶的情況下,除非另有明確的規(guī)定,否則,將只對(duì)這些附圖和附隨的解釋進(jìn)行簡(jiǎn)化。本發(fā)明的電子郵件網(wǎng)絡(luò)利用請(qǐng)求和響應(yīng)交換,在該網(wǎng)絡(luò)中的客戶部件與服務(wù)器部件之間傳遞詢問(wèn)和數(shù)據(jù)。在實(shí)踐中,可以通過(guò)被用來(lái)執(zhí)行電子郵件網(wǎng)絡(luò)中的客戶與服務(wù)器之間的通信的基礎(chǔ)通信網(wǎng)絡(luò)傳送機(jī)制,來(lái)實(shí)現(xiàn)協(xié)議的性能。例如,在將遠(yuǎn)程程序調(diào)用(RPCs)用作基礎(chǔ)通信網(wǎng)絡(luò)傳送機(jī)制的電子郵件網(wǎng)絡(luò)中,與執(zhí)行較小數(shù)量(例如,2KB)的幾個(gè)遠(yuǎn)程程序調(diào)用相比,執(zhí)行較大數(shù)量(例如,32KB)的單一遠(yuǎn)程程序調(diào)用可能會(huì)有效率得多。已知的一種改進(jìn)這種電子郵件網(wǎng)絡(luò)中的性能的方法是緩沖在單一遠(yuǎn)程程序調(diào)用中傳輸?shù)亩鄠€(gè)請(qǐng)求和/或響應(yīng)。舉例而言,圖5表現(xiàn)了電子郵件客戶部件501與電子郵件服務(wù)器部件502之間的請(qǐng)求和響應(yīng)交換。電子郵件客戶部件501和電子郵件服務(wù)器部件502都具有尺寸固定的通信緩沖器503、504、505和506。為緩沖器503、504、505和506保留存儲(chǔ)區(qū),用于臨時(shí)保存數(shù)據(jù)。通過(guò)在將緩沖器503的內(nèi)容傳輸?shù)骄彌_器504之前用一項(xiàng)或多項(xiàng)子請(qǐng)求或遠(yuǎn)程操作(ROPs)來(lái)填充緩沖器503,電子郵件客戶部件501開始請(qǐng)求-響應(yīng)周期。在每個(gè)ROP在緩沖器504中被接收之后,每個(gè)ROP由電子郵件服務(wù)器部件502按秩序進(jìn)行處理,并且,對(duì)應(yīng)的結(jié)果被寫入緩沖器505。每個(gè)ROP產(chǎn)生某種結(jié)果。該結(jié)果可以包括電子郵件客戶部件501所請(qǐng)求的數(shù)據(jù)(例如,一組特殊的電子郵件消息)。電子郵件服務(wù)器部件502對(duì)緩沖器505進(jìn)行監(jiān)控,并且,當(dāng)它幾乎充滿時(shí)(例如,剩余不到8KB),電子郵件服務(wù)器部件502將任何未被加工的ROPs寫入緩沖器505的末端,并將緩沖器505傳輸?shù)骄彌_器506。然后,通過(guò)將未被加工的ROPs寫入緩沖器503,以便當(dāng)緩沖器503再次充滿時(shí)重新提交給電子郵件服務(wù)器部件502,電子郵件客戶部件501開始新的請(qǐng)求-響應(yīng)周期。響應(yīng)的尺寸平均起來(lái)通常大于請(qǐng)求的尺寸。因此,通常將響應(yīng)緩沖器505和506的尺寸配置成大于請(qǐng)求緩沖器503和504的尺寸。在本發(fā)明的一個(gè)實(shí)施例中,由于請(qǐng)求緩沖器503和504的尺寸是32KB,因此,響應(yīng)緩沖器505的最佳尺寸曾被確定為96KB,比率是3∶1。在一個(gè)實(shí)施例中,電子郵件客戶部件能夠配置緩沖器503、504、505和506中的任何緩沖器的尺寸。利用緩沖器的一些電子郵件網(wǎng)絡(luò)(例如,圖5中所示的電子郵件網(wǎng)絡(luò))可以使用電子郵件客戶部件與電子郵件服務(wù)器部件之間的快速傳送模式。快速傳送模式包括客戶提出的請(qǐng)求(例如,ROPs),這些請(qǐng)求被至少分成兩類導(dǎo)致對(duì)服務(wù)器處的快速傳送數(shù)據(jù)源進(jìn)行初始化的請(qǐng)求,以及導(dǎo)致將數(shù)據(jù)從該快速傳送數(shù)據(jù)源有效率地傳送給客戶的請(qǐng)求。例如,該快速傳送數(shù)據(jù)源可能是數(shù)據(jù)庫(kù)表格。該快速傳送數(shù)據(jù)源用作現(xiàn)成的數(shù)據(jù)暫存器,它可使關(guān)于該數(shù)據(jù)的以后的請(qǐng)求能夠獲得較少延遲的服務(wù)。有時(shí),第二種快速傳送模式請(qǐng)求尋求通過(guò)明確地規(guī)定響應(yīng)的尺寸(例如,可以將響應(yīng)的尺寸設(shè)置為整個(gè)客戶接收緩沖器的尺寸減去響應(yīng)管理費(fèi)用)來(lái)實(shí)現(xiàn)有效率的數(shù)據(jù)傳送。圖6A表現(xiàn)了至少具有兩個(gè)請(qǐng)求-響應(yīng)周期的快速傳送操作。在第一請(qǐng)求601中,ROP(例如,F(xiàn)XPrepare)對(duì)服務(wù)器502上的快速傳送數(shù)據(jù)源進(jìn)行初始化。在該服務(wù)器處,只處理FXPrepare(即,對(duì)該快速傳送數(shù)據(jù)源進(jìn)行初始化),并且在第一響應(yīng)602中返回其結(jié)果。在第二請(qǐng)求603中,ROP(例如,F(xiàn)XGetBuffer)要求服務(wù)器從該快速數(shù)據(jù)源那里填充緩沖器505。該服務(wù)器將該快速數(shù)據(jù)源清空,全部放入該緩沖器中,并且在第二響應(yīng)604中返回該結(jié)果。如果在清空該快速數(shù)據(jù)源之前,電子郵件服務(wù)器部件的輸出緩沖器505充滿,那么,可以請(qǐng)求額外的FXGetBufferROPs。圖6B表現(xiàn)了只具有單一請(qǐng)求-響應(yīng)周期的快速傳送操作。在第一請(qǐng)求605中,F(xiàn)XPrepare和FXGetBuffer由電子郵件服務(wù)器部件502來(lái)進(jìn)行處理,并且,兩項(xiàng)操作的結(jié)果在第一響應(yīng)606中被返回。電子郵件服務(wù)器部件502處的FXGetBuffer具有FXPrepare的結(jié)果,因?yàn)槊總€(gè)緩沖器503、504、505和506的一部分都被明確地定義為共享數(shù)據(jù)表格。需要減少請(qǐng)求-響應(yīng)周期的數(shù)量,因?yàn)檫@樣可以更有效率地傳送數(shù)據(jù)。當(dāng)緩沖器505太滿而無(wú)法保存FXGetBufferROP的結(jié)果時(shí),可能會(huì)發(fā)生不只具有單一請(qǐng)求-響應(yīng)周期的快速傳送操作。將會(huì)理解,圖6A和6B以及整個(gè)本申請(qǐng)中的類似附圖中的ROPs是示意性的,這體現(xiàn)在除非另有特別規(guī)定,它們實(shí)際上可以由一系列ROPs來(lái)執(zhí)行。通常,ROP結(jié)果的尺寸不同于ROP請(qǐng)求的尺寸。并非總是可以預(yù)測(cè)ROP結(jié)果的尺寸。當(dāng)使用數(shù)據(jù)壓縮技術(shù)來(lái)減少ROP結(jié)果的尺寸時(shí),要預(yù)測(cè)ROP結(jié)果的尺寸甚至?xí)щy。若無(wú)法預(yù)測(cè)ROP結(jié)果的尺寸,則可以防止手工調(diào)整協(xié)議,以便將完成特定客戶操作所需要的請(qǐng)求-響應(yīng)周期數(shù)量減到最少,從而(例如)確保在單一請(qǐng)求-響應(yīng)周期內(nèi)將所有新的消息下載給客戶。手工調(diào)整協(xié)議包括手工配置協(xié)議請(qǐng)求、響應(yīng)和/或ROPs的次序和/或尺寸。根據(jù)本發(fā)明的一個(gè)方面,通過(guò)規(guī)定關(guān)鍵的ROPs(例如,F(xiàn)XGetBuffer)無(wú)須預(yù)測(cè)其結(jié)果的尺寸,自動(dòng)將請(qǐng)求-響應(yīng)周期的數(shù)量減到最少。相反,這類ROPs由電子郵件服務(wù)器部件502來(lái)進(jìn)行處理,直到達(dá)到緩沖器505(與緩沖器506相同)的極限為止。舉例而言,在包括多個(gè)版本的電子郵件服務(wù)器部件的環(huán)境中,可以為先前版本服務(wù)器部件和新近版本服務(wù)器部件定義各自的ROPs。這些新近的版本無(wú)須預(yù)測(cè)其結(jié)果的尺寸。以下的表格中闡明了這些ROPs的特征先前版本服務(wù)器部件的ROPs在結(jié)構(gòu)上類似于現(xiàn)存的原先技術(shù)的ROPs。也就是說(shuō),這些ROPs預(yù)測(cè)并規(guī)定必須為保存響應(yīng)而保留的輸出緩沖器(例如,發(fā)送緩沖器505)中的尺寸。相比之下,不預(yù)測(cè)服務(wù)器部件的最新近版本的輸出緩沖器的規(guī)定尺寸,而是將該規(guī)定尺寸設(shè)置為超過(guò)先前版本服務(wù)器部件所預(yù)期的最大值的值,例如,將該規(guī)定尺寸設(shè)置為大于32KB的值。輸出緩沖器的尺寸被定義為超過(guò)該服務(wù)器部件所預(yù)期的值這個(gè)事實(shí)用信號(hào)通知該服務(wù)器部件尋找新的尺寸限制參數(shù),例如,該尺寸限制參數(shù)可能是該服務(wù)器部件的輸出緩沖器的填充。這些特征自動(dòng)將請(qǐng)求-響應(yīng)周期的數(shù)量減到最少,只是處理這些ROPs的電子郵件服務(wù)器部件的復(fù)雜性略有提高。注意,除非有相反的明確規(guī)定,否則,以上表格中和整個(gè)本申請(qǐng)中的類似表格中所示的參數(shù)順序不一定跟(例如)這些參數(shù)由電子郵件客戶部件或電子郵件服務(wù)器部件在網(wǎng)絡(luò)上傳輸或被存儲(chǔ)在存儲(chǔ)器中的順序相互關(guān)聯(lián)。此外,為清楚起見,可以省略未改變的參數(shù)。在電子郵件網(wǎng)絡(luò)中,協(xié)議的典型職責(zé)之一是實(shí)現(xiàn)在電子郵件客戶部件與電子郵件服務(wù)器部件之間傳送數(shù)據(jù)對(duì)象(例如,電子郵件消息)。這類數(shù)據(jù)對(duì)象的另外的例子包括電子郵件文件夾,它們可包含電子郵件消息和其他數(shù)據(jù)對(duì)象;以及文件夾關(guān)聯(lián)信息(FAI)數(shù)據(jù)對(duì)象,它們(例如)可包含關(guān)于處理電子郵件消息的規(guī)則,或定義將如何顯示文件夾所包含的數(shù)據(jù)對(duì)象。數(shù)據(jù)對(duì)象對(duì)于電子郵件客戶部件而言可能是難懂的,也就是說(shuō),電子郵件客戶部件可能無(wú)法解釋數(shù)據(jù)對(duì)象的內(nèi)容。作為選擇,數(shù)據(jù)對(duì)象可能由命名屬性組成,例如,電子郵件消息可能包括被命名為“到”、“來(lái)自”、“主題”、“重要性”、“主體1”、“主體2”、“主體3”、“附件1”、“附件2”等的屬性。電子郵件網(wǎng)絡(luò)具有一個(gè)優(yōu)點(diǎn)當(dāng)數(shù)據(jù)對(duì)象難懂時(shí),數(shù)據(jù)對(duì)象可能由電子郵件網(wǎng)絡(luò)上的命名屬性組成。利用該優(yōu)點(diǎn),有可能改善協(xié)議性能,因?yàn)閰f(xié)議能夠只傳送數(shù)據(jù)對(duì)象的一部分。有了命名屬性,就可允許在不傳輸整個(gè)數(shù)據(jù)對(duì)象的情況下傳輸該數(shù)據(jù)對(duì)象的特定屬性。例如,電子郵件消息可能由一組頭部屬性和一組主體屬性組成。電子郵件客戶部件的需求可能會(huì)使協(xié)議首先傳送頭部屬性,然后傳送主體屬性,或根本不傳送主體屬性。這個(gè)特點(diǎn)允許用戶在所有消息被整體下載之前觀看幾個(gè)消息的頭部信息。通過(guò)使用這個(gè)特點(diǎn),客戶部件可以獲得對(duì)帶寬利用的更細(xì)致的控制,這肯定會(huì)實(shí)現(xiàn)協(xié)議性能。此外,客戶部件可以使用這個(gè)特點(diǎn)來(lái)產(chǎn)生較低帶寬利用(例如,可以只為所選擇的頭部下載主體),這在低帶寬環(huán)境中特別合乎需要。如果將服務(wù)器部件配置成在兩個(gè)分開的請(qǐng)求-響應(yīng)周期(即,一個(gè)用于頭部,另一個(gè)用于主體)內(nèi)發(fā)送主體屬性和頭部屬性,則協(xié)議的性能不一定會(huì)提高。例如,如果電子郵件客戶部件的需求曾使它同時(shí)要求頭部屬性和主體屬性,那么,根據(jù)單一請(qǐng)求-響應(yīng)周期既可檢索頭部又可檢索主體的情況,可能會(huì)降低協(xié)議的性能。這樣,允許數(shù)據(jù)對(duì)象由命名屬性組成這個(gè)簡(jiǎn)單的動(dòng)作本身不足以自動(dòng)改善協(xié)議性能。實(shí)現(xiàn)改善的協(xié)議性能取決于可以構(gòu)成數(shù)據(jù)對(duì)象的屬性的選擇以及協(xié)議可以如何使用這些屬性。那個(gè)選擇可能取決于許多因素,這些因素包括最新近和先前版本電子郵件客戶部件的需求以及最新近和先前版本電子郵件服務(wù)器部件的需求。電子郵件客戶部件的例子包括滿足關(guān)于不同信息顯示的不同等級(jí)的緊急性,并遵守電子郵件客戶部件用戶所設(shè)置的參數(shù)選擇。電子郵件服務(wù)器部件的例子包括有效率地存儲(chǔ)和檢索數(shù)據(jù),并有效率地處理協(xié)議請(qǐng)求。常規(guī)原先技術(shù)的電子郵件環(huán)境利用可能由命名屬性構(gòu)成的數(shù)據(jù)對(duì)象(例如,電子郵件消息;該電子郵件消息可以包括命名屬性的頭部集的和主體集,以便可以分開請(qǐng)求并/或處理這兩個(gè)集)。另一個(gè)原先技術(shù)的例子是一種電子郵件消息,其中,該命名屬性的主體集包括(例如)采用多種電子郵件消息格式(例如,純文本、超文本標(biāo)記語(yǔ)言(HTML)、rich-text格式(RTF)等)的電子郵件消息主體的多個(gè)版本。在這種情況下,原先技術(shù)的電子郵件服務(wù)器部件可以用許多方法對(duì)關(guān)于該電子郵件消息的主體的協(xié)議請(qǐng)求作出響應(yīng)。復(fù)雜性最低的請(qǐng)求可能會(huì)發(fā)送該電子郵件消息主體的所有版本,但這個(gè)響應(yīng)可能會(huì)導(dǎo)致帶寬利用增加。圖7A描繪了一種程序的一部分,先前(原先技術(shù))版本電子郵件服務(wù)器部件使用該程序在這種情況中作出響應(yīng)。在步驟701中,電子郵件服務(wù)器部件檢驗(yàn)每個(gè)電子郵件消息主體的格式。如果這些格式中的一種格式是預(yù)定的標(biāo)準(zhǔn)格式(例如,RTF),那么,該程序進(jìn)行到步驟703,并且,該標(biāo)準(zhǔn)格式電子郵件消息主體被發(fā)送到請(qǐng)求的電子郵件客戶部件。如果這些格式中沒有一種格式是預(yù)定的標(biāo)準(zhǔn)格式,那么,步驟701分支到步驟702,在那里,電子郵件消息主體版本之一被轉(zhuǎn)換成該標(biāo)準(zhǔn)格式。如果只有電子郵件消息主體的單一版本,但該電子郵件消息主體可能不采用協(xié)議所要求的標(biāo)準(zhǔn)格式,那么,也可以使用圖7A所描繪的子過(guò)程(subprocedure)。圖7B描繪了根據(jù)本發(fā)明的最新近版本電子郵件服務(wù)器部件所使用的程序的一部分。在步驟704中,為BEST_BODY標(biāo)記檢驗(yàn)協(xié)議請(qǐng)求,該協(xié)議請(qǐng)求會(huì)導(dǎo)致由電子郵件服務(wù)器部件來(lái)使用這個(gè)子過(guò)程。這個(gè)例子中的標(biāo)記和這里所使用的其他標(biāo)記被用于該電子郵件服務(wù)器部件;電子郵件客戶部件是最新近的版本,并且想要執(zhí)行與該標(biāo)記有關(guān)聯(lián)的功能??梢允褂闷渌甘?。例如,如果檢測(cè)到最新近的電子郵件客戶部件,則可以默認(rèn)地執(zhí)行該功能。無(wú)論如何,如果沒有發(fā)現(xiàn)BESTBODY標(biāo)記,那么,步驟704分支到步驟701,并且如參照?qǐng)D7A所描述的那樣繼續(xù)進(jìn)行。如果發(fā)現(xiàn)該標(biāo)記,則該程序進(jìn)行到步驟705,在那里,選擇用于發(fā)送到請(qǐng)求的電子郵件客戶部件的最佳電子郵件消息主體。如果只有與被請(qǐng)求的電子郵件消息有關(guān)聯(lián)的單一電子郵件消息主體,那么,它是最佳的。如果具有(例如)采用不同格式的幾個(gè)電子郵件消息主體,那么,電子郵件服務(wù)器部件根據(jù)(例如)電子郵件消息主體格式(例如,RTF、HTML、純文本)的預(yù)定排列,從它們之中選擇最佳的電子郵件消息主體。然后,該程序進(jìn)行到步驟703,在那里,所選擇的電子郵件消息主體被發(fā)送到電子郵件客戶部件。在這個(gè)實(shí)施例中,電子郵件客戶部件可能能夠顯示多種電子郵件消息主體格式,從而使電子郵件服務(wù)器部件無(wú)須將電子郵件消息主體轉(zhuǎn)換成標(biāo)準(zhǔn)格式。此外,如果需要的話,電子郵件客戶部件可以將最佳的電子郵件消息主體轉(zhuǎn)換成不同的格式。由于電子郵件服務(wù)器部件無(wú)須執(zhí)行轉(zhuǎn)換電子郵件消息主體的任務(wù),因此,本發(fā)明提供了改善的性能。此外,最新近版本電子郵件服務(wù)器部件可以對(duì)來(lái)自先前版本電子郵件客戶部件的協(xié)議請(qǐng)求作出響應(yīng),只是復(fù)雜性有適度的提高??梢允褂肦OPs來(lái)實(shí)現(xiàn)對(duì)電子郵件服務(wù)器部件與電子郵件客戶部件之間的電子郵件文件夾的復(fù)制。例如,SynchFolderROP可以提出使文件夾同步的請(qǐng)求。在電子郵件客戶部件能夠顯示非標(biāo)準(zhǔn)電子郵件消息主體格式的情況下,它可以在SynchFolderROP中設(shè)置BEST_BODY標(biāo)記,以指出電子郵件服務(wù)器部件可以從各種可用的電子郵件消息主體之中選擇最佳格式,而不是要求服務(wù)器返回采用標(biāo)準(zhǔn)格式的電子郵件消息主體。在具有和沒有BEST_BODY標(biāo)記的情況下,電子郵件服務(wù)器部件都可以適當(dāng)?shù)靥幚鞷OPs,只是復(fù)雜性有適度的提高。用于跟先前版本服務(wù)器和最新近版本服務(wù)器進(jìn)行通信的ROPs可以包括(例如)以下表格中所陳述的特征圖8A-8C表現(xiàn)了在電子郵件服務(wù)器部件與電子郵件客戶部件之間傳送一組電子郵件消息的幾種不同的現(xiàn)存模式。關(guān)于每種模式,每個(gè)電子郵件消息具有包括頭部集和主體集的命名屬性,并且,幾個(gè)電子郵件消息被包含在文件夾中。圖8A展示了完全項(xiàng)目傳送模式。該插圖表現(xiàn)了正在被傳送的第一個(gè)電子郵件消息頭部801,接下來(lái)是第二個(gè)電子郵件消息頭部803前面的第一個(gè)電子郵件消息主體802,然后是第二個(gè)電子郵件消息主體804等,直到傳送完這組電子郵件消息為止。圖8B展示了頭部首先傳送模式。在這種模式中,先傳送第一個(gè)電子郵件消息頭部805,然后是第二個(gè)電子郵件消息頭部806等,直到傳送完所有電子郵件消息頭部為止;直到那時(shí)才傳送第一個(gè)電子郵件消息主體807,然后是第二個(gè)電子郵件消息主體808等,直到傳送完這組電子郵件消息為止。圖8C展示了頭部唯一傳送模式。如這個(gè)名稱所暗示的,響應(yīng)于傳送一組電子郵件消息的請(qǐng)求,只傳送電子郵件消息頭部809。響應(yīng)于額外的明確請(qǐng)求,將只傳送電子郵件消息主體810。在這些模式中的任何模式中,傳送序列可能會(huì)被(例如)關(guān)于特定電子郵件消息主體的較高優(yōu)先權(quán)電子郵件客戶部件請(qǐng)求暫時(shí)中斷。電子郵件文件夾是傳送一組電子郵件消息的請(qǐng)求的目標(biāo)的一個(gè)例子。但是,電子郵件文件夾可以包含除電子郵件消息以外的數(shù)據(jù)對(duì)象。如上所述,經(jīng)常參照電子郵件消息頭部和電子郵件消息主體來(lái)定義傳送模式(例如,頭部首先傳送模式和頭部唯一傳送模式)。在這類傳送模式中,如果嘗試傳送可能沒有為其明確定義命名屬性的頭部集和/或命名屬性的主體集的數(shù)據(jù)對(duì)象,則可能會(huì)導(dǎo)致協(xié)議失敗。通過(guò)規(guī)定可以總是全部而不是部分地傳送數(shù)據(jù)對(duì)象(沒有為其明確定義命名屬性的頭部和/或主體集),本發(fā)明的一個(gè)方面避免了這種情況。圖8D可以用例子展示這個(gè)實(shí)施例。在這個(gè)例子中,電子郵件服務(wù)器部件與電子郵件客戶部件之間的傳送可能采用頭部唯一模式。相應(yīng)地,傳送第一個(gè)電子郵件消息頭部811,然后,數(shù)據(jù)對(duì)象812成為供傳送的下一個(gè)候選者。沒有為數(shù)據(jù)對(duì)象812(例如,F(xiàn)AI)明確定義命名屬性的頭部集,所以傳送整個(gè)數(shù)據(jù)對(duì)象。供傳送的下一個(gè)候選者具有明確定義的命名屬性的頭部集(即,該候選數(shù)據(jù)對(duì)象擁有被電子郵件客戶部件明確定義為屬于命名屬性的頭部集的所有命名屬性),所以只傳送電子郵件消息頭部813。執(zhí)行本發(fā)明的這個(gè)方面的一種方法的一個(gè)例子是通過(guò)使用可能被包括在同步ROP(例如,以上所描述的SynchFolderROP)中的標(biāo)記(例如,IGNORE_MODE_ON_FAI)。在具有和沒有IGNORE_MODE_ON_FAI標(biāo)記的情況下,電子郵件服務(wù)器部件都可以適當(dāng)?shù)靥幚鞷OPs,只是復(fù)雜性有適度的提高。ROPs可以包括以下表格中所陳述的特征,以便實(shí)現(xiàn)電子郵件服務(wù)器部件與電子郵件客戶部件之間的電子郵件文件夾的復(fù)制電子郵件消息通常被呈送給一位或多位電子郵件網(wǎng)絡(luò)用戶。如果電子郵件消息被電子郵件服務(wù)器部件接受用于存儲(chǔ),則可能認(rèn)為該電子郵件消息已被傳遞。電子郵件網(wǎng)絡(luò)可能具有幾個(gè)電子郵件服務(wù)器部件。通常,電子郵件網(wǎng)絡(luò)協(xié)議具有某種策略,用于限制電子郵件網(wǎng)絡(luò)用戶必須核對(duì)新消息的電子郵件服務(wù)器部件的數(shù)量。普通的例子是家庭服務(wù)器策略,該策略規(guī)定被呈送給特定電子郵件網(wǎng)絡(luò)用戶的電子郵件消息將只由一個(gè)特定的電子郵件服務(wù)器部件(被稱作“用戶的家庭服務(wù)器”)來(lái)接受。在這種情況下,當(dāng)(例如)定期核對(duì)新的電子郵件消息或?yàn)樾碌碾娮余]件消息的通知進(jìn)行登記時(shí),可以將電子郵件客戶部件配置成只考慮該家庭服務(wù)器。圖9示出即使簡(jiǎn)單的家庭服務(wù)器策略例子也可能會(huì)錯(cuò)綜復(fù)雜。在圖9所展示的例子中,首先將特定的電子郵件服務(wù)器部件901指定為特定電子郵件網(wǎng)絡(luò)用戶的家庭服務(wù)器。隨著時(shí)間的推移,通常由于管理的原因,將該用戶的指定家庭服務(wù)器改成不同的電子郵件服務(wù)器部件903和905。例如,電子郵件服務(wù)器部件901、903和905可能在物理上或在邏輯上有所不同,或者是不同的版本。電子郵件客戶部件902在時(shí)間T0至?xí)r間T1內(nèi)可能只與電子郵件服務(wù)器部件901進(jìn)行通信,隨后,電子郵件客戶部件904在時(shí)間T2之前可能只與電子郵件服務(wù)器部件903進(jìn)行通信,然后,電子郵件客戶部件906可能只與電子郵件服務(wù)器部件905進(jìn)行通信。電子郵件客戶部件902、904和906可能相同,也可能不同。在時(shí)間T2之后,電子郵件服務(wù)器部件901和903可能存在,也可能不存在。這些復(fù)雜化因素與接下來(lái)討論的電子郵件消息存儲(chǔ)器復(fù)制有特殊的關(guān)系。電子郵件消息可以由電子郵件服務(wù)器部件存儲(chǔ)在明確的電子郵件消息存儲(chǔ)器中,例如,可以使用眾所周知的數(shù)據(jù)庫(kù)技術(shù)來(lái)執(zhí)行該電子郵件消息存儲(chǔ)器。電子郵件服務(wù)器部件可能具有一個(gè)或多個(gè)這樣的報(bào)文存儲(chǔ)器。電子郵件網(wǎng)絡(luò)用戶可能具有家庭報(bào)文存儲(chǔ)器。若改變家庭報(bào)文存儲(chǔ)器,則可能會(huì)產(chǎn)生與改變家庭服務(wù)器的描述內(nèi)容相同的效果。一些電子郵件網(wǎng)絡(luò)協(xié)議包括將電子郵件消息存儲(chǔ)器的一些部分復(fù)制到電子郵件客戶部件本地的存儲(chǔ)設(shè)備的能力。通過(guò)將遠(yuǎn)程電子郵件消息存儲(chǔ)器的一些部分復(fù)制到本地電子郵件存儲(chǔ)設(shè)備,可以改善協(xié)議性能和/或被察覺的協(xié)議性能,例如,這一點(diǎn)可以利用在明確的電子郵件網(wǎng)絡(luò)用戶請(qǐng)求觀看所有新的電子郵件消息之前將這些電子郵件消息復(fù)制到本地電子郵件存儲(chǔ)設(shè)備。這種復(fù)制也可以提供額外的電子郵件客戶部件功能性,例如,可允許電子郵件網(wǎng)絡(luò)用戶在網(wǎng)絡(luò)連通性中斷期間觀看電子郵件消息。在電子郵件網(wǎng)絡(luò)環(huán)境中,簡(jiǎn)單的復(fù)制可能會(huì)很快變得效率很低。例如,如果電子郵件服務(wù)器部件具有與特定電子郵件網(wǎng)絡(luò)用戶有關(guān)聯(lián)的一個(gè)電子郵件消息,那個(gè)消息已在該網(wǎng)絡(luò)用戶的客戶部件處被加以復(fù)制,并且,對(duì)那位電子郵件網(wǎng)絡(luò)用戶而言有新的電子郵件消息到達(dá),那么,仍然要求必須響應(yīng)于簡(jiǎn)單的復(fù)制請(qǐng)求來(lái)發(fā)送兩個(gè)電子郵件消息。如果另一個(gè)新的電子郵件消息在這兩個(gè)電子郵件消息復(fù)制之后到達(dá),那么,仍然要求現(xiàn)在必須響應(yīng)于簡(jiǎn)單的復(fù)制請(qǐng)求來(lái)發(fā)送三個(gè)電子郵件消息等。一些電子郵件網(wǎng)絡(luò)協(xié)議已規(guī)定電子郵件消息存儲(chǔ)器的增量復(fù)制,以緩解這個(gè)問(wèn)題。在增量復(fù)制中,必須響應(yīng)于復(fù)制請(qǐng)求來(lái)只發(fā)送在先前成功的增量復(fù)制之后發(fā)生的電子郵件消息存儲(chǔ)器的變化,例如,其中,自從上一次成功的增量復(fù)制之后的唯一變化是新的電子郵件消息的到達(dá),于是,只需要響應(yīng)于增量復(fù)制請(qǐng)求來(lái)發(fā)送這個(gè)新的電子郵件消息。圖10表現(xiàn)了規(guī)定增量復(fù)制的協(xié)議的一個(gè)更加詳細(xì)的例子。電子郵件消息存儲(chǔ)器可以被再分成各個(gè)電子郵件文件夾。每個(gè)電子郵件文件夾可以獨(dú)立于其他電子郵件文件夾而被加以復(fù)制,從而規(guī)定了對(duì)復(fù)制過(guò)程的更加細(xì)致的控制。在這個(gè)例子中,增量復(fù)制過(guò)程被稱作“同步”,因?yàn)樗◤碾娮余]件客戶部件501到電子郵件服務(wù)器部件502以及從電子郵件服務(wù)器部件502到電子郵件客戶部件501的變化傳播。在同步請(qǐng)求1001之后,由電子郵件服務(wù)器部件502來(lái)處理SynchFolderROP。該ROP包括文件夾ID參數(shù)(未示出)和狀態(tài)點(diǎn)0參數(shù)。該文件夾ID參數(shù)識(shí)別是同步請(qǐng)求1001的目標(biāo)的電子郵件文件夾。該狀態(tài)點(diǎn)0參數(shù)包含信息,該信息允許電子郵件服務(wù)器部件502確定自從上次使電子郵件文件夾同步之后,它發(fā)生了什么變化(如果有的話)。如果請(qǐng)求1001代表電子郵件客戶部件501提出的關(guān)于目標(biāo)文件夾的首次同步請(qǐng)求,那么,電子郵件服務(wù)器部件502確定與空的文件夾比較,電子郵件消息存儲(chǔ)器中的目標(biāo)電子郵件文件夾是否已發(fā)生變化。在對(duì)請(qǐng)求1001的響應(yīng)1002中,電子郵件服務(wù)器部件502將任何變化發(fā)送到電子郵件客戶部件501,包括已被加入目標(biāo)文件夾的任何電子郵件消息和/或其他數(shù)據(jù)對(duì)象以及已從目標(biāo)文件夾中被刪除的任何電子郵件消息和/或其他數(shù)據(jù)對(duì)象的清單。電子郵件服務(wù)器部件502也創(chuàng)建代表目標(biāo)文件夾的狀態(tài)的新的狀態(tài)點(diǎn)1,因?yàn)樵谕街笏鼘?huì)立即在電子郵件客戶部件501上;并且,電子郵件服務(wù)器部件502也會(huì)在響應(yīng)1002中發(fā)送狀態(tài)點(diǎn)1。當(dāng)電子郵件客戶部件501發(fā)送關(guān)于跟請(qǐng)求1001中相同的文件夾的下一個(gè)同步請(qǐng)求1003時(shí),請(qǐng)求1003將會(huì)包括曾利用響應(yīng)1002而被返回的相同的狀態(tài)點(diǎn)1,作為參數(shù)。如前所述,電子郵件服務(wù)器部件502將使用狀態(tài)點(diǎn)1中所包含的信息來(lái)確定目標(biāo)文件夾中發(fā)生了什么變化(如果有的話),并且在響應(yīng)1004中,將那些變化與新近創(chuàng)建的狀態(tài)點(diǎn)2一起發(fā)回到電子郵件客戶部件501。如果狀態(tài)點(diǎn)數(shù)據(jù)對(duì)象的尺寸很大,則它可能會(huì)對(duì)協(xié)議性能產(chǎn)生不利的影響,因?yàn)樗?例如)每個(gè)電子郵件文件夾同步請(qǐng)求被發(fā)送到電子郵件服務(wù)器部件并從那里被發(fā)送出去。在規(guī)定電子郵件文件夾同步的一些電子郵件網(wǎng)絡(luò)協(xié)議中,該狀態(tài)點(diǎn)可能部分地由一組消息變化ID數(shù)據(jù)對(duì)象構(gòu)成,這些消息變化ID數(shù)據(jù)對(duì)象識(shí)別已被電子郵件客戶部件了解的電子郵件消息的變化。當(dāng)改變的電子郵件消息被傳送到電子郵件客戶和/或服務(wù)器部件時(shí),可以說(shuō),電子郵件消息變化已被那個(gè)部件了解。消息變化ID數(shù)據(jù)對(duì)象的一個(gè)目標(biāo)可能會(huì)是在整個(gè)電子郵件網(wǎng)絡(luò)的上下文中,對(duì)電子郵件消息的變化進(jìn)行獨(dú)特的識(shí)別。在采用家庭服務(wù)器策略的電子郵件網(wǎng)絡(luò)中,用戶的家庭服務(wù)器可能負(fù)責(zé)使消息變化ID數(shù)據(jù)對(duì)象與以前未見的電子郵件消息變化相關(guān)聯(lián)。例如,家庭服務(wù)器可以使用包括服務(wù)器ID數(shù)據(jù)對(duì)象和序號(hào)的消息變化ID數(shù)據(jù)對(duì)象。服務(wù)器ID數(shù)據(jù)對(duì)象可以使用眾所周知的技術(shù)(例如,全球唯一標(biāo)識(shí)符),在整個(gè)電子郵件網(wǎng)絡(luò)的上下文中對(duì)電子郵件服務(wù)器部件進(jìn)行獨(dú)特的識(shí)別。在這類標(biāo)識(shí)符本身的尺寸很大的情況下,該服務(wù)器ID數(shù)據(jù)對(duì)象可以被編入該電子郵件服務(wù)器部件所保持的標(biāo)識(shí)符查找表格。該序號(hào)可以由(例如)寬度為6個(gè)字節(jié)、電子郵件服務(wù)器部件本地的計(jì)數(shù)器來(lái)提供;只要該電子郵件服務(wù)器部件接受供存儲(chǔ)的以前未見的電子郵件消息,該序號(hào)就可增量。出于討論的目的,消息變化ID數(shù)據(jù)對(duì)象可以由(例如)“S1:1”來(lái)代表,其中,“S1”代表第一個(gè)電子郵件服務(wù)器部件的服務(wù)器ID數(shù)據(jù)對(duì)象,“1”代表序號(hào)。例如,一組消息變化ID數(shù)據(jù)對(duì)象可以由“S1:1,S1:2,S1:3”來(lái)代表,其中,“S1:1”、“S1:2”、“S1:3”是具有服務(wù)器IDS1的電子郵件服務(wù)器部件所使用的連續(xù)的消息變化ID數(shù)據(jù)對(duì)象。在狀態(tài)點(diǎn)部分地由代表電子郵件客戶部件所見的電子郵件消息變化的一組消息變化ID數(shù)據(jù)對(duì)象(“所見消息變化”集)構(gòu)成的情況下,已開發(fā)了為這個(gè)集編碼的一些技術(shù),以減小其尺寸,例如,“S1:1,S1:2,S1:3,S1:4”這個(gè)集可以被編碼為“S1:1-4”。此外,電子郵件服務(wù)器部件可以確保它所使用的這些序號(hào)總是在增加。在那種情況下,不鄰接的“所見消息變化”集(例如)“S1:1,S1:3,S1:5,S1:7”可以被編碼為“S1:1-7”,即,作為包括最小序號(hào)和最大序號(hào)的范圍,而不會(huì)損失功能性。在圖9所描繪情況中,“所見消息變化”集可以包括曾經(jīng)由除當(dāng)前的家庭服務(wù)器(例如,S3)以外的電子郵件服務(wù)器部件(例如,S1、S2)創(chuàng)建的消息變化ID數(shù)據(jù)對(duì)象。由當(dāng)前的家庭服務(wù)器創(chuàng)建的消息變化ID數(shù)據(jù)對(duì)象可以被稱作“本地消息變化ID”,由其他電子郵件服務(wù)器部件創(chuàng)建的消息變化ID數(shù)據(jù)對(duì)象可以被稱作“外來(lái)消息變化ID”。還沒有提供用于跟先前版本電子郵件服務(wù)器部件進(jìn)行通信的電子郵件網(wǎng)絡(luò)協(xié)議,用于在每一電子郵件服務(wù)器部件的基礎(chǔ)上將不鄰接的外來(lái)消息變化ID序列優(yōu)化成包括最小序號(hào)和最大序號(hào)的范圍。以下的表格展示了在本發(fā)明的實(shí)施例中包括這種優(yōu)化的好處本發(fā)明的一個(gè)實(shí)施例使用包括以下表格中所陳述的特征的ROPs,以便實(shí)現(xiàn)電子郵件服務(wù)器部件與電子郵件客戶部件之間的電子郵件文件夾的同步。電子郵件服務(wù)器部件可以執(zhí)行改進(jìn)的狀態(tài)點(diǎn)編碼技術(shù),只是復(fù)雜性有適度的提高。圖11A和圖11B描繪了可以分別由先前版本服務(wù)器和最新近版本服務(wù)器使用的子過(guò)程之間的差異,以響應(yīng)于SynchFolerROP。圖11A表現(xiàn)了步驟1101、1102和1103。在步驟1101中,編制最初的“所見消息變化”集。在步驟1102中,屬于本地消息變化ID數(shù)據(jù)對(duì)象的“所見消息變化”集的組成部分被進(jìn)行優(yōu)化。在步驟1103中,將被優(yōu)化的“所見消息變化”集加入狀態(tài)點(diǎn)數(shù)據(jù)對(duì)象,該狀態(tài)點(diǎn)數(shù)據(jù)對(duì)象可以利用響應(yīng)被發(fā)送到曾請(qǐng)求同步的電子郵件客戶部件。圖11B包括額外的步驟1104,該步驟表現(xiàn)了屬于外來(lái)消息變化ID數(shù)據(jù)對(duì)象的“所見消息變化”集的組成部分,現(xiàn)在利用改進(jìn)的優(yōu)化在步驟1103中將“所見消息變化”集加入狀態(tài)點(diǎn)數(shù)據(jù)對(duì)象,在這之前,這些外來(lái)消息變化ID數(shù)據(jù)對(duì)象也正在被進(jìn)行優(yōu)化。通過(guò)將電子郵件消息存儲(chǔ)器再分成各個(gè)電子郵件文件夾,規(guī)定了對(duì)同步過(guò)程的更加細(xì)致的控制,但這并沒有自動(dòng)規(guī)定改善協(xié)議性能,并且,可能會(huì)導(dǎo)致協(xié)議性能退化。例如,一些協(xié)議要求使每個(gè)報(bào)文存儲(chǔ)器文件夾分開同步。每項(xiàng)同步操作通常具有某種管理費(fèi)用,該管理費(fèi)用可能會(huì)很多。利用狀態(tài)點(diǎn)數(shù)據(jù)對(duì)象的同步操作是可能具有重大管理費(fèi)用的操作的一個(gè)例子。在使整個(gè)報(bào)文存儲(chǔ)器同步的情況中,與要求較少的同步操作的協(xié)議相比,要求使每個(gè)報(bào)文存儲(chǔ)器文件夾分開同步的協(xié)議可能會(huì)處于不利的地位。對(duì)于電子郵件客戶部件而言,使整個(gè)報(bào)文存儲(chǔ)器同步并保持同步是合意的目標(biāo)。常規(guī)的原先技術(shù)的電子郵件客戶部件一直尋求實(shí)現(xiàn)這個(gè)目標(biāo),即使當(dāng)它導(dǎo)致對(duì)協(xié)議性能造成不利的重大影響時(shí),也是如此。本發(fā)明的一個(gè)方面是它能夠?qū)⒉焕膮f(xié)議影響減到最小,同時(shí),通過(guò)利用深入層級(jí)表格來(lái)實(shí)現(xiàn)這個(gè)目標(biāo)。常規(guī)的原先技術(shù)的電子郵件服務(wù)器部件一直無(wú)法提供深入層級(jí)表格。在將電子郵件消息存儲(chǔ)器再分成各個(gè)電子郵件文件夾的情況下,那些電子郵件文件夾可以被組織到各個(gè)層級(jí)中。圖12表現(xiàn)了電子郵件文件夾層級(jí)的一個(gè)例子。在圖12中,文件夾1204是文件夾1203的子文件夾(subfolder)。文件夾1203又是文件夾1202的子文件夾。文件夾1201是根文件夾。根文件夾不是其他任何文件夾的子文件夾。所有其他的文件夾是根部在文件夾1201處的文件夾層級(jí)的組成部分。通常,文件夾層級(jí)中的每個(gè)文件夾無(wú)法直接引用其他每個(gè)文件夾。文件夾可能只具有對(duì)其子文件夾的直接引用。文件夾也可能直接引用本身是其子文件夾的任何文件夾。在許多情況下,每個(gè)文件夾可直接引用的唯一文件夾可能是該層級(jí)的根文件夾。深入層級(jí)表格可以包含有關(guān)文件夾層級(jí)中的每個(gè)文件夾的信息。每個(gè)文件夾可擁有該深入層級(jí)表格中的一行。該深入層級(jí)表格中的信息如此,以便可以使用該信息來(lái)確定電子郵件文件夾的內(nèi)容在特定的時(shí)期內(nèi)是否已改變??梢酝ㄟ^(guò)簡(jiǎn)單比較在特定時(shí)期開始時(shí)所采用的文件夾的行的復(fù)制件和在該時(shí)期結(jié)束時(shí)所采用的那個(gè)文件夾的行的復(fù)制件,來(lái)確定該時(shí)期內(nèi)電子郵件文件夾的變化。在一個(gè)實(shí)施例中,該深入層級(jí)表格的每行包括以下各個(gè)屬性只要改變文件夾的內(nèi)容,就可以更新深入層級(jí)表格中的電子郵件文件夾的行的屬性。為了有效率地執(zhí)行深入層級(jí)表格更新,申請(qǐng)者已發(fā)現(xiàn)這有助于對(duì)該深入層級(jí)表格進(jìn)行迅速、直接的引用。申請(qǐng)者至少已發(fā)現(xiàn)當(dāng)嘗試訪問(wèn)該深入層級(jí)表格時(shí),應(yīng)該有很少的可預(yù)測(cè)數(shù)量的間接層次。例如,如果將深入層級(jí)表格置于文件夾層級(jí)中的任意層次,則將不會(huì)規(guī)定可預(yù)測(cè)數(shù)量的間接層次。在本發(fā)明的一個(gè)實(shí)施例中,由于這個(gè)原因,深入層級(jí)表格可能與電子郵件網(wǎng)絡(luò)用戶的電子郵件消息存儲(chǔ)器文件夾層級(jí)的根文件夾有關(guān)聯(lián)。電子郵件客戶部件與電子郵件服務(wù)器部件之間的通信可以被分成各個(gè)通信對(duì)話期。例如,在網(wǎng)絡(luò)連通性中斷期間,可能會(huì)在各個(gè)對(duì)話期之間發(fā)生電子郵件消息存儲(chǔ)器同步的損失。為了在通信對(duì)話期開始時(shí)重新建立電子郵件消息存儲(chǔ)器同步,用于跟先前版本電子郵件服務(wù)器部件進(jìn)行通信的一些協(xié)議為該文件夾層級(jí)中的每個(gè)文件夾使用過(guò)SynchFolderROP。通常,部分這些文件夾的內(nèi)容將不會(huì)在各個(gè)對(duì)話期之間已發(fā)生變化。具有作為其目標(biāo)的未改變的文件夾的SynchFolderROP導(dǎo)致“零同步信號(hào)”(nullsynch)。雖然“零同步信號(hào)”不會(huì)導(dǎo)致任何文件夾變化被傳送到電子郵件客戶部件,但是,它仍然具有可能重大的、與其有關(guān)聯(lián)的管理費(fèi)用(例如,狀態(tài)點(diǎn)數(shù)據(jù)對(duì)象)。圖13展示了本發(fā)明的一個(gè)實(shí)施例,該實(shí)施例通過(guò)利用深入層級(jí)表格來(lái)避免這種“零同步信號(hào)”結(jié)果。在第一請(qǐng)求1301中,電子郵件客戶部件501將請(qǐng)求深入層級(jí)表格的ROP(例如,GetHierarchyTable)發(fā)送到電子郵件服務(wù)器部件502。在第一請(qǐng)求1302中,將該深入層級(jí)表格的復(fù)制件提供給電子郵件客戶部件501。通常,電子郵件客戶部件501將會(huì)具有該深入層級(jí)表格的先前的復(fù)制件。通過(guò)利用這兩個(gè)復(fù)制件的逐行比較,電子郵件客戶部件501可以確定電子郵件服務(wù)器部件502上的用戶電子郵件消息存儲(chǔ)器中的哪些文件夾已發(fā)生變化。接下來(lái),使用ROPs(例如,SynchFolder),只使已改變的那些文件夾同步??梢园幢匾男枨髞?lái)重復(fù)請(qǐng)求1303和響應(yīng)1304,以便使改變的文件夾同步。在同步成功之后,可以更新該深入層級(jí)表格的電子郵件客戶部件的復(fù)制件,以便與曾在響應(yīng)1302中被發(fā)送的最近的復(fù)制件相匹配。如果電子郵件客戶部件501沒有該深入層級(jí)表格的先前的復(fù)制件,那么,具有該最近復(fù)制件中的一行的所有文件夾都可以被同步化。一旦已建立用戶的電子郵件消息存儲(chǔ)器的同步,就可以通過(guò)定期重復(fù)以上所描述的對(duì)話期開始步驟(即,輪詢電子郵件服務(wù)器部件)來(lái)保持同步,但這種方案也有缺點(diǎn)。例如,輪詢時(shí)期可能比用戶的電子郵件消息存儲(chǔ)器的各個(gè)變化之間的時(shí)期要短得多。在那種情況下,深入層級(jí)表格比較中的相對(duì)很多的比較將會(huì)指出沒有文件夾已發(fā)生變化。這類比較實(shí)際上是徒勞,所以,可避免這些比較的協(xié)議可能會(huì)更有效率。一些電子郵件網(wǎng)絡(luò)包括電子郵件客戶部件預(yù)訂的一種設(shè)備,電子郵件服務(wù)器部件通知它(例如)特定電子郵件文件夾的內(nèi)容何時(shí)發(fā)生變化。通過(guò)為與用戶的文件夾層級(jí)中的每個(gè)文件夾有關(guān)聯(lián)的變化通知?jiǎng)?chuàng)建分開的預(yù)訂,一些先前版本電子郵件客戶部件使用這種設(shè)備來(lái)保持用戶的電子郵件消息存儲(chǔ)器的同步。在本發(fā)明的一個(gè)實(shí)施例中,電子郵件客戶部件可以為與該深入層級(jí)表格有關(guān)聯(lián)的變化通知只創(chuàng)建單一預(yù)訂。單一預(yù)訂更有效率,這是因?yàn)榻⒃搯我活A(yù)訂所需要的ROPs較少,并且,所消耗的服務(wù)器方的資源也較少。進(jìn)一步參照?qǐng)D13,當(dāng)最新近版本電子郵件客戶部件501根據(jù)本發(fā)明的一個(gè)方面在與電子郵件服務(wù)器部件502的通信對(duì)話期開始時(shí)使用第一請(qǐng)求1301中的GetHierarchyTableROP時(shí),自動(dòng)預(yù)訂電子郵件客戶部件501,以改變與在響應(yīng)1302中被返回的深入層級(jí)表格有關(guān)聯(lián)的通知。當(dāng)該電子郵件客戶部件處的用戶的電子郵件消息存儲(chǔ)器中的電子郵件文件夾發(fā)生變化時(shí),例如,當(dāng)電子郵件消息被加入該文件夾時(shí),也按以前所描述的那樣來(lái)更新該深入層級(jí)表格。該深入層級(jí)表格的變化會(huì)引發(fā)對(duì)電子郵件客戶部件501的通知警報(bào)1305。該通知警報(bào)響應(yīng)于請(qǐng)求1301所發(fā)出的預(yù)訂,但它不是明確的請(qǐng)求-響應(yīng)周期的一部分。這樣,通過(guò)使用如本發(fā)明所提供的通知系統(tǒng),可大大減少電子郵件網(wǎng)絡(luò)的管理費(fèi)用。單一預(yù)訂可能會(huì)導(dǎo)致許多通知。在一個(gè)實(shí)施例中,使用無(wú)連接(connectionless)網(wǎng)絡(luò)傳送機(jī)制(例如,“用戶數(shù)據(jù)報(bào)協(xié)議”/“網(wǎng)際協(xié)議”(UDP/IP))來(lái)傳遞該警報(bào),但也可以使用任何合適的網(wǎng)絡(luò)傳送機(jī)制。響應(yīng)于該警報(bào),電子郵件客戶部件501將包含ROP(例如,GetNotification)的請(qǐng)求1306發(fā)送到電子郵件服務(wù)器部件502。在響應(yīng)1307中,將該深入層級(jí)表格的任何改變的行(即與引發(fā)過(guò)該通知的改變的文件夾相對(duì)應(yīng)的各行)發(fā)送到電子郵件客戶部件501。然后,電子郵件客戶部件501使用ROPs(例如,SynchFolder),只使已改變的文件夾同步??梢詾榕c相同的數(shù)據(jù)對(duì)象(例如,相同的電子郵件文件夾)有關(guān)聯(lián)的變化通知預(yù)訂多個(gè)電子郵件客戶部件,以便(例如)提供協(xié)作功能性。如圖18所示,為跟位于電子郵件服務(wù)器部件1804上的相同的數(shù)據(jù)對(duì)象(未示出)有關(guān)聯(lián)的變化通知預(yù)訂電子郵件客戶部件1801、1802和1803。電子郵件客戶部件1803將ROP1805發(fā)送到導(dǎo)致該數(shù)據(jù)對(duì)象變化的電子郵件服務(wù)器部件1804。該變化的結(jié)果是電子郵件服務(wù)器部件1804將變化通知1806、1807和1808發(fā)出到電子郵件客戶部件1801、1802和1803。在識(shí)別已改變的數(shù)據(jù)對(duì)象以外,變化通知可以攜帶很少的信息,以致(例如)電子郵件客戶部件可能無(wú)法確定它是否曾是引起特定變化的原因。如果該數(shù)據(jù)對(duì)象是(例如)電子郵件文件夾,則變化通知1806、1807和1808可能會(huì)導(dǎo)致每個(gè)電子郵件客戶部件1801、1802和1803為改變的文件夾啟動(dòng)同步。由于電子郵件客戶部件1803在這個(gè)例子中曾對(duì)該變化負(fù)責(zé),因此,結(jié)果將會(huì)是“零同步信號(hào)”。由于前面所討論的原因,可能需要消除導(dǎo)致“零同步信號(hào)”的同步。但是,所描述的通知行為可能不會(huì)總是不合乎需要,并且,一些電子郵件客戶部件可能會(huì)依靠它。本發(fā)明的一個(gè)方面是規(guī)定電子郵件客戶部件能夠配置最新近版本電子郵件服務(wù)器部件的通知行為,以便改善協(xié)議性能,同時(shí)提供具有未改變的通知行為的先前版本電子郵件客戶部件。圖19A描繪了可以由先前版本電子郵件服務(wù)器部件提供的通知行為。圖19B描繪了根據(jù)本發(fā)明的一個(gè)方面的可配置的通知行為。如果需要的話,最新近的電子郵件客戶部件可以向電子郵件服務(wù)器部件指出例如,通過(guò)在圖19B所示的例子中為標(biāo)記(IGNORE_OWN標(biāo)記)提供請(qǐng)求,它能夠執(zhí)行圖19B中的通知行為。在步驟1901中,從將要被通知的這組訂戶中選擇下一個(gè)候選者。在步驟1904中,為IGNORE_OWN標(biāo)記檢驗(yàn)預(yù)訂。如果該標(biāo)記不存在,則步驟1904分支到步驟1902,在那里,通知被發(fā)送到該候選訂戶。如果發(fā)現(xiàn)該標(biāo)記,則步驟1904分支到步驟1905,在那里,再次檢驗(yàn)預(yù)訂,以確定該訂戶是否引發(fā)過(guò)這個(gè)通知。例如,可以通過(guò)檢驗(yàn)曾經(jīng)被用來(lái)發(fā)出預(yù)訂的對(duì)話期的通信對(duì)話期標(biāo)識(shí)符(“對(duì)話期ID”),來(lái)進(jìn)行這種確定。例如,對(duì)話期ID可以包括全球唯一標(biāo)識(shí)符和6字節(jié)序號(hào)。也為與其起因有關(guān)聯(lián)的對(duì)話期ID檢驗(yàn)該通知。如果兩者匹配,那么,禁止發(fā)行該通知。結(jié)果是曾引起通知的電子郵件客戶部件也將不會(huì)接收那個(gè)通知。然后,如下所述,該子過(guò)程進(jìn)行到步驟1903。如果訂戶沒有引發(fā)過(guò)通知,那么,與預(yù)訂有關(guān)聯(lián)的對(duì)話期ID跟與該通知的起因有關(guān)聯(lián)的對(duì)話期ID不同,并且,步驟1905分支到步驟1902,在那里,發(fā)送該通知。然后,該過(guò)程進(jìn)行到步驟1903,在那里,確定是否將要通知更多的訂戶。如果將要通知更多的訂戶,則該子過(guò)程返回到步驟1901,否則,這個(gè)子過(guò)程結(jié)束。如上所述,利用電子郵件消息的超高速緩存的電子郵件客戶部件可能會(huì)(例如)經(jīng)由ROP來(lái)請(qǐng)求本地客戶數(shù)據(jù)暫存器與電子郵件服務(wù)器部件處的可用的數(shù)據(jù)暫存器之間的消息或其他數(shù)據(jù)對(duì)象的同步。該電子郵件客戶部件可能會(huì)同樣請(qǐng)求將消息從服務(wù)器存儲(chǔ)器拷貝到客戶存儲(chǔ)器。不管是這樣還是那樣,都可以使用快速傳送模式來(lái)提出該請(qǐng)求。通常,當(dāng)要求消息或其他數(shù)據(jù)(例如,文件)進(jìn)行同步或拷貝時(shí),該請(qǐng)求(例如,ROP)包括需要進(jìn)行同步的所有消息的指示。例如,通過(guò)利用以上所描述的狀態(tài)點(diǎn)特點(diǎn),這個(gè)清單可以由電子郵件服務(wù)器部件自動(dòng)編制。關(guān)于先前版本(原先技術(shù))電子郵件服務(wù)器部件,若ROP請(qǐng)求中的一個(gè)消息或數(shù)據(jù)對(duì)象發(fā)生錯(cuò)誤,則將會(huì)引起該請(qǐng)求中的所有項(xiàng)目發(fā)生故障。圖14A中表現(xiàn)了這個(gè)過(guò)程,其中,包含ROP(例如,F(xiàn)XPrepare)的請(qǐng)求利用為拷貝或同步所指定的消息ID集而在步驟1401中被加以傳輸。在電子郵件服務(wù)器部件502處設(shè)立快速傳送機(jī)制,并且,在步驟1402中,將快速傳送ID傳輸?shù)诫娮余]件客戶部件501。然后,電子郵件客戶部件501通過(guò)包含(例如)FXGetBufferROP的請(qǐng)求來(lái)請(qǐng)求這些數(shù)據(jù)對(duì)象的拷貝或同步(步驟1403)。當(dāng)電子郵件服務(wù)器部件502嘗試打開所請(qǐng)求的消息時(shí),這些消息或其他數(shù)據(jù)對(duì)象中的一個(gè)或多個(gè)消息或數(shù)據(jù)對(duì)象發(fā)生錯(cuò)誤。錯(cuò)誤的例子包括消息或數(shù)據(jù)對(duì)象被破壞;服務(wù)器失靈;電子郵件服務(wù)器部件502被遺忘;或者,為該數(shù)據(jù)對(duì)象檢測(cè)到病毒。在發(fā)生該錯(cuò)誤之后,電子郵件服務(wù)器部件502在步驟1404中發(fā)送流到電子郵件客戶部件501的數(shù)據(jù)中的致命的ROP錯(cuò)誤。照此,同步?jīng)]有獲得成功,消息ID集內(nèi)的消息沒有被同步化或被拷貝,并且,電子郵件客戶部件501沒有接收該狀態(tài)點(diǎn)或類似的更新信息。然后,電子郵件客戶部件501必須請(qǐng)求在另一個(gè)時(shí)間對(duì)這些數(shù)據(jù)對(duì)象進(jìn)行同步或拷貝。情況可能會(huì)是如果沒有在電子郵件服務(wù)器部件502處修改錯(cuò)誤,則可能會(huì)繼續(xù)發(fā)送錯(cuò)誤消息,并且,消息ID集內(nèi)的消息可能永遠(yuǎn)不會(huì)被同步化或被拷貝。根據(jù)本發(fā)明的一個(gè)方面,最新近的電子郵件服務(wù)器部件可能會(huì)發(fā)送有關(guān)特定數(shù)據(jù)對(duì)象(例如,電子郵件消息)的錯(cuò)誤信息,而不是致命的ROP錯(cuò)誤,以便只有那個(gè)數(shù)據(jù)對(duì)象的同步會(huì)失敗。即使有錯(cuò)誤的消息或其他數(shù)據(jù)對(duì)象被包括在該響應(yīng)內(nèi),這個(gè)特點(diǎn)也允許ROP或其他請(qǐng)求內(nèi)的消息或其他數(shù)據(jù)對(duì)象被加以傳輸和同步化或被拷貝。如何處理特定對(duì)象錯(cuò)誤的一個(gè)例子是最新近的電子郵件服務(wù)器部件可以為具有對(duì)象錯(cuò)誤的數(shù)據(jù)對(duì)象發(fā)送數(shù)據(jù)流中的錯(cuò)誤消息。在這個(gè)例子中,為方便參考,該錯(cuò)誤被稱作“FXErrorInfo”。如果需要的話,則如以下進(jìn)一步的描述,F(xiàn)XErrorInfo可以包括諸如具有該錯(cuò)誤的數(shù)據(jù)對(duì)象的消息ID的信息,以及有關(guān)該消息為何失靈的額外的信息。圖14B表現(xiàn)了其中在消息M3中發(fā)生錯(cuò)誤的一種同步。該錯(cuò)誤導(dǎo)致包括消息M1、FXErrorInfo前面的消息M2和消息M4的FXGetBuffer響應(yīng)1405。該FXErrorInfo信息允許電子郵件客戶部件501知道哪個(gè)消息有過(guò)錯(cuò)誤,并且允許電子郵件客戶部件501使該響應(yīng)內(nèi)所有其他的消息都同步。如果該錯(cuò)誤消息FXErrorInfo包括有關(guān)該錯(cuò)誤的原因的信息,則(例如)可以通過(guò)向用戶顯示錯(cuò)誤消息,由該客戶部件相應(yīng)地作用于該信息。以下的表格表現(xiàn)了FXErrorInfo可以采用的格式的一個(gè)例子可見,該范例格式包括版本屬性、錯(cuò)誤代碼和消息ID。此外,如果需要的話,可以增加一個(gè)或多個(gè)屬性。另外,如上所述,可以定義輔助域,用于傳達(dá)錯(cuò)誤細(xì)節(jié)。照此,可以定義屬性,用于規(guī)定該錯(cuò)誤細(xì)節(jié)(例如,陣列)的域尺寸,并且,可以提供域,該域可能是(例如)用于傳達(dá)該錯(cuò)誤細(xì)節(jié)的未組織的陣列。如上所述,電子郵件客戶部件501可以按需要來(lái)處理這些錯(cuò)誤細(xì)節(jié)。該FXErrorInfo允許第一個(gè)響應(yīng)的同步完成,(例如)從而導(dǎo)致狀態(tài)點(diǎn)或其他信息被提供給電子郵件客戶部件501。由于現(xiàn)在通過(guò)消息M4使該電子郵件客戶部件同步,因此,關(guān)于同步的下一個(gè)請(qǐng)求1406可能會(huì)導(dǎo)致具有M4之后的各個(gè)消息(例如,M5和M6)的響應(yīng)1407。為了指出電子郵件客戶部件501是最新近的版本并且因而能夠處理FXErrorInfo消息,可以定義標(biāo)記(例如,F(xiàn)XRecoverMode),該標(biāo)記可利用請(qǐng)求同步或拷貝的ROP來(lái)加以傳輸??梢詾殡娮余]件客戶部件501使用其他的指示,以便向電子郵件服務(wù)器部件502傳達(dá)它能夠處理該FXErrorInfo消息。當(dāng)電子郵件服務(wù)器部件502將一個(gè)或多個(gè)消息或其他數(shù)據(jù)對(duì)象發(fā)送到電子郵件客戶部件501時(shí),到該電子郵件客戶部件的數(shù)據(jù)流可以被屬性標(biāo)簽(例如,ptags)分開或定義。例如,消息清單可以包括關(guān)于每個(gè)消息的開始消息ptag和結(jié)束消息ptag。開始ptag與結(jié)束ptag之間可能是屬性清單ptag和主題ptag,它們可能具有字符串的屬性。該主題ptag的后面可能是該主題本身??梢园ㄆ渌膶傩詷?biāo)簽。在傳輸消息的過(guò)程中發(fā)生錯(cuò)誤的情況下,F(xiàn)XErrorInfo可以作為ptag而被提供,并可以具有二進(jìn)制屬性(例如,以上表格所定義的)。以下的數(shù)據(jù)流的一個(gè)例子具有成功的消息和其中發(fā)生錯(cuò)誤的消息。在發(fā)生該錯(cuò)誤的情況下,沒有為那個(gè)特定的消息使用結(jié)束消息ptag,并且,ptagFXErrorInfo是那個(gè)消息的最后的ptag。<prelisting-type="program-listing">  ptagMessageListStartptagMessageStartptagPropListptagSubject[PT_STRING]″ReYouremail″……ptagMessageEndptagMessageStart …… ptagFXErrorInfo[PT_BINARY] [Contentsasdescribedbytable] ptagMessageStart  ……  ptagMessageEnd  ptagMessageListEnd</pre>圖15A表現(xiàn)了一些步驟,電子郵件服務(wù)器部件502可以利用這些步驟將消息傳送到先前版本電子郵件客戶部件501。從步驟1501開始,例如,通過(guò)將消息集放置在快速傳送數(shù)據(jù)暫存器中,來(lái)準(zhǔn)備該消息集。在步驟1502中,例如,在被放入電子郵件服務(wù)器部件502的發(fā)送緩沖器之后,該消息立即開始流出。如果當(dāng)流出該消息時(shí)發(fā)生錯(cuò)誤,那么,在步驟1504中,使致命的ROP錯(cuò)誤流出到電子郵件客戶部件501。然后,該子過(guò)程結(jié)束。如果當(dāng)流出該消息時(shí)沒有發(fā)生錯(cuò)誤,那么,在步驟1503中,確定該消息集中是否有更多消息。如果有,則該過(guò)程返回到步驟1502,在那里,使下一個(gè)消息流出。如果沒有,那么,該子過(guò)程結(jié)束。圖15B表現(xiàn)了關(guān)于電子郵件服務(wù)器部件502的最新近的版本處理消息集的程序。根據(jù)該電子郵件客戶部件是最新近的版本還是先前的版本,所采用的步驟有所不同。步驟1501-1504是在先前版本電子郵件客戶部件的情況下采用的步驟,并且,這些步驟等同于在前一段中具有相同的參考數(shù)字的步驟。如果在步驟1502中,在流出消息的過(guò)程中發(fā)現(xiàn)錯(cuò)誤,那么,在步驟1505中確定該請(qǐng)求是否包括標(biāo)記(例如,F(xiàn)XRecoverMode)。如果該請(qǐng)求包含該標(biāo)記,那么,電子郵件客戶部件501是最新近的版本,并且,步驟1505分支到步驟1506,在那里,使FXErrorInfo流出到電子郵件客戶部件501。然后,該過(guò)程可以繼續(xù)進(jìn)行到步驟1503。如果該請(qǐng)求不包括該標(biāo)記,那么,步驟1505分支到步驟1504,在那里,使致命的ROP錯(cuò)誤流出。然后,該子過(guò)程結(jié)束??梢姡绻撜?qǐng)求中存在該標(biāo)記,則可通過(guò)流出FXErrorInfo(而不是舍棄并發(fā)送致命的ROP錯(cuò)誤),來(lái)允許流動(dòng)過(guò)程繼續(xù)。該標(biāo)記由電子郵件客戶部件501的最新近的版本來(lái)發(fā)送。先前版本的電子郵件客戶部件不包括該標(biāo)記,這樣,如上所述,錯(cuò)誤會(huì)導(dǎo)致流出致命的ROP錯(cuò)誤。如果需要的話,在選擇性實(shí)施例中,可以為消息或其他數(shù)據(jù)對(duì)象的特定屬性(而不是為整個(gè)消息)發(fā)出錯(cuò)誤消息(例如,F(xiàn)XErrorInfo)。例如,可以為消息的主體,或?yàn)橄⒌母郊l(fā)出FXErrorInfo。然后,電子郵件客戶部件501可以對(duì)被無(wú)差錯(cuò)地成功發(fā)送的屬性進(jìn)行同步或拷貝,只有具有錯(cuò)誤的屬性沒有被同步化或被拷貝。有時(shí),消息或其他數(shù)據(jù)對(duì)象的尺寸可能足以使它跨越多個(gè)FXGetBuffer響應(yīng)。為了處理這類消息,電子郵件客戶部件501可以包括反轉(zhuǎn)邏輯,以便它可以處理任何被局部接收的消息,然后在接收錯(cuò)誤消息之后繼續(xù)適當(dāng)?shù)亟邮樟硗獾南?。有時(shí),可能需要為電子郵件客戶部件提供有關(guān)數(shù)據(jù)對(duì)象(例如,電子郵件消息)的拷貝或同步的進(jìn)展的反饋。根據(jù)本發(fā)明的一個(gè)方面,電子郵件客戶部件501的最新近的版本可以指出例如,通過(guò)在請(qǐng)求數(shù)據(jù)對(duì)象的同步或拷貝時(shí)將標(biāo)記(例如,PROGRESSMODE)發(fā)送到電子郵件服務(wù)器部件502,它能夠處理進(jìn)展模式。作為響應(yīng),電子郵件服務(wù)器部件502的最新近的版本可以發(fā)送各種信息以及消息(例如,所有這些消息的總尺寸、消息的總數(shù)和每個(gè)消息的總尺寸、或這些內(nèi)容中的任何一個(gè)內(nèi)容或這些內(nèi)容的組合)。例如,如圖16A所示,關(guān)于先前版本電子郵件客戶部件501,響應(yīng)于關(guān)于一組消息的快速傳送請(qǐng)求(1601和1603),電子郵件客戶部件501接收這些消息。在圖16A中,在兩個(gè)響應(yīng)1604和1606中接收消息。在使用快速傳送機(jī)制的先前版本電子郵件客戶部件501中,沒有提供過(guò)正在流到該客戶的消息的進(jìn)展指示。但是,如圖16B所示,在對(duì)由該電子郵件客戶部件提出的關(guān)于消息集的請(qǐng)求的響應(yīng)1607中,電子郵件服務(wù)器部件502可以提供將要被傳送的數(shù)據(jù)對(duì)象的總數(shù)以及將要被傳送的所有數(shù)據(jù)對(duì)象的總尺寸。該信息由圖16B中的“Pall”代表。電子郵件服務(wù)器部件502的最新近的版本也可以提供由圖16B中的“P1、P2、P3、...”表示的每個(gè)消息的尺寸。此外,如果需要的話,與每個(gè)消息以及整組消息有關(guān)聯(lián)的信息可以包括有關(guān)每個(gè)消息是FAI還是實(shí)際的電子郵件消息的額外信息。在一個(gè)實(shí)施例中,即使傳送零數(shù)據(jù)對(duì)象,也總是響應(yīng)于快速傳送請(qǐng)求來(lái)發(fā)送由圖16B中的“Pall”代表的信息,以便簡(jiǎn)化該數(shù)據(jù)流的處理。以下的表格中表現(xiàn)了關(guān)于正在被傳送的所有數(shù)據(jù)對(duì)象的尺寸和數(shù)量的格式的一個(gè)例子??梢?,可以為FAI數(shù)據(jù)對(duì)象的數(shù)量、所有FAI數(shù)據(jù)對(duì)象的總尺寸、將要被傳送的電子郵件消息的數(shù)量以及將要被傳送的所有電子郵件消息的總尺寸定義分開的屬性。可以按需要將其他組合和額外的屬性加入該格式。以下的表格表現(xiàn)了尺寸和可以被提供每個(gè)消息的其他信息的格式??梢姡摳袷桨ㄏ乱粋€(gè)消息的尺寸以及下一個(gè)消息是否是FAI。圖17A和17B表現(xiàn)了用于分別根據(jù)這些電子郵件部件的先前版本和這些電子郵件部件的最新近的版本來(lái)流出消息集的步驟。圖17A中的步驟類似于圖15A中的步驟1501-1503。關(guān)于圖17B,例如利用ROP,最新近的電子郵件客戶部件501已發(fā)送PROGRESS_MODE標(biāo)記。在步驟1701中準(zhǔn)備該消息集之后,確定該標(biāo)記是否存在。如果存在,那么,在步驟1702中發(fā)送進(jìn)展數(shù)據(jù)總數(shù),然后,該過(guò)程進(jìn)行到步驟1502,在那里,使第一個(gè)消息流出。如果該標(biāo)記不存在,那么,步驟1701直接分支到步驟1502。在使第一個(gè)消息流出之后,該過(guò)程進(jìn)行到步驟1703,在那里,確定是否具備該標(biāo)記。如果具備,那么,步驟1703分支到步驟1704,在那里,流出每一消息進(jìn)展數(shù)據(jù)。然后,如前所述,該過(guò)程進(jìn)行到步驟1503。如果不具備該標(biāo)記,則步驟1703直接分支到步驟1503。以下陳述了關(guān)于最新近的服務(wù)器部件將數(shù)據(jù)發(fā)送到最新近的客戶部件的數(shù)據(jù)流動(dòng)的一個(gè)例子。該數(shù)據(jù)流動(dòng)類似于以上所描述的數(shù)據(jù)流動(dòng),但另外包括進(jìn)展總數(shù)數(shù)據(jù)的ptags(ptagIncrSyncProgressMode),它們可能具有(例如)二進(jìn)制屬性。此外,關(guān)于每個(gè)消息,提供每一消息進(jìn)展數(shù)據(jù),例如作為<prelisting-type="program-listing">  ptagIncrSyncPreogressModePerMsg。  PtagIncrSyncProgressMode[PT_BINARY]  [Contentsasdescribedbytable]  ptagMessageListStart  PtagIncrSyncProgressModePerMsg[PT_BINARY]  [Contentsasdescribedbytable]  ptagMessageStart  ptagPropList  ptagSubject[PT_STRING]  ″ReYouremail″  ……  ptagMessageEnd  ptagIncrSyncProgressModePerMsg[PT_BINARY]  [Contentsasdescribedbytable]  ptagMessageStart  ……  ptagMessageEnd  ptagMessageListEnd</pre>在所示的例子中,包括進(jìn)展總數(shù)數(shù)據(jù)的ptags(ptagIncrSyncProgressMode)和消息進(jìn)展數(shù)據(jù)的ptags(ptagIncrSyncProgressModePerMsg)分別位于消息清單之前和每個(gè)消息之前。但是,可以修改這些數(shù)據(jù)對(duì)象的流動(dòng)結(jié)構(gòu),以便進(jìn)展數(shù)據(jù)可以被包括在這些消息或該消息清單內(nèi)??梢赃M(jìn)一步修改這些數(shù)據(jù)對(duì)象的流動(dòng)結(jié)構(gòu),以便完全消除為消息和/或消息清單定界的ptags。接收進(jìn)展數(shù)據(jù)的電子郵件客戶部件可以利用該數(shù)據(jù)來(lái)確定來(lái)自電子郵件服務(wù)器部件的數(shù)據(jù)對(duì)象的同步或拷貝的進(jìn)展,并且可以利用每一消息進(jìn)展數(shù)據(jù)來(lái)確定每個(gè)單獨(dú)的消息的進(jìn)展。例如,在監(jiān)控有關(guān)同步的進(jìn)展的實(shí)時(shí)信息的過(guò)程中,該信息可能會(huì)有幫助。有幾個(gè)不同的字符集可以被用于存儲(chǔ)電子郵件消息或其他數(shù)據(jù)對(duì)象。例如,ASCII最常被用于存儲(chǔ)英語(yǔ)字符。但是,ASCII不足以用于存儲(chǔ)所有語(yǔ)言的字符,因?yàn)樗⒃?位字符的基礎(chǔ)之上。這樣,ASCII代碼只可以被用于256個(gè)字符,這對(duì)于英語(yǔ)而言足夠了,但對(duì)于具有更多字符的語(yǔ)言而言就不夠了。另一方面,統(tǒng)一字符編碼是為每個(gè)字符使用16個(gè)位(兩個(gè)字節(jié))的字符集,所以,它能夠包括比ASCII更多的字符。統(tǒng)一字符編碼可以具有65,536個(gè)字符,所以,它可以被用來(lái)為世界上幾乎所有的語(yǔ)言編碼。統(tǒng)一字符編碼包括其內(nèi)的ASCII字符集。一般而言,先前版本的電子郵件客戶部件501具有指定的代碼頁(yè)或與其有關(guān)聯(lián)的字符集和/或語(yǔ)言。例如,電子郵件客戶部件501的特殊版本可能具有德語(yǔ)代碼頁(yè),另一個(gè)版本可能具有ANSI代碼頁(yè)。有時(shí),電子郵件客戶部件501可能需要接收除指定的代碼頁(yè)以外的字符集中的電子郵件。根據(jù)本發(fā)明的一個(gè)方面,最新近的客戶部件可能會(huì)迫使電子郵件服務(wù)器部件提供采用統(tǒng)一字符編碼的所有電子郵件。一旦電子郵件客戶部件501接收這些電子郵件,就可以將統(tǒng)一字符編碼電子郵件轉(zhuǎn)換成該客戶的代碼頁(yè),或者,作為選擇,可以用統(tǒng)一字符編碼格式來(lái)保持統(tǒng)一字符編碼電子郵件。為了指出電子郵件客戶部件501要求用統(tǒng)一字符編碼來(lái)提供電子郵件,例如,電子郵件客戶部件501可以將標(biāo)記(例如,F(xiàn)ORCEUNICODE)提供給電子郵件服務(wù)器部件502??梢詾樵摌?biāo)記提供請(qǐng)求(例如,ROP)。如果電子郵件服務(wù)器部件502是最新近的版本,則電子郵件服務(wù)器部件502可以提供電子郵件的統(tǒng)一字符編碼版本(如果有的話),或者可以將其他字符集中的電子郵件消息轉(zhuǎn)換成統(tǒng)一字符編碼。圖20表現(xiàn)了用于根據(jù)本發(fā)明的一個(gè)方面為消息提供特殊字符集的步驟。從步驟2001開始,電子郵件服務(wù)器部件502從其數(shù)據(jù)暫存器中檢索消息。在步驟2002中,確定FORCEUNICODE標(biāo)記是否存在。如果不存在,那么,步驟2002分支到步驟2003,在那里,電子郵件服務(wù)器部件502提供電子郵件客戶部件的指定代碼頁(yè)中的電子郵件消息,如果必要的話,可進(jìn)行轉(zhuǎn)換。如果FORCEUNICODE標(biāo)記存在,那么,步驟2002分支到步驟2004,在那里,確定該消息是否作為統(tǒng)一字符編碼被存儲(chǔ)。如果是,則步驟2004分支到步驟2005,在那里,將該消息提供給統(tǒng)一字符編碼字符集中的電子郵件客戶部件501。如果該消息沒有用統(tǒng)一字符編碼被加以存儲(chǔ),那么,步驟2004分支到步驟2006,在那里,該消息被轉(zhuǎn)換成統(tǒng)一字符編碼;然后,該過(guò)程繼續(xù)進(jìn)行到步驟2005,在那里,用統(tǒng)一字符編碼將該消息提供給電子郵件客戶部件。包括這里所引用的出版物、專利申請(qǐng)和專利的所有參考資料被包括于此,用作參考,如同單獨(dú)、明確地指出將每個(gè)參考資料包括于此,用作參考,并且在這里加以整體陳述。除非這里另有指示或上下文有明顯的抵觸,描述本發(fā)明的上下文中(尤其在以下權(quán)利要求書的上下文中)的術(shù)語(yǔ)“一個(gè)”(a)、“一個(gè)”(an)和“這”(the)以及類似的所指對(duì)象的使用將被解釋為包括單數(shù)和復(fù)數(shù)。除非另有特別指示,術(shù)語(yǔ)“包括”(comprising)、“具有”(having)、“包括”(including)和“包含”(containing)將被解釋為開放式術(shù)語(yǔ)(即,意味著“包括,但不局限于”)。除非這里另有指示,這里的值的范圍的列舉僅僅意在用作單獨(dú)提及在該范圍以內(nèi)的每個(gè)個(gè)別的值的速記方法;并且,每個(gè)個(gè)別的值被并入該說(shuō)明書,好象它在這里被單獨(dú)列舉。除非這里另有指示或上下文有明顯的抵觸,可以按任何合適的順序來(lái)執(zhí)行這里所描述的所有方法。除非另有聲明,這里所提供的任何和所有的例子或示范語(yǔ)言(比如,“例如”)的使用僅僅意在更好地闡明本發(fā)明,而不會(huì)限制本發(fā)明的范圍。不應(yīng)該將該說(shuō)明書中的語(yǔ)言解釋成將任何未聲明的元件說(shuō)成是實(shí)踐本發(fā)明所必不可少的。這里描述了本發(fā)明的較佳實(shí)施例,包括這些發(fā)明者已知的、用于執(zhí)行本發(fā)明的最佳模式。通過(guò)閱讀前文,掌握該
技術(shù)領(lǐng)域
的普通技能的人會(huì)明白那些較佳實(shí)施例的變更。這些發(fā)明者期望技術(shù)嫻熟的技工適當(dāng)?shù)厥褂眠@類變更,并且,這些發(fā)明者打算用不同于這里特別描述的方式來(lái)實(shí)踐本發(fā)明。相應(yīng)地,適用法規(guī)允許本發(fā)明包括被附加于此的權(quán)利要求書中所敘述的主題內(nèi)容的所有修改和相等物。而且,除非這里另有指示或上下文有明顯的抵觸,本發(fā)明包括其所有可能的變更中的上述元件的任何組合。權(quán)利要求1.一種具有計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì),其特征在于這些指令包括在電子郵件服務(wù)器部件處接收關(guān)于消息的請(qǐng)求,該請(qǐng)求包括一個(gè)指示需要該郵件的最佳消息主體;訪問(wèn)與該電子郵件服務(wù)器部件有關(guān)聯(lián)的數(shù)據(jù)暫存器,并確定不依賴轉(zhuǎn)換可用消息主體的格式的消息的最佳消息主體;以及,檢索并返回該最佳消息主體,而無(wú)須轉(zhuǎn)換該最佳消息主體的格式。2.如權(quán)利要求1的計(jì)算機(jī)可讀介質(zhì),其特征在于,該請(qǐng)求包括關(guān)于該消息位于其中的文件夾的同步的請(qǐng)求。3.如權(quán)利要求1的計(jì)算機(jī)可讀介質(zhì),其特征在于,該請(qǐng)求包括關(guān)于電子郵件消息的復(fù)制件的請(qǐng)求。4.如權(quán)利要求1的計(jì)算機(jī)可讀介質(zhì),其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。5.如權(quán)利要求1的計(jì)算機(jī)可讀介質(zhì),其特征在于,確定包括根據(jù)等級(jí)評(píng)定系統(tǒng)來(lái)評(píng)估可用的消息主體。6.一種計(jì)算機(jī)執(zhí)行方法,其特征在于,包括在電子郵件客戶部件處,生成關(guān)于消息的請(qǐng)求,該請(qǐng)求包括一個(gè)指示需要該郵件的最佳消息主體;以及,在電子郵件服務(wù)器部件處響應(yīng)于該請(qǐng)求,訪問(wèn)與該電子郵件服務(wù)器部件有關(guān)聯(lián)的數(shù)據(jù)暫存器,并確定不依賴轉(zhuǎn)換可用消息主體的格式的消息的最佳消息主體,并且,檢索該最佳消息主體,并將其返回到該電子郵件客戶部件,而無(wú)須轉(zhuǎn)換該最佳消息主體的格式。7.如權(quán)利要求6的方法,其特征在于,該請(qǐng)求包括關(guān)于該消息位于其中的文件夾的同步的請(qǐng)求。8.如權(quán)利要求6的方法,其特征在于,該請(qǐng)求包括關(guān)于電子郵件消息的復(fù)制件的請(qǐng)求。9.如權(quán)利要求6的方法,其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。10.如權(quán)利要求6的方法,其特征在于,確定包括根據(jù)等級(jí)評(píng)定系統(tǒng)來(lái)評(píng)估可用的消息主體。11.一種被具體表現(xiàn)在計(jì)算機(jī)可讀介質(zhì)上的數(shù)據(jù)分組,其特征在于,包括包括關(guān)于電子郵件消息的請(qǐng)求的第一數(shù)據(jù)區(qū);以及,包括一個(gè)指示的第二數(shù)據(jù)區(qū),該指示指出需要該電子郵件消息的最佳消息主體。12.如權(quán)利要求6的數(shù)據(jù)分組,其特征在于,該請(qǐng)求包括關(guān)于該電子郵件消息位于其中的文件夾的同步的請(qǐng)求。13.如權(quán)利要求6的數(shù)據(jù)分組,其特征在于,該請(qǐng)求包括關(guān)于電子郵件消息的復(fù)制件的請(qǐng)求。14.如權(quán)利要求6的數(shù)據(jù)分組,其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。15.一種被具體表現(xiàn)在計(jì)算機(jī)可讀介質(zhì)上的數(shù)據(jù)分組,其特征在于,包括包括關(guān)于多個(gè)電子郵件數(shù)據(jù)對(duì)象的請(qǐng)求的第一數(shù)據(jù)區(qū);以及,包括一個(gè)指示的第二數(shù)據(jù)區(qū),該指示指出需要這些電子郵件數(shù)據(jù)對(duì)象的至少一個(gè)屬性,并且,如果這至少一個(gè)屬性沒有被明確定義,則將會(huì)返回電子郵件數(shù)據(jù)對(duì)象。16.如權(quán)利要求15的數(shù)據(jù)分組,其特征在于,該請(qǐng)求包括關(guān)于這些數(shù)據(jù)對(duì)象位于其中的文件夾的同步的請(qǐng)求。17.如權(quán)利要求15的數(shù)據(jù)分組,其特征在于,該請(qǐng)求包括關(guān)于數(shù)據(jù)對(duì)象的復(fù)制件的請(qǐng)求。18.如權(quán)利要求15的數(shù)據(jù)分組,其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。19.如權(quán)利要求15的數(shù)據(jù)分組,其特征在于,這至少一個(gè)屬性包括消息的頭部。20.如權(quán)利要求15的數(shù)據(jù)分組,其特征在于,這些數(shù)據(jù)對(duì)象包括電子郵件消息。21.一種計(jì)算機(jī)執(zhí)行方法,其特征在于,包括在電子郵件客戶部件處,生成關(guān)于文件夾中的電子郵件數(shù)據(jù)對(duì)象的請(qǐng)求,該請(qǐng)求包括一個(gè)指示需要這些電子郵件數(shù)據(jù)對(duì)象的至少一個(gè)屬性;以及,在電子郵件服務(wù)器部件處接收該請(qǐng)求,以及,訪問(wèn)該文件夾和該文件夾中的電子郵件數(shù)據(jù)對(duì)象,并且,關(guān)于該文件夾中的每個(gè)電子郵件數(shù)據(jù)對(duì)象如果在該電子郵件數(shù)據(jù)對(duì)象中明確定義這至少一個(gè)屬性,則檢索那個(gè)數(shù)據(jù)對(duì)象的這至少一個(gè)屬性,并將其返回到該電子郵件客戶部件;以及,如果沒有為該電子郵件數(shù)據(jù)對(duì)象明確定義這至少一個(gè)屬性,則檢索該數(shù)據(jù)對(duì)象,并將其返回到該電子郵件客戶部件。22.如權(quán)利要求21的方法,其特征在于,該請(qǐng)求包括關(guān)于這些電子郵件數(shù)據(jù)對(duì)象位于其中的文件夾的同步的請(qǐng)求。23.如權(quán)利要求21的方法,其特征在于,該請(qǐng)求包括關(guān)于電子郵件消息的復(fù)制件的請(qǐng)求。24.如權(quán)利要求21的方法,其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。25.如權(quán)利要求21的方法,其特征在于,這至少一個(gè)屬性包括消息的頭部。26.一種具有計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì),其特征在于這些指令包括接收關(guān)于文件夾中的數(shù)據(jù)對(duì)象的請(qǐng)求,該請(qǐng)求包括一個(gè)指示需要這些數(shù)據(jù)對(duì)象的至少一個(gè)屬性;響應(yīng)于該請(qǐng)求和指示,訪問(wèn)該文件夾和該文件夾中的數(shù)據(jù)對(duì)象,并且,關(guān)于該文件夾中的每個(gè)數(shù)據(jù)對(duì)象如果在該數(shù)據(jù)對(duì)象中明確定義這至少一個(gè)屬性,則檢索那個(gè)數(shù)據(jù)對(duì)象的這至少一個(gè)屬性,并將其返回到該電子郵件客戶部件;以及,如果沒有為該數(shù)據(jù)對(duì)象明確定義這至少一個(gè)屬性,則檢索該數(shù)據(jù)對(duì)象,并將其返回到該電子郵件客戶部件。27.如權(quán)利要求26的計(jì)算機(jī)可讀介質(zhì),其特征在于,該請(qǐng)求包括關(guān)于這些數(shù)據(jù)對(duì)象位于其中的文件夾的同步的請(qǐng)求。28.如權(quán)利要求26的計(jì)算機(jī)可讀介質(zhì),其特征在于,該請(qǐng)求包括關(guān)于電子郵件消息的復(fù)制件的請(qǐng)求。29.如權(quán)利要求26的計(jì)算機(jī)可讀介質(zhì),其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。30.如權(quán)利要求26的計(jì)算機(jī)可讀介質(zhì),其特征在于,這至少一個(gè)屬性包括消息的頭部。31.一種被具體表現(xiàn)在計(jì)算機(jī)可讀介質(zhì)上的數(shù)據(jù)分組,其特征在于,包括識(shí)別電子郵件客戶部件的第一數(shù)據(jù)區(qū);包括關(guān)于至少一個(gè)電子郵件消息的請(qǐng)求的第二數(shù)據(jù)區(qū);以及,包括一個(gè)指示的第三數(shù)據(jù)區(qū),該指示指出該電子郵件客戶部件希望電子郵件消息采用統(tǒng)一字符編碼格式。32.如權(quán)利要求31的數(shù)據(jù)分組,其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。33.如權(quán)利要求31的數(shù)據(jù)分組,其特征在于,該請(qǐng)求包括關(guān)于這些電子郵件數(shù)據(jù)對(duì)象位于其中的文件夾的同步的請(qǐng)求。34.如權(quán)利要求31的數(shù)據(jù)分組,其特征在于,該請(qǐng)求包括關(guān)于電子郵件消息的復(fù)制件的請(qǐng)求。35.一種具有計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì),其特征在于,這些指令包括從電子郵件客戶部件接收關(guān)于至少一個(gè)電子郵件消息的請(qǐng)求以及一個(gè)指示,該指示指出該電子郵件客戶部件希望電子郵件消息采用統(tǒng)一字符編碼格式;響應(yīng)于該請(qǐng)求和指示,檢索這至少一個(gè)消息;并且,關(guān)于每個(gè)電子郵件消息如果該電子郵件消息可采用統(tǒng)一字符編碼格式,則將該統(tǒng)一字符編碼格式提供給該電子郵件客戶部件;以及,如果該電子郵件消息沒有采用統(tǒng)一字符編碼格式,則將該電子郵件消息轉(zhuǎn)換成統(tǒng)一字符編碼格式,并將該統(tǒng)一字符編碼格式提供給該電子郵件客戶部件。36.如權(quán)利要求35的計(jì)算機(jī)可讀介質(zhì),其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。37.如權(quán)利要求35的計(jì)算機(jī)可讀介質(zhì),其特征在于,該請(qǐng)求包括關(guān)于這些電子郵件數(shù)據(jù)對(duì)象位于其中的文件夾的同步的請(qǐng)求。38.如權(quán)利要求35的計(jì)算機(jī)可讀介質(zhì),其特征在于,該請(qǐng)求包括關(guān)于電子郵件消息的復(fù)制件的請(qǐng)求。39.一種計(jì)算機(jī)執(zhí)行方法,其特征在于,包括從電子郵件客戶部件發(fā)送關(guān)于至少一個(gè)電子郵件消息的請(qǐng)求以及一個(gè)指示,該指示指出該電子郵件客戶部件希望電子郵件消息采用統(tǒng)一字符編碼格式;在電子郵件服務(wù)器部件處,響應(yīng)于該請(qǐng)求和指示的接收,檢索這至少一個(gè)消息;并且,關(guān)于每個(gè)電子郵件消息如果該電子郵件消息可采用統(tǒng)一字符編碼格式,則將該統(tǒng)一字符編碼格式提供給該電子郵件客戶部件;以及,如果該電子郵件消息沒有采用統(tǒng)一字符編碼格式,則將該電子郵件消息轉(zhuǎn)換成統(tǒng)一字符編碼格式,并將該統(tǒng)一字符編碼格式提供給該電子郵件客戶部件。40.如權(quán)利要求39的方法,其特征在于,該指示包括與該請(qǐng)求一起被包括的標(biāo)記。41.如權(quán)利要求39的方法,其特征在于,該請(qǐng)求包括關(guān)于這些電子郵件數(shù)據(jù)對(duì)象位于其中的文件夾的同步的請(qǐng)求。42.如權(quán)利要求39的方法,其特征在于,該請(qǐng)求包括關(guān)于電子郵件消息的復(fù)制件的請(qǐng)求。全文摘要一種關(guān)于改進(jìn)的客戶與服務(wù)器通信的系統(tǒng)和方法,更具體地說(shuō),一種可以被用于客戶與服務(wù)器之間的通信的改進(jìn)的協(xié)議(例如,在電子郵件環(huán)境中)。為改進(jìn)的通信提供了許多特點(diǎn)。電子郵件服務(wù)器可以提供電子郵件消息所具備的最佳消息主體;如果在整個(gè)數(shù)據(jù)對(duì)象內(nèi)沒有明確定義所請(qǐng)求的一個(gè)或多個(gè)屬性,則可以傳送該數(shù)據(jù)對(duì)象;可以提供在跟蹤下載進(jìn)展的過(guò)程中所使用的進(jìn)展數(shù)據(jù);并且,可以為有錯(cuò)誤的數(shù)據(jù)對(duì)象發(fā)送錯(cuò)誤信息??梢栽陔娮余]件服務(wù)器部件處優(yōu)化電子郵件變化,即使在另一個(gè)電子郵件服務(wù)器部件處發(fā)生過(guò)這些電子郵件變化,也是如此。電子郵件服務(wù)器可以保存關(guān)聯(lián)的數(shù)據(jù)暫存器處的文件夾所發(fā)生的變化的表格,并可以向預(yù)訂的電子郵件客戶部件通知該表格中所發(fā)生的變化。文檔編號(hào)H04L29/06GK1522014SQ20031012451公開日2004年8月18日申請(qǐng)日期2003年12月30日優(yōu)先權(quán)日2003年1月3日發(fā)明者J·R·沃倫,K·弗羅里奇,R·A·利馬錢德,N·A·伯尼拉,R·R·諾維特斯基,R·E·格雷,A·哈特維爾,B·鮑爾,B·柯蒂斯,JR沃倫,伯尼拉,偎,利馬錢德,匚,格雷,蘩鍥,諾維特斯基申請(qǐng)人:微軟公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1