首页> 中国专利> 在基于多路径路由的网络中管理多个会话的方法及装置

在基于多路径路由的网络中管理多个会话的方法及装置

摘要

本发明公开了一种在基于多路径路由的网络中管理多个会话的方法。该方法包括:由建立所述多个会话的节点向所述多个会话的对等节点通告会话限制能力;确定所述多个会话的优先级;以及根据所配置的表明可接受的会话的数量的会话限制参数和所确定的所述多个会话的优先级,从所述多个会话中选择最佳会话。此外,本发明还公开了相应的装置。

著录项

  • 公开/公告号CN103888351A

    专利类型发明专利

  • 公开/公告日2014-06-25

    原文格式PDF

  • 申请/专利权人 国际商业机器公司;

    申请/专利号CN201210558619.5

  • 发明设计人 徐金荣;王志雄;

    申请日2012-12-20

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

  • 代理机构11247 北京市中咨律师事务所;

  • 代理人刘薇;于静

  • 地址 美国纽约

  • 入库时间 2023-12-17 00:15:55

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-12-15

    授权

    授权

  • 2015-10-28

    专利申请权的转移 IPC(主分类):H04L12/701 登记生效日:20150930 变更前: 变更后: 申请日:20121220

    专利申请权、专利权的转移

  • 2014-07-16

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

    实质审查的生效

  • 2014-06-25

    公开

    公开

说明书

技术领域

本发明涉及多路径路由(Multi-Path Routing)技术,更具体地,涉及在基于多路径路由的网络中管理多个会话的方法及装置。

背景技术

多路径路由技术,特别是等价多路径(Equal Cost Multi-Path,简称ECMP)或者加权多路径(Weighted Cost Multi-Path,简称WCMP)路由技术,可被广泛地应用于基于动态路由协议的IP网络中。动态路由协议可分为内部网关协议(Interior Gateway Protocol,简称IGP)和外部网关协议(Exterior GatewayProtocol,简称EGP),其中内部网关协议例如包括开放式最短路径优先(OpenShortest Path First,简称OSPF)路由协议、中间系统到中间系统(IntermediateSystem to Intermediate System,简称IS-IS)路由协议等,外部网关协议例如包括边界网关协议(Border Gateway Protocol,简称BGP)等。

在基于多路径路由的IP网络中,存在可到达同一个目的地址的多个不同链路。IP数据包可利用其中一个链路经由至少一个中间节点被路由到目的节点,其中两个节点之间的连接以及信息交换可称为会话。当IP网络采用ECMP或者WCMP路由技术时,可以同时使用多个链路传输数据包,从而能够增加传输带宽,并且可以无时延无丢包地备份失效链路的数据传输。

图2示出了一般的基于ECMP或WCMP路由的IP网络的示意图。如图2所示,数据业务可从节点1经由多个中间节点到达目的网络。节点1可建立到多个中间节点的多个ECMP或WCMP会话,并且这些会话分别建立在单个链路上。然而,由于IP网络的拓扑问题或者路由器的硬件或软件问题等,会造成某些协议接口或物理端口发生故障、然后再恢复的情况(链路的振荡),而这将导致会话的振荡。在基于ECMP或WCMP路由的IP网络中,IP数据业务可同时使用多个ECMP或WCMP会话。即使ECMP或WCMP会话发生了振荡,IP数据业务也仍会使用这些振荡的ECMP或WCMP会话。因此,当ECMP或WCMP会话发生振荡时,可能会导致IP数据包的丢失。

为了降低IP数据包的丢失,可以在例如图2所示的IP网络中的节点之间使用包括多个链路的链路聚合(trunk)。在这种情况下,只要有一个链路可用,ECMP或WCMP会话就能够维持。然而,在某些情况下,数据包丢失的情形仍然存在。如果链路聚合发生故障或被阻塞,则会发生数据包的丢失。此外,如果IP数据业务通过哈希算法被映射到链路聚合中不稳定的链路上,则当链路发生振荡时,ECMP或WCMP会话也将发生振荡,从而导致数据包丢失。

