[[ネットワーク用語]] > シーケンス番号

* シーケンス番号 [#je453c9d]

シーケンス番号 = sequence number

[[シーケンス番号 - ASCII.jpデジタル用語辞典>http://yougo.ascii.jp/caltar/%E3%82%B7%E3%83%BC%E3%82%B1%E3%83%B3%E3%82%B9%E7%95%AA%E5%8F%B7]]
>シーケンス番号
[[TCP]]で通信する場合、クライアント/サーバー間で[[コネクション]]を確立する際にシーケンス番号を同期する。
やりとりされる[[パケット]]の[[TCPヘッダー>TCPヘッダ]]内のシーケンス番号を確認することで、&color(red){パケットの順番や欠落の有無を確認};できる。

[[シーケンス番号(―ばんごう。Sequence Number):RBB TODAY (ブロードバンド辞典)>http://dictionary.rbbtoday.com/Details/term286.html]]
>シーケンス番号(―ばんごう。Sequence Number)
 
TCPの上位層からTCPに渡されたデータがある程度大きい場合、データは決まった大きさ(MSS:Maximum Segment Size、最大セグメント長)に分割された後、TCPパケットに格納されて送信されます。
このTCPパケットのヘッダ部には、「このパケットが格納しているデータは、元データのどの部分に当たるか」という情報が含まれています。
この情報は、「シーケンス番号」(順序番号)と呼ばれる32ビットの数値で表されます。
シーケンス番号は、コネクションの開始時に決めた「初期シーケンス番号」とデータの先頭からのバイト数で決定されます。
 
例えば、コネクションの初期シーケンス番号が10000の場合、最初の1バイト目のデータを転送するTCPパケットのシーケンス番号は、「10001」になり、先頭から1000バイト目のデータを転送するTCPパケットのシーケンス番号は、「11000」になります。

CENTER:&ref(fig06.gif);
>http://www.atmarkit.co.jp/fwin2k/network/tcpip004/tcpip04.html
''シーケンス番号''
TCPはデータ列のオクテットごとに先頭から順番にシーケンス番号を付けている。
データ列をセグメントに分割して送信するときに、そのセグメントに含まれるデータの最初のシーケンス番号を通知する。
受信側はそのシーケンス番号を元にデータ列を復元する。

[[@IT:連載 基礎から学ぶWindowsネットワーク 第14回 信頼性のある通信を実現するTCPプロトコル(その1) 2.シーケンス番号とウィンドウ制御>http://www.atmarkit.co.jp/fwin2k/network/baswinlan014/baswinlan014_03.html]]
>''シーケンス番号とウィンドウ・サイズ''
 
[[TCP]]プロトコルにおける送受信では、シーケンス番号と[[ウィンドウ・サイズ>ウィンドウサイズ]]が重要な意味を持つ。
-「シーケンス番号」は、これから送受信しようとしている&color(red){データの位置};、
-「[[ウィンドウ・サイズ>ウィンドウサイズ]]」は送信可能な&color(red){データの最大サイズ};である。

>ウィンドウ・サイズが大きくなると、一度に送信できるデータの最大サイズが増え、逆に小さくなると送信できるサイズも少なくなる。
この値は通信につれて動的に変更されるが、初期値は[[TCP/IP]]の実装やアプリケーションの指定などによって変更される。
 
一般的にはウィンドウ・サイズの初期値は数Kbytesから数十Kbytes程度である。
この値は16bitの符号なし整数値で表現されるので、最大なら64Kbytesまで拡大することも可能であるが、現在ではTCP/IPの規格が拡張され、さらに大きなサイズにすることも可能となっている。
ただしウィンドウ・サイズを大きくすると、その分プロトコル・スタックで使用するメモリ領域も増えることになるので、大きければよいというものでもない。
またこの値は、MSS(Maximum Segment Size)とも関係するので、どのような値でもよいというわけではない
またこの値は、[[MSS]](Maximum Segment Size)とも関係するので、どのような値でもよいというわけではない

** リンク [#ha7bb6ef]
[[TCPヘッダ]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS