具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参考图1,示出了本发明的一种实现链路聚合的方法实施例的流程图,可以包括以下步骤:
步骤101:第一网络节点将接收到的报文负荷分担到n条链路上,并通过所述n条链路分别发送给n个网络节点,n为大于1的自然数;
步骤102:所述n个网络节点将从所述n条链路发送过来的报文发送给第二网络节点,所述n个网络节点中的至少一个网络节点为三层设备接入节点AN或者路由器;
步骤103:所述第二网络节点将接收到的所述报文进行汇聚。
下面对图1所示各步骤进行详细说明。
首先,需要指出的是,对本发明实施例来说,在跨子网链路聚合的实现中,在所涉及的n条链路中,某些链路由第一网络节点与第二网络节点直接建立或者通过二层设备相连,其中不再涉及三层设备接入节点AN或者路由器,而有的链路在第一网络节点与第二网络节点之间存在三层设备接入节点AN或者路由器。
为了便于说明,所有实现链路聚合的设备(包括实现链路聚合所要经过的设备)统一称为链路聚合系统内部。
在跨子网的场景中,位于不同子网的设备进行通信,需要通过代理地址解析协议ARP实现,本发明实施例需要在链路聚合系统内部(即实现链路聚合涉及的各设备)建立链路层通路,还需要通过将链路聚合系统与外部(即链路聚合系统与网络侧设备)建立连接实现负荷分担,从而,就可以将负荷分担后的报文进行汇聚,并将汇聚后的报文进行转发。
在本发明实施例中,链路聚合系统内部建立链路层通路通过初始化过程实现。初始化过程包括:链路聚合系统内部的设备向同样位于链路聚合系统内部且与自身相连的设备(简便起见,称为对端)发起ARP请求,来获取对端的MAC地址,或者,接收对端发送的ARP请求并将自身的MAC地址加入ARP响应并返回ARP响应。链路聚合系统内部各设备获取对端MAC地址的顺序不分先后,且链路聚合系统内部所有设备的初始化过程完成后,链路聚合的初始化过程完成,即在链路聚合系统内部建立起了链路层通路。
链路聚合系统与外部(即与网络设备)也需要建立连接,使来自不同网络设备的报文汇聚至链路聚合系统内部实现负荷分担的网络设备,以便将报文进行负荷分担。需要说明的是,链路聚合系统与外部建立连接是可以任意时刻发生的。通过链路聚合系统与外部建立的连接,可以在链路聚合系统内部实现报文的负荷分担,具体可以包括以下步骤:
A1:接收网络设备的ARP请求。
A2:将自身的MAC地址填入ARP响应并向网络设备返回ARP响应。
A3:接收网络设备发送的报文,对不同网络设备的报文进行汇聚。
A4:将接收到的报文负荷分担到不同链路上,进行发送。
在上述各步骤中,通过步骤A1、A2的处理,使得网络设备可以先将报文汇聚到链路聚合系统内部实现负荷分担的设备上。并且,步骤A3、A4的处理是大量及重复的。步骤A3、A4的处理可以在时间上处于步骤A1、A2之后,但与步骤A1、A2的时间顺序没有紧密的相关性,即步骤A3、A4不一定紧跟在步骤A1、A2之后。
通过链路聚合系统内部链路层通路的建立,可以在链路聚合系统内部实现将负荷分担后的报文进行汇聚,还可以将汇聚后的报文转发至相应网络设备。转发的具体实现通过向网络侧发送ARP请求,以获取相应IP地址的网络侧设备的MAC地址,将汇聚后的报文根据获取的MAC地址转发到相应的网络侧设备。汇聚与转发可以包括以下步骤:
B1:链路聚合系统内部实现聚合的设备针对性的发起一个或多个ARP请求。
此处针对性的意思是,针对路由处理的情况,向路由表中对应的一个(或多个)下一跳(next hop)或网关节点(gateway)的IP地址发起ARP请求,或者,针对无路由处理的情况,即网络侧设备均位于同一子网时,直接向目的节点发起ARP请求,此外,不排除其它可能存在情况。假设在路由处理的情况下,对应的下一跳或网关节点的IP地址为IPy,在同一子网的情况下,对应的目的节点的IP地址为IPx。
B2:接收到一个或多个的ARP响应,其中包括返回ARP相应的网络侧设备的MAC地址,更新ARP表。
B3:接收各链路过来的报文,将报文进行汇聚,形成队列。
报文经汇聚后组成队列,后续将对队列中的报文依次进行处理,后续的流程则用来说明对每一报文处理的过程。
B4:假设该队列起始报文为报文A,报文A的目的IP地址为IPx,开始对报文A进行处理。
对报文的转发是多次进行的,即对报文队列中的报文依次进行转发,从报文A开始,从此步骤开始的流程为对单个报文进行处理的流程,对队列中的报文的处理依次重复执行此流程。
B5:查找路由表以确定下一跳或网关节点的IP地址IPy。
本步骤为可选项,如前面所述,在某些场景下不需要本步骤。
B6:检测IPy或者IPx是否在ARP表中,若是,则进入步骤307,否则,进入B8。
即若执行了步骤305,检测IPy是否在ARP表中,若不执行B5,检测IPx是否在ARP表中,若IPy或者IPx在ARP表中,进入B7,否则,进入B8。
B7:发送报文,结束流程。
将汇聚后的报文的源MAC地址置为实现链路聚合的设备的MAC地址,此为正常处理,不再赘述,将汇聚后的报文的目的MAC地址置为ARP表中IPy对应的MAC地址,并发送汇聚后的报文,结束流程。
B8:对IPy或者IPx对应的设备发起ARP请求,请求IPy或者IPx对应的MAC地址。
B9:检测是否接收到ARP响应,ARP响应中至少包括MAC地址,若接收到ARP响应,进入B10,否则,进入B11。
B10:更新ARP表,发送报文,结束流程。
即更新ARP表,将汇聚后的报文的目的MAC地址置为B9中获得的MAC地址,将汇聚后的报文发送,结束流程。
B11:将目的IP为IPx的报文丢弃,结束流程。
在上述各步骤中,步骤B1与B2与后续各步骤在时间上没有紧密的相关性,且步骤B 10与B2与后续各步骤属于不同层面的处理,在此仅用来表示后续报文的处理需要满足的条件,即获取MAC地址。步骤B4至步骤B 11的处理过程是反复多次的,报文序列中的报文均需要做此处理,而且从报文序列中的排在最前面的报文开始,在此,仅表示对报文A的转发处理,对报文序列中其它报文均做同样处理,不同之处在于其它报文的目的IP地址可以与报文A不同。
为了更加清楚、准确地对本发明实施例进行说明,将链路聚合系统内部实现负荷分担的设备即第一网络节点称为node 1,将链路聚合系统内部实现汇聚的设备即第二网络节点称为node 2,此处,node 1在进行负荷分担之前也有将报文汇聚的动作,但是不同于node 2将报文进行汇聚,node 1汇聚报文的含义是接收来自各网络侧设备的报文,node 2汇聚报文的含义是对应于实现链路聚合,在报文转发层面对报文的汇聚。
node 1与node 2在本发明实施例中,在跨子网实现链路聚合的各步骤上没有本质区别,只是因位置不同以及所依托的设备不同,在网络侧和捆绑系统内部的接口上存在区别,而对于跨子网实现链路聚合的原理和方法是相同的,因此,node 1也可以实现汇聚,node 2也可以实现负荷分担。
对本发明实施例来说,在跨子网链路聚合的实现中,对于所涉及的所有链路,存在某些链路由node 1与node 2直接建立或者通过二层设备相连,其中不再涉及三层设备node x,x为大于2的自然数,在此,简化起见,称为第一种情况。而有的链路在node 1与node 2之间存在三层设备node x,简化起见,称为第二种情况,此时,实现跨子网链路聚合的各步与第一种情况并无太大区别,不同之处在于,对于第一种情况,node 1与node 2通过二层设备进行通信或者直接进行通信。在方法实施例中,仅以第二种情况为例对本发明实施例进行说明。
其次,需要说明的是,本发明实施例不局限于接入技术本身,在此,对DSL接入场景的实现进行详细描述。其中,node 1与node 2既可以是二层设备,还可以是三层设备。
下面结合具体实例将本发明实施例分为上下行方向进行描述,上行方向,node 1为RG,node x作为接入节点AN或者路由器,可以是数字用户线路接入复用器(DSLAM),node 2为IP边缘设备(IP Edge)或者汇聚网交换机(Aggregation Switch);下行方向,node 1为IP Edge或者Aggregation Switch,node x作为AN,为DSLAM,node 2为RG。RG可以是二层设备或者三层设备,IP Edge是三层设备,Aggregation Switch是二层设备。而且,IP Edge作为三层设备,可以是宽带远程接入服务器(BRAS)或宽带网关(BNG)设备,同时也不排除其它IP Edge,例如三层AN。
实施例一,在本实施例中,RG与Aggregation Switch均为二层设备。
当RG与Aggregation Switch位于不同子网时,通过链路聚合实现捆绑,需要首先获取链路上的MAC地址,以在链路聚合系统内部建立链路层的通路。获取链路上的MAC地址的方法可以包括:通过初始化过程获取MAC地址,或者,通过静态配置获取MAC地址,等。在此,仅以通过初始化过程获取MAC地址为例进行说明。对于上行方向,在链路聚合系统内部建立链路层的通路可以包括以下步骤:
C1:初始化时,RG向n个DSLAM发送ARP请求,n为大于1的自然数。
在系统初始化过程中,RG的初始化单元对每个DSL链路/线路对应的端口发送ARP请求。
C2:初始化时,n个DSLAM返回ARP响应。
在DSLAM返回的响应中,DSLAM将自身的MAC地址添加进返回的ARP响应,这样,RG就能获得各链路对应的DSLAM的MAC地址,在确定某会话的报文转发的链路后,就能将该链路对应的DSLAM的MAC地址作为该会话所有报文的MAC地址,从而实现将会话的所有报文发送到DSLAM。
C3:初始化时,DSLAM向Aggregation Switch发送ARP请求。
C4:初始化时,Aggregation Switch对来自DSLAM的ARP请求返回ARP响应。
Aggregation Switch的初始化单元用来完成初始化以建立链路聚合系统内部的链路层通路,可选地,可以通过二层代理ARP功能实现,二层代理ARP作用在二层设备上,可以对来自网络中的所有ARP请求都返回ARP响应,并将自身的MAC地址填入ARP响应返回给发起端。这样,发起端在发送报文时,将报文的目的MAC地址置为该二层设备的MAC地址,就可以将报文发送给该二层设备,对该二层设备来说,即实现了通知发起端向自己发送报文。
相应的,还可以对二层代理ARP的实现进行优化,若该二层设备学习到所在网络中的若干IP地址,维护这样一个IP地址的列表,则该二层代理ARP可以选择性的对ARP请求进行响应,如只对学习到的IP地址的ARP请求进行响应,并返回自身的MAC地址。二层代理ARP再通过发起ARP请求或者其它方式来获取相应IP地址的MAC地址。
需要特别指出的是,在本发明实施例中,二层代理ARP功能最重要的作用不在于此,而在于链路聚合系统与外部建立连接的实现,它所起的作用在链路聚合系统与外部建立连接的实现上得到了更好的体现。在此,仅用来表示在链路聚合系统内部获取MAC地址的一种实现方法,获取MAC地址并不局限于使用二层代理ARP功能。
在C4:返回的ARP响应中,Aggregation Switch将自身MAC地址添加进返回的ARP响应,这样,DSLAM就能获得链路对应的Aggregation Switch的MAC地址,当DSLAM收到RG发送的报文时,把报文的目的MAC地址置为Aggregation Switch的MAC地址,源MAC地址修改为自身的MAC地址,就能把报文发送给Aggregation Switch。
这样,可以通过上述步骤在链路聚合系统内部建立起链路层的通路,从某种意义上说,链路聚合系统成为一个封闭的系统。值得说明的是,初始化时,各步骤的先后顺序没有严格的要求,如RG向n个DSLAM发起ARP请求及n个DSLAM向Aggregation Switch发起ARP请求,它们之间没有严格的先后顺序,也可以是n个DSLAM向Aggregation Switch发起ARP请求获得Aggregation Switch的MAC地址,再接收到RG的ARP请求返回自身的MAC地址。只是初始化必须完成这些步骤,才能建立链路聚合系统内部链路层的通路。
对于链路聚合系统内部ARP的实现,上行方向,RG如何向DSLAM发起ARP请求及D SLAM又如何向Aggregation Switch发起ARP请求等,可以有多种可选的方案,例如:RG上实现配置链路聚合的各个链路对应的DSLAM的IP地址,这样通过正常的对该IP地址发起ARP请求的方式来实现对该DSLAM的MAC地址的获取。此外由于本发明实施例链路是封闭的,即RG对应链路的DSLAM上这一段只存在RG这个对端,所以DSLAM在这个方向上只会接收到RG的ARP请求,所以ARP请求中带有什么样的IP地址显得并不重要,在DSLAM接收到ARP请求后,返回自身的MAC地址即可。相应的,DSLAM向Aggregation Switch发起ARP请求也是一样。此外,本处的实现还可以有其它的方案,方案的选择与实际的场景相关,所以此处的实现相对灵活,可根据具体的情况来作选择。
链路聚合系统不仅要在内部建立起链路层通路,还需要与外部起连接,以实现来自不同用户侧终端的报文汇聚至RG,因此,需要链路聚合系统与外部进行交互,即RG与用户侧终端的交互。这些交互不一定是初始化过程的内容,可以发生在任意时刻。具体是:
1、用户侧终端发送ARP请求;
2、RG对所有ARP请求返回ARP响应,或者,通过学习IP地址,选择性地返回ARP响应。
RG的代理单元具有二层代理ARP功能,可以将RG自身的MAC地址添加进ARP响应,并返回ARP响应,
通过上述RG与用户侧终端的交互,链路聚合系统与外部建立了连接。
通过链路聚合系统与系统外部建立连接,使得不同终端的报文汇聚至RG,从而可以由RG实现负荷分担,具体可以包括以下步骤:
D1:用户侧终端发送报文。
由于RG返回的ARP响应中至少包括RG的MAC地址,所以用户侧终端发送的报文的目的MAC地址为RG的MAC地址。
D2:RG接收来自用户侧终端的报文,将报文负荷分担到n条链路/线路,将各条链路/线路的报文发送。
RG通过一定的算法确定报文属于的会话应该选择哪条链路/线路,确定后,将报文的目的MAC地址置为在初始化过程中获得的对应链路的DSLAM的MAC地址,将自身的MAC地址置为报文的源MAC地址,并将报文调制,调制后,通过选择好的链路/线路发送。
D3:n个DSLAM接收来自RG的报文,将报文解调后,进行发送。
n个DSLAM将报文的源MAC地址置为自身的MAC地址,目的MAC地址置为在初始化过程中获得的Aggregation Switch的MAC地址,将报文解调后发送。
D4:n个DSLAM利用初始化时建立的链路层通路将n条链路/线路上的报文发送至Aggregation Switch。
Aggregation Switch接收到报文后,要将n条链路/线路的报文进行汇聚,并转发出去。
此处Aggregation Switch作为二层设备对报文的转发处理的实现,若Aggregation Switch汇聚网边缘只存在一个IP Edge节点,即只存在一个网关节点,则Aggregation Switch将汇聚接收的所有报文都转发至IP Edge,此时Aggregation Switch通过发起ARP请求获得IP Edge对应的MAC地址即可,后续对报文的转发则将报文的目的MAC地址都修改成IP Edge的MAC地址。
值得说明的是,脱离此处Aggregation Switch的场景而回到node 2作为二层设备的场景,则node 2面临的网络存在多种的情况,可能针对性的需要对接收到的不同的目的IP地址的报文转发至网络侧不同的设备节点,此时该二层设备在此处的实现上就需要一个路由表来进行处理。二层设备检测汇聚后的报文的目的IP地址,进行正常的路由处理,(二层设备之前针对路由表中的多个下一跳或网关节点发起ARP请求获得它们的IP地址对应的MAC地址),然后将该报文的目的MAC地址修改为路由对应下一跳或网关节点IP地址的MAC地址。此处描述了一种更通用情况下的处理,包括上述只存在一个IPEdge节点的场景也可以应用此方法。
至此,在上行方向上,实现了链路聚合,从而实现了线路捆绑。
下行方向,在链路聚合系统内部建立链路层通路可以包括以下步骤:
E1:初始化时,Aggregation Switch发送ARP请求。
在初始化过程中,Aggregation Switch的初始化单元对每个链路对应的DSLAM发送ARP请求。
E2:初始化时,DSLAM返回ARP响应。
DSLAM将自身的MAC地址添加进返回的ARP响应,这样,AggregationSwitch就能获得各链路对应的DSLAM的MAC地址,在确定某会话的报文转发的链路后,就能将该链路对应的DSLAM的MAC地址作为该会话的目的MAC地址,从而实现会话到DSLAM的转发。
E3:初始化时,DSLAM向RG发送ARP请求。
E4:初始化时,RG对来自DSLAM的ARP请求返回ARP响应。
RG的初始化单元用来完成初始化以建立链路层通路,可选地,可以通过二层代理ARP功能来实现,RG将自身MAC地址添加进ARP响应,对所有ARP请求返回ARP响应或者通过学习IP地址选择性地返回ARP响应,这样,DSLAM就能获得RG的MAC地址,当DSLAM收到Aggregation Switch发送的报文时,把报文的目的地址置为RG的MAC地址,源MAC地址修改为自身的MAC地址,就能把报文发送给RG。
这样,可以通过上述初始化过程中各步骤在链路聚合系统内建立起下行方向链路层的通路,在某种意义上,链路聚合系统成为一个封闭的系统。
对于链路聚合系统内部ARP的实现,下行方向,Aggregation Switch如何向DSLAM发起ARP请求及DSLAM又如何向RG发起ARP请求等,可以有多种可选的方案,此处与上行方向相似,具体可参见上行方向相应的描述。
此外,在链路聚合系统外部,还包括Aggregation Switch与网络侧设备的交互,这些交互不一定是初始化过程的内容,可以发生在任意时刻。具体是:
1、汇聚网侧网络设备发送ARP请求。
2、Aggregation Switch对所有ARP请求返回ARP响应,或者,通过学习IP地址,选择性地返回ARP响应。
Aggregation Switch的代理单元将自身MAC地址添加进ARP响应,并返回ARP响应。
通过Aggregation Switch与汇聚网侧网络设备的交互,链路聚合系统与外部建立了连接。
通过链路聚合系统与外部建立连接,使得不同汇聚网侧网络设备的报文汇聚至Aggregation Switch,从而可以由Aggregation Switch实现负荷分担,具体可以包括以下步骤:
F1:汇聚网侧网络设备发送报文。
此处仅以汇聚网侧网络设备为例进行说明。在不同应用场景中,还可以是位于其它子网的网络设备。
F2:Aggregation Switch接收来自汇聚网侧网络设备的报文,将报文负荷分担到n条链路/线路,将各各条链路/线路的报文发送。
Aggregation Switch需要检测接收到的报文是否是需要实现捆绑的报文,如果是,Aggregation Switch将自身的MAC地址填入ARP响应返回给汇聚网侧网络设备,所以汇聚网侧网络设备的报文会先到达Aggregation Switch,Aggregation Switch通过一定的算法为该报文选择链路,确定后,将报文的目的MAC地址置为在初始化过程中获得的DSLAM的MAC地址,将AggregationSwitch自身的MAC地址置为报文的源MAC地址,并通过选择好的链路/线路发送。
F3:n个DSLAM接收来自Aggregation Switch的报文,将报文进行调制,发送调制后的报文。
n个DSLAM将报文的源MAC地址置为自身的MAC地址,目的MAC地址置为在初始化过程中获得的RG的MAC地址,将报文发送。
F4:n个DSLAM利用初始化时建立的链路层通路将n条链路/线路上的报文发送至RG。
RG接收到报文后,要将n条链路/线路的报文解调,进行汇聚,并转发出去。
RG作为一个二层设备,它所面对的用户侧网络中所有节点都和它位于一个子网中,则它所需要的处理也不需要路由表,RG在接收汇聚各链路来的报文后,检测ARP表中是否有相应目的IP地址选项,若有,则将报文的目的MAC地址修改为ARP表中对应的MAC地址,若无,则发起相应IP地址的ARP请求,接收到响应后更新ARP表并将报文的目的MAC地址修改为获得MAC地址,若没有接收到ARP响应,则将接收到的报文丢弃。将报文丢弃可以有一种优化处理方法,即建立一个IP地址的黑名单,若对应IP地址的ARP请求接收不到响应,则将该IP地址列入黑名单中,下一次检测到接收报文的目的IP地址在黑名单中,则直接将该报文丢弃,黑名单可能还需要一个定时器以防止IP地址在黑名单中被永久锁死,超时则将该IP地址从黑名单中删除。
至此,在下行方向上,实现了链路聚合,从而实现了线路捆绑。
以上对于上下行的描述提供了一种在跨子网场景下实现捆绑的方法,能够继承使用IEEE 802.3ad的机制来实现链路的捆绑,实现报文的负荷分担及汇聚。在IEEE 802.3ad中,引入了链路聚合控制协议(LACP,LinkAggregation Control Protocol)及Marker Protocol协议来辅助链路聚合的实现,在链路聚合的实现上,诸多控制、协商的操作都需要LACP及Marker Protocol来完成。本发明实施例链路聚合的实现,同样需要类似协议。具体解决方案可以有两种,分别是:
方案一,继承IEEE 802.3ad中的LACP、Marker Protocol协议,但在本发明实施例中,这些协议的实现会遇到一些问题。
当DSLAM作为三层设备时,会对LACP或者Marker Protocol的正常工作带来如下影响:由于LACP或者Marker Protocol的传送基于链路层并采用组播方式,而且采用特殊的目的组播MAC地址01-80-C2-00-00-02,当DSLAM作为三层设备时,D SLAM会将LACP或者Marker Protocol的报文丢弃。因此DSLAM要保证对LACP或者Marker Protocol的正常传送。此外,由于DSLAM作为三层设备,会对链路上传输的报文的会话属性造成影响,比如DSLAM会修改报文的源或者目的MAC地址。
所以需要在DSLAM上增加链路聚合代理(LAP,Link Aggregation Proxy)单元,LAP单元的作用是:
1、LAP监听LACP或者Marker Protocol报文,在监听到目的MAC地址是01-80-C2-00-00-02的LACP或者Marker Protocol报文时,保持其目的MAC地址不变并将LACP或者Marker Protocol报文发送出去,其中源MAC地址可以修改为DSLAM自身的MAC地址或者保持不变。
2、LAP需要监听LACP或者Marker Protocol报文,在必要时对LACP或者Marker Protocol报文内容进行修改。比如,当DSLAM作为三层设备时,使得DSLAM在转发报文时修改报文的源或者目的MAC地址,在必要时,LAP需要对LACP或者Marker Protocol报文中的会话相关参数进行修改,由于需要做此处理的场景比较少见,此功能在具体实现时为可选项。
此外,本发明实施例还需要通过LACP实现更多的功能。
辅助IP地址学习功能,由于Aggregation Switch执行二层代理ARP功能,默认需要对所有ARP请求做响应,若Aggregation Switch不知道RG侧有哪些IP地址而直接无选择的对所有的ARP请求会响应的话,大多数情况下会对网络造成影响,所以此处增加LACP的辅助IP地址学习的功能,RG首先学习到自身的及用户侧终端的IP地址,并通过LACP发送给Aggregation Switch,这样Aggregation Switch就能了解到需要对哪些IP地址的ARP请求回响应。相应的,RG也可以通过此功能学习到Aggregation Switch及核心网侧网络设备的IP地址。
方案二:采用一种全新的协议来实现,如DIAMETER、通用开放策略服务协议(COPS,Common Open Policy Service Protocol)等协议,同样执行上述方案一的功能,具体的实现在此不再描述。
方案一的优势在于继承性好,特别对RG或Aggregation Switch是二层设备的情况,由于没有IP地址,普通的协议无法完成正常的传送。方案一是一种优选的实现方案,但相同的功能可以有多种的实现方式,并不局限在此。方案二只能在节点为三层设备的情况下才能使用。
实施例二,在本实施例中,RG为二层设备,IPEdge为三层设备。在上下行方向实现链路聚合所需各步与实施例一相似,在此不再赘述,不同之处在于,RG作为二层设备,需要对ARP请求进行二层代理ARP处理,IP Edge作为三层设备,对ARP请求进行正常的ARP处理。
实施例三,在本实施例中,RG为三层设备,Aggregation Switch为二层设备,在上下行方向实现链路聚合所需各步与实施例一相似,在此不再赘述,不同之处在于,RG对ARP请求进行正常的ARP处理,Aggregation Switch对ARP请求进行二层代理ARP处理。
可见,当需要跨子网实现链路聚合时,实现报文的负荷分担及汇聚的网络设备可以根据二层设备或者三层设备分为三个实施例,在各实施例中,需要在链路聚合系统内部建立链路层的通路。任意时刻,还需要链路聚合系统与外部建立起连接,使得在上行方向,来自用户侧终端的报文汇聚至RG,或者,在下行方向,来自网络侧网络设备的报文汇聚至IP Edge或者Aggregation Switch。对于二层设备,需要在其上增加代理单元,对ARP请求完成二层代理ARP功能,对于三层设备,则完成正常的ARP响应即可。从而实现了跨子网的链路聚合,即实现了线路捆绑。
上述实施例都是以DSL接入场景的实现来进行说明,实施例均通过一种新的跨子网的链路聚合的方法来实现DSL线路的捆绑,但实施例本身均是一种新的链路聚合技术。需要强调的是,本发明实施例提供的方法,不局限在接入场景,不局限在链路聚合系统中设备是RG、DSLAM、IP Edge或者Aggregation Switch的情况,即本发明实施例对节点本身没有限制,只要满足跨子网的捆绑的条件都符合本发明的要求,即在捆绑的链路中存在三层节点的情况,例如,还可以使用无源光网络中的ONU、OLT等作为节点,本发明实施例提供的方法,其应用的场景不局限在接入技术领域,在城域广域网络中,交换机、路由器的使用场景下也同样可以使用,实现步骤与本发明方法实施例相似,在此不再赘述。
参考图2,示出了本发明第一网络节点的装置结构框图,可以包括:
代理单元201,用于建立与网络侧设备的连接,包括对来自所述网络侧设备的ARP请求返回ARP响应,或者,根据学习到的IP地址对来自所述网络侧设备的ARP请求返回ARP响应;
第一复用/解复用单元202,用于接收所述网络侧设备利用建立的连接发送的报文,将接收到的报文负荷分担到n条链路,n为大于1的自然数;
第一收发单元203,用于将所述第一复用/解复用单元负荷分担后的n条链路上的报文发送给n个网络节点,所述n个网络节点中的至少一个网络节点为三层设备接入节点AN或者路由器。
图2所示的装置还包括初始化单元,用于向n个网络节点发送ARP请求,接收n个网络节点返回的ARP响应,所述ARP响应至少包括n个网络设备的MAC地址,以用于第一收发单元根据所述MAC地址将负荷分担后的n条链路上的报文发送至n个网络节点。
为了完成本发明所述的链路聚合,还需要n个网络节点以及第二网络节点。
对于n个网络节点,其中各网络节点可以包括链路聚合代理LAP单元和第二收发单元。LAP单元用于将第一网络节点的链路聚合控制协议LACP报文,和/或Marker Protocol协议报文转发给第二网络节点,以用于协商所述第一网络节点和第二网络节点之间的链路;第二收发单元用于根据所述第一网络节点和第二网络节点之间的链路,将所述第一网络节点发送的报文转发给第二网络节点。
对于第二网络节点,可以包括第二复用/解复用单元以及第三收发单元。第二网络节点的第三收发单元用于接收n个网络节点发送的报文,第二复用/解复用单元用于将所述第三收发单元接收报文进行汇聚。
需要指出的是,本发明装置实施例所涉及的n条链路中,某些链路是由第一网络节点与第二网络节点直接建立或者通过二层设备相连,而有些链路在第一网络节点与第二网络节点之间存在三层设备接入节点AN或者路由器。在装置实施例中,仅以第一网络节点与第二网络节点之间存在三层设备为例进行说明。
为了便于理解,首先介绍同一子网内实现链路聚合的装置。第一网络节点为node 1,第二网络节点为node 2,n个网络节点可以为接入节点AN或者路由器。
IEEE802.3ad通过链路聚合实现捆绑分为跨DSLAM或跨DSL收发器(DSL Transceiver)两种情况。在跨DSLAM(n个DSLAM可以作为n个网络节点)情况下,node 1可以为RG,node 2可以为IP Edge或者Aggregation Switch,RG可以包括:
用户侧接口单元,连接在用户侧终端与复用/解复用MUX/DeMUX单元之间,用于将接收到的来自用户侧终端的报文发送给MUX/DeMUX单元,或者接收来自MUX/DeMUX单元的报文并转发给用户侧终端。
MUX/DeMUX单元,用于将报文进行负荷分担,发送给各个链路/线路对应的n个Modem或者将报文进行汇聚,发送给用户网侧接口单元。
n个Modem,用于将接收到的报文进行调制,发送给对应n个DSLAM或者将接收到的来自DSLAM的报文进行解调,发送给MUX/DeMUX单元。n为大于1的自然数。
对于DSLAM,与现有技术相似,在此不再描述。
IP Edge可以包括:
汇聚网侧接口单元,用于用于接收来自DSLAM发送单元的报文,对报文进行检测,将报文发送至MUX/DeMUX单元,或者,接收来自MUX/DeMUX单元发送的报文,将报文发送至对应链路/线路上的n个DSLAM。
MUX/DeMUX单元,用于将来自汇聚网侧接口单元的报文进行汇聚,发送给核心网侧接口单元,或者,将来自核心网侧接口单元的报文进行负荷分担,发送给汇聚网侧接口单元。
核心网侧接口单元,用于接收来自MUX/DeMUX单元的报文,将报文发送至核心网,或者,接收来自核心网的报文,检测报文是否是捆绑链路/线路的报文,如果是,发送至MUX/DeMUX单元,如果否,由其它单元做相应的处理。
对于Aggregation Switch,与IP Edge各单元相似,不同之处在于,对应于IP Edge的核心网侧接口单元,在Aggregation Switch中为第二汇聚网侧接口单元,其功能与核心网侧接口单元相同。
在上下行描述时,仅以IP Edge的核心网侧接口单元为例进行说明,相应的网络为核心网。
上行方向,用户侧接口单元将接收到的来自用户侧终端的报文发送给MUX/DeMUX单元,MUX/DeMUX单元将报文进行负荷分担,发送给各个链路/线路对应的n个Modem,n个Modem将接收到的报文进行调制,发送给对应n个DSLAM,DSLAM将报文发送至IP Edge或者Aggregation Switch的汇聚网侧接口单元,汇聚网侧接口单元对报文进行检测,将报文发送至MUX/DeMUX单元,MUX/DeMUX单元,将报文进行汇聚,发送给核心网侧接口单元,核心网侧接口单元接收来自MUX/DeMUX单元的报文,将报文发送至核心网侧网络设备。
下行方向,核心网侧接口单元接收来自核心网侧网络设备的报文,检测报文是否是捆绑链路/线路的报文,如果是,发送至MUX/DeMUX单元,MUX/DeMUX单元将报文进行负荷分担,发送给汇聚网侧接口单元,汇聚网侧接口单元接收来自MUX/DeMUX单元发送的报文,将报文发送至对应链路/线路上的n个DSLAM,n个DSLAM将报文进行调制,转发至n个Modem,n个Modem将接收到的来自DSLAM的报文进行解调,发送给MUX/DeMUX单元,MUX/DeMUX单元将报文进行汇聚,发送给用户网侧接口单元,用户侧接口单元接收来自MUX/DeMUX单元的报文并转发给用户侧终端。
对于跨DSL收发器的情况,DSLAM可以包括:
n个DSL收发器,用于对来自n个Modem的报文进行解调,发送至线路侧接口单元,或者,将来自线路侧接口单元的报文发送至n个Modem,n为大于1的自然数。
线路侧接口单元,用于检测来自DSL收发器的报文,如果是需要实现汇聚的报文,将报文转发至MUX/DeMUX单元,或者,接收来自MUX/DeMUX单元的报文,将报文调制,发送至n个DSL收发器。
MUX/DeMUX单元,与跨DSLAM的情况中,IP Edge的MUX/DeMUX单元相似。
汇聚网侧接口单元,用于接收来自MUX/DeMUX单元的报文,将报文发送至核心网侧网络设备,或者,接收来自核心网侧网络设备的报文,对报文进行检测,若是需要实现汇聚的报文,发送至MUX/DeMUX单元,否则,由其它单元进行相应的处理。
上行方向,用户侧接口单元将接收到的来自用户侧终端的报文发送给MUX/DeMUX单元,MUX/DeMUX单元将报文进行负荷分担,发送给各个链路/线路对应的n个Modem,n个Modem将接收到的报文进行调制,发送给n个DSL收发器,n个DSL收发器对接收到的报文进行解调,发送至线路侧接口单元,线路侧接口单元检测来自DSL收发器的报文,如果是需要实现汇聚的报文,将报文转发至MUX/DeMUX单元,MUX/DeMUX单元,将报文进行汇聚,发送给汇聚网侧接口单元,汇聚网侧接口单元接收来自MUX/DeMUX单元的报文,将报文发送至核心网侧网络设备。
下行方向,汇聚网侧接口单元接收来自核心网侧网络设备的报文,对报文进行检测,若是需要实现汇聚的报文,发送至MUX/DeMUX单元,MUX/DeMUX单元MUX/DeMUX单元将报文进行负荷分担,发送给线路侧接口单元,线路侧接口单元接收来自MUX/DeMUX单元的报文,将报文调制,发送至n个DSL收发器,n个DSL收发器将来自线路侧接口单元的报文发送至n个Modem,n个Modem将接收到的来自DSLAM的报文进行解调,发送给MUX/DeMUX单元,MUX/DeMUX单元将报文进行汇聚,发送给用户网侧接口单元,用户侧接口单元接收来自MUX/DeMUX单元的报文并转发给用户侧终端。
需要强调的是,RG与DSLAM可以与接入节点本身无关,还可以应用于PON网络中。区别仅在于RG的Modem变换成为光模块,DSLAM的DSL收发器变换为光模块,相应地,DSLAM变换为OLT。从之前的调制解调,到现在的光电转换,对捆绑的实现没有影响。
此外,为了在链路/线路备份冗余的使用过程中能够提高链路/线路的使用效率,IEEE 802.3ad还经常在链路/线路冗余保护的场景下使用。
以上对同一子网内实现链路聚合的装置进行了详细介绍,下面结合方法实施例对RG、IP Edge或者Aggregation Switch进行详细说明。需要指出的是,以下装置实施例均是针对跨DSLAM的情况,对于跨DSL收发器的情况,与前面描述的跨DSL收发器相似,不再赘述。
实施例一,结合方法实施例一,RG与Aggregation Switch均为二层设备。需要在RG与Aggregation Switch上均增加初始化单元、代理单元。由于初始化的目的是获取链路上的MAC地址,而MAC地址的获取还可以通过静态配置实现,所以,初始化单元为可选项,在此,我们仅以初始化单元为例进行说明。
初始化单元需要能感知到捆绑的链路/线路,这样在初始化的时候才知道要在哪些链路中发起ARP请求,此外,MUX/DeMUX单元要做负荷分担,对ARP的处理相对普通报文是特殊的,所以MUX/DeMUX单元本身也要对ARP有感知,所以把二层代理ARP功能独立成为代理单元。对于ARP单元,在RG或者Aggregation Switch的位置不局限于位于MUX/DeMUX单元。
对于RG,如图3所示,可以包括:
用户侧接口单元301,用于将接收到的来自用户侧终端的报文发送给MUX/DeMUX单元,或者,接收来自MUX/DeMUX单元的报文并转发用户侧终端。
MUX/DeMUX单元302、用于将报文负荷分担或者汇聚。
初始化单元303,用于链路聚合系统内部链路层通路的建立,具体为向n个DSLAM发起ARP请求,及对来自n个DSLAM或IP Edge的ARP请求进行二层代理ARP处理。
代理单元304,用于链路聚合系统与外部建立连接,使得不同终端的报文汇聚至RG。
汇聚转发控制单元305,用于路由表(可选项)、ARP表的维护处理,包括从路由表获取表中下一跳或网关节点的IP地址信息以发起ARP请求获取对应的MAC地址,对汇聚链路过来的报文进行路由表查表处理及ARP表的查表处理,以获取报文下一跳节点的MAC地址信息。
n个Modem 306,用于向n个DSLAM发送来自初始化单元的ARP请求,向初始化单元发送DSLAM返回的ARP响应,还用于将接收到的来自MUX/DeMUX单元的报文进行调制,发送给n个DSLAM,或者,对来自n个DSLAM的报文进行解调,发送至MUX/DeMUX单元,n为大于1的自然数;
对于DSLAM,可以包括:
LAP单元,用于协商RG和Aggregation Switch之间的链路,包括:接收来自RG的LACP报文,和/或Marker Protocol协议报文,并转发至Aggregation Switch,或者,接收来自Aggregation Switch的LACP报文,和/或Marker Protocol协议报文,并转发至RG。
第二收发单元,用于根据LAP单元协商的链路,接收来自RG的报文,并转发至Aggregation Switch,或者,接收来自Aggregation Switch的报文,并转发至RG。
调制解调单元,用于对来自RG的报文进行解调,发送至AggregationSwitch,或者对来自Aggregation Switch的报文进行调制,发送至RG。
对于Aggregation Switch,如图4所示,可以包括:
汇聚网侧接口单元401,用于向n个DSLAM发送来自Aggregation Switch的初始化单元的ARP请求,向初始化单元发送DSLAM返回的ARP响应,还用于将接收到的来自n个DSLAM的报文进行检测,发送给MUX/DeMUX单元,或者将来自MUX/DeMUX单元的报文发送给DSLAM。
MUX/DeMUX单元402,用于将报文负荷分担或者汇聚。
初始化单元403,用于链路聚合系统内部链路层通路的建立,具体为向n个DSLAM发起ARP请求,及对来自n个DSLAM或IP Edge的ARP请求进行二层代理ARP处理。
代理单元404,用于链路聚合系统与外部建立连接,使得不同汇聚网侧网络设备的报文汇聚至Aggregation Switch。
汇聚转发控制单元405,用于路由表(可选项)、ARP表的维护处理,包括从路由表获取表中下一跳或网关节点的IP地址信息以发起ARP请求获取对应的MAC地址,对汇聚链路过来的报文进行路由表查表处理及ARP表的查表处理,以获取报文下一跳节点的MAC地址信息。
第二汇聚网侧接口单元406,用于将MUX/DeMUX单元发送的报文发送给汇聚网侧网络设备,或者,将汇聚网侧网络设备发送的报文进行检测,发送给MUX/DeMUX单元。
上行方向,链路聚合系统内部在初始化时,建立链路层的通路,具体为:RG的初始化单元向n个Modem发送ARP请求,n个Modem向n个DSLAM发送来自RG的初始化单元的ARP请求,DSLAM进行正常的ARP响应,DSLAM向Aggregation Switch发送ARP请求,将请求发送至汇聚网侧接口单元,汇聚网侧接口单元将请求发送至Aggregation Switch的初始化单元,初始化单元对ARP请求进行二层代理ARP处理,即可以对所有ARP请求返回ARP响应,还可以通过学习IP地址,选择性地返回ARP响应。
链路聚合系统与其外部在任意时刻需要建立连接,具体实现通过RG与Aggregation Switch的代理单元,所需步骤在方法实施例一中已详细介绍,在此不再赘述。通过链路聚合系统与外部建立连接,可以使来自不同用户侧终端的报文汇聚至RG,具体为:用户侧接口单元接收来自用户侧终端的报文,将报文发送至MUX/DeMUX单元,MUX/DeMUX单元将报文的源MAC地址修改为RG的MAC地址,目的MAC地址置为n个DSLAM的MAC地址,将报文进行负荷分担,发送给n个Modem,n个Modem将报文进行调制,发送至n个DSLAM的调制解调单元,调制解调单元将报文解调,发送至第二收发单元。
第二收发单元将报文发送至Aggregation Switch的汇聚网侧接口单元,汇聚网侧接口单元对报文进行检测,检测是需要实现捆绑的报文,将报文发送至Aggregation Switch的MUX/DeMUX单元,MUX/DeMUX单元将报文的源MAC地址修改为Aggregation Switch的MAC地址,目的MAC地址置为汇聚网侧网络设备的MAC地址,将报文进行汇聚,将汇聚后的报文转发,转发的实现在方法实施例一上行方向已详细描述,具体请参见方法实施例一。
对于DSLAM的LAP单元,LAP单元只处理LACP及Marker Protocol协议报文。
下行方向,链路聚合系统内部在初始化时,建立链路层的通路,具体为:Aggregation Switch的初始化单元向汇聚网侧接口单元发送ARP请求,汇聚网侧接口单元向n个DSLAM发送来自初始化单元的ARP请求,DSLAM进行正常的ARP响应,DSLAM向RG发送ARP请求,将请求发送至n个Modem,n个Modem将请求发送至RG的初始化单元对ARP请求进行二层代理ARP处理。
链路聚合系统与其外部在任意时刻,还需要通过RG与Aggregation Switch的代理单元建立连接,具体实现步骤在方法实施例一中已详细介绍,在此不再赘述。通过链路聚合系统与外部建立连接,可以使来自不同汇聚网侧网络设备的报文汇聚至Aggregation Switch,具体为:汇聚网侧接口单元接收来自汇聚网侧网络设备的报文,将报文发送至MUX/DeMUX单元,MUX/DeMUX单元将报文的源MAC地址修改为Aggregation Switch的MAC地址,目的MAC地址置为n个DSLAM的MAC地址,将报文进行负荷分担,发送给汇聚网侧接口单元,汇聚网侧接口单元将报文发送至n个DSLAM的调制解调单元,调制解调单元将报文进行调制,发送至第二收发单元。
第二收发单元将报文发送至RG的n个Modem,n个Modem将报文解调后,发送至MUX/DeMUX单元,MUX/DeMUX单元将报文的源MAC地址修改为RG的MAC地址,目的MAC地址置为用户侧终端的MAC地址,将报文进行汇聚,将汇聚后的报文转发,转发的实现在方法实施例一下行方向已详细描述,具体请参见方法实施例一。DSLAM的LAP单元同样只处理LACP及Marker Protocol协议报文。
实施例二,结合方法实施例二,RG为二层设备,IP Edge为三层设备。对于RG,请参见装置实施例一对RG的描述,对于IP Edge,需要增加初始化单元,另外,由于三层设备可以对ARP请求进行正常的处理,存在正常的路由处理,所以不需要增加代理单元及汇聚转发控制单元。各单元功能与Aggregation Switch相同,不同之处在于Aggregation Switch的第二汇聚网侧接口单元对应到IP Edge中,为核心网侧接口单元。上下行方向,与装置实施例一相似,不同之处在于,对于链路聚合系统与外部建立连接,在上行方向,RG的代理单元对来自用户侧终端的ARP请求进行二层代理ARP处理,在下行方向,IP Edge对来自核心网侧网络设备的ARP请求进行正常的ARP处理。
实施例三,结合方法实施例三,RG为三层设备,Aggregation Switch为二层设备,对于RG,需要增加初始化单元,另外,由于三层设备可以对ARP请求进行正常的处理,存在正常的路由处理,所以不需要增加代理单元及汇聚转发控制单元。对于Aggregation Switch,请参见装置实施例一对Aggregation Switch的描述。
上下行方向,可以参考装置实施例三,不同之处在于,上行方向,RG对来自用户侧终端的ARP请求进行正常的ARP处理,下行方向,AggregationSwitch的代理单元对来自汇聚网侧网络设备的ARP请求进行二层代理ARP处理。
可见,本发明实施例提供的装置实现了网络设备位于不同子网时的链路聚合。此外,本发明实施例提供的装置还可以应用于不同的场景,例如,RG中的n个Modem可以换为n个光模块,不局限于网络设备本身。
参考图5,示出了本发明实施例一种实现链路聚合的系统示意图。所述系统可以包括:
第一网络节501,用于将接收到的报文负荷分担到n条链路上,并通过所述n条链路分别发送给n个网络节点,n为大于1的自然数;
n个网络节点502,用于将从所述n条链路发送过来的报文发送给第二网络节点,所述n个网络节点中的至少一个网络节点为三层设备接入节点AN或者路由器;
第二网络节点503,用于将接收到的所述报文进行汇聚。
下面结合方法实施例对本发明系统实施例进行详细说明。
同样需要指出的是,本发明系统实施例所涉及的n条链路中,某些链路是由第一网络节点与第二网络节点直接建立或者通过二层设备相连,而有些链路在第一网络节点与第二网络节点之间存在三层设备接入节点AN或者路由器。在系统实施例中,仅以第一网络节点与第二网络节点之间存在三层设备为例进行说明。
对本发明来说,第一网络节点为node 1,第二网络节点为node 2。
实施例一,结合方法实施例一,node 1为RG,node 2为AggregationSwitch,n个接入节点为n个DSLAM。RG与Aggregation Switch为二层设备,本发明实施例的系统可以包括:
RG:用于实现链路聚合系统内部初始化,与链路聚合系统外部建立连接,LACP或/和Marker Protocol协议的实现,还用于接收来自用户侧终端的报文,基于帧分发算法选择链路/线路并将报文负荷分担到不同的链路/线路上,或者,接收来自DSLAM的报文,并实现汇聚。
n个DSLAM:用于完成正常的三层功能,向RG或者Aggregation Switch返回ARP响应,向Aggregation Switch或者RG发送ARP请求,还用于报文的转发,LACP或/和Marker Protocol协议报文的转发,将来自RG的报文转发至Aggregation Switch或将来自Aggregation Switch的报文转发至RG,n为大于1的自然数。
Aggregation Switch:用于实现链路聚合系统内部初始化,与链路聚合系统外部建立连接,LACP或/和Marker Protocol协议的实现,还用于接收来自汇聚网侧网络设备的报文,基于帧分发算法选择链路/线路并将报文负荷分担到不同的链路/线路上,或者,接收来自DSLAM的报文,并实现汇聚。
上行方向,链路聚合系统内部RG、n个DSLAM与Aggregation Switch在初始化时建立链路层通路,具体为RG向n个DSLAM发送ARP请求,DSLAM对ARP请求进行正常的处理,返回ARP响应,n个DSLAM向Aggregation Switch发送ARP请求,Aggregation Switch对ARP请求进行二层代理ARP处理。
链路聚合系统和外部需要建立连接,具体请参见方法实施例一的上行方向。RG接收来自用户侧终端的报文,将报文负荷分担到不同的链路/线路,调制后,将报文发送至n个DSLAM,n个DSLAM将报文解调后,发送至Aggregation Switch。
Aggregation Switch检测报文是需要实现捆绑的报文,将报文汇聚,再将汇聚后的报文转发。
下行方向,链路聚合系统内部RG、n个DSLAM与Aggregation Switch在初始化时建立链路层通路,具体为Aggregation Switch向n个DSLAM发送ARP请求,n个DSLAM对ARP请求进行正常的处理,返回ARP响应,n个DSLAM向RG发送ARP请求,RG对ARP请求进行二层代理ARP处理。
链路聚合系统和外部需要建立连接,具体请参见方法实施例一的下行方向。Aggregation Switch接收来自汇聚网侧网络设备的报文,对报文进行检测,经检测,是需要进行捆绑的报文,将报文负荷分担到不同的链路/线路,发送至n个DSLAM,n个DSLAM调制后,将报文发送至RG。
RG将报文进行解调,解调后将报文汇聚,再将汇聚后的报文转发。
实施例二,结合方法实施例二,RG是二层设备,IP Edge是三层设备。系统可以包括:
RG、n个DSLAM与IP Edge。RG与n个DSLAM的功能与系统实施例一对RG和n个DSLAM的描述相似,请参见系统实施例一。IP Edge的功能与系统实施例二相似,请参见系统实施例二。
上行方向,链路聚合系统内部RG、n个DSLAM与IP Edge在初始化时建立链路层通路,具体为RG向n个DSLAM发送ARP请求,DSLAM对ARP请求进行正常的处理,返回ARP响应,n个DSLAM向IP Edge发送ARP请求,IP Edge对ARP请求进行正常的处理。
链路聚合系统和外部需要建立连接,具体实现步骤请参见方法实施例三。RG接收来自用户侧终端的报文,将报文负荷分担到不同的链路/线路,调制后,将报文发送至n个DSLAM,n个DSLAM将报文解调后,发送至IPEdge。
IP Edge检测报文是需要实现捆绑的报文,将报文汇聚,再将汇聚后的报文转发。下行方向,链路聚合系统内部RG、n个DSLAM与IP Edge在初始化时建立链路层通路,具体为IP Edge向n个DSLAM发送ARP请求,DSLAM对ARP请求进行正常的处理,返回ARP响应,n个DSLAM向RG发送ARP请求,RG对ARP请求进行二层代理ARP处理。
链路聚合系统和外部需要建立连接,具体实现步骤请参见方法实施例三。IP Edge接收来自核心网侧网络设备的报文,检测报文是需要实现捆绑的报文,将报文负荷分担到不同的链路/线路,发送至n个DSLAM,n个DSLAM调制后,将报文发送至RG。
RG将报文解调后,将报文汇聚,再将汇聚后的报文转发。
实施例三,结合方法实施例三,RG是三层设备,Aggregation Switch是二层设备,系统可以包括:RG、n个DSLAM与Aggregation Switch,其中,n为大于1的自然数。RG与n个DSLAM的功能与系统实施例二相似。请参见系统实施例二。Aggregation Switch的功能与系统实施例一相似,请参见系统实施例一。
上行方向,链路聚合系统内部RG、n个DSLAM与Aggregation Switch在初始化时建立链路层通路,具体为RG向n个DSLAM发送ARP请求,DSLAM对ARP请求进行正常的处理,返回ARP响应,n个DSLAM向Aggregation Switch发送ARP请求,Aggregation Switch对ARP请求进行二层代理ARP处理。
链路聚合系统和外部需要建立链路层通路,具体实现步骤请参见方法实施例四。RG接收来自用户侧终端的报文,将报文负荷分担到不同的链路/线路,调制后,将报文发送至n个DSLAM,n个DSLAM将报文解调后,发送至Aggregation Switch。
Aggregation Switch检测报文是需要进行捆绑的报文,将报文汇聚,再将汇聚后的报文转发。
下行方向,链路聚合系统内部RG、n个DSLAM与Aggregation Switch在初始化时建立链路层通路,具体为Aggregation Switch向n个DSLAM发送ARP请求,DSLAM对ARP请求进行正常的处理,返回ARP响应,n个DSLAM向RG发送ARP请求,RG对ARP请求进行正常的处理。
链路聚合系统和外部需要建立连接,具体请参见方法实施例四。Aggregation Switch接收来自汇聚网侧网络设备的报文,检测报文是需要实现捆绑的报文,将报文负荷分担到不同的链路/线路,发送至n个DSLAM,n个DSLAM调制后,将报文发送至RG。
RG将报文解调后,将报文汇聚,再将汇聚后的报文转发。
以上对本发明系统实施例进行了详细说明,需要特别指出的是,结合本发明方法实施例,本发明系统实施例提供的系统不局限在RG、DSLAM、IP Edge或者Aggregation Switch,例如,还可以使用PON中的OLT、ONU等光网络中的设备。
可见,通过链路聚合系统内部的初始化过程,建立了链路聚合系统内部链路层的通路,通过在RG(二层设备)与Aggregation Switch增加代理单元,或者,直接通过RG(三层设备)与IP Edge现有技术中处理ARP的机制,建立了链路聚合系统与外部的连接,在IEEE802.3ad的基础上,实现了当DSLAM为三层设备的情况下,将报文负荷分担到不同的链路/线路,再对报文进行汇聚,进而实现了捆绑。
以上对本发明所提供的实现链路聚合的方法、系统及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。