[发明专利]一种SPDY协议代理方法及代理系统有效

专利信息
申请号: 201410554733.X 申请日: 2014-10-17
公开(公告)号: CN104253821B 公开(公告)日: 2018-04-17
发明(设计)人: 周建斌 申请(专利权)人: 北京太一星晨信息技术有限公司
主分类号: H04L29/06 分类号: H04L29/06
代理公司: 北京安信方达知识产权代理有限公司11262 代理人: 李红爽,栗若木
地址: 100193 北京市*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 spdy 协议 代理 方法 系统
【说明书】:

技术领域

发明涉及网络领域,尤其涉及一种SPDY协议代理方法及代理系统。

背景技术

SPDY是谷歌开发的一种新的网络协议,SPDY并不是一种被设计用于替代HTTP(超文本传送)的协议,而是对HTTP协议的增强。SPDY增加了一个帧层用于包装HTTP协议。这个帧层为HTTP的请求响应流进行了优化,重新组织了HTTP协议的结构,并增加了一些机制,实现流复用、请求优先级、HTTP头压缩;能够提升网络速度,最小化网络延迟,优化用户的网络使用体验。

随着支持SPDY协议的客户端越来越普及,HTTP服务器迫切需要支持SPDY协议来提高页面的加载速度、改善用户体验。

目前要给HTTP服务器添加SPDY协议的支持,需要在服务器上安装相应的插件或者模块,比如Apache服务器需要安装mod_spdy插件,来支持SPDY协议;Nginx则需要在编译时加入SPDY模块,并重新打包。

当前的技术方案有以下缺陷:

一、需要在服务器上直接进行升级和配置的更改,步骤繁琐,专业性要求高。在升级的过程中会丢失部分功能,影响业务的正常运行。

二、可用的SPDY插件和模块只在一部分HTTP服务器软件的高版本上进行升级,老版本的HTTP服务器软件和非主流的HTTP服务器软件将无法通过升级插件的方式获得SPDY的支持。

三、在HTTP服务器上安装了SPDY插件后,所有SPDY的解析、压缩等等操作会在服务器上进行,占用了服务器的计算资源,影响了服务器正常业务的处理速度。

发明内容

本发明要解决的技术问题是如何在不改变HTTP服务器任何配置的情况下,为HTTP服务器增加支持SPDY协议的功能,并且不会降低HTTP服务器对正常业务的处理能力。

为了解决上述问题,本发明提供了一种SPDY代理方法,包括:

从客户端接收SPDY请求,如果该SPDY请求为SYN_STREAM类型的控制帧,则解析该SYN_STREAM类型的控制帧,生成HTTP请求头;如果该SPDY请求为数据帧,则解析该数据帧,生成HTTP请求体;将生成的HTTP请求头和请求体发给HTTP服务器;

当从所述HTTP服务器收到与SPDY请求相应的HTTP回应时,解析HTTP回应头,生成SYN_REPLY类型的控制帧;解析HTTP回应体,生成SPDY数据帧;将所生成的SYN_REPLY类型的控制帧和SPDY数据帧发回给客户端。

可选地,所述从客户端接收SPDY请求的步骤前还包括:

与所述客户端建立安全传输层协议TLS连接时,在协议协商NPN字符串中加入SPDY版本号;

当所述客户端的回应中携带SPDY版本号时,进行所述从客户端接收SPDY请求的步骤。

可选地,所述解析SYN_STREAM类型的控制帧,生成HTTP请求头的步骤后还包括:

解析SYN_STREAM类型的控制帧的3个优先级标记位,得到3个二进制数值组成的序列,将所生成的HTTP请求头和所述控制帧对应放入所述序列对应的优先级队列中;

所述将生成的HTTP请求头发给HTTP服务器的步骤中,按照从高优先级到低优先级的顺序从优先级队列中取出HTTP请求头和对应的控制帧发送给所述HTTP服务器。

可选地,所述解析SYN_STREAM类型的控制帧,生成HTTP请求头的步骤包括:

对于SYN_STREAM类型的控制帧,用zlib解压该控制帧的SPDY头域块,提取头域名字为“:method”、“:path”、“:version”的头域的值,拼接组成HTTP请求头的第一行;把提取的其它SPDY头域块中的头域,写成[头域名]:[头域值]的格式,作为HTTP头域,每行写一个头域,添加Connection:keep-alive头域。

可选地,生成HTTP请求头的步骤后,将生成的HTTP请求头发给HTTP服务器的步骤前还包括:

将从所述SYN_STREAM类型的控制帧中解析出的流ID和所生成的HTTP请求头相对应;

检查SPDY到HTTP的服务器的连接池是否有空闲的TCP连接,如果没有且连接池中的连接数未超过预设阈值,则新建一条TCP连接加入所述连接池并标记为空闲后取出;如果有则取出一条空闲的TCP连接;

将生成的HTTP请求头发给HTTP服务器的步骤包括:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京太一星晨信息技术有限公司,未经北京太一星晨信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410554733.X/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top