0

Suppose we have a topology as below.we need to send data from node 1 to node 4.we can send data via node 6 or node 2 .We need to send data from node 1 to node 4 via node 6 for some time interval(say 5sec) and after a 5sec we need to send data from node 1 to node 4 via node 2 and repeat it for 30 mins.

6 node topology

1 Answers1

1

You can setup a route to node 4 via node 6 first. Send the data for whatever interval you need. Then change the route for node 4 to be via node 2 and then send the data for the remaining time.

See the Routing service in the Unet handbook for details on how to add/edit routes programmatically.

The code might look something like (without error checking):

def router = agentForService(Services.ROUTING)
def r = EditRouteReq.newRoute()
r.to = 4
r.nextHop = 6
router << r
5.times {
  router << new DatagramReq(to: 4, data: [1,2,3])
  delay(1000)
}
def ri = router << new GetRouteReq(to: 4)
r = EditRouteReq.editRoute(ri)
r.nextHop = 2
router << r
1800.times {
  router << new DatagramReq(to: 4, data: [1,2,3])
  delay(1000)
}
Mandar Chitre
  • 2,110
  • 6
  • 14