接口处理方法及装置
技术领域
本申请涉及网络通信技术领域,特别涉及一种接口处理方法及装置。
背景技术
接口拆分指的是将一个高速率的接口拆分成若干个低速率的接口,从而达到提高接口密度、减少使用成本、增加组网灵活性的目的。拆分得到的接口支持的配置和特性均与普通物理接口相同。常用的接口拆分方式包括:将1个40GE(Gigabit Ethernet,千兆以太网)接口拆分成4个10GE接口,将1个100GE接口拆分成4个25GE接口、或10个10GE接口。
反之,也可以将若干个低速率的接口合并为高速率的接口,称为接口合并。例如,将4个10GE接口合并成1个40GE接口。
发明内容
有鉴于此,本申请提供一种接口处理方法及装置。
具体地,本申请是通过如下技术方案实现的:
一方面,提供了一种接口处理方法,该方法包括:
接收接口拆分指令;
删除接口拆分指令对应的待拆分接口的配置信息和转发表项;
监测对待拆分接口的配置信息和转发表项的删除操作,确定待拆分接口的配置信息和转发表项已经删除完毕,删除待拆分接口,释放待拆分接口的接口索引;
创建两个以上拆分后接口,为每个拆分后接口分配接口索引,添加配置信息和转发表项。
另一方面,还提供了一种接口处理装置,该装置包括:
接收单元,用于接收接口拆分指令;
信息删除单元,用于删除接收单元接收到的接口拆分指令对应的待拆分接口的配置信息和转发表项;
监测单元,用于监测信息删除单元对待拆分接口的配置信息和转发表项的删除操作;
原接口操作单元,用于在监测单元确定待拆分接口的配置信息和转发表项已经删除完毕时,删除待拆分接口,释放待拆分接口的接口索引;
新接口操作单元,用于创建两个以上拆分后接口,为每个拆分后接口分配接口索引,添加配置信息和转发表项。
通过本申请的以上技术方案,在接收到接口拆分指令之后,删除待拆分接口的配置信息和转发表项,并监测对该待拆分接口的配置信息和转发表项的删除操作,在确定该待拆分接口的配置信息和转发表项已经删除完毕时,即可删除该待拆分接口,释放该待拆分接口的接口索引;创建两个以上拆分后接口,为每个拆分后接口分配接口索引,添加配置信息和转发表项,从而实现了接口的拆分。另外,由于对删除待拆分接口的配置信息和转发表项的操作进行了监测,从而可以有效准确的判断出待拆分接口的配置信息和转发表项已经被删除完毕,进而删除该待拆分接口并释放对应的接口索引。
另外,在确定出待拆分接口的配置信息和转发表项已经删除完毕之后,才释放该待拆分接口的接口索引,这些被释放的接口索引才能被拆分后接口使用,这样就避免了待拆分接口的配置信息和转发表项与拆分后接口的配置信息和转发表项使用同一接口索引的混乱情况,从而确保了拆分后接口的配置信息和转发表项的添加与待拆分接口的配置信息和转发表项的删除不会发生冲突。
附图说明
图1是本申请一示例性实施例示出的接口处理方法的流程图;
图2是本申请一示例性实施例示出的接口处理装置所应用的网络设备的硬件结构示意图;
图3是本申请一示例性实施例示出的接口处理装置的一种结构示意图;
图4是本申请一示例性实施例示出的接口处理装置的另一种结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请以下实施例中提供了一种接口处理方法,该方法可以由交换机等网络设备执行,在该方法中,网络设备在接收到接口拆分指令之后,删除该接口拆分指令对应的待拆分接口的配置信息和转发表项,并监测对该待拆分接口的配置信息和转发表项的删除操作,确定该待拆分接口的配置信息和转发表项已经删除完毕,则删除该待拆分接口,释放该待拆分接口的接口索引;创建两个以上拆分后接口,为每个拆分后接口分配接口索引,添加配置信息和转发表项,从而实现了接口拆分。
同样,网络设备在接收到用于指示对两个以上待合并接口进行合并的接口合并指令之后,删除每个待合并接口的配置信息和转发表项,并监测对每个待合并接口的配置信息和转发表项的删除操作,确定每个待合并接口的配置信息和转发表项已经删除完毕,则删除每个待合并接口,释放每个待合并接口的接口索引;创建合并后接口,为合并后接口分配接口索引,添加配置信息和转发表项,从而实现了接口合并。
在上述方法中,由于对删除待拆分接口(或待合并接口)的配置信息和转发表项的操作进行了监测,可以有效准确的判断出该待拆分接口(或待合并接口)的配置信息和转发表项已经被删除完毕,进而删除该待拆分接口(或待合并接口)并释放对应的接口索引。另外,在确定出待拆分接口(或待合并接口)的配置信息和转发表项已经删除完毕之后,才释放该待拆分接口(或待合并接口)的接口索引,这些被释放的接口索引才能被拆分后接口(或合并后接口)使用,这样就避免了待拆分接口(或待合并接口)的配置信息和转发表项与拆分后接口(或合并后接口)的配置信息和转发表项使用同一接口索引的混乱情况,从而确保了拆分后接口(或合并后接口)的配置信息和转发表项的添加与待拆分接口(或待合并接口)的配置信息和转发表项的删除不会发生冲突。
以下以将1个40GE接口拆分成4个10GE接口为例,对本申请实施例的接口处理方法进行详细说明。
假设,网络设备上存在一个接口索引为1/0/1的40GE接口,该接口对应的芯片端口的标识为unit=1/port=1,其中,unit=1表示芯片的标识为1,port=1表示芯片端口的标识为1。当需要将该接口拆分成4个10GE接口时,管理人员可以通过网络管理系统、控制器等向该网络设备发送接口拆分指令。
如图1所示,网络设备执行的接口处理方法包括以下步骤:
步骤S102,接收用于指示将接口索引为1/0/1的40GE接口拆分成4个10GE接口的接口拆分指令;
步骤S104,删除接口索引为1/0/1的40GE接口的配置信息和转发表项,并监测对该40GE接口的配置信息和转发表项的删除操作,确定该40GE接口的配置信息和转发表项已经删除完毕,则删除该40GE接口,释放该40GE接口的接口索引1/0/1,释放该40GE接口对应的芯片端口;
在实际实施过程中,网络设备接收到上述接口拆分指令之后,会生成接口删除事件,网络设备中需要对接口索引为1/0/1的40GE接口的配置信息和转发表项执行删除操作的若干模块会响应该事件,对包含接口索引1/0/1的所有配置信息和转发表项进行删除。具体的,配置信息可以是VLAN(Virtual Local Area Network,虚拟局域网)属性、MAC(MediaAccess Control,媒体访问控制)地址和IP(Internet Protocol,因特网协议)地址等信息,转发表项可以是ARP(Address Resolution Protocol,地址解析协议)表项、MAC表项、IP路由表项等。
并且,网络设备会对上述删除操作进行监测,具体的,由于上述若干模块会通过调用函数来执行该删除操作,因而,在步骤S104中可以通过监测这些函数来实现对该删除操作的监测。为了判断该40GE接口的配置信息和转发表项是否删除完毕,在上述方法中,可以在监测到对该40GE接口的配置信息和转发表项的删除操作开始时,启动定时器,每次监测到对该40GE接口的配置信息和转发表项的删除操作时,就重新启动定时器,以使定时器重新从0开始计时,这样,如果定时器的计时时间达到T,说明在该T时间内没有监测到上述删除操作,则可以确定出该40GE接口的配置信息和转发表项已经删除完毕。T可以根据实际需要进行预先设置,例如,T可以设置为15s。
在确定该40GE接口的配置信息和转发表项已经删除完毕之后,会删除该40GE接口,释放该40GE接口的接口索引1/0/1,释放该40GE接口对应的芯片端口,即,在标识为unit=1的芯片上删除该40GE接口对应的芯片端口标识unit=1/port=1。
步骤S106,创建4个10GE接口,为这4个10GE接口分配接口索引,为这4个10GE接口分配与上述40GE接口的芯片端口不同的芯片端口,添加这4个10GE接口的配置信息和转发表项。
在步骤S106中,可以为这4个10GE接口分配接口索引1/0/1:1、1/0/1:2、1/0/1:3、1/0/1:4,并且,为这4个10GE接口分配对应的芯片端口,例如,为接口索引为1/0/1:1的10GE接口分配标识为unit=1/port=2的芯片端口,为接口索引为1/0/1:2的10GE接口分配标识为unit=1/port=3的芯片端口,为接口索引为1/0/1:3的10GE接口分配标识为unit=1/port=4的芯片端口,为接口索引为1/0/1:4的10GE接口分配标识为unit=1/port=5的芯片端口。后续,即可添加包含接口索引1/0/1:1、1/0/1:2、1/0/1:3、1/0/1:4的配置信息和转发表项了。
其中,为接口分配芯片端口的方法可以是,在芯片上记录接口对应的芯片端口标识。
由于40GE接口与4个10GE接口对应的芯片端口不同,因此,40GE接口的配置信息和转发表项的删除可以与这4个10GE接口的配置信息和转发表项的添加并行执行。
本申请上述实施例的方法,可以实现以下技术效果:
(1)每一个接口均具有一个接口索引,用以唯一标识该接口,所有的配置信息和转发表项中,都是使用接口索引来标识对应的接口,本申请实施例的方法中,在确定出待拆分接口(或待合并接口)的配置信息和转发表项已经删除完毕之后,才释放该待拆分接口(或待合并接口)的接口索引,这些被释放的接口索引才能被拆分后接口(或合并后接口)使用,这样就避免了待拆分接口(或待合并接口)的配置信息和转发表项与拆分后接口(或合并后接口)的配置信息和转发表项使用同一接口索引的混乱情况,从而确保了拆分后接口(或合并后接口)的配置信息和转发表项的添加与待拆分接口(或待合并接口)的配置信息和转发表项的删除不会发生冲突。
(2)每一个接口均对应于一个芯片端口,作为其实际的物理端口进行报文收发。因此,在本申请实施例的方法中,在为拆分后接口(或合并后接口)分配对应的芯片端口时,分配与待拆分接口(或待合并接口)的芯片端口不同的芯片端口。由于芯片上的不同端口上的删除和添加可以并行处理,因此,通过为待拆分接口(或待合并接口)和拆分后接口(或合并后接口)分配不同的芯片端口,可以使得待拆分接口(或待合并接口)的配置信息和转发表项的删除操作与拆分后接口(或合并后接口)的配置信息和转发表项的添加操作并行执行,从而大大加快了接口拆分/合并的速度。
与前述接口处理方法的实施例相对应,本申请还提供了接口处理装置的实施例。
本申请接口处理装置60的实施例可以应用在交换机等网络设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在网络设备的处理器10将非易失性存储器50中对应的计算机程序指令读取到内存40中运行形成的。从硬件层面而言,如图2所示,为本申请接口处理装置所在网络设备的一种硬件结构图,除了图2所示的处理器10、内部总线20、网络接口30、内存40、以及非易失性存储器50之外,实施例中装置所在的网络设备通常根据该网络设备的实际功能,还可以包括其他硬件,对此不再赘述。
请参考图3,本申请实施例的接口处理装置60中包括以下单元:接收单元601、信息删除单元602、监测单元603、原接口操作单元604和新接口操作单元605,其中:
接收单元601,用于接收接口拆分指令;
信息删除单元602,用于删除接收单元601接收到的接口拆分指令对应的待拆分接口的配置信息和转发表项;
监测单元603,用于监测信息删除单元602对待拆分接口的配置信息和转发表项的删除操作;
原接口操作单元604,用于在监测单元603确定待拆分接口的配置信息和转发表项已经删除完毕时,删除待拆分接口,释放待拆分接口的接口索引;
新接口操作单元605,用于创建两个以上拆分后接口,为每个拆分后接口分配接口索引,添加配置信息和转发表项。
其中,原接口操作单元604,还用于释放待拆分接口对应的芯片端口;
新接口操作单元605,还用于为每个拆分后接口分配对应的芯片端口,其中,每个拆分后接口对应的芯片端口与待拆分接口对应的芯片端口不同。
另外,接收单元601,还用于接收用于指示对两个以上待合并接口进行合并的接口合并指令;
信息删除单元602,还用于删除每个待合并接口的配置信息和转发表项;
监测单元603,还用于监测信息删除单元602对每个待合并接口的配置信息和转发表项的删除操作;
原接口操作单元604,还用于在监测单元603确定每个待合并接口的配置信息和转发表项已经删除完毕时,删除每个待合并接口,释放每个待合并接口的接口索引;
新接口操作单元605,还用于创建合并后接口,为合并后接口分配接口索引,添加配置信息和转发表项。
其中,原接口操作单元604,还用于释放每个待合并接口对应的芯片端口;
新接口操作单元605,还用于为合并后接口分配对应的芯片端口,其中,每个待合并接口对应的芯片端口与合并后接口对应的芯片端口均不同。
如图4所示,上述接口处理装置60中还包括:启动单元606,其中:
启动单元606,用于在监测单元603监测到对待拆分接口的配置信息和转发表项的删除操作开始时启动第一定时器,监测单元603每次监测到对待拆分接口的配置信息和转发表项的删除操作时,重新启动第一定时器,以使第一定时器重新开始计时;还用于在监测单元603监测到对每个待合并接口的配置信息和转发表项的删除操作开始时启动第二定时器,监测单元603每次监测到对每个待合并接口的配置信息和转发表项的删除操作时,重新启动第二定时器,以使第二定时器重新开始计时;
监测单元603,还用于若第一定时器的计时时间达到预定时间,则确定待拆分接口的配置信息和转发表项已经删除完毕,若第二定时器的计时时间达到预定时间,则确定每个待合并接口的配置信息和转发表项已经删除完毕。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。