Module description » History » Revision 8
Revision 7 (A K M Mahmudul Hoque, 04/17/2014 05:46 AM) → Revision 8/16 (A K M Mahmudul Hoque, 04/17/2014 05:51 AM)
Module description
==================
Conceptually NLSR is divided into four modules
1. Core
2. Communication
3. Routing
4. Security
### 1. Core Module
- [[Read and parse configuration file]]
- Stores all configurable parameter values
- Stores Adjacent in Adjacency list
- Stores advertising names in name prefix list
- Establish connection with NDN Forwarder
- [[Establishing Adjacencies with neighbors]]
- [[Build LSAs]]
- [[Stores Link State Advertisement (LSA) in Link State Database (LSDB)]]
### 2. Communication Module
- Handles synchronization logic of NLSR's LSDB updates
- Publish LSDB updates in router name
- Upon update notification send interest for LSAs
- Publish certificates updates
- Send interest to fetch certificates
- Processes all inbound/outbound interest/data of NLSR
### 3. Routing Module
- Calculate routing table ( depending configuration use link - state routing calculator or Hyperbolic routing calculator)
- Stores routing table
- Creates and store Name prefix table ( Name prefix table entry is Name Prefix with nexthops list to reach that name)
### 4. Security Module ( This module will no longer be available later when NLSR will use NFD's rule based validator)
- Fetch, validate and stores certificate in Certificate Store
- If some certificate is fetched but waiting to be validated is recorded in waiting list
- After validation it is added in the certificate store otherwise discarded
- Validate each piece of data received by NLSR
- Sign data using router process keys before sending out