rfc5693_ALTO

1. RFC连接:https://tools.ietf.org/pdf/rfc5693.pdf
2. RFC功能:描述基于网络拓扑信息对网络路径进行优化,以提升网络层性能,从而让应用层得到更好的用户体验。
3. 仅仅讲了一个理念,没有具体实现方式。
4. 网络节点,比如路由器信息的获取不在本RFC范畴。目前常用的方法有BGP LS,可以参考RFC7752
5. 注: 不是词词句句地翻译,而是更精简,更符合中文理解方式第翻译。有时也会加一些自我的理解注释。

1. Introduction

1.1. Overview

相比于集中式应用,分布式应用对路由器的能力要求更高。分布式会通过网络频繁访问远程的文件。所以网络需要对这些文件数据进行转发中继。

为了性能,分布式系统会把资源在更接近终端的许多地方进行缓存复制(比如网站的CDN服务器)。但是由于终端应用对网络以下知之甚少,往往采用随机选择资源获取点,从而导致性能非最优。
比如说,对源获取点的选择,往往基于事先(TCP建连之前的)对各个源点的RTT的测量结果。但是RTT与吞吐量并没有必然的因果关系,不能说RTT小,吞吐率就一定高。所以,仅仅通过RTT进行源获取点选择,很可能得到的是次优的结果。
(基于经验:对于非语音和短信类的文件类资源获取,吞吐能力才是关键。因为客户体验时延=数据量/吞吐能力,而并不是等于RTT)

不考虑底层网络拓扑,不仅仅得不到最优的资源获取点,甚至可能会导致额外的网络拥塞。因为非最优的选择,往往会导致数据在网络中来回重复地传输。从而不仅仅导致用户体验差,也会提升网络相关费用。

最近的研究发现,是有办法获取到底层网络节点和链路的拓扑信息的。这些信息基于网络层获取,比传输层(TCP)的RTT和拥塞信息,具有更大的时间参考维度,从而可以更好地选择源获取点。
从网络和应用两个层面,这些信息都具有很大的价值,可以提升性能,并降低整体费用。
本文就是讨论如何通过这些网络拓扑信息,进行非随机地更优地源点选择。

2. Definitions

  1. ALTO:Application-Layer Traffic Optimization
  2. CDN: Content Distribution Network。
  3. Application: 使用ALTO,通过底层网络信息,对性能和质量进行优化的,系统。
  4. Peer:系统中的一个应用节点/客户端。
  5. Resource: CDN上的文件资源,或者是其上的进程资源。CDN上的这些资源具有以下特征:1、是某个原始资源在不同网络域中的复制 2、支持同一时刻有多个客户端并行访问。
  6. ALTO Service: 基于底层网络架构信息,引导客户端选择哪个CDN上的缓存换取所需资源,从而提升客户端体验,提升CDN资源利用效率的 服务。
  7. ALTO Server: ALTO服务端,是一个逻辑单元。其提供API,以提供ALTO服务。
  8. ALTO Client: 向ALTO Server请求ALTO Service的客户端。
  9. ALTO Query:ALTO服务的请求。
  10. ALTO Response: ALTO请求的响应,包含CDN选择引导信息。
  11. ALTO Transaction: ALTO交互,包含一个请求和响应过程。
  12. Local Traffic: 一个数据尽在某ISP(Internet Service Provider,比如移动)内部转发的传输过程。
  13. Peering Traffic: 两个应用节点之间的传输
  14. Transit Traffic: 跨ISP的传输。
  15. Application Protocol: 应用层实现数据传输管理的协议(比如说http或更上层)。ALTO需要考虑这些协议场景。
  16. ALTO Client Protocol: ALTO客户侧协议,用于与客户端进行ALTO请求和响应的交互。
  17. Provisioning Protocol: ALTO网络侧协议,用于从网络(路由器)获取网络拓扑信息。比如说BGP LS协议。

3. The Problem 要解决的问题

网络工程师们必须要面对流量优化,并设计了诸如MPLS、差分模型等机制,以在某两台路由器之间找到(设置)更优的路由路径(或路由器中使用的队列),进行报文传输。
这些优化的需求有:低延时、高可靠、高优先级等。
这些优化往往是网络层或链路层,并且要求对上传透明(不影响上层,比如TCP层)。
选择数据源CDN,选择路由路径,对于多源系统来说很重要。

注:对于分布式应用,有其它几个因素也很重要,例如:
1. 均衡:防止客户端都集中在某个源上获取数据
2. 策略:优先获取文件的重要片段以实现获取过程优化(**fetching rare pieces of a file before those pieces are available at a multiplicity of nodes**??没有完全理解,欢迎指教??)

Peer选择,有利于提升应用性能;并有助于IPS运营商提升网络资源,减少域间流量,降低成本。
所以,对于ALTO 来说,一方面,需要有为应用层采集底层网络拓扑信息的能力;另一方面,需要有为应用分析拓扑数据,引导应用进行Peer选择的能力。

4. Use Cases 应用场景

5. Aspects of the Problem 需要关注的方面

Information Provided by an ALTO Service

ALTO向客户端提供的服务器信息,应该遵循的原则。

5.2. ALTO Service Providers

提供ALTO服务的方式有三种

5.3. ALTO Service Implementation

ALTO 服务功能实现方式。

5.4. User Privacy

客户隐私。因为客户请求ALTO服务时会携带一些信息,供ALTO Server为其选择Peer做参考。所以这些信息的保护很重要。

5.5. Topology Hiding

网络拓扑保护。

5.6. Coexistence with Caching

ALTO Server需要和cache服务器合理交互。
内容Cache可以很大地提升体验;ALTO Server应该知道有哪些Cache服务器,并且哪个最近。

6. Security Considerations

认证。ALTO Client向Server获取服务时,应该要进行鉴权认证,以保护Server。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值