首页> 中国专利> 一种SDN交换机和SDN交换机的应用管理方法

一种SDN交换机和SDN交换机的应用管理方法

摘要

本发明的提出了一种SDN交换机和SDN交换机的应用管理方法,交换机包括:接入卡、交换卡、业务卡和控制卡,交换卡设置有物理交换网络;业务卡设置有网络处理器和高速缓存内存模块,控制卡设置有SDN控制器;高速缓存内存模块包括:缓存单元、主控单元及重定向单元,缓存单元用于下载缓存,主控单元用于整个系统的集中管理,重定向单元用于访问重定向;其中,高速缓存内存模块的缓存空间还包括以下至少一个或其组合:业务卡中的网络处理器的内存部件、交换卡的处理器的存储部件、控制卡的处理器的存储部件、接入卡的处理器的存储部件,提高响应客户端请求的效率,减轻服务器分发应用内容时的处理压力,提高服务器的业务处理能力。

著录项

  • 公开/公告号CN107682281A

    专利类型发明专利

  • 公开/公告日2018-02-09

    原文格式PDF

  • 申请/专利号CN201710833228.2

  • 发明设计人 梁向锋;

    申请日2017-09-15

  • 分类号

  • 代理机构北京集智东方知识产权代理有限公司;

  • 代理人陈亚斌

  • 地址 215200 江苏省苏州市吴江区震泽镇八都经济开发区小平大道8号

  • 入库时间 2023-06-19 04:34:27

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-04-17

    授权

    授权

  • 2018-03-09

    实质审查的生效 IPC(主分类):H04L12/861 申请日:20170915

    实质审查的生效

  • 2018-02-09

    公开

    公开

说明书

技术领域

本发明涉及数据通信技术领域,具体而言,涉及一种SDN交换机和一种SDN交换机的应用管理方法。

背景技术

在互联网和移动应用高速发展的今天,用户已经越来越不满足常规的对互联网的浏览、查询、电子邮件等应用,而希望在线影音视频、高速下载、移动终端业务等应用方面拥有更好的用户体验。

为了缓解网络设备的出口带宽面临的巨大压力,现有技术中,除了扩展带宽、控制流量以外,还采用部署高速缓存加速系统的方式来实现Web下载、在线影音、P2P下载、移动APP等应用的自动缓存加速功能,从而降低同种业务请求对出口带宽的反复消耗,为用户带来本地化的上网服务体验,同时大幅节约出口带宽资源。但部署高速缓存加速系统的方法存在有如下的问题:

最常见的增加高速缓存加速系统的方法是构建分布式服务器集群,如图1所示,服务器集群是由多台服务器1、路由器2、交换机3构建的网络,服务器1用作客户机4的应用缓存服务器,网络访问缓存服务器。

采用分布式集群管理方式,可以通过增加应用服务器1的数量,可以减轻由于多用户并发访问对服务器带来的压力,但是这样会显著地增加服务器1的配置成本和运行维护的成本。

此种缓存加速系统通过利用标准中定义的302状态码将客户端的请求临时引流到本地缓存加速系统,从而将系统内缓存单元的数据加速分发给客户端,避免客户端通过网络出口向源网站低速获取并挤占出口带宽,依赖于在网络出口处增加新的服务器集群,将用户访问流量引向加速服务器,从而减轻出口网络带宽压力,在一定程度上加速用户访问应用体验。

由于此种加速方式,只是将远端的应用内容取回到本地服务器上,降低了用户访问时网络上的延时,一旦出现多用户并发访问的情况,服务器的处理能力和网络转发能力依然是瓶颈,同样会出现用户访问拥塞,服务器响应不及时的问题,尤其在应对在线视频,网络直播应用时,这种缓存加速方法同样会力不从心,无法实现高效率和高并发。

发明内容

本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。

为此,本发明的第一方面在于提出了一种SDN交换机。

本发明的第二方面在于提出了一种SDN交换机的应用管理方法。

为实现上述目的,根据本发明的第一方面提出了一种SDN交换机,包括:接入卡,用于通信网络中数据流量的接收与发送;交换卡,用于将接入卡接收的通信流量分发到各个业务卡,交换卡设置有物理交换网络;业务卡用于分析处理通信流量内容以及流量解析,业务卡设置有网络处理器和高速缓存内存模块;控制卡,用于控制和管理整个SDN交换机的工作状态,控制卡设置有SDN控制器;高速缓存内存模块包括:缓存单元、主控单元及重定向单元,缓存单元用于下载缓存,主控单元用于整个系统的集中管理,重定向单元用于访问重定向;其中,高速缓存内存模块的缓存空间还包括以下至少一个或其组合:业务卡中的网络处理器的内存部件、交换卡的处理器的存储部件、控制卡的处理器的存储部件、接入卡的处理器的存储部件。

