Nfs

NFS 每個連接的最大同時操作數?

  • May 11, 2017

我從第 3 層供應商支持處聽說 NFS 對可以同時執行的並發操作的數量有某種限制(有人告訴我 16)。

抱歉,我沒有更多細節,並且一些Google搜尋沒有出現我正在尋找的內容。

NFS 的這種硬限制是否存在,如果存在,有人可以解釋一下嗎?

您可以控制 nfsd 實例的數量,但每個 nfsd 實例可能有多個與核心排隊的操作。在 Linux 和 Solaris(據我所記得)中,預設值長期以來一直是 8 個程序,但是在很多情況下增加這個數字是有意義的。但是,我還沒有聽說過 NFS 作為協議的並發性有任何絕對限制。

沒有這樣的連接限制,但埠選擇存在一些實際限制,如 NFS 手冊頁中所述:

NFS 客戶端通常通過網路套接字與 NFS 伺服器通信。套接字的每一端都分配有一個埠值,它只是一個介於 1 和 65535 之間的數字,用於區分同一 IP 地址上的套接字端點。套接字由一個元組唯一定義,該元組包括傳輸協議(TCP 或 UDP)以及兩個端點的埠值和 IP 地址。

NFS 客戶端可以為其套接字選擇任何源埠值,但通常選擇特權埠。特權埠是小於 1024 的埠值。只有具有 root 特權的程序才能創建具有特權源埠的套接字。

可以選擇的特權源埠的確切範圍由一對 sysctl 設置,以避免選擇眾所周知的埠,例如 ssh 使用的埠。這意味著 NFS 客戶端可用的源埠數,因此可以同時使用的套接字連接數實際上僅限於幾百個。

引用自:https://serverfault.com/questions/391200