Module description » History » Revision 2
Revision 1 (Lan Wang, 04/04/2014 01:14 PM) → Revision 2/16 (A K M Mahmudul Hoque, 04/16/2014 07:18 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
- 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