本发明提供的SDN交换机,具有较大的存储空间的高速缓存内存模块,高速缓存内存模块不仅可以利用自身具备的存储空间,当存储容量过大时,还可以利用接入卡、交换卡、业务卡和控制卡内处理器的存储空间,进而进一步地提高了整体交换机的存储空间,可以满足应用文件的缓存需求;通过SDN交换机系统中的网络处理器的高速缓存内存模块来缓存应用,充分应用网络处理器多达4K的处理线程,并行分发应用内容到达各自的请求客户端,从而提高响应客户端请求的效率,减轻服务器分发应用内容时的处理压力,提高服务器的业务处理能力,同时解决了应用缓存和高速并行转发的问题。

相关技术中,针对大型网吧应用和在线视频直播等网络负载较重的情况,在客户机向服务器请求较大文件时,比如几GB的大小应用,如果有多个用户同时请求该文件,则服务器需要同时处理多个下载请求,而服务器的网络处理能力一般有限,应付数据转发的压力较大,响应其他应用的请求就会延迟,造成用户体验较差。本发明提供的SDN交换机,通过设置高速缓存内存模块,可以解决服务器响应客户端请求效率低的问题,提高服务器支持多用户访问请求的能力,提升用户访问体验,降低服务器的运行负载,利用SDN交换机系统中网络处理器的应用识别,高速缓存,并行转发能力,解决目前应用缓存系统请求响应速度慢的问题。

根据本发明的上述实施例的SDN交换机,还可以具有以下技术特征:

在上述技术方案中,优选地,高速缓存内存模块采用数据报文的方式缓存应用文件,并可以为缓存应用文件创建文件描述信息。

在该技术方案中,高速缓存内存模块采用数据报文的方式缓存应用文件,并可以为缓存的应用文件创建文件描述信息,用户设备请求相应的应用时,SDN交换机可以通过搜索该高速缓存内存模块的缓存空间的方式直接得到所需的应用文件,并可以通过更新SDN交换机的内存中数据的控制信息,通过并行转发引擎转发的应用文件到相应的用户设备。

在上述技术方案中,优选地,高速缓存内存模块的单一节点的高速内存的最大内存量大于等于96GB;SDN交换机可以安装的节点数量大于等于12个;高速缓存内存模块的网络接口带宽为4.8Tbps。

在该技术方案中,SDN交换机的单一节点的高速内存最高可达96GB以上,而在一个SDN交换机的机架设备里面往往可以最少安装12个节点,因此,单一设备的最大缓存容量可达1.1TB以上,整个系统可以实现48K硬件线程同时处理应用缓存和网络转发,基本上可以满足绝大多数应用文件的缓存需求。进一步地,SDN交换机系统最大的网络接口带宽为4.8Tbps,SDN交换机系统网络超强的并发处理能力,使得该系统在处理多用户并发访问时轻松自如,多达48K的处理线程,可以同时处理带宽4.8Tbps的业务流量,不会出现由于网络转发能力而造成的网络拥塞问题。

根据本发明的第二方面提出了一种SDN交换机的应用管理方法,用于如上述任一技术方案所述的SDN交换机,SDN交换机与用户设备通过网络服务器进行交互,应用管理方法包括:接收用户设备发送的请求报文;解析请求报文,并获取请求报文中对应的应用信息;根据应用信息查询SDN交换机的应用缓存数据库中是否存在对应的应用信息;当存在对应的应用信息时,根据应用信息在所述应用缓存数据库中的存储位置,启动所述请求报文的重定向操作;当不存在对应的应用信息时,则执行网络服务器的响应请求流程,并缓存应用信息。

本发明提供的SDN交换机的应用管理方法,接收用户设备发送请求报文,并对的请求报文进行解析以获取用户设备请求的应用信息,根据得到的应用信息在应用缓存数据库中进行查找,如果交换机的数据库中已存在该应用信息,则直接响应用户设备的请求;如果交换机的数据库中没有该应用信息,则通过网络服务器下载该应用,并缓存至交换机的数据库。通过本发明提供的SDN交换机的应用管理方法,可以解决服务器响应客户端请求效率低的问题,提高服务器支持多用户访问请求的能力,提升用户访问体验,降低服务器的运行负载,利用SDN交换机系统中网络处理器的应用识别,高速缓存,并行转发能力,解决目前应用缓存系统请求响应速度慢的问题。

具体地,用户设备通过SDN交换机向网络服务器发出下载应用请求时,其中,用户设备可以是浏览器、下载客户端、P2P客户端等,网络服务器可以是HTTP服务器、CDN服务器、P2P服务器、P2P客户端等,SDN交换机可实现应用的缓存加速,执行加速用户应用访问速度的控制程序,加速用户应用访问速度的控制程序可以运行于SDN交换机的控制卡处理器上,也可以运行在通过各个板卡之间的竞争选举出来的交换卡处理器上。该控制程序可深度解析用户设备发送的请求报文和网络服务器的响应数据,利用SDN交换机中业务卡上的网络处理器4K线程资源,使其工作在特有的ZOL(Zero Overhead Linux)模式下,并发处理数据报文的解析与转发任务。

