wiki:Internal/SystemPrototyping/Workingdocuments
close Warning: Can't synchronize with repository "(default)" ("(default)" is not readable or not a Git repository.). Look in the Trac log for more information.

Version 2 (modified by nkiran, 13 years ago) ( diff )

--

Specifications

The following sections detail the specifications for a prototype MobilityFirst Network, and includes details of overall architecture, network elements, software services, protocols, end-host stack and network API.

Name Resolution Service

                                                                      LNRS servers                          GNRS servers
                                                                           ^                                   ^
                                                                           |                                   |
                                                                           |                                   |
                                                                  +-----------------+                 +-----------------+
  +---------------+   request    +-----------------+              |                 |                 |                 |
  |               |  --------->  |   Local Agent   | ---------->  |   Local Name    |  ----------->   |   Global Name   |
  |  Host/Client  |              |       Or        |              |   Resolution    |                 |   Resolution    |
  |               |  <---------  | Default Gateway | <----------  |   Service(LNRS) |  <-----------   |   Service(GNRS) |
  +---------------+   response   +-----------------+              |     server      |                 |     server      | 
                                                                  +-----------------+                 +-----------------+
                                                                           |                                   |
                                                                           |                                   |
                                                                           v                                   v  
                                                                      LNRS servers                         GNRS servers

Host - GNRS interaction

A host may interact with the name resolution service to either (1) report/update it's present network location binding(s), or, (2) to query corresponding bindings of other network entities. The target of such a query operation may constitute either a host, a service, content or even a named context. Similarly, an update is not limited to the host's location, but of any addressable entity so long as it is authorized to do so.

Early-binding

  • It is assumed that an end-host has obtained the GUID(s) of the other communication end-point or network entity through an out-of-band mechanism.
  • A host can initiate communication through one of the following API:
    • sendTo(GUID, message, [serviceId], [serviceOptios], ...)
    • get(GUID, ...)
    • ....
  • Implementations of the above API within the end-host's MF stack execute early-binding when requested
  • A GNRS lookup message (GL-msg) is prepared for the dest-GUID. See section on GNRS message specification for included fields.
  • Target NRS server: A default or preferred server may be specified in a local config file, or one obtained by listening to local advertisements
  • GL-msg is sent out on the default interface for GNRS lookups
  • Closest or preferred NRS server will execute the actual lookup on the GNRS service plane
  • A GNRS lookup response (GLR-msg) prepared by server with mapping is routed to the querying entity, and is picked up by the stack
  • End-host stack inserts the network address from GLR-msg into the message header and transmits the packet on appropriate interface

Note: See TracWiki for help on using the wiki.