首页 > 网络相关 > TCP状态解释

TCP状态解释

2008年11月22日 21:29 Slyar 发表评论 阅读评论

文章作者:Slyar 文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。

某同学看端口开放状况,然后看到一堆LISTENING、TIME_WAIT...于是就问我,我也懒得说,直接写出来凑文章数好了。

1、LISTENING

侦听状态,例如开放诸如FTP服务的时候就会侦听端口,当然一些反向连接的后门也会开启某个端口进行侦听。

2、ESTABLISHED

已经建立连接,通常还会显示另外一个IP和端口,表示这两个端口正在进行通信。

3、CLOSE_WAIT

对方主动关闭连接或者网络异常导致连接中断,这时你的状态会变成CLOSE_WAIT,此时你可以调用close()来使得连接正确关闭。

4、TIME_WAIT

当你主动调用close()断开连接,对方确认后状态就会变为TIME_WAIT。

TCP协议规定TIME_WAIT状态会一直持续2MSL(即两倍的分段最大生存期),以此来确保旧的连接状态不会对新连接产生影响。处于TIME_WAIT状态的连接占用的资源不会被内核释放,所以作为服务器,在可能的情况下,尽量不要主动断开连接,以减少TIME_WAIT状态造成的资源浪费。

分类: 网络相关 标签: , ,
  1. 2008年11月23日12:01 | #1

    netstat -an 列出来的吧?

    Slyar 回复:

    他不会这个命令,用的工具...

bnuep:0801010047