发明内容

根据本发明的一个方面,提供了一种在基于多路径路由的网络中管理多个会话的方法,包括:由建立所述多个会话的节点向所述多个会话的对等节点通告会话限制能力;确定所述多个会话的优先级;以及根据所配置的表明可接受的会话的数量的会话限制参数和所确定的所述多个会话的优先级,从所述多个会话中选择最佳会话。

根据本发明的另一个方面,提供了一种在基于多路径路由的网络中管理多个会话的装置,包括:通告模块,其被配置为向所述多个会话的对等节点通告会话限制能力;优先级确定模块,其被配置为确定所述多个会话的优先级;以及选择模块,其被配置为根据所配置的表明可接受的会话的数量的会话限制参数和所确定的所述多个会话的优先级,从所述多个会话中选择最佳会话。

附图说明

通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。

图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图;

图2是一般的基于ECMP或WCMP路由的IP网络的示意图;

图3是根据本发明的一个实施例的在基于多路径路由的网络中管理多个会话的方法的流程图;

图4是图3所示的实施例中通告会话限制能力的步骤的示意性流程图;

图5是示例性地说明会话限制能力消息的格式的示意图;

图6是图3所示的实施例中确定会话的优先级的步骤的示意性流程图;

图7是说明会话队列的一个实例的示意图;

图8是图3所示的实施例中选择最佳会话的步骤的一个实施例的示意性流程图;

图9是图3所示的实施例中选择最佳会话的步骤的另一个实施例的示意性流程图;

图10是根据本发明的一个实施例的在基于多路径路由的网络中管理多个会话的装置的示意性框图。

具体实施方式

下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。

所属技术领域的技术人员知道,本发明可以实现为系统、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:可以是完全的硬件、也可以是完全的软件(包括固件、驻留软件、微代码等),还可以是硬件和软件结合的形式,本文一般称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。

可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言-诸如”C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

下面将参照本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,这些计算机程序指令通过计算机或其它可编程数据处理装置执行,产生了实现流程图和/或框图中的方框中规定的功能/操作的装置。

也可以把这些计算机程序指令存储在能使得计算机或其它可编程数据处理装置以特定方式工作的计算机可读介质中,这样,存储在计算机可读介质中的指令就产生出一个包括实现流程图和/或框图中的方框中规定的功能/操作的指令装置(instruction means)的制造品(manufacture)。

也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。

图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。

总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。

计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。

计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

图3是根据本发明的一个实施例的在基于多路径路由的网络中管理多个会话的方法的流程图。下面结合附图,对本实施例进行详细描述。

本实施例的方法主要涉及与多个对等节点建立多个会话的节点对这些会话的管理。多个会话可以是基于ECMP或WCMP的会话或者任何可以同时路由数据业务到同一个目的地址的会话。

如图3所示,在步骤S310,由建立多个会话的节点向多个会话的对等节点通告会话限制能力。会话限制能力用于表明节点能够限制会话的能力。

下面结合图4具体说明步骤S310。如图4所示,在步骤S410,节点向多个对等节点分别发送会话限制能力消息。在本实施例中,会话限制能力消息可至少包括指示节点的会话限制能力的指示符。可选地,会话限制能力消息还可包括表明可接受的会话的数量的会话限制参数、当前会话数量等参数。会话限制参数可由使用者或管理者配置,而当前会话数量是当前所建立的多个会话的个数之和。

