熟练掌握什么是网络编程,网络编程的三要素,Socket原理机制、UDP传输、TCP传输等。

网络编程三要素

网络编程三要素:①IP:网络中设备的标识,不易记忆,可用主机名,计算机的标识IPv4使用4个字节IPv6使用16个字节②端口:用于标识进程的逻辑地址,不同进程的标识,应用程序标识,使用2个字节范围是1-65535③协议UDP:将数据源和目的封装成数据包中,不需要建立连接;每个数据报的大小在限制在64k;因无连接,是不可靠协议;不需要建立连接,速度快; TCP:建立连接,形成传输数据的通道;在连接中进行大数据量传输;通过三次握手完成连接,是可靠协议;必须建立连接,效率会稍低;

网络参考模型

UDP协议收发数据

  1. DatagramSocket与DatagramPacke
  2. 建立发送端,接收端。
  3. 建立数据包。
  4. 调用Socket的发送接收方法。
  5. 关闭Socket。
  6. 发送端与接收端是两个独立的运行程序。

发送:

1:建立udp的socket服务
2:将要发送的数据封装成数据包
3:通过udp的socket服务,将数据包发送出
4:关闭资源

接收:

1:建立udp的socket服务.
2:通过receive方法接收数据
3:将收到的数据存储到数据包对象中
4:通过数据包对象的功能来完成对接收到数据进行解析.
5:可以对资源进行关闭

TCP协议收发数据

  1. Socket和ServerSocket
  2. 建立客户端和服务器端
  3. 建立连接后,通过Socket中的IO流进行数据的传输
  4. 关闭socket
  5. 同样,客户端与服务器端是两个独立的应用程序。

发送:

1:建立客户端的Socket服务,并明确要连接的服务器。
2:如果连接建立成功,就表明,已经建立了数据传输的通道.就可以在该通道通过IO进行数据的读取和写入.该通道称为Socket流,Socket流中既有读取流,也有写入流.
3:通过Socket对象的方法,可以获取这两个流
4:通过流的对象可以对数据进行传输
5:如果传输数据完毕,关闭资源

接收:

1:建立服务器端的socket服务,需要一个端口
2:服务端没有直接流的操作,而是通过accept方法获取客户端对象,在通过获取到的客户端对象的流和客户端进行通信
3:通过客户端的获取流对象的方法,读取数据或者写入数据
4:如果服务完成,需要关闭客户端,然后关闭服务器,但是,一般会关闭客户端,不会关闭服务器,因为服务端是一直提供服务的