本文实例讲述了Java实现UDP通信过程。分享给大家供大家参考,具体如下:
TCP是一种面向连接的传输层协议,而UDP是传输层中面向无连接的协议,故传送的数据包不能保证有序和不丢失,实现UDP通信主要用到了两个类:DatagramPacket和DatagramSocket。
DatagramSocket
这个类用来表示发送和接收数据包的套接字。
//构造方法,创建数据报套接字并将其绑定到本地主机上的指定端口
DatagramSocket socket = new DatagramSocket(0);
DatagramPacket
表示数据报包,用来实现无连接的包的投递服务。这些数据包选择不同的路由,经过计算机的存储转发,最终到达目的计算机。所以到达的数据包和发送时的顺序不一定会相同。
Sever端程序
一,调用DatagramSocket(int port)创建一个数据报套接字,绑定在指定端口上;
二,调用DatagramPacket(byte[] buf,int length),建立一个字节数组来接收UDP包;
三,调用DatagramSocket.receive();
四,最后关闭数据报套接字。
Client端程序
一,调用DatagramSocket()创建一个数据