Java的socket通信

  created  by  鱼鱼 {{tag}}
创建于 2019年03月27日 00:31:48 最后修改于 2019年03月27日 00:31:48
评论区
评论
{{comment.creator}}
{{comment.createTime}} {{comment.index}}楼
评论

Java的socket通信

Java的socket通信

    网络编程中,会使用socket通信。

     TCP/IP协议与三次握手

    TCP/IP协议,即Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议,他使用TCP/IP四层模型(实际开发中只涉及到四层模型,软件范畴涉及不到OSI七层参考模型):

    

    TCP与三次握手

    TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP是面向连接的所以只能用于端到端的通讯。具有高度的可靠性。

    三次握手,即通信时,客户端和服务端共计要传输三次包,三次握手建立连接:

    1.主机(客户端)发送 SYN=1(建立连接标识)和seq=x(序号),客户端进入SYN_SEND状态,等待服务端确认

    2.服务端确认连接信息,向客户端发送ack (客户端的x+1),SYN=1随机产生seq=y的包,此时服务端进入SYN_RECV状态

    3.客户端确认ACK值,客户端再次发送确认包(ACK) SYN标志位为0,ACK标志位为1.并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方.并且在数据段放写ISN的+1

参考链接:百度百科:TCP/IP


2019-03-27鱼鱼

{{commentTitle}}

评论   ctrl+Enter 发送评论