问题标签 [unetstack]
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.
unetstack - 如何在 UnetStack 中计算多跳传输中的端到端延迟
我开发了一种能量感知路由协议,现在为了进行性能评估,我想计算数据包通过多跳链路时的端到端数据包传输延迟。我无法决定要考虑哪些时间信息是考虑日志文件中可用的模拟时间 ( log-0.txt
) 还是调制解调器的传输时间 (txtime
和rxtime
)。请让我知道在 UnetStack 中计算端到端延迟的方法。
unetstack - 如何在 UnetStack 中计算 Ping 实用程序实现中的往返时间
我开发了类似于 UnetStack1.3 /samples/ping
(静态路由信息添加到路由表中RouteDiscoveryNtf
,因为在上层通知(DatagramNtf
或DatagramDeliveryNtf
或DatagramFailureNtf
)中没有可用的时序信息。
往返时间的计算是ping 示例中的clousure ( ) 中实现的差异rxtime
和txtime
可用的。TxFrameNtf
RxFrameNtf
fshrc.groovy
我还尝试分析在 UnetStack3 中实现的 ping 实用程序,但无法确定。请让我知道 RTT 是如何计算的。
unetstack - 如何更改两个节点之间的功率级别?
如何通过增加功率水平来减少损耗?
这是我正在使用的代码: https ://github.com/maibewakoofhu/Unet
我正在使用以下方法更改功率级别:
在噪声级别 68dB、功率级别 = -20dB 时,所有DatagramReq都已成功发送。
在噪声级别 70dB、功率级别 = -20dB 时,DatagramReq失败。
现在,将功率电平增加到高达 125dB,DatagramReq仍然失败。
intellij-idea - 在 IntelliJ IDEA 中配置 2 节点模拟
我想在 IntelliJ IDEA 中设置网络模拟。为此,我尝试将 IDE 配置为使用包中包含的 2-node-network.groovy 脚本。我可以运行模拟脚本并通过 Web 界面访问调制解调器,但某些 shell 命令(例如“tell”、“host”等)将不起作用。
到目前为止我采取的步骤:
在IDE中配置一个环境变量指向Unetstack主目录(unet_home=.../unet-3.0.0/)
在 IDE 中使用从 2-node-network.groovy 脚本复制的代码进行了新的运行配置,但更改了 home 变量:
网页外壳输出:
unetstack - bin/unet 音频不适用于 ubuntu18.04
我在ubuntu18.04中运行unetStack包时,出现了错误。错误信息是“Native library yoda_phy_pa_amd64 not found”。
我已经正确安装了java环境。我在以 libyoda_phy_pa_amd64.so 命名的 unet3.0.0/lib 目录中看到了与 yoda_phy_pa_amd64 相关的库。我将文件复制到 usr/lib 和 usr/local/lib,它仍然无法正常工作并显示相同的错误信息“未找到本机库 yoda_phy_pa_amd64”。
安装java环境, sudo apt-get install openjdk-8-jre 获取dir的权限, sudo chmod 777 -R unet-3.0.0 运行音频demo,bin/unet audio
我希望音频演示能够正常工作,并在浏览器中显示 GUI。我已经在另一台使用 ubuntu16.04 的计算机上成功运行了演示。但我不知道为什么它不起作用。
unetstack - 如何实现基于调度传输任意信号
就我而言,我想在特定时间唤醒 subnero 调制解调器并传输自己生成的信号。根据 unetStack 手册第 25 章,调度程序模块能够在特定时间组织调制解调器唤醒。所以我尝试使用跟随 groovy 脚本来测试调制解调器。毫无疑问,它不起作用。
我发现有一个名为“WakeFromSleepNtf”的函数,它有助于控制调制解调器,但是没有详细说明这个函数。
虽然可以使用 TxBasebandSignalReq 的延迟函数或名为TxTime的参数来制定时间表来控制调制解调器在特定时间轴上工作,但它要求调制解调器一直工作。以这种方式,调制解调器的电池是一个问题,特别是当调制解调器与车辆集成时。
我相信如果有一个通知功能或其他方法来实现当subnero唤醒时自动运行我的脚本,那么问题就可以解决。
unetstack - 有没有办法在 UnetStack 中的模拟和真实调制解调器之间传输和接收数据
我正在研究基于属性的路由协议,其中源节点(节点 A)从两个相邻节点(节点 B 和 C)收集属性,并根据排名,节点 A 决定将其数据转发到节点 B 或节点 C
现在,我想用真正的 UnetStack 兼容调制解调器在测试台上测试这个算法,但是只有两个真正的调制解调器可用,所以如果我创建我的拓扑,源节点(节点 A)在笔记本电脑上运行(使用模拟调制解调器)和邻居(节点 B 和 C)使用真正的调制解调器运行。节点 A 是否可以通过节点 B 和 C 传输和接收数据。因为节点 B 和 C 使用真正的调制解调器。
请让我知道,我如何只使用两个真正的调制解调器来做到这一点,还建议是否有其他方法。
unetstack - UnetStack - 物理参数
我正在寻找探索这三个物理参数:-
1.phy[].fec
2.phy[].feclist
3.phy[].errorDetection
我在哪里可以获得包括实施在内的详细信息?
networking - 如何指示移动节点沿特定轨迹移动?
我希望节点 A 发送节点 B 应该移动的轨迹的详细信息。
例如,我希望节点 B 以 1m/s 的速度移动到位置 [2.m,0,0]。我将发送一个带有数据 [2,0,0,1] 的数据报。现在节点 B 如何从接收到的数据报中提取信息并相应地改变其轨迹?
unetstack - 如何将 Python UnetSocket 连接到我使用 agentForService 创建的代理?
我正在尝试在 Python 脚本和在 UnetSim 上运行的模拟之间建立联系。我想使用我在模拟中创建并添加到每个节点的容器中的Python_Agent.groovy从 Python 发送消息并在 UnetStack 中接收它们。我也想做相反的事情。
我使用 fjage 文档(https://buildmedia.readthedocs.org/media/pdf/fjage/dev/fjage.pdf)来帮助我。问题是在网关类服务中没有我创建的PYTHON_AGENT服务。我可以理解,因为我的枚举服务没有修改有 NODE_INFO、PHYSICAL 等的类服务......我的问题是文档 1.6.3 中的示例如何工作?它适用于我的情况吗?
这是我的代码:
PythonSocketExample.py
UnetSimulation.groovy
Python_Agent.groovy
我得到的第一个错误是:
然后如果我评论枚举部分并修改设置部分,模拟工作
当我运行 PythonSocketExample.py 时,出现错误
UnetStack 上的日志在这里结束:
谢谢您的帮助
编辑
感谢您的消息和一些研究,我现在能够使用 MessageBehavior 和 GenericMessage 在 UnetStack 和 Python 之间发送和接收消息。我希望我的模拟接收不止一条消息,但由于我 add new MessageBehavior
在我的 startup() 中,我PythonAgent.groovy
需要与 add new MessageBehavior
我发送的消息一样多。
我测试将其放在 processMessage(Message msg) 上,但似乎此方法无法识别 GenericMessage()。
问题可能是如何多次使用 MessageBehavior ......这是我的代码:
Python
ping_test.py
FakeSerial_V2.py
clientSocket.py
Groovy
sim1.groovy
PythonAgent.groovy
USMARTModem.groovy
对不起,很长的帖子......我认为一切都是理解代码所必需的