问题标签 [packet-loss]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Android UDP丢包
所以我正在编写一个应用程序,它通过 UDP 每秒发送 15 次 5Kb 数据包。我知道我会丢失一些数据包,但我似乎在最初几秒钟后丢失了所有数据包。即使我放慢速度以每 10 秒发送一次 5Kb 数据包,我仍然会丢失它们。什么会导致这个?
networking - 网络丢包延迟带宽模拟
所以我遇到了很多网络模拟器,其中大多数要么是永久打开的(因为你必须关闭它才能关闭它),或者有一个停止和启动按钮。现在,我一直在寻找一个网络模拟器,它可以模拟数据包丢失、延迟、带宽速度的选择,还可以在设定的时间循环打开或关闭。我找到了一个名为 FnLag 的程序,但问题是(至少对我而言)它不是免费的。
基本上我的问题的较短版本是有人知道免费的 Windows 或 linux 网络模拟器,它可以模拟丢包、延迟、带宽控制、单独的下游和上游规则、可以循环打开和关闭的 tcp 和 udp 选择或突发/脉冲功能?如有必要,我可以进一步详细说明。
udp - 使用 Wireshark 进行“RTP over UDP”丢包分析
我在机器 A 上运行应用程序 A,在机器 B 上运行应用程序 B。两台机器都运行 Windows7。应用程序 A 通过 UDP 通过专用 LAN 向应用程序 B 发送 RTP 数据包。我们在两台机器之间遇到 UDP 数据包丢失,我们正在尝试确定数据包丢失是发生在网络级别还是机器的网络堆栈上。
我们使用 WinPcap 在两台机器上运行 Wireshark。通过分析 Wireshark 中的 RTP 流,我们可以看到所有 RTP 数据包都是从机器 A 发送的,但机器 B 上没有收到一些数据包。我知道 UDP 数据包可以被操作系统的网络堆栈丢弃,例如应用程序从其套接字读取的速度不够快,并且套接字的缓冲区被填满。但我想知道的是:
如果我看到机器 B 上的 Wireshark 缺少 RTP 数据包,是否一定意味着该数据包不是从网络接收到的?或者,在 Wireshark “拦截”数据包之前,数据包是否可能在操作系统中的某个时间点被丢弃?
c++ - ping-c++的丢包测量
我需要编写 C++ 代码来测量 ping 的丢包率——丢包的百分比。我看到IPHLPAPI
库中有很多关于 RTT 的统计信息,但没有丢包。
如果有人对此有所了解,那就太好了!
谢谢你。
java - 使用 Java 测量数据包丢失
我正在开发一个应用程序来分析您的互联网连接质量,其中一部分是测量数据包丢失。
我正在考虑将包发送到一个 IP 地址,但是如何发送消息并检查它们是否返回?我猜我需要发送一个提示回复的包裹,但我无法使用搜索或谷歌找到一个例子。
或者我应该使用现有流量(如何?)?
除此之外,我如何测量往返时间?
sockets - 操作系统级别的 UDP 数据包丢失:Windows 和 Linux,但仅在运行许多客户端的情况下
我一直在调查一个问题,即我们有一个 UDP 服务器发送给多个客户端。服务器正在多播通道和端口上发送数据。客户端在同一台机器上运行,每个客户端都打开一个与其他客户端相同的端口的套接字。
我们错开客户的开始。当我们达到一定数量的客户端时,比如 10 个,我们开始看到丢包。我们已经使用各种监控工具消除了 NIC 问题,并且套接字缓冲区大小比消息大小大几倍。我们的发送间隔非常大(五秒),客户端对数据不做任何事情,因此消耗率不是一个因素。正如标题所说,我们已经在 Windows Server 2008 和 Linux 上重现了该问题(不确定版本)。
我们目前的理论是,第 10 个客户端在将所有这些数据复制到每个套接字的操作系统上施加了过多的负载。问题是我们每五秒只发送 500,000 个字节,这看起来一点也不多。
大多数情况下,我在这里发帖是希望有人看到类似的问题。我在搜索中被指向此修补程序,但它没有解决问题。任何用于调查处理网络流量的操作系统内部细节的资源将不胜感激。不幸的是,我缺乏这种领域的知识,而且很难找到关于这个主题的好的和详细的阅读材料。
php - 我的网站在 70% 的国家/地区丢失数据包,我如何确定丢失数据包的原因?
我对网络不友好,所以为什么我在这里发帖并想从我的前辈那里知道。
我在 google page speed tester 上查看我的网站,它显示结果 90/100 我在 pingdom 上查看我的网站,它在那里显示出良好的结果。
但现在我找到了显示主要国家和结果的新工具。当我在http://cloudmonitor.ca.com查看我的网站时
它在 30% 的国家和所有其他国家显示出良好的结果,它显示丢包 (100%)
我的问题是我们如何确定我的网站丢失数据包的原因?
它的解决方案是什么?
这个问题是来自我的服务器还是来自我的网站?
.
我创建了新的html空白页并将其设置为我的索引页,之后我再次测试,结果仍然显示丢包,这意味着这个问题不在我的网站上。
这是快照。这是现场结果
我的领地:http: //www.collectioncoupons.com
更新:当我在浏览器中访问我的网站时,网站工作正常。但是当我在命令中测试我的域或 IP 198.178.123.219 时提示其显示“请求超时”
为什么在命令提示符中超时?
这是什么问题?
c - 调试想法以调查数据包被丢弃?
我最近遇到了一个场景,我发现 ICMP 网络不可达 [type-1, code-3- 表示目的地不可达,这是正确的 wrt 跟踪路由工作,请参阅下面的 rfc 链接] 数据包仅在发送的字节数超过'X时才会被丢弃' [某些] 字节。
** 检查此 RFC,第 3.1 节 - https://www.rfc-editor.org/rfc/rfc4443#section-3.1 **
例如[来源:基于 FreeBSD 的跟踪路由代码],
问题
当我 malloc 并发送“X”字节的数据时,我会在接收缓冲区中收到回复。但是,不大于该限制。即,当“outpacketlen”大于“X”字节时,retval 始终为 0,即使您 malloc 并将缓冲区重置为“X”字节。但是,通过数据包捕获,我看到在我的主机中收到了数据包。意思是,我收到数据包但不在接收缓冲区中。这如何/何时可能[任何格式错误的数据包信息?]?
我该如何调试这个问题?
有没有可以用来调试这种场景的工具?我在 BSD 中使用了“truss”实用程序。有没有更好的方法来处理这个?
我应该如何调查接口和应用程序之间丢失的数据包?根据您的经验,哪些工具/实用程序/技术将是有效的选择?
我错过了什么吗?感谢您的时间和投入。我很感激。
h.264 - H.264丢包中的PSNR计算
我正在使用 RTP 流式传输 H.264(libx264) 视频。我想比较 h.264 中不同的错误恢复方法。在一些研究论文中,psnr被用来比较它们。所以我想知道如何在流式传输期间计算 h.264 视频的 psnr。
android - Android DatagramSocket 接收缓冲区大小
我正在尝试设置/增加数据报套接字的接收缓冲区大小。我想这样做,因为在位于同一本地网络上的 PC 和 Android 设备之间发送数据时我遇到了一些随机数据包丢失,我想测试增加缓冲区大小是否会对减少此 UDP 产生任何影响数据包丢失。我正在尝试使用以下代码设置缓冲区大小。
然后稍后(在我开始从套接字读取之前)我检查接收缓冲区大小,如下所示:
但是,日志消息总是显示缓冲区大小为 163840。这段代码有什么问题?我是否应该以另一种方式设置接收缓冲区大小。
谢谢