在上述技术方案中,优选地,当存在对应的所述应用信息时,根据应用信息在应用缓存数据库中的存储位置,启动请求报文的重定向操作的步骤,具体包括:根据所述应用信息在应用缓存数据库中的存储位置,发送重定向请求至用户设备;接收重定向请求的响应报文,根据响应报文中的应用信息,将应用缓存数据库中保存的对应的应用信息发送至用户设备。

在上述技术方案中,优选地,当应用缓存数据库存在对应的应用信息时,还包括:判断应用信息是否为可用;当应用信息可用时,根据应用信息在应用缓存数据库中的存储位置,启动请求报文的重定向操作;当应用信息不可用时,则执行网络服务器的响应请求流程,并缓存应用信息。

在上述技术方案中,优选地,当应用缓存数据库存在对应的应用信息时,还包括:判断应用信息的置信度是否大于预设阈值;当置信度大于等于预设阈值时,根据应用信息在应用缓存数据库中的存储位置,启动请求报文的重定向操作;当置信度小于所述预设阈值时,则执行网络服务器的响应请求流程,并缓存应用信息。

在上述技术方案中,优选地,当不存在对应的应用信息时,则执行网络服务器的响应请求流程,并缓存应用信息的步骤,具体包括:获取应用信息对应的资源占用信息;判断资源占用信息的资源占用值是否达到热点阈值;当资源占用值达到热点阈值时,启动请求报文的响应操作,并下载应用信息对应的应用至应用缓存数据库;当资源占用值未达到热点阈值时,启动网络服务器响应请求报文。

在上述技术方案中,优选地,解析所述请求报文的步骤,具体包括:当请求报文中包括地址信息时,对地址信息进行归一化处理,获取处理后地址信息。

在上述技术方案中,优选地,还包括:向网络服务器发送与应用信息对应的异步更新请求;获取并缓存更新后的应用信息。

在上述技术方案中,优选地,请求报文为所述用户设备所需的数据及数据的请求点。

在上述技术方案中,优选地,请求点包括以下至少一种,用户设备请求观看视频的起始时间点、用户设备请求观看视频时间点相对于整个视频文件初始点的时间点,或者是请求观看视频字节在整个视频文件中的具体字节位置。

本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1示出了相关中构建分布式服务器集群的示意图;

图2示出了本发明一个实施例的SDN交换机的应用管理方法的示意图;

图3示出了本发明再一个实施例的SDN交换机的应用管理方法的流程图;

图4示出了本发明一个实施例一种应用缓存加速方法的流程图;

图5示出了本发明一个实施例一种在线视频访问的缓存加速方法的流程图。

其中,图1中附图标记与部件名称之间的对应关系为:

1服务器、2路由器、3交换机,4客户机;

图2中附图标记与部件名称之间的对应关系为:

10用户设备,20SDN交换机,30网络服务器。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。

根据本发明的第一方面的实施例提出了一种SDN交换机20,包括:接入卡,用于通信网络中数据流量的接收与发送;交换卡,用于将接入卡接收的通信流量分发到各个业务卡,交换卡设置有物理交换网络;业务卡用于分析处理通信流量内容以及流量解析,业务卡设置有网络处理器和高速缓存内存模块;控制卡,用于控制和管理整个SDN交换机20的工作状态,控制卡设置有SDN控制器;高速缓存内存模块包括:缓存单元、主控单元及重定向单元,缓存单元用于下载缓存,主控单元用于整个系统的集中管理,重定向单元用于访问重定向;其中,高速缓存内存模块的缓存空间还包括以下至少一个或其组合:业务卡中的网络处理器的内存部件、交换卡的处理器的存储部件、控制卡的处理器的存储部件、接入卡的处理器的存储部件。

本发明提供的SDN交换机20,具有较大的存储空间的高速缓存内存模块,高速缓存内存模块不仅可以利用自身具备的存储空间,当存储容量过大时,还可以利用接入卡、交换卡、业务卡和控制卡内处理器的存储空间,进而进一步地提高了整体交换机的存储空间,可以满足应用文件的缓存需求;通过SDN交换机20系统中的网络处理器的高速缓存内存模块来缓存应用,充分应用网络处理器多达4K的处理线程,并行分发应用内容到达各自的请求客户端,从而提高响应客户端请求的效率,减轻服务器分发应用内容时的处理压力,提高服务器的业务处理能力,同时解决了应用缓存和高速并行转发的问题。

相关技术中,针对大型网吧应用和在线视频直播等网络负载较重的情况,在客户机向服务器请求较大文件时,比如几GB的大小应用,如果有多个用户同时请求该文件,则服务器需要同时处理多个下载请求,而服务器的网络处理能力一般有限,应付数据转发的压力较大,响应其他应用的请求就会延迟,造成用户体验较差。本发明提供的SDN交换机20,通过设置高速缓存内存模块,可以解决服务器响应客户端请求效率低的问题,提高服务器支持多用户访问请求的能力,提升用户访问体验,降低服务器的运行负载,利用SDN交换机20系统中网络处理器的应用识别,高速缓存,并行转发能力,解决目前应用缓存系统请求响应速度慢的问题。

