![如何找出哪個進程正在耗盡所有 TCP 連線?](https://rvso.com/image/1457439/%E5%A6%82%E4%BD%95%E6%89%BE%E5%87%BA%E5%93%AA%E5%80%8B%E9%80%B2%E7%A8%8B%E6%AD%A3%E5%9C%A8%E8%80%97%E7%9B%A1%E6%89%80%E6%9C%89%20TCP%20%E9%80%A3%E7%B7%9A%EF%BC%9F.png)
我只能按位元組、連接埠或協定排序,而不能按連接數排序。
答案1
開啟命令提示字元視窗as administrator
。
從那裡輸入以下命令:
netstat -b -a
這將為您提供所有開放連接埠及其關聯進程的清單。
如果您需要更多信息,請鍵入以下內容:
netstat -b -a -o
-o 將顯示進程 ID,您可以在任務管理器、進程標籤中尋找該進程 ID,或者如果您需要終止該進程,只需從命令提示字元輸入以下內容:
taskkill /PID xxxx
其中xxxx
是您使用 netstat 找到的進程 ID。
答案2
微軟提供了一個TCP視圖該工具將為您提供有關進程 TCP 連線的資訊。您也許能夠透過該工具的圖形使用者介面 (GUI) 版本來判斷哪個進程擁有最多的連接,但要獲取每個進程的連接數,我建議使用命令列實用程式 tcpvcon,該實用程式包含在內您可以從Microsoft TechNet 網站下載TCPView zip 檔案。使用選項從命令提示字元執行命令-c
,這將建立逗號分隔值 (CSV) 檔案。
c:\Program Files (x86)\TCPView>tcpvcon -c > %userprofile%\documents\tcpconnections.csv
上述命令會將 tcpvcon 的輸出儲存在您執行該命令的帳戶的設定檔目錄下的文檔目錄中名為 tcpconnections.csv 的檔案中,例如,C:\Users\JDoe\Documents\tcpconnections.csv
如果您從使用者 ID 為 JDoe 的帳戶執行該命令。
然後,您可以使用免費的 Microsoft Excel 對資料進行計數和排序OpenOffice 運算電子表格程序,免費,在線谷歌表格,或其他一些電子表格程式。
CSV 檔案將包含以下列:
A: TCP
B: Process Name
C: Process ID (PID)
D: State of connection, e.g. "WAIT", "ESTABLISHED", etc.
E: Address for local, source side of TCP connection
F: Address for remote side of the TCP connection
Excel 或 Calc 等其他程式可以使用與 Excel 相同的公式來計算清單中每個行程名稱的出現次數,然後對清單進行排序,步驟如下:
放入=COUNTIF($B$1:$B$196,"="&$B1)
G1 列,它是下一個空列的第一行。將電子表格中實際的行數替換為 196。然後將該公式複製到所有行中。然後對 G 列進行排序。Excel中如何依照出現次數最多的數值來排序資料?如果您需要所用公式的解釋。