一种基于虚拟地址空间的可编程网络设备管理控制方法_2

文档序号:8226059阅读:来源:国知局
[0031]步骤3:解析到请求连接报文,则将提取到源地址,序号等封装成连接响应报文,通过访问控制代理发送给控制端软件,通知连接成功,等待下一报文。
[0032]步骤4:解析到写控制端发送写请求报文即以写入转发策略给CT为例,则提取的CT的虚拟地址空间和写入的转发策略内容,同时将虚拟地址空间值映射到实际物理资源地址空间,将提取写入内容写入地址总线中,CT写成功后访问控制代理提取的序号、源地址等封装成写成功类型的报文回送给控制端,通知下发策略成功。
[0033]步骤5:解析到控制端读请求报文即以读取可编程网络设备SR设备状态为例,则提取报文读请求的虚拟地址空间,映射到实际地址空间,向地址总线读请求,SR返回得到设备状态信息内容,访问控制代理得到状态信息后将提取的序号、源地址和状态信息封装到读响应报文内,将信息传送给控制端软件。
[0034]可编程网络设备硬件通过软件端下发的CT表格如IP,MAC表项,配置的寄存器的内容实现网络设备的转发功能。
[0035]本方法支撑可编程网络中软件与硬件协商开发与修改,且实现复杂和灵活性增强,加大了对新协议的开发部署和添加网络功能的能力。
【附图说明】
[0036]图1是基于FPGA的可编程网络的数据平面示意图;
图2是控制端对虚拟地址访问流程图;
图3是可编程网络设备端实现流程图。
【具体实施方式】
[0037]—种基于虚拟地址空间的可编程网络设备管理控制方法,是软件和硬件开发人员可共同协商的一种硬件资源抽象方法,提供可软件访问控制代理使用,将硬件可编程资源如寄存器,存储器等以虚拟地址空间形式给软件开发者访问,使得控制端根据虚拟地址空间与可编程硬件进行交互,控制管理网络资源。
[0038]基于可编程网络思想,我们将转发平面的资源抽象出来如寄存器,存储器,计数器等,提供给控制平面的类似于计算机内部的“虚拟地址空间”,控制平面读写虚拟地址空间,转发平面组织这些虚拟地址空间形成转发策略。同时,利用中间控制协议使得控制平面与转发平面进行交互,控制平面不需要了解转发平面的工作原理,只需注重控制端软件逻辑开发。可编程实验网络设备可用于网络教学,网络科研,专网实验等领域,加速网络创新的发展。通过这种管理控制方式,转发平面的硬件使用FPGA使得硬件可重构,软件可编程使得网络平台灵活可扩展,可加速新协议,新网络体系架构的开发、验证以及部署。
【主权项】
1.一种基于虚拟地址空间的可编程网络设备管理控制方法,提供可软件访问控制代理,将硬件可编程资源如寄存器,存储器以虚拟地址空间形式给软件开发者访问,使得控制端根据虚拟地址空间与可编程硬件进行交互,控制管理网络资源,其特征在于,硬件使用可重构的FPGA作为转发资源,而控制平面通过NMAC协议下发转发策略给转发平面,具体包括: 一、虚拟地址空间 在可编程网络构架上设计出一种抽象硬件资源方法OpenVAS,通过软件硬件联合,把硬件平台中要控制的寄存器,存储器,计数器硬件资源统一映射到一个地址空间,成为“虚拟地址空间”, 在OpenVAS构架方法下,软件与硬件协同设计虚拟地址空间,包括虚拟地址编址大小,每条虚拟地址映射的硬件资源地址表,软件硬件交互通信方式,控制管理命令类型,软件通过开放的虚拟地址空间对硬件如寄存器,存储器,计数器资源进行管理配置; 二、OpenVAS构架以及模块组成 包括以下模块 软件模块: (1.1)可编程网络设备应用管理模块:降低网络应用开发的难度,提供网络应用开发人员API接口,函数注册,实现管理多线程资源,对报文进行管理调度的上层应用功能; (1.2)设备虚拟地址访问代理模块:虚拟地址空间映射控制端软件,对虚拟地址空间进行申请、释放,防止地址重用,提高对虚拟地址空间的使用效率,与应用管理模块协调合理操作虚拟地址空间; (1.3)设备控制通信代理模块:控制端软件直接与可编程网络设备交互的接口,软件开发者调用设备控制代理模块,与可编程网络设备进行通信,屏蔽了与底层硬件交互,降低开发难度,同时进行报文解析,区分控制报文和数报文,报文差错和报文序号检验、报文缓存逻辑功能; 硬件模块: (2.1)访问控制执行单元模块:硬件可编程网络设备将虚拟地址空间映射实际物理空间模块,寻址实际地址空间对硬件资源进行读写配置,可编程网络设备硬件逻辑通过访问控制执行单元模块与软件进行交互; 通过OpenVAS网络构架,转发设备将CR、SR、CNT、CT映射到同一个虚拟地址空间中,控制器通过这些虚拟地址空间的Read,Write命令或函数访问到所有被管理的资源,对可编程网络设备进行管理控制,硬件将控制端传送的虚拟地址进行映射实际可编程资源的地址,提取出映射内容,对实际硬件资源进行读写操作, OpenVAS网络构架分成三层,底层为设备控制通行代理,作为与可编程网络设备通信的驱动;中间为设备虚拟地址访问代理,是整个控制端系统最为重要的逻辑功能模块,起到承上启下的作用,最上层为可编程设备管理应用,软件开发者调用设备虚拟地址访问代理提供的API,实现复杂的网络应用逻辑功能; 三、控制端应用访问虚拟地址空间 控制端通过中间协议对虚拟地址空间进行读写操作,及对可编程转发设备进行管理控制,以NMAC协议为例,访问流程如下: 步骤1:上层注册可编程网络设备应用管理模块,调用API,以目标设备ID号作为目的地址,调用虚拟地址访问代理,对目标设备请求建立连接; 步骤2:应用调用初始化API后对设备虚拟地址访问代理申请虚拟地址空间,虚拟地址空间得到配置寄存器CR的空间地址,和步骤I提供的目标设备ID号封装成初始化连接报文写入设备控制通信代理; 步骤3:设备控制通信代理发送连接报文到可编程网络设备,等待连接响应报文; 步骤4:设备控制通信代理收到响应报文后表示初始化成功,通告上层应用,上层网络应用即可对可编程网络设备进行管理控制; 步骤5:可编程网络设备向设备虚拟地址访问代理申请CT,下发转发策略如MAC地址表和IP地址表,将转发策略内容发送给设备虚拟地址访问代理; 步骤6:设备虚拟地址访问代理将目标设备ID作为目标地址,将步骤5下发的转发策略和申请到的CT的虚拟地址空间封装报文发送给设备控制通信代理,封装同时可选择随即数添加到报文内,以确定报文的唯一性; 步骤7:如果访问控制代理收到响应报文,且收到报文内的随机数与步骤6发送的随机数一样,则一次控制端访问某虚拟地址空间成功,且下发转发策略成功;如果在规定时间内没有收到,则响应超时,重复步骤6 ; 四、可编程网络设备端实现方法 可编程网络设备端通过FPGA来实现硬件可重构,与软件协同开发,实现步骤如下:步骤4.1:可编程网络设备初始化,访问控制代理模块等待控制端下发的初始化报文;步骤2:当控制代理模块接收到连接请求报文,提取报文的源地址、序号内容,解析报文类型; 步骤4.3:解析到请求连接报文,则将提取到源地址、序号封装成连接响应报文,通过访问控制代理发送给控制端软件,通知连接成功,等待下一报文; 步骤4.4:解析到写控制端发送写请求报文,即以写入转发策略给CT为例,则提取的CT的虚拟地址空间和写入的转发策略内容,同时将虚拟地址空间值映射到实际物理资源地址空间,将提取写入内容写入地址总线中,CT写成功后访问控制代理提取的序号、源地址封装成写成功类型的报文回送给控制端,通知下发策略成功; 步骤4.5:解析到控制端读请求报文,即以读取可编程网络设备SR设备状态为例,则提取报文读请求的虚拟地址空间,映射到实际地址空间,向地址总线读请求,SR返回得到设备状态信息内容,访问控制代理得到状态信息后将提取的序号、源地址和状态信息封装到读响应报文内,将信息传送给控制端软件。
【专利摘要】本发明涉及一种基于虚拟地址空间的可编程网络设备管理控制方法。基于可编程网络思想,我们将转发平面的资源抽象出来如寄存器,存储器,计数器等,提供给控制平面的类似于计算机内部的“虚拟地址空间”,控制平面读写虚拟地址空间,转发平面组织这些虚拟地址空间形成转发策略。同时,利用中间控制协议使得控制平面与转发平面进行交互,控制平面不需要了解转发平面的工作原理,只需注重控制端软件逻辑开发。可编程实验网络设备可用于网络教学,网络科研,专网实验等领域,加速网络创新的发展。通过这种管理控制方式,转发平面的硬件使用FPGA使得硬件可重构,软件可编程使得网络平台灵活可扩展,可加速新协议,新网络体系架构的开发、验证以及部署。
【IPC分类】H04L29-06
【公开号】CN104539632
【申请号】CN201510027345
【发明人】孙志刚, 熊兆中, 李韬, 吕高峰, 陈一骄, 卞洪飞
【申请人】中国人民解放军国防科学技术大学
【公开日】2015年4月22日
【申请日】2015年1月20日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1