具体实施例中,SDN交换机20的高速缓存内存模块的缓存空间,可以由业务卡中的网络处理器的高速内存部件组成,如业务卡上的网络处理器的多个内存控制器,以及DDR3,DDR4系列的内存组件,这些高速内存部件往往具有高达1Tbps的访问带宽和1333Mhz的时钟速度,可以充分满足保存应用文件的缓存需求。进一步地,当业务需求量较大时,交换卡、控制卡和接入卡的处理器的存储部件也可以作为高速缓存内存模块的一部分。

在本发明的一个实施例中,优选地,高速缓存内存模块采用数据报文的方式缓存应用文件,并可以为缓存应用文件创建文件描述信息。

在该实施例中,高速缓存内存模块采用数据报文的方式缓存应用文件,并可以为缓存的应用文件创建文件描述信息,用户设备10请求相应的应用时,SDN交换机20可以通过搜索该高速缓存内存模块的缓存空间的方式直接得到所需的应用文件,并可以通过更新SDN交换机20的内存中数据的控制信息,通过并行转发引擎转发的应用文件到相应的用户设备10。

在本发明的一个实施例中,优选地,高速缓存内存模块的单一节点的高速内存的最大内存量大于等于96GB;SDN交换机20可以安装的节点数量大于等于12个;高速缓存内存模块的网络接口带宽为4.8Tbps。

在该实施例中,SDN交换机20的单一节点的高速内存最高可达96GB以上,而在一个SDN交换机20的机架设备里面往往可以最少安装12个节点,因此,单一设备的最大缓存容量可达1.1TB以上,整个系统可以实现48K硬件线程同时处理应用缓存和网络转发,基本上可以满足绝大多数应用文件的缓存需求。进一步地,SDN交换机20系统最大的网络接口带宽为4.8Tbps,SDN交换机20系统网络超强的并发处理能力,使得该系统在处理多用户并发访问时轻松自如,多达48K的处理线程,可以同时处理带宽4.8Tbps的业务流量,不会出现由于网络转发能力而造成的网络拥塞问题。

根据本发明的第二方面实施例提出了一种SDN交换机20的应用管理方法,用于如上述任一技术方案所述的SDN交换机20,如图2所示,SDN交换机20与用户设备10通过网络服务器30进行交互,通信系统包括网络服务器30,SDN交换机20,用户设备10。其中,网络服务器30为网站服务器,是指驻留于因特网上某种类型计算机的程序,能够响应Internet上运行在其他计算机中的浏览器的访问请求,并向浏览器等Web客户端提供文档;SDN交换机20为具有应用管理功能的网络通信设备,可以加速用户设备10访问网络服务器30的速度,即代理网络用户设备10获取网络信息,具体用于管理网页组件和回应网页浏览器的请求,以及缓存网站的网页;SDN交换机20可以是后续实施例中描述的任一种可能的实现形式,具有应用管理功能的SDN交换机20可以同时处理多个网页的访问请求、以及一个网页的多个访问请求。用户设备10可以是个人电脑、平板电脑、数字助理、笔记本和手机等终端设备,例如是可以向用户提供语音和/或数据连通性的设备,具有无线连接功能的手持式设备。用户设备10可以有多个,该用户设备10安装了浏览器,例如QQ浏览器、优视科技浏览器和百度浏览器或360浏览器等,具体浏览器的类型不作限定。

如图3所示,本发明一个实施例的应用管理方法的流程图:

步骤102,接收用户设备10发送的请求报文;

步骤104,解析请求报文,并获取请求报文中对应的应用信息;

步骤106,根据应用信息查询SDN交换机20的应用缓存数据库中是否存在对应的应用信息;

步骤108,当存在对应的应用信息时,根据应用信息在应用缓存数据库中的存储位置,启动请求报文的重定向操作;

步骤110,当不存在对应的应用信息时,则执行网络服务器30的响应请求流程,并缓存应用信息。

如图2和图3所示,本发明提供的SDN交换机20的应用管理方法,接收用户设备10发送请求报文,并对的请求报文进行解析以获取用户设备10请求的应用信息,根据得到的应用信息在应用缓存数据库中进行查找,如果交换机的数据库中已存在该应用信息,则直接响应用户设备10的请求;如果交换机的数据库中没有该应用信息,则通过网络服务器30下载该应用,并缓存至交换机的数据库。通过本发明提供的SDN交换机20的应用管理方法,可以解决服务器响应客户端请求效率低的问题,提高服务器支持多用户访问请求的能力,提升用户访问体验,降低服务器的运行负载,利用SDN交换机20系统中网络处理器的应用识别,高速缓存,并行转发能力,解决目前应用缓存系统请求响应速度慢的问题。

