Node之使用dgram模块实现基于UDP的数据通信
使用dgram模块实现基于UDP的数据通信 TCP是一种基于连接的协议,在进行通信前,首先要求客户端与服务器端建立一条用于通信的连接。而UDP是一种面向非连接的协议,在进行通信前,不要求首先建立客户端与服务器端之间的连接,可以直接把数据包发送给对方。基于这个原因,UPD也是一种不可靠的协议,但是其传输速度比TCP更快,因此更适用于实时通信的场合。 在Node.js中,提供了dgram模块,用于创建UPD服务器与客户端,以及实现UDP服务器与客户端之间的通信。 创建UDP服务器与客户端 在dgram模块中,可以使用createSocket方法创建一个用于实现UDP通信的socket端口对象 var socket=dgram.createSocket(type,[callback]) type:用于指定进行UDP通信时使用的协议类型,可指定值为“upd4”或“upd6”。 callback:用于指定当从该端口接收到数据时调用的回调函数,在该回调函数中,可以使用两个参数。msg参数值为一个Buffer对象,其中存放了接收到的数据。rinfo参数值也为一个对象,该对象所具有的属性及属性值如下: address:属性值为发送者所使用的地址,例如127.0.0.1。 family:属性值为一个标识了发送者所使用的地址是IPv4地址还是IPv6地址的字符串,例如“IPv4”。 port