在一个实施例中,首先,节点接受使用者或管理者对会话限制参数的配置。然后,节点可生成会话限制能力消息。图5示例性地示出了会话限制能力消息的格式的示意图。如图5所示,会话限制能力消息可包括“代码(code)”、“长度(length)”、“子代码1(sub-code1)”、“子代码2(sub-code2)”、“会话限制(session limit)”、“当前会话(current session)”、“长度1(length 1)”、“长度2(length 2)”和“保留(reserved)”字段。“代码(code)”字段可用作唯一地指示会话限制能力的指示符,其长度可以是8比特。“长度(length)”字段可用于指示会话限制能力消息的长度,其长度可以是8比特。“子代码1(sub-code 1)”字段可用于标识会话限制能力的特征,例如会话限制参数。“子代码2(sub-code2)”字段可用于标识当前会话的特征,例如当前会话数量。“子代码1(sub-code1)”字段和“子代码2(sub-code2)”字段的长度可以分别是8比特。“会话限制(session limit)”字段可用于指示可接受的会话的数量的阈值,其长度可以是16比特。“当前会话(current session)”字段可用于指明所建立的会话的当前实际数量,其长度可以是16比特。“长度1(length 1)”字段和“长度2(length 2)”字段分别表示“会话限制(session limit)”字段和“当前会话(current session)”字段的长度,这两个字段的长度都可以是8比特。“保留(reserved)”字段可以是16比特长度的字段,其在会话限制能力参数被发送时设置为0,并在接收时被忽略。

虽然图5示出了会话限制能力消息的一个例子,但本领域的普通技术人员能够容易知道,会话限制能力消息还可以包括其它参数或者使用其它格式。

在生成会话限制能力消息之后,节点可向多个对等节点分别发送会话限制能力消息。会话限制能力消息可以在会话初始化期间发送,也可以在会话建立之后发送。在会话初始化期间,会话限制能力消息可以使用初始能力消息发送。例如,在基于BGP协议的网络中,会话限制能力消息可以作为BGP协议的OPEN消息的一部分被发送到对等节点。在会话已经建立之后,当需要进行会话管理或者会话限制能力消息中的参数值发生变化时,可以使用动态能力消息发送会话限制能力消息。例如,在基于BGP协议的网络中,会话限制能力消息可以作为BGP协议的UPDATE消息的一部分发送到对等节点。

然后,在步骤S420,节点从对等节点接收对所发送的会话限制能力消息的响应。如果来自对等节点的响应是肯定的,即,对等节点接受会话限制能力消息,这表明对等节点支持会话限制,则在步骤S430,记录相应的对等节点及对应的会话。然后,对于所记录的会话进行会话管理。如果来自对等节点的响应是否定的,即,对等节点不接受会话限制能力消息,这表明对等节点不支持会话限制,则在步骤S440,对于与相应对等节点之间的会话不进行会话管理,而是进行一般的会话处理。

为了方便说明,在以下的描述中,假定节点所建立的多个会话的对等节点都支持会话限制。

返回到图3,在向对等节点通告了会话限制能力后,在步骤S320,节点确定多个会话的优先级。在本实施例中,使用会话的优先级以反映会话的稳定性。优先级越高,会话越稳定,反之,优先级越低,会话越不稳定。

图6示出了步骤S320的示意性流程图。如图6所示,在步骤S610,指定多个会话的每一个的优先级。在本实施例中,可以最初将每一个会话的优先级指定为最高优先级。然后,在步骤S620,监控会话的状态,并在步骤S630,根据所监控的会话的状态的变化,修改会话的优先级。在一个实施例中,可以监控会话是否发生振荡。如前所述,当会话发生振荡时,会话的稳定性相应地下降。因此,当监控到会话发生振荡时,降低发生振荡的会话的优先级。每当监控到会话发生振荡时,就将该会话的优先级降低一级。如果会话未发生振荡,则继续维持该会话的优先级,并在会话未发生振荡的时间超过预定时间时,提高该会话的优先级。通过不断地监控会话的状态并相应地修改优先级,可以实时地反映会话的稳定性。

在另一个实施例中,在确定了多个会话的优先级之后,还可以使用会话队列以对会话进行排序。具体地,首先建立多个会话队列,其中每一个会话队列具有与会话的优先级对应的优先级。例如,会话的优先级有N级,则相应地,会话队列的优先级也有N级。接着,在多个会话队列中分别加入具有对应的优先级的会话。这样,在优先级为n的会话队列中包括所有优先级为n的会话。在同一个会话队列中,会话按照进入会话队列的时间进行排序。