具体地,用户设备10通过SDN交换机20向网络服务器30发出下载应用请求时,其中,用户设备10可以是浏览器、下载客户端、P2P客户端等,网络服务器30可以是HTTP服务器、CDN服务器、P2P服务器、P2P客户端等,SDN交换机20可实现应用的缓存加速,执行加速用户应用访问速度的控制程序,加速用户应用访问速度的控制程序可以运行于SDN交换机20的控制卡处理器上,也可以运行在通过各个板卡之间的竞争选举出来的交换卡处理器上。该控制程序可深度解析用户设备10发送的请求报文和网络服务器30的响应数据,利用SDN交换机20中业务卡上的网络处理器4K线程资源,使其工作在特有的ZOL(Zero OverheadLinux)模式下,并发处理数据报文的解析与转发任务。

具体实施例中,SDN交换机20的应用管理方法依赖于接入卡与交换卡来实现数据流量的接收与发送,单一节点可以处理400Gbps带宽的网络流量。交换卡根据配置可将接收到的流量平均分配到业务卡的网络处理器上,使其发挥出最大的处理能力。进一步地,充分利用业务卡上的网络处理器,来深度解析用户设备10发送的请求报文,得到每个用户设备101发出报文的会话信息,并可进一步分析请求信息中所承载的应用信息,最大可以支持40M的用户并发请求。进一步地,应用信息可按照hash方式来存储在系统的高速内存中,该程序对上述解析出来的应用信息进行hash运算,依据计算结果来查询所请求的信息是否已存在于缓存数据库中。

在本发明的一个实施例中,优选地,当存在对应的所述应用信息时,根据应用信息在应用缓存数据库中的存储位置,启动请求报文的重定向操作的步骤,具体包括:根据所述应用信息在应用缓存数据库中的存储位置,发送重定向请求至用户设备10;接收重定向请求的响应报文,根据响应报文中的应用信息,将应用缓存数据库中保存的对应的应用信息发送至用户设备10。

在该实施例中,用户设备10和网络服务器30之间采用HTTP协议的302重定向机制实现数据流的转接控制。通过解析用户设备10浏览器发出的http请求,根据查询命中结果发送302重定向URL到用户设备101浏览器;用户设备10浏览器按重定向URL向SDN交换机20控制程序重新发起HTTP请求;控制程序接收HTTP请求,直接响应请求,并将应用缓存数据转发给该请求的用户设备10。

在本发明的一个实施例中,优选地,当应用缓存数据库存在对应的应用信息时,还包括:判断应用信息是否为可用;当应用信息可用时,根据应用信息在应用缓存数据库中的存储位置,启动请求报文的重定向操作;当应用信息不可用时,则执行网络服务器30的响应请求流程,并缓存应用信息。

在本发明的一个实施例中,优选地,当应用缓存数据库存在对应的应用信息时,还包括:判断应用信息的置信度是否大于预设阈值;当置信度大于等于预设阈值时,根据应用信息在应用缓存数据库中的存储位置,启动请求报文的重定向操作;当置信度小于所述预设阈值时,则执行网络服务器30的响应请求流程,并缓存应用信息。

在本发明的一个实施例中,优选地,当不存在对应的应用信息时,则执行网络服务器30的响应请求流程,并缓存应用信息的步骤,具体包括:获取应用信息对应的资源占用信息;判断资源占用信息的资源占用值是否达到热点阈值;当资源占用值达到热点阈值时,启动请求报文的响应操作,并下载应用信息对应的应用至应用缓存数据库;当资源占用值未达到热点阈值时,启动网络服务器30响应请求报文。

在该实施例中,通过判断网络服务器30上该请求资源是否已达到热点资源的阀值,如果达到阀值时,程序将该资源下载到系统缓存中,该缓存可以是业务卡上网络处理器的高速内存,也可以是由其他控制卡和交换卡中没有被系统利用的内存。若没有达到预设的阈值,程序则不去执行缓存步骤和重定向步骤,由网络服务器30直接响应用户设备10发出的应用请求。

图4示出了本发明一个实施例提供了一种应用缓存加速的方法,能够提高用户设备10加载网页的速度,该实施例的流程如图4所示:

步骤202,接收用户设备10发送的请求报文,请求报文中包括地址信息;

步骤204,对地址信息进行归一化处理,获取处理后地址信息;

步骤206,根据处理后地址信息,在缓存数据库中查找处理后地址信息相对应的缓存网页;

步骤208,根据处理后地址信息查找到的缓存网页参数判断该缓存网页是否为可用缓存网页;

步骤210,当该缓存网页为可用缓存网页时,将目标缓存网页返回给所述用户设备10;

步骤212,当该缓存网页不是可用缓存网页时,根据处理后地址信息向网络服务器30获取对应的当前网页,并将当前网页发送给用户设备10。

