ネットワークワーキンググループ
Request for Comments: 2394
分類: 情報提供
R. Pereira
TimeStep Corporation
1998 年 12 月

 

DEFLATE を用いた IP ペイロード圧縮
(IP Payload Compression Using DEFLATE)

このメモの位置付け 
このメモは、インターネットコミュニティに対して情報を提供するものである。
このメモは、何らインターネットの標準を規定するものではない。
このメモの配布に制限はない。
著作権表示
Copyright (C) The Internet Society (1998). All Rights Reserved.
要旨 
この文書は、DEFLATE 圧縮アルゴリズムを基にした圧縮方式について記述したものである。
この文書では、IP ペイロード圧縮プロトコルへの DEFLATE アルゴリズムの適用について定義する。
目次 
1. はじめに
1.1 DEFLATE 圧縮アルゴリズム
1.2 ライセンス
1.3 要求仕様
2. DEFLATE アルゴリズムの実装
2.1 圧縮
2.2 復元
3. スレッショルド

4. IPSec トランスフォーム ID

5. セキュリティに関する考慮事項

6. 参考文献

7. 謝辞

8. 編集者の連絡先

9. 著作権表示全文

1. はじめに 
IP ペイロード圧縮プロトコルは、IP データグラムの圧縮を行うにあたって、異なる圧縮アルゴリズムをサポートしている。
この文書では、IPCOMP [IPCOMP] に対して DEFLATE 圧縮アルゴリズム [Deutsch96] を適用する方法について記述する。

この文書は、[IPCOMP] と共に読まれる必要があり(SHOULD)、その背景を考慮しなければならない(MUST)

1.1 DEFLATE 圧縮アルゴリズム 
PKZIP や gzip 圧縮プログラムで使用され、無料で広く配布されている zlib ライブラリのソースコードに含まれている 'deflate' 圧縮フォーマットは、次のような特徴を持っている。
1.2 ライセンス 
zlib のソースコードは、無料で広く利用することが可能である。ただし、次の著作権表示に従うものとする。
(C) 1995 Jean-Loup Gailly and Mark Adler

This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

  1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.

  2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.

  3. This notice may not be removed or altered from any source distribution.
Jean-Loup Gailly         Mark Adler
gzip@prep.ai.mit.edu    madler@alumni.caltech.edu

If you use the zlib library in a product, we would appreciate *not* receiving lengthy legal documents to sign. The sources are provided for free but without warranty of any kind. The library has been entirely written by Jean-Loup Gailly and Mark Adler; it does not include third-party code.

deflate フォーマットおよび圧縮アルゴリズムは、Lempel-Ziv LZ77 圧縮に基づいており、そのパテントフリーの状態を支持している GNU プロジェクトや Portable Network Graphics ワーキンググループによってさらなる研究が行われてきた。
1.3 要求仕様 
この文書において、"MUST", "MUST NOT", "REQUIRED", "SHOULD", "SHOULD NOT", "MAY" というキーワードが使用された場合は、[Bradner97] に記述されているように解釈されるものとする。
2. DEFLATE アルゴリズムの実装 
DEFLATE 圧縮アルゴリズムは、Phil Katz によって設計され、その詳細は、[Deutsch96] として公開されている。
このため、IPCOMP に実装するには、無料で利用可能な素晴らしいアルゴリズムである。

圧縮および復元に関するアルゴリズムの詳細は、[Deutsch96] の記述に従うべきであり、ソフトウェアライブラリの利用も良いだろう。
IPComp は、ステートレスなプロトコルであるため、圧縮または復元のどちらの場合においても、パケット間の履歴をクリアしなければならない(MUST)

2.1 圧縮 
[IPCOMP] において定義されているように、圧縮処理は IP 圧縮アソシエーション(IPCA)によって決定される。
この文書で記述されている処理を行うために、IPCA では DEFLATE アルゴリズムを指定しなければならない(MUST)

圧縮処理では、IP データグラムのデータを圧縮し、IPComp ヘッダの後にその結果を配置する。 例えば、TCP データグラムを圧縮する場合は、次のようになる。

前: IP TCP ...
後: IP IPCOMP (TCP ...)

IPCOMP ヘッダの後のすべてが圧縮されていることに注意すること。