图7示出了使用会话队列对会话进行排序的一个实例的示意图。在图7中,示出了(k+1)个会话队列,分别对应(k+1)个优先级。在(k+1)个会话队列中,会话队列Queue[0]的优先级最高,会话队列Queue[k]的优先级最低。每个会话队列包括多个会话S(i,j),其中i表示会话队列的编号,j表示会话的编号。在每个会话队列中,会话按照进入会话队列的时间进行排序。例如,在会话Queue[t]中有c个会话,其中会话S(t,1)最先进入该会话队列,而会话S(t,c)最后进入会话队列。在该例子中,会话队列Queue[0]可被配置为非抢占队列,其包括的会话S(0,1)、S(0,2)、…、S(0,n)成为非抢占会话,不能被抢占。其它会话队列可被配置为抢占队列,其包含的会话成为抢占会话,能够被抢占。在另一个例子中,也可以将(k+1)个会话队列中的一部分会话队列配置为非抢占队列,而其它会话队列被配置为抢占队列。

返回到图3,在确定了多个会话的优先级后,在步骤S330,节点可根据所配置的会话限制参数和所确定的多个会话的优先级,从多个会话中选择最佳会话。

图8示出了步骤S330的一个实施例的示意性流程图。如图8所示,在步骤S810,节点将当前会话数量与会话限制参数进行比较。如果当前会话数量小于或者等于会话限制参数,则表明当前所有会话都将不被限制,因此,在步骤S820,节点选择当前所有会话作为最佳会话。如果当前会话数量大于会话限制参数,则在步骤S830,按照优先级从高到低的顺序,从多个会话中选择数量等于会话限制参数的会话作为最佳会话,剩余的会话将受到限制。剩余的会话可以被关闭或者被失效。

在使用会话队列对会话进行排序的情况下,选择从优先级最高的会话队列开始,在同一个会话队列中,优先选择进入会话队列早的会话。在图7所示的例子中,假定会话限制参数为n+a+b+1,则从优先级最高的会话队列Q[0]开始,选择会话队列Q[0]、Q[1]、…、Q[t-1]中的所有会话以及会话队列Q[t]中的会话S(t,1),作为最佳会话,剩余的会话受到限制。

图9示出了步骤S330的另一个实施例的示意性流程图。该实施例可适用于多个会话的一部分被配置为非抢占会话而剩余的会话被配置为抢占会话的情形。

如图9所示,步骤S910和S920与图8中的步骤S810和S820相同。如果在步骤S910的比较中,当前会话数量大于会话限制参数,则在步骤S930,进一步比较非抢占会话的数量与会话限制参数。如果非抢占会话的数量小于会话限制参数,则在步骤S940,选择所有非抢占会话作为最佳会话的一部分,并在步骤S950,按照优先级从高到低的顺序选择数量等于会话限制参数与非抢占会话的数量的差的抢占会话,作为最佳会话的另一部分,剩余的抢占会话将受到限制。如果非抢占会话的数量大于或等于会话限制参数,则在步骤S960,选择所有非抢占会话作为最佳会话。

在实行会话管理期间,如果新的会话被建立或已有的会话被关闭,则当前会话数量增加或减少,向对等节点通告变化的会话限制能力参数,并执行随后的会话管理。

通过以上描述可以看出,本实施例的方法通过对基于多路径路由的网络中的多个会话进行限制和控制,能够保留多个会话中稳定的会话,而避免通过不稳定的会话来路由数据业务,从而使得网络更加稳定和可靠,并能够减少数据包的丢失。

在相同的发明构思下,图10示出了根据本发明的一个实施例的在基于多路径路由的网络中管理多个会话的装置1000的示意性框图。下面结合附图对本实施例进行详细描述,其中对于与前面实施例相同的部分,适当省略其说明。