在该实施例中,通过接收到携带地址信息的访问请求后,对该地址信息进行归一化处理,以去除与用户相关的信息,从而增加获取到目标缓存网页的概率,然后使用归一化后的地址信息从数据库中获取目标缓存网页,并在根据缓存网页参数确定所述目标缓存网页为可用缓存网页时,将所述目标缓存网页返回给所述用户设备10,使得用户设备10快速加载目标缓存网页。

进一步地,该地址信息是指从一个网页指向一个目标的连接关系,所指向的目标可以是另一个网页,也可以是相同网页上的不同位置,还可以是图片、电子邮件地址、文件、甚至是应用程序。该地址信息可以是统一资源定位符(英文全称:Uniform ResourceLocator,英文简称:URL)、链接等唯一标识网页、能够跳转至对应的网页的信息,具体本文不作限定。URL是与因特网相连的机器上的任何可访问对象的一个指针,URL包含模式(或称协议)、服务器名称(或IP地址)、路径和文件名。

具体实施例中,用户设备10UE1和UE2都安装了QQ浏览器,UE1使用QQ浏览器向SDN交换机20发送访问腾讯新闻网的访问请求,SDN交换机20则根据访问请求中的URL1从腾讯新闻网抓取与该URL1对应的网页1,并缓存至共享存储,随后,UE2使用QQ浏览器向SDN交换机20发送访问腾讯新闻网的访问请求,代理服务器先对访问请求中的URL2进行归一化处理,即去除URL2中与UE2的用户相关的信息(例如设备类型、订阅标识、用户身份标识等),由于URL1和URL2的区别主要在于携带的与用户相关的信息不同,而实际所请求的都是腾讯新闻网的网络地址,如果不进行归一化处理,直接使用URL2在共享存储中查找缓存的网页的话,可能无法匹配到该网页,而使用归一化后的URL2在共享存储中查找,则可以提高匹配到网页的概率,提高了查找网页的速率。

进一步地,缓存网页参数可以包括缓存网页的原始响应、缓存网页的置信度、缓存网页的更新时间及缓存网页的有效时长等中的至少一项。

具体实施例中,缓存网页参数为缓存网页的置信度,SDN交换机20可以根据目标缓存网页的置信度确定目标缓存网页为可用缓存网页,具体为:判断目标缓存网页的置信度是否大于预设阈值,若大于预设阈值,则确定目标缓存网页为可用缓存网页,将目标缓存网页发送给用户设备10。

反之,若无法通过上述地址信息从数据库中获取到对应的目标缓存网页,则SDN交换机20使用用户设备10发送的地址信息从地址信息链接到的网站抓取对应的网页;或者,虽然SDN交换机202通过上述地址信息从数据库中获取到对应的目标缓存网页,但数据路中缓存的目标缓存网页的置信度小于预设阈值,表明当前该地址信息对应的最新网页与数据库中缓存的目标缓存网页相差较大,则SDN交换机20需要使用用户设备10发送的地址信息从地址信息链接到的网站抓取对应的网页,然后发送给用户设备10。

在本发明的一个实施例中,优选地,还包括:向网络服务器30发送与应用信息对应的异步更新请求;获取并缓存更新后的应用信息。

具体实施例中,SDN交换机20周期性的、或不定时的向网络服务器30请求异步更新或近似缓存,具体包括:

SDN交换机20在将目标缓存资源返回给用户设备10之后,SDN交换机20向目标缓存网页所属的网站发送携带未归一化的地址信息的异步更新请求;异步更新请求用于向网站请求获取未归一化的地址信息对应的当前网页,以及用于更新目标缓存网页的访问量和更新网站的访问量,即通过异步更新可以避免目标缓存网页的真实访问量减少,使网站端与SDN交换机20端的数据同步,从而保证网站的真实访问量的可靠性;SDN交换机20根据获取的当前网页异步更新数据库中缓存的目标缓存网页。具体的,SDN交换机20根据获取的当前网页异步更新数据库中缓存的所述目标缓存网页时,SDN交换机20通过对比当前网页与数据库中缓存的目标缓存网页,以计算目标缓存网页对当前网页的置信度,置信度用于判断所述当前网页是否为可缓存;在确定所述当前网页为可缓存后,则根据当前网页对数据库中缓存的目标缓存网页进行近似缓存,以使数据库中缓存的目标缓存网页异步更新。

具体实施例中,在异步请求更新流程中,SDN交换机20可根据从网站获取的最新网页(即所述当前网页)的包头所包含的字段信息来重新计算目标缓存网页的置信度,具体的计算过程主要包括以下几种情况:

