Project

General

Profile

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 
         { 
         } 
     }