幫助中心
香港服務(wù)器租用幫助
香港服務(wù)器最大并發(fā)連接數(shù)如何計算
2018-10-29 17:38:07
ModelId=2&Id=549">

關(guān)于香港服務(wù)器的TCP服務(wù)器最大并發(fā)連接數(shù)有一種誤解就是“因為端口號上限為65535,所以香港TCP服務(wù)器理論上的可承載的最大并發(fā)連接數(shù)也是65535”。

先說結(jié)論:對于TCP服務(wù)端進(jìn)程來說,他可以同時連接的客戶端數(shù)量并不受限于可用端口號。并發(fā)連接數(shù)受限于linux可打開文件數(shù),這個數(shù)是可以配置的,可以非常大,所以實際上受限于系統(tǒng)性能。

從理論上說,端口號的作用是在網(wǎng)絡(luò)連接中標(biāo)識應(yīng)用層的進(jìn)程,服務(wù)端一般使用眾所周知的端口號進(jìn)行監(jiān)聽,客戶端連接時系統(tǒng)自動分配端口號。一個服務(wù)端進(jìn)程服務(wù)于n個客戶遠(yuǎn)程進(jìn)程,只需要能通過ip地址+端口號的組合把他們區(qū)分開即可,沒有必要占用本機(jī)的其他端口號,客戶端連接數(shù)增加并不會占用服務(wù)器端口號,因此端口號并不能限制并發(fā)連接數(shù)。當(dāng)然一臺機(jī)器上端口號數(shù)量的上限確實是65536個,因為tcp首部中使用16bit去存儲端口號。所以如果說65536影響了連接數(shù),只有一種可能,就是同一臺客戶端機(jī)子上開n個進(jìn)程去連同一個服務(wù)端進(jìn)程,因為客戶端ip是同一個,為了區(qū)分出這些連接,只能使用客戶端連接的端口號,那么服務(wù)端和一個客戶端主機(jī)之間的tcp連接數(shù)理論上線確實是65536。但是,服務(wù)端可以連接n多客戶端機(jī)子呢。

實際上,確實有個限制端口號的配置,就是MaxUserPort,這實際上是一臺主機(jī)向外連接使用端口數(shù)的限制,這個數(shù)也可以配置的,可能默認(rèn)值才5000,實際上對于正常的服務(wù)器主機(jī)是夠用的,因為你是等別人連接進(jìn)來的,不是要去連接很多不同的其他主機(jī)的。當(dāng)然你的服務(wù)器上可能跑了一些轉(zhuǎn)發(fā)的服務(wù),這樣你就需要對外連接了,如果被限制在這個配置這兒了確實需要改。但是這個MaxUserPort確實和服務(wù)器可以承載的來自客戶端的并發(fā)連接數(shù)沒有關(guān)系。

伴隨這個誤解的還有另外一個誤解,就是accept之后產(chǎn)生的已連接套接字占用了新的端口。這個絕對是錯誤的,linux內(nèi)核不會這么寫的,因為完全沒必要嘛??蛻舳诉B接上來之后產(chǎn)生的這個socket fd就是用來區(qū)分客戶端的,里面會填上客戶端的ip和端口作為發(fā)包用,來自客戶端的包也會使用這個fd去讀取??梢栽囋噉etstat -ano,然后起一個服務(wù)器看下,客戶端連上來這后產(chǎn)生的套接字的服務(wù)端端口還是監(jiān)聽的端口。

租用高防服務(wù)器,可以試試USA-IDC香港高防服務(wù)器,服務(wù)器所歸屬的機(jī)房是高端定制模塊化智能監(jiān)控香港高防自營機(jī)房,它擁有會“思考”的防火墻系統(tǒng),全G口高速大帶寬,能夠快速應(yīng)對攻擊,閃電式對抗CC,多層智慧聯(lián)動防御,支撐網(wǎng)絡(luò)安全防御突破99.99%的可能。

新客優(yōu)惠
特價 酷睿i3系列
性價比熱銷推薦,年銷量第一
1180/月起
USA-IDC為您提供免備案服務(wù)器 0元試用
立即聯(lián)系在線客服,即可申請免費(fèi)產(chǎn)品試用服務(wù)
立即申請