问题标签 [ethernet]
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.
linux - 在 Linux 下使用 Wireshark 捕获时的以太网 FCS
在 Linux 下使用 Wireshark 捕获数据包时,是否有某种方法可以从以太网帧中获取帧校验序列 (FCS)?
sockets - Easy Button to UDP Packet - 控制板术语
对于那些处理微控制器编程的人...
我想要一个瞬时接触开关(假设是一个 Staples Easy Button,因为这是最有趣的瞬时接触开关),当它被按下时,通过网络发送一个广播 UDP 数据包(由 .NET 应用程序接收并从那里做各种有趣的事情)。
到目前为止,我发现的最接近的是工业数据采集硬件接口,但我正在寻找更多具有几个输入引脚和以太网输出的可编程单微控制器。这个或任何特定建议是否有特殊术语?
php - 瓶颈在哪里?
我有两台测试计算机联网在一起。
一个有千兆以太网,另一个有 10 兆。
理论上,两者之间传输的数据应该达到大约 1 兆字节 p/s。
现在我正在使用 PHP 脚本使用 fread 将数据从一台主机读取到另一台主机。读取文件和要读取的文件都是 chmod 777。
两台计算机都在运行 wampserver,并且都安装并运行了 zonealarm 和 avast。Zonealarm 被配置为将两台计算机识别为网络的受信任部分。
使用 time() 函数计算脚本读取另一个 comp 上的文件所需的时间。我正在读取的文件是 10 兆字节。它应该只需要 10 多秒。然而,它需要大约 30 秒。平均300kbs。
那么我的设置中的瓶颈在哪里?
一个comp是Vista,如果重要的话,另一个是XP。
c# - 在 C# 中检测网络状态(连接 - 断开)
我需要一段代码来检测网络连接是连接还是断开。连接状态意味着电缆已插入以太网连接。断开状态意味着没有连接电缆。
由于我在 Windows CE 上运行,我无法使用 WMI 界面。我不介意调用 Win32 API,但请记住我使用的是 Windows CE 并在 Compact Framework 上运行。
error-handling - PPP 或以太网如何从错误中恢复?
查看数据链路级标准,例如 PPP通用帧格式或以太网,不清楚如果校验和无效会发生什么。协议如何知道下一帧从哪里开始?
它是否只扫描下一次出现的“标志”(在 PPP 的情况下)?如果是这样,如果数据包有效负载恰好包含“标志”本身会发生什么?我的观点是,无论是使用数据包帧还是“长度”字段,都不清楚如何从“长度”字段可能已损坏或“帧”字节可能恰好是其中的一部分的无效数据包中恢复。数据包有效载荷。
更新:通过查找“基于 GFP CRC 的框架”,我找到了我正在寻找的东西(严格来说,这不是我所问的)。根据通信网络
GFP 接收器通过三态过程与 GFP 帧边界同步。接收器最初处于搜寻状态,它一次检查四个字节,以查看在前两个字节上计算的 CRC 是否等于接下来两个字节的内容。如果未找到匹配项,则 GFP 将向前移动一个字节,因为 GFP 假定物理层给出的八位字节同步传输。当接收器找到匹配时,它会进入同步前状态。在此中间状态下,接收器使用暂定 PLI(有效载荷长度指示符)字段来确定下一帧边界的位置。如果已经实现了成功帧检测的目标数量N ,则接收器进入同步状态. 同步状态是接收器检查每个 PLI、使用 cHEC(核心标头错误检查)对其进行验证、提取有效负载并进入下一帧的正常状态。
简而言之,每个数据包都以“length”和“CRC(length)”开头。无需转义任何字符,并且提前知道数据包长度。
数据包成帧似乎有两种主要方法:
- 编码方案(位/字节填充、曼彻斯特编码、4b5b、8b10b 等)
- 未修改数据 + 校验和 (GFP)
前者更安全,后者更高效。如果有效载荷恰好包含有效数据包并且线路损坏导致后续字节包含“帧开始”字节序列,则两者都容易出错,但这听起来非常不可能。很难找到 GFP 稳健性的确切数字,但许多现代协议似乎都在使用它,因此人们可以假设他们知道自己在做什么。
networking - 生成树协议
实现生成树协议时如何获取交换机MAC地址?
linux-kernel - 多个网卡的相同驱动程序——性能瓶颈?
我正在为多个英特尔网卡(英特尔 EXPI9402PT,基于 82571EB 芯片)使用驱动程序 e1000e。问题是当我尝试在多个接口上使用最大速度(1GB)时,每个接口的速度开始下降。
我在内核空间中有自己的驱动程序,旨在仅发送给定的数据包。它只是通过以下方式分配数据包:
他们通过以下方式发送它们:
每个接口都有自己的驱动程序实例。
对于一个接口,我得到:120435948 字节/秒。
对于两个接口,我得到:61080233 字节/秒和 60515294 字节/秒。
对于三个接口,我得到:28564020 字节/秒、27111184 字节/秒、27118907 字节/秒。
可能是什么原因?hard_start_xmit 函数是可重入的吗?
arduino - 创建网络适配器 - 有多难?
我有兴趣在Arduino之上构建一个小型(商业)设备。我希望它能够与网络连接。网络如标准以太网、Cat5、RJ-45 等。
我知道有一个Ethernet Shield,但它的成本甚至比 Arduino 本身还要高,而且相当大。自然,我希望我的设备尽可能小且尽可能便宜。
所以我正在考虑自己重新创建一个以太网模块。问题是——我对以太网没有任何经验,也不知道从哪里开始寻找。因此,我什至不能说我的想法是否可行。
最终,我希望该设备具有三个端口 - 一个用于输入信号,两个用于输出,因此该设备本质上是一个小开关,它也可以插入其中。切换能力不需要非常快——数据量会很低。10Mbit绰绰有余,甚至可以更慢。
如果这是不可能的,用于控制设备本身的单个端口也可以。
我正在考虑的另一种可能性是电力线通信——通过电力线发送信息。这是我没有经验的另一个领域。我应该查看哪些硬件,在哪里可以找到有关必要软件的信息?
那么 - 谁能告诉我这些想法是否可行,如果是的话 - 我应该从哪里开始寻找?
serial-port - 如何将数据从串行端口传输到以太网端口?
我需要将数据从串口传输到以太网端口。怎么做到呢?使用软件+硬件还是只使用硬件?如果是这样,我可以采取什么方法,如果可以使用软件完成,是否可以使用 C?
python - 如何指定 Django 测试服务器应该监听哪个 eth 接口?
正如标题所说,在具有多个 IP 环境的多个以太网接口中,默认的 Django 测试服务器未连接到我可以从我的 PC 访问的网络。有没有办法指定 Django 测试服务器应该使用的接口?
- 添加 -
网络配置在这里。我正在通过我的 PC 上的 143.248.xy 地址连接到机器。(我的电脑也在 143.248.ab 网络中。)但是我找不到这个地址。普通的 apache 和在其他端口上运行的其他自定义守护程序一样工作得很好。
配置这台机器的不是我,所以对网络的细节了解不多……
-- 新增 (2) --
最后,我使用 w3m(在终端上运行的文本模式 Web 浏览器)从 localhost 进行连接。:P