全链接和半链接队列

全连接队列用于存储已建立但未被应用程序accept的连接请求,其长度由listen函数的第二个参数影响,加1得到。队列长度过大会导致资源浪费和等待时间增长,而无队列则无法平滑处理连接请求。维持适当队列长度旨在平衡系统资源与等待时间,确保服务效率。
摘要由CSDN通过智能技术生成
  1. 半链接队列(用来保存处于SYN_SENT和SYN_RECV状态的请求)
  2. 全连接队列(accpetd队列)(用来保存处于established状态,但是应用层没有调用accept取走的请求)

全连接队列的长度会受到 listen 第二个参数的影响.
全连接队列满了的时候, 就无法继续让当前连接的状态进入 established 状态了.
这个队列的长度通过上述实验可知, 是 listen 的第二个参数 + 1.

为什么要维护全链接队列?为什么不能太长?为什么不能没有?

就像海底捞吃饭一样,里面的在吃,外面的在等,当有人吃饱离开了,我们就可以立即把外部等待的客人接进来。但是队列也有满的时候,为什么不摆长一点呢?队列太长就失去了排队的意义了,因为在资源浪费和等待时间太长的衡量之下,选择适中的队列大小。这个队列就相当于全链接队列,新建立的链接来到以后可能不会马上被处理,所以会进入到队列中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

久菜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值