首页> 中国专利> 通过VPN IPSEC隧道确保服务质量

通过VPN IPSEC隧道确保服务质量

摘要

本发明披露了通过VPN IPSEC隧道确保服务质量的方法和网络装置。可以通过基于每个优先级向横穿VPN隧道的数据包分配序列号来执行通过VPN隧道的数据包序列号检查。在一种实现方式中,网络装置可以接收要通过VPN隧道循环送到数据包,该数据包包括控制信息,控制信息至少包括该数据包的QoS优先级。该网络装置可以从控制信息中提取该数据包的优先级并生成序列值,该序列值描述了该数据包相对于接收到的与该数据包同一优先级的其他数据包的到达顺序。该网络装置可以额外生成该数据包的IPsec报头,IPsec报头包括数据包的优先级和序列值;将IPsec报头附加于该数据包;以及将该数据包传送通过VPN隧道。

著录项

  • 公开/公告号CN102035814A

    专利类型发明专利

  • 公开/公告日2011-04-27

    原文格式PDF

  • 申请/专利权人 丛林网络公司;

    申请/专利号CN200910204799.5

  • 发明设计人 段亦非;朱玉峰;

    申请日2009-09-30

  • 分类号H04L29/06(20060101);H04L12/46(20060101);

  • 代理机构11240 北京康信知识产权代理有限责任公司;

  • 代理人余刚;吴孟秋

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 02:09:16

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2014-08-27

    授权

    授权

  • 2014-04-09

    著录事项变更 IPC(主分类):H04L29/06 变更前: 变更后: 申请日:20090930

    著录事项变更

  • 2011-06-15

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20090930

    实质审查的生效

  • 2011-04-27

    公开

    公开

说明书

背景技术

虚拟专用网络(VPN)是通过一些较大网络(诸如互联网)中的虚拟电路或开放连接来携带(carry)节点之间的一些链接的计算机网络,这与在单个专用网络上运行相反。该虚拟网络可以被说成是“隧穿”通过传输(开放)网络。VPN的一种普通应用是使通过公共网络的通信安全。

一种可用于实现VPN会话的协议是互联网协议安全(IPsec)协议族。IPsec可被用于对数据流的互联网协议(IP)数据包进行鉴权和加密。在IPsec VPN隧道中,序列号可与进入该安全隧道的每个数据包相关联。在隧道的末端,序列号可被检查以确保这些数据包在这些被发送的同一序列中被接收到。序列号对于抵制攻击(诸如回放攻击)来说可以是重要的。回放攻击是一种已知网络攻击技术,其中,有效数据传送被恶意或欺骗性地重复或延迟。

在特定情况下,服务质量(QoS)装置(诸如路由器)可以作为传送VPN隧道所通过的网络的一部分被采用。QoS装置可以改变VPN隧道中的数据包序列,这会在VPN隧道末端处导致问题,由于实际上回放攻击不发生时,接收VPN装置也会检测到回放攻击。可以期望利用这种QoS装置来实现VPN隧道。

发明内容

一种实现方式针对于这样的网络装置,该网络装置可以包括输入端口,该输入端口接收要通过VPN隧道传送的数据包,该数据包包括控制信息,控制信息至少包括该数据包的优先级(priorityclass)。该网络装置可以额外包括:序列号部件,序列号部件用来生成序列值,序列值描述了该数据包相对于接收到的与该数据包同一优先级的其他数据包的到达顺序;报头(header,头)生成部件,报头生成部件用来基于控制信息生成该数据包的新控制信息,新控制信息包括该数据包的优先级指示和序列值;以及输出端口,输出端口用来将包括该新控制信息的数据包传送通过VPN隧道。

在另一实现方式中,一种方法可以包括:通过网络装置接收要通过VPN隧道传送的数据包,该数据包包括控制信息,控制信息至少包括该数据包的优先级;通过网络装置从控制信息中提取该数据包的优先级;通过网络装置生成序列值,序列值描述了该数据包相对于接收到的与该数据包同一优先级的其他数据包的到达顺序;通过网络装置生成该数据包的互联网协议安全(IPsec)报头,该IPsec报头包括该数据包的优先级和序列值;通过网络装置将IPsec报头附加至该数据包;以及通过网络装置将该数据包传送通过VPN隧道。

