TCP/IP第三次握手失败,会怎样?该如何处理

TCP/IP第三次握手失败,会怎样?
如题。

------解决方案--------------------
情况tcp状态迁移顺序,用监视软件,netstat...看看
------解决方案--------------------
惭愧惭愧,我说的不对,计时器应该是在服务端,它发送了SYN,ACK报文后,若迟迟接不到对这个报文的回复,那么它就认为刚刚发送的报文丢失了,应该重新发送SYN,ACK报文,我说的这些不权威,计网书上没有提到,TCP/IP详解上不知道会不会有,你可以去看看。
就我的理解,一个协议要保证可靠性,无非就那几种策略,服务端收到有错的就丢弃,没有错误就回复确认,客户端收到确认就可以肯定服务端收到了,没有收到确认那有可能是服务端确实没有收到数据,有可能确认报文丢失了,这时只要规定时间没有收到确认,客户端就得重传,做最坏的打算么,你不能假设服务端收到了对吧。
我之前做过一个基于UDP的应用,主要就是考虑UDP开销小,UDP是不可靠的,但我们的需求是要可靠,这就得在应用层来做一些工作,比如加入CRC校验,设置定时器,客户端进行超时重传,理解到这里就够了吧。
你去哪家的面试啊?我感觉问协议的不多啊
------解决方案--------------------
失败后就相当于DDOS攻击一样,会存在半联接,在超时之前,就会占用服务器资源。
------解决方案--------------------
说下自己的思路(理论基于BSD4.4的TCP/IP详解II)
1. 第三次握手失败,那应该是说ack不匹配而不是未等到远端报文。
2. 通过状态图可以知道,当前服务器是处于SYN_RCVD状态
对应的ack报文处理代码如下
C/C++ code
   case TCPS_SYS_RECEIVED:
      if (SEQ_GT(tp->snd_una, ti->ti_ack) || SEQ_GET(ti->ti_ack, tp>snd_max))
        goto dropwithreset;
      xxx//接口从q0调入q,更新状态为ESTABLISHED等等。