UDP 流量对网络性能的影响
好吧,我有一个网络,每个代理(假设我们有 200 个代理)每隔恒定的时间发送 UDP 包。 (假设 10 秒)到恒定数量的主机(假设 10 秒) 我的问题是 6 * 10 秒 * 200 个代理 * 10 个目标主机 = 每分钟 120,000 次 UDP 往返通信将如何影响我的网络,包括可用连接、速度、稳定性、UDP 包丢失率等...... 有人可以请我参考有关此问题的一些链接吗? 谢谢
well, i have network that each proxy (lets assume we have 200 proxies), send UDP packages every constant amount of time. (let assume 10 seconds) to constant amount of hosts (lets assume 10)
my question is how will 6 * 10 seconds * 200 proxies * 10 target hosts = 120,000 UDP roundtrip communication per minute will affect my network, in terms of available connections, speed, stability, UDP package loss rate etc...
can anyone please refer me to some links on this issue ?
thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
为了补充 Frank 所说的内容,我猜测网络接口卡具有足够的板载智能,可以丢弃未发送给它们的数据包,而无需调用计算机上的协议栈和 CPU。
如果您有古董/哑网卡(或者如果设备驱动程序将卡置于“混杂接收”模式,以便它接收甚至未寻址到它的数据包,这仅对路由器和数据包嗅探器有用),则数据包-每秒会给计算机和网络带宽带来负载。
To add to what Frank said, I'm guessing that the network interface cards have enough on-board intelligence to discard the packets which aren't addressed to them, without invoking the protocol stack and CPU on the computer.
If you had antique/dumb network cards (or if the device driver puts the card into "promiscuous receive" mode so that it receives even packets which aren't addressed to it, which is useful only for routers and packet sniffers), then packets-per-second would put load on the computers as well as on the network bandwidth.
您没有提到哪种网络,所以我假设您正在谈论 LAN。
让我们假设最坏的情况:所有代理同时发送,而您的 LAN 设备陈旧,仅支持每秒 10 兆比特。
然后,您将一次性发出 200*10 = 2000 个 UDP 数据包。如果每个字节都有 100 个字节,那么您的网络将有约 195 kibiBytes。这大约是电缆容量的 0.02%。在 LAN 上,您应该几乎不会丢失数据包。
我希望你根本不会注意到交通。
当您测试设置时,发现您的网络实际上无法处理流量峰值,一种解决方案是在某个时间间隔内发送数据包,而不是严格的时间。因此,“每 10 +-2 秒发送一个数据包”而不是“每 10 秒发送一个数据包”。
You don't mention what kind of network, so I'll assume you're talking about a LAN.
Let's assume the worst: all proxies send at the same time, and your LAN's got old equipment and only supports 10 megabits a second.
You'll then have 200*10 = 2000 UDP packets going out in one shot. If you have 100 bytes in each then you're talking about ~195 kibiBytes hitting your network. That's about 0.02% of the cable's capacity. On a LAN you should have almost no packet loss.
I expect you wouldn't even notice the traffic.
When you test the setup, and you find that your network can't actually handle the spikes of traffic, one solution is to send out the packets within some interval, rather than a strict time. So instead of "send a packet every 10 seconds", "send a packet every 10 +-2 seconds".