另一种可行的实现方案可以针对于这样的网络装置,该网络装置可以包括输入端口,输入端口用来接收来自VPN隧道的数据包,该数据包包括控制信息和净荷,控制信息至少包括该数据包的QoS优先级和第一序列值,第一序列值描述了该数据包相对于接收到的与该数据包同一优先级的其他数据包的排列顺序(orderingsequence),净荷数据包括第二数据包的加密版本。该网络装置还可以包括期望的序列号查找部件,该部件用来基于该数据包的优先级生成第二序列值;以及序列号比较部件,该部件用来对第一序列值和第二序列值进行比较并当第一序列值不匹配第二序列值时输出错误信号。

另一种可行的实现方案可以针对于这样的网络,该方法可以包括:通过网络装置接收通过VPN隧道传送的数据包,该数据包包括控制信息,控制信息至少包括该数据包的QoS优先级和序列值,序列值描述了该数据包相对于接收到的与该数据包同一优先级的其他数据包的到达顺序;通过网络装置从控制信息中提取该数据包的优先级;通过网络装置从控制信息中提取该数据包的序列值;通过网络装置基于该数据包的优先级确定该数据包的期望序列值;通过网络装置对该序列值与期望的序列值进行比较;以及当该序列值不匹配期望的序列值时,通过网络装置生成错误信号。

附图说明

结合于此并构成该说明书的一部分的附图示出了这里描述的一个或多个实施例,并连同该描述一起来阐述这些实施例。在附图中:

图1是可以实现本文描述的构思的示例性系统的示图;

图2是示例性网络装置的框图,该网络装置诸如图1中所示的网络装置之一;

图3是概念地示出IPsec VPN隧道中的数据包的序列号的使用的示图;

图4是示出发送(开始)VPN端点的示例性实现方式的概念框图;

图5是示出数据包中的示例性字段的示图;

图6是示出在通过VPN隧道发送数据包时可由VPN端点执行的示例性操作的流程图;

图7是示出接收VPN端点的示例性实现方式的概念框图;

图8是示出在通过VPN隧道接收数据包时可由VPN端点执行的示例性操作的流程图;以及

图9是概念地示出IPsec VPN隧道中的数据包的序列号的使用的示图。

具体实施方式

下面本发明的说明书参照了附图。不同附图中的相同参考标号可以标识相同或相似元件。此外,下面的说明书不限制本发明。

如本文中所述,可以基于每个优先级为穿过IPsec VPN隧道的数据包分配序列号。此外,VPN隧道开始处的数据包的优先级可以包括在数据包的IPsec头中。IPsec头中的优先级可以在VPN隧道的末端被提取并用于查找期望的序列号。

示例性系统概述

图1是实现了本文中所述的其构思的示例性系统100的示意图。系统100可以包括连接至一个或多个专用网络120-A和120-B(统称为专用网络120)和计算装置130的广域网(WAN)110。例如,每个专用网络120都包括合作或独立的多个局域网(LAN)。

WAN 110通常可以包括一种或多种类型的网络。例如,WAN110可以包括蜂窝网络、卫星网络、互联网、或用于传输数据的这些(或其他)网络的组合。尽管图1中被示为单个元件,但是WAN110可以包括起到为专用网络120和计算装置(诸如计算装置130)提供服务的多个分离的网络。WAN 110可以使用多个网络装置115来实现。网络装置115可以包括,例如,路由器、交换机、网关、或用于实现WAN 110的其他装置。网络装置115具体地可以是服务质量(QoS)装置,其中,QoS装置可以指具有为不同应用、用户或数据流提供不同的通信量处理优先级、或保证数据流的一定的性能水平的能力的网络装置。例如,可以通过QoS装置保证所需的比特率。路由器是QoS装置的一个实例。

每个专用网络120都可以包括多个计算装置,例如,客户计算站125和网络装置127。客户计算站125可以包括终端用户的计算装置,诸如桌上电脑或膝上电脑。类似于网络装置115的网络装置127可以包括用于实现专用网络120的网络装置,诸如,防火墙、交换机、路由器、这些装置的组合、或与网络实现、控制、和/或安全有关的其他装置。

在一个具体实施例中,不同专用网络120处的两个网络装置127可以是IPsec VPN端点。例如,从专用网络120-A至专用网络120-B的通信量可以由网络装置127在专用网络120-A中加密,经由公共网络110在VPN隧道140进行发送,以及在专用网络120-B中的网络装置127处被接收。专用网络120-B中的网络装置127可以接收加密的VPN通信量并将该通信量变换为可以被分发至客户计算站125的非加密形式。在一些实施例中,实现IPsec VPN端点的功能性可以集成在例如,防火墙、路由器、或网关网络装置127中。

