- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Contiki OS 提供的 6LoWPAN 实现。
我的问题是 Rime 只是在没有设置标志 UIP_CONF_IPV6
的情况下工作。一旦我设置标志以激活 IPv6 支持,编译器就会报告函数 rime_sniffer_add()
和 rime_sniffer_remove()
的“多重定义”,它们位于 rime.c
以及 sicslowpan.c
。
有人设法解决了这个问题或一个有效的例子吗?
最佳答案
我想补充一点,虽然这是一个老问题,但它可以使用更清晰的解释。
你不能在 Contiki 中同时使用 Rime 和 6LoWPAN,因为网络堆栈支持单个网络驱动程序(如果你查看 netstack.h)。
默认驱动程序是 rime。如果您定义 UIP_CONF_IPV6 标志,它会定义 WITH_UIP6 标志,这又将网络驱动程序设置为 sicslowpan。
收到消息后,MAC 驱动程序(在本例中为 llsec)直接调用网络驱动程序定义的 input() 函数。没有数据包 header 的多路分解,因此,它还是 rime 或 sicslowpan,如在编译时 定义的那样。
现在 - 您可以使用 rime 发送消息。据我从代码中可以看出,这些嗅探器用于辅助功能,例如为 rime 或 6lowpan 启用更详细的 powertrace。这不是必需的,因此您可以注释掉嗅探器。但是,话又说回来,即使您可以同时编译 rime 和 6lowpan,并且可以发送消息,您也不会收到任何东西(经过测试...)。
如果你想用6lowpan做广播,使用组播地址进行广播,使用icmp或者udp。
希望这对您有所帮助。米泽尔
关于ipv6 - 在 Contiki 操作系统中使用 Rime 和 6LoWPAN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21912607/
文章题目:RIME: Robust Preference-based Reinforcement Learning with Noisy Preferences,ICML 2024 Spot
如何在recv_uc 函数中打印接收到的数据?在这种情况下是 var 的值。我使用 packetbuf_copyfrom(&var, 5) 将 var 放入发送的数据包中。 PROCESS(sendi
我正在尝试使用 Contiki OS 提供的 6LoWPAN 实现。 我的问题是 Rime 只是在没有设置标志 UIP_CONF_IPV6 的情况下工作。一旦我设置标志以激活 IPv6 支持,编译器就
我是一名优秀的程序员,十分优秀!