RST パケット

広告

広告

RST パケットとは

最終更新
2004-12-26T00:00:00+09:00
この記事のURI参照
http://www.7key.jp/nw/tcpip/tcp/rst.html#rst

TCPコネクションが確立されている際に、通常の流れではお互いに「FIN パケット」を送り合いコネクションの開放を行います(詳細はコネクションとはを参照)。今回はコネクション確立の際に不測の事態が起こったらどうするのか、を見ていきましょう。例えば、通信途中に相手端末がいきなりダウンしてしまったと仮定します。もちろんダウンする際にFIN パケットを送るような余裕はありませんので、残った端末はいなくなった相手に対してデータを送り続けることになります。このような場合、残った端末はパケットを何度か再送し、それでも返事が返ってこなければあきらめてコネクションを切断するのですが、あきらめるまでに相手端末が再起動した場合はどうなるでしょうか。もちろん再起動した端末は、前回確立されていたコネクションなんて覚えていません。よくわからないけれど何かデータパケットを送信してくる端末がいる。そのような場合に返すパケットがRST パケット(Reset)なのです。実際には RST(Reset)を読んで字のごとく「コネクションのリセットを要求」と言う意味のパケットなので、コネクションの確立からやり直すのが本来の動作なのでしょうが、そんなこと無理ですよね。どこまでデータを送信したか、受け取ったかなんてこともわからないですし。そんな理由から実質的に RST パケットは「強制切断用パケット」として機能します。

補足

最終更新
2004-12-26T00:00:00+09:00
この記事のURI参照
http://www.7key.jp/nw/tcpip/tcp/rst.html#supplement

ソケットが切断状態であれば全てのパケットに対して RST パケットが返される。サーバにSYN パケットを送りつけ RST パケットが返ってきたならば、サーバアプリケーションが起動していないと予測できる。

広告

Copyright (C) 2004 七鍵 key@do.ai 初版:2004年12月26日 最終更新:2004年12月26日