[发明专利]一种以太网口数据包带VLAN ID的方法有效
申请号: | 201310533785.4 | 申请日: | 2013-10-31 |
公开(公告)号: | CN103634190B | 公开(公告)日: | 2018-09-28 |
发明(设计)人: | 胡雄 | 申请(专利权)人: | 上海斐讯数据通信技术有限公司 |
主分类号: | H04L12/46 | 分类号: | H04L12/46;G06F9/44 |
代理公司: | 杭州千克知识产权代理有限公司 33246 | 代理人: | 周希良 |
地址: | 201616 上海市松江*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 以太网 数据包 vlan id 方法 | ||
一种以太网口数据包带VLAN ID的方法。步骤1:应用程序调用VLAN应用接口模块,设置VLAN信息;步骤2:所述VLAN应用接口模块将VLAN信息发送给VLAN内核模块;步骤3:所述VLAN内核模块判断数据包源端口是否在允许设VLAN的端口列表里;步骤4:若数据包源端口在允许设VLAN的端口列表里,则所述VLAN内核模块将VLAN ID加到所述数据包中并发送到网卡驱动。采用本发明方法后,通过纯软件的方式实现以太网口数据包带VLANID,不需要依赖于具体的硬件平台,能够避免不同厂商必须通过设置寄存器的方式实现VLAN功能,具有更高的可通用性和可移植性,也可以提高软件研发速度和减少重复性工作。
技术领域
本发明涉及路由器技术领域,特别是涉及一种以太网口数据包带VLAN ID的方法。
背景技术
目前众多路由器厂商,为了满足终端设备不同的业务需求,有时候需要把以太网口带上不同的VLAN ID,来区分不同的业务,然后把数据包上传到上层设备。
传统以太网口带VLAN ID的方式,是通过设置交换芯片的寄存器值来实现,这种方法依赖于具体的硬件,故不具备可移植性和重用性,当我们需要在另一款不同厂家的芯片上实现以太网带VLAN ID的需求时,就必须重新读相关的数据手册,才能实现功能。
发明内容
如背景技术所述,现有以太网口带VLAN ID依赖于具体硬件实现,不具备可移植性和重用性。
基于此,有必要提供一种以太网口数据包带VLAN ID的方法,包括:
步骤1:应用程序调用VLAN应用接口模块,设置VLAN信息;
步骤2:所述VLAN应用接口模块将VLAN信息发送给VLAN内核模块;
步骤3:所述VLAN内核模块判断数据包源端口是否在允许设VLAN的端口列表里;
步骤4:若数据包源端口在允许设VLAN的端口列表里,则所述VLAN内核模块将VLANID加到所述数据包中并发送到网卡驱动。
优选的,所述VLAN信息包括VLAN ID,允许设VLAN的端口列表。
优选的,还包括:
若数据包源端口不在允许设VLAN的端口列表里,则所述VLAN内核模块 直接将数据包发送到网卡驱动。
优选的,若所述数据包源端口在允许设VLAN的端口列表里时,在所述VLAN内核模块将VLAN ID加到所述数据包中并发送到网卡驱动之前还包括:
VLAN内核模块判断数据包源端口是否开启了VLAN功能;
若数据包源端口开启了VLAN功能,则所述VLAN内核模块将VLAN ID加到所述数据包中并发送到网卡驱动。
优选的,还包括:
若数据包源端口没有开启VLAN功能,则所述VLAN内核模块直接将数据包发送到网卡驱动。
采用本发明方法后,通过纯软件的方式实现以太网口数据包带VLAN ID,不需要依赖于具体的硬件平台,能够避免不同厂商必须通过设置寄存器的方式实现VLAN功能,具有更高的可通用性和可移植性,也可以提高软件研发速度和减少重复性工作。
附图说明
图1为本发明提供的一个实施例的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更清楚明白,以下结合附图及实施例,对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海斐讯数据通信技术有限公司,未经上海斐讯数据通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310533785.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:半导体装置及其制造方法
- 下一篇:输出级电路、AB类放大器及电子设备