netstat -na輸出中Recv-Q和Send-Q兩項的值不為零需要注意程序是否有問題Recv-Q:表示收到的數(shù)據(jù)中還有多少沒有被進程取走(通過recv) Send-Q:表示需要發(fā)送的數(shù)據(jù)還有多少沒有被發(fā)出
所以,,一般來說這兩個值都是0,,如果不為0且持續(xù)增長,那就表明程序出現(xiàn)了問題,。 比如Recv-Q的數(shù)字持續(xù)增長,,表示沒有進程去取這些收到的數(shù)據(jù)。比如使用select+recv來收數(shù)據(jù)的時候,,由于select有1024這個限制,所以如果socket的FD大于1024的時候,,就會導(dǎo)致這個socket FD上的數(shù)據(jù)不會被select檢測到從而導(dǎo)致recv不會被調(diào)用,。 所以,通過netstat的這兩個值就可以簡單判斷程序收不到包到底是包沒到還是包沒有被進程recv,。 分類: Linux |
|