如何查看tcp連接的建立時間?

      在進行服務性能分析時,有時需要確認連接池、長連接、短連接相關的問題,需要查看tcp連接的建立時間? 怎麼看?

      1. 以如下tcp鏈接爲例:

ubuntu@VM-0-15-ubuntu:~$ netstat -nap | grep -i esta
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (servers and established)              
tcp        0      0 172.17.0.15:38262       169.254.0.55:5574       ESTABLISHED - 

      2. 查端口38262對應的進程,可以看到,是root用戶開啓的進程,所以要用sudo:

ubuntu@VM-0-15-ubuntu:~$ lsof -i:38262
ubuntu@VM-0-15-ubuntu:~$ sudo lsof -i:38262
COMMAND     PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
YDService 12335 root    6u  IPv4 42480944      0t0  TCP 172.17.0.15:38262->169.254.0.55:5574 (ESTABLISHED)
ubuntu@VM-0-15-ubuntu:~$ 

      3. 觀察到FD=6,  進程號是12335, 可以看到tcp連接創建時間是:Feb 21 00:03

ubuntu@VM-0-15-ubuntu:~$ ls -l /proc/12335/fd/6
ls: cannot access '/proc/12335/fd/6': Permission denied
ubuntu@VM-0-15-ubuntu:~$ sudo ls -l /proc/12335/fd/6
lrwx------ 1 root root 64 Feb 21 00:03 /proc/12335/fd/6 -> socket:[42480944]
ubuntu@VM-0-15-ubuntu:~$

      

      從而可以確定,這個連接一直存在。 

 

      不多說。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章