一种基于FPGA的以太网帧与SDN数据帧的适配方法组成比例

技术编号:29594295 阅读:26 留言:0更新日期:2021-08-06 19:56
本发明专利技术公开了一种基于FPGA的以太网帧与SDN数据帧的适配方法,对获取的以太网帧进行缓存和随机访问,并记录arp的地址映射;基于设定的流表对所述以太网帧进行过滤,并结合对应的转发信息封装得到SDN数据帧;基于对应的端口信息将所述SDN数据帧进行转发和接收;采用轮询机制对接收到的所述SDN数据帧进行缓存更新,并判断下一跳节点的目的IP地址是否为0;若下一跳节点的目的IP地址为0,则将所述SDN数据帧转换成所述以太网帧,并基于解析得到的arp地址发送至对应的上位机,在以太网帧转换SDN数据帧的过程中,进行了准确的适配过程,提高了帧转换效率和准确率,进而提高FPGA的整体处理效率。

【技术实现步骤摘要】
一种基于FPGA的以太网帧与SDN数据帧的适配方法
本专利技术涉及数据适配
,尤其涉及一种基于FPGA的以太网帧与SDN数据帧的适配方法。
技术介绍
随着信息技术与人工智能的快速发展,高速的数据传输与处理对信息高速发展的今天愈发重要。FPGA芯片的并行处理优势在高速数据的传输和处理上能减少传输和处理的时间,SDN网络架构与传统网络相比更加智能、灵活、可扩展,是未来网络的一个发展方向。在FPGA中嵌入SDN网络协议是自定义网络高速数据传输的一种新型架构。传统网络采用分布式架构,设备都能控制与转发高度耦合;分布式网络在网络某个链路发生故障,网络故障会不断告知邻居网络设备,增加网络通信开销;SDN具有控制和转发分离,设备之间耦合度低。集中式网络控制,网络发生故障时,只需上报给控制层的控制器,控制器做出快速调整,较少网络的开销,而在SDN控制器下发控制命令(流表),但数据转发层不能快速匹配流表,实现数据的正确转发,导致FPGA的整体处理效率降低。
技术实现思路
本专利技术的目的在于提供一种基于FPGA的以太网帧与SDN数据帧的适配方法,提高FPGA的整体处理效率。为实现上述目的,本专利技术提供了一种基于FPGA的以太网帧与SDN数据帧的适配方法,包括以下步骤:对获取的以太网帧进行缓存和随机访问,并记录arp的地址映射;基于设定的流表对所述以太网帧进行过滤,并结合对应的转发信息封装得到SDN数据帧;基于对应的端口信息将所述SDN数据帧进行转发和接收;采用轮询机制对接收到的所述SDN数据帧进行缓存更新,并判断下一跳节点的目的IP地址是否为0;若下一跳节点的目的IP地址为0,则将所述SDN数据帧转换成所述以太网帧,并基于解析得到的arp地址发送至对应的上位机。其中,基于设定的流表对所述以太网帧进行过滤,并结合对应的转发信息封装得到SDN数据帧,包括:判断设定的流表地址是否超过RAM的阈值地址;若设定的流表地址没有超过RAM的阈值地址,使用计数器对SDN数据帧定位,并判断源IP地址域是否相同;若源IP地址域相同,则RAM地址加1,并将下一跳的转发路径链路状态信息封装成SDN数据帧。其中,采用轮询机制对接收到的所述SDN数据帧进行缓存更新,并判断下一跳节点的目的IP地址是否为0,包括:采用轮询机制将接收到的多个所述SDN数据帧缓存至FIFO中,并基于所述流表更新缓存的所述SDN数据帧中的信息;判断下一跳节点的目的IP地址是否为0。其中,若下一跳节点的目的IP地址为0,则将所述SDN数据帧转换成所述以太网帧,并基于解析得到的arp地址发送至对应的上位机,包括:若下一跳节点的目的IP地址为0,则将所述SDN数据帧中的所述转发信息删除后,转换为所述以太网数据帧;查找arp表,完成IP地址与MAC地址的映射;将所述以太网帧按照GMII协议标准发送给上位机。其中,判断下一跳节点的目的IP地址是否为0之后,所述方法还包括:若不为0,则继续根据对应的端口信息进行SDN数据帧的转发,直至下一跳节点的目的IP地址为0。本专利技术的一种基于FPGA的以太网帧与SDN数据帧的适配方法,对获取的以太网帧进行缓存和随机访问,并记录arp的地址映射;基于设定的流表对所述以太网帧进行过滤,并结合对应的转发信息封装得到SDN数据帧;基于对应的端口信息将所述SDN数据帧进行转发和接收;采用轮询机制对接收到的所述SDN数据帧进行缓存更新,并判断下一跳节点的目的IP地址是否为0;若下一跳节点的目的IP地址为0,则将所述SDN数据帧转换成所述以太网帧,并基于解析得到的arp地址发送至对应的上位机,在以太网帧转换SDN数据帧的过程中,进行了准确的适配过程,提高了帧转换效率和准确率,进而提高FPGA的整体处理效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术提供的一种基于FPGA的以太网帧与SDN数据帧的适配方法的步骤示意图。图2是本专利技术提供的数据发送流程图。图3是本专利技术提高的数据接收流程图。图4是本专利技术提供的FPGA内部的主要功能模块示意图。具体实施方式下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。在本专利技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。请参阅图1至图3,本专利技术提供一种基于FPGA的以太网帧与SDN数据帧的适配方法,包括以下步骤:S101、对获取的以太网帧进行缓存和随机访问,并记录arp的地址映射。具体的,通过光电转换模块将上位机中的以太网帧传输至FPGA中的以太网IP核,并且,接收到的以太网帧是以GMII协议标准接收,同时按其时序要求用FIFO对以太网帧进行缓存;以太网的帧长度是不定长最小长度是64字节,最大长度是1518字节。用计数器对以太网数据长度计数,计数完的长度信息由FIFO缓存。FIFO的以太网数据存储到以太网RAM实现对数据的随机访问,记录以太帧的IP地址与对应的mac地址维护arp表。取消了传统的PHY芯片用FPGA自身来实现PHY芯片的功能。S102、基于设定的流表对所述以太网帧进行过滤,并结合对应的转发信息封装得到SDN数据帧。具体的,在进行SDN数据帧的生成之前,需要判断是否查找到所述以太网帧的转发路径,具体为:当接收到所述以太网帧后,FPGA根据以太网帧中的目标IP地址在路由表RAM中查找转发路径,若查找成功,则将所述以太网帧转换为SDN数据帧,转换的流程如下:1、判断表项地址是否超过RAM的最大地址,超过则匹配完成。没有则继续执行下面的操作。2、使用计数器对SDN数据帧定位,因为SDN帧和流表时自定义的结构在匹配时直接判断源IP地址域是否相同,相同RAM地址加1,继续匹配下一表现。3、匹配成功,将流表中的转发信息(即是下一跳的转发路径链路状态信息)插入SDN数据帧中。根据上面的流程我们自定义的流表和SDN数据帧的结构在匹配过程中无需再对以太网帧数据经行操作,SDN数据帧对以太网帧关键信息进行了提取,匹配流表效率更快。SDN数据帧预留了转发的路径和端口域。方便流表匹配成功后续的转发操作。从而提高FPGA整体的处理效率,降低网络时延。应用在大型网络中在流量控制拥有大局观更加智能化。流表结构如表1所示:源节点IP地址域:记录源节点IP地址。消息类型,端口:如本地消息类型(不需要转发是本地回环本文档来自技高网...

【技术保护点】
1.一种基于FPGA的以太网帧与SDN数据帧的适配方法,其特征在于,包括以下步骤:/n对获取的以太网帧进行缓存和随机访问,并记录arp的地址映射;/n基于设定的流表对所述以太网帧进行过滤,并结合对应的转发信息封装得到SDN数据帧;/n基于对应的端口信息将所述SDN数据帧进行转发和接收;/n采用轮询机制对接收到的所述SDN数据帧进行缓存更新,并判断下一跳节点的目的IP地址是否为0;/n若下一跳节点的目的IP地址为0,则将所述SDN数据帧转换成所述以太网帧,并基于解析得到的arp地址发送至对应的上位机。/n

【技术特征摘要】
1.一种基于FPGA的以太网帧与SDN数据帧的适配方法,其特征在于,包括以下步骤:
对获取的以太网帧进行缓存和随机访问,并记录arp的地址映射;
基于设定的流表对所述以太网帧进行过滤,并结合对应的转发信息封装得到SDN数据帧;
基于对应的端口信息将所述SDN数据帧进行转发和接收;
采用轮询机制对接收到的所述SDN数据帧进行缓存更新,并判断下一跳节点的目的IP地址是否为0;
若下一跳节点的目的IP地址为0,则将所述SDN数据帧转换成所述以太网帧,并基于解析得到的arp地址发送至对应的上位机。


2.如权利要求1所述的基于FPGA的以太网帧与SDN数据帧的适配方法,其特征在于,基于设定的流表对所述以太网帧进行过滤,并结合对应的转发信息封装得到SDN数据帧,包括:
判断设定的流表地址是否超过RAM的阈值地址;
若设定的流表地址没有超过RAM的阈值地址,使用计数器对SDN数据帧定位,并判断源IP地址域是否相同;
若源IP地址域相同,则RAM地址加1,并将下一跳的转发路径链路状态信息封装成SDN数据帧。


3.如权利要求1所述的基于F...

【专利技术属性】
技术研发人员:张向利王俊凯蒋浩云董国华
申请(专利权)人:桂林电子科技大学
类型:发明
国别省市:广西;45

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1