CN107707481A - 基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法 - Google Patents
基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法 Download PDFInfo
- Publication number
- CN107707481A CN107707481A CN201711206709.7A CN201711206709A CN107707481A CN 107707481 A CN107707481 A CN 107707481A CN 201711206709 A CN201711206709 A CN 201711206709A CN 107707481 A CN107707481 A CN 107707481A
- Authority
- CN
- China
- Prior art keywords
- pon
- utag
- vnet
- routers
- support
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/58—Association of routers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明涉及一种基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其中该方法包括虚拟接口的预处理、收包处理和发包处理过程。采用该发明的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,可实现一同时支持WAN连接的Utag和Tag的数据模型,进一步扩大了路由器的多业务环境。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及家用路由器技术领域,具体是指一种基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法。
背景技术
在家用路由器中,会需要多Wan连接的情况,以及同时支持Tag和Utag的情况,根据Vnet的原理,使用Vconfig等Linux工具,设计一种同时支持Wan口连接Tag和Utag的数据模型。
发明内容
本发明的目的是克服了上述现有技术的缺点,提供了一种能够实现多业务环境的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法。
为了实现上述目的,本发明的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法具有如下构成:
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其主要特点是,所述的方法以下步骤:
(1)虚拟接口的预处理;
(2)内核的收包处理,包括以下步骤:
(2.1)判断下行的数据包是否带Tag,若带Tag,则进入步骤(2.2),否则进入步骤(2.5);
(2.2)查找是否存在与所述下行的数据包相对应的虚拟接口,若存在,则进入步骤(2.3),否则进入步骤(2.4);
(2.3)转到相对应的虚拟接口并对所述下行的数据包进行处理;
(2.4)根据洪范协议对所述下行的数据包进行处理;
(2.5)根据相关命令对所述下行的数据包进行处理;
(3)内核的发包处理,包括以下步骤:
(3.1)查找相对应的Vlan设备;
(3.2)将上行的数据包发送至Pon驱动;
(3.3)所述的Pon驱动发送所述上行的数据包,以完成发包。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1)包括以下步骤:
(1.1)由路由设备建立第一路由以连接Wan1,同时发送Vconfig命令在实际网络设备创建第一虚拟接口Pon.1;
(1.2)由所述的路由设备建立第二路由以连接Wan2,同时发送vconfig add ponvlan命令在所述的实际网络设备创建第二虚拟接口Pon.Vlan,并发送一配置命令,以给所述的第二虚拟接口Pon.Vlan配置一第三虚拟接口Pon.2。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.1)中,所述的第一虚拟接口Pon.1在实际网络设备中的Pon接口上创建。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.1)中,所述的第一虚拟接口Pon.1为三层接口。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.2)中,所述的第二虚拟接口Pon.Vlan为二层接口。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.2)中,所述的第三虚拟接口Pon.2为三层接口。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.2)中,所述的配置命令为vnetconfig add pon.2pon.vlan命令。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(2.2)中,所述的虚拟接口为Pon.Vlan虚拟接口。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(2.5)中,所述的命令包括Pon命令和dev->ifindex命令。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(3.1)具体为:
根据Vlan发包函数vlan_dev_hard_start_xmit()来查找相对应的Vlan设备。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(3.2)具体为:
根据dev_queue_xmit函数将所述上行的数据包发送至所述的Pon驱动。
采用了该发明中的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,通过虚拟接口的预处理、收包处理以及发包处理过程,可实现一同时支持WAN连接的Utag和Tag的数据模型,进一步扩大了路由器的多业务环境。
附图说明
图1为本发明的基于VNET路由器的支持Tag和Utag的Wan口数据模型的原理图。
具体实施方式
为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其主要特点是,所述的方法以下步骤:
(1)虚拟接口的预处理;
(2)内核的收包处理,包括以下步骤:
(2.1)判断下行的数据包是否带Tag,若带Tag,则进入步骤(2.2),否则进入步骤(2.5);
(2.2)查找是否存在与所述下行的数据包相对应的虚拟接口,若存在,则进入步骤(2.3),否则进入步骤(2.4);
(2.3)转到相对应的虚拟接口并对所述下行的数据包进行处理;
(2.4)根据洪范协议对所述下行的数据包进行处理;
(2.5)根据相关命令对所述下行的数据包进行处理;
(3)内核的发包处理,包括以下步骤:
(3.1)查找相对应的Vlan设备;
(3.2)将上行的数据包发送至Pon驱动;
(3.3)所述的Pon驱动发送所述上行的数据包,以完成发包。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1)包括以下步骤:
(1.1)由路由设备建立第一路由以连接Wan1,同时发送Vconfig命令在实际网络设备创建第一虚拟接口Pon.1;
(1.2)由所述的路由设备建立第二路由以连接Wan2,同时发送vconfig add ponvlan命令在所述的实际网络设备创建第二虚拟接口Pon.Vlan,并发送一配置命令,以给所述的第二虚拟接口Pon.Vlan配置一第三虚拟接口Pon.2。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.1)中,所述的第一虚拟接口Pon.1在实际网络设备中的Pon接口上创建。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.1)中,所述的第一虚拟接口Pon.1为三层接口。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.2)中,所述的第二虚拟接口Pon.Vlan为二层接口。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.2)中,所述的第三虚拟接口Pon.2为三层接口。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(1.2)中,所述的配置命令为vnetconfig add pon.2pon.vlan命令。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(2.2)中,所述的虚拟接口为Pon.Vlan虚拟接口。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(2.5)中,所述的命令包括Pon命令和dev->ifindex命令。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(3.1)具体为:
根据Vlan发包函数vlan_dev_hard_start_xmit()来查找相对应的Vlan设备。
该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法的步骤(3.2)具体为:
根据dev_queue_xmit函数将所述上行的数据包发送至所述的Pon驱动。
在实际应用中,Utag的WAN连接,直接在实际设备Pon上虚拟一个接口名Pon.1;带tag的WAN连接现在Pon口上采用vconfig add pon vlan虚拟一个二层接口Pon.vlan,同时用vnetconfig add pon.2pon.vlan,给Pon.vlan配置一个三层虚拟接口Pon.2。
在实际应用中,处理WAN口收包的过程是,实际设备Pon的驱动调用收包函数netif_receive_skb(),此函数调用Vlan设备处理函数vnet_skb_recv(),vnet_skb_recv()根据是否存在对应的Vlan设备,存在则转到对应的vlan设备进行处理,不存在的则进行洪范;而utag的wan连接,则直接查找pon上对应的虚拟设备。
在实际应用中,该基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法中,首先由路由器建立一条路由WAN连接WAN1,用vconfig在实际网络设备PON接口上直接虚拟一个三层接口pon.1;其次由路由器建立第二条路由WAN连接WAN2,VALN为VLAN1,用vconfig在PON接口上直接虚拟一个接口pon.VLAN1,同时虚拟一个三层接口名pon.2;第三步内核处理下行相关报文时,判断进来的包是否带tag,如果带tag,先去查找对应的pon.vlan是否存在;如果不带tag,直接根据pon以及dev->ifindex来查找对应的虚拟接口进行处理;第四步内核处理上行相关报文时,调用VLAN发包函数vlan_dev_hard_start_xmit(),找到对应的VLAN设备,调用dev_queue_xmit把包发到驱动里,PON驱动进行发送,完成发包。
采用了该发明中的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,通过虚拟接口的预处理、收包处理以及发包处理过程,可实现一同时支持WAN连接的Utag和Tag的数据模型,进一步扩大了路由器的多业务环境。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
Claims (11)
1.一种基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的方法以下步骤:
(1)虚拟接口的预处理;
(2)内核的收包处理,包括以下步骤:
(2.1)判断下行的数据包是否带Tag,若带Tag,则进入步骤(2.2),否则进入步骤(2.5);
(2.2)查找是否存在与所述下行的数据包相对应的虚拟接口,若存在,则进入步骤(2.3),否则进入步骤(2.4);
(2.3)转到相对应的虚拟接口并对所述下行的数据包进行处理;
(2.4)根据洪范协议对所述下行的数据包进行处理;
(2.5)根据相关命令对所述下行的数据包进行处理;
(3)内核的发包处理,包括以下步骤:
(3.1)查找相对应的Vlan设备;
(3.2)将上行的数据包发送至Pon驱动;
(3.3)所述的Pon驱动发送所述上行的数据包,以完成发包。
2.根据权利要求1所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(1)包括以下步骤:
(1.1)由路由设备建立第一路由以连接Wan1,同时发送Vconfig命令在实际网络设备创建第一虚拟接口Pon.1;
(1.2)由所述的路由设备建立第二路由以连接Wan2,同时发送vconfig add pon vlan命令在所述的实际网络设备创建第二虚拟接口Pon.Vlan,并发送一配置命令,以给所述的第二虚拟接口Pon.Vlan配置一第三虚拟接口Pon.2。
3.根据权利要求2所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(1.1)中,所述的第一虚拟接口Pon.1在实际网络设备中的Pon接口上创建。
4.根据权利要求2所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(1.1)中,所述的第一虚拟接口Pon.1为三层接口。
5.根据权利要求2所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(1.2)中,所述的第二虚拟接口Pon.Vlan为二层接口。
6.根据权利要求2所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(1.2)中,所述的第三虚拟接口Pon.2为三层接口。
7.根据权利要求1所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(1.2)中,所述的配置命令为vnetconfig add pon.2pon.vlan命令。
8.根据权利要求1所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(2.2)中,所述的虚拟接口为Pon.Vlan虚拟接口。
9.根据权利要求1所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(2.5)中,所述的命令包括Pon命令和dev->ifindex命令。
10.根据权利要求1所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(3.1)具体为:
根据Vlan发包函数vlan_dev_hard_start_xmit()来查找相对应的Vlan设备。
11.根据权利要求1所述的基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法,其特征在于,所述的步骤(3.2)具体为:
根据dev_queue_xmit函数将所述上行的数据包发送至所述的Pon驱动。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711206709.7A CN107707481B (zh) | 2017-11-27 | 2017-11-27 | 基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711206709.7A CN107707481B (zh) | 2017-11-27 | 2017-11-27 | 基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107707481A true CN107707481A (zh) | 2018-02-16 |
CN107707481B CN107707481B (zh) | 2020-07-31 |
Family
ID=61180994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711206709.7A Active CN107707481B (zh) | 2017-11-27 | 2017-11-27 | 基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107707481B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109818982A (zh) * | 2019-03-27 | 2019-05-28 | 深圳市吉祥腾达科技有限公司 | 一种提升网络通信设备新建性能的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6515993B1 (en) * | 1999-05-28 | 2003-02-04 | Advanced Micro Devices, Inc. | Method and apparatus for manipulating VLAN tags |
US20080175254A1 (en) * | 2007-01-22 | 2008-07-24 | Alpha Nerworks Inc. | Method of learning address in Virtual LAN system |
CN102769557A (zh) * | 2012-08-09 | 2012-11-07 | 深圳市共进电子股份有限公司 | 一种业务数据报文的传输方法及装置 |
CN103023769A (zh) * | 2013-01-22 | 2013-04-03 | 烽火通信科技股份有限公司 | Onu实现二层广播包和未知包转发的方法 |
CN103078779A (zh) * | 2012-12-28 | 2013-05-01 | 太仓市同维电子有限公司 | 同一接口下基于vlan实现不同上网业务的方法 |
CN104243257A (zh) * | 2013-06-06 | 2014-12-24 | 太仓市同维电子有限公司 | 一种光网络单元通过虚拟端口实现动态分流的方法 |
-
2017
- 2017-11-27 CN CN201711206709.7A patent/CN107707481B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6515993B1 (en) * | 1999-05-28 | 2003-02-04 | Advanced Micro Devices, Inc. | Method and apparatus for manipulating VLAN tags |
US20080175254A1 (en) * | 2007-01-22 | 2008-07-24 | Alpha Nerworks Inc. | Method of learning address in Virtual LAN system |
CN102769557A (zh) * | 2012-08-09 | 2012-11-07 | 深圳市共进电子股份有限公司 | 一种业务数据报文的传输方法及装置 |
CN103078779A (zh) * | 2012-12-28 | 2013-05-01 | 太仓市同维电子有限公司 | 同一接口下基于vlan实现不同上网业务的方法 |
CN103023769A (zh) * | 2013-01-22 | 2013-04-03 | 烽火通信科技股份有限公司 | Onu实现二层广播包和未知包转发的方法 |
CN104243257A (zh) * | 2013-06-06 | 2014-12-24 | 太仓市同维电子有限公司 | 一种光网络单元通过虚拟端口实现动态分流的方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109818982A (zh) * | 2019-03-27 | 2019-05-28 | 深圳市吉祥腾达科技有限公司 | 一种提升网络通信设备新建性能的方法 |
CN109818982B (zh) * | 2019-03-27 | 2021-08-17 | 深圳市吉祥腾达科技有限公司 | 一种提升网络通信设备新建性能的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107707481B (zh) | 2020-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104243270B (zh) | 一种建立隧道的方法和装置 | |
CN103347013B (zh) | 一种增强可编程能力的OpenFlow网络系统和方法 | |
CN104702479B (zh) | Sdn网络中建立隧道的方法和装置 | |
CN107566440A (zh) | 软件定义的网络环境中服务的自动发现和自动扩缩 | |
RU2661768C2 (ru) | Способ воплощения arp, устройство коммутатора и модуль управления | |
CN109361600B (zh) | 一种获取路径标识的方法和设备 | |
US20180077048A1 (en) | Controller, control method and program | |
CN106209553A (zh) | 报文处理方法、设备及系统 | |
CN105162674A (zh) | 一种物理机访问虚拟网络的方法及网卡 | |
CN110430114B (zh) | 一种虚拟路由器及实现sdn网络与传统ip网络互联的方法 | |
CN104125128A (zh) | Linux软桥支持VLAN的方法 | |
CN105052087A (zh) | 一种基于流表的表项寻址方法、交换机及控制器 | |
US20180088972A1 (en) | Controller, control method and program | |
CN103166854B (zh) | 局域网与广域网业务绑定方法及系统 | |
CN103856417A (zh) | 软件定义网络报文转发方法和系统 | |
CN108833232B (zh) | 一种基于VPP的PPPoE客户端实现方法及PPPoE客户端 | |
CN104333475A (zh) | 一种基于sdn的网络拓扑发现方法及系统 | |
CN108390821A (zh) | 一种openflow交换机实现双活的方法及系统 | |
WO2017193848A1 (zh) | 路由建立、报文发送 | |
CN105453513A (zh) | 报文转发方法、转发表项下发方法及网络设备 | |
CN104092684A (zh) | 一种OpenFlow协议支持VPN的方法及设备 | |
CN107707481A (zh) | 基于Vnet路由器的支持Utag和Tag的WAN口的报文处理方法 | |
CN103428252B (zh) | 一种云计算虚拟机迁移的方法、设备及系统 | |
CN106911547B (zh) | 一种报文转发方法及装置 | |
CN106059922B (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 |