|
| 1 | +# |
| 2 | +# Proxy Mobile IPv6 (RFC 5213) example: a single mobile node -- a plain wireless |
| 3 | +# IPv6 host running NO mobility software -- attaches under mag1 and then roams to |
| 4 | +# mag2. Each Mobile Access Gateway detects the attachment at the link layer, |
| 5 | +# registers the node with the Local Mobility Anchor on its behalf (Proxy Binding |
| 6 | +# Update / Acknowledgement), tunnels the node's traffic to/from the anchor, and |
| 7 | +# advertises the node's home network prefix on the access link. The node keeps the |
| 8 | +# same address across the handover; a correspondent node's traffic follows it. |
| 9 | +# |
| 10 | + |
| 11 | +[General] |
| 12 | +network = Pmipv6Network |
| 13 | +seed-set = 1 |
| 14 | +num-rngs = 3 |
| 15 | +**.mobility.rng-0 = 2 # give the mobility its own RNG, isolated from the wireless MAC |
| 16 | +sim-time-limit = 60s |
| 17 | + |
| 18 | +# --- PMIPv6 configuration --------------------------------------------------- |
| 19 | +# Both MAGs serve the same mobile node (same identifier and home network prefix), |
| 20 | +# so the node keeps its address when it moves from one to the other. Each MAG |
| 21 | +# registers with the LMA via the LMA's address on its own backhaul link. |
| 22 | +*.mag1.ipv6.pmipv6.localMobilityAnchorAddress = "2001:db8:0:1::1" |
| 23 | +*.mag2.ipv6.pmipv6.localMobilityAnchorAddress = "2001:db8:0:2::1" |
| 24 | +*.mag*.ipv6.pmipv6.mobileNodeProfiles = xml("<mobileNodes><mobileNode id='mn1@example.com' homeNetworkPrefix='2001:db8:1::' prefixLength='64'/></mobileNodes>") |
| 25 | + |
| 26 | +# --- wireless access links -------------------------------------------------- |
| 27 | +*.mag*.numWlanInterfaces = 1 |
| 28 | +*.mn.numWlanInterfaces = 1 |
| 29 | + |
| 30 | +# MAG access points: SSIDs, fixed MAC addresses, one channel each |
| 31 | +**.mag*.wlan*.mgmt.beaconInterval = 0.1s |
| 32 | +*.mag1.wlan*.mgmt.ssid = "MAG1" |
| 33 | +*.mag1.wlan*.address = "10:AA:00:00:01:01" |
| 34 | +*.mag1.wlan*.radio.channelNumber = 0 |
| 35 | +*.mag2.wlan*.mgmt.ssid = "MAG2" |
| 36 | +*.mag2.wlan*.address = "10:AA:00:00:02:01" |
| 37 | +*.mag2.wlan*.radio.channelNumber = 1 |
| 38 | + |
| 39 | +# Mobile node: a known MAC so its home address is deterministic |
| 40 | +# (home prefix 2001:db8:1::/64 + EUI-64 of 0A:AA:00:00:00:0B). |
| 41 | +*.mn.wlan*.address = "0A:AA:00:00:00:0B" |
| 42 | +*.mn.wlan*.agent.channelsToScan = "0 1" |
| 43 | +*.mn.wlan*.agent.probeDelay = 0.1s |
| 44 | +*.mn.wlan*.agent.minChannelTime = 0.15s |
| 45 | +*.mn.wlan*.agent.maxChannelTime = 0.3s |
| 46 | +*.mn.wlan*.agent.authenticationTimeout = 5s |
| 47 | +*.mn.wlan*.agent.associationTimeout = 5s |
| 48 | + |
| 49 | +**.mgmt.numChannels = 5 |
| 50 | +**.wlan*.bitrate = 2Mbps |
| 51 | +**.wlan*.mac.dcf.channelAccess.cwMin = 7 |
| 52 | + |
| 53 | +# wireless channel physical parameters |
| 54 | +*.radioMedium.mediumLimitCache.maxTransmissionPower = 2.0mW |
| 55 | +*.radioMedium.mediumLimitCache.minReceptionPower = -82dBm |
| 56 | +*.radioMedium.mediumLimitCache.minInterferencePower = -82dBm |
| 57 | +**.radio.transmitter.power = 2.0mW |
| 58 | +**.analogModel.ignorePartialInterference = true |
| 59 | + |
| 60 | +# quick movement detection: short RA intervals + L2-triggered router discovery |
| 61 | +**.neighbourDiscovery.minIntervalBetweenRAs = 1s |
| 62 | +**.neighbourDiscovery.maxIntervalBetweenRAs = 3s |
| 63 | + |
| 64 | +# --- mobility --------------------------------------------------------------- |
| 65 | +*.mag1.mobility.typename = "StationaryMobility" |
| 66 | +*.mag1.mobility.initialX = 250m |
| 67 | +*.mag1.mobility.initialY = 260m |
| 68 | +*.mag2.mobility.typename = "StationaryMobility" |
| 69 | +*.mag2.mobility.initialX = 550m |
| 70 | +*.mag2.mobility.initialY = 260m |
| 71 | +*.mn.mobility.typename = "TurtleMobility" |
| 72 | +*.mn.mobility.turtleScript = xmldoc("movement.xml") |
| 73 | +*.mn.mobility.updateInterval = 0.1s |
| 74 | +**.mobility.constraintAreaMinZ = 0m |
| 75 | +**.mobility.constraintAreaMaxZ = 0m |
| 76 | +**.constraintAreaMinX = 0m |
| 77 | +**.constraintAreaMinY = 0m |
| 78 | +**.constraintAreaMaxX = 800m |
| 79 | +**.constraintAreaMaxY = 500m |
| 80 | + |
| 81 | +# --- applications ----------------------------------------------------------- |
| 82 | +# The correspondent node pings the mobile node's stable home address throughout |
| 83 | +# the simulation; the echo replies follow the node across the handover, showing |
| 84 | +# session continuity. The destination is the deterministic home address |
| 85 | +# (home prefix + the mobile node's EUI-64 interface id). |
| 86 | +*.cn.numApps = 1 |
| 87 | +*.cn.app[0].typename = "PingApp" |
| 88 | +*.cn.app[0].destAddr = "2001:db8:1:0:8aa:ff:fe00:b" |
| 89 | +*.cn.app[0].packetSize = 56B |
| 90 | +*.cn.app[0].sendInterval = 0.5s |
| 91 | +*.cn.app[0].startTime = 8s |
| 92 | +*.cn.app[0].hopLimit = 32 |
| 93 | + |
| 94 | +# hosts do not forward; the LMA and MAGs forward by virtue of their NED type |
| 95 | +*.cn.forwarding = false |
| 96 | +*.mn.forwarding = false |
| 97 | + |
| 98 | +# Ethernet queues |
| 99 | +**.eth[*].queue.typename = "EthernetQosQueue" |
| 100 | +**.eth[*].queue.dataQueue.typename = "DropTailQueue" |
| 101 | +**.eth[*].queue.dataQueue.packetCapacity = 100 |
0 commit comments