专利名称:具备网关负荷分散功能的数据包传送装置的制作方法
技术领域:
本发明涉及构成因特网接入网的数据包传送装置,特别涉及具 备了网关负荷分散功能的数据包传送装置,该网关负荷分散功能 为,选择向因特网的中继网上所连接的多个网关装置中的一个,并 通过所选择的网关装置将用户终端连接到上述中继网。
背景技术:
目前,提供认证式高速因特网连接服务,将用户终端通过
ADSL (Asymmetric Digital Subscriber Line:非对称数字用户环 线)、FTTH (Fiber To The Home:光纤到户)、无线LAN等高速 接入线路连接到认证服务器,并且只将认证成功的用户终端连接到 因特网。
在认证式高速因特网连接服务中,用户终端例如通过将高速接 入网作为终端的网关(GW)装置即BAS (Broadband Access Server:宽带接入服务器)等,连接到因特网服务供应商:ISR (Internet Services Provider)所管理的中继网。在用户终端为按 RFC2516 (非专利文献1)规定的PPPoE (Point to Point Protocol over Ethernet:太网上的点对点协议)终端的情况下,BAS使作为 与用户终端的连接协议的PPPoE和PPP成为终端,从而对中继网 传送第三层的数据包。
在上述高速接入网中,近年来,随着IP电话服务的开始,被要 求已有电话网那样高的通信质量。因此,在发生了故障时,为了縮 短对网络的影响度高的BAS中的服务停止时间,在中继网的入口
设置被冗余化的多个BAS,并构筑将各用户终端和中继网之间的连 接路径冗余化的结构的接入网。今后,期望提供在包含这样冗余化 的多个BAS的接入网中能够将各BAS的连接负荷适当地分散的接 入网。
除了上述第三层级别中的因特网连接服务以外,近年来,也开 始提供第二层级别中的认证连接服务。在第二层级别的认证连接服 务中,根据由RFC2248所规定的IEEE802.1X (非专利文献2)中 的EAP (PPP Extensible Authentication Protocol:可扩展认证协议) 进行用户的认证,中继网由以太网(Ethernet:注册商标)构筑。 在EAP中,在客户端(supplicant)(认证请求者用户终端)和 验证器(认证者GW装置)之间,通过进行EAPOL (EAP over LAN)数据包的通信,进行用户认证。验证器在从认证完成用户终 端接收了数据包时,将其作为第二层数据包传送到中继网。
在利用了上述IEEE802.1X的第二层级别的因特网连接服务中, 各用户终端(客户端)例如在完成EAP认证阶段(phase)时,在 EAP传送阶段中,对ISP管理的DHCP ( Dynamic Host Configuration Protocol:动态主机配置协议)服务器请求IP地址, 接受要使用的IP地址的分配。IEEE802.1X将以一对一方式连接客 户端和验证器作为基础,所以在作为验证器的GW装置中,需要具 备与要收容的客户端的个数对应的多个连接端口。
但是,将多个用户终端通过L2SW收容在验证器中,各用户终 端在EAPOL数据包中采用组播用的特殊的MAC地址 ('01-80-C2-00-00-03),而L2SW使该组播用EAPOL数据包 通过,从而也可以在验证器的一个连接端口收容多个客户端。
即使第二层级别的因特网连接服务,与上述第三层的连接服务 同样,随着IP电话服务的提供,寻求GW装置(验证器)的冗余 化和负荷分散。 作为现有技术,例如,在日本特开2005-64936号公报(专利文 献1)中,提出了下述PPPoE通话分散系统和方法,在分别被连接 到多个ISP的多个BRAS (Broadband Remote Access Server:宽带远 程接入服务器)和PPPoE终端之间配置PPPoE通话管理装置,在 从PPPoE终端接收到PADI数据包时,PPPoE通话管理装置选择应 连接该PPPoE终端的最合适的BRAS,并对该选择出的BRAS传送 PADI数据包。
为了对各用户终端通过中继网提供IP电话服务,需要将接入网 和中继网的通信性能提高到已有的电话网那样高。在依据PPPoE的 第三层的连接服务中,如上述那样,能够构筑冗余化BAS结构的 接入网。
在冗余化BAS结构的网络中,对于从PPPoE终端广播的PADI (PPPoE Active Discovery Initiation: PPPoE激活发现起始分组)数 据包,多个BAS发回响应数据包:PADO (PPPoE Active Discovery Offer: PPPoE激活发现提供分组)。PPPoE终端选择这些PADO 数据包的发送源BAS中的一个,并与选择出的BAS之间,按照 PPPoE的连接步骤执行PADR (PPPoE Active Discovery Request: PPPoE激活发现请求分组)数据包发送以后的通信控制步骤。
但是,PPPoE终端中的BAS的选择,依赖于PADO数据包的接 收定时、或各PPPoE终端上所安装的BAS选择算法。因此,在 PPPoE终端选择BAS的方式中,在运营中继网的ISP (或通信事业 商) 一侧,不能独立地控制冗余化的多个BAS的负荷分散。因 此,例如,存在以下问题不能进行决定PPPoE终端的连接目的地 BAS的负荷分散型的BAS管理或将冗余化的多个BAS分成现行系 统和预备系统的BAS运用,以便在多个BAS中使连接负荷均等。
根据专利文献1中提出的PPPoE通话分散系统,通过PPPoE通 话管理装置,负荷被分散给多个BRAS。专利文献1的PPPoE通话管理装置包括存储了各BRAS所具 有的每个ISP的IP地址的剩余数的BRAS IP地址管理表;以及表 示终端MAC地址和连接目的地ISP之间的对应关系的ISP PPP通 话对应表。
上述PPPoE通话管理装置在接收了从用户终端广播的PADI数 据包时,参照ISP PPP通话对应表而确定连接目的地ISP,并参照 BRAS IP地址管理表,选择连接目的地ISP用的IP地址剩余数最多 的BRAS,对于选择出的BRAS,发送已被变换为单播数据包的 PADI数据包。
参考文献
日本特开2005—64936号公报 RFC2516 (PPPoE)
IEEE802. IX (Port-Based Network Access Control) 但是,在专利文献l中,为了将PPPoE通话管理装置所参照的 BRAS IP地址管理表的内容优化,将PPPoE通话终端化的各BRAS 对PPPoE通话管理装置报告当前自身保持的PPPoE通话数和剩余 IP地址数,PPPoE通话管理装置根据来自各BRAS的报告数据,将 BRAS IP地址管理表更新。因此,在专利文献1的复合分散方式 中,需要在各BRAS中新追加PPPoE通话数和剩余IP地址数的报 告功能。
再有,在依据PPPoE的第三层(或依据IEEE802.1X的第二 层)的连接服务中,本发明人等提出了以下的网络结构与多个用 户终端连接的数据包中继装置将从各用户终端接收的PADI数据包 (或EAPOL-Start数据包)对中继网进行组播,响应该组播的多个 GW装置(BAS或验证器)发回PADO (或EAP-Request/ID请 求)数据包时,数据包中继装置只将来自所选择的特定GW装置的 响应数据包传送到连接请求源用户终端(日本特愿2006-162074
号)。根据上述网络结构,不用变更GW装置的功能,就可进行 GW装置的冗余化。但是,在上述专利申请中,未论述数据包中继 装置的冗余化GW装置的负荷分散控制。
发明内容
本发明的目的在于提供一种数据包传送装置,在通过冗余化的 多个GW装置(BAS、验证器等)连接了被连接有多个用户终端的 接入网和向因特网的中继网的网络结构中,能够分散这些GW装置 的负荷而不对各GW装置追加特别的功能,来连接用户终端和GW 装置。
本发明的数据包传送装置被配置在多个用户终端与向因特网的 中继网上所连接的冗余化的多个网关(GW)装置之间。
为了实现上述目的,本发明的数据包传送装置包括收容与各 用户终端之间的连接线路或与各GW装置之间的连接线路的多个线 路接口;以及控制所述多个线路接口间的用户数据包和通信控制数 据包的传送的协议处理部,
所述协议处理部具有负荷分散管理表,该负荷分散管理表与所 述各GW装置的识别信息相对应地存储有连接负荷的状态信息,所 述协议处理部将从所述各用户终端接收到的对所述中继网的连接开 始请求数据包传送到所述冗余化的多个GW装置,在针对规定时间 内接收到的所述连接开始请求数据包的多个响应数据包中,只将来 自依据所述负荷分散管理表表示的连接负荷状态信息所选择的特定 的GW装置的响应数据包,传送到所述连接开始请求数据包的请求 源用户终端,并从所述请求源用户终端将其后接收到的通信控制数 据包和用户数据包传送到所述特定GW装置。
这里,例如在用户终端为PPPoE终端的情况下,所述连接开始 请求数据包为PADI数据包,来自GW装置(BAS)的响应数据包
为PADO数据包,PADI数据包的发送源终端与从数据包传送装置 传送的PADO数据包的发送源GW装置之间,依据PPPoE执行其 后的通信控制步骤。
例如,在用户终端为IEEE802.1X中的客户端的情况下,上述连 接开始请求数据包为EAPOL-Start数据包,来自GW装置(验证 器)的响应数据包为EAP-Request/ID请求数据包,EAPOL-Start数 据包的发送源客户端在与从数据包传送装置传送的EAP-Request/ID 请求数据包的发送源GW装置之间,依据IEEE802.1X执行其后的 通信控制步骤。
在本发明中协议处理部参照的负荷分散管理表,作为上述连接 负荷状态信息例如包含各GW装置所允许的最大连接数和当前连接 数。这种情况下,协议处理部基于由上述最大连接数和当前连接数 决定的连接比率,选择特定GW装置。
在本发明的一实施例中,所述负荷分散管理表,作为连接负荷 状态信息包含各GW装置中所允许的最大连接数、当前连接数、 由所述最大连接数和当前连接数决定的连接比率以及连接优先级。 这种情况下,协议处理部每次选择特定GW装置时,更新所述负荷 分散管理表表示的所述特定GW装置的连接数和连接比率,并基于 所述特定GW装置的更新后的连接比率与其他GW装置的连接比 率,决定所述各GW装置的新的选择优先级,并存储在所述负荷分 散管理表中,基于所述负荷分散管理表表示的各GW装置的选择优 先级,选择与新的连接开始请求数据包对应的新的特定GW装置。
在本发明的一实施例中,所述负荷分散管理表的连接负荷状态 信息包含表示了各GW装置的应用模式的应用优先级,协议处理部 从具有第一应用优先级的GW装置中,选择特定GW装置。在所述 负荷分散管理表中,在具有第一应用优先级的所有GW装置中连接 数达到了最大连接数时,所述协议处理部从具有第二应用优先级的GW装置中,选择特定GW装置。这样,通过在连接负荷状态信息 中包含应用优先级,可进行将冗余化GW装置分为现行系统和待机 系统的应用。
更详细地说,在本发明的一实施例中,协议处理部包括多连接 管理表,该多连接管理表与各用户终端的识别信息相对应地表示对 该用户终端所预先允许的最大连接数和当前连接数。若利用上述多 连接管理表,则在接收到连接开始请求数据包时,在连接开始请求 数据包的发送源用户终端的当前连接数达到了最大连接数的情况 下,使协议处理部丢弃该连接开始请求数据包,只在当前连接数低 于最大连接数时,能够将该连接开始请求数据包传送到冗余化的多 个GW装置。
在本发明的一实施例中,所述协议处理部包括连接管理表,该 连接管理表用于与作为各连接开始请求数据包的发送源的用户终端 的识别信息相对应地存储作为连接目的地候选的GW装置所具有的 选择优先级。这种情况下,协议处理部在接收各连接开始请求数据 包时,将包含从接收数据包的报头中提取出的用户终端的识别信息 的新的表条目注册在所述连接管理表中,在每次接收针对所述连接 开始请求数据包的响应数据包时,比较所述负荷分散管理表表示的 所述响应数据包的发送源GW装置的选择优先级和所述连接管理表 中与所述响应数据包的目的地用户终端相对应的表条目所表示的选 择优先级,并在选择优先级未注册在所述表条目中时,或在所述发 送源GW装置的选择优先级比所述表条目中注册的选择优先级高 时,将所述发送源GW装置的选择优先级注册在所述表条目中,并 保持所述响应数据包,在经过了规定时间时,将所述响应数据包传 送到所述连接开始请求数据包的请求源用户终端。
本发明的数据包传送装置,通过采用金属线路接口、光线路接 口、无线线路接口、或具有无源光网络PON (Passive Optical
Network)的局端装置OLT (Optical Line Terminal)功能的线路接 口来作为线路接口,可以具有L2SW、 PON系统、无线接入点或无 线网桥(bridge)的功能。
本发明的数据包传送装置将从用户终端接收的连接开始请求数 据包传送到冗余化的多个GW装置,并从这些GW装置发回的多个 响应数据包中,将来自基于各GW装置的连接负荷状态所选择的特 定GW装置的响应数据包传送到用户终端,所以在用户终端中不安 装特殊的软件,并且,在各GW装置中不追加特殊的功能,就可进 行冗余化GW装置的负荷分散。此外,与各用户终端连接的特定 GW装置的选择算法可根据ISP (或通信事业商)的要求而变更, 所以可进行ISP (或通信事业商)所期望的负荷分散。
图1是表示采用了本发明的数据包传送装置(GW选择装置) 的通信网络的结构例的图。
图2是用于说明本发明的GW选择装置具备的GW选择功能的图。
图3是表示在PPPoE中所使用的通信控制帧的格式的图。 图4是表示本发明的GW选择装置的一实施例的方框图。 图5是表示GW选择装置具备的连接管理表的结构例和内容的 转变的图。
图6是表示GW选择装置具备的端口管理表的结构例的图。 图7是表示GW选择装置具备的多连接管理表的结构例的图。 图8是表示GW选择装置具备的负荷分散管理表的结构例和内 容的转变的图。
图9是表示本发明的GW选择装置进行的PPPoE连接控制的时 序图。
图10是GW选择装置执行的PADT数据包接收处理例行程序 的流程图。
图11是GW选择装置执行的PADO数据包接收处理例行程序 的流程图。
图12是GW选择装置执行的负荷分散处理例行程序的流程图。 图13是GW选择装置执行的定时器监视例行程序的流程图。 图14是GW选择装置执行的PADS数据包接收处理例行程序的 流程图。
图15是GW选择装置执行的PADT数据包接收处理例行程序 的流程图。
具体实施例方式
以下,参照附图,说明本发明的数据包传送装置的实施例。
图1表示采用了本发明的数据包传送装置的通信网络的结构例。
这里所示的通信网络包括有线接入网1L、无线接入网1W、 通信事业商或ISP管理的中继网2、以及因特网3。
有线接入网1L和无线接入网1W分别通过具有例如 IEEE802.1X或PPPoE等不同种的协议的通信帧的终端功能的网关 (GW)装置20L (20L-l、 20L-m) 、 20W (20W-l、 20W-m)与 中继网2连接。
有线接入网1L包括分别具备了 IEEE802.1X或PPPoE等的通 话连接功能的多个有线LAN终端40 (40-l~40-n);以及收容这 些有线LAN终端40的多个数据包传送装置10L (IOL-I、 lOL-n)。各数据包传送装置10L与冗余化的多个GW装置20L (20L-1、 20L-m)连接。
如后述那样,本发明的数据包传送装置10L除了将接收数据包
随着第二层报头信息传送的一般性的L2SW功能以外,还具备将各 有线LAN终端40选择性连接到冗余化的多个GW装置20L中的一 个上的GW选择功能。在以下说明中,特别着眼于后者的功能,将 数据包传送装置IOL称为^GW选择装置'。在本发明的第1实施 例,GW选择装置的特征是,具备使负荷分散在冗余化的多个GW 装置20L (20L-l、 20L-m)上,并且控制与有线LAN终端40之 间的连接的负荷分散控制功能。
在该图1所示的有线接入网1L中,GW选择装置10L-1分别通 过单独的接入线路而收容多个有线LAN终端40 ( 40-1-40-k), GW选择装置10L-n通过无源光网PON (Passive Optical Network) 收容多个有线LAN终端40 (40-m~40-n) 。 PON包括多个加入 者连接装置ONU (Optical Network Unit:光网络单元)42 (42-l~42-n) 、 GW选择装置lOL-n中内置的局端装置OLT (Optical Line Terminal:光线路终端)、以及将OLT中所收容的一 根光纤利用星形耦合器(S.C.) 43-1分支为多根支线光纤的结构的 光纤网。
另一方面,无线接入网1W包括分别具备IEEE802.1X或 PPPoE等的通话连接功能的多个无线终端41 (41-l 41-n)、以及 收容这些无线终端41的多个数据包传送装置10W (IOW-I、 lOW-n)。在这里所示的例子中,数据包传送装置10W-1具备无 线-有线变换功能,与冗余化的多个GW装置20L (20L-1、 20L-m)连接。此外,数据包传送装置10W-n具备无线集线器
(频率、帧变换等)功能,与冗余化的多个GW装置20W
(20W-1、 20W-m)连接。
构成无线接入网IW的数据包传送装置10W (10W-l~10W-n) 也具备将各无线终端41选择性连接到冗余化的多个GW装置20中 的一个上的GW选择功能,所以在以下说明中,将这些数据包传送
装置10W也称为'GW选择装置'。
中继网2包括多个第二层交换机(L2SW ) 21 (21-l~21-n)、用户认证服务器(RADIUS服务器)22、用于对 用户终端分配IP地址的DHCP服务器23、以及用于将该中继网连 接到因特网3的路由器24。
在图示的例子中,L2SW21-1连接到路由器24和冗余化的一组 GW装置(20L-l~20L-m) , L2SW21-n连接到路由器24和冗余化 的另一组GW装置(20W-l~20W-m)。这里,RADIUS服务器22 和DHCP服务器23连接到L2SW21-n,但也可以将至少一方连接 到L2SW21-1。此外,L2SW21-l和21-n的一方也可以经由另一方 的L2SW连接到路由器24。
图2是用于说明本发明的GW选择装置10L-1具备的GW选择 功能的图。其他GW选择装置10L-n、 10W-l~10W-n也具有与 GW选择装置10L-1同样的GW选择功能。这里,说明GW选择装 置10L-1连接到冗余化的4台GW装置(20LP_l~20LP-4),从执 行依据PPPoE的通话连接步骤的有线LAN终端40-1~40-m,接收 了通话连接请求的情况下的动作。再有,在图中,终端块和GW块 上附带的'MAC xx-xx-xx-xx-xx-xx,例示有线LAN终端或GW装 置的MAC地址的值。
在从有线LAN终端40-1接收了 PPPoE的连接请求时,GW选 择装置10L-1将有线LAN终端40-1作为PPPoE终端,将GW选 择装置10L-1上所连接的GW装置分别看作BAS20LP-1~20LP~4 (在图1中为20L-l~20L-m),执行连接控制步骤。
从这些GW装置(BAS)接收到与上述连接请求对应的响应 时,GW选择装置10L-1将某一个GW装置、例如GW装置20L-1 选择为有线LAN终端40-1用的有效BAS,并继续进行其后的连接 控制步骤。如果决定了要与PPPoE终端40-1通信的有效BAS,则
其他GW装置20L-2 (20LP-2) ~20L-m (20LP-m)不干预PPPoE 终端40-l的数据包传送。
以同样的方法,GW选择装置10L-1对于来自PPPoE终端40-2 的连接请求,选择GW装置20L-1 (20LP-1),对于来自PPPoE 终端40-m的连接请求,选择GW装置20L-3 (20LP-3)。各 PPPoE终端40通过由GW选择装置10L-1所选择的GW装置20, 与因特网3通信。后面详细论述在接收了来自PPPoE终端的连接请 求时,GW选择装置IOL-I进行的GW装置的选择(负荷分散)算 法。
图3表示在PPPoE中所使用的通信控制帧的格式。
图3 (A)表示从有线LAN终端40发送到GW装置20的连接 开始数据包:PADI (PPPoE Active Discovery Initiation)的格式;图3 (B)表示从GW装置20发送到有线LAN终端40的连接开始响应 数据包:PADO (PPPoE Active Discovery Offer)的格式;图3 (C) 表示从GW装置20发送到有线LAN终端40的通话ID通知数据包 :PADS (PPPoE Active Discovery Session-Confirmation)的格式;图 3 (D)表示有线LAN终端40或GW装置20发出的切断通知数据 包:PADT (PPPoE Active Discovery Terminate)的格式。在这些通信 控制帧中,被附加有以太网报头900和PPPoE报头920。
如图3 (A)所示,PADI在MAC-DA901中包含广播MAC地 址(B.C),在MAC-SA902中包含作为发送源的有线LAN终端 40的MAC地址。在协议类型903中,例如被设定了表示 ^x8863,这样的PPPoE的特定值,在PPPoE报头的帧类型921 中,被设定了表示该帧为'PADI'的代码。
如图3 (B)所示,PADO在MAC-DA901中包含作为PADI的 发送源的有线LAN终端40的MAC地址,在MAC-SA902中包含 GW装置20的MAC地址,协议类型903,被设定了表示PPPoE的
特定值<0x8863'。在PPPoE报头的帧类型921中,被设定了表示 该帧为'PADO'的代码。
如图3 (C)所示,PADS在MAC-DA901中包含有线LAN终 端40的MAC地址,在MAC-SA902中包含GW装置20的MAC 地址,在协议类型903中,被设定了表示PPPoE的特定值 <0x8863'。在PPPoE报头的帧类型921中,被设定了表示该帧为 'PADS'的代码,在通话ID922中,被设定了从GW装置20对有 线LAN终端40分配的通话ID的值。
在PADT从有线LAN终端40发送到GW装置20的情况下, 如图3 (D)所示,在MAC-DA901中包含GW装置20的MAC地 址,在MAC-SA902中包含有线LAN终端40的MAC地址,在协 议类型903中,被设定了表示<0x8863,等这样的PPPoE的特定 值。在GW装置20对有线LAN终端40发送PADT时, MAC-DA901和MAC-SA902之间的关系变为相反。在PPPoE报头 的帧类型921中,被设定了表示该帧为'PADT'的代码,在通话 ID922中,被设定了应切断的通话ID。
图4表示本发明的数据包传送装置(GW选择装置)10的第1 实施例。
GW选择装置10包括分别被分配了单独的端口号 (Port-l~Port-n)的多个线路接口 11 (ll-l~ll-n);连接到这些 线路接口的路由选择部12;通信控制数据包用的发送缓冲器13T和 接收缓冲器13R;控制处理器14;以及存储器15。
路由选择部12和控制处理器14构成用于控制上述线路接口间 的数据包传送的协议处理部。在存储器15中,存储有处理器执行 的通信控制例行程序16、监视数据包表151、连接管理表152、端 口管理表153、多连接管理表154和负荷分散管理表155。
在通信控制例行程序16中,包含用图10~图15进行后述的各
种控制数据包接收处理例行程序、负荷分散处理例行程序和定时器 监视例行程序。
监视数据包表151指定应由控制处理器14处理的通信控制数据 包的种类。操作者通过对控制终端50进行操作,将监视数据包表 151的内容重写,可以变更控制处理器14的动作模式。后面参照图 5、图6论述连接管理表152和端口管理表153。此外,后面参照图 7、图8论述多连接管理表154和负荷分散管理表155。
在GW选择装置10为图1所示的有线接入网Ll的GW选择装 置10L-1时,线路接口 11-l~U-n具备与Ethernet、 ATM、 POS (PPP over SONET)等收容线路上所采用的通信协议相对应的帧终 端功能。在GW选择装置10为收容PON的GW选择装置lOL-n 时,线路接口 11-1-11-n成为具备了例如使GE-PON、 G-PON、 WDM-PON等PON帧终端化的OLT功能。
在GW选择装置10为图1所示的无线接入网1W的GW选择装 置10W-1时,无线终端41侧的线路接口具备例如与 IEEE802.11a、 IEEE802.11b、 IEEE802.1g、 IEEE802.16a、 PHS等无 线线路中所采用的通信协议相对应的无线接口功能,GW装置20 侧的线路接口具备与Ethemet、 ATM、 POS (PPP over SONET)、 GE-PON、 G-PON、 WDM-PON等在有线LAN区间中所采用的通 信协议相对应的接口功能。
此外,在GW选择装置10为图1所示的GW选择装置lOW-n 时,各线路接口与GW选择装置10W-1的无线终端41侧的线路接 口同样,具备与无线线路中所采用的通信协议相对应的无线接口功 能。
图5 (A) (F)表示连接管理表152的结构和内容的转变。 连接管理表152由多个表条目构成,该多个表条目具有连接终 端的线路接口的端口号(以下,称为终端端口号)1521。各表条目表示了终端端口号1521、终端MAC地址1522、连接GW的线路 接口的端口号(以下称为GW端口号)1523、 GW的MAC地址 1524、状态1525、定时器值1526、优先级1527之间的对应关系。
GW MAC1524表示作为与具有终端MAC1522地址的终端的连 接候选的GW装置(以下称为候选GW)的MAC地址,优先级 1527表示在图8说明的负荷分散管理表155中所定义的候选GW 的选择优先级的值。状态1525表示在具有上述终端MAC地址 1522的用户终端中所正在执行的通信控制步骤中的当前状态,在实 施例中,表示了在接收等待的通信控制数据包的种类或通话ID。
图6表示端口管理表153的结构。
端口管理表153由与线路接口 ll-l~ll-n的端口号1531对应的 多个表条目构成,各表条目表示了具有端口号1531的线路接口是 否为收容了与GW装置的连接线路的线路接口的GW连接标记
1532、 以及从上述线路接口所接收的各数据包的发送源MAC地址
1533。
这里例示的端口管理表153正如根据端口号1531的值、MAC 地址1533的值所理解的那样,表示了图2中示意地表示的网络结 构中的GW选择装置IOL-I、 PPPoE终端40-l~40-m、 GW装置 20LP-l~20LP-m之间的连接关系。在实际的应用中,既有GW选 择装置10L-1上所连接的各GW装置具备验证器和BAS两者的功 能的情况,又有只具备某一个功能的情况。在后者的情况下,作为 验证器(或BAS)动作的GW装置对于PPPoE (或EAPOL)的连 接开始数据包变为无响应。
图7表示多连接管理表154的结构。
与用户终端连接的GW装置由连接开始请求发行时刻的各GW 装置的负荷状态来决定,在同一用户终端错开时间地发行了多个连 接开始请求时,有该用户终端按每个连接开始请求连接到不同的
GW装置的情况,也有连续地连接到相同的GW装置上的情况。
例如,假设20L-1和20L-2两台的GW装置上所连接的GW选 择装置10对每个GW装置,将各终端上所允许的最大连接数设定 为,从而进行负荷分散(GW选择)的情况。例如,在第1、 第2连接开始请求中与GW装置20L-1连接的用户终端40-1发行 了第3连接开始请求时,如果选择了 GW装置20L-2,则用户终端 40-1通过GW装置20L-2可接入因特网。但是,在本次还选择了 GW装置20L-1的情况下,用户终端40-1的连接数己经为最大连 接数,所以第3连接开始请求作为超过最大连接数的连接请 求而被拒绝。
本实施例的多连接管理表154用于限制同一终端的多连接的请 求数,由表示每个终端的连接数的多个表条目构成。各表条目表示 终端MAC地址1541、每个终端所允许的最大连接数1542、每个终 端的当前连接数1543之间的对应关系。这样,通过与作为连接目 的地的GW装置无关地对每个用户终端管理多连接数,从而在无论 哪个GW装置通过负荷分散而被选择的情况下,也可以对用户终端 允许公平的多连接。
再有,终端MAC1541和最大连接数1542的值通过控制终端50 而被事先设定。最大连接数1542基本上被指定给由终端MAC1541 确定的每个终端。但是,关于在某个表条目中使终端MAC1541为 D.C (Don't Care:无所谓)并预先指定最大连接数1542、在多连接 管理表154中未注册终端MAC的终端来说,也可以在上述D.C条 目表示的最大连接数的范围内管理连接数。在多连接管理表154中 未设置D.C条目时,丢弃来自未在多连接管理表154中注册终端 MAC的终端的连接请求。
图8 (A) (D)表示负荷分散管理表155的结构和内容的转变。
负荷分散管理表155由具有GW装置20的MAC地址1551的 多个表条目构成。各表条目表示了 GW MAC地址1551、应用优先 级1552、选择优先级1553、连接比率1554、最大连接数1555和连 接数1556之间的对应关系。GW MAC1551、应用优先级1552、最 大连接数1555的值由控制终端50事先设定。选择优先级1553在 每次根据来自终端的连接开始请求所进行的GW选择时变为其值被 更新的可变值的优先级。
使用上述负荷分散管理表155时,例如,通过应用优先级1552 的值,可以将作为负荷分散对象的多个GW装置分组为高优先级 GW和低优先级GW。这种情况下,通过不依赖于低优先级GW的 连接数1556而在高优先级GW组内分散连接负荷,可进行将高优 先级GW作为现行系统、低优先级GW作为预备系统的GW应 用。
例如,如果将具有最高优先级的GW作为现行系统,将应 用优先级为和'3'的GW作为预备系统,则在现行系统的某 一个GW中发生了故障时,可以在预备系统GW中以应用优先级从 高向低的顺序,切换成现行系统。此外,也可以在应用优先级为 '1'的GW作为现行系统进行负荷分散、现行系统的全部GW装 置中连接比率为100%时,选择应用优先级为'2'的GW装置,然 后与用户终端连接。
在实施例中,每次选择现行系统GW组内的GW装置时,例 如,根据连接比率1554或连接数1556的值,变更各GW装置的选 择优先级1553的值,根据该选择优先级的值决定下一个GW装 置,从而实现负荷分散型的GW选择。
返回到图4,路由选择部12从线路接口 11-l U-n接收数据包 时,将接收数据包的接收端口的号码和发送源MAC地址 (MAC-SA902)之间的关系注册到端口管理表153中,从接收数
据包的报头信息中,判断接收数据包是否为图3所示的PPPoE或未 图示的IEEE802.1X等的通信控制数据包。
在接收数据包为通信控制数据包时,路由选择部12将接收数据 包和接收端口号通过接收缓冲器13R传送到控制处理器14。控制 处理器14从接收缓冲器13R读出通信控制数据包和接收端口号, 执行要后述的GW选择和依据通信协议的数据包处理。将要传送到 外部线路的通信控制数据包从控制处理器14通过发送缓冲器13T 传送到路由选择部12。
路由选择部12根据端口管理表153,对从线路接口 U-l U-n 接收的用户数据包、以及通过发送缓冲器13T从控制处理器14接 收的通信控制数据包进行路由选择。具体地说,路由选择部12从 端口管理表153中,检索MAC地址1533与接收数据包的目的地 MAC地址(MAC-DA卯1) 一致的表条目,将接收数据包传送到上 述表条目的端口号1531表示的特定的线路接口。
如果是端口管理表153中未注册与目的地MAC地址相应的表 条目的情况,或是接收数据包的目的地地址变为广播或组播地址的 情况,则路由选择部12将接收数据包传送到接收端口以外的所有 端口 (线路接口)。但是,在从发送缓冲器13T读出的通信控制数 据包为连接开始请求数据包(EAPOL-Start数据包、或PADI数据 包)时,路由选择部12对端口管理表153中GW连接标记1532为 <1'状态的全部端口进行广播。
控制处理器14要监视的通信控制数据包的种类,由监视数据包 表151指定。控制处理器14判断从接收缓冲器13R读出的通信控 制数据包是否为监视对象,不是监视对象的通信控制数据包直接输 出到发送缓冲器13T。从接收缓冲器13R读出的通信控制数据包为 监视对象的情况下,控制处理器14根据通信控制例行程序16更新 了连接管理表152后,将通信控制数据包输出到发送缓冲器13T。
如后述那样,第1实施例的控制处理器14在响应连接开始请求 而从GW装置20发回的多个响应数据包中,将特定的一个数据包 选择性地传送到用户终端,并丢弃剩余数据包,由此实现GW选 择。
作为数据包传送装置(GW选择装置)10中的GW选择方法, 例如有
(1) 对于同一连接开始请求(EAPOL-Start或PADI),在从 多个GW装置接收了响应数据包(EAP-Request/ID请求或PADO) 时,使首先接收的响应数据包有效,丢弃其后接收的响应数据包的 方法;
(2) 从规定时间内接收的多个响应数据包中,使来自与上次选 择的GW装置不同的其他GW装置的响应数据包有效,丢弃其他的 响应数据包的方法;
(3) 对冗余化的一组GW装置赋予优先级,从预定的时间内接 收的多个响应数据包中,选择优先级最高的GW装置发送的数据包 的方法。
为了对冗余化的一组GW装置分散负荷,(2)或(3)较为有 效。在以下说明的实施例中,GW选择装置根据对各GW装置赋予 的选择优先级,按(3)的方法选择GW装置。
下面,参照图5~图15,说明本发明的GW选择装置所进行的 PPPoE的连接控制。
这里,说明采用了以下GW算法的情况图2所示的GW选择 装置10L-1通过使GW装置20L-l 20L-4 (BAS20LP-l~20LP-4) 接收的响应数据包(PADO)中的、从选择优先级最高的GW装置 接收的数据包有效,并且,将本次选择的GW装置的选择优先级变 更为较低的值,由此在发生下一个连接开始请求时,使来自选择优 先级最高的其他GW装置的响应数据包有效。
如图9所示,终端(PPPoE终端)40-2将PADI数据包进行广 播时(SQ110) , PPPoE连接阶段SP1开始。GW选择装置IOL-I 的路由选择部12若接收上述PADI数据包,则将其与接收端口号 —起输出到接收缓冲器13R。
控制处理器14若接收PADI数据包,则执行图10所示的PADI 数据包接收处理例行程序130。 PADI数据包接收处理例行程序130 与后述的PADO数据包接收处理例行程序140、 PADS数据包接收 处理例行程序150、 GW负荷分散处理例行程序160、定时器监视 例行程序170、以及PADT数据包接收处理例行程序300 —起,构 成通信控制例行程序16的一部分。
在PADI数据包接收处理例行程序130中,控制处理器14参照 监视数据包表151,判断PADI是否被指定作为监视对象数据包 (131)。如果PADI未被指定为监视对象,则控制处理器14将接 收的PADI数据包通过发送缓冲器13T传送到路由选择部12
(138) ,并结束该例行程序。
在本实施例,假设PADI被指定作为监视对象。这种情况下, 控制处理器14从多连接管理表154中,检索终端MAC地址154与 接收数据包的发送源MAC地址(MAC-SA902 )的值 <00-00-00-00-00-02, 一致的表条目(132)。
在表检索的结果(133)为,没有发现与接收数据包的 MAC-SA相应的表条目时,控制处理器14丢弃接收数据包
(139) ,并结束该例行程序。在发现了与接收数据包的MAC-SA 相应的表条目时,控制处理器14判断为同一用户发送了作为多连 接的其他连接请求,从而比较连接数1543和最大连接数1542
(134),在连接数1543变为最大连接数1542以上时,丢弃接收 数据包(139),并结束该例行程序。
在连接数1543低于最大连接数1542时,控制处理器14进行所
检索出的表条目的连接数1543的值+1的加法运算(135),并在连 接管理表152中注册新的表条目ENm (136)。上述表条目ENm, 如图5 (A)所示,包括作为终端端口 1521从路由选择部12通 知的接收端口号'm'、作为终端MAC1522的接收数据包的发送 源MAC地址'00-00-00-00-00"02',状态1525变为PADO等 待。接着,控制处理器14将上述表条目ENm的定时器值1526初 始化为规定值,在启动了图13中后述的定时器监视例行程序170 后(137),将接收的PADI数据包传送到发送缓冲器13T (138),并结束该例行程序。
路由选择部12从控制处理器14接收PADI数据包时,根据端 口管理表153表示的GW连接标记1532为'l'的表条目,进行将 PADI数据包广播给GW所连接的多个线路接口 (SQ111-卜SQ1U-4)。
BAS20LP-1 20LP-4响应上述PADI数据包,分别发回PADO 数据包(SQ112-l SQ112-4)。这些PADO数据包的目的地MAC 地址(MAC-DA901)变为PPPoE终端40-2的MAC地址 '00-00-00-00-00-02,。
GW选择装置10L-1的路由选择部12将从GW (BAS) 20LP-3 接收的最初的PADO数据包与接收端口号—起输出到接收缓 冲器13R。来自第2次接收的GW (BAS) 20LP-2的PADO数据包 与接收端口号一起被输出到接收缓冲器BR,来自第三次接 收的GW (BAS) 20LP-1的PADO数据包与接收端口号'4'—起 被输出到接收缓冲器13R,来自最后接收的GW (BAS) 20LP-4的 PADO数据包与接收端口号'k' 一起被输出到接收缓冲器13R。
MAC1522与上述PADO数据包的目的地MAC地址 (MAC-DA901 )的值'00-00-00-00-00-02 , 一致的表条目 (141)。
在检索的结果(142)为,发现了与目的地MAC地址一致的表 条目ENm的情况下,判断表条目ENm的状态1525是否变为 PADO等待状态(144)。在状态1525为PADO等待状态以外的情 况下,控制处理器14将接收的PADO数据包判断为非法数据包, 并丢弃接收数据包(145),结束该例行程序。
在本次的情况中,如图5 (A)所示,在从连接管理表152检索 出的表条目ENm中,状态1525变为PADO等待状态。这种情况 下,控制处理器14执行图12所示的GW负荷分散处理例行程序 160。
再有,在PADI未被指定作为监视对象数据包时,在图10中说 明的PADI数据包接收处理例行程序130中,具有终端MAC地址 '00-00-00-00-00-02,的表条目Enm没有注册到连接管理表 152。这种情况下,对与目的地MAC地址一致的目标表条目的检索 失败。
在从连接管理表152中对目标表条目的检索失败时,控制处理 器14基于PADO数据包生成新的表条目ENm,将其注册在连接管 理表152 (143)后,执行GW负荷分散处理160。
在该时刻生成的表条目ENm,将接收的PADO数据包的目的地 MAC地址(MAC-DA901)的值<00-00-00-00-00-02,作为终端 MAC1522 ,将上述PADO数据包的发送源MAC地址 (MAC-SA902 ) 的值 '00—00-00-22-22-03 , 作为GW MAC1524,将与端口管理表153表示的上述目的地MAC地址 < 00-00-00-00-00-02'相对应的端口号<m,作为终端端口 1521。但是,终端端口 1521的值也可以省略。如图12所示,在GW负荷分散处理例行程序160中,控制处理 器14从负荷分散管理表155中,检索GW MAC1551与接收数据包 (PADO )的发送源MAC地址(MAC-SA902 )的值 <00—00-00—22-22-23, 一致的表条目(161)。
在检索的结果(162)为未发现与发送源MAC地址一致的表条 目的情况下,控制处理器14判断为接收的PADO数据包为来自未 注册的非法GW装置的接收数据包,并丢弃接收数据包(167), 结束GW负荷分散处理例行程序160。如果结束GW负荷分散处理 例行程序160,则图11的PADO数据包接收处理例行程序也结 束。
在从负荷分散管理表155中发现了与接收数据包的发送源MAC 地址一致的表条目的情况下,控制处理器14在所检索的表条目中 判断应用优先级1552的值是否是最优先值'T (163)。在应用 优先级的值不是时,控制处理器14判断为接收数据包是从预 备系统的GW装置发送的数据包,并丢弃接收数据包(167)。结 束GW负荷分散处理例行程序160。在应用优先级的值为'r 时,控制处理器14比较上述表条目表示的选择优先级1553的值和 连接管理表152表示的优先级1527的值(164)。
在本次的情况中,应用优先级1552的值为最优先值'T ,控 制处理器14比较上述表条目表示的选择优先级1553的值和连接管 理表152表示的优先级1527的值(164)。
接收数据包为发往终端40-2 (终端MAC : <00-00-00-00-00-02')的最初的PADO数据包时,如图5 (A) 所示,表条目ENm的优先级1527的值为未设定。这种情况下,控 制处理器14判断为选择优先级1553的值高于优先级1527的值 (165),如图5 (B)所示,在上述表条目ENm的GW MAC1524 中,注册接收数据包(PADO )的发送源MAC地址
(MAC-SA902 ) 表示的 GW :20LP-3 的地址值 <00-00-00-22-22-03,,在优先级1527中设定选择优先级1553 的值<12',并在GW端口号1523中设定PADO数据包的接收端 口号'5, (166)。
在该时刻,GW (BAS) 20LP-3变为终端40-2的连接侯选 GW,控制处理器14在保持从GW (BAS) 20LP-3接收的PADO 数据包的状态下,结束GW负荷分散处理例行程序。
在图9所示的例子中,作为第二个PADO数据包,接收有来自 GW (BAS) 20LP-2的PADO数据包(SQ112-2)。控制处理器14 从接收缓沖器13R中读出GW (BAS) 20LP-2发送的PADO数据 包和接收端口号时,执行PADO数据包接收处理例行程序140,并 经由与最初的PADO数据包的处理时同样的处理过程,执行GW负 荷分散处理例行程序160。
这次,从负荷分散管理表155中,检索GW MAC1551为 '00-00-00-22-22-02,的表条目(161)。在该表条目中,GW (BAS) 20LP-2的应用优先级1552为<2',所以在步骤163中的 判断结果变为"否",控制处理器丢弃接收数据包(167),并结 束GW负荷分散处理例行程序。
同样,从接收缓冲器13R中,读出来自GW (BAS) 20LP-1的 PADO数据包作为第三个PADO数据包时,从负荷分散管理表155 中,检索图8 (A)所示的GW MAC1551= '00-00-00-22-22-0r 的表条目。从上述表条目中可知,GW (BAS) 20LP-1的应用优先 级为"',选择优先级1553为, GW (BAS) 20LP-1具有 比连接管理表152中注册的侯选GW的优先级1527的值<12'高 的选择优先级。
因此,在上述PADO数据包的接收时所执行的GW负荷分散处 理例行程序160中,控制处理器14将GW (BAS) 20LP-1选择为
取代GW (BAS) 20LP-3的新的侯选GW,并在连接管理表152的 表条目ENm中,将GW端口 1523、 GW MAC1524、优先级1527 的值如图5 (C)所示那样进行更新(166)。这种情况下,控制处 理器14丢弃至此保持的来自GW (BAS) 20LP-3的PADO数据 包,并在保持有从GW (BAS) 20LP-1接收的PADO数据包的状 态下,结束GW负荷分散处理例行程序。
从接收缓冲器13R读出来自GW (BAS) 20LP-4的PADO数据 包作为第四个PADO数据包时,从负荷分散管理表155中,检索图 8 (A)所示的GW MAC1551= <00-00-00-22-22-04,的表条目。 从上述表条目中可知,GW (BAS) 20LP-4的应用优先级为 <1',选择优先级1553为<13, , GW: 20LP-4的选择优先级低 于连接管理表152的表条目ENm表示的侯选GW的优先级1527的 值"1,。
因此,在上述PADO数据包的接收时所执行的GW负荷分散处 理例行程序160中,控制处理器14丢弃接收数据包(167),并在 保持有从GW (BAS) 20UM接收的PADO数据包的状态下,结 束GW负荷分散处理例行程序。
图13表示定时器监视例行程序170的流程。
PADI数据包接收时所起动的定时器监视例行程序170,通过控 制处理器14,与上述PADO数据包接收处理例行程序140和GW 负荷分散处理例行程序160并行周期性地被执行。
在定时器监视例行程序170中,控制处理器14等待连接管理表 152的表条目ENm中所设定的定时器值1526变为<0'(超时) (171)。在定时器值1526超时(time out)时,控制处理器14在 负荷分散管理表155中,进行将本次选择的GW装置的MAC地 址、即与连接管理表152的表条目ENm表示的侯选GW的MAC 地址相对应的表条目的连接数1556的值+1的加法运算,并再次计
算连接比率1554 (172)。
接着,控制处理器14在负荷分散管理表155中所注册的应用优 先级1552为的多个表条目中,按连接比率1554 (或连接数 1556)减少的顺序,再次分配选择优先级1553 (173)。
本次的情况中,通过执行步骤172,如图8 (B)所示,在作为 侯选GW而剩余的GW MAC1551= '00-00-00-22-22-01,的表条 目中,连接数1556的值从'999'被变更为'1000',连接比率 1554的值从M9.98,被变更为'20.00,。而通过执行步骤173, 如图8 (B)所示,作为侯选GW而剩余的GW MAC1551= 《00-00-00-22-22-Or的选择优先级1553从被变更为 <13' , GWMAC1551- <00-00-00-22-22-03, 、 GW MAC1551= <00-00-00-22-22-04,的选择优先级1553分别从<12,被变更为 、从"3'被变更为<12'。 将选择优先级1553再次分配结束时,控制处理器14如图5 (D)所示,将连接管理表152的表条目ENm的状态1525变更为 PADS等待(174),将来自保持的侯选GW的PADO数据包传送 到发送缓冲器13T (175),然后结束该例行程序。
再有,通过执行步骤172,负荷分散管理表155表示的侯选GW 的连接数1556达到了最大连接数1555时,侯选GW不能接受新的 连接请求。这种情况下,直至连接数1556减少为止,将选择优先 级1553的值设为最低等级值,在GW负荷分散处理例行程序160 的步骤163中,判断选择优先级的值,并丢弃来自选择优先级为最 低等级值的GW的PADO即可。作为最低等级值,例如,如 、 <20'那样,可以采用第一位为W的值。 在图12所示的GW负荷分散处理例行程序160中,从应用优先 级1552不为'T的GW接收的PADO数据包全部被丢弃,但例如 在图8 (C)所示那样,也可以在应用优先级1552为的全部
GW (现行系统GW)中,在连接数1556达到了最大连接数1555 时(选择优先级为最低等级的情况),将应用优先级为的 GW加入到负荷分散的对象GW组中。这意味着在GW负荷分散处 理例行程序160中判断结果为"否"时,对于在GW负荷分散管理 表155中的应用优先级1552为'l'的表条目,对选择优先级1553 的值进行校验,并在全部的表条目中为最低等级值的情况下,执行 步骤164。
路由选择部12通过发送缓冲器13T从控制处理器14接收 PADO数据包时,基于接收数据包的目的地MAC地址 (MAC-DA901),参照端口管理表153。在这次的例子中,PADO 数据包的目的地MAC地址为'00-00-00-00-00-02',端口管理 表153如图6所示,作为与MAC地址'00-00-00-00-00-02'相 对应的端口号1531,表示了 PPPoE终端40-2的连接端口号 <m'。因此,路由选择部12从端口号<m,的线路接口发送上述 PADO数据包(SQ113)。
PPPoE终端40-2接收上述PADO数据包时,向作为该PADO 数据包的发送源的GW (BAS) 20LP-1发送PADR数据包 (SQ114)。在本实施例中,如图5 (D)所示,在连接管理表152 中,与端口 40-2对应的表条目Enm的状态1525变为作为对PADR 的响应数据包的PADS等待状态。即,由于PADR数据包从GW选 择装置10L-1的监视对象中被除去,所以GW选择装置10L-1的 控制处理器14在从路由选择部12接收上述PADR数据包时,将其 直接传送到路由选择部12。路由选择部12接收上述PADR数据包 时,根据端口管理表153对接收数据包进行路由选择。
上述PADO数据包的目的地MAC地址(MAC-DA901)变为 GW (BAS) 20LP-1的MAC地址<00-00-00-22-22-01,,端口 管理表153中,与上述MAC地址相对应,存储有与GW (BAS)
20LP-1的连接线路的端口号<4,。因此,PADR数据包通过线路 接口 11-4,被传送到GW (BAS) 20LP-1 (SQ115)。
GW (BAS) 20LP-1响应上述PADR,发回PADS数据包 (SQ116) 。 GW选择装置10L-1路由选择部12接收上述PADS数 据包时,将其与接收端口号M' —起输出到接收缓冲器13R。
控制处理器14接收PADS数据包时,执行图14所示的PADS 数据包接收处理例行程序150。在PADS数据包接收处理例行程序 150中,控制处理器14将从路由选择部12通知的接收端口号 M,、接收数据包的目的地MAC地址(MAC-DA901)的值 <00-00—00-00-00-02,、发送源MAC地址(MAC-SA902)的值 <00-00-00-22-22-01,作为检索关键字,从连接管理表152中, 检索GW端口 1523、终端MAC1522、 GW MAC 1554与检索关键字 一致的表条目(151)。
在检索的结果(152)为发现与检索关键字一致的表条目Enm 时,如图5 (E)所示,控制处理器14将接收的PADS数据包表示 的通话ID的值(在本例子中,为"000')设定在上述表条目的 状态1525中(153),并将上述PADS通过发送缓冲器13T传送到 路由选择部12 (154),结束该路由选择。
由于上述PADS数据包的目的地地址(MAC-DA901)为 '00-00-00-00-00-02',所以路由选择部12将上述PADS数据包 传送到图6的端口管理表153表示的端口号'm'的线路接口。由 此,PADS数据包被发送到PPPoE终端40-2 (SQ117)。
再有,在连接管理表152中没有与检索关键字一致的表条目 时,控制处理器将接收的PADS传送到路由选择部12 (154),并 结束该例行程序。例如,在规定时间以上并检测出通信中断的通话 而表条目被自动删除的情况下,发生这种事件。
PPPoE终端40-2接收PADS数据包时,从PPPoE连接阶段SP1
转移到PPPoE传送阶段SP2。
在PPPoE传送阶段SP2中,GW选择装置10L-1进行PPPoE终 端40-2和GW (BAS) 20LP-1之间所通信的用户数据包的传送 (SQ200)、以及Keepalive数据包的传送(SQ210-213)。
在PPPoE传送阶段SP2中,GW (BAS) 20LP-1通过GW选择 装置10L-l,将从PPPoE终端40-2接收的PPPoE数据包 (SQ200)变换为IP数据包后传送到路由器24 (SQ201)。而从路 由器24接收的IP数据包(SQ200)变换为PPPoE数据包,通过 GW选择装置10L-1传送到PPPoE终端40-2 (SQ201)。此外, GW (BAS) 20LP-1通过周期性地发行Keepalive request数据包 (SQ210 ),并接收来自终端的响应数据包(Keepalive acknowledge),从而确认PPPoE终端40-2的动作状态。
终端用户结束因特网接入时,将连接结束数据包PADT从 PPPoE终端40-2发送到GW (BAS) 20LP-1 (SQ310),并从 PPPoE传送阶段SP2转移到PPPoE切断阶段SP3。
GW选择装置10L-1的路由选择部12接收上述PADT数据包 时,执行图15所示的PADT数据包接收处理例行程序300。在 PADT数据包接收处理例行程序300中,控制处理器14将接收端口 号'm,、接收数据包的发送源MAC地址(MAC-DA902)的值
<00-00-00-00-00-02,、以及目的地MAC地址(MAC-DA901) 的值<00-00-00-22-22-01'作为检索关键字,从连接管理表152 中,检索终端端口 1521、终端MAC1522、 GW MAC1524与检索关 键字一致的表条目ENm (301)。但是,接收端口号也可以从检索 关键字条目中除去。
在检索的结果(302)为发现与检索关键字一致的表条目ENm 时,控制处理器14判断上述表条目的状态1525表示的通话ID的 值是否与接收的PADT数据包的通话ID922表示的通话ID值 <難, 一致(305)。
在判断的结果(306)为两个通话ID —致时,如图5 (F)所
示,控制处理器14从连接管理表152中删除上述表条目ENm (307),并在负荷分散管理表155中,在GW MAC1551为 <00-00-00-22-22-01'的表条目中,对连接数1556的值进行减法
运算(-1),并对连接比率1554再次计算,按连接数1556或连接
比率1554减少的顺序,执行现行系统GW中的选择优先级1553的
再分配(308)。
负荷分散管理表155例如在图8 (C)的状态时,通过执行上述 步骤308 , 如图 8 ( D ) 所示,在GW MAC1551-'00-00-00-22-22-0r的表条目中,选择优先级从MO'被变更 为"1,。
然后,控制处理器14在多连接管理表154的终端MAC1541-
wo-oo-oo-oo-oo-or的条目中,对连接数1543的值进行-i的
减法运算(309),将接收数据包通过发送缓冲器13T传送到路由 选择部12 (312),并结束该例行程序。
再有,在判断步骤306中,在通话ID不一致时,控制处理器 14 将目的地 MAC 地址 (MAC-DA901 ) 的值 <00-00-00-22-22-01'作为检索关键字,从负荷分散管理表155 中,检索GWMAC1551与检索关键字一致的表条目(310)。在检 索的结果(311)为发现了目标的表条目时,控制处理器14执行上 述步骤309、 312。如果是未发现目标的表条目的情况,则控制处理 器14判断为接收了与本装置没有关系的PADT数据包,并丢弃接 收数据包(313),结束该例行程序。
在接收数据包为从GW (BAS) 20LP-1侧发行的PADT数据包 的情况下,在判断步骤302中,可知检索连接管理表152的结果是 目标的表条目在连接管理表152中不存在。这种情况下,控制处理
器14改变检索关键字项目的组合,将接收数据包的目的地MAC地 址(MAC-DA901)的值< 00-00-00—00-00-02 ,、接收端口号 '4 ,、 发送源MAC地址 (MAC SA902 ) 的值 '00-00-00-22-22-Or作为检索关键字,从连接管理表152中, 检索终端MAC1522、 GW端口 1523、 GW MAC1524与检索关键字 一致的表条目(303)。
在检索的结果(304)为发现了目标的表条目时,控制处理器 14执行上述步骤305-311。如果是未发现目标的表条目的情况,则 控制处理器14将发送源MAC地址(MAC-SA902)的值 <00-00-00-22-22-01,作为检索关键字,从负荷分散管理表155 中,检索GW MAC1551与检索关键字一致的表条目(310),根据 检索的结果,执行上述步骤309和312或步骤313,并结束该例行 程序。
路由选择部12从控制处理器14接收PADT数据包时,从端口 管理表153确定输出端口的端口号1531,并将上述PADT数据包传 送到BAS20LP-1 (SQ311)。
在上述实施例中,控制处理器14参照监视数据包表151,判断 接收数据包是否为监视对象的通信控制数据包,但也可以由路由选 择部12进行这种判断,只将作为监视对象的通信控制数据包选择 性地传送到控制处理器14。此外,在实施例中,由控制处理器14 进行用于GW选择的处理,但如果在路由选择部12的处理性能上 没有问题,则也可以将实施例中说明的控制处理器14的功能安装 在路由选择部12上。
如从上述实施例可以理解的那样,根据本发明,数据包传送装 置(GW选择装置)将从PPPoE终端40接收的连接开始请求数据 包对多个GW装置(BAS)进行广播,仅使规定时间内接收的多个 响应数据包中的、来自根据GW选择(负荷分散)算法所选择的
定GW装置的响应数据包有效,并将其传送到请求源终端。PPPoE 终端40与上述响应数据包的发送源GW装置之间,执行其后的通 信控制步骤。因此,根据本发明的数据包传送装置(GW选择装 置),不依赖于PPPoE终端40的安装,就可进行GW装置 (BAS)的冗余化和负荷分散。此外,GW装置(BAS)中,不需 要追加专利文献1那样的特殊功能。
在实施例中,说明了 PPPoE终端40和冗余化GW装置 (BAS)之间的连接控制步骤,但本发明的GW选择装置的特征也 能够应用于IEEE802.1X中的客户端(用户终端)和验证器(GW 装置)之间的连接控制步骤。
这种情况下,连接开始请求数据包成为EAPOL-Start数据包, 来自GW装置(验证器)的响应数据包成为EAP-Request/ID请求 数据包,切断请求数据包成为EAPOL-Logoff数据包。因此,在协 议处理部中,只要准备与PADI数据包接收处理例行程序130对应 的EAPOL-Start数据包接收处理例行程序、与PADO数据包接收处 理例行程序140对应的EAP-Request/ID请求数据包接收处理例行 程序、以及与PADT数据包接收处理例行程序300对应的 EAPOL-Logoff数据包接收处理例行程序即可。
此外,使协议处理部具有通信协议的识别功能,例如,通过在 接收数据包为PADI那样的PPPoE数据包时,执行PPPoE用的处理 例行程序,在接收数据包为EAPOL-Start数据包那样的 IEEE802.1X用的数据包时,执行正EE802.1X用的处理例行程序, 从而在同一第二层接入网中,如PPPoE终端和IEEE802.1X中的 EAPOL (客户端)那样,可混杂通信协议不同的多个种类的用户终 端。这种情况下,在连接管理表152中,除了图5所示的PPPoE用 的表条目以外,还可以共存有IEE802.1X (EAPOL)用的表条目。
权利要求
1.一种数据包传送装置,配置在多个用户终端和向因特网的中继网上所连接的冗余化的多个网关装置之间,其特征在于,包括多个线路接口,收容与所述各用户终端之间的连接线路或与所述各网关装置的连接线路;以及协议处理部,控制在所述多个线路接口间的用户数据包和通信控制数据包的传送,所述协议处理部具有负荷分散管理表,该负荷分散管理表与所述各网关装置的识别信息相对应地存储有连接负荷的状态信息,所述协议处理部将从所述各用户终端接收到的对所述中继网的连接开始请求数据包传送到所述冗余化的多个网关装置,在针对规定时间内接收到的所述连接开始请求数据包的多个响应数据包中,只将来自依据所述负荷分散管理表表示的连接负荷状态信息所选择的特定的网关装置的响应数据包,传送到所述连接开始请求数据包的请求源用户终端,并从所述请求源用户终端将其后接收到的通信控制数据包和用户数据包传送到所述特定网关装置。
2. 如权利要求1所述的数据包传送装置,其特征在于, 所述负荷分散管理表的连接负荷状态信息包含所述各网关装置中所允许的最大连接数和当前连接数,所述协议处理部基于由所述最大连接数和当前连接数决定的连 接比率,选择所述特定网关装置。
3. 如权利要求1所述的数据包传送装置,其特征在于, 所述负荷分散管理表的连接负荷状态信息包含所述各网关装置中所允许的最大连接数、当前连接数、由所述最大连接数和当前 连接数决定的连接比率以及连接优先级,所述协议处理部每次选择所述特定网关装置时,,更新所述负荷分散管理表表示的所述特定网关装置的连接数和连接比率,并基于所述特定网关装置的更新后的连接比率与其他网关装置的连接比率,决定所述各网关装置的新的选择优先级,并存储在所述负荷分 散管理表中,基于所述负荷分散管理表表示的各网关装置的选择优 先级,选择与新的连接开始请求数据包对应的新的特定网关装置。
4. 如权利要求1所述的数据包传送装置,其特征在于, 所述负荷分散管理表的连接负荷状态信息包含表示了所述各网关装置的应用模式的应用优先级,所述协议处理部从具有第一应用优先级的网关装置中,选择所述特定网关装置。
5. 如权利要求4所述的数据包传送装置,其特征在于, 在所述负荷分散管理表中,在具有所述第一应用优先级的所有网关装置中连接数达到了最大连接数时,所述协议处理部从具有第二应用优先级的网关装置中,选择所述特定网关装置。
6. 如权利要求1所述的数据包传送装置,其特征在于, 所述协议处理部包括多连接管理表,该多连接管理表与所述各用户终端的识别信息相对应地表示对该用户终端所预先允许的最大 连接数和当前连接数,在接收到各连接开始请求数据包时,所述协议处理部参照所述 多连接管理表,并在所述连接开始请求数据包的发送源用户终端的当前连接数达到了最大连接数时,丢弃该连接开始请求数据包,在 当前连接数低于最大连接数时,将该连接开始请求数据包传送到所 述冗余化的多个网关装置,并且更新所述用户终端的当前连接数。
7. 如权利要求3所述的数据包传送装置,其特征在于, 所述协议处理部包括连接管理表,该连接管理表用于与作为所述各连接开始请求数据包的发送源的用户终端的识别信息相对应地 存储作为连接目的地候选的网关装置所具有的选择优先级,在接收各连接开始请求数据包时,将包含从接收数据包的报头 中提取出的用户终端的识别信息的新的表条目注册在所述连接管理 表中,在每次接收针对所述连接开始请求数据包的响应数据包时,比 较所述负荷分散管理表表示的所述响应数据包的发送源网关装置的 选择优先级和所述连接管理表中与所述响应数据包的目的地用户终 端相对应的表条目所表示的选择优先级,并在选择优先级未注册在 所述表条目中的情况下,或在所述发送源网关装置的选择优先级比 所述表条目中注册的选择优先级高的情况下,将所述发送源网关装 置的选择优先级注册在所述表条目中,并保持所述响应数据包,在经过了所述规定时间的时刻,将所保持的所述响应数据包传 送到所述连接开始请求数据包的请求源用户终端。
8. 如权利要求7所述的数据包传送装置,其特征在于, 所述协议处理部在所述连接管理表中注册新的表条目时,在该表条目中设定用于测量所述规定时间的定时器值,并在该定时器值 超时之时,将所述响应数据包传送到所述连接开始请求数据包的请 求源用户终端。
9. 如权利要求1所述的数据包传送装置,其特征在于,所述协议处理部包括路由选择部,连接到所述多个线路接口;以及 控制处理器,与所述路由选择部相耦合,所述路由选择部将从所述各线路接口接收到的通信控制数据包 传送到所述控制处理器,所述控制处理器参照所述负荷分散管理表,选择所述特定网关 装置,所述路由选择部将从所述各线路接口接收到的用户数据包和从 所述控制处理器接受的通信控制数据包根据各自的报头信息而路由选择给某个所述线路接口。
10.如权利要求9所述的数据包传送装置,其特征在于, 所述路由选择部包括监视数据包表,该监视数据包表表示作为监视对象的通信控制数据包的种类,所述路由选择部在从所述各线路接口接收到的通信控制数据包中,只将所述监视数据包表所指定的通信控制数据包传送到所述控制处理器,将没有被所述监视数据包表指定的通信控制数据包根据其报头信息而路由选择给某个所述线路接口 。
全文摘要
本发明是一种数据包传送装置,在包含了冗余化的多个GW装置的网络结构中,不对各GW装置追加特别功能地进行负荷分散,并与用户终端连接。具体地说,在由收容了用户终端和冗余化的多个GW装置的多个线路接口、控制线路接口间的数据包传送的协议处理部构成的数据包传送装置中,协议处理部将从用户终端接收的连接开始请求数据包传送到上述多个GW装置,只将规定时间内从GW装置接收到的多个响应数据包中的、来自依据负荷分散管理表表示的各GW装置的连接负荷状态信息所选择的特定GW装置的响应数据包传送到请求源用户终端。
文档编号H04L12/56GK101175034SQ20071010876
公开日2008年5月7日 申请日期2007年5月31日 优先权日2006年10月31日
发明者宫田裕章 申请人:日立通讯技术株式会社