OMNET++与INET下无线介质通信链路隐藏及物理层传输禁用咨询
INET环境下仅保留sink节点接收链路的配置方案
方案1:仅隐藏非必要链路可视化(无代码修改,推荐)
直接在omnetpp.ini配置文件中调整介质可视化参数即可实现效果:
- 先关闭默认的所有无线信号可视化开关
- 新增过滤器规则,仅匹配发送到sink节点的无线信号
# 关闭全局无线信号默认显示 *.visualizer.*.mediumVisualizer.displaySignals = false # 仅显示目标为sink节点的信号传输链路,sink请替换为你实际的sink节点名称/路径 *.visualizer.*.mediumVisualizer.signalFilter = "destinationModule == \"sink\"" # 可选:关闭无关节点的接收状态提示 *.visualizer.*.mediumVisualizer.displayReceptions = false
如果你使用的是INET 4.2及以下版本,将mediumVisualizer替换为radioMediumVisualizer即可生效。
方案2:物理层层面禁用非sink节点的非目标传输(彻底禁用多余传输处理)
如果需要从物理层逻辑上直接丢弃所有非发给sink节点的数据包,不止是隐藏可视化效果,可以按如下配置:
# 所有普通传感器节点的物理层直接忽略非发给自身的数据包 *.sensor[*].radio.receptionFilter = "!isForUs" # sink节点保留所有接收逻辑 *.sink.radio.receptionFilter = ""
配置后普通节点不会处理非目标包,也不会生成对应的传输链路记录,自然不会显示多余链路。
内容的提问来源于stack exchange,提问作者Gérard KPONHINTO
相关产品推荐
相关产品推荐