一、若当前网页的包头中包含指示不对当前网页进行缓存的第一类标识,则SDN交换机20将置信度置0,其中,第一类标识至少包括以下之一:缓存控制cachecontrol字段设置为不缓存、网页参数pragma字段设置为不缓存、或cookies等,该cachecontrol字段也还可以包括其他能够标识不缓存的字段,或者第一类标识采用其它类似的字段去标识不缓存,具体本文不作限定。例如,在使用cache-control字段标识不缓存时,cache-control字段的取值至少包括以下之一:私有缓存(private)字段、不缓存(no-cache)字段、不存储(no-store)字段、强制重新生效(must-revalidate)字段、代理重新生效(proxy-revalidate)字段、缓存时长字段(max-age=0),即只要cache-control字段的取值包括这几个中的至少一个时,则表明不可以对网页缓存,那么需要将当前的置信度置0,在后续的访问请求中重新计算置信度。

二、若当前网页的包头中包含指示对当前网页进行缓存的第二类标识,则SDN交换机20增加所述置信度。

SDN交换机20可以对包含第二类标识的目标缓存网页的置信度增加A1,A1为正整数,A1的取值可以根据网站的类别、网站设计、或用户需求等来设定,具体本文不作限定。例如,在使用所述cache-control字段标识可缓存时,所述第二类标识至少包括以下之一:cache-control字段的取值设置为缓存时长大于0、缓存期满(expire)字段置为未到期、或目标缓存网页的消息摘要值与当前网页的md5相同。即只要cache-control字段的取值包括这几个中的n个时,则表明可以对网页缓存,那么对当前的置信度增加n*A1。例如,cache-control字段的取值只包括expire字段设置为未到期时,置信度增加20;cache-control字段的取值包括expire字段设置为未到期、以及目标缓存网页的md5与当前网页的md5相同时,置信度增加40,其他同理,不作赘述。可以理解的是,针对cache-control字段的不同取值,置信度的取值可以预先定义,具体的取值不作限定。

三、若目标缓存网页与当前网页的差异内容的长度小于预设的字节数,则SDN交换机20增加置信度。

SDN交换机20在一段时间内,可能会接收到多个用户设备10的访问请求,也可能接收到同一个用户设备10的多次访问请求,则SDN交换机20对接收到的多个用户设备10的访问请求进行校验,和/或对接收到的同一个用户设备10的多次访问请求进行校验,可见,可以通过对访问请求进行校验来执行置信度的计算,用户设备10发送的地址信息中包括目标域名信息,故通过校验访问请求计算置信度的具体过程为:

针对每一次访问请求,SDN交换机20都可以根据域名信息与字节数的对应关系,确定与目标域名信息对应的目标字节数。当目标缓存网页与当前网页的差异数据的长度小于目标字节数时,则SDN交换机20对目标缓存网页的置信度增加A2,A2为正整数。

可以理解的是,由于每个网站都定义自身特定的域名,根据网站的域名信息便可以唯一识别所请求的网站,SDN交换机20可以预先为每个网站定义:所请求访问的网页的最新网页的内容长度相较于数据库中缓存的目标缓存网页,其内容长度的变化在一定范围内时,可以对置信度增加A2。可选的,对于不同的域名信息对应的网站,可以设置对置信度增加不同或相同的数值,具体本文不作限定,网站的置信度的取值也不作限定。例如,针对腾讯新闻网,可以设置3字节数,即在当前请求访问的所述当前网页与目标缓存网页相比,内容变化的长度为3个字节时,置信度增加5,又例如,对于新浪网,可以设置20个字节,具体的置信度可以增加5或者其他数值。

针对上述三种情况,SDN交换机20可以针对每一次访问请求进行置信度的计算,以刷新目标缓存网页的置信度,由于目标缓存网页的置信度不断变化,故SDN交换机20对于在目标缓存网页的置信度小于预设阈值之前接收到用户设备10的访问请求,都需要从网站获取地址信息对应的当前网页,然后返回给发送访问请求的用户设备10。当在目标缓存网页的置信度达到预设阈值后,则标记目标缓存网页为可用,并且,SDN交换机20对于在目标缓存网页的置信度达到预设阈值后所接收到用户设备10的访问请求,可以直接将数据库中缓存的目标缓存网页返回给发送访问请求的用户设备10,不需要再从网站去抓取与所述地址信息对应的网页了。

图5示出了本发明再一个实施例提供了一种在线视频访问的缓存加速方法,能够提高用户设备10加载视频的速度,加速方法的流程图如图5所示:

步骤302,接收用户设备10发送的第一请求信息,第一请求信息指示用户设备10所需的视频数据及视频数据的请求点;

步骤304,根据第一请求信息,在缓存数据库中查找是否存在对应的视频数据;

步骤306,当存在对应的视频数据时,根据请求点确定视频数据的起始观看位置;

步骤308,当不存在存在对应的视频数据时,向网络服务器30请求下载该未缓存的视频数据,并发送至用户设备10;

步骤310,当不存在对应的视频数据时,多个用户设备10发送同一第一请求信息时,判断多个用户设备10对应的请求点是否达到预设热点阈值;

步骤312,根据预设热点阀值从多个用户设备10的第一请求信息指示的该相同数据的请求点中选择一个请求点发送。

