Project

General

Profile

Configuration File Format » History » Version 4

A K M Mahmudul Hoque, 05/05/2014 08:54 AM

1 1 A K M Mahmudul Hoque
## Configuration File Format
2
3
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).
4
5
## Example configuration
6
7
    ; the router section contains the setting of network, site name 
8
    ; and router name which all together makes router-prefix
9
    
10
    router
11
    {
12 4 A K M Mahmudul Hoque
    ; mandatory configuration command
13 1 A K M Mahmudul Hoque
        network
14
        {
15
            name /ndn             ; name prefix of the network router belongs to
16
        }                         ; must be in ndn URI format
17
18 4 A K M Mahmudul Hoque
    ; mandatory configuration command
19 1 A K M Mahmudul Hoque
        site-name
20
        {
21
            name /memphis.edu     ; name prefix of the site name router belongs to
22
        }                         ; must be in ndn URI format
23
24 4 A K M Mahmudul Hoque
    ; mandatory configuration command 
25 1 A K M Mahmudul Hoque
        router-name
26
        {
27
            name /cs/pollux       ; name prefix of the router
28
        }                         ; must be in ndn URI format
29
    }
30
31
    ; the hello section describes the configuration settings for NLSR hello protocol
32
    
33
    hello
34
    {
35
    ; neighbor command is used to configure router's neighbor. Each neighbor will need
36
    ; one block of neighbor command
37
    
38
       neighbor
39
       {
40
           name /ndn/memphis.edu/cs/castor ; name prefix of the neighbor router consists
41
                                           ; of network, site-name and router-name
42
           
43
           host cs.castor.memphis.edu      ; hostname or ip address of neighbor router
44
           link-cost 20.6                  ; cost of the connecting link to neighbor
45
       }
46
47
    ; interest-retry command is used to configure the interval of hello interest and number
48
    ; of retry interests before a router gives up in case of interest timed out
49
    
50
       interest-retry
51
       {
52
           number    3      ; interest retry number in integer. Default value 3
53
                            ; valid values 1-10
54
55
           interval  10     ; interest sending interval in seconds. Default value 1
56
                            ; valid values 1-15
57
       }
58
    }
59
60
    ; the synchronization section contains all the configuration settings for router's update
61
    ; synchronization with neighbors in the network
62
63
    synchronization
64
    {
65 2 A K M Mahmudul Hoque
    ; all routers in the network must have same sync-prefix. Routers synchronizes routing updates
66
    ; in this prefix across the network. This prefix is routable to each neighbor from every router
67 1 A K M Mahmudul Hoque
68
        sync-prefix
69
        {
70 2 A K M Mahmudul Hoque
            name /ndn/nlsr/sync    ; name in URI format. Default value /ndn/nlsr/sync
71 1 A K M Mahmudul Hoque
        }
72
73 2 A K M Mahmudul Hoque
    ; lsa-refresh-time is the time in seconds, after which router will refresh its LSAs
74
    
75 1 A K M Mahmudul Hoque
        lsa-refresh-time
76
        {
77 2 A K M Mahmudul Hoque
            seconds 1800           ; default value 1800. Valid values 240-7200
78 1 A K M Mahmudul Hoque
        }
79
    }
80
81 2 A K M Mahmudul Hoque
    ; the hyperbolic section contains the configuration settings of enabling a router to calculate
82
    ; routing table using [hyperbolic routing table calculation](http://arxiv.org/abs/0805.1266) method
83
84
    hyperbolic
85 1 A K M Mahmudul Hoque
    {
86 3 A K M Mahmudul Hoque
    ; the switch is used to set hyperbolic routing calculation in NLSR
87 1 A K M Mahmudul Hoque
88 3 A K M Mahmudul Hoque
        switch
89
        {
90
            value off          ; default value 'off', set value 'on' to enable hyperbolic routing table 
91
                               ; calculation which turns link state routing 'off'. set value to 'dry-run"
92
                               ; to test hyperbolic routing and compare with link state routing.  
93
        }
94
95
    ; the coordinate is used to configure the hyperbolic coordinates of the router in geometric system. This
96
    ; values are statically set in each router by system admin. If switch has a value of 'on' or 'dry-run'
97
    ; this configuration command is mandatory for the router.
98 2 A K M Mahmudul Hoque
    
99 1 A K M Mahmudul Hoque
       coordinate
100
       {
101 4 A K M Mahmudul Hoque
            radius   123.456   ; radius of the router in hyperbolic coordinate system
102
            angle    1.45      ; angle of the router in hyperbolic coordinate system
103 2 A K M Mahmudul Hoque
       }
104 1 A K M Mahmudul Hoque
    }