网络通信编程
软件架构
c/s架构 :客户端:配置比较低的计算机 IP:端口号 Socket
服务器端:配置比较高的计算机 IP:端口号 ServerSocket
B/s架构
网络通信协议
通过计算机网络实现多台计算机相互连接,但是位于同一个网络中的计算机必须遵循一定的规则,称之为网络通信协议;它对数据的传输格式、传输速率、传输步骤做统一的规定。
TCP/IP 协议
传输控制协议,它定义了计算机如何连入因特网以及数据在他们之间如何进行传输的标准。它的内部包含了一系列的用于处理数据通信协议,并采用了4层的分层模型。
协议分类
UDP协议:用户数据报协议
它是一种无连接的通信协议,在数据传输的时候,数据的发送端和数据的接收端不会建立连接。简单的说就是,当一台计算机向另一台计算机发送数据时,发送端不会确认接受端是否存在,就会发送数据,同样在接受端接受数据时,也不会向发送端反馈是否收到数据。
特点:消耗资源小,通信效率高。会偶尔丢失一两个数据包。数据被限制在64kb以内,超出这个范围九不可以再发送了。
TCP:传输控制协议
TCP协议是面向连接的通信协议。在tcp连接中必须明确客户端与服务器端,当客户端向服务端发起连接请求时,必须建立三次握手,确保数据传传输的可靠性。
三次握手
第一次握手:客户端向端向服务端发起连接请求,等待服务器端的确认
第二次握手:服务器端向客户端回应一个请求,表示已经收到连接请求。
第三次握手:客户端向服务器端发送确认信息,确认连接。