计算装置130可以包括,例如,连接至WAN 110的膝上电脑或个人计算机。可选的,计算装置130可以包括诸如蜂窝电话的移动装置等。

在图1所示的示例性系统中,示出了两个专用网络120-A和120-B和一个计算装置130。在其他实施例中,系统100可以包括其他的、更少的、不同的、或不同安排的网络和/或装置。此外,在一些实施例中,被描述为有一个装置执行的任务可以有不同的一个或多个装置来执行。

示例性装置架构

图2是示例性网络装置220的框图,该网络装置可对应于127或网络装置115之一。为了增加吞吐量,网络装置200可以使用专用硬件进行处理或协助处理输入的数据单元,例如数据包。在一些可替换实施例中,可以使用数据单元而不是数据包。如图2所示,网络装置200通常可以包括软件部220和硬件部230。

软件部220可以包括设计用于控制网络装置200的软件。例如,软件部220可以包括硬件部230并可以提供接口用于用户配置网络装置200。通常,软件部220可以实现对时间要求不严格的网络装置功能。被描述为由软件部220执行的功能可以通过一个或多个通用处理器222和一个或多个计算机存储器224来实现。处理器222可以包括多个处理器、微处理器、或可以解析并执行指令的其他类型的处理逻辑电路。计算机存储器224(本文中也称作计算机可读介质)可以包括随机存取存储器(RAM)、只读存储器(ROM)、或可以存储信息和由一个或多个处理器222执行的指令的其他类型的动态或静态存储装置。

硬件部230可以包括用于对由网络装置200接收到的数据包进行有效处理的电路。硬件部230可以包括,例如,逻辑电路,诸如特定用途集成电路(ASIC)、现场可编程门阵列(FPGA)、和/或内容可寻址存储器(CAM)。硬件部230可以接收输入数据包、提取数据包的头信息、以及基于提取到的头信息对数据包进行处理。

当用作IPsec VPN隧道端点时,硬件部230可以包括加密/解密逻辑电路240。当作为VPN隧道起始进行工作时,加密/解密逻辑电路240通常可以用于接收数据包、对数据包进行加密、以及发送加密的数据包。在通过VPN隧道140发送加密数据包之前,加密/解密逻辑电路240可以将新的IP头和IPsec头附加至加密数据包。当作为VPN隧道末端工作时,加密/解密逻辑电路240通常用于接收加密数据包、从数据包去除之前附加地IP头和IPsec头、以及对数据包进行解密以获得原始版本的数据包。

网络装置200还可以包括用于接收输入数据包的一个或多个输入端口250,和用于发送输出数据包的一个或多个输出端口255。在一些实施例中,端口可以用作输入端口250或输出端口255中的一个或两个。

尽管将网络装置200示为了包括软件部220和硬件部230,但是在一些实施例中,网络装置200还可以完全通过硬件来实现。此外,网络装置200可以包括比所示的那些更多的、更少的、不同的、或不同安排的部件。

IPsec VPN序列号

IPsec VPN隧道(诸如隧道140)中的端点可以对传输通过该隧道的数据包附加序列号。图3是概念性示出了在IPsec VPN隧道中使用数据包的序列号的示意图。

图3示出了被标为A、B、C、D、E、和F的数据包流的六个示例性数据包。VPN隧道310可以在第一IPsec VPN端点320(其可以对应于网络120-A的网络装置127)和第二IPsec VPN端点330(其可以对应于网络120-B的网络装置127)形成。此外,假设诸如路由器340的QoS装置是VPN隧道310的一部分。换言之,路由器340可以在VPN隧道310中将数据包作为去往VPN端点330的数据包进行转发。路由器340可以基于分配给各数据包的优先级来区别地对各数据包进行处理。具体地,较高优先级的数据包可以在路由器340被给予路由优先。

数据包A-F可以被分配不同的优先级。在图3的实例中,假设给数据包分配了两个不同的优先级,优先级1(由封在方框中的数据包标签指示)和优先级2(由封在圆圈中的数据包标签指示)。还假设优先级2具有高于优先级1的优先权。

VPN端点320可以使序列号与每个数据包相关联。例如,VPN端点320可以将序列号存储到由VPN端点320附加至每个数据包的IPsec头中。由端点320附加的序列号被示为序列号350。数据包A被给予序列号1,数据包B被给予数据包2,等等,直至数据包F被给予序列号6.

