
TCP
文章平均质量分 64
程序员的战歌
会删库,但不会跑路。
展开
-
白话-三次握手,四次放开
白话-三次握手,四次放开三次握手四次放开握手:1.客户端说:我要连你了2.服务端说:收到了,我也要连你了3.客户端说:收到。。。成功建立了连接放开:1.客户端说:我要断开了2.服务端说:收到3.服务端说:我也要断开了4.客户端说:收到。。。成功断开连接四次放开,为啥要比三步多一步?在四次放开的第三步,我理解的是,服务端要处理完剩余工作,才能告诉客户端可以断开了,而非客户端说要断开了,服务端就立马可以断开。举个生活例子:比如,一个女孩子对一个原创 2021-08-20 15:21:20 · 126 阅读 · 0 评论 -
TCP协议实现原理
TCP协议实现原理TCP协议是端到端的传输控制协议,之所以是“端到端”的协议,是因为”路由“是由IP协议负责的,TCP协议负责为两个通信端点提供可靠性保证,这个可靠性不是指一个端点发送的数据,另一个端点肯定能收到(这显然是不可能的),而是指,数据的可靠投递或者故障的可靠通知。TCP的可靠性通过以下方式来保证:1.超时重传:TCP每发送出一个报文段后,都会启动一个定时器,对目的端传回的确认信息进...原创 2019-04-04 16:57:08 · 9085 阅读 · 0 评论 -
iptables入门到放弃
iptablesiptables只是Linux防火墙的管理工具而已,位于/sbin/iptables。真正实现防火墙功能的是netfilter,它是Linux内核中实现包过滤的内部结构。4表5链iptables包含4个表,5个链。其中表是按照对数据包的操作区分的,链是按照不同的Hook点来区分的,表和链实际上是netfilter的两个维度。4个表:filter:一般的过滤功能(默认表是filter,没有指定表的时候就是filter表)。nat:用于nat功能(端口映射,地址映原创 2021-09-03 11:12:35 · 279 阅读 · 0 评论 -
close_wait过多
最近web服务器在大流量情况下经常出现假死现象,后台log报 too many open files 的错误,加大linux系统的文件打开数是可以解决部分问题,但是时间长了同样出问题,通过查询网络连接发现是tcp连接不关闭造成的。如下: netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' LAST_A...原创 2019-04-04 17:07:20 · 1307 阅读 · 0 评论 -
last_ack过多
现象:在netstat的时候发现大量处于LAST_ACK状态的TCP连接,达到在ESTABLISHED状态的90%以上[root@ccsafe ~]# netstat -ant|fgrep ":"|cut -b 77-90|sort |uniq -c 6 CLOSE_WAIT 7 CLOSING 6838 ESTABLIS...原创 2019-04-04 17:08:43 · 3197 阅读 · 0 评论 -
time_wait过多
用netstat -an命令发现服务器中有大量状态为TIME-WAIT的TCP连接,于是用/sbin/sysctl -a查看了一下Linux的各项内核参数,并翻阅有关资料,决定修改其中的两项参数,以达到减少TCP连接中TIME-WAIT sockets的目的。vi /etc/sysctl.conf编辑/etc/sysctl.conf文件,增加三行:引用net.ipv4.tcp_...原创 2019-04-04 17:11:26 · 317 阅读 · 0 评论 -
Too many open files
java.net.SocketException: Too many open filesat java.net.Socket.createImpl(Socket.java:388)at java.net.Socket.connect(Socket.java:517)at java.net.Socket.connect(Socket.java:469)at sun.net.Netw...原创 2019-04-04 17:12:53 · 184 阅读 · 0 评论 -
http header
header:响应头信息Cache-Control max-age=691200 #缓存时间,S做单位,这里是8天Connection keep-alive #表示客户端与服务器的连接类型;keep-alive是持久连接Content-Length 329 #内容...原创 2019-04-04 17:18:40 · 175 阅读 · 0 评论 -
HTPP状态码
1**开头 (消息)100 (继续)客户端应该继续请求101 (切换协议)服务交换协议102 服务器已经收到请求并正在处理103 恢复终止的PUT或POST请求122 URI长度超过2083个字符2**开头 (请求成功)表示成功处理了请求的状态代码。200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。201 (已创建) 请求成功并且服务器创建了新...转载 2019-04-11 13:15:58 · 505 阅读 · 0 评论