文档章节

如果TCP三次握手的第三个ACK包丢了

囚兔
 囚兔
发布于 2016/04/20 17:37
字数 230
阅读 180
收藏 3

    

     当Client端收到Server的SYN+ACK应答后,其状态变为ESTABLISHED,并发送ACK包给Server;

 

            如果此时ACK在网络中丢失,那么Server端该TCP连接的状态为SYN_RECV,并且依次等待3秒、6秒、12秒后重新发送SYN+ACK包,以便Client重新发送ACK包,以便Client重新发送ACK包。

           

             Server重发SYN+ACK包的次数,可以通过设置/proc/sys/net/ipv4/tcp_synack_retries修改,默认值为5。

             

             如果重发指定次数后,仍然未收到ACK应答,那么一段时间后,Server自动关闭这个连接。

             但是Client认为这个连接已经建立,如果Client端向Server写数据,Server端将以RST包响应,方能感知到Server的错误。


本文转载自:http://blog.163.com/xychenbaihu@yeah/blog/static/132229655201212081859221/

共有 人打赏支持
囚兔

囚兔

粉丝 39
博文 86
码字总数 47164
作品 1
南京
程序员
私信 提问
TCP状态以及关于内核调优的几个参数

不知道大家在面试时候是否会遇到tcp方面相关的面试题,比如几个相关的内核调优,SYNFLood***的原理和防御,timewait不回收对系统有什么影响,等等还是很多的,前几天有人问到,今天刚好细细学...

小罗ge11
06/29
0
0
收到syn-recv数量超出阈值的报警

利用命令查看如图 可以发现确实有大量的链接处于syn-recv的状态 2.syn-recv如何产生的呢 首先,syn-recv是tcp三次握手的中间状态,是服务端口如应用服务器端口,收到syn包并发送[syn,ack]包所...

itlittlefun
2017/02/04
0
0
实战利用WireShark对Telnet协议进行抓包分析

Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服...

Micooz
2014/07/14
0
3
可靠的TCP连接为何是三次握手

首先,咱们先来熟悉下经典的tcp/ip模型。 tcp/ip 模型为了方便使用,将osi七层模型划分成了四层,分别为网络接口层,网络层,传输层,应用层。 他们作用分别为: 1)网络接口层:主要作用是将...

xiaoer_03
06/13
0
0
tcpdump抓取HTTP包

tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854 0x4745 为"GET"前两个字母"GE" 0x4854 为"HTTP"前两个字母"HT" 说明: 通常情况下:一个正常的TCP连接,都会有三个阶段:...

不必在乎朕是谁
2014/03/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

apache顶级项目(二) - B~C

apache顶级项目(二) - B~C https://www.apache.org/ Bahir Apache Bahir provides extensions to multiple distributed analytic platforms, extending their reach with a diversity of s......

晨猫
53分钟前
1
0
day152-2018-11-19-英语流利阅读

“超级食物”竟然是营销噱头? Daniel 2018-11-19 1.今日导读 近几年来,超级食物 superfoods 开始逐渐走红。不难发现,越来越多的轻食餐厅也在不断推出以超级食物为主打食材的健康料理,像是...

飞鱼说编程
今天
3
0
SpringBoot源码:启动过程分析(二)

接着上篇继续分析 SpringBoot 的启动过程。 SpringBoot的版本为:2.1.0 release,最新版本。 一.时序图 一样的,我们先把时序图贴上来,方便理解: 二.源码分析 回顾一下,前面我们分析到了下...

Jacktanger
昨天
3
0
Apache防盗链配置,Directory访问控制,FilesMatch进行访问控制

防盗链配置 通过限制referer来实现防盗链的功能 配置前,使用curl -e 指定referer [root@test-a test-webroot]# curl -e "http://www.test.com/1.html" -x127.0.0.1:80 "www.test.com/1.jpg......

野雪球
昨天
3
0
RxJava threading

因为Rx针对异步系统设计,并且Rx也自然支持多线程,所以新的Rx开发人员有时会假设Rx默认是多线程的。在其他任何事情之前,重要的是澄清Rx默认是单线程的。 除非另有说明,否则每次调用onNex...

woshixin
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部