TWI377819B - System and method for history driven optimization of web services communication - Google Patents
System and method for history driven optimization of web services communication Download PDFInfo
- Publication number
- TWI377819B TWI377819B TW095144878A TW95144878A TWI377819B TW I377819 B TWI377819 B TW I377819B TW 095144878 A TW095144878 A TW 095144878A TW 95144878 A TW95144878 A TW 95144878A TW I377819 B TWI377819 B TW I377819B
- Authority
- TW
- Taiwan
- Prior art keywords
- message
- string
- transmitted
- cache
- intermediate data
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/142—Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
- Mobile Radio Communication Systems (AREA)
- Preliminary Treatment Of Fibers (AREA)
Description
1377819 九、發明說明: 【發明所屬之技術領域】 本發明大體上係關於網路通信(諸如經由網際網路/全球 資訊網)’且更特定言之係關於一種為提供且消耗以網路 為基礎之服務(ws)的實體減小通信頻寬及冗餘工作之系統 及方法。 ^ — 【先前技術】 網路服務(WS)為一種程式設計模型,其包含經開發以將 程式存取提供至遠端機器上之應用邏輯的一組標準。此應 用邏輯可由每一平臺上之用戶端以每一程式設計語言存 取。核心網路服務之構建組塊之一者為8〇入1)(簡單物^存 取協定)’其係一允許(但不限於)RPC(遠端程序呼叫)訊息 作為XML文件傳輸且調用網路服務之能力的標準框架。^ 知WS不僅廣泛用於(網路之)網際網路上且亦用於企業網路 上,甚至位於相同位點甚至相同房間中之機器之間。雖然 WS最初設計為用於網路上之存取,但ws在内部網路(亦即 企業網路)中亦受歡迎。 圖1A描述一典型WS架構1〇,包括其邏輯組件。如圖1A 中所示,網路服務提供者18負責部署網路服務負責,且用 網路服務代理器15來公佈網路服務,該網路服務代理器Η 負責服務登陸及網路服務之發現。特定言之,代理器列出 各種服務類型、描述及服務位置,其幫助服務請求者找到 並訂閱所請求之服務。網路服務請求者12藉由用服務代理 器15定位網路服務來負責服務調用、調用所請求之服務, 116263.doc 1377819 並自服務提供者運行該服務。更特定言之,如書 「Developing Java™ Web Services j (Ramesh Nagappan 等 人,Wiley Publishing, Inc. 2003)中所描述,網路服務提供 者1 8包括一服務容器28,其充當網路服務運行時間環境且 承載服務提供transport者。服務容器28尤其定義意欲用於 用戶端通信之環境且便利網路服務部署及管理,其中該用 戶端通信實施標準化方式以使用稱為網路服務定義語言 (WSDL)之用於描述網路服務之基於標準XML schema的規 範來描述網路服務。另外,其在服務暫存器30a、3Ob處進 行服務描述之登陸。此等暫存器包括實施通用描述、發現 及整合(UDDI)標準之暫存器30a(www.UDDI.org)或ebXML 暫存器30b(www.ebXML.org),後者定義登陸服務、交互協 定及訊息定義,且進一步充當共用資訊之儲存器。網路服 務請求者12包括服務傳遞組件22,其藉由為找到所需服務 而查找服務登陸且使用SOAP訊息傳遞25自服務提供者調 用所需服務,來充當用戶端運行時間環境。如所知, SOAP協定包括以下元素··一 SOAP包封,其充當用於 SOAP訊息之其他元素的容器;一SOAP輸送繫結,其用於 基礎傳送協定;一組SOAP編碼規則,其用於表示訊息中 之資料(特殊應用資料類型至XML訊息之映射實例);及一 應用交互模式(最常見為RPC慣例),其定義RPC請求及回 應之表示且被定義為一種串聯化作為SOAP訊息之遠端程 序呼叫及回應的方式。 圖1B描述在習知SOAP RPC實施例中之例示性用戶端-伺 116263.doc 1377819 服态父互作用。如圖1B中所示’用戶 SOAP/HTTP協定(亦gp 、12使用 協疋(亦即,採用一HTTP輸送繫結之s〇Ap訊 :協^由諸如網際網路之網㈣與服務提供者(或簡而 服務J)18交互作用。S⑽訊息傳遞協定使得能服 務提供者端㈣與服務請求者端點12之間以請求·回應對 父換訊息25。此為s〇Ap用於Ηττρ(網際網路)訊息輸送 及/或RPC慣例之方法。雖然s〇Ap定義應如何經由町叮來
父換訊息’但應理解,可用任何通信協定(例如SMTP、 MQ系列、原始套接字等)或方法替換HTTP。在此習知實 施例中’用戶端12藉由為每—呼叫發送_訊息而在服務提 供者18上進行遠端程序呼叫(Rpc)。卩類似方式,服務提 供者1 8藉由為每-回應發回-訊息至用戶端12來回應此等 呼叫。網路服務中之主要技術為在發送_SQApm息之前 組成其訊息及在接收S0AP訊息之後解密其的個別過程。 用於SOAP §扎息之此等過程通常藉由在記憶體中建立
DOM(文件物件模型)或類似樹形物件來執行。以此方式, 可使用SOAP訊息之樹形表示來執行過程而不考慮訊息之 文本表示。 由於XML之ASCII性質,網路服務之實施涉及顯著頻寬 需求及通#冗餘工作。另外,WS為自描述,因此用戶端 及伺服器僅需要辨識請求及回應訊息之格式及内容。ws 訊息格式之定義與訊息一起行進;不需要外部元資料儲存 庫或程式碼產生工具。因此’當分析任何S〇AP訊息之内 容時’冗餘工作都較明顯。使用SOAP及XML不僅轉化為 116263.doc ^/7819 非常大的訊息(亦即,Tcp/Ip堆疊中之顯著冗餘工作及增 加之頻寬使用)’且亦轉化為歸因於s〇AP之豐富結構的顯 » . 著剖析几餘工作。此外,WS最常用之輸送之HTTP將增加 . 額外通信及剖析冗餘工作。 在傳統桌上型電腦/伺服器平臺上,已藉由使用超高速 乙太網路、更快速CPU及更大記憶體且藉由消除存在於初 。SOAP實施例中之效能瓶頸(諸如Apaehe Axis引擎),來 φ 很大程度上抵消了此等冗餘工作之影響。不幸地,資源受 限行動平臺(諸如行動電話' pDA或膝上型電腦)不能受益 於此等解決方案。由於更快速網路或〇1>1;或更大記憶體將 消耗更多能量且通常不適合於所要外形要素,因此硬體導 向之方法通常不適用於此等能量受限且大小受限之設備。 同樣地,SOAP引擎實施例需要額外最佳化以減小其記憶 體佔據面積。 舉例而言,在典型B2B網路服務部署方案中’網路服務 φ 用戶端可對服務端點進行若干次呼叫,且此等呼叫可具有 不隨調用而改變之若干參數。考慮(例如)若干買方藉由使 用網路服務呼叫將購買訂單發送至#方而與賣方之網㈣ 務端點交互作用。每一購買訂單可具有若干攔位,且許多 此等攔位可描述買方,因此對於特定買方之每一調用而言 將為相同的。此類型之參數重複主要歸因於網路服務之無 狀態性質。保持狀態特定於(服務端點、用戶端)組合可藉 由簡易無狀態gZip式樣壓縮提供較「可行」更佳的網路流 量塵縮比。 ζ S .) 116263.doc 1377819 本技術中已知便利ws服務且尤其便利訊息壓縮之各種 技術。此等技術包括(例如): 1) Hartmut Liefke及Dan Suciu的描述壓縮XML資料之工 具的「XMill: an Efficient Compressor for XML Data」 (ACM SIGMOD 2000),其以大致相同之速度達成gzip壓縮 比的約兩倍。XMill將結構與資料分離、組合相關之資料 項,並應用一組特殊壓縮器。僅在產生WS訊息之後可應 用,此將增加訊息潛伏期。 2) 1999 年 6 月之 WAP 二進位 XML (WBXML) (http: //ww.w3 .org/TR/wbxml/)描述將XML分割為二進位編碼之 預定符記及線内編碼之剩餘物。符記表保持在發送/接收 兩側。最初,僅WAP之符記表可用;稍後定義SyncML及 DRMREL·(數位權利管理權利表示語言)之額外表。主要優 點在於WBXML-aware SAX剖析器具有非常低的冗餘工 作β主要缺點在於由於XML語言之符記表必須存在於兩端 上,因此其僅可用於預定之XML語言。 3) 2000 年 5 月之 Marc Girardot 及 Neel Sundaresan 的 「Millau: an encoding format for efficient representation and exchange of XML over the Web」(http: "www9.org)描 述為壓縮而將結構與文字分離且利用相關綱要。擴展至 WBXML,其壓縮線内文字且理解XML基本類型。Millau 具有與WBXML相同的缺點。 4) Christian Werner 、 Carsten Buschmann 、 Stefan Fischer 的 「Compressing SOAP Messages by using CS .)
116263.doc •IO 1377819
Differential Encoding」(2004 年 7 月 IEEE International
Conference on Web Services)在論文第一部分中描述比較 SOAP(.NET 及 Java)、RMI-IIOP、Corba、RMI 及 gziped SOAP的頻寬需求。第二部分描述差分s〇AP壓縮,其僅發 送一訊息與前一訊息之間的差異。實際上,差異編碼藉由 使用WSDL檔案首先計算一組基幹訊息來工作;下一步, 其計算一訊息與一預測基幹之間的差異,其隨後被傳輸。 在差分編碼中’編碼及解碼冗餘工作可為顯著的。 5) M. Tian ' T. Voigt、T· Naumowicz ' H. Ritter,J_及 Schiller 的「Performance Considerations for Mobile Web Services」(Elsevier Computer Communications Journal, 2004年7月1日,第27卷第11版第1097-1105頁)描述壓縮如 何並非總是有利,尤其當其冗餘工作伺服器時。 6) Kenneth Barr 及 Krste Asanovic 的「Energy Aware Lossless Data Compression」(Mobisys 2003 > 2003年 5 月) 描述用典型壓縮工具壓縮且發送資料如何較發送未壓縮資 料花費更多能量。其展示了可減少壓縮所用能量的壓縮工 具之硬體感知最佳化。此論文展示必須仔細選擇壓縮方 案。
7) Naresh Apte、Keith Deutsch及 Ravi Jain的「Wireless SOAP: Optimizations for Mobile Wireless Web Services」 (poster at wvvw2005.org,2005年5月)提出兩種最佳化技 術.:1)名稱空間等效性(NPE),及2) WSDL感知編碼 (WAE)。NPE允許XML訊息以不同但等效形式恢復。WAE 116263.doc 11 1377819 需要一行動設備閘道器’其建立用於WSDl檔案中所述之 操作的編碼表。NPE看來不提供顯著壓縮而WAE需要閘道 器。 8) Toshiro Takase ' Hisashi Miyashita ' Toyotaro
Suzumura及 Michiaki Tatsubori的「An Adaptive,Fast,and safe XML Parser Based on Byte Sequences Memorization j (www2005.org ,2005年5月)描述一種XM]L剖析器 (Deltarser」),其使用歷史記錄識別先前可見之語法構築 體且再用匹配構築體之結果。Deltarser剖析器減小接收器 即點上之剖析冗餘工作,但其不減小頻寬需求亦不減小在 發送節點上產生訊息之冗餘工作。 將非常期望提供一系統及方法,其提供用於顯著減小所 部署網路服務環境中之s 〇 A p訊息傳遞處理冗餘工作的一 或多個最佳化。 將非吊期望提供-系統及方法,其提供用於顯著減小所 部署網路服務環境中之s 〇 A P訊息傳遞通信冗餘工作的一 或多個最佳化。 將非常期望提供一系統及方&,該系統及方法提供 WS/S0AP訊息傳遞屢縮最佳化機制,該機制提供較已有 WS/S0AP訊9息傳遞塵縮機制具有顯著更低能量及潛伏期 成本且與其相當的壓縮。 【發明内容】 本,明針對一種系統、方法及電腦程式產品,其 於顯者地減小所部署網路服務環境中之s〇Ap訊息傳遞冗 Ϊ 16263.doc 1377819 餘工作的一或若干個最佳化。 •更特定言之’本發明提供一種解決方案,其利用兩端點 -· ’之WS /m昼的重複性質以識別該兩個設備之SOAP及 HTTP引擎中之若干層之間的一系列最佳化。更特定言 .之’兩個設備都將保持在每-方向上接收及發送之最近數 目「N」個WS相關位元組的歷史記錄。該歷史記錄之大小 • $需要在兩方向上相同’但—個方向上之發送及接收端必 須使用完全相同的歷史記錄大小。WS之可靠有序的傳遞 春 將保證該兩端具有對共同歷史記錄之一致觀點。 猎由用先前訊息中之參考替換s〇Ap訊息中之明確定義 的元素可減小通信冗餘工作。發送與接收端皆在其歷史記 錄緩衝器中用其所指示之串替換參考:此使後續訊息中相 同或類似的壓縮能以相同方向發送。 因此,根據本發明之一態樣,提供—種用於傳送訊良之 系統、方法及電腦程式產品。該用於傳送訊息之;:包 含: • 在發送器設備及接收器設備之每一者處各分配一數量之 7第一快取儲存器,該快取器用於在個別發送ϋ及接收器 設備處儲存對應於所傳送及所接收之訊息串的字元串;及 構建-表示待傳送訊息之中間f料結構,該中間資料結 構經調適以儲存於該發送器設備處的第二快取儲存器中; •及 ° ' 基於該所構建之中間資料結構來構建一待傳送之訊息 串’且’對於每一待傳送之後續訊息: 識別-正建構之當前訊息之—所構建中間資料結構中的 116263.doc 13 (S ) 丄J//〇丄y ::構分與存在於-對應於-先前所傳送訊息串 ^ 4資料結構申的類似部分完全相同; 自ί於前所構建之令間資料結構來構建-待傳送之訊 :;1考;:參考指示符替換訊息串中之每-識別部分, 傳:之先曰:指示該第一快取儲存器中之-對應於-與已 剧訊息相關之相同字元串部分的位置;且 在接收器設備處,識別一所接收訊息串中之一參考指示 Υ ,且取代儲存於接 ^曰η 或多個快取之相門-:第一快取儲存器中之-丨、取 < 相同子兀串部分, 藉此節賓了發送及接收設收之5fl息, 源。 ° 處之訊息通信基礎架構資 在本發明之一實施例中,令 結構化榭彤矣- 貧科m構包含一訊息之一 稱化射形表不,同時所識 或樹形片段。 <爭。P刀包含一或多個子樹 在本發明之—實施财,在發送 取器歷史記錄儲存的分配包含:在用=備處之快 快取儲存H數量的設m ^配之第- 外,接收器設備處之第… 初始交握協定。此 於私γ „。 、取儲存器的分配量至少盥分西? 於設備處之第一快取器大小—樣多。…配 在本發明之一實施例中,夂 串部分的屬性,其中該$心 心曰示一串聯化訊息 間資料έ士;^ % 乂 "訊息串部分對應之所構建中 门頁科結構中的所識別子樹 ^τ 先前所傳送訊息串之所構::椹:在於-對應於 片段部分完全相同。 資科、、。構中的類似子樹或 屬性可包含以下之一或多一 ^ ·先前發送訊息之指示、 116263.doc
-14- 1377819 线别1刖傳送訊息之樹形表示的訊息ID、對應於所識 別樹之串長度,及該先前傳送訊息中之偏移長度。 此外’在本發明之-實施例中,在接收器設備處,相同 部分之識別包含:剖析所接收之訊息串及構建一用於儲存 於接收器設備處之第二快取儲存器中的結構化樹形表示。 結構化樹形表示經儲存以備隨後在接收器處用於構建接收 訊息。 有利地,替換之候選物包括一通信協定標頭(例如HTTP 標頭)及WS訊息(例如S0AP包封)之元素。然而,可替換操 作、名稱及甚至參數或結果之更高級最佳化為可用的。 【實施方式】 本發明提供一種系統、方法及電腦程式產品,其提供用 於顯著減小諸如圖ΙΑ、1B中所示之所部署網路服務環境 中之SOAP訊息傳遞冗餘工作的一或多個最佳化。在此說 明書中可能參考以下公開案,其以列印形式可得或在線可 得’且以引用的方式倂入本文中: 1. W3C® Note,「Web Services Description Language (WSDL) 1.1」,2001年 3 月 15 日; 2. W3C® Recommendation, r Extensible Markup Language (XML) 1.0 (Second Edition)」,(2000 年 l〇 月 6 曰) (http://www.w3.org); 3. W3C® Recommendation, SOAP Version 1.2 Part 0, Primer (2003年 6月 24 曰); 4. W3C® Recommendation,SOAP Version 1.2 Part 1· C S ) 116263.doc -15- 1377819
Messaging Framework (Recommendation); 5. W3C® Recommendation, SOAP Version 1.2 Part 2: Adjuncts (Recommendation); 6. W3C® Recommendation, SOAP Version 1.2 Specification Assertions and Test Collection ; 7. W3C® Recommendation, SOAP Message Transmission Optimization Mechanism (2005年 1 月 25 曰);
8. W3C® Recommendation, XML-binary Optimized Packaging ;及 9. W3C® Document Object Model (DOM) (http: "www.w3.org/DOM/) 〇
根據至SOAP訊息傳遞協定之第一可選擴展,在第一請 求訊息中提供一新的HTTP選擇,該HTTP選擇提議一用於 特定方向(例如發送)之歷史記錄大小。若另一(例如接收) 端點貫施擴展’則其將以一用於回應方向之歷史記錄大小 答覆’且可能以一用於相反方向之對更小歷史記錄大小的 請求來答覆。此初始交握遠不像TCP協定之SACK (Selective Acknowledgement,選擇性確認)擴展。此交握 協定中加入了協商歷史記錄大小之能力。藉由提議新的歷 史記錄大小位元組數,來執行任一方向上歷史記錄大小之 後續調整。在答覆訊息中信號傳輪接收或拒絕。 圖2A及圖2B特定描述用以判定WS接收端點(ws用戶 端)12與WS發送端點(WS伺服器)18是否都實施本發明之最 佳化且用以將兩端處之歷史記錄大小設定為相同值的交握 I16263.doc < S ) 1377819 協定40。 如圖2A中所示,第一交握訊息45a中之網路服務用戶端 12提墩歷史記錄大小的一值,其另外向伺服器指示用戶端 實施所提議之最佳化。若網路服務伺服器18實施最佳化且 其具有可用之所需記憶體,則其在交握答覆訊息45b中返 回相同歷史記錄大小或更小值。否則,如圖2B中所示,網 路服務伺服器18忽略所提議之歷史記錄大小。此之實施有 多種方式。舉例而言,基於ws之實施例可使用一具有預 定名稱及簽名之額外操作,該額外操作被添加至實施最佳 化之所有端點。因此,例如,來自用戶端12之第一呼叫將 為此操作之一 WS調用,且若伺服器18不理解請求(亦即, 其不貫施所提議之最佳化(圖2B)),則伺服器18返回一歷史 。己錄大小值(圖2 A)或SOAP錯誤。此實施例具有需要額外 WS調用之缺點。替代實施例在上述協商之導言中使用新 的HTTP標頭攔或XML註釋。由於交握協定4〇背負於第一 應用調用上,因此稍後實施例不需要額外ws調用。交握 協定40可另外用以稍後在交互作用期間修改歷史記錄大小 或結束所提議最佳化之使用。在彼等情形中,若使用該等 稍後實施例之一者,則WS伺服器可起始再協商。 應理解,在交握訊息45a中協商之快取器的歷史記錄大 為乂到管理」的5己憶體,亦即,一快取器僅分配以 用於儲存S0AP訊息串歷史記錄。不根據此交握協定來協 商用於快取(子)樹之記憶體(例如樹形快取器只其内容由保 存於串快取器中之串判定),且此記憶體不必在用戶端(發 I16263.doc 1377819 送器)與接收器之兩端處相同。僅分配以用於健存s〇Ap訊 息串歷史記錄之快取器在兩端處需要具有相同大小。 圖3為描述根據本發明之最佳化之發送器端s〇a·丁 處理的流程圖。 • ----------在王甲,執行根據 本發月之愿,缩#即,構建S0AP訊息的同時識別SOAP訊 息元素之替換。此與典型串磨縮方案形成對比,後者藉由 比較新訊息與可得歷史記錄來起作用。更特定言之,^送 端點處之SOAP引擎之各組份將必需保持仍可用於本端歷 史記錄中之SGAP組份的較短歷史記錄。I縮與s⑽輸出 路徑深度整合,因此充分利用了 s〇Ap協定之語意。據預 期,此特徵可提供較已有方案相當的且具有顯著更低能量 及潛伏期成本的I缩,額外優點為傳送越多,獲悉越多, 亦即,若保持足夠歷史記錄則可塵縮更多。結果^吏用適 應演算法調整歷史記錄大小進一步成為可能,亦即,用戶 端及^器端可再協商每-端將維持之快取器歷史記錄大 1、的數量。然而,應理解兩端維持訊息串快取器之相同數 -後=此决异法月b工作接收器需要维持至少與發送器 一樣少或更大數量的快取器。 的發明之實施例中,在如圖3所示產生_訊息 處,在用户端設傷處實施之方法100包括調用一 發送存根之典型步驟。在步物中 W堆疊基礎架構(存根基於其執 订碼(以)及 改),該步驟102將使交易(例如方法用^據本發明修 居6周用)投送至伺服器上 116263.doc (S ) -18· 1377819 之ws物件,及/或使得能料服器物件交互作 路服務。隨後,在步物中,假定先前已根據一先= :協定協商了一快取器歷史記錄(用於在發送器及接= 處儲存刪(類似)樹形資料結構内容),則判 取
器是否為I未構建歷史記錄時,此快取器在發&取 息之前或當時可為空。若如步驟1〇5所判定之樹形快取: 則下一步驟包括:在步驟1〇8構建階層式文 模型DOM(類似)樹形結構,該步驟⑽致能文件 取及更新;及將所構建之樹形結構儲存於樹形快取器=子 隨後’在下-步驟113,(例如)藉由實施用於將所儲存樹形 育料結構轉換為—字元流之常式來串聯化樹,可在發送器 處將該字^流重組回原始訊息資料結構之—相同複本。= 終’在步驟115中,以HTTP4® ss R/4· j· 面 H1TP私頭附加(包覆)串聯化位元組 流’且將請求發送至伺服器。
再參看圖3,在步驟105中,根據本發明之最佳化修改, 若判定樹形快取器非空,亦即其包括—包含來自第— 及/或先前訊息之先前構建之D 〇 M (類似)樹形資科結構或 子樹或樹月段(例如分技)的歷史記錄,則下一步驟包括在 快取器中自該已有樹形結構構建―膨㈣形結構,如步驟 120所示。注意若可用於儲存該膨脹樹形結構之串表示的 快取器大小之數量不可用,則因此可在步驟12〇t修剪舊 的所構建樹或部分(子樹或樹片段)。無論哪種方式,都將 如步驟123所指示儲存該膨脹樹形結構。在此最佳化中, 基於使用先前樹之元素(子樹或片段)來構建一已有快取器 116263.doc 1377819 =形結構’因而可避免自暫用健存區構 處理資满。半咖, 〜而要且即4 畋理貝屌步驟120中,繼續分秘句自〇 ^ 串聯化膨脹之樹來&糂 6 構建其串表示, 服之樹形結構'將其轉換 元組。缺而,批从丄w 仏得热之貧枓位 '且…而’對於本㈣之最佳 捸姓+夕入加 个*要串聯化一所構 指標來二二Π::Γ藉此(例如)用-反向參考 -子樹_段),:反:考^ /号才日^才曰不該訊息部分已發 、串快取器歷史記錄中之哪趣。此反向參考指 指標係提供來代替串,且直有 丁〆^ 部分存在於哪裡之屬W 歷史記錄中樹形 '哪裡之屬性(例如,在串快取器歷史記錄中回 顧夕 >'位元組以擷取與一先前所使用子樹或樹片段資料社 構相關的所構建串),及為彼子樹或樹片段所產生之字元 量=指示。以此方式’既然不需要發送樹形内容,故而 '亍堅縮所取代之反向參考指標使接收器WS堆疊 處理能夠榻取儲存於其快取器歷史記錄中之精確内容且構 建相關訊息。隨後,在步驟128中,執行壓縮負責傳送sw 讯息負責之網路協定標頭(例如Ηττρ標頭)的步驟。因此, 最終,在步驟129中將壓縮HTTP標頭附加至串聯化位元組 流且發送壓縮之請求。 在一實施例中,由於HTTP標頭潛在地可能代表s〇Ap訊 息之相當大的部分,因此執行HTTP標頭之壓縮是有利 的。此對於用於HTTP請求與回應訊息之當前已定義或想 像的所有HTTP繫結而言是正確的。對於設計用於嵌入式 系統及用於相對簡單,.調用之s〇AP堆疊,此部分可特别 116263.doc -20- (· S ) 1377819 大,例如在圖5A及圖5B中所示之例示性貿3調用2〇〇之例示 • 性HTTP標頭訊息内容2〇2、203中所示。在發送器端,使 ·· 用非常類似於串壓縮但冗餘工作較之低得多的方法來壓縮 .HTTP標頭。舉例而言,可藉由實施一經修改之 LZW(LempeI Ziv Welch)演算法來執RHTTp壓縮,該「修 改j包括將LZW僅應用於先前發送之http標頭而非應用 - 於整個串快取器。此係由於執行壓縮之堆疊組件瞭解到可 鲁與新標頭比對成功的子串很少,僅有:先前發送訊息之標 頭。在接收器端,經壓縮之標頭由其所指示之子串(亦即 先前所接收訊息之標頭)所替換,且與在其處理期間由此 層附著於該子串之任何資訊一起被傳至網路容器(亦即 HTTP處理層)。儲存此額外資訊(其主要由(屬性、值)對組 成)以幫助子串之後續處理;使用所附著之資訊可降低接 收器端上之HTTP處理的冗餘工作。因此,圖3令之步驟 129設想了附加一壓縮之http標頭的步驟。 # 如所知,剖析器自一輸入文件在記憶體中建立一樹 形結構。DOM為平臺無關且語言無關的介面,其允許程式 及指令碼動態存取且更新文件之内容、結構及式樣。其另 外提供一規範,用於將XML文件表示為節點物件之階層架 構’該規範亦實施其他更特殊之介面(見hup: //www.w3.org/D〇M/#specs)。一些類型之節點可具有各種 類型之子節點,而其他節點為文件結構中在其下不能具有 任何其他節點之葉節點。Ws堆疊實施例使ffiD〇M介面/剖 析器處理SOAP訊息;然而,在無損本發明之精神及範疇
Il6263.doc 21 1377819 的情況下’可使用其他類型之結構化語言剖析器(例如 SAX剖析器)。因此,可藉由利用SAX剖析器(XML之簡單 API,當則版本為SAX 2 〇丨)來替換^^河方法,以構建一 傳入SOAP訊息之樹形表示。
因此,基於圖3更詳細地膨脹,已知以樹為基礎之Αρι圍 繞一樹形結構’且因此在樹之組份上提供諸如文件介面、 節點介面、節點列表介面、元素介面、Am介面等之介 面,以用於(所謂DOM文件)。支援本發明之最佳
化的WS 堆疊實知例使用類似方法。然而,使用至少三額外節點屬 性:1)對應於在彼節點處生根之樹之XML串的長度;2) 由樹表示以識別訊息之訊息ID ; &,3) m息之偏差。此 等屬性用以產生代替串聯化子樹部分或樹片段資料表示而 添加之反向指標。 詳細說明步驟1G5中評估之樹形快取器結構,樹形快取 器為對應於所發送或所接收之最後少數訊息或此等訊息之
片段之樹/子樹的集合;#發送或接收新訊息時,舊的被 丟棄。存在發送器可使用之樹/訊息的最大數目;同樣 地,存在接收器應保持之訊息/樹的最小數目。該兩個數 目經判定為具有大於所協商歷史記錄大小之累計長度的最 短訊息歷史記錄。因此,詳細說明圓3之步驟126,樹形快 取器實施例避免了儲存相同子樹之多個複本且有利於自已 有數構造新樹(再用)。 因此’詳細說明組成_站U自m 烕新讯心時用於構建樹(步驟123 -)之發送端功能,所修改之戰堆疊試圖再用來自樹形 116263.doc -22· c s.) ^/7819 士器内容之盡可能多的子樹。在SOAP訊息令,再用子 樹轉化為對一先前所發送訊息中之又胤子串的參考。僅對 應於保證在接收器快取器中之訊息的子樹被用以在 SOAP/XML訊息中建立反向參考。 圖4為描述根據本發明之最佳化之接收器端S0AP/HTTP 處理的流程圖。在根據本發明之實施例令,在接收端處,
其中如圖4_所示接收s〇Ap訊息,在词服器處所實施之方 法130包括·接收用戶端s〇Ap訊息(請求)及剝離Ηττρ標頭 (步驟132)。隨後’在步驟135中,判定是否已塵縮Η·標 頭。若在步驟135中判定已壓縮Ηττρ標頭,則在步驟138 中解麼縮HTTP標頭’且本過程進入指示當接收到一訊息 時在HTTP標頭上執行之形式處理之步驟14〇。否則,若在 步驟135中判定未塵縮Ηττρ標頭,則過程進入指示當接收 到一訊息時在HTTP標頭上執行之形式處理之步驟14(^在 處理步驟140之後,在步驟142中判定(用於儲存d〇m(類 似)樹形資料結構内容之)快取器是否為空。在接收自此特 定發送器之第一訊息時此伺服器(接收端)快取器可為空, 因為在接收器處未構建歷史記錄。若在步驟142中判定樹 形快取器為空,則執行包括諸如以下步驟之接收端處理: 剖析請求串及構建D0M(類型)樹(步驟145);在樹形快取器 中儲存新樹(步驟146);及,識別請求中之操作/參數且調 用WS接收器端存根(步驟148)。應理解用戶端亦處理構成 來自伺服器之回應的傳入訊息。 在接收S0AP/HTTP訊息之接收端處,若在步驟142中判 116263.doc -23- 定(用於儲存D0M(類似)樹形資料結構内容之)樹形快 二,則下一步驟包括在步驟15〇中剖析請求串及構建 D〇M(類似)膨張樹。然、而,在此實施例中,所構建之樹利 先則已自一先前訊息(調用)儲存於本端串快取器歷史 **己錄中之先前快取之(所指示)子樹或樹片段資料表示。根 據本發明’當構建對應於一接收訊息之樹時,接收器根據 傳入S〇AP/XML訊息'中之反向參考指標(若幻之指示使用 快取子樹。亦即,當接收到明確XML内容時,構建一新的 子樹且將其插人表示訊息之樹中。該新樹可再用接收器快 ,态中之已有樹的較大部分,如傳入訊息中之反向參考所 曰示酼後,在快取器中儲存新的DOM(類似)膨脹樹形結 構,如步和3所指示。最終,在步驟156中,識別操作 數,且藉由調用WS功能而調用琢8接收存根以回應於所接 收之訊息,如步驟丨56所指示。 因此,在執行解壓縮之接收端點處,根據本發明提供以 下最佳化。詳言之,將任何反向參考指標皆用本端串快取 器歷史記錄中之串來替換,並整合於所接收之訊息流中。 較佳地,通常用一先前由本端8〇八1>引擎之傳入路徑所剖 析之串來替換-參考。—旦剖析’則_將用其 位準之標記(諸如URL)來註解。編碼式樣符記等·因此, 本發明提議修改傳入路徑,以允許將預剖析串直接整合入 所接收WS sil息之剖析中。此將導致剖析壓縮串段之每一 者僅一次。 在所執行之根據本發明之壓縮操作的—非常簡單的實例 116263.doc •24- 1377819 中,現參看圖5A、5B,其特定描述了說明ws調用及回應 • 200中之重複類型的例示性訊息跡線。用稱為 • . TCPMoni_Axis之一部分)的工具來俘獲該等跡線,其中 該工具W〇AP規範之開源實施例且其可得自Apache網址 (www.apache.org)。在圖5A、5B中展示兩個連續ws調用之 在兩個方向(圖5A中用戶端至伺服器且圖诏中伺服器至用 戶端)上傳送的例示性WS SOAP流量。如圖5A中所示,第 一請求(自用戶端至伺服器)包括一繼之以用於「加」調用 205之SOAP訊息的HTTP標頭202 »在用於操作「加」之實 例中,兩例示性參數為「7」及「5j。在第二請求(自用戶 端至伺服器)中,繼HTTP標頭203之後係用於第二調用2i〇a 乘」之SOAP訊息,該「乘」操作之例示性參數為「3」 及「11」》圖5B說明用以分別回應於第一「加」及第二 「乘」調用205、2 10之個別回應訊息(自伺服器傳送至用 戶端之訊息)215、220。 • 圖6描述圖5A中所示之兩請求訊息205、210各自的樹形 表示255、260。展示了兩個調用(重迭)之每一者中的共同 訊息片段275。應注意,僅訊息之s〇Ap部分表示為樹,亦 即HTTP標頭並非如此。屬性表示為附著於元素節點(圓形) 之正方形節點265、280。 圖7A說明分別對應於圖5A之兩個s〇Ap請求訊息2〇5、 210的串285、290之間的重迭277。修改之WS堆疊使用緊 密編碼用反向參考指標替換高亮顯示的區。圖祕說明兩個 相同請求訊息之間(但在其Ηττρ標頭中)之重迭297。此最 116263.doc -25· 1377819 佳化需要支援SOAP引擎之Ηττρ引擎中的變化,兩者皆為 WS堆疊之部分。 有利也本發明之機構需要對傳入路徑之修改,且預期 可實質性地節省CPU時間及記憶體消耗,該節省將轉化為 WS訊息處理期間的顯著能量節省。 注意所提議之最佳化無需為對稱。當兩設備具有非常不 同的資源特徵時(諸如對於桌上型電腦/行動電話對)’或當 -方向上之訊息由偽隨機組份支配時(諸如非常大的加密 結果),僅能在-個方向上致能最佳化。為了去能一給定 方向上之最佳化,將歷史記錄大小設定為零。 已參照根據本潑·日月 > 香 Y丨 贫月之實施例之方法、裝置(系統)及電腦 程式產品的圖來指述了太1 ^ XL 了本發明。應理解,可由電腦程式指 令來實施每一圖表。此等電腦程式指令可提供至通用電腦 之處理器、專用電腦、嵌入式處理器或其他可程式化資料 處理裝置以產生-機器,以使經由電腦處理器或里他可程 式化資料處理裝置執行之指令建立用於實施本文所列功能 之構件。 亦可將此等電腦程式指令儲存於—電腦可讀記憶體中, 該電腦可讀記憶體可引導電腦或其他可程式化資料處理裝 置以特疋方式運打,以使儲存於該電腦可讀記憶體中之指 令產生-包括實施本文所列功能之指令構件的製造物品。 亦可將電腦程式指令載人—電腦可讀或其他可程式化資 料處理裝置上,以使一系列操作步驟在電腦或其他可程式 化裝置上執行而產生一電腦實施進程,從而在電腦或其他 116263.doc -26- 1377819 可程式化裝置上執行之指今 — 4曰?將提供用於貫施本文中所列功 能的步驟。 雖然已參照圖例且其所執行實施例特別展示且描述了本 f月仁熟S該項技術者應理解,在不偏離本發明精神及 範嘴的情況下可進行以上及其他形式及細節上的改變,而 本發明之精神及料應僅由隨时請專利範圍之範令所限 制。 【圖式簡單說明】 圖1A及圖1B提供實施本發明之網路服務架構1〇(圖ia) 及訊息傳遞圖25(圖1B); 圖2A及圖2B描述用於判定接收端與發送端是否都實施 本發明之最佳化且用於將兩端處之歷史記錄大小設定為相 同值的交握協定; 圖3為描述根據本發明之最佳化之發送器端s〇Ap/HTTp 處理的流程圖; 圖4為^述根據本發明之最佳化之接收器端S〇Ap/HTTp 處理的流程圖;
圖5A、5B展示兩個連續之ws調用之在兩個方向(圖5A 中用戶至飼服器且圖5B中飼服器至用戶端)上傳送的例 示性WS SOAP流量; 圖6描述圖5A中所示之兩個請求訊息205、210各自的樹 形表示255、260 ;及, 圖7A、7B說明在對應於圖5A之請求訊息調用2〇5 ' 21〇 中之SOAP訊息/HTML標頭中之兩者的個別串285、290之 116263.doc -27· 1377819 間的個別重迭。 【主要元件符號說明】 10 網路服務架構 12 網路服務請求者/用戶端 15 網路服務代理器 18 網路服務提供者 22 服務傳組件 25 SOAP訊息傳遞 28 服務容器 30a 服務暫存器 30b 服務暫存器 40 交握協議 45a 交握訊息 45b 交握答覆訊息 99 網路 200 WS調用 205 請求訊息 210 請求訊息 215 回應訊息 220 回應訊息 255 樹形表示 260 樹形表示 265 正方形節點 275 共同訊息片段 116263.doc -28- 1377819 277 重迭 280 正方形節點 285 串 290 串
116263.doc -29-
Claims (1)
- 、申請專利範圍: 一種用於傳送訊息之方法,其包含: 在一發送器設備及一接收器設備之每一者處分配一數 虽之第&取儲存器’該快取器用於在個別的發送器及 接收器設備處儲存對應於所傳送及所接收之訊息串的字 元串;及, 表示待傳送訊息的中間資料結構,該中間資 料結構經調適以儲存於該發送器設備處之一第二快取儲 存器中;及, 基於°亥所構建中間資料結構來構建一待傳送之訊自 串;且’對於每—待傳送之後續訊息: W 識别正構建之當前訊息之一所構建中間資料結構中 的部分’其中所識別部分與存在於-對應於-先前所傳 送訊心串之所構建中間資料結構中之類似部分完全相 基於該當前所構建中間資料結構來構建一待傳送之訊 心串用一參考指示符來替換訊息串中之每一識別部 分’該參考指示符指示該第一快取儲存器中之一對應於 與已傳送之該先前訊息相關的—相同字元串部分之位 接收器設備處’識別在—所接收訊息串中之一參 考心不4 ’且取代儲存於該接收器設備處的該第—快取 儲存器令之一或多個炔敌 _ 、 &取之㈣子兀串部分,以構建該 所接收之訊息, 116263.doc 藉此即省6亥發送没備及該接收設備處之訊息通信基礎 架構資源。 求項1之方法’其中構建一待傳送之訊息串之該等 步驟包含串聯化該所構建之中間資料結構以形成一 串〇 一二求項2之方法,其中該中間資料結構包含一訊息之 構化樹形表不,該等所識別之串部分包含—或多個 子樹或樹片段。 如請求項1之方法’其中該在該發送器設備及該接收器 &備處分配該快取歷史記錄儲存器包含:在該等設備之 間貫施一初·^右4J? +Λ # ^ 初始交握協疋,以傳送待分配之該第一快取儲 存器數量。 項4之方法,其中該接收器設備處之該第一快取 =子盗之該分配量至少與分配於該發送器設備處之一 一快取器大小一樣多。 士 ϋ 言奢 〇 … 方法,其中該參考指示符指示-串聯化訊 :造^分之屬性,其中該串聯化訊息串部分對應於一所 識別子㈣構中之—所識別子樹或片段部分,該所 串之一 片段部分與存在於對應於一先前所傳送訊息 完全:$構建中間資料結構中之一類似子樹或片段部: 如請求項6 > + i 一指示。方法,其中一屬性包含一先前發送訊息之 請求項6 方法,其.中一屬性包含—識別一先前傳送 doc 1377819 訊息之該樹形表示的訊息ID。 如明求項6之方法,其中一屬性包含對應於該所識別樹 之該串的長度。 10.如叫求項6之方法,其中一屬性包含該先前傳送訊息中 之偏差長度。 11·^求項3之方法,其中在該接收器設備處,該識別部 分包^:到析該所接收之訊息串及構建一用於儲存於該接收窃設備處之一第二快取儲存器中的結構化樹形表 示’該結構化樹形表示經儲存以備隨後在該接收器處用 於構建所接收訊息。 12. 如明求項11之方法’進—步包含:隨著新訊息被分別發 送及接收’連續更新該發送器設備及該接收器設備處之 該第二快取儲存器中之該等相同部分的該等樹形表示。 13. 如請求項U之方法’其中該訊息包括一根據一簡單物件 存取協定(S〇AP)而產生之網路服務訊息,該等所替換之訊息串部分包含一 s〇Ap訊息之相同節點。 如請求項Π之方法,其中根據一通信協定來傳輸該 S〇AP訊息,該等所替換之訊息部分包含一通信封包標 頭之相同部分。 、 14. η.如請求項14之方法,丨中根據Ηττρ通信協定來傳輸該 SOAP訊息’其中該等所替換之訊息部分包含該標 頭及該SOAP訊息之要素。 不 " 卞 叩广鵠發送器 及一接收器設備處之該第一快取歷史記錄儲存器的 116263.doc 為固定的,藉此當發送或接 ,,叹新訊息時,隨著在該第一 快取儲存器中放入相庳串訊自 心” 祁應爭訊息,將丟棄舊的-或多個子 樹或樹片段部分。 1 7.如請求項14之方法,苴中口 〃、要該接收器處之每一快取歷 史記錄儲存器量等於哎大盘 ^ 、次大於母一用戶端發送器設備處之 快取歷史記錄儲存器量,則 .. 幻』調適分配於每一用戶端發 送裔改備及一接收3§兮5·供走士松 。備處之第一快取儲存器的數量以 增多或減少。 18. 一㈣於在—網路環境中傳送訊息之裝置,其包含: 一在支援一網路服務(ws)堆疊實施例之一發送器設備 處之用於產生待傳送至—接收器設備之ws訊息串的構 件該等所傳送之訊息串儲存於該發.送器設備處之一第 一快取儲存設備中,且儲存於該接收器設備處之一第一 快取儲存器中; 在支援-ws堆疊實施例& 一接收器設備處之用於 回應傳送至該接收器設備之所接收WS訊息請求亊的構 件該發送器设備及該接收器設備處之每一該ws堆疊實 施例構建並儲存表示所發送及所接收之ws訊息串内容之 中間資料結構,及在個別的發送器及接收器設備處之本 端地儲存所構建之中間資料結構; 在《玄發送器設備處之該ws堆疊實施例實施用於基於 一當前所構建之中間資料結構來構建一待傳送之訊息串 且用一參考指示符來替換訊息串中之每一識別部分的構 件,其中該參考指示符指示該第一快取儲存器中之一對 116263.doc 1377819 應於與已傳送之該先前訊息相關之一相同字元串部分的 位置;及, 在該接收器設備處之該w s堆疊實施例識別所接收訊 息串中之一參考指示符,且取代儲存於該接收器設備處 的該第一快取健存器中之一或多個快取之相同字元串部 分’以構建該所接收之訊息, 藉此節省該發送設備及該接收設備處之臂8訊息通信 基礎架構資源。19·如明求項18之裝置,其中在一支援一網路服務(ws)堆疊 實施例之發送器設備處的該構件包含一用於產生該臀5 SOAP訊息請求之ws(簡單物件存取協定)s〇Ap引擎。 20.如請求項18之裝置,進一步包含用於在該發送器設備與 該接收器設備之間實施-初始交握協定的構件,以用於 協商在個別的發送器及接收器設備處本端地儲存一訊息 串歷史記錄之第一快取儲存記憶體的數量,同時用於該接收器s免備之第一快取健在哭认4 t曰 取保存态的該數頁總是等於或大於 該發送器的第一快取儲存器。 21. 如請求項丨8之裝置,盆令 ^ T芯所構建之中間資料結構包含 一 sfL息之一結構化樹形表 衣不3亥荨所識別之串部分包含 一或多個子樹或樹片段。 22. 如請求項21之裝晋,甘士 自$ π μ Μ 八。$考指示符指示一串聯化訊 心串部分的屬性,兮由_ & ^ &丄 中間資+…“ 串部分對應於-所構建 甲間貝枓結構中之一 ....μ 所識別子树或片段部分,該所識別 子树或片段部分與存在 ^ '對應於一先前所傳送訊息串之 J16263.doc < S .) 1377819 片段部分完全 一所構建中間資料結構中之一類似子樹或 相同。 皂之 23.如請求項22之裝置,其中—屬性包含_先前發送訊* 一指示》 β 24·如請求項22之裝置’其中一層性包含—識別—先前傳送 訊息之該樹形表示的訊息ID。 25·如請求項22之裝置’其中一屬性包含對應於該所識別樹 之該串的長度。 26_如請求項22之裝置,其中一屬性包含該先前傳送訊息中 之偏差長度。 27.如請求項22之裝置’其中該ws s〇Ap訊息係根據ΗΤτρ 通信協定來傳輸,其中該所替換之訊息部分包含該Ηττρ 標頭及該SOAP訊息之要素。如請求項21之裝置,其中分配於每一用戶端發送器設備 及一接收器設備處之該第一快取歷史記錄儲存器的數量 為固定的,藉此當發送或接收新訊息時,隨著在該第一 快取儲存器中放入相應之串訊息,將丟棄舊的一或多個 子樹或樹片段部分。 29. 如請求項21之裝置,其中只要該接收器處之每一快取歷 史記錄储存器量等於或大於該發送器設備處之快取歷史 圮錄儲存器量,則可調適以增多分配於每一用戶端發送 器設備及一接收器設備處之第一快取儲存器的數量。 30. 如請求項21之裝置,進一步包含:用於當發送及接收新 訊息時連續更新該發送器設備及該接收器設備處之該第 116263.doc -6 · CS 1377819 快取歷史記錄儲存 Ψ - 。之該荨相同部分之該等所構建 中間I料表不的構件。 31. —種可由一機器讀 由該機n執行^ 存設備,其有形地包含可 機心仃u貫行用於傳送訊息之方法步驟的指令程 式,该程式鍺存母供_也— 又備執仃用於實行以下方法步驟的指 今· 旦在:發送器設備及-接收器設備之每—者處分配一數 快取儲存器,該快取器用於在個別的發送器及 -㈣處儲存對應於所傳送及所接收之訊 兀串;及, 料2:,一表不一待傳送訊息的中間資料結構,射間資 广。構,."調適以儲存於該發送器設備處之-第二快取儲 存器中;及, 基於該所構建之中間資料結構來構建—待傳送之訊息 串,且,對於每—待傳送之後續訊息: 正建構之當前訊息之一所構建中間資料結構中 ,所識料分與存在於-對應於-先前所傳送訊 所構建中間資料結構中之類似部分完全相同; 自基於該當前所構建中間資料結構來構建-待傳送之訊 :串’且用一參考指示符來替換訊息串中之每一識別部 该參考指示符指示該第一快取儲存器中之一對應於 -與已傳送之該先前訊息相關之相同字元事部分的位 置;及, 在該接故器設備處,識別一所接收訊息串中之一參考 <s U6263.doc 。。丁符’ 用儲存於該接收器設備處的該S —快取儲存 器中之一或多個快取之相同字元串部分來取代,以構建 該所接收之訊息, 藉此節省該發送設備及該接收設備處之訊息通信基礎 架構資源。 116263.doc
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/293,909 US7808975B2 (en) | 2005-12-05 | 2005-12-05 | System and method for history driven optimization of web services communication |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200737855A TW200737855A (en) | 2007-10-01 |
TWI377819B true TWI377819B (en) | 2012-11-21 |
Family
ID=38110257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW095144878A TWI377819B (en) | 2005-12-05 | 2006-12-04 | System and method for history driven optimization of web services communication |
Country Status (11)
Country | Link |
---|---|
US (2) | US7808975B2 (zh) |
EP (1) | EP1969814B1 (zh) |
JP (1) | JP5052522B2 (zh) |
KR (1) | KR101027299B1 (zh) |
CN (1) | CN101341724B (zh) |
AT (1) | ATE426992T1 (zh) |
BR (1) | BRPI0619763B1 (zh) |
CA (1) | CA2640838A1 (zh) |
DE (1) | DE602006005963D1 (zh) |
TW (1) | TWI377819B (zh) |
WO (1) | WO2007065850A2 (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7808975B2 (en) * | 2005-12-05 | 2010-10-05 | International Business Machines Corporation | System and method for history driven optimization of web services communication |
US7836396B2 (en) * | 2007-01-05 | 2010-11-16 | International Business Machines Corporation | Automatically collecting and compressing style attributes within a web document |
US8125986B2 (en) * | 2007-01-19 | 2012-02-28 | International Business Machines Corporation | Method for enabling secure usage of computers using a mechanism lockdown |
US20080222273A1 (en) * | 2007-03-07 | 2008-09-11 | Microsoft Corporation | Adaptive rendering of web pages on mobile devices using imaging technology |
US20100043065A1 (en) * | 2008-08-12 | 2010-02-18 | International Business Machines Corporation | Single sign-on for web applications |
CN101557297B (zh) * | 2009-05-14 | 2011-06-22 | 中兴通讯股份有限公司 | 一种基于互联网的开放式电信业务生成系统及方法 |
US8161109B2 (en) * | 2009-07-15 | 2012-04-17 | Red Hat, Inc. | Client side culling of dynamic resources |
US10971032B2 (en) * | 2010-01-07 | 2021-04-06 | John Allan Baker | Systems and methods for providing extensible electronic learning systems |
US8621016B2 (en) | 2010-11-09 | 2013-12-31 | International Business Machines Corporation | Adaptive differential propagation of soap messages |
EP2557752B1 (de) * | 2011-08-11 | 2017-09-27 | Siemens Aktiengesellschaft | Verfahren und vorrichtung zum herstellen einer end-zu-end-kommunikation zwischen zwei netzwerken |
US9276998B2 (en) * | 2011-10-06 | 2016-03-01 | International Business Machines Corporation | Transfer of files with arrays of strings in soap messages |
US9232022B2 (en) * | 2013-06-27 | 2016-01-05 | Aol Inc. | Systems and methods for reduced bandwidth data transmission between network connected devices |
JP2015052821A (ja) * | 2013-09-05 | 2015-03-19 | 株式会社東芝 | 通信装置および通信方法 |
US10282403B2 (en) | 2013-10-08 | 2019-05-07 | Sony Corporation | Server device, client device, information processing method, and recording medium |
EP3120267B1 (en) * | 2014-03-21 | 2020-01-08 | PTC Inc. | Communication of binary dynamic rest messages |
US10270883B2 (en) * | 2014-03-27 | 2019-04-23 | Hewlett Packard Enterprise Development Lp | Scheduling downloads |
US20160248823A1 (en) * | 2015-02-24 | 2016-08-25 | Investcloud Inc | Messaging protocol |
US11032379B2 (en) * | 2015-04-24 | 2021-06-08 | Citrix Systems, Inc. | Secure in-band service detection |
US10601894B1 (en) | 2015-09-28 | 2020-03-24 | Amazon Technologies, Inc. | Vector-based encoding for content rendering |
US10616109B1 (en) * | 2016-04-14 | 2020-04-07 | United Services Automobile Association (Usaa) | System and method for web service atomic transaction (WS-AT) affinity routing |
CN105938489A (zh) * | 2016-04-14 | 2016-09-14 | 北京思特奇信息技术股份有限公司 | 一种压缩详单的存储和展示方法及系统 |
CN109213694B (zh) | 2017-06-30 | 2023-04-25 | 伊姆西Ip控股有限责任公司 | 用于缓存管理的方法和设备 |
US11165730B2 (en) * | 2019-08-05 | 2021-11-02 | ManyCore Corporation | Message deliverability monitoring |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3368883B2 (ja) * | 2000-02-04 | 2003-01-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データ圧縮装置、データベースシステム、データ通信システム、データ圧縮方法、記憶媒体及びプログラム伝送装置 |
US6820133B1 (en) * | 2000-02-07 | 2004-11-16 | Netli, Inc. | System and method for high-performance delivery of web content using high-performance communications protocol between the first and second specialized intermediate nodes to optimize a measure of communications performance between the source and the destination |
JP3990115B2 (ja) * | 2001-03-12 | 2007-10-10 | 株式会社東芝 | サーバ側プロキシ装置及びプログラム |
FR2825222A1 (fr) * | 2001-05-23 | 2002-11-29 | Thomson Licensing Sa | Dispositif et procedes de transmission et de mise en oeuvre d'instructions de controle pour acces a des fonctionnalites d'execution |
US20050060431A1 (en) * | 2003-09-12 | 2005-03-17 | Lewontin Stephen Paul | System, apparatus, and method for using reduced web service messages |
US20050144137A1 (en) * | 2003-12-24 | 2005-06-30 | Kumar B. V. | Protocol processing device and method |
JP4433807B2 (ja) * | 2004-01-27 | 2010-03-17 | パナソニック電工株式会社 | 信号合成処理装置及び調光制御システム |
US7509387B2 (en) * | 2004-04-07 | 2009-03-24 | Nokia Corporation | System, apparatus, and method for using reduced Web service messages |
US8296354B2 (en) * | 2004-12-03 | 2012-10-23 | Microsoft Corporation | Flexibly transferring typed application data |
WO2006080026A1 (en) * | 2005-01-27 | 2006-08-03 | Infosys Technologies Limited | Protocol processing device and method |
US7808975B2 (en) * | 2005-12-05 | 2010-10-05 | International Business Machines Corporation | System and method for history driven optimization of web services communication |
US7533111B2 (en) * | 2005-12-30 | 2009-05-12 | Microsoft Corporation | Using soap messages for inverse query expressions |
-
2005
- 2005-12-05 US US11/293,909 patent/US7808975B2/en not_active Expired - Fee Related
-
2006
- 2006-11-30 AT AT06819876T patent/ATE426992T1/de not_active IP Right Cessation
- 2006-11-30 CN CN2006800455301A patent/CN101341724B/zh active Active
- 2006-11-30 JP JP2008542771A patent/JP5052522B2/ja not_active Expired - Fee Related
- 2006-11-30 EP EP06819876A patent/EP1969814B1/en active Active
- 2006-11-30 WO PCT/EP2006/069171 patent/WO2007065850A2/en active Application Filing
- 2006-11-30 BR BRPI0619763A patent/BRPI0619763B1/pt active IP Right Grant
- 2006-11-30 DE DE602006005963T patent/DE602006005963D1/de active Active
- 2006-11-30 KR KR1020087014620A patent/KR101027299B1/ko not_active IP Right Cessation
- 2006-11-30 CA CA002640838A patent/CA2640838A1/en not_active Abandoned
- 2006-12-04 TW TW095144878A patent/TWI377819B/zh not_active IP Right Cessation
-
2008
- 2008-06-24 US US12/145,158 patent/US8107463B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101341724B (zh) | 2012-07-04 |
WO2007065850A3 (en) | 2007-08-09 |
BRPI0619763B1 (pt) | 2019-09-03 |
US20080256171A1 (en) | 2008-10-16 |
CN101341724A (zh) | 2009-01-07 |
JP5052522B2 (ja) | 2012-10-17 |
ATE426992T1 (de) | 2009-04-15 |
EP1969814B1 (en) | 2009-03-25 |
WO2007065850A2 (en) | 2007-06-14 |
EP1969814A2 (en) | 2008-09-17 |
CA2640838A1 (en) | 2007-06-14 |
BRPI0619763A2 (pt) | 2016-08-16 |
DE602006005963D1 (de) | 2009-05-07 |
US20070127440A1 (en) | 2007-06-07 |
US8107463B2 (en) | 2012-01-31 |
TW200737855A (en) | 2007-10-01 |
US7808975B2 (en) | 2010-10-05 |
KR20080084974A (ko) | 2008-09-22 |
JP2009519508A (ja) | 2009-05-14 |
KR101027299B1 (ko) | 2011-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI377819B (en) | System and method for history driven optimization of web services communication | |
US7370120B2 (en) | Method and system for reducing network latency in data communication | |
EP1451719B1 (en) | System and method for processing extensible markup language (xml) documents | |
JP4982501B2 (ja) | 無線装置と通信するためにデータを圧縮/解凍するための方法及び装置 | |
AU2004218700A1 (en) | Optimizing file replication using binary comparisons | |
EP3163837A1 (en) | Header compression for ccn messages using a static dictionary | |
US7853695B2 (en) | Using expressive session information to represent communication sessions in a distributed system | |
EP3166277A1 (en) | Bit-aligned header compression for ccn messages using dictionary | |
EP3163838B1 (en) | Header compression for ccn messages using dictionary learning | |
Rosu | A-soap: Adaptive soap message processing and compression | |
US8239562B2 (en) | Envelope attachment for message context | |
Berzosa Macho | A context-and template-based data compression approach to improve resource-constrained IoT systems interoperability. | |
Kangasharju | An XML Messaging Service for Mobile Devices | |
Swen | An overview of the Web++ framework | |
Macho | for the degree of Doctor of Philosophy | |
KR20030027309A (ko) | Tcp/ip를 이용한 논 오라클 시스템과 오라클데이터베이스관리시스템간의 연동방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |