[发明专利]虚拟路由装置的控制平面结构及其控制方法有效
申请号: | 201110185315.4 | 申请日: | 2011-07-04 |
公开(公告)号: | CN102231709A | 公开(公告)日: | 2011-11-02 |
发明(设计)人: | 杨懋;刘中金;李勇;苏厉;金德鹏;曾烈光 | 申请(专利权)人: | 清华大学 |
主分类号: | H04L12/56 | 分类号: | H04L12/56 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
地址: | 100084 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟 路由 装置 控制 平面 结构 及其 方法 | ||
1.一种虚拟路由装置的控制平面结构,其特征在于,包括主机控制单元和多个虚拟机单元;
所述主机控制单元用于实现用户交互、对数据平面和虚拟机单元进行管理和控制,并周期性更新数据平面中的路由表和ARP表;
所述虚拟机单元用于实现路由协议处理和数据包处理的功能,并实时产生、更新路由表和ARP表,提供给主机控制单元。
2.如权利要求1所述的虚拟路由装置的控制平面结构,其特征在于,所述主机控制单元包括管理配置模块。
3.如权利要求1所述的虚拟路由装置的控制平面结构,其特征在于,所述虚拟机单元包括路由协议模块和数据包处理模块。
4.如权利要求1所述的虚拟路由装置的控制平面结构,其特征在于,所述虚拟路由装置包括可编程硬件和主机,可编程硬件用于实现数据平面部分功能,负责数据包转发。
5.如权利要求4所述的虚拟路由装置的控制平面结构,其特征在于,所述数据平面包括所述可编程硬件中的数据包转发控制模块,以及存储在所述可编程硬件的寄存器中的路由表、ARP表和端口表,且所述数据平面与所述虚拟机单元一一对应。
6.如权利要求1所述的虚拟路由装置的控制平面结构,其特征在于,所述虚拟机单元包括N张虚拟网卡,所述N张虚拟网卡通过网桥分别桥接到所述可编程硬件的N个CPU队列上。
7.如权利要求4-6所述的虚拟路由装置的控制平面结构,其特征在于,所述可编程硬件为FPGA。
8.一种利用权利要求1-6中任一项所述的虚拟路由装置的控制结构对虚拟路由装置进行控制的方法,其特征在于,包括以下步骤:
S1:主机根据需求创建虚拟机单元并分配资源;
S2:主机以创建软件桥的方式将虚拟机单元的虚拟网卡分别和可编程硬件的CPU队列桥接起来;
S3:主机对所述可编程硬件中的数据平面进行初始化配置;
S4:虚拟机单元判断接收到的数据包为路由数据包还是异常数据包,若为路由数据包,则选择路由协议进行处理,将得到的路由表更新到数据平面;若为异常数据包,执行步骤S5-S9;
S5:判断数据包格式为VLAN格式还是普通格式,对于VLAN格式的包核对其VLAN标签是否匹配,若不匹配,则丢弃;
S6:判断数据包的类型为ARP类型包还是IP类型包;
S7:对于ARP类型数据包,执行步骤S8;对于IP类型数据包,执行步骤S9;
S8:若是ARP应答包,则根据应答信息来更新ARP表,并更新ARP表文件提供给主机;若是ARP请求包,则查询其端口号是否匹配,若匹配则返回ARP请求包;否则弃包;
S9:查询路由表,若匹配不到路由表,则向源地址返回ICMP目标不可达信令;若匹配到了路由表项但没有找到相应的端口,则需要发起ARP请求来查询;若匹配到了路由表也匹配到了端口,则通知数据平面更新路由表和端口表;
S10:主机通过定时器,周期性地从虚拟机单元中读取各控制平面最新的路由表和ARP表,并将其更新到相应的数据平面中去。
9.如权利要求8所述的虚拟路由装置控制方法,其特征在于,所述步骤S9中所述查询路由表,指查询路由数据包处理过程中路由协议所生成的路由表。
10.如权利要求8所述的虚拟路由装置控制方法,其特征在于,所述步骤S3进一步包括:主机通过PCI总线对可编程硬件进行配置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110185315.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:便携式电子装置及其芯片卡卡持装置
- 下一篇:一种恢复设备默认配置的方法和系统