Linux 半连接队列,全连接队列
socket 中 listen api中参数backlog指定的是 全队列大小
accept api是从全队列中获取, 没有就阻塞了, 直到有新连接进来.
listen中指定的值大小,有一个最大上限,
这个上限是系统内核中设定的. 在配置文件中: /proc/sys/net/core/somaxconn
这个值默认是128.
三次握手:
客户端发一个syn包,
服务器发一个包(syn+ack),
客户端发一个ack确认包. 至此连接完成
半连接是是未完成队列:
/proc/sys/net/ipv4/tcp_syncookies 是否缓存syn
这个值操作系统内部设定的, 在 /proc/sys/net/ipv4/tcp_max_syn_backlog 文件中. 默认是1024
[118 ipv4]# cat tcp_timestamps 1 [118 ipv4]# cat tcp_thin_linear_timeouts 0 [118 ipv4]# cat tcp_fin_timeout 60 [118 ipv4]# cat /proc/sys/net/ipv4/tcp_syncookies 1 [118 ipv4]# cat tcp_synack_retries 2 [118 ipv4]# cat tcp_syn_retries 6
一个连接的完成需要经过3次握手, 只经过了2次握手,如果第三次握手一直不完成, 服务器会怎么处理?
相关推荐
bluecarrot 2020-11-23
Attend 2020-11-17
ZHAICAN 2020-11-16
codedecode 2020-11-14
zhangbingb 2020-11-12
ykmail 2020-11-11
futurezone 2020-11-06
rikeyone 2020-11-04
橄榄 2020-11-04
WenCoo 2020-10-31
wangqd 2020-11-09
farwang 2020-11-25
星愿心愿 2020-11-24
tianhuak 2020-11-24
zhjn0 2020-11-24
昭君出塞 2020-11-23
linuxwcj 2020-10-21