RINGS: Language-Agnostic Resilience Engineering at the Edge with WebAssembly
RINGS: Language-Agnostic Resilience Engineering at the Edge with WebAssembly
批准号:
2148301
负责人:
Heather Miller
金额:
$93.0万
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2022
资助国家:
美国
项目状态:
未结题
起止时间:
2022-05-01 至 2026-04-30
中文摘要
随着公共云和内容交付网络(CDN)竞相在其网络边缘启用计算功能,软件开发人员不再只在边缘部署静态文件(视频、图像),还在部署重要的应用程序代码。这与当前的开发实践大相径庭。随着这种新型应用的出现,底层执行平台的安全、性能和功能需求也相应增长。其次,边缘意外网络故障的严酷现实迫使每个主流开发人员成为分布式系统工程师。分布式系统工程使复杂性和难度成倍增加,因为部分故障(一个或多个服务不可用)会以未知或难以预测的方式对系统产生不利影响,甚至会导致灾难性的级联故障。这项研究提出了一种全栈“弹性工程”的方法,以支持安全、有效和高性能的边缘计算在下一代系统中。我们的工作集中在WebAssembly上,它正在成为新的边缘计算环境中与语言无关的公共底层执行平台。我们提出了一个健壮的、高性能的和安全的实验运行时引擎,并支持插装和快速原型制作,这将促进错误注入和程序修复。在此基础上,本工作提出了一套工具,用于编程语言无关的错误注入、测试和修复分布式和网络系统中的弹性(分布式系统相关)错误。这将允许软件开发人员在将应用程序代码部署给用户之前快速有效地测试和修复弹性缺陷,而不是简单地部署并希望在没有任何迹象表明应用程序在面临部分故障时如何表现(这是当前技术水平)的情况下实现最好的结果。如果这项工作被广泛采用,这项工作的结果将反过来减少灾难性的级联故障的发生,这些故障会导致关键网络服务的广泛中断。本质上,我们作为一个社会使用的所有软件现在都是网络的,这意味着应用程序连接到多个服务器并协同完成一项任务(如在线银行、搜索附近的餐厅,甚至流媒体)。该项目直接支持可靠的网络服务的发展。在此研究之前,应用程序通常在不测试服务之间的网络级别问题的情况下发布给用户。这项工作开发了新的方法来测试这个美丽的网络软件新世界,使软件开发人员有可能在软件发布给用户之前自动发现并自动修复错误。作为这项研究的结果,我们将拥有新的工具,如果广泛使用,可以减少社会所依赖的关键网络服务的中断。这一奖项反映了NSF的法定使命,并通过使用基金会的智力优势和更广泛的影响审查标准进行评估,被认为值得支持。
英文摘要
As public clouds and Content Delivery Networks (CDNs) race to enable compute capabilities at the edge of their networks, software developers are no longer deploying just static files (video, images) at the edge, but significant application code as well. This presents a dramatic departure from current development practices. With this new breed of applications on the horizon, the security, performance, and feature requirements of the underlying execution platform grow commensurately. Second, the harsh reality of unexpected network failures at the edge forces every mainstream developer to become a distributed systems engineer. Distributed systems engineering multiplies complexity and difficulty manyfold, as partial failure (unavailability of one or more services) can adversely impact the system in unknown or hard-to-predict ways, even leading to catastrophic cascading failures. This research proposes an approach to full-stack “resilience engineering” to enable secure, effective, and performant edge computation in NextG systems. Our work focuses on and builds on WebAssembly, which is emerging as the common underlying language-agnostic execution platform in new edge computing environments. We propose a robust, performant, and secure experimental runtime engine with support for instrumentation and rapid prototyping that will facilitate fault injection and program repair. On top of this foundation, this work proposes a set of tools for programming language-agnostic fault injection, testing, and repair of resilience (distributed system-related) errors in distributed and networked systems. This would allow software developers to quickly and effectively test and fix resilience defects before application code is deployed to users, rather than simply deploying and hoping for the best without any indication of how that application behaves in the face of partial failure (which is the current state of the art). If widely adopted, the results of this work would, in turn, reduce the occurrence of catastrophic cascading failures that cause widespread outages in critical networked services.Essentially all software that we use as a society is now networked, meaning apps connect to multiple servers and coordinate together to complete a task (such as online banking, searching for nearby restaurants, and even streaming media). This project directly supports the development of dependable networked services. Prior to this research, apps are typically released to users without testing for issues at the network level between services. This work develops new ways to test this brave new world of networked software, making it possible for software developers to automatically discover and automatically repair bugs before that software is released to users. As a result of this research, we will have new tools that, if broadly used, can result in fewer outages of critical networked services that society depends on.This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
期刊论文(1)
专著(0)
科研奖励(0)
会议论文
A fast in-place interpreter for WebAssembly
WebAssembly 的快速就地解释器
DOI:
10.1145/3563311
发表时间:
2022
期刊:
Proceedings of the ACM on Programming Languages
影响因子:
--
作者:
[Titzer, Ben L.]
通讯作者:
Titzer, Ben L.
Graduate Research Fellowship Program (GRFP)
-
批准号:1142444
-
项目类别:Fellowship Award
-
资助金额:$4.05万
-
财政年份:2011
-
负责人:Heather Miller
-
依托单位:
Graduate Reserach Fellowship Program
-
批准号:0949279
-
项目类别:Fellowship Award
-
资助金额:$0.1万
-
财政年份:2009
-
负责人:Heather Miller
-
依托单位:
海外基金