You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OMNeT++如何将NED文件中连接的静态延迟修改为omnetpp.ini可配置参数

OMNeT++ NED链路延迟可配置化实现方法

完全可以实现该需求,按照以下两步操作即可:

步骤1:修改NED文件,给网络增加可配置延迟参数

你需要在PingPong8网络定义中新增参数块,声明延迟参数并设置默认值,再将连接中的静态延迟替换为该参数即可,修改后的完整NED代码如下:

simple Ping8
{
    parameters:
        @display("i=device/pc");
        
    gates:
        input in;
        output out;
}

simple Pong8
{
    parameters:
        @display("i=device/pc");
        //double d = default(0.5);
    gates:
        input in;
        output out;
}

network PingPong8
{
    parameters:
        @display("bgb=540,253");
        // 新增可配置链路延迟参数,默认值保留原有50ms,类型用simtime_t适配OMNeT++时间体系
        simtime_t linkDelay = default(50ms);
    submodules:
        ping: Ping8 {
            parameters:
                @display("i=,cyan;p=32,145");
        }
        pong: Pong8 {
            parameters:
                @display("i=,gold;p=499,145");
        }
    connections:
        // 替换原有静态值为参数
        ping.out --> { delay = linkDelay; } --> pong.in;
        ping.in <-- { delay = linkDelay; } <-- pong.out;
}

如果需要双向链路设置不同延迟,可分别声明两个参数:

// parameters块中声明
simtime_t pingToPongDelay = default(50ms);
simtime_t pongToPingDelay = default(50ms);
// 连接中分别引用
ping.out --> { delay = pingToPongDelay; } --> pong.in;
ping.in <-- { delay = pongToPingDelay; } <-- pong.out;

步骤2:在omnetpp.ini中自定义延迟值

直接按参数路径赋值即可,示例如下:

# 双向延迟统一配置为100ms
*.linkDelay = 100ms

# 如果是双向不同延迟的配置方式,用以下写法
# *.pingToPongDelay = 20ms
# *.pongToPingDelay = 80ms

内容的提问来源于stack exchange,提问作者rorod8

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 23:24:00