~ [ source navigation ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
cvs/emstar/routing/geo-linkstate/


Name Size Last modified (GMT) Description
Back Parent directory 2009-01-08 14:26:38
File README 4681 bytes 2003-02-28 01:15:30
C file common.h 8446 bytes 2003-07-11 22:30:00
C file dijkstra.c 5062 bytes 2003-07-11 22:30:00
C file dijkstra.h 2733 bytes 2003-07-11 22:30:00
C file gls.c 6103 bytes 2004-10-29 18:39:29
C file gls_i.h 6748 bytes 2003-07-11 22:30:00
C file gls_lower.c 7802 bytes 2003-07-11 22:30:00
C file gls_nblist.c 20688 bytes 2003-07-11 22:30:00
C file gls_nblist.h 2260 bytes 2003-07-11 22:30:00
C file gls_upper.c 13342 bytes 2003-07-11 22:30:00
C file glsping.c 10427 bytes 2003-07-11 22:30:01
C file glsping.h 2076 bytes 2003-07-11 22:30:01
File glstab 937 bytes 2003-04-01 06:59:56
C file hash.c 3204 bytes 2003-07-11 22:30:01
C file hash.h 3571 bytes 2003-07-11 22:30:01
C file heap.c 14833 bytes 2003-07-11 22:30:01
C file heap.h 3524 bytes 2003-07-11 22:30:01
C file node_conf.c 5772 bytes 2003-07-11 22:30:01
C file route_table.c 21238 bytes 2003-11-19 03:04:23

  1 
  2 /* Authors: Denis Perelyubskiy, Deepak Ganesan */
  3 
  4 Using Geographic LinkState Routing:
  5 ==================================
  6 
  7 On one window (with SIM_GROUP appropriately set), run
  8 [deepak@Gamayun obj.i686-linux]$  emrun/emsim ../emrun/examples/sim-generic ../routing/geo-linkstate/glstab 10 -o LOG_NOTICE
  9 ....
 10 Sun Feb 23 23:27:02.492: [3] glsd: flood_receive_nb_list_update: Received nbr_list from 1
 11 Sun Feb 23 23:27:02.492: [5] glsd: flood_receive_nb_list_update: Received nbr_list from 1
 12 Sun Feb 23 23:27:02.512: [1] glsd: flood_receive_nb_list_update: Received nbr_list from 3
 13 Sun Feb 23 23:27:02.513: [2] glsd: flood_receive_nb_list_update: Received nbr_list from 8
 14 Sun Feb 23 23:27:02.513: [3] glsd: flood_receive_nb_list_update: Received nbr_list from 5
 15 Sun Feb 23 23:27:02.514: [8] glsd: flood_receive_nb_list_update: Received nbr_list from 4
 16 Sun Feb 23 23:27:02.514: [5] glsd: flood_receive_nb_list_update: Received nbr_list from 3
 17 
 18 You should see neighbor lists being flooded around among nodes. To see the 
 19 construction of adjacency matrices and routing paths, you can either run the
 20 above command with log-level option "-o LOG_DEBUG_0" or better still, look
 21 at one of the following status devices:
 22 
 23 Adjacency List:
 24 ==============
 25 
 26 To view the adjacency list (who's near whom), look at:
 27 
 28 [deepak@Gamayun obj.i686-linux]$ cat /dev/sim/group2/node1/link/routing/gls_adjlist
 29 
 30 ----------------------------------------
 31 ADJACENCY TABLE
 32 ----------------------------------------
 33       005 006 001 009 003 008 002 004 007 010 
 34 005 : xxx   1   1 xxx xxx   1 xxx   1 xxx   1 
 35 006 :   1 xxx   1 xxx xxx   1   1   1 xxx   1 
 36 001 :   1   1 xxx xxx xxx   1   1   1 xxx xxx 
 37 009 : xxx xxx xxx xxx   1   1   1 xxx   1   1 
 38 003 : xxx xxx xxx   1 xxx xxx xxx xxx   1 xxx 
 39 008 : xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 
 40 002 : xxx   1   1   1 xxx   1 xxx   1 xxx   1 
 41 004 : xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 
 42 007 : xxx xxx xxx   1   1 xxx xxx   1 xxx   1 
 43 010 : xxx xxx xxx xxx xxx xxx xxx xxx xxx xxx 
 44 
 45 
 46 Routing Paths:
 47 =============
 48 
 49 and to see the set of routing paths constructed from the above table:
 50 
 51 [deepak@Gamayun obj.i686-linux]$ cat /dev/sim/group2/node1/link/routing/gls_rtable 
 52 ----------------------------------------
 53 ROUTING PATHS
 54 ----------------------------------------
 55 Route from 001 to 005 : 1 -> 5 
 56 Route from 001 to 006 : 1 -> 6 
 57 Route from 001 to 001 : Self
 58 Route from 001 to 009 : 1 -> 2 -> 9 
 59 Route from 001 to 003 : 1 -> 2 -> 9 -> 3 
 60 Route from 001 to 008 : 1 -> 8 
 61 Route from 001 to 002 : 1 -> 2 
 62 Route from 001 to 004 : 1 -> 4 
 63 Route from 001 to 007 : 1 -> 2 -> 9 -> 7 
 64 Route from 001 to 010 : 1 -> 5 -> 10 
 65 
 66 In the absense of network partitions, the adjacency table and routing paths 
 67 should be identical for all nodes. If there are partitions, each partition
 68 should have be consistent within itself.
 69 
 70 Testing:
 71 =======
 72 
 73 A test program "glsping.c" is provided. Run glstab as shown above, and to see
 74 packets being routed to a node closest to "x,y", do the following:
 75 
 76 [deepak@Gamayun obj.i686-linux]$ routing/glsping gls 11 10
 77 
 78 The above input says, send the ping packet through "gls" to location <11,10>
 79 
 80 Although there need not be any node at <11,10>, you should see an output at 
 81 the main window showing the packet being forwarded to the node closest to
 82 the required destination. One example is shown below.
 83 
 84 [deepak@Gamayun obj.i686-linux]$  emrun/emsim ../emrun/examples/sim-generic ../routing/geo-linkstate/glstab 10 -o LOG_NOTICE
 85 ....
 86 Sun Feb 23 23:40:02.346: [1] glsd: gls_enqueue: got route request
 87 Sun Feb 23 23:40:02.347: [1] glsd: get_nexthop_to_dest_loc: After Lookup: Closest Node:10:10.99,9.92
 88 Sun Feb 23 23:40:02.347: [1] glsd: get_nexthop_to_dest_loc: DstId:10  next hop is 5
 89 Sun Feb 23 23:40:02.348: [1] glsd: get_nexthop_to_dest_loc: returning next hop is 5
 90 Sun Feb 23 23:40:02.348: [1] glsd: gls_send: Next hop: 5
 91 Sun Feb 23 23:40:02.348: [1] glsd: gls_forward: sending to /dev/sim/group2/node1/link/0/data
 92 Sun Feb 23 23:40:02.544: [5] glsd: gls_receiver: got packet OrigSrc:2.74,7.20 FinalDst:11.00,10.00
 93 Sun Feb 23 23:40:02.545: [5] glsd: get_nexthop_to_dest_loc: After Lookup: Closest Node:10:10.99,9.92
 94 Sun Feb 23 23:40:02.545: [5] glsd: get_nexthop_to_dest_loc: DstId:10  next hop is 10
 95 Sun Feb 23 23:40:02.545: [5] glsd: get_nexthop_to_dest_loc: returning next hop is 10
 96 Sun Feb 23 23:40:02.545: [5] glsd: gls_forward: sending to /dev/sim/group2/node5/link/0/data
 97 Sun Feb 23 23:40:02.735: [10] glsd: gls_receiver: got packet OrigSrc:2.74,7.20 FinalDst:11.00,10.00
 98 Sun Feb 23 23:40:02.735: [10] glsd: get_nexthop_to_dest_loc: After Lookup: Closest Node:10:10.99,9.92
 99 Sun Feb 23 23:40:02.735: [10] glsd: gls_upcall_to_user: Upcall to user

~ [ source navigation ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.