This is our old Q&A Site. Please post any new questions and answers at

Hi All,

Please advise on the below. I checked and RST-ACK is like FIN-ACK to close the connection. The problem is when this happens the webpage is not displayed.

Say the TCP session is between and>syn>syn-ack>ack

------Omittied the data transfer------- -->RST,ACk


1)Without the (Fin-ACK) from, can send (RST-ACK)?

2)If the above is yes, should send (FIN-ACK) after (RST-ACK)? 3)Is the above Communication valid between the server and the client?


asked 14 Nov '15, 00:12

rakeshreddy's gravatar image

accept rate: 0%

1) Yes, the server can actively terminate the connection any time it considers appropriate.

2) When the client gets the RST packet it makes no sense to send a FIN as the remote socket is no longer there to ACK it.

3) It causes the passive side to see a broken connection so it's not nice but valid and it's not uncommon to see a RST (abortive close) these days


When to use SO_LINGER with timeout 0

... according to "UNIX Network Programming" third edition page 202-203, setting SO_LINGER with timeout 0 prior to calling close() will cause the normal termination sequence not to be initiated.

Instead, the peer setting this option and calling close() will send a RST (connection reset) which indicates an error condition and this is how it will be perceived at the other end. You will typically see errors like "Connection reset by peer".

Therefore, in the normal situation it is a really bad idea to set SO_LINGER with timeout 0 prior to calling close() – from now on called abortive close – in a server application.

permanent link

answered 14 Nov '15, 23:24

mrEEde's gravatar image

accept rate: 20%

Thanks. Make sense.

(14 Nov '15, 23:36) rakeshreddy
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 14 Nov '15, 00:12

question was seen: 4,066 times

last updated: 15 Nov '15, 01:34

p​o​w​e​r​e​d by O​S​Q​A