Configuration File Format » History » Revision 9
Revision 8 (A K M Mahmudul Hoque, 05/05/2014 09:31 AM) → Revision 9/27 (A K M Mahmudul Hoque, 05/05/2014 11:17 AM)
## Configuration File Format NLSR is configured using an [INFO file](http://www.boost.org/doc/libs/1_42_0/doc/html/boost_propertytree/parsers.html#boost_propertytree.parsers.info_parser). ## Example configuration ; the router section contains the setting of network, site name ; and router name which all together makes router-prefix router { ; mandatory configuration command section network /ndn ; name router prefix consist of the three components: network the name, site name and router belongs to in ndn URI format name ; for below example network part is /ndn, site name part is /memphis.edu and router ; name of part is /cs/pollux makes up the site the router belongs to in ndn URI format prefix /ndn/memphis.edu/cs/pollux router-prefix router /cs/pollux { name /ndn/memphis.edu/cs/pollux ; name prefix of the network the router belongs to in ndn URI format } } ; the hello section describes the configuration settings for NLSR hello protocol hello { ; in case hello interest timed out, router will try 'retrials' times at 'interval' seconds ; interval before giving up for any neighbors (deciding link is down) retrials 3 ; interest retry number in integer. Default value 3 ; valid values 1-10 interval ; interest sending interval in seconds. Default value 1 ; valid values 1-15 ; neighbor ndnneighbor command is used to configure router's neighbor. Each neighbor will need ; one block of neighbor command neighbor ndnneighbor { name /ndn/memphis.edu/cs/castor ; name prefix of the neighbor router consists ; of network, site-name and router-name host cs.castor.memphis.edu ; hostname or ip address of neighbor router link-cost 20.6 ; cost of the connecting link to neighbor } ; interest-retry command is used to configure the interval of hello interest and number ; of retry interests before a router gives up in case of interest timed out interest-retry { number 3 ; interest retry number in integer. Default value 3 ; valid values 1-10 interval 10 ; interest sending interval in seconds. Default value 1 ; valid values 1-15 } } ; the synchronization section contains all the configuration settings for router's update ; synchronization with neighbors in the network synchronization { ; all routers in the network must have same sync-prefix. Routers synchronizes routing updates ; in this prefix across the network. This prefix is routable to each neighbor from every router sync-prefix { name /ndn/nlsr/sync ; name in URI format. Default value /ndn/nlsr/sync } ; lsa-refresh-time is the time in seconds, after which router will refresh its LSAs lsa-refresh-time { seconds 1800 ; default value 1800. Valid values 240-7200 } } ; the hyperbolic section contains the configuration settings of enabling a router to calculate ; routing table using [hyperbolic routing table calculation](http://arxiv.org/abs/0805.1266) method hyperbolic { ; commands in this section follows a strict order ; the switch is used to set hyperbolic routing calculation in NLSR state switch { value off ; default value 'off', set value 'on' to enable hyperbolic routing table ; calculation which turns link state routing 'off'. set value to 'dry-run" ; to test hyperbolic routing and compare with link state routing. } ; the coordinate is used to configure the hyperbolic coordinates of the router in geometric system. This ; values are statically set in each router by system admin. If switch has a value of 'on' or 'dry-run' ; this configuration command is mandatory for the router. coordinate { radius 123.456 ; radius of the router in hyperbolic coordinate system angle 1.45 ; angle of the router in hyperbolic coordinate system } } ; the fib section is used to configure fib entry's type to ndn FIB updated by NLSR fib { ; the tunnel configuration is used to set the tunnel type of the FIB entries by NLSR tunnel-type tunnel { type udp ; default tunnel type is 'udp', set value to 'tcp' for TCP tunnel } ; the max-faces-per-prefix is used to limit the number of faces for each name prefixes ; by NLSR in ndn FIB max-faces-per-prefix { number 3 ; default value 0. Valid value 0-60. By default (value 0) NLSR adds ; all available faces for each reachable name prefixes in NDN FIB } } ; the advertising section contains the configuration settings of the name prefixes ; hosted by this router advertising { ; the ndnname is used to advertised name from the router. To advertise each name prefix ; configure one block of ndnname configuration command for every name prefix. ndnname { name /ndn/edu/memphis/cs/netlab ; name in ndn URI format } }