具体实施例中,请求点包括以下至少一种,用户设备10请求观看视频的起始时间点、用户设备10请求观看视频时间点相对于整个视频文件初始点的时间点,或者是请求观看视频字节在整个视频文件中的具体字节位置。

若SDN交换机20接收了用户设备10中设备A,B,C,D,E分别发送的第一请求信息,每个第一请求信息中分别指示设备A,B,C,D,E所请求的视频数据及该视频数据的请求点。即设备A发送的第一请求信息指示设备A所请求的视频数据及该视频数据的请求点,设备B发送的第一请求信息指示设备B所请求的视频数据及该视频数据的请求点,设备C发送的第一请求信息指示设备C所请求的视频数据及该视频数据的请求点,设备D发送的第一请求信息指示设备D所请求的视频数据及该视频数据的请求点,设备E发送的第一请求信息指示设备E所请求的视频数据及该视频数据的请求点。其中,请求点表示用户设备10需要观看该视频数据的起始位置如果设备A、B、C请求的视频数据相同,比如均为电影M,并且设备A,B,C请求的该视频数据是不同请求点。设备D、E请求的视频数据为X以外的其他视频数据,设备D、E请求的视频数据及对应的请求点可以相同或者不同。

进一步的,如果设备A,B,C不是从整个视频文件M的起始点请求观看,即不是从头开始观看视频文件,那么设备A,B,C发送的请求信息中存在指示设备A,B,C请求的该视频数据的不同请求点的字段。其中,请求点可以为用户设备10请求观看视频时间点相对于整个视频文件初始点的时间点,或者是请求观看视频字节在整个视频文件中的具体字节位置等。如,HTTP(Hypertext Transport Protocol,超文本传送协议)请求消息中,起始行的参数部分会用start=x(or begin=x)来指明本条请求的请求点,其中,x为请求点,可以表示时间,如x=32,表示起始观看时间是第32秒;也可以表示具体字节数,如1204,表示起始观看位置是第1204字节处等

若确定发送第一请求信息多个用户设备10中的至少两个用户设备10发送的第一请求信息指示的数据相同且该数据未缓存在SDN交换机20上,则在落入每个预设窗口内的请求点中选择一个请求点。

若SDN交换机20收到的多个用户设备10的第一请求信息指示的是已缓存在所述SDN交换机20缓存单元上的数据,则可以从用户设备10请求的请求点开始向每个用户设备10送该用户设备10请求的数据。若某个或某些用户设备10请求的是未缓存在所述SDN交换机20缓存单元上的数据,则SDN交换机20向网络服务器30请求该未缓存的数据,接收数据后再向相应的用户设备10发送。

若SDN交换机20收到多个用户设备10中的至少两个用户设备10对同一未缓存的数据进行请求,若对接收到的这段视频数据的各个请求点都单独进行请求和转发,则需要占用较大的上游网络流量,所以可以利用预设热点阀值对至少两个用户设备10所需的相同或不同的请求点进行选择,如根据预设热点阀值从至少两个用户设备10的第一请求信息指示的该相同数据的请求点中选择一个请求点发送,从而减少重复发送,降低对上游网络带宽的消耗。

进一步地,预设热点阀值大小可以根据时间设定,如预设热点阀值为6秒,此时SDN交换机20同时收到用户设备10中设备A,B,C对SDN交换机20缓存中未缓存的同一个文件M进行请求的第一请求信息,设备A,B,C请求的文件M记作“file-abc”。以HTTP请求消息为例,假设设备A,B,C的请求最大时间间隔在6秒之内,则说明达到了预设热点阀值,SDN交换机20将会向网络服务器30发送该资源的下载请求。

SDN交换机20向源服务器发送第二请求信息,第二请求信息指示所述未缓存的数据及所述选择的请求点。

SDN交换机20向网络服务器30发送指示所述选择的请求点的第二请求信息,如SDN交换机20在收到设备A,B,C对SDN交换机20未缓存的同一个文件记作“file-abc”的请求后,选择了设备A和设备B的请求点,SDN交换机20向网络服务器30发送该文件的第二请求信息。因此,SDN交换机20就可以将网络服务器30发送的数据,如视频数据、音频数据等根据用户设备10请求的请求点所对应的位置,分别向同一预设热点阀值内的用户设备10发送,这样上游网络带宽消耗降低的同时,满足了用户观看需求。

SDN交换机20能够做到用户设备10和网络服务器30端都无感知的完成视频缓存加速,即无需修改用户设备10端配置和网络服务器30端的配置,也不用在用户设备10安装插件或者改变用户浏览网站的访问习惯,就能完成系统的加速功能。重定向采用了HTTP协议中定义的标准协议族。HTTP协议中的状态码是用以表示网页服务器HTTP响应状态的3位数字。

SDN交换机20通过利用标准中定义的302状态码将用户设备10的请求临时引流到SDN交换机20缓存加速系统,从而将系统内缓存单元的数据加速分发给用户设备10,避免用户设备10端通过网络出口向源网站低速获取并挤占出口带宽。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号