问题标签 [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.
networking - 如何用 scapy 计算丢包率?
我正在尝试在视频运行时从 youtube 计算丢包率。
我通过 Scapy 在eth0上一一嗅探数据包并过滤带有IP标头的TCP数据包。
要计算丢包率,我应该有一些收到的数据包和一些发送的数据包(或例外数据包)。
我可以轻松计算接收到的数据包数量,但是从 youtube 发送的数据包有问题。
python - TCP丢包率
我正在尝试从 youtube 计算和限定视频 QoE [体验质量]。我有一个学生项目,我应该计算 MDI [媒体交付指数],我通过嗅探数据包并根据 RFC 4445 计算了 DF [延迟因子]。现在我也需要计算 MLR,但是我使用了序列号有一个问题TCP 数据包的数量,以获取从 youtube 发送的例外数据包的数量以及我将它们存储在列表中的接收数据包的数量。
MLR = (excepted_packets - receivred_packets)/ 间隔时间
所以问题是序列号不会一个一个地增加,并且它们之间的数据包之间有很大的差距,然后 MRL 就变成了一个大数字。
如果您帮助了解“如何计算 TCP 丢包率?”,我将很高兴。
数据包的层数是:
Eth => IP => TCP => RAW
c - 在 c 中停止并等待,无限超时
我在这个项目上遇到了困难。除了二进制文件外,一切正常,可能是因为它们很大并且会出现超时。packetErrorSends 与 send 类似,但它们随机丢弃数据包。我只将它们放在客户端以隔离我的问题。我要使用的算法是发送一段文件,如果它收到它,发送一个“s”并继续阅读并发送发送段。如果超时,发送一个“e”,然后跳入循环,重新发送当前片段并接收下一个状态更新。“While”检查状态,决定是继续还是重新发送该片段。问题是何时超时,服务器卡在重新发送最后一块数据的循环中,客户端不断超时并发送回'e'(打印语句的目的)任何线索是什么'
客户:
服务器:
tcp - TCP 如何处理丢包 - 对物理层的影响
我正在做一些考试复习,我有一个关于 TCP/IP 的问题。我对 TCP 如何处理数据包丢失的第一部分表示满意,但不确定物理层中响应不正确的第二部分。
a) TCP 协议固有的一个假设是丢失确认(ACK)是由网络拥塞引起的。解释 TCP 如何响应丢失的确认,并讨论当物理层实现为无线运营商时该响应不正确的原因。简要讨论这种情况的后果。
udp - 分段 UDP 数据包丢失?
我们有一个应用程序进行 udp 广播。数据包大小大多高于 mtu,因此它们将被分段。
tcpdump 表示所有数据包都已收到,但应用程序并未全部收到。
如果将 mtu 设置得更大,那么整个事情就不会发生,因此不会出现碎片。(这是我们现在的解决方法 - 但德国人不喜欢解决方法)
所以看起来碎片化是问题所在。
但我无法理解数据包丢失的原因和位置。
应用程序开发人员表示,他们可以在接收数据包的套接字上看到数据包的丢失情况。所以他们的应用程序不会丢失数据包。
我的问题是:
linux设备上的tcpdump监控在哪里?
那里的数据包是否已经重新组装或稍后完成?
如何进一步调试此问题?
video-streaming - Introducing artificial errors in Protocol Buffer stream
Is there a way to introduce artificial errors in a Protobuf stream from server to client running on the same PC? In this case, the data in question is a camera stream that should be corrupted by a lossy channel. Alternatively is it possible to have a streaming wrapper around the Protobuf object?
video - Android 上的 VP8/VP9 硬件编码是否可能具有错误恢复能力?
我尝试使用 MediaCodec 类编码为 VP8/VP9。基本上这是可行的,但使用 UDP 传输生成的数据会在解码时产生许多伪影。这是因为有一些数据包丢失。
我知道 vpxenc 可以选择启用错误恢复。MediaCodec 中是否有此选项?我的希望是减少伪影。我找到了 KEY_INTRA_REFRESH_PERIOD 选项,但我尝试过的设备上的 VP8/VP9 似乎不支持它。
我的设置是:Sony Xperia XZ Premium(Qualcomm MSM8998 Snapdragon 835,Adreno 540)。我使用 MediaCodec 对 VP8/VP9 进行编码,并将数据作为 UDP 数据包传输到运行 ffplay (ffplay udp://0.0.0.0:6000) 或 vlc 的 PC。我在发送前将数据放入 ivf 数据包中。
我还想知道尝试使用 MediaCodec 进行编码是否是一个好主意。我想做的应用程序类似于视频通话应用程序。我对 MediaCodec 输出的编码质量的第一印象并不好。当使用 500kBit 和 640x480 编码时,结果不是很好。尤其是移动凸轮时,质量会大幅下降(h264 也是如此)。我应该更好地直接使用 vpx 库吗?
wireshark - .pcap 文件中的数据包丢失检测
我有几个封装在 PCAP 文件中的传输流视频。众所周知,它们有丢包。我需要知道一种方法来检测所有这些损失。使用的协议是:以太网、IP、UDP、RTP,最后是 TS(传输流)。你知道是否有任何标志或字段来检测损失吗?我知道有一些像序列号这样的字段可以让我知道这些信息。尽管如此,我看不到任何序列号的任何跳跃。
我正在使用WireShark,你知道它是否存在更适合分析数据包丢失的工具?这里有我正在使用的 PCAP 文件:https ://drive.google.com/file/d/1vdyBYlUl0P9LXNshf_jISPkCP6_Mxlev/view?usp=sharing
sockets - UDP 数据包在 OS 中被丢弃(使用 asio)
我正在开发通过 UDP 传输数据的客户端-服务器应用程序。我正面临丢包的问题。我添加了套接字缓冲区检查以检测潜在的溢出。我的应用程序还检查数据包中接收到的数字序列。数据包具有固定大小。如果套接字缓冲区的可用空间小于阈值(例如 3 个数据包的大小),则记录“缓冲区的关键级别”消息。如果按顺序跳过数据包的数量,则记录相应的消息。有代码:
即使m_onReceive
禁用检查缓冲区状态和数据包处理并bytesAvailable > 0
替换为true
,也会丢弃 udp 数据包。通过 1Gb 以太网,速度约为 71 Mb/s。使用 Windows 10。我还检查了netstat -s
结果:没有重组失败。套接字缓冲区永远不会溢出。
machine-learning - 添加数据点对 SVM 与 Softmax 损失的影响
是否可以向训练集中添加一个新的数据点,使 SVM 损失保持不变,但 Softmax 分类器损失不变?