看板 Network 關於我們 聯絡資訊
小弟最近在開發一個server-client的程式 但是遇到了效率上的問題 由client發送一筆資料到本機的server上 (約120byte) 耗時要0.1~0.2秒 同樣由server回ack給client也是一樣的時間 (約5byte) 同步的狀態下一來一回將近就要0.4秒 一秒處理不到3筆資料 我加了一些trace code server 與client端的資料處理時間幾乎都沒有損耗(0.001~0.005) 我嘗試去調過 TCP_NODELAY, SO_SNDBUF, SO_SNDBUF的設定值 但是也都沒有明顯提升 請問還有什麼方法可以嘗試 或是有甚麼辦法可以去追蹤系統的效能是在哪裡被吃掉(也許是其他程式占用掉) 因為在本機上傳輸資料,這種數據真的是有點誇張 我使用的作業系統是AIX 5.3 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.220.71.34
overxxx:多個client同時傳多筆? 02/29 18:04
luke72:是TCP嗎 每次TCP session都重建嗎 TCP一開始要handshake 02/29 18:41
luke72:所以會比較慢一點 要不要測測連線建起來後的速率? 02/29 18:41
ireullin:目前是一個client在本機上一來一回的方式傳送 03/01 09:47
ireullin:TCP一開始connect之後就沒有斷掉了 03/01 09:48
ireullin:這速度是連線成功後才開始計算的 03/01 09:49
overxxx:你同步的定義是什麼? 03/01 10:43
ireullin:都是同一個connect,但是資料要一去一回 03/01 10:51
overxxx:資料要一去一回,但不要等ACK回來才送下一筆 03/01 11:16
overxxx:另外,你檔案很小,網路傳輸跑不到全速,能多session會快不少 03/01 11:19