问题标签 [lwip]
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.
fpga - 使用 lwip 库时 xilinx sdka 错误
我正在尝试使用以太网接口使用 MicroBlaze 在 spartan 3 A 上创建一个回显服务器,但是当我编译项目时出现未定义的引用错误。我正在使用 lwip 1.3.0。
我想我错过了一个图书馆,但我找不到哪一个?
错误是:
microblaze_0\libsrc\lwip130_v3_01_a\src/contrib/ports/xilinx/sys_arch.c:347 >未定义对“sem_post”的引用
multithreading - 问:如何使用 LwIP Netconn API 在 FreeRTOS 中创建线程以处理 TCP 服务器上的多个客户端?
我正在运行基于 LwIP Netconn API 的 tcpecho 示例,代码来自http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1743/LN1734/PF257896 特别是描述的 TCP 回显服务器应用程序在应用笔记 UM1713 中,并在文件夹 LwIP_UDPTCP_Echo_Server_Netconn_RTOS 下运行固件,因为我使用的是 FreeRTOS。代码如下。
tcpecho 服务器已经在一个线程上运行,但一次只能处理 1 个客户端,所以我想将其更改为处理多个客户端。据我从不同的论坛读到,解决方案是使用多个线程来处理多个客户端。由于我不是 FreeRTOS 方面的专家,任何人都可以展示如何做到这一点吗?
谢谢,
embedded - 使用 LWIP SNMP,调用第二个 snmp_vabind_alloc 时发生错误
我正在尝试使用轻量级 Internet 协议 (LWIP) SNMP 发送适当的陷阱。
SNMP Wiki 指出,适当的陷阱应该有
- 当前的 sysUpTime 值绑定
- 标识陷阱绑定类型的 OID
- 一个可选的变量绑定
然而,vb->value != NULL
当第二个snmp_varbind_alloc
被调用时它会出错。
当只发送变量绑定,没有其他的时候,陷阱发送到网络管理站ok。
linux - TCP/IP:建立连接后设置保持活动的套接字选项
是否可以在一些假设的应用程序级握手之后设置套接字的SO_KEEPALIVE
选项(TCP 保持活动间隔和 TCP 保持活动值)?还是必须在调用 to 之前设置它accept
?
我关心 Linux、Windows 和 eCos lwIP 堆栈之间的互操作性,因此非常感谢有关这两个平台的信息。
sockets - 在 Mini-OS 中无法获得超过 3 个活动 TCP 连接?
我正在Mini-OS(xen中的操作系统)中编写一个TCP服务器,它可以连接到多个TCP客户端。我编写了一个简单的代码来处理多个 TCP 客户端,但是代码存在问题。问题是我无法让服务器连接三个以上的活动连接。第 4 个或更多客户端因未知原因无法连接。我环顾论坛并尝试增加MEMP_NUM_TCP_PCB
in opt.h
( stubdom\lwip-x86_64\include\lwip\opt.h ) 的数量限制,但它也没有帮助。
我在Ubuntu上运行 TCP 客户端。根据我所见,第 4 个客户端似乎确实已连接,但在运行期间引发了异常"write" function: "Resolver Error 0 (no error)"
我怎么解决这个问题?
sockets - 使用 LWIP 是否有连接限制?
我正在使用 Lwip 协议编写 TCP 服务器,通常服务器可以连接到多个 TCP 客户端。但是我有一个问题,服务器不能连接三个以上的活动连接。第 4 个或更多客户端因未知原因无法连接。我查看了论坛并尝试增加MEMP_NUM_TCP_PCB
opt.h (lwip-x86_64\include\lwip\opt.h) 的数量限制,但没有帮助。
以下是我的代码,我的问题是使用 LWIP 是否有最大连接限制?最大连接数为 3 个或更多?
networking - 使用 LwIP 在嵌入式系统中实现 VPN
我被要求在嵌入式系统上的现有软件项目中实现 VPN 功能,以便通过网络使设备可用于外部服务器,同时避免防火墙问题(无需加密,只是为了使其可访问)。
不幸的是,嵌入式系统基于 Cortex-M4 MCU,因此几乎可以立即使用 VPN 的 Linux 不是一个选择。我所拥有的只是一个 RTOS 和一个工作的 LwIP 堆栈。
我过去使用过VPN。但是,我对实现 VPN 的网络知识相当有限,所以我很困惑。正如我所想,我会使用当前的 LwIP 实例来建立隧道连接,应用程序将使用第二个实例进行实际的网络通信,而第二个实例的网络接口是虚拟的(就像一个水龙头设备在 linux 上),封装其低级数据并通过第一个 LwIP 实例的隧道连接对其进行传输。
也许这样我就可以为问题创建一个自定义解决方案,但该解决方案应该符合任何标准(因为服务器将是任何类型的复杂系统)。
所以我想知道是否有人遇到过这样的任务,并且会感激任何提示该怎么做,至少是一个方向。提前致谢!
sockets - TCP 重传,即使已经收到数据包确认
我正面临 RabbitMQ 服务器的奇怪行为(在 ubuntu 服务器 14.04.3 LTS 下)。
客户端是基于微型 MCU (Cortex-M3) 上的 lwip v1.3.2 的 MQTT 实现。当我的客户端使用其 IPv4 地址连接服务器时,它可以工作并且客户端-服务器 TCP 套接字具有正确的 [PSH+ACK]、[ACK] 序列。
但是当客户端通过我的路由器(端口 1883 上的 NAT 活动)连接时,我得到以下序列(在服务器端)。
服务器 tcpdump 端口 1883:
请注意,它只发生在基于lwip的客户端上;我已经使用 node.js 下的 mqtt 模块成功测试了。
有人知道发送的数据包格式有什么问题吗?
谢谢,丹。
lwip - lwIP 将多个 tcp/http 段组合成单个数据包
tcp_write()
发送 ( tcp_output()
)时,lwIP 将 2 个单独的段组合为 1 个数据包时遇到问题。有没有办法让 lwip 停止组合这些段并单独发送每个段(应该像 2 个数据包一样)?一直在寻找没有运气
使用 lwip 版本 1.3.0
freertos - lwIP + FreeRTOS 端口存储在 for 循环中
我可以毫无问题地接收和发送 TCP 帧。但经过一段随机时间(从 1 分钟到 1 小时),程序失败,卡在 vListInsert 中的 for 循环中。
在 tcpip 线程中,代码等待一帧。这是用
这是在 sys_arch.c 中定义的。当被调用时,我得到一个异常。我检查了 mbox 是否已初始化,并且可以将故障追溯到 vListInsert 中的列表迭代(在 vTaskPlaceOnEventList 中调用)
正如我所看到的,列表指针被弄乱了,因为这一点给出了异常。我还没有弄清楚为什么。
调用堆栈是
- tcpip_thread
- sys_mbox_fetch
- sys_arch_mbox_fetch
- xQueueGenericReceive
- vTaskPlaceOnEventList
我试图在 lwIP 中增加和减少 TCPIP_THREAD_STACKSIZE(从 600 到 4k)和 MEM_SIZE 到 12k,但没有运气。
使用的优先级是以下 3 个;tskIDLE_PRIORITY+1 tskIDLE_PRIORITY+2 和 5(这里没有 tskIDLE_PRIORITY)
使用在 FRDM-K64F 板上运行的 Cortex M4。
使用 Netconn API 和非抢占式。
知道该怎么做以及下一步要尝试什么的解释吗?在这里卡了5天...
编辑:发送最多 50 个数据包,224 字节数据包并等待来自服务器的应答,这是在发送下一个数据包之前的 191 字节。每 1.5 秒执行一次(最多输出)