[FIN, ACK]
、[RST]
、および[RST, ACK]
の理由と回避方法は何ですか?
SOのTCPパラメーター間の不一致が原因ですか?サーバーがTCP/IP接続で[FIN, ACK]
と応答するとき、それはどういう意味ですか?
10.118.113.237
はSolarisボックスで、10.118.110.63
はLinuxボックスです。
No. Time Source Destination Protocol Length Info
1 0.000000000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 39679 [FIN, ACK] Seq=1 Ack=1 Win=49232 Len=0 TSval=62389927 TSecr=355193509
2 0.000015000 10.118.110.63 10.118.113.237 TCP 56 39679 > mmpft [RST] Seq=1 Win=0 Len=0
4 0.119357000 10.118.110.63 10.118.113.237 TCP 68 39707 > mmpft [ACK] Seq=1 Ack=93 Win=54 Len=0 TSval=355208473 TSecr=62389939
5 0.119475000 10.118.113.237 10.118.110.63 TCP 62 mmpft > 39707 [RST, ACK] Seq=93 Ack=1 Win=0 Len=0
6 0.321336000 10.118.110.63 10.118.113.237 TCP 76 55603 > mmpft [SYN] Seq=0 Win=5840 Len=0 MSS=1460 SACK_PERM=1 TSval=355208524 TSecr=0 WS=128
7 0.321835000 10.118.113.237 10.118.110.63 TCP 80 mmpft > 55603 [SYN, ACK] Seq=0 Ack=1 Win=49232 Len=0 TSval=62389959 TSecr=355208524 MSS=1460 WS=1 SACK_PERM=1
8 0.321854000 10.118.110.63 10.118.113.237 TCP 68 55603 > mmpft [ACK] Seq=1 Ack=1 Win=5888 Len=0 TSval=355208524 TSecr=62389959
9 0.322552000 10.118.110.63 10.118.113.237 DIAMETER 276 cmd=Capabilities-ExchangeRequest(257) flags=R--- appl=Diameter Common Messages(0) h2h=3f3197c e2e=e9200846
10 0.322891000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 55603 [ACK] Seq=1 Ack=209 Win=49024 Len=0 TSval=62389959 TSecr=355208524
11 0.342554000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 39707 [FIN, ACK] Seq=93 Ack=1 Win=49232 Len=0 TSval=62389961 TSecr=355200968
12 0.342567000 10.118.110.63 10.118.113.237 TCP 56 39707 > mmpft [RST] Seq=1 Win=0 Len=0
13 0.346940000 10.118.113.237 10.118.110.63 DIAMETER 312 cmd=Capabilities-ExchangeAnswer(257) flags=---- appl=Diameter Common Messages(0) h2h=3f3197c e2e=e9200846
14 0.347021000 10.118.110.63 10.118.113.237 TCP 68 55603 > mmpft [ACK] Seq=209 Ack=245 Win=6912 Len=0 TSval=355208530 TSecr=62389961
15 4.288733000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 39652 [FIN, ACK] Seq=1 Ack=1 Win=49232 Len=0 TSval=62390356 TSecr=355186382
16 4.288757000 10.118.110.63 10.118.113.237 TCP 56 39652 > mmpft [RST] Seq=1 Win=0 Len=0
17 4.398722000 10.118.113.237 10.118.110.63 DIAMETER 160 [TCP Retransmission] cmd=Device-WatchdogRequest(280) flags=R--- appl=Diameter Common Messages(0) h2h=f889ad2 e2e=5f8035e4
18 4.398734000 10.118.110.63 10.118.113.237 TCP 56 39707 > mmpft [RST] Seq=1 Win=0 Len=0
19 4.938748000 10.118.113.237 10.118.110.63 DIAMETER 160 cmd=Device-WatchdogRequest(280) flags=R--- appl=Diameter Common Messages(0) h2h=f889ad0 e2e=5f8035df
20 4.938770000 10.118.110.63 10.118.113.237 TCP 56 39598 > mmpft [RST] Seq=1 Win=0 Len=0
21 5.498759000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 39544 [FIN, ACK] Seq=1 Ack=1 Win=49232 Len=0 TSval=62390477 TSecr=355156526
22 5.498783000 10.118.110.63 10.118.113.237 TCP 56 39544 > mmpft [RST] Seq=1 Win=0 Len=0
23 5.648780000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 55774 [FIN, ACK] Seq=1 Ack=1 Win=49232 Len=0 TSval=62390492 TSecr=355111580
24 5.648804000 10.118.110.63 10.118.113.237 TCP 56 55774 > mmpft [RST] Seq=1 Win=0 Len=0
25 5.942885000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 55828 [FIN, ACK] Seq=1 Ack=1 Win=49232 Len=0 TSval=62390521 TSecr=355126129
26 5.942901000 10.118.110.63 10.118.113.237 TCP 56 55828 > mmpft [RST] Seq=1 Win=0 Len=0
27 6.668742000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 55666 [FIN, ACK] Seq=1 Ack=1 Win=49232 Len=0 TSval=62390594 TSecr=355081310
28 6.668760000 10.118.110.63 10.118.113.237 TCP 56 55666 > mmpft [RST] Seq=1 Win=0 Len=0
29 7.258815000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 55720 [FIN, ACK] Seq=1 Ack=1 Win=49232 Len=0 TSval=62390653 TSecr=355096418
31 7.418827000 10.118.113.237 10.118.110.63 DIAMETER 160 cmd=Device-WatchdogRequest(280) flags=R--- appl=Diameter Common Messages(0) h2h=f889acd e2e=5f8035d9
32 7.418835000 10.118.110.63 10.118.113.237 TCP 56 39490 > mmpft [RST] Seq=1 Win=0 Len=0
33 12.948752000 10.118.113.237 10.118.110.63 DIAMETER 160 [TCP Retransmission] cmd=Device-WatchdogRequest(280) flags=R--- appl=Diameter Common Messages(0) h2h=f889ad2 e2e=5f8035e4
34 12.948776000 10.118.110.63 10.118.113.237 TCP 56 39707 > mmpft [RST] Seq=1 Win=0 Len=0
35 30.030087000 10.118.113.237 10.118.110.63 DIAMETER 160 [TCP Retransmission] cmd=Device-WatchdogRequest(280) flags=R--- appl=Diameter Common Messages(0) h2h=f889ad2 e2e=5f8035e4
36 30.030113000 10.118.110.63 10.118.113.237 TCP 56 39707 > mmpft [RST] Seq=1 Win=0 Len=0
38 30.369302000 10.118.110.63 10.118.113.237 TCP 68 55603 > mmpft [ACK] Seq=209 Ack=337 Win=6912 Len=0 TSval=355216035 TSecr=62392964
39 30.369413000 10.118.113.237 10.118.110.63 TCP 62 mmpft > 55603 [RST, ACK] Seq=337 Ack=209 Win=0 Len=0
40 30.571231000 10.118.110.63 10.118.113.237 TCP 76 55630 > mmpft [SYN] Seq=0 Win=5840 Len=0 MSS=1460 SACK_PERM=1 TSval=355216086 TSecr=0 WS=128
41 30.571603000 10.118.113.237 10.118.110.63 TCP 80 mmpft > 55630 [SYN, ACK] Seq=0 Ack=1 Win=49232 Len=0 TSval=62392984 TSecr=355216086 MSS=1460 WS=1 SACK_PERM=1
42 30.571620000 10.118.110.63 10.118.113.237 TCP 68 55630 > mmpft [ACK] Seq=1 Ack=1 Win=5888 Len=0 TSval=355216086 TSecr=62392984
43 30.572253000 10.118.110.63 10.118.113.237 DIAMETER 276 cmd=Capabilities-ExchangeRequest(257) flags=R--- appl=Diameter Common Messages(0) h2h=3f3197d e2e=e9200847
44 30.572638000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 55630 [ACK] Seq=1 Ack=209 Win=49232 Len=0 TSval=62392984 TSecr=355216086
45 30.579815000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 55603 [FIN, ACK] Seq=337 Ack=209 Win=49232 Len=0 TSval=62392985 TSecr=355208530
46 30.579826000 10.118.110.63 10.118.113.237 TCP 56 55603 > mmpft [RST] Seq=209 Win=0 Len=0
47 30.581517000 10.118.113.237 10.118.110.63 DIAMETER 312 cmd=Capabilities-ExchangeAnswer(257) flags=---- appl=Diameter Common Messages(0) h2h=3f3197d e2e=e9200847
48 30.581553000 10.118.110.63 10.118.113.237 TCP 68 55630 > mmpft [ACK] Seq=209 Ack=245 Win=6912 Len=0 TSval=355216088 TSecr=62392985
49 34.138766000 10.118.113.237 10.118.110.63 TCP 68 mmpft > 39679 [FIN, ACK] Seq=1 Ack=1 Win=49232 Len=0 TSval=62393341 TSecr=355193509
50 34.138790000 10.118.110.63 10.118.113.237 TCP 56 39679 > mmpft [RST] Seq=1 Win=0 Len=0
ここに概念の大まかな説明があります。
[ACK]
は、以前に送信されたデータパケットが受信されたことの確認です。
[FIN]
は、ホストが接続を終了するときに送信します。 TCPプロトコルでは、両方のエンドポイントが終了要求を送信する必要があります(つまり、FIN
)。
だから、
[FIN,ACK]
で応答し、送信されたパケットを受信し、セッションを閉じたいことを示します。[FIN,ACK]
で応答し、終了要求(ACK
部分)を受け取ったことと、接続も閉じます(FIN
部分)。ただし、ホストAがパケット送信後にセッションを閉じたい場合、[FIN]
パケット(確認応答なし)のみを送信しますが、 ホストBは[FIN,ACK]
で応答します(要求を確認し、FIN
で応答します)。
最後に、いくつかのTCPスタックは半二重終端を実行します。つまり、通常の[RST]
の代わりに[FIN,ACK]
を送信できます。これは、ホストがLinuxは、送信されたすべてのデータを処理しますLinuxは、まさにこれを行う1つのオペレーティングシステムです。
より詳細で包括的な説明を見つけることができます こちら 。