试论Cache多次302存在的故障隐患

2020-06-19 08:50李良一
科学与信息化 2020年11期
关键词:报文客户端运营商

李良一

摘 要 随着中国互联网行业的飞速发展,全球移动运营商大多面临网内资源匮乏,网间结算费用高的问题。建设IDC,引入部分CP厂家,建设内容网络和Cache系统都是解决问题的思路。

关键词 互联网;Cache;HTTP;302重定向

随着互联网技术的不断发展及网络应用的日益广泛,网络流量爆炸式增长,在线视频、P2P流量等占据互联网流量的60%~80%。现有和未来可预见增长的带宽已不能满足大流量、持续占用带宽的应用。数据传输延迟、网络拥塞等诸多问题导致用户体验降低。传统的解决方案存在着各种局限性,例如,骨干网带宽扩容会减少运营商投资收益,封堵限速又会影响用户上网体验。Cache成为各运营商对内容资源补足的一种常规技术手段[1]。

Cache通过分析和研究,采用先进的被动缓存技术,通过将大量占据出口带宽、相同的网络资源进行本地化緩存,对P2P文件传输、HTTP文件下载、Web页面浏览以及在线视频播放等各种应用实现网内缓存加速。在不影响用户体验的情况下,降低出口流量,减少网间结算费用,节省运营商投资成本和运营成本,提高用户上网体验。

Cache系统通过HTTP重定向引导机制应采用非代理处理方式。边缘服务节点根据用户的访问热度提前对内容进行缓存,后续当系统监测到用户发出的HTTP访问请求属于已缓存的资源,才由系统向用户返回HTTP 302重定向报文,响应报文的目标地址为缓存服务器的IP地址,用户终端接收到该条HTTP 302消息后,将向缓存服务器发起请求下载数据,如图2:

目前用户访问互联网使用终端较多,不同的终端适配不同的应用软件会存在不同的限制,本次主要讨论下苹果MAC笔记下优酷客户端针对302报文的限制。讨论现象为使用的MAC苹果笔记本上安装的优酷客户端使某运营商不能正常播放优酷视频,而切换到其他运营商则可正常播放,故障运营商侧部署有Cache系统。通过抓包工具分析mac优酷客户端从发起视频调度http请求算起,到客户端发送视频资源http请求,中间只能有两个302重定向,超过两个302重定向,客户端就不再发起http请求。现在发现的边缘节点返回给客户端302重定向后,就不再向Cache系统发起视频资源http请求。

首先客户端向源站发送视频调度http请求,返回第1个302重定向,包头location中包含视频资源的url,接着客户端向源站发送视频资源http请求,重定向系统劫持后给客户端返回第2个302重定向,然后客户端向边缘节点发送视频资源http请求,slb给客户端返回第3个重定向,客户端收到302重定向后就不在发送location里面包含的url的http请求。

此次过程中在MAC客户端侧共产生3次302重定向,在产生第2次重定向后客户端则不再对其进行响应,而在非MAC客户端中即使出现3次302重定向,访问视频资源仍可以正常播放。虽然多次出现302报文属于Cache系统自身服务配置问题,正常报文应在1~2次之间(包含源站自身调度机制),但是实际在多数实际服务过程中并不影响用户访问感知,上述现象只是少数出现的服务隐患,为确保服务质量可根据请求头字段中的User-Agent来判断是不是mac优酷客户端发送过来的http请求,如果是mac客户端发过来的话,可以先判断该资源是否存在缓存文件,如果存在缓存文件,可以读取缓存文件并返回给客户端(因为已经验证过,缓存文件存在的情况下,视频可以正常播放),如果不存在缓存文件,直接做bypass处理,不对相应文件进行缓存。

对于视频类业务流量较高,如出现小范围内的问题,特别是与客户端有关的,需要具体问题具体分析,制定有效措施,才能避免因缓存视频而不能播放给用户带来不必要的麻烦。

参考文献

[1] 周领良,朱延超,刘轶,等.基于Cache命中率校准的并行程序性能预测[J].高性能计算技术,2015(1):22-25.

猜你喜欢
报文客户端运营商
海法新港一期自动化集装箱码头电子数据交换报文系统设计与实现
基于报文类型的限速值动态调整
一张图看三运营商政企业务
微评
虚拟专用网络访问保护机制研究
新闻客户端差异化发展策略
用户设备进行组播路径追踪的方法及系统
运营商们的4G时代—急需向消费者证明自己
浅析IEEE 802.1x及其客户端软件