Configuration File Format » History » Revision 5
Revision 4 (A K M Mahmudul Hoque, 05/05/2014 08:54 AM) → Revision 5/27 (A K M Mahmudul Hoque, 05/05/2014 08:59 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
network
{
name /ndn ; name prefix of the network router belongs to
} ; must be in ndn URI format
; mandatory configuration command
site-name
{
name /memphis.edu ; name prefix of the site name router belongs to
} ; must be in ndn URI format
; mandatory configuration command
router-name
{
name /cs/pollux ; name prefix of the router
} ; must be in ndn URI format
}
; the hello section describes the configuration settings for NLSR hello protocol
hello
{
; neighbor command is used to configure router's neighbor. Each neighbor will need
; one block of neighbor command
neighbor
{
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
{
; the switch is used to set hyperbolic routing calculation in NLSR
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
{
;
tunnel-type
{
}
;
max-faces
{
}
}