第五步,假如SYN或RST位没有设置,抛弃数据段返回 。
下来我们来看看其它状态 。首先应该检查序列号 。在下面状态下
SYN-RECEIVED状态
ESTABLISHED状态
FIN-WAIT-1状态
FIN-WAIT-2状态
CLOSE-WAIT状态
CLOSING状态
LAST-ACK状态
TIME-WAIT状态
段按顺序处理,首先抛弃重复的段,对于以后的处理要根据SEG.SEQ的大小进行 。假如有的段内的新老内容重叠在一起,那只用处理新的那一部分 。下面是对接收到的数据的可接受性测试中的四种情况:
段长度
接收窗口
测试
0
0
SEG.SEQ = RCV.NXT
0
>0
RCV.NXT =< SEG.SEQ < RCV.NXT RCV.WND
>0
0
不接受
>0
>0
RCV.NXT =< SEG.SEQ < RCV.NXT RCV.WND或RCV.NXT =< SEG.SEQ SEG.LEN-1 < RCV.NX
T RCV.WND
假如RCV.WND = 0,除了合法的ACK,URG和RST段外拒绝其它的数据段 。假如接收到的数据段不可接受,应该返回一个应答,格式如下:
第二步检查RST位 。
假如处于SYN-RECEIVED 状态时,而且处于设置了RST的情况下,假如连接以被动OPEN开始,将连接返回到LISTEN状态,不需要通知用户;假如连接以主动OPEN打开,拒绝连接,并通知用户"connection refused" 。在上面任何一种情况下,所有在重发队列中的数据都要删除 。在主动OPEN的那种情况下,进入CLOSED状态,删除TCB然后返回 。
假如处于ESTABLISHED,FIN-WAIT-1,FIN-WAIT-2或CLOSE-WAIT状态时,而且RST已经设置,那么任何存在的RECEIVE和SEND都会收到"reset" 。所有队列中的数据段都应该立即
发送 。用户也会收到"connection reset" 。进入CLOSED状态,删除TCB并返回 。
假如处于CLOSING状态,LAST-ACK状态或TIME-WAIT状态,而且RST已经设置,进入CLOSED状态,删除TCB并返回 。
检查安全和优先级在SYN-RECEIVED状态下假如段中的security/compartment和优先级和TCB中的不匹配,发送RST并返回 。
在ESTABLISHED状态下假如段中的security/compartment和优先级和TCB中的不匹配,发送RST ,所有存在的RECEIVE和SEND接收到"reset",立即发送所有队列中的数据段,用户接收到"connectionreset" 。进入CLOSED状态,删除TCB并返回 。
第四步检查SYN位,假如连接处于以下状态
SYN-RECEIVED
ESTABLISHED状态
FIN-WAIT STATE-1
FIN-WAIT STATE-2
CLOSE-WAIT状态
CLOSING状态
LAST-ACK状态
TIME-WAIT状态
假如SYN在窗口中就是错误,发送RST,任何存在的RECEIVE和SEND收到"reset",所有在队列中的数据段立即发送,用户也接收到"connection reset",进入CLOSED状态,删除TCB并返回 。假如SYN未在窗口中,这一步不会发生 。
第五步检查ACK域
假如ACK位关闭,抛弃数据段返回 。假如ACK域打开的情况下,假如连接处于SYN-RECEIVED状态时
假如SND.UNA =< SEG.ACK =< SND.NXT,进入ESTABLISHED状态 。假如段的确认消息不可接受,形成如下形式的RST并发送:
ESTABLISHED状态时
假如SND.UNA < SEG.ACK =< SND.NXT,设置SND.UNA <- SEG.ACK 。因此而对重新传送队列中数据段的确认也带来了对这些数据段的删除 。用户应该接收对缓冲区的主动确认,假如ACK是重复的(SEG.ACK < SND.UNA)可以忽略这个ACK 。假如ACK确认了还未发送的东西(SEG.ACK > SND.NXT),那么可以发送ACK,抛弃数据段并返回 。
假如SND.UNA < SEG.ACK =< SND.NXT,应该更新发送窗口 。假如(SND.WL1 < SEG.SEQ)或(SND.WL1 = SEG.SEQ且SND.WL2 =< SEG.ACK),设置SND.WND
- 高压锅压绿豆汤需要多少时间
- 高温消毒多长时间最佳
- 宿迁有高铁吗 宿迁有没有高铁
- 如何提高鸡种蛋受精率
- 年龄大的人还会出现心梗吗,人到一定年龄,心脏也渐渐显老态,高血压,冠心病,糖尿病,心经梗塞纷纷找上门来,如何预防这类病症的
- 螃蟹能带上高铁吗 可以带螃蟹上高铁吗
- k火车时速一般多少
- 稻城亚丁有高原反应吗
- 什么是高热量食物有哪些 高热量食物有哪些
- 高利贷需要偿还吗
