TCP 三次握手原理,你真的理解吗?
admin 7年前 (2018-07-05) 3068浏览 0评论
正常TCP建连接三次握手过程: 第一步:client 发送 syn 到server 发起握手; 第二步:server 收到 syn后回复syn+ack给client; 第三步:client 收到syn+ack后,回复server一个ack表示收到了s...
admin 7年前 (2018-07-05) 3068浏览 0评论
正常TCP建连接三次握手过程: 第一步:client 发送 syn 到server 发起握手; 第二步:server 收到 syn后回复syn+ack给client; 第三步:client 收到syn+ack后,回复server一个ack表示收到了s...
admin 7年前 (2018-07-05) 2513浏览 0评论
2013年12月14发布的PHP5.5.6中,changelog中有一条变更, FPM: Changed default listen() backlog to 65535. 这条改动,是在10月28日改的,见increase backlog to ...
admin 7年前 (2018-07-05) 3008浏览 0评论
概述 之前有同事做压力测试时,发现无论如何都无法突破128并发的问题,经排查发现该服务器ACCEPT QUEUE队列都为128,限制了网络的并发。 TCP三次握手 Linux内核协议栈为一个TCP连接管理使用两个队列,一个是半链接队列SYN QUEU...
admin 7年前 (2017-10-31) 2957浏览 0评论
最近碰到一个client端连接异常问题,然后定位分析并查阅各种资料文章,对TCP连接队列有个深入的理解 查资料过程中发现没有文章把这两个队列以及怎么观察他们的指标说清楚,希望通过这篇文章能把他们说清楚一点 问题描述 JAVA的client和serve...
admin 9年前 (2016-03-11) 3439浏览 0评论
本文对大流量、高负载LVS系统优化提供了参考意见,从IPVS、网卡、TCP/IP配置、硬件资源配置等方面进行了阐述。文章重点关注了IPVS connection hash table的参数计算过程。 Linux环境 CentOS 5.5 名词 LVS...
admin 9年前 (2015-11-24) 4704浏览 0评论
下面是可能丢数据包的点: 1、交换机 上连和下连端口的流量跑满或链路有问题,有些数据包会被交换机丢掉,抓对应端口的丢包计数值就可以获得这方面的数据。当然,不会每次都丢建立连接的syn数据包,另外,客户端也重传数据包,所以这一块不一定会导致请求数据的丢...
admin 10年前 (2015-07-25) 3557浏览 0评论
Oracle有一个闪回(flashback)功能,能够用户恢复误操作的数据。本文讨论MySQL数据库中支持闪回的方案。 1、 闪回的目标 即使为了数据安全,我们搭建了主从。但实时主从备份只能防止硬件问题,比如主库的硬盘损坏。但对于误操作,则无能为力。...
admin 10年前 (2015-06-24) 3584浏览 0评论
说明: 通常情况下:一个正常的TCP连接,都会有三个阶段:1、TCP三次握手;2、数据传送;3、TCP四次挥手 里面的几个概念: SYN: (同步序列编号,Synchronize Sequence Numbers) ACK: (确认编号,Acknow...
admin 10年前 (2015-04-24) 4993浏览 0评论
一般来说nginx配置文件中对优化比较有作用的为以下几项: worker_processes 8; 1 nginx进程数,建议按照cpu数目来指定,一般为它的倍数。 worker_cpu_affinity 00000001 00000010 0000...
admin 11年前 (2014-08-14) 3736浏览 0评论
前些天一个Nginx+PHP项目上线后遭遇了性能问题,于是打算练练手,因为代码并不是我亲自写的,所以决定从系统层面入手看看能否做一些粗线条的优化。 首先,我发现服务的Backlog设置过小,可以通过ss命令查询Send-Q来确认: [root@aik...
admin 11年前 (2014-08-14) 5633浏览 0评论
继续上回:linux诡异的半连接(SYN_RECV)队列长度(一) 我们已经确认了全连接队列的长度计算,接下来继续寻找半连接队列长度。 试着慢慢减小tcp_max_syn_backlog的值,但还是看不到半连接状态数量的变化。 实在没什么思路,只能G...
admin 11年前 (2014-08-14) 4772浏览 0评论
关于半连接队列的释疑1、到底那个是半连接队列 /** struct listen_sock - listen state * * @max_qlen_log - log_2 of maximal queued SYNs/REQUESTs */ ...
admin 11年前 (2014-08-14) 4824浏览 0评论
最近在学习TCP方面的基础知识,对于古老的SYN Flood也有了更多认识。SYN Flood利用的是TCP协议缺陷,发送大量伪造的TCP连接请求,从而使得被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。 SYN Flood的原理简单,实现也不...
admin 11年前 (2014-08-10) 3186浏览 0评论
TCP是一个巨复杂的协议,因为他要解决很多问题,而这些问题又带出了很多子问题和阴暗面。所以学习TCP本身是个比较痛苦的过程,但对于学习的过程却能让人有很多收获。关于TCP这个协议的细节,我还是推荐你去看W.Richard Stevens的《TCP/I...
admin 11年前 (2014-07-23) 3770浏览 0评论
在基本的unix网络编程中,server-client模式是普遍应用的模式之一.在server端编程过程中,基本的模式是 socket()//创建fd|| bind()//将socket绑定到特定端口中|| listen()//监听相应的socket...
admin 11年前 (2014-07-09) 5024浏览 0评论
SYN 包攻击是网络上比较老的一种攻击方式。在 Linux 中,可以通过开启 net.ipv4.tcp_syncookies = 1 来抵抗这种攻击。那么,在开启 syncookies 之后,Linux 系统做了些什么?如何做的?这是本文试图整理的内...
admin 12年前 (2013-04-11) 11190浏览 0评论
一直莫名其妙的遇到类似这样错误:connect() to unix:/tmp/php-fcgi.sock failed (11: Resource temporarily unavailable) while connecting to upstre...