Articles of udp

node.js是否具有对UDP(datagams)的内置支持?

我很困惑如何在node.js中安装正确的UDP包。 当我尝试 npm install dgram 我收到一条错误消息,说包不可用。 那么UDP是否支持'内置'到默认的node.js安装?

是否有可能保证在Node.js上使用UDP传递消息?

如何保证在Node.js上使用UDP传递消息? 例如,如果数据包失败,我可以重新发送数据包 – 但有没有办法确定数据包何时失败? 另外,数据包的丢失有多普遍?

Nodejs – UDP如何检测已经绑定的端口

在Node.js中,当我尝试将两个UDP套接字绑定到同一个端口上时,我没有收到任何错误,但最后一个服务器是唯一一个接收数据报的服务器。 有没有办法来防止这种碰撞? 我可以检测哪个端口已被使用吗?

在Node.js中发送和接收来自255.255.255.255的UDP广播

我试图在Node中实现一个BOOTP服务器,为此,广播是必需的。 可悲的是,文件有点混乱,我一直在奇怪的错误。 有趣的是,在Windows 7和Ubuntu上的错误是不一样的。 有人真的设法发送一个UDP广播到255.255.255.255或接收这个地址下的一个? 有人能给我一个简单的节点UDP广播演示?

用node.js重新组装udp消息

我刚开始使用node.js和UDP。 我试图捕获UDP数据包,然后格式化输出。 我收到的UDP数据包被分成多个消息。 我无法弄清楚如何重新组装信息。 我可以连接每封邮件,但是如何知道邮件已完成? 我需要处理这些数据,但我需要完成消息。 FYI …这是一个记分牌types的应用程序。 统计正在通过UDP广播,我试图创build一个应用程序,将监测统计。 这里是一些基本的代码 var dgram = require("dgram"); var server = dgram.createSocket("udp4"); var fs = require('fs'); var STATS; server.on("message", function (msg, rinfo) { STATS = STATS + msg; msg = msg + '<!>'; console.log(msg); }); // ***************************** // When the message is complete // Process STATS // ***************************** server.on("listening", […]

TCP,UDP和使用单个Node.js服务器的串行通信

我们正在为需要通过串口和UDP进行通信的testing夹具开发控制器。 我的计划是使用Node.js来提供I / O通信集线器,如下图所示。 Node.js I / O集线器需要使用以下方式进行通信: UDP :每50毫秒接收两个UDP数据报,每50毫秒发送两个UDP数据报。 串行端口:将使用串行端口连接来读取和更新testing夹具的值。 TCP:一个基于Web的AngularJS用户界面,通过REST API与Node.js服务器进行通信,以便: 读取并更新通过串口和UDP数据报接收/发送的testing夹具值。 请求testing结果被保存到一个MongoDB实例。 MongoDB:为testinglogging提供持久存储。 问题 我可以使用Express并通过UDP和串口与Node.js进行通信吗? 这是通过串口,UDP和TCP进行通信的合理体系结构,尤其是考虑到每隔50毫秒发送两个UDP数据报的要求? 我接受build筑build议。

不能将UDP发回到内部的PC上,

我安装了两台PC,一台是局域网内的客户端,另一台是公网上的服务器。 testing步骤是 – 1)客户端监听端口33333上的udp 2)服务器端口22222监听udp 1)客户端发送udp到服务器2)服务器接收到数据并发回 当我testing我的testingnetworking上的代码时,没关系。 如果把服务器放在真实的互联网上,服务器可以从客户端获得消息,客户端不能从服务器获得响应。 怎么了? 这里是用nodejstesting代码。 server var dgram = require('dgram'); var socket = dgram.createSocket('udp4'); socket.on('message', function (message, remote) { console.log('client ip:' + remote.address + ', port:' + remote.port +', message:' + message); //send response to client var message = new Buffer("hello, client!"); socket.send(message, 0, message.length, remote.port, remote.address); }); //listening port […]

udp(4)和udp(6)有何区别?

有人可能会忽略udp(4)和udp(6)之间的语法差异和可能的用例差异吗? 我注意到在创build一个数据报套接字时,Node文档中有一些不同之处。

Nodejs集群模式如何处理HTTP保持连接?

如果HTTP连接保持活动状态,那么同一个工作人员是否会处理所有请求? 我希望有一个HTTP服务器处理所有networkingstream量,但是将每个请求的数据处理转交给随机的工作进程,即使这些请求是通过相同的HTTP(TCP)连接进入的: if (cluster.isMaster) { http.createServer(function(req, res) { worker.send(req, function(res) { // worker will generate response into callback parameter res.end(); }); }).listen(80); } else { process.on('message', function(msg) { // generate an http reponse but DO NOT SEND IT OUT A SOCKET, // return it to Master var res = generate_http_response_object(); process.send(res); }); } 这会工作吗?

你是否必须closuresNode.js中的UDP(dgram)客户端,还是可以重用它?

文档 (以及我看过的一些库)似乎表明,每次发送时都closures客户端: var dgram = require('dgram'); var message = new Buffer("Some bytes"); var client = dgram.createSocket("udp4"); client.send(message, 0, message.length, 41234, "localhost", function(err, bytes) { client.close(); }); 我真的不太了解UDP的内部工作原理,但是如果每次要发送一个UDP数据包,都会阻止你重复使用client呢? 你必须 close()吗? 我已经在localhosttesting了它(也就是重用客户端),并且发送了多个数据包(至less到了同一个目的地),但是这还不是一个足够的testing来保证在大的在那里广泛的世界。 send()的源头调用一个_startReceiving()函数,该函数“绑定到一个随机端口”,然后“开始接收” – 但我不清楚应该在这里接收什么,因为我们实际上是在发送。 无论如何,这足以让我觉得可能有与保持一个客户的问题…我只是不知道他们是什么。