【技术实现步骤摘要】
一种基于FPGA的降低网络链路层拥塞的系统与方法
[0001]本专利技术属于流量控制
,具体涉及一种基于FPGA的降低网络链路层拥塞的系统与方法。
技术介绍
[0002]以太网中的流量控制是基于IEEE 802.3x协议标准,一根网线两端的两个MAC之间互相发送和接收暂停帧以实现流量控制,但是MAC接收到暂停帧后停止工作,会导致拥塞向整个网络扩散。
技术实现思路
[0003](一)要解决的技术问题
[0004]本专利技术要解决的技术问题是:如何减少全双工网络中暂停帧对网络拥塞的扩散。
[0005](二)技术方案
[0006]为了解决上述技术问题,本专利技术提供了一种基于FPGA的降低网络链路层拥塞的系统,包括:FPGA芯片和外设,所述FPGA芯片包括MAC控制器MAC Conrtoller、控制逻辑模块Control Logic、缓冲区FIFO、数据转移模块DATA_MOVER、AXI总线连接器AXI_interconnect、DDR控制器DDR3 Conrtoller组成,其中 ...
【技术保护点】
【技术特征摘要】
1.一种基于FPGA的降低网络链路层拥塞的系统,其特征在于,包括:FPGA芯片和外设,所述FPGA芯片包括MAC控制器MAC Conrtoller、控制逻辑模块Control Logic、缓冲区FIFO、数据转移模块DATA_MOVER、AXI总线连接器AXI_interconnect、DDR控制器DDR3Conrtoller组成,其中,所述第一MAC控制器MAC1 Conrtoller、第二MAC控制器MAC2 Conrtoller;所述控制逻辑模块ControlLogic包括第一控制逻辑模块ControlLogic1、第二控制逻辑模块ControlLogic2;所述缓冲区FIFO包括接收缓冲区Rx_fifo1和发送缓冲区Tx_fifo2,所述数据转移模块DATA_MOVER包括第一数据转移模块DATA_MOVER1、第二数据转移模块DATA_MOVER2;所述外设包括DDR3 SRAM;所述系统连接于两个由以太网连接的第一终端与第二终端之间,其中的各个模块设计为:当第一终端给第二终端发送数据时,可实现如下的数据转发流程:第一终端给第二终端发送以太网报文时,数据通过Rgmii接口被FPGA芯片中的第一MAC控制器MAC1 Conrtoller接收后转换成网络包数据Rx_stream,存入接收缓冲区Rx_fifo1中;第一控制逻辑模块Control Logic1检测到Rx_fifo1中的数据后,分配好DDR3 SRAM的内存地址,发送写DDR的命令Write_ddr3_cmd控制第一数据转移模块DATA_MOVER1;第一数据转移模块DATA_MOVER1通过AXI总线连接器AXI_interconnect将写地址和写数据发送给DDR控制器DDR3Controller;DDR3 Controller根据接收的写地址和写数据将对应的数据写入到外部DDR3 SRAM中;第二控制逻辑模块Control Logic2检测到DATA_MOVER1将数据转移完成后,发送读DDR的命令Read_ddr3_cmd控制第二数据转移模块DATA_MOVER2;第二数据转移模块DATA_MOVER2通过AXI总线连接器AXI_interconnect将读地址发送给控制DDR控制器DDR3 Controller,等待DDR3 Controller返回对应的数据;DDR3 Controller通过接收的读地址读取DDR3 SRAM中对应的数据后,通过AXI总线连接器AXI_interconnect发送给DATA_MOVER2;DATA_MOVER2通过AXIS_MM2S接口将数据发送给发送缓冲区Tx_fifo2;第二MAC控制器MAC2 Conrtoller检测到Tx_fifo2中的数据后,通过Rgmii接口发送给第二终端。2.如权利要求1所述的系统,其特征在于,其中的各个模块设计为:当第一终端给第二终端发送数据时,可实现如下的暂停帧的处理流程:当第一终端中MAC控制器的接收缓冲区接近溢出时,降低网络链路层拥塞系统中的MAC1 Conrtoller会接收到第一终端的MAC控制器发送的暂停帧,将停止从DDR3 SRAM中读取待发送的数据,直到暂停帧失效,此时第二终端发送的数据将遵从所述数据转发流程暂时缓存在外部DDR3 SRAM中;如果DDR3 SRAM的空间即将被占满...
【专利技术属性】
技术研发人员:侯运通,张红磊,龚清生,聂煜桐,邓硕,沈月峰,王吕大,杨帆,孙大东,陕振,徐海旭,濮约刚,张明庆,贾振华,赵明亮,王艳,李正坤,
申请(专利权)人:北京计算机技术及应用研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。