[問題] 關於socket程式與TCP觀念
※ [本文轉錄自 C_and_CPP 看板]
作者: james732 (好人超) 看板: C_and_CPP
標題: [問題] 關於socket程式與TCP觀念
時間: Fri Apr 9 04:53:29 2010
目前想要做一個測試:
當一個主機使用 listen, accept 等函式做為 TCP server 時
它同一個時間最多能建立幾個 TCP 連線呢?這個限制又是因為什麼?
對於不同的作業系統(ubuntu Linux, Windows)是否會有不同的表現?
server 端程式碼:http://nopaste.csie.org/65edc
用無窮迴圈不斷的接受連線,什麼事都不做,停留在 ESTABLISHED 狀態
client 端程式碼:http://nopaste.csie.org/c0da0
用無窮迴圈不斷的 connect,同樣的什麼都不做,停留在 ESTABLISHED 狀態
目前發現有兩個因素會限制連線的上限
ulimit -n : 單一 process 能使用的 File descriptor 上限
sysctl -w net.ipv4.ip_local_port_range="1024 65000" : 能用的 local port 範圍
不過對於目前測試的結果,有些狀況不太明白
1. 使用 netstat -n 觀察,server 端的 port 一律是使用 53764
http://james545.myweb.hinet.net/1.jpg

其實我不太懂為什麼都是同一個 port 呢?這麼多的 client 可以用同一個?
2. 我是這麼執行程式的:
server 端:./server 1234 ( server 監聽 TCP Port 1234 )
client 端:./client 1234 ( server 的 IP 寫死在程式裡, 連至 Port 1234 )
不過 client 大約建立六萬的連線後,就會發生錯誤訊息
connect: Cannot assign requested address
判斷是 client 自己的 local port 用盡了,即使再開啟另一個 process 也相同
這個時候就必須要再用另外一部電腦來測試了
有沒有辦法解決這個問題呢?
3. 要像這樣測試 TCP 連線的上限,還有沒有其他的辦法呢?
(譬如說現成的工具套件?)
4. 其實我一直不太能把 socket API 與 TCP/IP 的觀念很好的連結在一起
譬如說,我不懂 accept 與 connect 這兩個函式是怎麼搭配的
關於這個,有沒有比較好的參考資料呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.117.171.46
※ 編輯: james732 來自: 140.117.171.46 (04/09 04:58)
→
04/09 05:39,
04/09 05:39
→
04/09 05:39,
04/09 05:39
→
04/09 05:40,
04/09 05:40
→
04/09 05:40,
04/09 05:40
→
04/09 05:41,
04/09 05:41
→
04/09 05:46,
04/09 05:46
→
04/09 05:46,
04/09 05:46
→
04/09 05:47,
04/09 05:47
→
04/09 05:47,
04/09 05:47
→
04/09 05:48,
04/09 05:48
→
04/09 09:39,
04/09 09:39
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.117.171.46
→
04/09 10:54, , 1F
04/09 10:54, 1F
→
04/10 01:15, , 2F
04/10 01:15, 2F
→
04/10 01:16, , 3F
04/10 01:16, 3F
→
04/10 01:17, , 4F
04/10 01:17, 4F
→
04/10 01:17, , 5F
04/10 01:17, 5F
→
04/10 01:18, , 6F
04/10 01:18, 6F
→
04/10 01:19, , 7F
04/10 01:19, 7F
→
04/10 01:20, , 8F
04/10 01:20, 8F
→
04/10 01:21, , 9F
04/10 01:21, 9F
→
04/10 01:21, , 10F
04/10 01:21, 10F
→
04/10 01:22, , 11F
04/10 01:22, 11F
→
04/10 03:43, , 12F
04/10 03:43, 12F
Programming 近期熱門文章
PTT數位生活區 即時熱門文章