![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
tcp
alexander_phper
想平静的心
展开
-
TCP包结构简介
TCP Header按照上图BIT坐标:0-0 至 0-15 发送方端口;0-16 至 0-31 接收方端口;32-0 至 32-31 sequence number,TCP序列号;!!!64-0 至 64-31 ack number,TCP确认号,为TCP序列号+1;96-0 至 96-3 数据偏移量;96-4 至 96-6 预留位;96-7 至 96-15 FLAG 标志位;96原创 2017-11-01 22:39:00 · 634 阅读 · 0 评论 -
TCP三次握手简析
tcp三次握手简介tcp握手需要用到标识位里面的两种标识:SYN和ACK,以及报文中的seq序列号和ack确认号; 上面的ack确认号和ACK标识位是不同两种数据,下面小写的ack代表ack确认号,大写的ACK代表ACK标识位;简单流程如下: 1. client随机产生一个seq数字,发送SYN请求到server; 2. server收到SYN请求,将ack置为收到的seq+1,并且随机产原创 2017-11-02 20:02:31 · 574 阅读 · 0 评论 -
tcp_tw_recycle和tcp_timestamps导致connect失败问题
近来线上陆续出现了一些connect失败的问题,经过分析试验,最终确认和proc参数tcp_tw_recycle/tcp_timestamps相关;1. 现象第一个现象:模块A通过NAT网关访问服务S成功,而模块B通过NAT网关访问服务S经常性出现connect失败,抓包发现:服务S端已经收到了syn包,但没有回复synack;另外,模块A关闭了tcp timestamp,而模块B开启了tcp ti转载 2017-11-02 20:33:10 · 467 阅读 · 0 评论