移动网络接口设计(共5901字).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《移动网络接口设计(共5901字).doc》由会员分享,可在线阅读,更多相关《移动网络接口设计(共5901字).doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、移动网络接口设计(共5901字)摘要:移动设备面临着多样化和动态的网络选项,要想充分地使用这些选项要求知道应用程序的意图。移动网络接口是一个简单而强大的处理网络多样性的机制。应用程序为网络传输提供一个声明标签,并将系统匹配到最合适的网络。移动网络接口还可以推迟和重新排序传输的数据,提供应用程序互斥和排序约束机制。关键词:移动网络;接口设计;数据传输1引言移动设备面临着一个多元、动态的网络选项。这些选项有各种各样的优点和缺点。因此,在所有情况下没有单一的“最佳选择”,基础设施的多样性既是挑战,也是机遇。面临的挑战是管理这些不断变化的选项以满足每个应用程序的需求,这本身随时间变化。通过这样做,应用
2、程序带来了显著效益,同时利用多个网络和规划未来的传输智能。目前解决这个问题的方法是不充分的。一个极端,操作系统或中间件层代表应用程序的所有路由和接口决定。然而,因为这些决定不知道应用程序的使用网络意图,他们经常错过优化机会。另一个极端,系统直接暴露底层细节给应用程序,使应用程序知道网络变化,应用程序必须显式地选择可用的选项。这种方法表达,需要管理多个无线网络不必要复杂的应用程序任务。设计的网络介于两者之间,系统管理发现和描述可用网络选项的细节,应用程序用少量的声明标签来提供关于通信量的提示。然后,该系统将匹配的网络流量提供给可用的接口。设计的移动网络系统提供了一个可移植的、用户级别的实现方法。
3、2移动网络接口设计原理设计遵循经典的分离原则机制。应用程序确定使用网络的实际意图,这一意图表示数据应如何传输的策略。另一方面,操作系统或中间件库是最佳的位置,以提供一个共有机制来实现指定的策略。每个应用程序必须提供使用网络意图的提示,因此共有机制使得部署新应用程序使用多个移动网络容易。处理多个异构和间歇性的移动网络的细节被封装在系统的底层。共有机制也可以从多个应用程序聚集异构数据传输。因此,网络设计通过数据传输标签和系统底层实现的分离,制定政策数据映射到网络最佳匹配时的数据传输的标签。设计希望接口尽可能简单,要求每一个应用程序公开定量规格的特性,它希望产生的流量,以及它所需要的服务质量。这一原
4、则导致了几项决定,应用程序使用定性属性的数据表示他们的意图,而不是使用量化规范,即,不管是小的还是大的,不管是前台互动的还是后台的流量。不要求什么是“小”和“大”。允许该应用程序使用它认为合适标签。并发系统包括允许程序员排除不正确的排序机制,增加了同步抽象表达原子和之前发生的约束。除了表达这类排序约束,还需要处理部分失败的机制。有些时候一些信息量将由任何可用的传输转换提供错误的服务。因此,提供了一种回调机制来处理延迟传输或断开连接。3移动网络接口设计方案在本节中,描述网络应用程序接口。首先描述基本的抽象接口。应用程序使用标签来传达他们的意图。表达信息单位称为IROBs(IsolatedReli
5、ableOrderedBytestreams)。IROBs提供原子性(互斥);应用程序还可以指定IROBs之间顺序约束。当操作必须延迟,应用程序可以注册thunks恢复他们。3.1标签标签是应用程序的主要抽象信息,应用程序声明任何特定网络信息属性的机制。标签是系统定义的定性属性的消息。目前只支持4个标签,两个维度,交互性和规模,如果用户事件正在等待响应,消息的标签设置为Fore-ground,如果它的及时传递不是行为的关键,则消息的标签是Background。例如,许多提示不需要发送。Small标签描述单包的RPC等消息,Large标签描述其他消息,如包含多媒体数据。3.2多模式数据来源处理标
6、签与标签感知套接口一起使用。我们称这种套接口为multi-sockets。直观地说,一个multi-socket将几个不同标签单一虚拟套接口复合在一起。在大多数情况下,multi-sockets行为是正常的。然而,multi-socket发送调用需要一个标签。请注意,发件人是负责分配标签的实体,作为结果,接收不需要标签。可以想象用一个标签来实现过滤的接收。multi-socket是一个逻辑连接,动态实例化,并使用实际TCP连接在一个或多个物理接口。multi-sockets提供封装:它们隐藏多个网络接口、路由和连接的应用程序。Multi-sockets也封装瞬时断开连接,如通过无线死区。应用程
7、序指定标签,网络流量管理器利用标签选择正确的网络发送数据。应用程序被每一个标签通知网络不可用,通过使用thunk技术,当事件发生时执行递延执行环境。像TCP套接口,multi-sockets支持可靠传递抽象。然而,multi-sockets放松了TCP排序约束,允许字节被记录到指定的互斥和排序约束中的应用,在后面两节中描述。3.3IROBs字节流带有标签的IROB是网络传输信息的基本单位,multi-socket接口保证每个IROB自动接收;即,指令中产生的IROB字节流不影响其他网络传输字节流。然而,单个IROB可能被重新排序到另一个地方。换句话说,来自接收multi-socket接口的先前
8、发送的IROB首先被正在读取数据的应用程序看到。然而,来自于两个IROB的字节永远不会混合。IROBs以同样的方式提供互斥操作,在多线程程序中,锁提供互斥的线程。3.4排序约束因为有些应用程序需要订购IROBs之间的约束,所以multi-socket接口支持这样的约束声明。每个multi-socket接口分配一个独一无二的,单调增加的标识符给每个IROB。当创建一个新的IROB时,应用程序可以指定任何IROB的标识符,但必须接收到之前被创造出来的标识符。排序约束可能只指定IROBs有较低的唯一标识符,这可以保证这样的约束是无死锁的。TCP套接字指定每个IROB必须收到最低的标识符,应用程序处理
9、连续的字节流,API提供了简单的默认发送调用机制。然而,许多应用程序拥有更为宽松的约束条件;例如,BlueFS文件系统客户端允许异步写入。multi-sockets中的排序约束类似于多线程程序提供线程的条件变量。3.5Thunks技术带标签的IROB在发送时没有任何“合适的”网络可以利用,这种情况是可能的。例如,批量传输开始时只有一个低带宽链接是可用的;或者移动计算机可能是在一个无线死区,没有连接。这种传输最好在稍后遇到一个高带宽链接时处理。当然,不希望应用程序轮询链接,也不希望应用程序建立新连接后短时间内瞬时断开。创建IROBs操作设置一个可选的Thunk参数,这个函数/参数对将用于告知应用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 移动 网络 接口 设计 5901
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内