?? rfc2118.txt
字號:
組織:中國互動出版網
(http://www.china-pub.com)
RFC文檔中文翻譯計劃
(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
譯者:方桂成(fangguicheng fangguicheng@21cn.com)
廣東視聆通應用研究開發中心(http://www.shiningsoft.com)
譯文發布時間:2002-01-09
版權:本中文翻譯文檔版權歸中國互動出版網所有。可以用于非商業用途自由轉載
,但必須保留本文檔的翻譯及版權信息。
Network Working Group G. Pall
Request for Comments: 2118 Microsoft Corporation
Category: Informational March 1997
微軟點對點壓縮(MPPC)協議
本備忘錄的狀態
本備忘錄為因特網社區提供信息。本備忘錄沒有列入任何因特網標準。本備忘錄
的分發不受限制。
摘要
點對點協議(PPP) [1] 為在點對點鏈路上傳輸多種協議數據報提供了一個標準
的方法。
PPP 壓縮控制協議 [2] 為在 PPP 封裝的鏈路上協商和利用壓縮控制協議提供了
一種方法。
本文檔描述了微軟點對點壓縮協議(以下簡稱MPPC)在壓縮 PPP 封裝包上的用法。
目錄
1. 介紹 .................................................. 2
1.1 許可 ............................................ 2
1.2. 術語要求 ........................................ 2
2. 配置選項格式 .......................................... 3
3. MPPC 包 ............................................... 4
3.1 包格式 .......................................... 5
4. 壓縮和編碼描述 ............................................ 6
4.1 明文編碼 ........................................ 7
4.2 批拷貝編碼 ...................................... 7
4.2.1 偏移量編碼 .................................. 7
4.2.2 匹配長度編碼 ................................ 7
4.3 同步 ............................................ 8
安全考慮 ..................................................... 8
參考文獻 ..................................................... 9
致謝 ......................................................... 9
主席地址 ..................................................... 9
作者地址 ..................................................... 9
Pall Informational [Page 1]
RFC 2118 MPPC Protocol March 1997
1. 介紹
微軟點對點壓縮方案可以把任何PPP包表示為壓縮形式的方法。MPPC 算法設計
為通過優化處理器和帶寬的利用,來支持大量并發連接。MPPC 算法也用來優化
典型的特定 PPP ,提高工作效率(例如1500字節的MTU等)。
MPPC 算法使用一種帶有滑動窗口的歷史紀錄緩沖器的 LZ [3] 算法。
MPPC 算法保持一個連續的歷史紀錄,當壓縮傳輸了8192字節數據之后,就總是
有8192字節歷史紀錄被用來做壓縮,除非歷史紀錄被清空。
1.1. 許可
MPPC 僅用于實現 PPP 協議的產品,并且只能和其他的帶有 MPPC 實現的 PPP
協議互操作。
Source and object licenses are available on a non-discriminatory
basis from Stac Electronics. Please contact:
Cheryl Poland
Stac Electronics
12636 High Bluff Drive,
San Deigo, CA 92130
Phone: (619)794-4534
Email: cherylp@stac.com
1.2. 術語要求
在本文中,一些詞被用來表示特定含義,這些詞總是大寫的。
MUST 這個關鍵字,或是術語"REQUIRED"或"SHALL",意味著他們的定義是
一個絕對的規范的必要條件。
MUST NOT 這個詞組,意味著他們的定義是一個絕對的規范的禁止的條件。
Pall Informational [Page 2]
RFC 2118 MPPC Protocol March 1997
SHOULD 這個關鍵字,或是形容詞"RECOMENDED",意味著在特殊的環境下可
能存在正當的理由忽略一個特殊的項目,但是完整的含義必須能被理
解并且在重新選擇一條不同的路徑之前要仔細的考慮。
MAY 這個關鍵字,或是形容詞"OPTIONAL",意味著一個項目是真正可選的。
一個買主可以選擇包含項目因為一個特殊的市場要求或是因為買主覺
得它能夠增強產品當另一個買主可能遺漏了同樣的項目時。一個沒有
包含一個特殊對象MUST的工具準備用來與另一個不包含這個對象的工
具間相互起作用,因此或許有簡化的功能。在同樣的脈絡里一個包含
了特殊對象MUST的工具準備用來和另一個沒有包含這個對象的工具間
相互作用。
2. 配置選項格式
描述
CCP 配置選項在鏈路上協商 MPPC。缺省的或者最終協商未果,就不使用壓縮。
CCP 配置選項格式如下所示。這些域從左到右傳輸。
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Length | Supported Bits |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Supported Bits |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type
18
Length
6
Supported Bits
這個域是4個八位組,重要的八位組在前。在最不重要的八位組中的最不重要
的比特設置為為1表示需要協商 MPPC。
所有其他的比特必須設置為 0。
Pall Informational [Page 3]
RFC 2118 MPPC Protocol March 1997
3. MPPC 包
PPP 必須到達網絡層協議階段,并且 CCP 控制協議必須到達打開狀態。一個 MPPC
包才可能被用于通信。
確切地說,一個 MPPC 數據報封裝在 PPP 信息域中。PPP 協議域指明十六進制協議
類型 00FD 。
MPPC 數據報在 PPP 鏈路上傳輸的最大長度與 PPP 信息域所能夠封裝的包的最大值
是一樣的。由于歷史紀錄緩沖器限制為8192字節,這個長度不能大于8192字節。
只有 PPP 協議類型值在十六進制 0021 到十六進制 00FA 的包才被壓縮。其他的包
不使用 MPPC 處理,并且以原來的 PPP 協議類似值發送。
填料
推薦 MPPC 不使用填料,因為這樣一來達不到壓縮的目的。假如發送者必須使用
填料,它必須在 LCP 階段協商 Self-Describing-Padding 配置選項然后使用自
描述的填料。
可靠性和次序
MPPC 方案不需要可靠鏈路。然而,它依賴于在每個包中的12比特連續計數器來保
持歷史紀錄緩沖器的同步。假如接收方辨別出在接收到的包中的連續計數不符合預
期計數,它就發送一個 CCP 重置請求包來使它的歷史紀錄緩沖器和發送方的歷史
紀錄緩沖器同步。
MPPC 期望數據包是順序地提交的,這樣,歷史紀錄緩沖器就不會重新同步。
MPPC 可能在可靠的鏈路上使用。如 "PPP Reliable Transmision" [5] 描述那樣,
但這只是象征性地增加了不必要的冗余,因為不再需要連續計數。
數據膨脹
假如壓縮數據的結果反而導致數據膨脹了,原始的數據將被作為未壓縮的 MPPC 包
發送。發送方必須在壓縮任何數據之前清空歷史紀錄,并且在下一個外發包設置
FLUSHED 比特位。
Pall Informational [Page 4]
RFC 2118 MPPC Protocol March 1997
3.1. 包格式
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PPP Protocol |A|B|C|D| Coherency Count |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Compressed Data...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
PPP Protocol
在 PPP 協議封裝中[1],PPP 協議域是需要的。
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -