Tcp连接的创建与关闭
看了网络编程的的东西,并且做了一个QQ的项目。socket编程也算是入门了,但是只是会用还是不行的,必须了解底层的实现,这篇博客就把底层的实现总结一遍。网络传输都是通过底层的TCP协议实现的,这个协议真的是很庞大,想要了解TCP的协议内容可以看一下《TCP/IP:卷一》的TCP部分,写的真是相当的经典,这里就不对TCP协议做过多的说明了,后续肯定会加上的。
Socket的创建
客户端
当使用Socket(IP,PORT)创建套接字后,java的底层会建立一个包含关键信息(目的IP、端口、本地IP、端口)的数据结构,刚开始建立时,这个套接字的状态是关闭的,然后由TCP等发起向目的端地址的握手信息: