24 ns.core.CommandLine().Parse(argv)
31 ns.core.GlobalValue.Bind(
"SimulatorImplementationType", ns.core.StringValue(
"ns3::RealtimeSimulatorImpl"))
32 ns.core.GlobalValue.Bind(
"ChecksumEnabled", ns.core.BooleanValue(
True))
39 nodes = ns.network.NodeContainer()
45 wifi = ns.wifi.WifiHelper()
46 wifi.SetStandard (ns.wifi.WIFI_STANDARD_80211a);
47 wifi.SetRemoteStationManager (
"ns3::ConstantRateWifiManager",
"DataMode", ns.core.StringValue (
"OfdmRate54Mbps"));
52 wifiMac = ns.wifi.WifiMacHelper()
53 wifiMac.SetType (
"ns3::AdhocWifiMac");
58 wifiChannel = ns.wifi.YansWifiChannelHelper.Default()
59 wifiPhy = ns.wifi.YansWifiPhyHelper()
60 wifiPhy.SetChannel(wifiChannel.Create())
65 devices = wifi.Install(wifiPhy, wifiMac, nodes)
71 mobility = ns.mobility.MobilityHelper()
72 positionAlloc = ns.mobility.ListPositionAllocator()
73 positionAlloc.Add(ns.core.Vector(0.0, 0.0, 0.0))
74 positionAlloc.Add(ns.core.Vector(5.0, 0.0, 0.0))
75 mobility.SetPositionAllocator(positionAlloc)
76 mobility.SetMobilityModel (
"ns3::ConstantPositionMobilityModel")
77 mobility.Install(nodes)
87 tapBridge = ns.tap_bridge.TapBridgeHelper()
88 tapBridge.SetAttribute (
"Mode", ns.core.StringValue (
"UseLocal"));
89 tapBridge.SetAttribute (
"DeviceName", ns.core.StringValue (
"tap-left"));
90 tapBridge.Install (nodes.Get (0), devices.Get (0));
96 tapBridge.SetAttribute (
"DeviceName", ns.core.StringValue (
"tap-right"));
97 tapBridge.Install (nodes.Get (1), devices.Get (1));
102 ns.core.Simulator.Stop (ns.core.Seconds (600));
103 ns.core.Simulator.Run()
104 ns.core.Simulator.Destroy()
107 if __name__ ==
'__main__':
108 sys.exit(main(sys.argv))