问题标签 [packets]

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.

0 投票
2 回答
3274 浏览

java - 确保 TCP 客户端和服务器之间没有丢包

我正在编写一个 Java TCP 客户端,它将数据块发送到 C 服务器。客户端-服务器在我的开发 PC 上运行良好。此代码在硬件板上部署后显示数据包丢失。我只有日志,我知道服务器没有收到所有数据包。我没有要测试的硬件。因此,在第一层,我想非常确定客户端代码确实发送了所有需要的数据。

这是我的代码(Java 中的客户端部分)。我如何确保完成此操作?是否有一些带有计时等的重新发送命令?

这是接收此数据的 C 代码段:

0 投票
7 回答
16727 浏览

c - 继续调用 malloc() 和 free() 有多糟糕?

我正在发送一个文本文件 - 客户端-服务器将文本分解为每个 512 字节的数据包,但一些数据包包含的文本小于最大大小,因此在服务器端接收每个数据包时我正在调用 malloc() 再次构建一个字符串,这是一种不好的做法吗?保留一个适合最大长度的工作缓冲区并继续迭代、复制和覆盖其值是否更好?

好的@nm这里是代码,这个 if 在 for(;;) 循环中被 select() 唤醒

0 投票
2 回答
3565 浏览

sockets - 一个套接字上的多个 UDP 数据包

假设我有一个带有多个客户端 (UDP) 的服务器。每当它从客户端收到一个数据包时,服务器将花费 1 秒处理该数据包,并在处理后立即将一个新数据包发送给所有客户端。

如果 0.1 秒内有 10 个数据包到达,服务器是否能够做到这一点?换句话说,它是否能够在处理完第一个接收到的数据包后立即向每个客户端发送一个新数据包?(我感觉套接字会被其他 9 个未读数据包“阻塞”)

服务器循环就像:

0 投票
3 回答
12947 浏览

security - 合法代码中出现 0x90 (NOP) 序列

背景:我编写了一个 python 脚本来检查 IP 数据包,特别是数据包的有效负载/数据,以检测它是否可以用于缓冲区(堆栈)溢出。现在据我了解,NOP sled 用于填充堆栈,以便指令指针最终会运行到您的漏洞利用代码中,我可以通过查找重复出现的 0x90 轻松检测到这一点。在 SQL slammer 的情况下,我已经看到有很多 NOP 命令的代码只有 8 个,所以我可能至少可以使用 8 个。

现在我的问题是,合法代码中经常使用 NOP 雪橇吗?如果答案是肯定的,是否有一些特定情况(这意味着我可以查找这些情况,然后将数据包排除为可能无害)还是这种方法对于识别恶意代码不实用?

0 投票
1 回答
271 浏览

android - 控制网络通信

我需要开发一个 Android 应用程序,通过 WiFi 与计算机建立连接,然后发送数据包。但是,我需要控制发送数据包,不仅是他们的数据,还有头,应该也可以修改他们头中的任何字段。在 Windows 中,可以使用 winpcap 和 jpcap,我想知道我是否可以在 Android 上找到类似的东西。是否有任何现成的 API 可以帮助解决我的问题?

0 投票
2 回答
641 浏览

python - 将数据包发送到网络服务器?

我刚刚进入 python,我现在不知道如何发送数据包。那么谁能告诉我如何将数据包发送到网络服务器?我也想自己选择包的大小?

我正在使用python 2.7。

0 投票
1 回答
1422 浏览

linux - 如何从arptables将arp数据包发送到队列

我的目标是找到一种方法来处理(丢弃、接受、转发等)来自第 2 层的数据包......

我知道 *inux 中的“iptables”允许我们将数据包发送到“NFQUEUE”以进行进一步的数据包处理....

但它支持第 3 层数据包......这意味着它不会检测来自第 2 层的数据包......

尽管“arptables”检测到发往第 2 层的数据包,但我找不到将其发送到“NFQUEUE”的方法

有什么方法可以让我们选择是否应该接受/丢弃/继续层数据包?

0 投票
2 回答
62608 浏览

networking - 如何根据延迟和带宽计算数据包时间

我在主机和交换机之间有一个链接。

该链接具有带宽和延迟。如何计算 2 个数据包(大小为 1KB)从主机 A传输到交换机 1的时间?

这是图表(我说的是第一个链接)

延迟和带宽

注意:我只是想手动计算这些值,我想知道计算这些问题的原理/规律。

0 投票
1 回答
1597 浏览

parsing - 解析使用wireshark捕获的数据包以使用libpcap或类似库进行管理帧识别

我想使用libpcap离线解析wireshark捕获的数据包。我正在监控模式下从无线网络捕获数据包。我读过“libpcap”可用于捕获和解析以太网中捕获的数据包。它也可以用于无线网络吗?如果是的话,任何人都可以建议我一些教程吗?如果否,哪个库适合它以及如何使用它?

0 投票
3 回答
1763 浏览

c# - 串行通信中的拆分消息

我是串行通信的新手。我已经阅读了相当多的教程,并且我想做的大部分工作都在工作,但是我有一个关于与 C# 进行串行通信的问题。我有一个微控制器,它不断通过串行线发送数据。数据格式如下:bxxxxxx.xx,xx.xx* 其中 x 代表不同的数字,+ 或 - 符号。有时想从我的 PC 上的 C# 程序中读取此信息。我遇到的问题是,即使我使用的是 ReadTo("*"); 我认为这会读取所有内容,直到 * 字符。如何确保我收到的消息是完整的?

谢谢您的帮助。