日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux socket API / listen() 两个队列以及第 2 个参数的作用

發布時間:2024/10/14 linux 92 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux socket API / listen() 两个队列以及第 2 个参数的作用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、SYN 隊列,當 Server 接收到 SYN 時,就將該 socket 放入了 SYN 隊列中,即:未完成連接隊列

2、Accept 隊列,當 Server 發送完 SYN + ACK 之后,Client 回復了 ACK,則內核將該 socket 從 SYN 隊列遷移到 Accept 隊列中,即:已完成連接隊列

3、第 2 個參數的作用

man listen,得到的答案如下:

The backlog argument defines the maximum length to which the queue of pending connections for sockfd may grow. If a connection request arrives when the queue is full, the client may receive an error with an indication of ECONNREFUSED or, if the underlying protocol supports retransmission, the request may be ignored so that a later reattempt at connec‐ tion succeeds.

說明 backlog 的含義是 SYN 隊列的長度。?

拓展:

? ? ? ?對于 accept() 函數來說,其就是不斷監聽 Accept 隊列中是否為空。若為空則繼續堵塞,若有 socket ,則取出 socket 描述符的值、Client 的 IPPort 協議族這些信息并返回。

?

(SAW:Game Over!)

總結

以上是生活随笔為你收集整理的linux socket API / listen() 两个队列以及第 2 个参数的作用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。