在路由数据包时,QoS装置340可以基于数据包优先级对流中的数据包进行重新排序。如所示,优先级2中的数据包(数据包B、C、和F)可以在优先级1中的数据包(数据包A、D、和E)的前面被QoS装置340输出.

由于由QoS装置340对数据包进行重新排序,因此,输入至VPN端点340的序列号可以会次序颠倒。如图3所示,各序列号被重排(即,2,3,6,1,4,5)而不是顺序排序(即,1,2,3,4,5,6)。重排序的序列号可以使VPN端点330检测重放攻击或指示VPN隧道310中的错误。

每个优先级序列号

与本文中描述的各方面一致,VPN端点可以基于每个优先级分配和验证数据包的序列号。此外,数据包的优先级在其进入VPN端点时可以在数据包的IPsec头中通过VPN隧道进行发送。通过将优先级标识符存储到IPsec头中,优先级标识符在数据包穿过VPN隧道时不改变。相反,存储在数据包头字段中的“正常”优先权信息可以是,可以通过中间QoS装置改变的易变值。

图4是示出发送(开始)VPN端点400的示例性实施例的概念性框图。实际上,诸如网络装置127之一的单个网络装置可以包括发送和接收VPN端点两个功能。VPN端点400可以包括加密部件410,新头生成部件420,以及每级(per-class)序列号查找部件430。

输入数据包440可以被输入至加密部件410。数据包440可以包括净荷部442和报头(H)部444。净荷部442可以包括由数据包发送的数据。头部444可以包括在将数据包路由至其目的地中使用的控制信息。控制信息可以包括,例如,源和目的地址,错误检测码,以及优先级标识符。优先级具体地可以与数据包的QoS优先级有关。优先权信息可以被指定到例如,数据包头444的DSCP/TOS(差分(differentiated,有区别的)服务代码点(DSCP)/服务类型(TOS))字段中。

加密部件410可以接收输入数据包440并对其进行加密。在隧道型IPsec VPN会话中,整个数据包440(包括净荷442和报头444)可以被加密和/或鉴权。加密版本的数据包440可以从加密部件410中输出。

每级序列号查找部件430可以从数据包头接收优先级,并基于优先级生成数据包的序列号。序列号可以基于优先级。换言之,诸如由DSCP/TOS数据包字段指定的级别的每个优先级可以与序列号的不同序列相关联。在一个实施例中,每级序列号查找部件430可以实现一个查找表,该表中对应于优先级的标识符被用于检索用于优先级的下一序列号。连续的序列号可以实现为连续增加的整数值。此外,在每次查找之后,在每级序列号查找部件430中可以增加查找的优先级的序列号。

新头生成部件420可以生成用于数据包440的新的控制信息。当在IPsec“隧道”模式中时,新的控制信息可以包括新的IP头和IPsec头。这些新的头可以用在将数据包440路由通过VPN隧道140。新的IP头和IPsec头可以被附至加密版本的数据包440以获得数据包450。如图4所示,数据包450可以包括加密版本的数据包440(标记为加密数据包452)、新的IP头456、和IPsec头454。由新的报头生成部件420生成新的IP头456和IPsec头454,可以基于IP头440、IPsec协议、以及由VPN端点400使用的IP路由协议。

不是被形成为“隧道”模式的IPsec VPN隧道可以通过IPsec“传输”模式形成。在传输模式中,IPsec头可以添加在原始IP头和净荷之间。本文中描述的概念还可以应用于传输模式通信中。在该实施例中,新的控制信息可以仅包括新的IPsec头。原始IP头可以不被加密并可以用于路由数据包通过VPN隧道。

在其他字段中,由新的头生成部件420生成的IPsec头454可以包括由每级序列号查找部件430输出的序列号。此外,IPsec头456还可以包括数据包440的优先级的指示。优先级信息可以插入到例如传统的IPsec头序列号字段中。

图5是示出数据包450中示例性字段的示意图。图5所示的示例性字段可以是在使用IPsec协议的封装安全净荷(ESP)元件时存在的字段。ESP可以提供数据包的原始真实性、完整性、以及机密性保护。在可替换实施例中,还可以使用除了IPsec和ESP以外的协议。

如图5所示,数据包450具体示出了IPsec头454。在其中字段中,IPsec头454可以包括安全参数索引(SPI)510和序列号字段520。诸如后缀鉴权(trailing authentication)字段和填充(padding)字段的其他字段可以用在IPsec VPN数据包的实际实现中。SPI字段510可以用于识别用于数据包450加密部分的安全参数。

