分布式系统的高层编程抽象

来源 :中国科学院研究生院 中国科学院大学 | 被引量 : 0次 | 上传用户:liongliong510
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着网络规模的扩大、节点种类的增长以及网络中支持的应用与服务的多样性的提高,网络环境的复杂性迅速增加。网络协议与应用的开发中不得不考虑越来越多应用无关的底层细节,例如Ad Hoc(移动自组织)网络中的高动态性、低可靠性、能量限制以及异质性,互联网巨大的规模,对可靠性与适应性的高要求都需要开发人员处理,使网络中协议与应用的开发变得越来越复杂。缺乏面向网络的能够将应用逻辑与底层细节分离的高层编程抽象逐渐成为了网络系统发展的一大障碍。在各种解决方案中,声明式网络设计方法得到了越来越多的重视。该方法允许用户使用声明式语言以指定“预期输出”而非“如何进行计算”的方式描述网络程序。但是该方法中依赖的面向网络的声明式语言的底层无关性、运行及优化方面还存在各种问题,本文针对对声明式网络语言中存在的这些问题进行了研究,成功的降低了网络协议与应用的开发的难度,提高程序开发的效率。主要成果有:   1.改进了声明式语言的编程方法。目前提出的声明式网络语言能够以简洁的代码描述网络协议,生成的代码尺寸与命令式语言相比降低了两个数量级。但是其声明度仍不理想,仍然存在大量描写与应用逻辑无关的底层细节的代码。为了进一步提高声明式语言的底层无关性,使开发人员能够专注于程序的应用逻辑,我们提出了新的基于改写的声明式语言代码自动完成方法。该方法能够自动生成一些常用的网络事件的代码(例如数据更新与过期、最佳数据的维护与网络消息处理),使声明式网络协议与程序中处理底层细节的代码减少了四分之三以上,进一步提高了语言的声明度。   2.提出了声明式语言的平台无关运行模型。声明式语言使开发人员在网络应用的编写过程中处理的底层细节大大减少,但是目前的声明式语言需要专用的运行系统或是被编译为底层硬件相关的代码,代码在不同平台之间的移植需要耗费大量时间和精力。我们提出了新的声明式语言的基于DBMS的平台无关运行模型,其中Netlog程序在执行前被编译为通用的SQL语言语句,DBMS通过执行相应的SQL语句执行Netlog程序,允许Netlog程序在任何能够部署DBMS的平台上运行。我们对该模型在多种不同平台上进行的实现显示了该平台具有很高的可移植性以及较好的性能。   3.提出了扩展半质朴优化方法。目前使用的网络声明式语言的运算过程中存在大量的冗余,而且由于网络声明式语言与传统声明式语言使用场景及语义上的区别,传统的优化方法无法使用。因此我们提出了新的声明式语言优化的扩展半质朴方法以进一步优化执行效率。该方法继承了半质朴方法的思想,避免了声明式语言递归运算中在相同数据上的重复计算,大幅提高了声明式语言的运算效率。并且我们证明了该方法的正确性。   4.提出了声明式网络程序模拟的模型由于实际网络中的实验受到各种因素限制,网络模拟器在网络协议和应用的开发与调试中得到广泛应用,并且节约了大量的时间与金钱,已经成为了网络程序设计过程中不可或缺的重要工具。而传统的重视网络底层参数测试的网络模拟器无法适应面向应用逻辑的声明式网络程序的调试。我们提出了声明式网络程序的网络模拟模型。该模型首先将声明式网络程序以数据为中心的思想和了统一的关系数据模型两个特点纳入了网络模拟模型中。基于该模型的着色方法能够在程序运行中即时以图形方式显示节点中拓扑相关的数据,使测试人员免于自行编写代码收集以及分析数据的困扰,为声明式网络程序的调试提供了全新的视角。   最后我们实现了Netquest虚拟机以及QuestMonitor模拟器对以上提出的各种方法进行了实验验证。
其他文献
基于视觉的行人检测与计数,是指在人不参与干预或者极少参与干预的条件下,分析由固定摄像头拍摄的静态图像或者图像序列,进而对行人进行识别、定位和人数统计。使用摄像头与
随着Web技术的逐步成熟和广泛应用,Web日志挖掘成为了数据挖掘的一个重要分支用于更好地分析Web的使用和Web的结构。用户行为模式是Web日志挖掘研究的核心,挖掘结果能够直接
基于单设备授权的数字版权保护系统使得版权作品只能在用户的一台设备上使用。这种方式在有效地保护版权内容的同时,忽略了用户的合理需求。用户希望其合法购买的数字内容可以
由于航空航天可靠性影响到航天产品的造价、寿命及其空间运行等多方面的因素,因此,航天产品可靠性技术的发展关系到整个国家的经济发展建设和国家战略安全,对国家的政治、经
随着软件应用范围的不断扩大和复杂程度的不断提高,软件的可信性问题受到了越来越广泛的关注。为生产出满足可信性要求的软件产品,提升软件开发过程的可信性具有十分重要的意
心电图(ECG)是心脏搏动相关的电位变化图,心电图各波形的形状,包括其幅度、宽度、斜率等都反映了心脏的活动状态,医生可以根据心电波形的特征看出心脏活动的异常,诊断出许多不同
多层服务系统,由于其易扩展的特点,成为网络服务分布式系统的主流架构。近年来,随着互联网用户的激增以及新应用(包括社交网络、网络视频点播、应用引擎等)的不断推出,应用对多层
分区机制是满足航空电子系统的综合化模块化发展要求不可缺少的技术,在基于ANRIC653的综合模块化航空电子系统(IMA)中,分区是调度和资源分配的核心单元,系统使用分区分层的体系
行人/自行车/机动车混行的交通特性是我国城市交叉路口最显著的交通特点之一,深入研究交叉路口移动目标的交通行为对于缓解交叉口拥堵,提高交通效率等方面具有重要意义。但是
随着电子化不断发展,越来越多政府工作都由手工升级为电脑自动处理,电子政务应运而生。电子政务已成为政府工作自动化和智能化的重要手段,电子政务应用软件反映了政府工作效