RFC1145 日本語訳
1145 TCP alternate checksum options. J. Zweig, C. Partridge. February 1990. (Format: TXT=11052 bytes) (Obsoleted by RFC1146) (Status: EXPERIMENTAL)
プログラムでの自動翻訳です。
英語原文
Network Working Group J. Zweig Request for Comments: 1145 UIUC C. Partridge BBN February 1990
コメントを求めるワーキンググループJ.ツバイク要求をネットワークでつないでください: 1145 UIUC C.ヤマウズラBBN1990年2月
TCP Alternate Checksum Options
TCPの代替のチェックサムオプション
Status of This Memo
このメモの状態
This memo suggests a pair of TCP options to allow use of alternate data checksum algorithms in the TCP header. The use of these options is experimental, and not recommended for production use.
このメモは、TCPヘッダーにおける代替のデータチェックサムアルゴリズムの使用を許すために1組のTCPオプションを示します。 これらのオプションの使用は、実験的であり、生産使用のために推薦されません。
Distribution of this memo is unlimited.
このメモの分配は無制限です。
Introduction
序論
Some members of the networking community have expressed interest in using checksum-algorithms with different error detection and correction properties than the standard TCP checksum. The option described in this memo provides a mechanism to negotiate the use of an alternate checksum at connection-establishment time, as well as a mechanism to carry additional checksum information for algorithms that utilize checksums that are longer than 16 bits.
ネットワーク共同体の何人かのメンバーが標準のTCPチェックサムと異なった誤り検出と訂正の特性でチェックサムアルゴリズムを使用することへの関心を示しました。 このメモで説明されたオプションはコネクション確立時に代替のチェックサムの使用を交渉するためにメカニズムを提供します、16ビットより長いチェックサムを利用するアルゴリズムのための追加チェックサム情報を運ぶメカニズムと同様に。
Definition of the Options
オプションの定義
The TCP Alternate Checksum Request Option may be sent in a SYN segment by a TCP to indicate that the TCP is prepared to both generate and receive checksums based on an alternate algorithm. During communication, the alternate checksum replaces the regular TCP checksum in the checksum field of the TCP header. Should the alternate checksum require more than 2 octets to transmit, the checksum may either be moved into a TCP Alternate Checksum Data Option and the checksum field of the TCP header be sent as 0, or the data may be split between the header field and the option. Alternate checksums are computed over the same data as the regular TCP checksum (see TCP Alternate Checksum Data Option discussion below).
代替のアルゴリズムに基づいてTCP Alternate Checksum Request Optionは、TCPがともにチェックサムを生成して、受けるように準備されるのを示すためにSYNセグメントでTCPによって送られるかもしれません。 コミュニケーションの間、代替のチェックサムはTCPヘッダーのチェックサム分野で通常のTCPチェックサムを取り替えます。 TCPヘッダーでは、0として送るか、または代替のチェックサムが伝わるように2つ以上の八重奏を必要とするなら、チェックサムをTCP Alternate Checksum Data Optionとチェックサム分野に動かすかもしれません。ヘッダーフィールドとオプションの間でデータを分けるかもしれません。 代替のチェックサムは通常のTCPチェックサムと同じデータに関して計算されます(以下でのTCP Alternate Checksum Data Option議論を見てください)。
TCP Alternate Checksum Request Option
TCPの代替のチェックサム要求オプション
The format of the TCP Alternate Checksum Request Option is:
TCP Alternate Checksum Request Optionの形式は以下の通りです。
+----------+----------+----------+ | Kind=14 | Length=3 | chksum | +----------+----------+----------+
+----------+----------+----------+ | 種類=14| 長さ=3| chksum| +----------+----------+----------+
Zweig & Partridge [Page 1] RFC 1145 TCP Alternate Checksum Options February 1990
ツバイクとヤマウズラ[1ページ]RFC1145TCPはチェックサムオプション1990年2月に交替します。
Here chksum is a number identifying the type of checksum to be used.
ここで、chksumは使用されるためにチェックサムのタイプを特定する数です。
This option is not copied into each fragment, and appears only in the first fragment.
このオプションは、各断片にコピーされないで、最初の断片だけに現れます。
The currently defined values of chksum are:
chksumの現在定義された値は以下の通りです。
0 -- TCP checksum 1 -- 8-bit Fletcher's algorithm (see Appendix I) 2 -- 16-bit Fletcher's algorithm (see Appendix II)
0--アルゴリズム(Appendix Iを見る)のTCPのチェックサムの1 -- 8ビットのフレッチャーの2 -- 16ビットのフレッチャーのアルゴリズム(付録IIを見ます)
Note that the 8-bit Fletcher algorithm gives a 16-bit checksum and the 16-bit algorithm gives a 32-bit checksum.
8ビットのフレッチャーアルゴリズムが16ビットのチェックサムを与えて、16ビットのアルゴリズムが32ビットのチェックサムを与えることに注意してください。
Alternate checksum negotiation proceeds as follows:
代替のチェックサム交渉は以下の通り続きます:
A SYN segment used to originate a connection may contain the Alternate Checksum Request Option, which specifies an alternate checksum-calculation algorithm to be used for the connection. The acknowledging SYN-ACK segment may also carry the option.
接続を溯源するのに使用されるSYNセグメントはAlternate Checksum Request Optionを含むかもしれません。(Alternate Checksum Request Optionは、接続に使用されるために代替のチェックサム計算アルゴリズムを指定します)。 また、承認しているSYN-ACKセグメントはオプションを運ぶかもしれません。
If both SYN segments carry the Alternate Checksum Request option, and both specify the same algorithm, that algorithm must be used for the remainder of the connection. Otherwise, the standard TCP checksum algorithm must be used for the entire connection. Thus, for example, if one TCP specifies type 1 checksums, and the other specifies type 2 checksums, then they will use type 0 (the regular TCP checksum). Note that in practice, one TCP will typically be responding to the other's SYN, and thus either accepting or rejecting the proposed alternate checksum algorithm.
両方のSYNセグメントがAlternate Checksum Requestオプションを運んで、両方が同じアルゴリズムを指定するなら、接続の残りにそのアルゴリズムを使用しなければなりません。 さもなければ、全体の接続に標準のTCPチェックサムアルゴリズムを使用しなければなりません。 このようにして、例えば、1TCPがタイプ1チェックサムを指定して、もう片方がタイプ2チェックサムを指定すると、それらはタイプ0(通常のTCPチェックサム)を使用するでしょう。 その結果、1TCPが実際には、提案された代替のチェックサムアルゴリズムを通常もう片方のSYNに応じて、受け入れるか、または拒絶することに注意してください。
Any segment with the SYN bit set must always use the standard TCP checksum algorithm. Thus the SYN segment will always be understood by the receiving TCP. The alternate checksum must not be used until the first non-SYN segment. In addition, because RST segments may also be received or sent without complete state information, any segment with the RST bit set must use the standard TCP checksum.
SYNビットがセットしたことでのどんなセグメントもいつも標準のTCPチェックサムアルゴリズムを使用しなければなりません。 したがって、SYNセグメントはいつも受信TCPに解釈されるでしょう。 最初の非SYNセグメントまで代替のチェックサムを使用してはいけません。 さらに、RSTビットがセットしたことでのどんなセグメントも、また、完全な州の情報なしでRSTセグメントを受け取るか、または送るかもしれないので、標準のTCPチェックサムを使用しなければなりません。
The option may not be sent in any segment that does not have the SYN bit set.
オプションはSYNビットを設定しないどんなセグメントでも送られないかもしれません。
An implementation of TCP which does not support the option should silently ignore it (as RFC 1122 requires). Ignoring the option will force any TCP attempting to use an alternate checksum to use the standard TCP checksum algorithm, thus ensuring interoperability.
オプションをサポートしないTCPの実装は静かにそれを無視するべきです(RFC1122が必要であるように)。 代替のチェックサムを使用するのを試みるどんなTCPもオプションを無視するので、やむを得ず標準のTCPチェックサムアルゴリズムを使用するでしょう、その結果、相互運用性を確実にします。
Zweig & Partridge [Page 2] RFC 1145 TCP Alternate Checksum Options February 1990
ツバイクとヤマウズラ[2ページ]RFC1145TCPはチェックサムオプション1990年2月に交替します。
TCP Alternate Checksum Data Option
TCPの代替のチェックサムデータオプション
The format of the TCP Alternate Checksum Data Option is:
TCP Alternate Checksum Data Optionの形式は以下の通りです。
+---------+---------+---------+ +---------+ | Kind=15 |Length=N | data | ... | data | +---------+---------+---------+ +---------+
+---------+---------+---------+ +---------+ | 種類=15|長さはNと等しいです。| データ| ... | データ| +---------+---------+---------+ +---------+
This field is used only when the alternate checksum that is negotiated is longer than 16 bits. These checksums will not fit in the checksum field of the TCP header and thus at least part of them must be put in an option. Whether the checksum is split between the checksum field in the TCP header and the option or the entire checksum is placed in the option is determined on a checksum by checksum basis.
交渉される代替のチェックサムが16ビットより長いときにだけ、この分野は使用されています。 これらのチェックサムはTCPヘッダーのチェックサム分野をうまくはめ込まないでしょう、そして、その結果、少なくともそれらの一部をオプションに入れなければなりません。 チェックサムがTCPヘッダーのチェックサム分野とオプションの間で分けられるか、または全体のチェックサムがオプションに置かれるかが、チェックサム基礎によるチェックサムで決定しています。
The length of this option will depend on the choice of alternate checksum algorithm for this connection.
このオプションの長さはこの接続のために代替のチェックサムアルゴリズムの選択に依存するでしょう。
This option is not copied into each fragment, and appears only in the first fragment.
このオプションは、各断片にコピーされないで、最初の断片だけに現れます。
While computing the alternate checksum, the TCP checksum field and the data portion TCP Alternate Checksum Data Option are replaced with zeros.
代替のチェックサムを計算している間、TCPチェックサム分野とデータ部TCP Alternate Checksum Data Optionをゼロに取り替えます。
An otherwise acceptable segment carrying this option on a connection using a 16-bit checksum algorithm, or carrying this option with an inappropriate number of data octets for the chosen alternate checksum algorithm is in error and must be discarded; a RST-segment must be generated, and the connection aborted.
選ばれた代替のチェックサムアルゴリズムを間違って、捨てなければならないので16ビットのチェックサムアルゴリズムを使用することでこのオプションを接続まで運ぶか、または不適当な数のデータ八重奏でこのオプションを運ぶそうでなければ、許容できるセグメント。 RST-セグメントを生成しなければなりませんでした、そして、接続は中止になりました。
Note the requirement above that RST and SYN segments must always use the standard TCP checksum.
そのRSTとSYNセグメントを超えた要件がいつも標準のTCPチェックサムを使用しなければならないことに注意してください。
APPENDIX I: The 8-bit Fletcher Checksum Algorithm
付録I: 8ビットの矢製造人チェックサムアルゴリズム
The 8-bit Fletcher Checksum Algorithm is calculated over a sequence of data octets (call them D[1] through D[N]) by maintaining 2 unsigned 1's-complement 8-bit accumulators A and B whose contents are initially zero, and performing the following loop where i ranges from 1 to N:
8ビットのフレッチャーChecksum Algorithmはデータ八重奏の系列に関して計算されます。(D[N])を通して初めはコンテンツがことである2の未署名の1補数8ビットのアキュムレータAとBゼロを維持して、iが1〜Nまで及ぶ以下の輪を実行することによって、それらをD[1]と呼んでください:
A := A + D[i] B := B + A
:=A+D[i]B:=B+A
It can be shown that at the end of the loop A will contain the 8-bit 1's complement sum of all octets in the datagram, and that B will
輪の端にAがデータグラムでのすべての八重奏の8ビットの1の補数合計を含むのをそれを示すことができて、そのBは示されるでしょう。
Zweig & Partridge [Page 3] RFC 1145 TCP Alternate Checksum Options February 1990
ツバイクとヤマウズラ[3ページ]RFC1145TCPはチェックサムオプション1990年2月に交替します。
contain (N)D[1] + (N-1)D[2] + ... + D[N].
(N) D[1]+(N-1)D[2]+を含んでください… + D[N]。
The octets covered by this algorithm should be the same as those over which the standard TCP checksum calculation is performed, with the pseudoheader being D[1] through D[12] and the TCP header beginning at D[13]. Note that, for purposes of the checksum computation, the checksum field itself must be equal to zero.
このアルゴリズムでカバーされた八重奏は標準のTCPチェックサム計算が実行されるそれらと同じであるべきです、pseudoheaderがD[1]からD[12]であり、TCPヘッダーがD[13]で始まっていて。 チェックサム計算の目的に、チェックサム分野自体がゼロに合わせるために等しくなければならないことに注意してください。
At the end of the loop, the A goes in the first byte of the TCP checksum and B goes in the second byte.
輪の端では、AはTCPチェックサムの最初のバイトに入ります、そして、Bは2番目のバイトに入ります。
Note that, unlike the OSI version of the Fletcher checksum, this checksum does not adjust the check bytes so that the receiver checksum is 0.
受信機チェックサムが0であるようにこのチェックサムがフレッチャーチェックサムのOSIバージョンと異なってチェックバイトを調整しないことに注意してください。
There are a number of much faster algorithms for calculating the two octets of the 8-bit Fletcher checksum. For more information see [Sklower89], [Nakassis88] and [Fletcher82]. Naturally, any computation which computes the same number as would be calculated by the loop above may be used to calculate the checksum. One advantage of the Fletcher algorithms over the standard TCP checksum algorithm is the ability to detect the transposition of octets/words of any size within a datagram.
8ビットのフレッチャーチェックサムの2つの八重奏について計算するための多くのはるかに速いアルゴリズムがあります。 詳しい情報に関しては、[Sklower89]、[Nakassis88]、および[Fletcher82]を見てください。 当然、上の輪によって計算されるように同じ数を計算するどんな計算も、チェックサムについて計算するのに使用されるかもしれません。 標準のTCPチェックサムアルゴリズムの上のフレッチャーアルゴリズムの1つの利点がデータグラムの中のどんなサイズの八重奏/単語の転置も検出する能力です。
APPENDIX II: The 16-bit Fletcher Checksum Algorithm
付録II: 16ビットの矢製造人チェックサムアルゴリズム
The 16-bit Fletcher Checksum algorithm proceeds in precisely the same manner as the 8-bit checksum algorithm,, except that A, B and the D[i] are 16-bit quantities. It is necessary (as it is with the standard TCP checksum algorithm) to pad a datagram containing an odd number of octets with a zero octet.
16ビットのフレッチャーChecksumアルゴリズムは正確に8ビットのチェックサムアルゴリズムと同じ方法で続きます、そのAを除いたB、D[i]は16ビットの量です。 ゼロで八重奏の奇数に八重奏を含むデータグラムを水増しするのが必要です(それが標準のTCPチェックサムアルゴリズムであるとき)。
Result A should be placed in the TCP header checksum field and Result B should appear in an TCP Alternate Checksum Data option. This option must be present in every TCP header. The two bytes reserved for B should be set to zero during the calculation of the checksum.
結果AはTCPヘッダーチェックサム分野に置かれるべきです、そして、Result BはTCP Alternate Checksum Dataオプションに現れるはずです。 このオプションはすべてのTCPヘッダーに存在していなければなりません。 Bのために予約された2バイトはチェックサムの計算の間、ゼロに設定されるべきです。
The checksum field of the TCP header shall contain the contents of A at the end of the loop. The TCP Alternate Checksum Data option must be present and contain the contents of B at the end of the loop.
TCPヘッダーのチェックサム分野は輪の端にAのコンテンツを含むものとします。 TCP Alternate Checksum Dataオプションは、存在していて、輪の端にBのコンテンツを含まなければなりません。
BIBLIOGRAPHY:
図書目録:
[BrBoPa89] Braden, R., Borman, D., and C. Partridge, "Computing the Internet Checksum", ACM Computer Communication Review, Vol. 19, No. 2, pp. 86-101, April 1989. [Note that this includes Plummer, W. "IEN-45: TCP Checksum Function Design" (1978) as an appendix.]
[BrBoPa89] ブレーデン、R.、ボーマン、D.、およびC.Partridge、「インターネットチェックサムを計算します」、ACMコンピュータCommunication Review、Vol.19、No.2、ページ 86-101と、1989年4月。 [これがプラマー、W.を含んでいることに注意してください、「IEN-45:」 付録としての"TCP Checksum Function Design"(1978)。]
Zweig & Partridge [Page 4] RFC 1145 TCP Alternate Checksum Options February 1990
ツバイクとヤマウズラ[4ページ]RFC1145TCPはチェックサムオプション1990年2月に交替します。
[Fletcher82] Fletcher, J., "An Arithmetic Checksum for Serial Transmissions", IEEE Transactions on Communication, Vol. COM-30, No. 1, pp. 247-252, January 1982.
[Fletcher82] フレッチャー、J.、「直列伝送のための算数のチェックサム」、Communication、Vol.COM-30、No.1、ページのIEEE Transactions 247-252と、1982年1月。
[Nakassis88] Nakassis, T., "Fletcher's Error Detection Algorithm: How to implement it efficiently and how to avoid the most common pitfalls", ACM Computer Communication Review, Vol. 18, No. 5, pp. 86-94, October 1988.
[Nakassis88]Nakassis、T.、「のフレッチャー誤り検出アルゴリズム:、」 「どう効率的にそれを実装するか、そして、どう最も一般的な落とし穴を避ける」、ACMコンピュータCommunication Review、Vol.18、No.5、ページ 86-94と、1988年10月。
[Sklower89] Sklower, K., "Improving the Efficiency of the OSI Checksum Calculation", ACM Computer Communication Review, Vol. 19, No. 5, pp. 32-43, October 1989.
[Sklower89] Sklower、K.、「OSIチェックサム計算について能率を上げる」ACMコンピュータCommunication Review、Vol.19、No.5、ページ 32-43と、1989年10月。
Security Considerations
セキュリティ問題
Security issues are not addressed in this memo.
安全保障問題はこのメモで扱われません。
Authors' Addresses
作者のアドレス
Johnny Zweig Digital Computer Lab University of Illinois (UIUC) 1304 West Springfield Avenue CAMPUS MC 258 Urbana, IL 61801
258アーバナ、ジョニーツバイクディジタルコンピュータ研究室のイリノイ(UIUC)の1304のWestスプリングフィールドアベニュー大学のキャンパスM.C.イリノイ 61801
Phone: (217) 333-7937
以下に電話をしてください。 (217) 333-7937
EMail: zweig@CS.UIUC.EDU
メール: zweig@CS.UIUC.EDU
Craig Partridge Bolt Beranek and Newman Inc. 50 Moulton Street Cambridge, MA 02138
モールトン・通りケンブリッジ、クレイグヤマウズラボルトBeranekとニューマン株式会社50MA 02138
Phone: (617) 873-2459
以下に電話をしてください。 (617) 873-2459
EMail: craig@BBN.COM
メール: craig@BBN.COM
Zweig & Partridge [Page 5]
ツバイクとヤマウズラ[5ページ]
一覧
スポンサーリンク