Hi, 我用下面的代码段创建TCP服务器: var net = require(‘net’); var server = net.createServer(function© { //’connection’ listener console.log(‘server connected’);
c.on('data’, function(data) {
console.log("raw data: "+data.toString());
buffer += data.toString();
buffer = parsePacket(buffer);
});
c.on('end’, function() {
console.log(‘server disconnected’);
});
});
运行一段时间后就不能接收数据了,我用Wireshark抓包,发现是TCP的接收窗口满了,出现ZeroWindow错误,所以不能接收数据了。
后来发现用Nodejs写的TCP客户端连接这个服务器收发数据没有这个问题,用C++和Java写的客户端给这个服务器发送数据一段时间后就出现零窗口问题。
不知道有没有哪位遇到过?
谢谢!
xzYue