MultiCell_D2DMultihop.ned
NED File simulations/lte/networks/MultiCell_D2DMultihop.ned
| Name | Type | Description |
|---|---|---|
| MultiCell_D2DMultihop | network |
Five eNodeB cells, each reaching the EPC PgwStandard through a router of its own, with a further router and a server behind the core. There are no X2 links. numUe1 to numUe5 LteUe terminals attach per cell, and an EventGenerator and a MultihopD2DStatistics module sit beside them, wired to nothing. |
Source code
// // Simu5G // // Copyright (C) 2019-2021 Giovanni Nardini, Giovanni Stea, Antonio Virdis et al. (University of Pisa) // Copyright (C) 2022-2026 Giovanni Nardini, Giovanni Stea et al. (University of Pisa) // // This file is part of a software released under the license included in file // "license.pdf". Please read LICENSE and README files before using it. // The above files and the present reference are part of the software itself, // and cannot be removed from it. // package simu5g.simulations.lte.networks; import inet.networklayer.configurator.ipv4.Ipv4NetworkConfigurator; import inet.networklayer.ipv4.RoutingTableRecorder; import inet.node.ethernet.Eth10G; import inet.node.inet.Router; import inet.node.inet.StandardHost; import simu5g.apps.d2dMultihop.eventGenerator.EventGenerator; import simu5g.apps.d2dMultihop.statistics.MultihopD2DStatistics; import simu5g.common.binder.Binder; import simu5g.common.carrierAggregation.CarrierAggregation; import simu5g.corenetwork.bearerConfigurator.BearerConfigurator; import simu5g.nodes.PgwStandard; import simu5g.nodes.LteUe; import simu5g.nodes.eNodeB; import simu5g.world.radio.LteChannelControl; // // Five ~eNodeB cells, each reaching the EPC ~PgwStandard through a router of its // own, with a further router and a server behind the core. There are no X2 // links. numUe1 to numUe5 ~LteUe terminals attach per cell, and an // ~EventGenerator and a ~MultihopD2DStatistics module sit beside them, wired to // nothing. // network MultiCell_D2DMultihop { parameters: int numUe1 = default(1); int numUe2 = default(1); int numUe3 = default(1); int numUe4 = default(1); int numUe5 = default(1); @display("i=block/network2;bgb=2000,500;"); submodules: channelControl: LteChannelControl { @display("p=90,24;is=s"); } routingRecorder: RoutingTableRecorder { @display("p=90,74;is=s"); } configurator: Ipv4NetworkConfigurator { @display("p=90,124;is=s"); } binder: Binder { @display("p=90,174;is=s"); } bearerConfigurator: BearerConfigurator { @display("p=90,224;is=s"); } carrierAggregation: CarrierAggregation { @display("p=90,274;is=s"); } server: StandardHost { @display("p=500,50;is=n;i=device/server"); } router: Router { @display("p=750,50;i=device/smallrouter"); } router1: Router { @display("p=200,194;i=device/smallrouter"); } router2: Router { @display("p=600,194;i=device/smallrouter"); } router3: Router { @display("p=1000,194;i=device/smallrouter"); } router4: Router { @display("p=1400,194;i=device/smallrouter"); } router5: Router { @display("p=1800,194;i=device/smallrouter"); } pgw: PgwStandard { @display("p=1000,50;is=l"); } eNodeB1: eNodeB { @display("p=200,400;is=vl"); } eNodeB2: eNodeB { @display("p=600,400;is=vl"); } eNodeB3: eNodeB { @display("p=1000,400;is=vl"); } eNodeB4: eNodeB { @display("p=1400,400;is=vl"); } eNodeB5: eNodeB { @display("p=1800,400;is=vl"); } ue1[numUe1]: LteUe { @display("p=300,450;is=s"); } ue2[numUe2]: LteUe { @display("p=700,450;is=s"); } ue3[numUe3]: LteUe { @display("p=1100,450;is=s"); } ue4[numUe4]: LteUe { @display("p=1500,450;is=s"); } ue5[numUe5]: LteUe { @display("p=1900,450;is=s"); } eventGenerator: EventGenerator { @display("p=90,324;is=s"); } d2dMultihopStatistics: MultihopD2DStatistics { @display("p=90,374;is=s"); } connections: router1.pppg++ <--> Eth10G <--> eNodeB1.ppp; router2.pppg++ <--> Eth10G <--> eNodeB2.ppp; router3.pppg++ <--> Eth10G <--> eNodeB3.ppp; router4.pppg++ <--> Eth10G <--> eNodeB4.ppp; router5.pppg++ <--> Eth10G <--> eNodeB5.ppp; router1.pppg++ <--> Eth10G <--> pgw.pppg++; router2.pppg++ <--> Eth10G <--> pgw.pppg++; router3.pppg++ <--> Eth10G <--> pgw.pppg++; router4.pppg++ <--> Eth10G <--> pgw.pppg++; router5.pppg++ <--> Eth10G <--> pgw.pppg++; router.pppg++ <--> Eth10G <--> pgw.dnPppg; server.pppg++ <--> Eth10G <--> router.pppg++; }