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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | (1) | (2) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | (3) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | (4) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | (5) | (6) | (7) | (8) | | | |a|b|c|d|e|f|g|h| | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | (9) | (10) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | (11) | (12) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | data | : : TCP Header Format http://www.ietf.org/rfc/rfc793.txt
オプションのないTCPヘッダは、オプションのないIPv4ヘッダと同じく20バイト。
(1) Source Port(送信元ポート番号(16bit))
(2) Destination Port(宛先ポート番号(16bit))
(3) Sequence Number(シーケンス番号:送信データの位置をオクテット単位で示す。(32bit→0〜4,294,967,296))
(4) Acknowledgment Number(確認応答番号:次に受信すべきデータのシーケンス番号を示す。(32bit→0〜4,294,967,296))
(5) Data Offset(データオフセット:TCPヘッダ長に相当。4オクテット単位で示す。(4bit→20〜64バイト))
(6) Reserved(予約:拡張用。昔は6bitだったがCRWとECEができて4bitに減った。)
(7) Control Flag(コントロールフラグ:SYNやACKなど。(8bit))
(7a) CWR(Congestion Window Reduced)(ECEを受け、輻輳ウインドウを小さくしたことを相手に伝える。)
(7b) ECE(ECN-Echo)(相手側からこちらへの通信が輻輳していることを伝える。)
(7c) URG(Urgent Pointer field significant)(緊急に処理すべきデータが含まれていることを伝える。データの位置は緊急ポインタで伝える。…多分有効に使われてない。)
(7d) ACK(Acknowledgment field significant)(返答であることを伝える。確認応答番号が有効であることを伝える。コネクション確立時を除けば必ず立てる。)
(7e) PSH(Push Function)(データを速やかに上位アプリケーションに渡すことを伝える。…これも多分有効に使われてない。)
(7f) RST(Reset the connection)(コネクションの強制切断を伝える。)
(7g) SYN(Synchronize sequence numbers)(コネクション確立希望を伝える。)
(7h) FIN(No more data from sender)(コネクション切断を伝える。)
(8) Window(ウインドウサイズ:確認応答番号で示した位置から受信可能なデータサイズをオクテット単位で示す。(16bit→0〜65535バイト))
(9) Checksum(チェックサム:TCP疑似ヘッダを追加したTCPセグメントのチェックサム。計算方法などはhttp://www.mew.org/~kazu/bsdmag/cksum.htmlが詳しい。(16bit))
TCPセグメント長はIPヘッダのパケット長とTCPヘッダのデータオフセット(TCPヘッダ長)とから計算する必要がある。
TCP疑似ヘッダ +--------+--------+--------+--------+ | 送信元IPアドレス | +--------+--------+--------+--------+ | 宛先IPアドレス | +--------+--------+--------+--------+ |00000000|00000110| TCPセグメント長 |←前は0パディングとプロトコル番号(TCPは6) +--------+--------+--------+--------+ | TCPセグメント | : :
(10) Urgent Pointer(緊急ポインタ:緊急処理データの位置を伝える。データ先頭からの長さをオクテット単位で伝える。(16bit→0〜65535バイト))
(11) Options(オプション(任意の長さ))
EOL(End of Option List):オプション終了 | タイプ0 |
NOOP(No-Operation):パディング | タイプ1 |
MSS(Maximum Segment Size):最大セグメント長 | タイプ2 |
WSOPT(Window Scale):ウインドウスケールオプション | タイプ3 |
SACK Permitted:選択確認応答許可 | タイプ4 |
SACK(Selective Acknowledgment):選択確認応答 | タイプ5 |
TSOPT(Time Stamp Option)タイムスタンプ | タイプ8 |
(12) Padding(詰め物:オプションの長さと合わせて32bitの整数倍になるよう0を入れる。)
2014 ネットワークスペシャリスト「専門知識+午後問題」の重点対策 (専門分野シリーズ)
- 作者: 長谷和幸
- 出版社/メーカー: アイテック
- 発売日: 2014/06/04
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (16件) を見る
2014 徹底解説ネットワークスペシャリスト本試験問題 (本試験問題シリーズ)
- 作者: アイテック教育研究開発部
- 出版社/メーカー: アイテック
- 発売日: 2014/03/28
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
ネットワークスペシャリスト分野別予想問題集 (情報処理技術者試験対策書)
- 作者: アイテック教育研究開発部
- 出版社/メーカー: アイテック
- 発売日: 2013/08/16
- メディア: 単行本
- この商品を含むブログを見る