
NSF Org: |
CNS Division Of Computer and Network Systems |
Recipient: |
|
Initial Amendment Date: | August 17, 2015 |
Latest Amendment Date: | August 17, 2015 |
Award Number: | 1525435 |
Award Instrument: | Standard Grant |
Program Manager: |
Darleen Fisher
CNS Division Of Computer and Network Systems CSE Directorate for Computer and Information Science and Engineering |
Start Date: | October 1, 2015 |
End Date: | September 30, 2019 (Estimated) |
Total Intended Award Amount: | $249,966.00 |
Total Awarded Amount to Date: | $249,966.00 |
Funds Obligated to Date: |
|
History of Investigator: |
|
Recipient Sponsored Research Office: |
3100 MARINE ST Boulder CO US 80309-0001 (303)492-6221 |
Sponsor Congressional District: |
|
Primary Place of Performance: |
3100 Marine Street, Room 481 Boulder CO US 80303-1058 |
Primary Place of
Performance Congressional District: |
|
Unique Entity Identifier (UEI): |
|
Parent UEI: |
|
NSF Program(s): | Networking Technology and Syst |
Primary Program Source: |
|
Program Reference Code(s): |
|
Program Element Code(s): |
|
Award Agency Code: | 4900 |
Fund Agency Code: | 4900 |
Assistance Listing Number(s): | 47.070 |
ABSTRACT
The past 15 years have seen the rise of the cloud, along with a rapid increase in Internet backbone traffic and more sophisticated cellular core networks. Some of the responsibilities of these: (1) data centers, (2) backbone IP networks, and (3) cellular core networks, are now 'descending' to be among, or near, the end users, i.e., to the edge of networks. Fog networking is an architecture that uses one or a collaborative multitude of end-user clients or near-user edge devices to carry out a substantial amount of storage, communication and management. Engineering artifacts and applications that reflect such an architecture include 5G, home/personal networking, and the Internet of Things (IoT). It has thus become both feasible and interesting to ask the question: "What can be done on the network edge?" Can it carry out a substantial amount of storage (rather than storing data primarily in large-scale data centers), communication (rather than routing traffic always through the backbone network), and network measurement and control (rather than controlling primarily at gateways like those in the LTE Core)? Potential benefits of fog networking include real-time processing, client-centric objectives, pooling of local resources, rapid innovation with affordable scaling, and feasibility to operate on encrypted and multipath traffic.
There is no shortage of challenges in fog networking, including the following to be tackled in this project: traversing the boundary between centralized and distributed system architectures, steering the global behavior caused by collective client actions, incentivizing client participation, and using redundancy to achieve resilience on the network edge. Among a large and diverse set of topics in fog networking, this project focuses on two themes: (1) Client-driven measurement and inference, including real-time inference of network congestion conditions. Clients can combine local measurements from multiple sources to infer congestion in real time and use these insights to, for instance, optimally preload content at uncongested times. Implementation is achieved by turning client-side SDKs from an app development tool to a network control element. (2) Client-based control and configuration, including control of network connectivity and secure storage. On a fast timescale, client/edge devices can actively optimize their network connectivity by switching between heterogeneous networks, while on a longer timescale, they can relieve network congestion by selectively throttling their data rates. Beyond network connectivity, client-based software can also enhance storage security and reliability by scrambling, shredding and spreading data to different storage spaces.
Broader Impacts: Among this project's industry collaboration, curriculum development, mentoring and outreach are the following highlights. (1) Fog Consortium. Fog networking has the potential to tip the balance of power in the overall IT ecosystem. The PIs help create a Fog Industry-Academia Consortium, which will promote the ideas of fog networking and host outreach events and internship matching open to academia and industry. (2) MOOC. The PIs will offer a new course on "Fog Networking and the Internet of Things," both online and in in-person classes. (3) Community outreach. The PIs will maintain a research website, including a database of papers on fog networking, that is currently hosted at fogresearch.org.
PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH
Note:
When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external
site maintained by the publisher. Some full text articles may not yet be available without a
charge during the embargo (administrative interval).
Some links on this page may take you to non-federal websites. Their policies may differ from
this site.
PROJECT OUTCOMES REPORT
Disclaimer
This Project Outcomes Report for the General Public is displayed verbatim as submitted by the Principal Investigator (PI) for this award. Any opinions, findings, and conclusions or recommendations expressed in this Report are those of the PI and do not necessarily reflect the views of the National Science Foundation; NSF has not approved or endorsed its content.
Fog networking is an end-to-end horizontal architecture that distributes computing, storage, control, and network functions close to users along the cloud-to-thing continuum. This fog architecture includes the cloud, core, metro, edge, clients, and things. The fog architecture will further enable pooling, orchestrating, managing, and securing the resources and functions that are distributed in the cloud, anywhere along the cloud-to-thing continuum, and on the things or edge devices to support end-to-end services and applications. A fog architecture can bring significant benefits compared to a pure client- or server-based approach: for instance, putting some control at the client makes it easier to customize the application’s configuration according to individual clients’ preferences. Client-based control can also allow these configurations to more rapidly adapt to changes in client preferences or background information. A central server component, on the other hand, can improve coordination between different clients who might compete for resources, e.g., a cellular network setting in which multiple applications share network bandwidth. Thus, fog networking allows applications to optimize over both client and server information, leading to an intelligent division of labor between the client and the server.
This project has the following research thrusts and outcomes:
(1) Computation/processing decomposition framework. The existing distributed computing/processing frameworks in the cloud, however, are not directly applicable to fog; the cloud has mostly homogeneous computing nodes, a well-structured network topology, and reliable network connectivity, while the fog has to deal with other extremes, such as heterogeneous computing nodes with high churn rates and unstructured networks with frequent disruptions. To address this challenge, we developed Crystal, a simple, loosely coupled, distributed computing framework in Golang, which provides an easy abstraction for fog application development while supporting location-transparency, self-healing, auto-scaling, and mobility support. We open-sourced Crystal and used it for CS Master Students’ Independent Studies.
(2) Fog-Cloud Interface: While fog envisions a larger role for semi-independent client/edge devices, data centers, and the cellular core are sometimes still better for global coordination. We approach this research thrust in the context of mobile video streaming, and propose FLARE, a coordinated HTTP rate adaptation approach that incorporates both client- and network-side information and guarantees coordination between network- and client-side bitrate selection.
(3) From Local to Global: Can local visibility, decisions, and interactions lead to a desirable global state across the network? We developed CASTLE, a client-side network inference system that estimates the load of a given cellular network. CASTLE can infer the network load locally with minimal help from the core network and leverage this information to reduce the energy consumption of mobile devices, or selectively preload mobile applications to improve network congestion in real-time. We developed the CASTLE SDK on Android and made it available to the public.
(4) Incentivizing client participation. While client functions are often more nimble and easier to evolve, individual clients may require additional incentives to participate in fog-based systems. If carefully designed, such incentives may even steer client actions towards ones that globally optimize the network. For this thrust, we developed T-Chain, a simple, distributed, but highly efficient fairness-enforcing incentive mechanism for cooperative computing. T-Chain enforces reciprocity between client contributions to prevent exploitation or free-riding by misbehaving or selfish clients. T-Chain is distributed and simple to implement, as no trusted third party is required to monitor or enforce the scheme, nor is there any reliance on reputation information or tokens.
(5) Using device redundancy to achieve resilience. The presence of many client/edge devices in fog computing may offer the “power/wisdom of the crowd” for enhanced availability. However, this requires sufficient independence of each device’s visibility and actions. We developed CYRUS (Client-defined privacY protected Reliable cloUd Service), a practical system that realizes this architecture. CYRUS ensures user privacy and reliability by scattering files into smaller pieces across multiple CSPs (Cloud Service Providers), so that no one CSP can read users’ data.
The outcomes listed above were published in major CS conferences and journals such as ACM MobiSys, ACM CoNEXT, EuroSys, IEEE ICDCS, IEEE INFOCOM, Elsevier Computer Networks, and IEEE Transactions on Networking. This project impacted the industry by founding a startup Myota Inc. Myota provides a data security management solution that stores critical data across multiple storage nodes, regardless of storage type, while dynamically transforming a user’s security infrastructure with artificial intelligence. This project also created an open-source 4G LTE evolved packet core (EPC) software, NextEPC, which controls and manages 4G LTE networks. NextEPC’s codebase consists of over 280,000 lines of code that implements the latest 3GPP LTE Release 14 and runs on major operating systems (e.g., Linux, FreeBSD, and MacOSX). One female Ph.D. student was supported under this project.
Last Modified: 12/02/2019
Modified by: Sangtae Ha
Please report errors in award information by writing to: awardsearch@nsf.gov.