DESIGN AND EVALUATION OF A DISTRIBUTED HASH TABLE APPROACH FOR REALIZING FAST GLOBAL NAME RESOLUTION SERVICES FOR THE FUTURE INTERNET

This project is aimed at the design and experimental validation of a comprehensive clean-slate future Internet architecture.The proposed MobilityFirst architecture is motivated by the ongoing paradigm shift of Internet usage from today’s fixed PC/host (client)–server model to emerging mobile data services and pervasive computing applications

We follow a distributed in-network hash table (DIHT) approach to realize a global scale name resolution service for mobility support in the future Internet

ThE FOCUS is on the design and evaluation of the distributed hash table (DIHT) approach for realizing fast global name resolution services for the future mobile Internet. The proposed global name resolution service (GNRS) supports mobility at-scale in the future Internet in which a clean separation of the “name" of a network object from its “address" or point of attachment takes place

The GNRS is intended as a fast network-level service which can be queried by both end-points and in-network routers in order to obtain bindings between a GUID (globally unique identifier for the name) and the current routable network address (or addresses). Our approach distributes these name-to-address mappings amongst Internet ASs by directly hashing a name to produce an IP address announced by the AS which stores the mapping for that name.

This in-network single-hop hashing technique leverages the IP reachability information which is readily available at the network layer and achieves low lookups latencies without any DHT maintenance overheads.

PROGRESS SO FAR

Implemented a single Node version of the GNRS Daemon process. I also interfaced the Daemon process with a database (MYSQL) to increase the persistence of the the GUID-Reachability mappings. Hence the mappings are not lost even if the server process goes down

Went through Puneet Kataria's thesis in detail.

Completed and Validated the Design for the Multi-node Version of the GNRS Server process.This also includes the Messaging Format that the nodes follow to interact with each other. (Format of the Insert ,Update and lookup messages and their respective ACKs)

Went through Matt Welsh's code for SEDA (staged Event Driven Architecture).This was primarily to see how the source code should be modularised.This also promotes re-use of code.

Designed and implemented a simple interface for the Hashing function. MD5 is the Hashing algorithm currently being implemented. Focus is on Generalisation and Encapsulation.