序列号字段520可以被用于存储数据包的序列号。利用传统的IPsec实现,序列号字段520可以是单个字段,诸如32比特字段,其用于存储单调递增的序列号。在一个实施例中,序列号字段520可以包括序列值子字段522和优先级子字段524。序列值子字段522可以存储单调递增的每级标识符值。优先级子字段524可以用于存储数据包450在到VPN端点400时的优先级的标识值。在一个实施例中,序列值子字段522可以是26比特值并且级标识符子字段524可以是6比特值。在可替换实施例中,存储在IPsec头454中的序列号和级标识符可以是独立的字段。

图6是示出在通过VPN隧道140发送数据包中由VPN端点400执行的示例性操作的流程图。

VPN端点400可以提取对应于数据包的优先级(框610)。如前所述,优先级可以包括在头444中的DSCP/TOS字段中。优先级可以用于查找序列号(框620)。具体地,对于每一优先级,每级序列号查找部件430都可以使用优先级来生成多个独立的序列号序列。

序列号可以被添加至IPsec头(框630)。此外,数据包440的优先级可以被添加至IPsec头(框640)。优先级可以被添加至被保证在通过VPN隧道140发送数据包440期间不可改变的字段的IPsec头中。换言之,优先级应该被添加至IPsec头,以使其在数据包穿过VPN隧道140时不改变。在一个实施例中,且如上所述,优先级可以被添加至传统的IPsec头中的序列字段的一部分。相反,通常被放置在数据包头中的优先级信息是可改变的。即,处理数据包的网络装置可以改变数据包的优先级。

VPN端点400最终可以发送数据包450(例如,以加密格式),包括确定的序列号和添加至IPsec头的优先级(框650)。

图7是示出了接收VPN端点700的示例性实施方式的概念框图。实践中,单网络装置,例如网络装置127中的一个,可以包括发送和接收VPN端点的功能。VPN端点700可包括解密部件710,期望的序列号查找部件720,以及序列号比较部件730。

引入的,加密的数据包450可被输入到加密部件710。如参考图4所述的,加密的数据包450可包括加密部452,明码文本(plaintext)(未加密的)Ipsec报头454和IP报头456。解密部件710可解密该加密部452,并输出原始数据包440,其在接收VPN端点400被接收到。

可从Ipsec报头454提取序列号和优先级。例如,可从序列号值子字段(sub-field)提取序列号,可从优先级子字段524提取优先级。

优先级可被输入到期望的序列号查找部件720。优先级可被用于查找数据包的期望的序列号。例如,期望的序列号查找部件720可记住为接收的每个可能的输入优先级的最后的序列号。期望的序列号可以是优先级的最后序列号的增量的(incremented)版本。可基于与数据包450相关的优先级从期望的序列号查找部件720输出期望的序列号。

从Ipsec报头454提取的序列号和从期望的序列号查找部件720输出的期望的序列号可以通过序列号比较部件730进行比较。如果两个序列号不“匹配”,序列号比较部件730可输出一错误信号,该错误信号指示可能的错误,例如回放错误。序列号是否匹配可以基于传统的反回放(anti-replay)攻击开窗机制(windowingmechanism),该机制基于数据包序列号,期望的序列号,以及窗口大小W。在反回放攻击开窗机制中,可以确定数据包序列号是否在这样的一个窗口中,该窗口从最后的数据包序列号(即期望的序列号)减去窗口大小W延伸到最后的数据包序列号。如果是这样的话,并且如果序列号先前已经被接收了,可输出错误指示(例如数据包可被丢弃)。如果不是这样,并且如果序列号先前没有被接收,可以接受数据包。然而,如果数据包序列号小于窗口的开始(即,期望的序列号减去W),可以输出错误指示。然而,如果数据包序列号大于期望的序列号并且数据包被鉴权了,则窗口可被提前(advance)(即,期望的序列号可被递增或设置为接收的序列号)。

图8是示出了在通过VPN隧道140接收数据包时,可由VPN端点700执行的示例性操作的流程图。

VPN端点700可提取数据包的优先级(块810)。如前所述,可从Ipsec报头提取优先级,例如存储在优先级标识符子字段524中的优先级(图5中块810)。也可以从Ipsec报头提取序列值,例如序列值(图5的块820)。

可以基于优先级通过期望的序列号查找部件720查找期望的序列号(块830)。优先级的期望的序列号可具有等于先前所接收的序列号的值。在一个实施方式中,可以为每个可能的优先级定义计数器或整数存储位置(storage location,存储单元),并用来存储期望的序列号。在每个序列号查找之后,计数器或存储位置可分别递增或更新。

