CN111585796B - 一种接口切换、报文传输方法和网关设备 - Google Patents
一种接口切换、报文传输方法和网关设备 Download PDFInfo
- Publication number
- CN111585796B CN111585796B CN202010342825.7A CN202010342825A CN111585796B CN 111585796 B CN111585796 B CN 111585796B CN 202010342825 A CN202010342825 A CN 202010342825A CN 111585796 B CN111585796 B CN 111585796B
- Authority
- CN
- China
- Prior art keywords
- interface
- virtual interface
- private data
- real
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 230000005540 biological transmission Effects 0.000 title claims abstract description 22
- 238000013507 mapping Methods 0.000 claims abstract description 66
- 230000002457 bidirectional effect Effects 0.000 claims description 21
- 238000010586 diagram Methods 0.000 description 30
- 238000012545 processing Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 11
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 230000002159 abnormal effect Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种接口切换、报文传输方法和网关设备,所述接口切换方法应用于网关设备,所述网关设备包括实接口层、业务层,以及位于实接口层和业务层之间的虚接口层;所述虚接口层包括与所述业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,第一私有数据包括对应的实接口的接口特性信息;所述接口切换方法包括:根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;通过虚接口层用确定的第一私有数据替换目标虚接口当前配置的第一私有数据;并更新链表包含的映射关系。
Description
技术领域
本发明涉及通讯技术领域,特别涉及一种接口切换、报文传输方法和网关设备。
背景技术
随着通讯技术的快速发展,网关设备的使用越来越广泛。网关设备携带有多种类型的接口,从而为多个网络间提供数据转换服务。
相关技术中,网关设备中不同类型的物理接口对应不同的业务,例如广域网(WideArea Network,简称WAN)接口对应动态主机配置协议客户机(Dynamic HostConfiguration Protocol Client,简称DHCP Client)等业务;局域网(Local AreaNetwork,简称LAN)接口对应环路检测、用户终端信息检测、动态主机配置协议服务器(Dynamic Host Configuration Protocol server,简称DHCP server)等业务。
然而,由于不同接口的特性差异较大,除了必要的IP、路由等网络信息外,许多业务也与接口类型关联。因此在网关设备上,其物理接口的类型一般是固定,难以实现接口的切换。
发明内容
本发明提供一种接口切换、报文传输方法和网关设备,用以实现网关设备的接口切换。
第一方面,本发明实施例提供一种接口切换方法,应用于网关设备,所述网关设备包括实接口层、业务层,以及位于所述虚接口层位于所述实接口层和所述业务层之间的虚接口层;所述虚接口层包括与所述业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息;
所述方法包括:
根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
上述方法,通过接收到的接口切换指令,确定需要进行接口切换的目标虚接口,以及切换后该目标虚接口映射的实接口的第一私有数据;进而通过虚接口层用确定的该第一私有数据替换目标虚接口当前配置的第一私有数据,实现了虚实接口映射关系的切换,也就实现了接口的切换。在整个切换过程中,虚接口与业务的之间的对应关系并未发生变化,业务层不会感知到切口发生了切换,因此业务层无需关心实接口的划分,以及不同的芯片方案产生的差异,如接口名与接口类型的差异,进而能够避免切口切换时业务功能状态异常,和大量代码逻辑的修改。上述方法还根据确定的第一私有数据的实接口和上述目标虚接口更新上述链表包含的实接口与虚接口的映射关系,在实接口不配置映射的虚接口的相关信息的前提下,能够根据更新后的链表,准确确定出切换后映射的虚接口。
在一种可选的实施方式中,所述实接口与虚接口的映射关系为实接口的接口标识和虚接口的第二私有数据之间的映射关系;
其中,所述第二私有数据包括对应的虚接口的属性信息。
上述方法,链表中包含实接口的接口标识和对应的虚接口的属性信息的映射关系,实接口在不配置映射的虚接口相关属性的前提下,通过链表,准确确定出切换后映射的虚接口的相关属性。
在一种可选的实施方式中,所述通过所述虚接口层用确定的所述第一私有数据替换所述虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据。
上述方法,通过基于接口切换的切换类型进行私有数据替换,也就是说不同的切换类型,有不同的替换方法,进而针对不同的切换场景,适应性的进行接口切换。
在一种可选的实施方式中,所述切换类型包括双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;
所述通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者,
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
上述方法,在进行双向切换时,虚接口层可以确定两个虚接口切换后分别映射的实接口,并为两个虚接口直接各自配置映射的实接口的私有数据,这样就能准确地用切换后映射的实接口的私有数据替换当前的第一私有数据,完成双向切换;虚接口层也可以将两个虚接口映射的第一私有数据直接进行交换,从而方便、快捷地完成双向切换。
在一种可选的实施方式中,所述切换类型包括单向切换;
所述通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层查找配置确定的所述第一私有数据的虚接口;
通过所述虚接口层删除所述目标虚接口当前配置的第一私有数据,以及将查找到的虚接口配置的第一私有数据切换到所述目标虚接口。
上述方法,通过虚接口层查找配置确定的第一私有数据的虚接口,删除目标虚接口当前配置的第一私有数据,并将查找到的虚接口配置的第一私有数据切换到目标虚接口,使目标虚接口配置确定的第一私有数据,并使查找到的虚接口映射空实接口,从而在实接口坏掉了或者要改变实接口的形态等场景中实现接口的单向切换。
在一种可选的实施方式中,所述虚接口层包括的虚接口分为可切换的虚接口和不可切换的虚接口:
所述根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口,包括:
根据接收到的接口切换指令,从所述可切换的虚接口中确定进行接口切换的目标虚接口。
上述方法,通过根据接收到的接口切换指令,从可切换的虚接口中确定进行接口切换的目标虚接口,上述不可切换的虚接口不受可切换的虚接口所对应的业务限制,因此可以不更改业务配置的情形下,直接收发报文。
在一种可选的实施方式中,所述方法还包括:
在切换完成后,通过所述虚接口层将所述可切换的虚接口与映射的实接口,以及不可切换的虚接口与映射的实接口通知给所述业务层。
上述方法,通过在切换完成后,通过虚接口层将虚接口与映射的实接口的对应关系通知给业务层,这样,在业务层没有与实接口的对应关系的情况下,也能获取当前虚接口与实接口的对应关系,从而使用户能够通过业务层获得该对应关系。
第二方面,本发明实施例提供一种数据传输方法,所述方法应用于网关设备,所述网关设备包括实接口层、业务层,以及位于实接口层和业务层之间的虚接口层;所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息,该方法包括:
通过所述业务层向所述虚接口层发送第一报文;以及
通过所述虚接口层确定接收到的所述业务层的第一报文对应的目标虚接口,并根据所述目标虚接口配置的第一私有数据,向映射的实接口发送所述第一报文;
或者,
通过所述实接口层确定接收到的其他端口的第二报文对应的目标实接口,并根据所述链表确定所述目标实接口映射的虚接口,以使映射的虚接口接收所述第二报文;以及
通过所述虚接口层向业务层发送所述第二报文。
上述方法,在业务层向实接口层发送报文时,是通过业务层直接向虚接口层发送第一报文;并通过虚接口层确定对应的虚接口,并根据该虚接口配置的第一私有数据,向映射的实接口发送第一报文;在实接口层向业务层发送报文时,通过实接口层确定第二报文对应的实接口,并根据链表确定映射的虚接口,以使映射的虚接口接收第二报文;通过虚接口层向业务层发送第二报文。不管是业务层向实接口层发送报文,还是实接口层向业务层发送报文,在进行接口切换后,虚接口与业务的之间的对应关系并未发生变化,业务层不会感知到切口发生了切换,业务层还是会直接向虚接口层发送报文,或者接受虚接口层发送的报文,进而能够避免切口切换时业务功能状态异常,和大量代码逻辑的修改。
第三方面,本发明实施例提供一种接口切换设备,所述网关设备包括处理器和至少两个接口,所述处理器通过位于实接口层和业务层之间的虚接口层进行接口切换,所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息;
所述处理器通过所述虚接口层进行接口切换时具体用于:
根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
在一种可选的实施方式中,所述实接口与虚接口的映射关系为实接口的接口标识和虚接口的第二私有数据之间的映射关系;
其中,所述第二私有数据包括对应的虚接口的属性信息。
在一种可选的实施方式中,所述通过所述虚接口层用确定的所述第一私有数据替换所述虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据。
在一种可选的实施方式中,所述切换类型包括双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;
所述通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者,
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
在一种可选的实施方式中,所述切换类型包括单向切换;
所述通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层查找配置确定的所述第一私有数据的虚接口;
通过所述虚接口层删除所述目标虚接口当前配置的第一私有数据,以及将查找到的虚接口配置的第一私有数据切换到所述目标虚接口。
在一种可选的实施方式中,所述虚接口层包括的虚接口分为可切换的虚接口和不可切换的虚接口:
所述根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口,包括:
根据接收到的接口切换指令,从所述可切换的虚接口中确定进行接口切换的目标虚接口。
在一种可选的实施方式中,所述处理器通过所述虚接口层进行接口切换时还用于:
在切换完成后,通过所述虚接口层将所述可切换的虚接口与映射的实接口,以及不可切换的虚接口与映射的实接口通知给所述业务层。
第四方面,本发明实施例还提供另一种网关设备,所述网关包括处理器和至少两个接口;所述处理器通过实接口层、业务层,以及位于所述实接口层和所述业务层之间的虚接口层进行报文传输,所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关配置有供所述实接口调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息;
所述处理器通过实接口层、业务层,以及虚接口层进行报文传输时,具体用于:
通过所述业务层向所述虚接口层发送第一报文;以及
通过所述虚接口层确定接收到的所述业务层的第一报文对应的目标虚接口,并根据所述目标虚接口配置的第一私有数据,向映射的实接口发送所述第一报文;
或者,
通过所述实接口层确定接收到的其他端口的第二报文对应的目标实接口,并根据所述链表确定所述目标实接口映射的虚接口,以使映射的虚接口接收所述第二报文;以及
通过所述虚接口层向业务层发送所述第二报文。
第五方面,本发明实施例提供一种接口切换装置,该装置包括:确定模块和处理模块;
确定模块,用于根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
处理模块,用于通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
可选地,所述实接口与虚接口的映射关系为实接口的接口标识和虚接口的第二私有数据之间的映射关系;
其中,所述第二私有数据包括对应的虚接口的属性信息。
可选地,所述处理模块通过所述虚接口层用确定的所述第一私有数据替换所述虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据。
可选地,所述切换类型包括双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;
所述处理模块通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者,
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
可选地,所述切换类型包括单向切换;
所述处理模块通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层查找配置确定的所述第一私有数据的虚接口;
通过所述虚接口层删除所述目标虚接口当前配置的第一私有数据,以及将查找到的虚接口配置的第一私有数据切换到所述目标虚接口。
可选地,所述虚接口层包括的虚接口分为可切换的虚接口和不可切换的虚接口:
所述确定模块根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口,包括:
根据接收到的接口切换指令,从所述可切换的虚接口中确定进行接口切换的目标虚接口。
可选地,所述处理模块在切换完成后,通过所述虚接口层将所述可切换的虚接口与映射的实接口,以及不可切换的虚接口与映射的实接口通知给所述业务层。
第六方面,本发明实施例提供一种报文传输装置,该装置包括:第一处理模块和第二处理模块:
第一处理模块,用于通过所述业务层向所述虚接口层发送第一报文;以及
通过所述虚接口层确定接收到的所述业务层的第一报文对应的目标虚接口,并根据所述目标虚接口配置的第一私有数据,向映射的实接口发送所述第一报文;
第二处理模块,用于通过所述实接口层确定接收到的其他端口的第二报文对应的目标实接口,并根据所述链表确定所述目标实接口映射的虚接口,以使映射的虚接口接收所述第二报文;以及
通过所述虚接口层向业务层发送所述第二报文。
第七方面,本申请还提供一种非易失性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述方法的步骤。
第八方面,本申请还提供一种非易失性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第二方面所述方法的步骤。
另外,第三、五、七方面中任一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。第四、六、八方面中任一种实现方式所带来的技术效果可参见第二方面中不同实现方式所带来的技术效果,此处不再赘述。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例提供的一种网关设备的业务逻辑示意图;
图2为本发明实施例提供的一种接口切换方法示意图;
图3为本发明实施例提供的一种链表示意图;
图4为本发明实施例提供的另一种接口切换方法示意图;
图5为本发明实施例提供的再一种接口切换方法示意图;
图6为本发明实施例提供的又一种接口切换方法示意图;
图7为本发明实施例提供的又一种接口切换方法示意图;
图8为本发明实施例提供的一种映射关系示意图;
图9a为本发明实施例提供的一种报文传输方法示意图;
图9b为本发明实施例提供的另一种报文传输方法示意图;
图10为本发明实施例提供的一种网关设备的结构示意图;
图11为本发明实施例提供的一种接口切换装置的结构示意图;
图12为本发明实施例提供的一种报文传输装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面对文中出现的一些词语进行解释:
1、本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
2、本发明实施例中属于“网关设备”为携带有多种类型的接口,从而为多个网络间提供数据转换服务的设备,该网关设备可以是移动的,也可以是固定的,本实施例对网关设备的形态不做具体限定,例如,可以是路由器、交换机或者PC等连接两个不同网络的设备。
本发明实施例描述的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。其中,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
网关设备携带有多种类型的接口,从而为多个网络间提供数据转换服务。不同类型的接口对应不同的业务,例如WAN接口对应WAN相关业务;LAN接口对应LAN相关业务。网关设备包括实接口层和业务层,业务层向实接口层发送报文,也可以接收实接口层发送的报文。
然而,由于不同接口的特性差异较大,除了必要的IP、路由等网络信息外,许多业务也与接口类型关联。因此在网关设备上,其物理接口的类型一般是固定的,难以实现接口的切换。
鉴于此,本发明实施例提出一种接口切换方法、数据传输方法和网关设备,该接口切换方法通过接收到的接口切换指令,确定需要进行接口切换的目标虚接口,以及切换后该目标虚接口映射的实接口的第一私有数据;进而通过虚接口层用确定的该第一私有数据替换目标虚接口当前配置的第一私有数据,实现了虚实接口映射关系的切换,也就实现了接口的切换。在整个切换过程中,虚接口与业务的之间的对应关系并未发生变化,业务层不会感知到切口发生了切换,因此业务层无需关心实接口的划分,以及不同的芯片方案产生的差异,如接口名与接口类型的差异,进而能够避免切口切换时业务功能状态异常,和大量代码逻辑的修改。上述方法还根据确定的第一私有数据的实接口和上述目标虚接口更新上述链表包含的实接口与虚接口的映射关系,在实接口不配置映射的虚接口的相关信息的前提下,能够根据更新后的链表,准确确定出切换后映射的虚接口。
图1为本发明实施例提供的一种网关设备的业务逻辑示意图,如图1所示,虚接口层与业务层关联,即业务层中LAN、WAN、安全和服务质量(Quality of Service,简称Qos)、应用程序(Application,简称APP)等业务与虚接口层中的虚接口对应。实接口层与物理层关联,即物理层中直接存储器访问(Direct Memory Access,简称DMA)、无源光纤网络(Passive Optical Network,简称PON)和无线上网Wi-Fi等信息与实接口对应。在进行接口切换时,虚接口与业务之的之间的对应关系并未发生变化,业务层不会感知到接口发生了切换,因此业务层无需关心实接口的划分,以及不同的芯片方案产生的差异,如接口名与接口类型的差异,进而能够避免切口切换时业务功能状态异常,和大量代码逻辑的修改。如上所述,实接口与物理层强相关,通过虚接口层,将接口切换从复杂的业务逻辑中剥离出来,业务层不再关心实接口如何划分,在初始化时绑定虚接口即可。
图2为本发明实施例提供的一种接口切换方法示意图,该方法应用于网关设备中的虚接口层,所述虚接口层位于实接口层和业务层之间;所述虚接口层包括与所述业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息,如图2所示,具体包括以下步骤:
步骤201:根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据。
本实施例中,虚接口配置有映射的实接口的第一私有数据,想要实现接口的切换,就要实现第一私有数据的切换,基于此,需要确定出要切换的虚接口和切换后映射的第一私有数据。
示例性的,根据接收到的接口切换指令,指令中携带有接口标识,根据接口标识确定出是虚接口标识还是实接口标识,再确定需要进行接口切换的目标虚接口,例如:
1)接口标识为两个,根据接口标识,确定一个为第一虚接口标识,一个为实接口标识,通过虚接口层,根据第一虚接口标识,能够确定第一虚接口为目标虚接口;
实接口与芯片、软件开发工具包(Software Development Kit,简称sdk)强相关,为了不影响实接口的使用,并未在实接口处配置映射的虚接口相关的信息,因此不能在实接口处找到目标虚接口,链表中包含实接口与虚接口的映射关系,此时通过遍历链表,才能根据实接口标识,找到该实接口映射的第二虚接口,从而确定第二虚接口为目标虚接口;
2)接口标识为两个,根据接口标识,确定两个都为虚接口标识,通过虚接口层根据这两个虚接口标识直接确定两个目标虚接口;
3)接口标识为两个,根据接口标识,确定两个都为实接口标识,根据两个实接口标识,遍历链表,找到两个实接口分别映射的虚接口,这两个虚接口就是目标虚接口。
可以理解,接口标识也可以为三个或者四个,只是接口标识为三个或者四个时,还是需要参照上述举例的实现方式进行目标虚接口确认,因此在一般情况下接口标识是两个。在一些特殊的应用场景中,例如虚接口层只有两个虚接口,此时接口标识也可以为一个,通过这一个接口标识就能够确定目标虚接口。
在确定出目标虚接口之后,需要进一步确定切换后目标虚接口映射的实接口的第一私有数据,本实施例对确定第一私有数据的方式不做具体限定。
另外,上述实接口的接口特性信息包括但不限于以下的一项或者多项:实接口标识、实接口指针、状态信息、发送能力等。
步骤202:通过虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
如上所述,本实施例中,想要实现接口的切换,就要实现第一私有数据的切换;基于此,需要通过虚接口层用确定的第一私有数据替换当前的第一私有数据。
同时,接口切换后,虚实接口的映射关系发生了变化,已经不是链表中的实接口与虚接口的映射关系了,基于此,需要根据确定的第一私有数据的实接口和需要进行接口切换的目标虚接口更新链表。
通过更新链表包含的实接口与虚接口的映射关系,在实接口不配置映射的虚接口的相关信息的前提下,能够根据更新后的链表,准确确定出切换后映射的虚接口。
如上所述,并未在实接口处配置映射的虚接口相关的信息,实接口根据链表也只能获得映射的虚接口,实接口在向映射的虚接口发送数据等过程中难以获得映射的虚接口的相关信息,基于此,链表中需要包含实接口映射的虚接口的相关信息。
可选地,所述实接口与虚接口的映射关系为实接口的接口标识和虚接口的第二私有数据之间的映射关系;
其中,所述第二私有数据包括对应的虚接口的属性信息。
示例性的,实接口层通过遍历链表,就能找到该实接口的标识所对应的第二私有数据,根据第二私有数据对应的虚接口的属性信息,就能向映射的虚接口发送数据。
另外,上述虚接口的属性信息包括但不限于虚接口标识、虚接口参数、虚接口的地址、虚接口收包函数中的任意一项或者几项。
可以理解,为了保持链表与虚接口配置信息的一致性,使链表的更新更加方便,虚接口可以配置私有数据,私有数据不仅包括映射的实接口的第一私有数据,还包括该虚接口的第二私有数据,链表就是通过指针形成的私有数据的集合,完成第一私有数据的替换后,自动进行链表更新。
图3为本发明实施例提供的一种链表示意图,如图3所示,链表包括头部、数据元素,在一种可能的实现方式中数据元素为私有数据。在需要遍历链表时,可以通过头部进入链表,通过实接口标识,确定对应的私有数据,进而获得映射的虚接口的属性信息。
上述方法,通过接收到的接口切换指令,确定需要进行接口切换的目标虚接口,以及切换后该目标虚接口映射的实接口的第一私有数据;进而通过虚接口层用确定的该第一私有数据替换目标虚接口当前配置的第一私有数据,实现了虚实接口映射关系的切换,也就实现了接口的切换。在整个切换过程中,虚接口与业务的之间的对应关系并未发生变化,业务层不会感知到切口发生了切换,因此业务层无需关心实接口的划分,以及不同的芯片方案产生的差异,如接口名与接口类型的差异,进而能够避免切口切换时业务功能状态异常,和大量代码逻辑的修改。上述方法还根据确定的第一私有数据的实接口和上述目标虚接口更新上述链表包含的实接口与虚接口的映射关系,在实接口不配置映射的虚接口的相关信息的前提下,能够根据更新后的链表,准确确定出切换后映射的虚接口。在一种可选的实现方式中,通过链表中包含实接口的接口标识和对应的虚接口的属性信息的映射关系,实接口在不配置映射的虚接口相关属性的前提下,通过链表,准确确定出切换后映射的虚接口的相关属性。
另外,在进行切口切换时,可能出现的场景有很多,如果都采用同样的切换方式,可能会造成切换不合理,图4为本发明实施例提供的另一种接口切换方法示意图,如图4所示,该实施例在图2实施例的基础上,具体包括以下步骤:
步骤401:根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据。
步骤401与上述步骤201的实现方式相同,此处不再赘述。
步骤402:通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
如上所述,在进行切口切换时,可能出现的场景有很多,如果都采用同样的切换方式,可能会造成切换不合理,基于此,需要通过虚接口层根据切换类型进行切换。其中,切换类型包括但不限于双向切换和/或单向切换。
上述方法,通过基于接口切换的切换类型进行私有数据替换,也就是说不同的切换类型,有不同的替换方法,进而针对不同的切换场景,适应性的进行接口切换。
图5为本发明实施例提供的再一种接口切换方法示意图,该实施例在上述实施例的基础上,所述切换类型包括双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口,如图5所示,具体包括以下步骤:
步骤501:根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据。
步骤501与上述步骤201的实现方式相同,此处不再赘述。
步骤502:通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据。
示例性的,在需要进行链路扩容等情况下,需要进行接口的双向切换,在一种实现方式中可以通过虚接口层确定出第一虚接口切换后映射第一实接口,基于该第一实接口确定出第一实接口的第一私有数据,用第一实接口的第一私有数据替换第一虚接口当前配置的第一私有数据,并采用相同的方式用第二实接口的第一私有数据替换第二虚接口当前配置的第一私有数据。
或者
步骤503:若所述第一虚接口当前配置第二实接口的第一私有数据,通过所述虚接口层所述第二虚接口当前配置第一实接口的第一私有数据,则将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
示例性的,在一种实现方式中可以在确定出切换类型为双向切换,目标虚接口包括第一虚接口和第二虚接口后,就能确定出是将第一虚接口和第二虚接口进行双向切换,因此可以通过虚接口层直接交换第一虚接口当前配置的第一私有数据和第二虚接口当前配置的第一私有数据。
通过上述步骤,可以根据需要采用不同的方式,在需要进行链路扩容的场景中,实现同种类型的两个接口或者不同类型的两个接口进行交换。
步骤504:根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
步骤504的具体实现方式可参见上述实施例,此处不再赘述。
上述方案,在进行双向切换时,可以确定两个虚接口切换后分别映射的实接口,并为两个虚接口直接各自配置映射的实接口的私有数据,这样就能准确地用切换后映射的实接口的私有数据替换当前的第一私有数据,完成双向切换;也可以将两个虚接口映射的第一私有数据直接进行交换,从而方便、快捷地完成双向切换。
图6为本发明实施例提供的又一种接口切换方法示意图,该实施例在上述实施例的基础上,所述切换类型包括单向切换,如图6所示,具体包括以下步骤:
步骤601:根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据。
步骤601与上述步骤201的实现方式相同,此处不再赘述。
步骤602:通过所述虚接口层查找配置确定的所述第一私有数据的虚接口。
示例性的,在实接口坏掉了或者要改变实接口的形态,例如该实接口作为交换机等场景中,这个实接口是空的,此时需要进行单向切换。
进行单向切换时,目标虚接口只有一个,即只有这个虚接口有确定的第一私有数据,当前配置了确定的第一私有数据的虚接口,切换后映射空的实接口,因此需要删除该虚接口当前配置的第一私有数据,基于此,需要首先查找配置确定的第一私有数据的虚接口。
本实施例对查找配置确定的第一私有数据的虚接口的方式不做限定,例如在获取该虚接口标识的情况下,可以直接确定该虚接口;在获取实接口标识的情况下,可以通过遍历链表,确定该虚接口,具体可见上述实施例,此处不再赘述。
步骤603:通过所述虚接口层删除所述目标虚接口当前配置的第一私有数据,以及将查找到的虚接口配置的第一私有数据切换到所述目标虚接口。
示例性的,查找到的虚接口切换后映射空的实接口,而目标虚接口确定的第一私有数据为查找到的虚接口当前配置的第一私有数据,可以删除目标虚接口当前配置的第一私有数据,并将查找到的虚接口当前配置的第一私有数据切换到目标虚接口,此时查找到的虚接口就没有配置的第一私有数据了,被转移到了目标虚接口。
此外,在切换前实接口就坏掉了或者已经改变了实接口的形态,还是进行双向切换。示例性的,目标虚接口包括第三虚接口和第四虚接口;第三虚接口切换后映射的为第三实接口,当前映射的为空实接口;第二虚接口切换后映射的为空实接口,当前映射的为第三实接口在这种情况下就不执行步骤501-502,而是直接用第三实接口的第一私有数据替换第三虚接口当前配置的第一私有数据,并用空实接口的第一私有数据替换第四虚接口当前配置的第一私有数据;或者直接将两个目标虚接口当前配置的第一私有数据进行交换。
步骤604:根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
步骤604的具体实现方式可参见上述实施例,此处不再赘述。
上述方案,通过查找配置确定的第一私有数据的虚接口,删除目标虚接口当前配置的第一私有数据,并将查找到的虚接口配置的第一私有数据切换到目标虚接口,使目标虚接口配置确定的第一私有数据,并使查找到的虚接口映射空实接口,从而在实接口坏掉了或者要改变实接口的形态等场景中实现接口的单向切换。
图7为本发明实施例提供的又一种接口切换方法示意图,该实施例在上述实施例的基础上,所述虚接口层包括的虚接口分为可切换的虚接口和不可切换的虚接口,如图7所示,具体包括以下步骤:
步骤701:根据接收到的接口切换指令,从所述可切换的虚接口中确定进行接口切换的目标虚接口。
因为可切换的虚接口与对应的业务强绑定,可能会把某些可切换的虚接口加到桥中,或者某些防火墙配置限制上述对应的业务的报文的转发。而这时如果有除上述对应的业务之外的其他业务,绕过上述限制收发报文,则需要同步所有业务,临时关闭规则,实现过程较为复杂,本实施例通过设置不可切换的虚接口,其不受可切换的虚接口所对应的业务限制,因此可以不更改业务配置的情形下,直接收发报文。其中,本实施例对上述可切换的虚接口和不可切换的虚接口不做限定,例如:可切换的虚接口为WAN虚接口、LAN虚接口;不可切换的虚接口为虚拟以太网(Virtual Ethereum,简称VETH)接口,在WAN检测时,可以通过VETH接口,在不更改业务配置的情形下,实现报文收发。
示例性的,上述不可切换的虚接口不进行接口切换,因此与实接口的映射关系是固定的,同时该实接口映射着可切换的虚接口,也就是说一个实接口与两个虚接口映射,实接口在实际收发报文时,可以通过开关切换实际使用的虚接口。
步骤702:用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
可选地,所述方法还包括:
步骤703:在切换完成后,将所述可切换的虚接口与映射的实接口,以及不可切换的虚接口与映射的实接口通知给所述业务层。
如上所述,通过虚接口,对业务层及用户屏蔽了业务相关的实接口实现,在切换完成后,将可切换的虚接口与映射的实接口,以及不可切换的虚接口与映射的实接口通知给业务层,用户能够获知虚接口和实接口的对应关系。此外,由于不可切换的虚接口和实接口的映射关系是固定的,可以在业务层预设不可切换的虚接口和实接口的映射关系,虚接口层在切换完成后,只用将的可切换的虚接口和不可切换的虚接口的映射关系通知给业务层,用户也能够获知虚接口和实接口的映射关系。图8为本发明实施例提供的一种映射关系示意图,如图8所示,可切换的WAN虚接口映射不可切换的第一VETH虚接口,可切换的LAN虚接口映射不可切换的第二VETH虚接口。
图9a为本发明实施例提供的一种报文传输方法示意图,图9b为本发明实施例提供的另一种报文传输方法示意图,均应用于网关设备,所述网关设备包括实接口层、业务层,以及位于实接口层和业务层之间的虚接口层;所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息,如图9a所示,所述方法包括以下步骤:
步骤901:通过所述业务层向所述虚接口层发送第一报文。
示例性的,上述实接口的接口特性信息包括但不限于以下的一项或者多项:实接口标识、实接口指针、状态信息、发送能力等。例如:
实接口的接口特性信息包括状态信息,如连接状态、注册状态等,映射的虚接口可以将该状态信息转为自己的状态,并通知给业务层,这样,业务层可以在发送前先根据虚接口的状态,判断能否进行报文发送。
步骤902:通过所述虚接口层确定接收到的所述业务层的第一报文对应的目标虚接口,并根据所述目标虚接口配置的第一私有数据,向映射的实接口发送所述第一报文。
示例性的,上述实接口的接口特性信息包括但不限于以下的一项或者多项:实接口标识、实接口指针、状态信息、发送能力等。例如:
实接口的接口特性信息包括发送能力,如最大传输单元(Maximum TransmissionUnit,MTU)等,映射的虚接口可以根据该发送能力作为自己的发送能力上限,并在不超过发送能力上限的基础上传输报文。如图9b所示,所述方法包括以下步骤:
步骤903:通过所述实接口层确定接收到的其他端口的第二报文对应的目标实接口,并根据所述链表确定所述目标实接口映射的虚接口,以使映射的虚接口接收所述第二报文。
示例性的,实接口层根据其他端口的第二报文携带的实接口参数,确定收包的实接口,通过遍历链表,确定该实接口映射的虚接口,以使映射的虚接口接收所述第二报文。
可选地,所述实接口与虚接口的映射关系为实接口的接口标识和虚接口的第二私有数据之间的映射关系;
其中,所述第二私有数据包括对应的虚接口的属性信息。
上述虚接口的属性信息包括但不限于虚接口标识、虚接口参数、虚接口的地址、虚接口收包函数中的任意一项或者几项。
示例性的,实接口层通过遍历链表,就能找到该实接口的标识所对应的第二私有数据,根据第二私有数据对应的虚接口的属性信息,就能向映射的虚接口发送数据。例如:实接口遍历链表,确定映射的虚接口的第二私有数据,获取虚接口参数和虚接口收包函数,将第二报文中的实接口参数修改为映射的虚接口参数,并调用该虚接口的收包函数,从而使映射的虚接口接收第二报文。
步骤904:通过所述虚接口层向业务层发送所述第二报文。
上述方法,在业务层向实接口层发送报文时,是业务层直接向虚接口层发送第一报文;虚接口层确定对应的虚接口,并根据该虚接口配置的第一私有数据,向映射的实接口发送第一报文;在实接口层向业务层发送报文时,实接口层确定第二报文对应的实接口,并根据链表确定映射的虚接口,以使映射的虚接口接收第二报文;虚接口层向业务层发送第二报文。不管是业务层向实接口层发送报文,还是实接口层向业务层发送报文,在进行接口切换后,虚接口与业务的之间的对应关系并未发生变化,业务层不会感知到切口发生了切换,业务层还是会直接向虚接口层发送报文,或者接受虚接口层发送的报文,进而能够避免切口切换时业务功能状态异常,和大量代码逻辑的修改。
如图10所示,本发明实施例还提供一种网关设备的结构示意图,所述网关设备1000包括:处理器1001和至少两个接口1002,所述处理器1001通过位于实接口层和业务层之间的虚接口层进行接口切换,所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关设备1000配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息;
所述处理器1001通过所述虚接口层进行接口切换时具体用于:
根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
可选地,所述实接口与虚接口的映射关系为实接口的接口标识和虚接口的第二私有数据之间的映射关系;
其中,所述第二私有数据包括对应的虚接口的属性信息。
可选地,所述通过所述虚接口层用确定的所述第一私有数据替换所述虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据。
可选地,所述切换类型包括双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;
所述通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
可选地,所述切换类型包括单向切换;
所述通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层查找配置确定的所述第一私有数据的虚接口;
通过所述虚接口层删除所述目标虚接口当前配置的第一私有数据,以及将查找到的虚接口配置的第一私有数据切换到所述目标虚接口。
可选地,所述虚接口层包括的虚接口分为可切换的虚接口和不可切换的虚接口:
所述根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口,包括:
根据接收到的接口切换指令,从所述可切换的虚接口中确定进行接口切换的目标虚接口。
可选地,所述处理器通过所述虚接口层进行接口切换时还用于:
在切换完成后,通过所述虚接口层将所述可切换的虚接口与映射的实接口,以及不可切换的虚接口与映射的实接口通知给所述业务层。
由于该设备即是本发明实施例中的接口切换方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。
本发明实施例还提供另一种网关设备,所述网关包括处理器和至少两个接口;所述处理器通过实接口层、业务层,以及位于实接口层和业务层之间的虚接口层进行报文传输;所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关配置有供所述实接口调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息;
所述处理器通过实接口层、业务层,以及虚接口层进行报文传输时,具体用于:
通过所述业务层向所述虚接口层发送第一报文;以及
通过所述虚接口层确定接收到的所述业务层的第一报文对应的目标虚接口,并根据所述目标虚接口配置的第一私有数据,向映射的实接口发送所述第一报文;
或者
通过所述实接口层确定接收到的其他端口的第二报文对应的目标实接口,并根据所述链表确定所述目标实接口映射的虚接口,以使映射的虚接口接收所述第二报文;以及
通过所述虚接口层向业务层发送所述第二报文。
由于该设备即是本发明实施例中的报文传输方法中的设备,并且该设备解决问题的原理与该方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。
如图11所示,本发明实施例还提供一种接口切换装置的结构示意图,该接口切换装置1100包括:确定模块1101和处理模块1102。
确定模块1101,用于根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
处理模块1102,用于通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系。
可选地,所述实接口与虚接口的映射关系为实接口的接口标识和虚接口的第二私有数据之间的映射关系;
其中,所述第二私有数据包括对应的虚接口的属性信息。
可选地,所述处理模块1102通过所述虚接口层用确定的所述第一私有数据替换所述虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据。
可选地,所述切换类型包括双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;
所述处理模块1102通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
可选地,所述切换类型包括单向切换;
所述处理模块1102通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层查找配置确定的所述第一私有数据的虚接口;
通过所述虚接口层删除所述目标虚接口当前配置的第一私有数据,以及将查找到的虚接口配置的第一私有数据切换到所述目标虚接口。
可选地,所述虚接口层包括的虚接口分为可切换的虚接口和不可切换的虚接口:
所述确定模块1101根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口,包括:
根据接收到的接口切换指令,从所述可切换的虚接口中确定进行接口切换的目标虚接口。
可选地,在切换完成后,所述处理模块1102还用于通过所述虚接口层将所述可切换的虚接口与映射的实接口,以及不可切换的虚接口与映射的实接口通知给所述业务层。
如图12所示,本发明实施例还提供一种报文传输装置的结构示意图,该报文传输装置1200包括:第一处理模块1201和第二处理模块1202。
第一处理模块1201,用于通过所述业务层向所述虚接口层发送第一报文;以及
通过所述虚接口层确定接收到的所述业务层的第一报文对应的目标虚接口,并根据所述目标虚接口配置的第一私有数据,向映射的实接口发送所述第一报文;
第二处理模块1202,用于通过所述实接口层确定接收到的其他端口的第二报文对应的目标实接口,并根据所述链表确定所述目标实接口映射的虚接口,以使映射的虚接口接收所述第二报文;以及
通过所述虚接口层向业务层发送所述第二报文。
本发明实施例还提供一种计算机可读非易失性存储介质,包括程序代码,当所述程序代码在计算终端上运行时,所述程序代码用于使所述计算终端执行上述本发明实施例接口切换方法或者报文传输的步骤。
以上参照示出根据本申请实施例的方法、装置(***)和/或计算机程序产品的框图和/或流程图描述本申请。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个块以及框图和/或流程图示图的块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机的处理器和/或其它可编程数据处理装置,以产生机器,使得经由计算机处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。
相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本申请。更进一步地,本申请可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行***来使用或结合指令执行***而使用。在本申请上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行***、装置或设备使用,或结合指令执行***、装置或设备使用。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (8)
1.一种接口切换方法,其特征在于,应用于网关设备,所述网关设备包括实接口层、业务层,以及位于所述实接口层和所述业务层之间的虚接口层;所述虚接口层包括与所述业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息;
所述方法包括:
根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系;
所述通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;
若所述切换类型为双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者,
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
2.如权利要求1所述的方法,其特征在于,所述实接口与虚接口的映射关系为实接口的接口标识和虚接口的第二私有数据之间的映射关系;
其中,所述第二私有数据包括对应的虚接口的属性信息。
3.如权利要求1所述的方法,其特征在于,若所述切换类型为单向切换;
所述通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层查找配置确定的所述第一私有数据的虚接口;
通过所述虚接口层删除所述目标虚接口当前配置的第一私有数据,以及将查找到的虚接口配置的第一私有数据切换到所述目标虚接口。
4.如权利要求1~3任一所述的方法,其特征在于,所述虚接口层包括的虚接口分为可切换的虚接口和不可切换的虚接口:
所述根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口,包括:
根据接收到的接口切换指令,从所述可切换的虚接口中确定进行接口切换的目标虚接口。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
在切换完成后,通过所述虚接口层将所述可切换的虚接口与映射的实接口,以及不可切换的虚接口与映射的实接口通知给所述业务层。
6.一种报文传输方法,其特征在于,所述方法应用于网关设备,所述网关设备包括实接口层、业务层,以及位于实接口层和业务层之间的虚接口层;所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息,该方法包括:
通过所述业务层向所述虚接口层发送第一报文;以及通过所述虚接口层确定接收到的所述业务层的第一报文对应的目标虚接口,并根据所述目标虚接口配置的第一私有数据,向映射的实接口发送所述第一报文;
或者,
通过所述实接口层确定接收到的其他端口的第二报文对应的目标实接口,并根据所述链表确定所述目标实接口映射的虚接口,以使映射的虚接口接收所述第二报文;以及通过所述虚接口层向业务层发送所述第二报文;
通过以下方式更新虚接口配置的第一私有数据以及所述链表中的映射关系:
根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系;
所述通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;
若所述切换类型为双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者,
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
7.一种网关设备,其特征在于,所述网关设备包括处理器和至少两个接口;
所述处理器通过位于实接口层和业务层之间的虚接口层进行接口切换,所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关设备配置有可调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息;
所述处理器通过所述虚接口层进行接口切换时具体用于:
根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
通过所述虚接口层,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系;
所述处理器通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;
若所述切换类型为双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;所述处理器通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者,
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
8.一种网关设备,其特征在于,所述网关包括处理器和至少两个接口;所述处理器通过实接口层、业务层,以及位于所述实接口层和所述业务层之间的虚接口层进行报文传输,所述虚接口层包括与业务层中的业务对应的至少两个虚接口,所述网关配置有供所述实接口调用的链表,所述链表包含实接口与虚接口的映射关系,所述虚接口配置有映射的实接口的第一私有数据,所述第一私有数据包括对应的实接口的接口特性信息;
所述处理器通过实接口层、业务层,以及虚接口层进行报文传输时,具体用于:
通过所述业务层向所述虚接口层发送第一报文;以及通过所述虚接口层确定接收到的所述业务层的第一报文对应的目标虚接口,并根据所述目标虚接口配置的第一私有数据,向映射的实接口发送所述第一报文;
或者,
通过所述实接口层确定接收到的其他端口的第二报文对应的目标实接口,并根据所述链表确定所述目标实接口映射的虚接口,以使映射的虚接口接收所述第二报文;以及通过所述虚接口层向业务层发送所述第二报文;
通过以下方式更新虚接口配置的第一私有数据以及所述链表中的映射关系:
根据接收到的接口切换指令,确定需要进行接口切换的目标虚接口以及切换后所述目标虚接口映射的实接口的第一私有数据;
通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;以及根据确定的所述第一私有数据的实接口和所述需要进行接口切换的目标虚接口更新所述链表包含的实接口与虚接口的映射关系;
所述通过所述虚接口层用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据;
若所述切换类型为双向切换,所述目标虚接口包括第一虚接口和第二虚接口;所述第一虚接口切换后映射的实接口为第一实接口;所述第二虚接口切换后映射的实接口为第二实接口;
通过所述虚接口层基于所述接口切换的切换类型,用确定的所述第一私有数据替换所述目标虚接口当前配置的第一私有数据,包括:
通过所述虚接口层用所述第一实接口的第一私有数据替换所述第一虚接口当前配置的第一私有数据;并用所述第二实接口的第一私有数据替换所述第二虚接口当前配置的第一私有数据;或者,
若所述第一虚接口当前配置第二实接口的第一私有数据,所述第二虚接口当前配置第一实接口的第一私有数据,则通过所述虚接口层将所述第一虚接口当前配置的第一私有数据和所述第二虚接口当前配置的第一私有数据进行交换。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010342825.7A CN111585796B (zh) | 2020-04-27 | 2020-04-27 | 一种接口切换、报文传输方法和网关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010342825.7A CN111585796B (zh) | 2020-04-27 | 2020-04-27 | 一种接口切换、报文传输方法和网关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111585796A CN111585796A (zh) | 2020-08-25 |
CN111585796B true CN111585796B (zh) | 2022-06-21 |
Family
ID=72125417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010342825.7A Active CN111585796B (zh) | 2020-04-27 | 2020-04-27 | 一种接口切换、报文传输方法和网关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111585796B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115842869B (zh) * | 2022-11-23 | 2024-07-12 | 浙江省通信产业服务有限公司 | 一种基于物联网的数字乡村管理方法、装置及控制*** |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179477A (zh) * | 2006-11-10 | 2008-05-14 | 中国科学院声学研究所 | 一种实现嵌入式路由器的方法 |
WO2009074080A1 (fr) * | 2007-11-30 | 2009-06-18 | Huawei Technologies Co., Ltd. | Méthode, appareil et système de configuration d'un réseau virtuel et commutateur de partitions |
CN103812746A (zh) * | 2012-11-14 | 2014-05-21 | 深圳市共进电子股份有限公司 | 基于linux操作***的桥接设备及其通信方法 |
CN104094637A (zh) * | 2012-12-31 | 2014-10-08 | 华为技术有限公司 | 用户设备及异构网络切换的方法 |
CN107612702A (zh) * | 2016-07-12 | 2018-01-19 | 中兴通讯股份有限公司 | 一种路由器配置方法及装置 |
CN110190993A (zh) * | 2019-05-22 | 2019-08-30 | 青岛海信宽带多媒体技术有限公司 | 一种网络设备异常诊断方法、装置及计算机设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102350433B1 (ko) * | 2014-03-07 | 2022-01-11 | 패러렐 와이어리스, 인크. | 연합 x2 게이트웨이 |
-
2020
- 2020-04-27 CN CN202010342825.7A patent/CN111585796B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179477A (zh) * | 2006-11-10 | 2008-05-14 | 中国科学院声学研究所 | 一种实现嵌入式路由器的方法 |
WO2009074080A1 (fr) * | 2007-11-30 | 2009-06-18 | Huawei Technologies Co., Ltd. | Méthode, appareil et système de configuration d'un réseau virtuel et commutateur de partitions |
CN103812746A (zh) * | 2012-11-14 | 2014-05-21 | 深圳市共进电子股份有限公司 | 基于linux操作***的桥接设备及其通信方法 |
CN104094637A (zh) * | 2012-12-31 | 2014-10-08 | 华为技术有限公司 | 用户设备及异构网络切换的方法 |
CN107612702A (zh) * | 2016-07-12 | 2018-01-19 | 中兴通讯股份有限公司 | 一种路由器配置方法及装置 |
CN110190993A (zh) * | 2019-05-22 | 2019-08-30 | 青岛海信宽带多媒体技术有限公司 | 一种网络设备异常诊断方法、装置及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111585796A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10958525B2 (en) | Network slice management method and apparatus | |
CN111031080B (zh) | 报文传输方法及装置 | |
EP3585095B1 (en) | Method and device for controlling qos, smf, upf, ue, pcf and an | |
US11894937B2 (en) | Local user plane function control | |
CN109361600B (zh) | 一种获取路径标识的方法和设备 | |
CN109768908B (zh) | 一种vxlan的配置方法、设备及*** | |
US11134009B2 (en) | Packet processing method and apparatus | |
US11800587B2 (en) | Method for establishing subflow of multipath connection, apparatus, and system | |
CN105874756B (zh) | 控制信令的传输方法及设备 | |
US9755909B2 (en) | Method, device and system for controlling network path | |
WO2021147358A1 (zh) | 一种网络接口的建立方法、装置及*** | |
JP2019519146A (ja) | ルーティング確立、パケット送信 | |
US11929851B2 (en) | Gateway selection method, device, and system | |
CN107566277B (zh) | 拓扑确定方法、消息响应方法、控制器以及交换机 | |
CN111585796B (zh) | 一种接口切换、报文传输方法和网关设备 | |
WO2016119269A1 (zh) | 一种业务流数据包的处理方法及装置 | |
EP1704696B1 (en) | Method and system for handling context of data packet flows | |
EP4395253A1 (en) | Routing method and apparatus, cloud resource registration method and apparatus, storage medium, and electronic apparatus | |
CN113285877A (zh) | 一种报文转发的控制方法及相关装置 | |
CN114915519A (zh) | 通信方法和通信装置 | |
CN108259292B (zh) | 建立隧道的方法及装置 | |
CN114866510B (zh) | 一种基于InfiniBand网络的跨网异地互联通信方法及*** | |
WO2023246118A1 (zh) | 报文的转发方法、装置、存储介质及电子装置 | |
WO2024140314A1 (zh) | 服务感知网络用户引流、流量工程实现方法及装置 | |
CN115529114A (zh) | 一种信息传输方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |