The MobilityFirst project is funded by the National Science Foundation's Future Internet Architecture (FIA) program started in September 2010. The FIA program is aimed at design and validation of comprehensive new architectures for the next-generation Internet. This is a three-year project (2010-13) with scope including network design, performance evaluation, large-scale prototyping and end-user application trials.
The MobilityFirst project is founded on the premise that the Internet is approaching an historic inflection point, with mobile platforms and applications poised to replace the fixed-host/server model that has dominated the Internet since its inception. This predictable, yet fundamental, shift presents a unique opportunity to design a next generation Internet in which mobile devices, and applications, and the consequent changes in service, trustworthiness, and management are primary drivers of a new architecture. The goal of MobilityFirst is to better accommodate mobile entities on the Internet in a scalable, trustworthy, and useable manner. Inherently a clean-slate project, MobilityFirst takes a radical approach to redesigning the Internet including rethinking end-point naming, such as through IP, and connection-oriented protocols, such as TCP.
MobilityFirst is a clean-slate, large-scale Internet architecture project led by Rutgers University in collaboration with UMass, MIT, Duke, U Michigan, UNC, U Wisconsin, and U Nebraska. At a high level, MobilityFirst allows applications to securely interact with abstract, mobile entities in a connectionless fashion, providing connectivity and minimal user-disruption in the presence of mobility. In order to realize this goal, the MobilityFirst team is engaged in a three-pronged, parallel effort on architectural design, protocol design, and implementation. Making use of the Rutgers-based ORBIT test as well as the national GENI infrastructure, MobilityFirst protocols are currently being implemented and tested on a nationwide scale.
At the core of MobilityFirst is a clean, trustworthy, mobility-centric architecture. The following are core architectural concepts in MobilityFirst.:
- Common, security-conscious representation of abstract network entities
Due to the prominence of handheld mobile devices, the future Internet is inherently mobile and social in nature. Therefore, MobilityFirst provides applications with the ability to speak to entities rather than interfaces. Entities may include people or devices, such as “Bob’s laptop”; context, such as “Taxis in Times Square”; and content, such as “Today’s edition of the New York Times”. These entities are all mapped to a flat, globally unique identifier, referred to as a GUID. GUID’s are public keys, providing many useful security-related properties such as self-certification.
- Separation of naming and addressing, realized via a distributed name resolution service
Currently Internet protocols are not able to provide seamless communication in the presence of mobility due to application-level end-points being identified with location-dependent addresses, namely IP addresses. Realizing this, MobilityFirst labels end-points with location-independent GIUDs, which are resolved to routable network-level addresses within the network itself. All MobilityFirst routers (subject to access control policies) have access to a massively distributed global name resolution service, or GNRS, and can dynamically re-bind destination addresses in response to mobility-related challenges.
- Storage-aware routing
Mobile environments inherently introduce network-layer connectivity challenges, such as varying levels of link qualities, node disconnection, and network partitioning. In order to give routers the ability to directly deal with these challenges, MobilityFirst routing protocols heavily use in-network storage to proactively hold back or progress data in an intelligent manner. This includes integrating and unifying techniques found in disruption-tolerant and ad-hoc networking.
- Connectionless, hop-by-hop transport
Current Internet transport protocols, such as TCP, are connection-oriented in nature, and hence cannot easily tolerant temporary breaks in network-level connectivity. MobilityFirst breaks away from connection-oriented approaches, instead utilizing the mobility-related benefits of “pure” packet-switching. Large data units, referred to as chunks, are progressed through the network via a reliable, hop-by-hop link-layer protocol.
- Inherent support for globally-visible group-based routing, such as anycast and multicast
MobilityFirst allows applications to talk to abstract entities such as content, context, or a multi-homed device, as opposed to forcing point-to-point communication between network interfaces. Therefore, communication in MobilityFirst networks is naturally group-based. By utilizing the flexibility of the GNRS, routing paradigms such as anycast and multicast are inherently supported.
- A logically separate network management plane
Mobile, wireless devices and networks introduce highly dynamic topologies. In order to enhance visibility of the underlying network for debugging and planning purposes, MobilityFirst has a logically separate management plane which is robust to failures in inter- and intra-domain routing protocols.
- Integrated computing and storage layer
In order to support programmability and the evolution of enhanced network services, MobilityFirst routers have an integrated computing and storage layer, allowing computations to be made on-the-fly. One prominent example of computing layer functionality is dynamic content caching.
The MobilityFirst baseline architecture, including how application-level names are translated into GUIDs, and subsequently network addresses, has been both finalized and implemented. By utilizing the portability of the CLICK software router, numerous components such as the GNRS, GSTAR, the application API (with a corresponding client stack), and hop-by-hop transport have been implemented and are runnable on both ORBIT and the GENI network. Components being currently designed and implemented include inter-domain routing, computing-layer functionality, the management plane, and the integration of security. An end-to-end proof-of-concept demonstration of the MobilityFirst architecture has been demonsrated at the GENI Engineering Conference GEC-13. The demo shows GUID routing functionality in MF being used to support dual-homing of a mobile device across WiFi and 4G(WiMax) networks. Subsequently a larger network demo (including a GENI site at U Tokyo) was shown at GEC-16in April 2013, with multiple applications including multihomed data delivery to mobile devices and context-aware emergency messaging. The project is now moving to the next phase under NSF's FIA NP program in which the MobilityFirst architecture will be evaluated in multiple technology trials involving real-world applications and end-users.