可将期望的序列号与提取的序列号进行比较(块840)。可通过序列号比较部件730进行比较。该比较可确定序列号和期望的序列号是否彼此“匹配”(块850)。在一个实施方式中,如前所述,可以基于反回放攻击开窗机制确定匹配。

如果块850的结果是假(不匹配),则呈现序列错误(块860)。序列错误可指示可能的回放攻击。在该情况下,可采取纠正措施。例如,丢弃数据包。如果框850的结果是真(即,序列号匹配),没有检测到错误,可继续正常处理(块870)。可通过从序列号比较部件730输出的信号指示是否存在序列号错误。

图9是概念性示出了在IpsecVPN隧道中数据包的序列号的使用,如前参照图4-8所述。

图9A中示出了六个示例性的数据流的数据包,标记为A,B,C,D,E,F。可在第一Ipsec端点920和第二Ipsec端点930之间形成VPN隧道910,其可分别对应于端点400(图4)和700(图7)。此外,假定QoS装置,例如路由器940,是VPN隧道隧道910的一部分。

数据包A-F可被分配给不同的优先级。在图9的实例中,假定数据包被分配给两个不同的优先级,优先级一(圈在方框中的数据包标记所指示的)和优先级二(圈在圆圈内的数据包标记所指示的)。进一步假定优先级二比优先级一具有更高的优先级。

如前所述,基于每个优先权类,VPN端点920可将序列号与每个数据包相关联。由VPN端点920所附加的序列号示出为序列号950。数据包A、D和E是在对应于优先级一的序列中的连续的数据包,并且被分别赋予序列值一、二、和三。数据包B,C和F是在对应于优先级二中的序列中的连续的数据包,并且分别被赋予序列值一、二、和三。

QoS装置940,当路由数据包时,可基于数据包优先级对流中的数据包重新排序。如图所示,可通过QoS装置940,在优先级一(数据包A,D和E)中的数据包之前输出在优先级二中的数据包(数据包B,C和F)。

因为VPN端点930基于优先权类比较序列号,图9中所示的重新排序的数据包可能仍然处于顺序的次序(in sequence order)。特别如图9所示,可接收优先级二)中的数据包(B,C和F)。类似地,优先级一中的数据包(A,D和E)也以序列号的次序保持。

结论

如前所述,可通过基于每个优先级将序列号分配给横穿(traverse)VPN隧道的数据包来执行通过VPN隧道数据包的序列号检查。此外,在隧道的开始所接收的每个数据包的优先级可被嵌入在通过VPN隧道发送的数据包的Ipsec报头内。为了当其最初进入隧道时,确定每个数据包的优先级是什么,有必要将优先级嵌入到Ipsec报头中。

前面的实施方式的描述提供了示例和描述,但是并不是穷尽的,或将本发明限制在所精确描述的形式。根据上述教导,各种修改和变化是可能的,或者可以通过实施本发明而获得。

例如,虽然关于图6和图8描述了一序列动作,在与本发明一致的其他实施方式中动作的次序可以变化。此外,非依赖的动作可以并行执行。

也很明显,在图中所示出的实施方式中,此处描述的方面可以许多不同的软件形式、固件、以及硬件来实施。用于执行此处描述的方面的实际软件代码或专用控制硬件并不旨在限制本发明的范围。因此,没有参照特定的软件代码描述这些方面的操作和行为-应该理解,软件和控制硬件可被设计为基于此处的描述执行这些方面。

此外,此处描述的特定方面可被实施为“逻辑电路”或作为“部件”,其执行一个或多个功能。该逻辑电路或部件可包括硬件,例如专用集成电路或现场可编程门阵列,或硬件和软件的结合。

虽然在权利要求书以及/或说明书中记载了特征的特定结合,但是这些结合并不旨在限制本发明的公开。实际上,这些特征中的许多特征可以没有在权利要求书以及/或说明书中所特别描述的多种方式结合。虽然,此处列出的每个从属权利要求可只直接从属于一个权利要求,但是本发明的公开包括与权利要求书中的每个其他权利要求结合的每个从属权利要求。

本发明的描述中使用的元件、动作或指令不应当被解释为关键的或必要的,除非此处明确描述。此外,如此所使用的,“一”旨在包括一个或多个项。当旨在表示只有一个项时,术语“一个”或类似的语言被使用。此外,术语“基于”旨在表示“至少部分基于”,除非明确地另外陈述。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号