DEFLATE は、最高の圧縮率を実現する速度の遅い圧縮から速度の速い圧縮まで、様々な圧縮レベルで利用可能である。
データを圧縮するレベルは、それが復元アルゴリズムと常に互換性をもつため、実装依存である。

2.2 復元 
圧縮処理と同様に、IPCA では、復元処理で利用するためのパラメータとアルゴリズムを指定する。

[IPCOMP] で定義されているように、IPComp ヘッダの後のデータが復元され、IP ヘッダの内側の IPComp ヘッダと交換される。

DEFLATE アルゴリズムを使用する復元は、[Deutsch96] で定義されている復元処理に従う。

3. スレッショルド 

[IPCOMP] で述べられているように、小さいバッファに対する圧縮は、高速の回線の場合と同様に、圧縮に要する時間がデータを送信する時間よりも長くなり、通常はうまく機能しない。 非公式のテストでは、結果が元より大きくなる平均バッファサイズは、90 バイト付近であることを示している。
このため、実装は、90 バイトより小さいバッファに対して圧縮を試みるべきではない(SHOULD NOT)

この文書では、[IPCOMP] で定義されている圧縮適用テストに関して、パケットサイズの制限以外に対しては述べない。

4. IPSec トランスフォーム ID 
[IPDOI] では、DEFLATE 圧縮アルゴリズムに対して、ISAKMP IPCOMP トランスフォーム ID として IPCOMP_DEFLATE を指定している。 その他の IPCOMP DEFLATE アルゴリズムに対する ISAKMP パラメータは必要とされない。
5. セキュリティに関する考慮事項 
この文書では、[IPCOMP] と [Deutsch96] において既に述べられているセキュリティに関する考慮事項に対して、さらなる事項を追加しない。
6. 参考文献 

[IPCOMP] Shacham, A., Monsour, R., Pereira, R., and M. Thomas, "IP Payload Compression Protocol (IPComp)", RFC 2393, December 1998.

[Deutsch96] Deutsch, P., "DEFLATE Compressed Data Format Specification version 1.3", RFC 1951, May 1996.

[IPDOI] Piper, D., "The Internet IP Security Domain of Interpretation for ISAKMP", RFC 2407, November 1998.

[Corpus90] Bell, T.C., Cleary, G. G. and Witten, I.H., "Text Compression", Prentice_Hall, Englewood Cliffs NJ, 1990. The compression corpus itself can be found in ftp://ftp.uu.net/pub/archiving/zip/

[Gailly95] Gailly, J.-L., "Zlib 0.95 beta"

7. 謝辞 
著者は、IPPCP ワーキンググループのアクティブメンバー全員、特に、Abraham Shacham と Naganand Doraswamy に感謝する。
8. 編集者の連絡先 
Roy Pereira
TimeStep Corporation

Phone: +1 (613) 599-3610 x 4808
EMail: rpereira@timestep.com
 

IP ペイロード圧縮プロトコル(IPPCP)ワーキンググループへは、電子メール(ippcp@cisco.com)または、チェアを介してコンタクトをとることが可能である。

Naganand Dorswamy
Bay Networks

EMail: naganand@baynetworks.com
 

翻訳者

東京都中央区新川1-21-2 茅場町タワー
株式会社 NTTデータ
技術開発本部
馬場 達也

EMail: babatt@nttdata.co.jp

9. 著作権表示全文 
Copyright (C) The Internet Society (1998). All Rights Reserved.

本文書とその翻訳は、複製および他に提供することができる。
また、この文書に論評や説明を加えたり、その実装を補助するものは、上記の著作権表示およびこの節を付加していれば、全体あるいは一部であっても一切の制約を課されることなく作成、複製、発表、配布できる。
ただし、この文書自体に対して、著作権表示やインターネットソサエティもしくは他のインターネット関連団体への参照を取り除くなどの変更を加えてはならない。
インターネット標準化過程で定義されている著作権のための手続きに従って、インターネット標準を開発するために必要な場合や、RFC を英語以外の言語に翻訳する必要がある場合はそのかぎりでない。

上記の制限は永続的なものであり、インターネットソサエティもしくはその継承者や譲渡者によって取り消されることはない。

本文書とここに含まれた情報は「無保証」で提供され、インターネットソサエティおよび IETF はすべての保証を明示的にも暗黙的にもおこなわない。
その中には、この情報がいかなる権利も侵害していないという保証や、商用利用および特定目的における適合性への保証が含まれる。