Module description » History » Revision 15
Revision 14 (A K M Mahmudul Hoque, 04/17/2014 06:16 AM) → Revision 15/16 (A K M Mahmudul Hoque, 04/17/2014 06:17 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 - [[Creates CronoSync connection]] - [[Handles synchronization logic of NLSR LSDB updates]] - Publishes LSDB updates in router name - Upon update notification send interest for LSAs - Publishes certificates updates - Send interest to fetch certificates - [[Processes all inbound and outbound interest or data 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