在本实施例中,多个会话被建立在本实施例的装置1000与多个对等节点之间。多个会话可以是基于ECMP或WCMP的会话或者任何可以同时路由数据业务到同一个目的地址的会话。

如图10所示,本实施例的装置1000可包括:通告模块1001,其被配置为向多个会话的对等节点通告会话限制能力;优先级确定模块1002,其被配置为确定多个会话的优先级;以及选择模块1003,其被配置为根据所配置的会话限制参数和所确定的多个会话的优先级,从多个会话中选择最佳会话。

在本实施例的装置1000中,通告模块1001可向多个会话的对等节点通告会话限制能力。在通告模块1001中,发送单元10011可向多个对等节点分别发送会话限制能力消息。会话限制能力消息可至少包括指示节点的会话限制能力的指示符。可选地,会话限制能力消息还可包括会话限制参数。发送单元10011可以在会话初始化期间使用初始能力消息或者在会话已建立后使用动态能力消息发送会话限制能力消息。然后,接收单元10012可从多个对等节点接收对会话限制能力消息的响应。如果来自对等节点的响应是肯定的,即,对等节点支持会话限制,则记录单元10013记录发送肯定响应的对等节点及对应的会话。如果来自对等节点的响应是否定的,即,对等节点不支持会话限制,则不对与该对等节点之间的会话进行会话限制。

在通告模块1001向对等节点通告了会话限制能力并获得来自对等节点的肯定响应后,优先级确定模块1002确定多个会话的优先级。在本实施例中,会话的优先级反映会话的稳定性。在优先级确定模块1002中,优先权指定单元10021可指定多个会话的优先级。最初,会话的优先级可被指定为最高。然后,监控单元10022可监控多个会话的状态。例如,监控单元10022可监控多个会话是否发生振荡。如前所述,当会话发生振荡时,会影响会话的稳定性。根据监控单元10022所监控的会话的状态的变化,优先权修改单元10023可修改会话的优先级。具体地,当监控单元10022监控到有会话发生了振荡时,优先权修改单元10023降低发生振荡的会话的优先级。当监控单元10022监控到有会话在预定时间内没有发生振荡时,优先权修改单元10023提高该会话的优先级。

然后,选择模块1003根据所配置的会话限制参数和优先级确定模块1002所确定的会话的优先级,选择最佳会话。在选择模块1003中,比较单元10031比较当前会话数量与会话限制参数。在当前会话数量小于或等于会话限制参数时,选择单元10032选择当前所有会话作为最佳会话。在当前会话数量大于会话限制参数时,选择单元10032按照优先级从高到低的顺序,选择数量等于会话限制参数的会话作为最佳会话。然后,剩余的会话将被关闭或失效。

在另一个实施例中,可以进一步将多个会话中的一部分会话配置为非抢占会话,而将剩余的会话配置为抢占会话。在这种情况下,比较单元10031在当前会话数量大于会话限制参数时,进一步比较非抢占会话的数量与会话限制参数。当非抢占会话的数量小于会话限制参数时,选择单元10032选择所有非抢占会话作为最佳会话的一部分,然后,按照优先级从高到低的顺序选择数量等于会话限制参数与非抢占会话的数量的差的抢占会话,作为最佳会话的另一部分。剩余的抢占会话将受到限制。当非抢占会话的数量大于或等于会话限制参数时,选择单元10032选择所有非抢占会话作为最佳会话。

此外,本实施例的装置1000还可包括队列建立模块1004,其被配置为建立多个会话队列,其中多个会话队列具有与多个会话的优先级对应的优先级;以及会话加入模块1005,其被配置为在多个会话队列中分别加入具有对应的优先级的会话。在这种情况下,选择单元10032从优先级最高的会话队列开始进行选择,并在同一个会话队列中,优先选择进入会话队列早的会话。

应当注意,本实施例的在基于多路径路由的网络中管理多个会话的装置1000可在操作上实现图3至图9所示的在基于多路径路由的网络中管理多个会话的方法。

附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号