CN104702464B - The generation system of 100G ethernet test messages based on FPGA - Google Patents

The generation system of 100G ethernet test messages based on FPGA Download PDF

Info

Publication number
CN104702464B
CN104702464B CN201510020595.1A CN201510020595A CN104702464B CN 104702464 B CN104702464 B CN 104702464B CN 201510020595 A CN201510020595 A CN 201510020595A CN 104702464 B CN104702464 B CN 104702464B
Authority
CN
China
Prior art keywords
bag
passage
module
memory
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510020595.1A
Other languages
Chinese (zh)
Other versions
CN104702464A (en
Inventor
郭丽娜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing OPWILL Technologies Co Ltd
Original Assignee
Beijing OPWILL Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing OPWILL Technologies Co Ltd filed Critical Beijing OPWILL Technologies Co Ltd
Priority to CN201510020595.1A priority Critical patent/CN104702464B/en
Publication of CN104702464A publication Critical patent/CN104702464A/en
Application granted granted Critical
Publication of CN104702464B publication Critical patent/CN104702464B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

This application discloses a kind of generation system and method for the 100G ethernet test messages based on FPGA, including:Interface module, for FPGA to be made to communicate by pci bus with CPU;Scheduler module for configuring CPU transmission rates, and according to transmission rate, generates scheduling pulse, often generates a scheduling pulse, then generate and send a message;Configuration and statistical module for reading stream number, bag length and frame period, then generate configuration data;Group bag and correction verification module for the configuration data received from the configuration and statistical module module to be latched, will be verified and be added in data packet;Passage mixes and mac adaptation modules, for data packet to be merged.It is an advantage of the invention that:It can be generated with 100Gbps linear speeds, send test flow, complete measurement, the generation for routeing message and the message intercept of test statistics, significantly increase the randomness and real-time of data packet.

Description

The generation system of 100G ethernet test messages based on FPGA
Technical field
The invention belongs to communication test fields, are related to a kind of generation system of the 100G ethernet test messages based on FPGA And method.
Background technology
100G ethernet technologys are grown up on the basis of the rates ethernet technology such as 10/100Mb/s and 1/l0Gb/s , using maximum defined in Ether frame specification defined in IEEE802.3 specifications and current 802.3 specifications of IEEE, most Small frame is identical, and maximum media access control (MAC) frame length is 1518bytes, and minimum MAC is 64bytes, is mainly used at a high speed The performance test of network interconnection device.
The generation process of prior art 100G ethernet test messages is:It generates to be sent out in advance according to ethernet format Then the test packet sent is write into external memory or internal storage, generate scheduling signals and number is read from memory According to bag, due to being limited by traffic rate, test packet lacks randomness and real-time.Exist in addition, generating message using CPU Occupy that cpu resource is more, CPU processing is interrupted and the process occupied time is long and the efficiency of CPU processing data is low low with performance The defects of.
The content of the invention
The purpose of the present invention is to overcome the above shortcomings and to provide a kind of lifes of the 100G ethernet test messages based on FPGA Into system, which increases significantly the randomnesss and real-time of data packet.
To achieve these goals, the technical solution adopted by the present invention is:A kind of 100G ethernet tests based on FPGA The generation system of message, which is characterized in that including:Interface module, for FPGA to be made to communicate by pci bus with CPU;At least The scheduler module of one passage, including scheduling control information memory, stream number memory, bag long memory, for configuring CPU Transmission rate, and according to transmission rate, generate scheduling pulse, often generate a scheduling pulse, then generate and send a message; When dispatch pulse it is effective when, the stream number that is taken out from current stream number memory, according to stream number from bag long memory read data packet Length, by stream number, bag is long and frame period write-in scheduling control information memory in;The configuration of at least one passage and statistics mould Block for reading the stream number, bag length and frame period, then from the corresponding message generation configuration data of the stream number, and is updated and is somebody's turn to do The statistics of stream;The group bag and correction verification module of at least one passage including data storage and control information memory, are used In that will latch from the configuration data of the configuration and statistical module generation, according to set of configuration data bag, proprietary protocol is calculated Verification and, the verification of IP bags and and TCP/UDP bags verification and, by the data for verifying and being added to group after wrapping, With the complete data packet of generation group, described group of complete data packet is deposited into the data storage, bag is long and frame period deposits into institute It states in control information memory;Passage mixes and mac adaptation modules, for data packet that will have been organized in the data storage into Row merges.
Another object of the present invention is to provide a kind of generation system of the 100G ethernet test messages based on FPGA, It is characterized in that, including:Interface module, for FPGA to be made to communicate by pci bus with CPU;The scheduling mould of at least one passage Block, including scheduling control information memory, stream number memory, bag long memory, for configuring CPU transmission rates, and according to Transmission rate, generates scheduling pulse, often generates a scheduling pulse, then generates and sends a message;When scheduling pulse is effective When, the stream number that is taken out from current stream number memory, according to stream number from the length of bag long memory read data packet, by stream number, Bag is long and frame period is write in scheduling control information memory;The configuration of at least one passage and statistical module, for reading Stream number, bag length and frame period are stated, then from the corresponding message generation configuration data of the stream number, and updates the statistics of the stream; The group bag and correction verification module of at least one passage, including data storage and control information memory, for that will match somebody with somebody from described It puts and is latched with the configuration data of statistical module generation, according to set of configuration data bag, calculate the verification of proprietary protocol and IP bags Verification and and TCP/UDP bags verification and, it is complete with generation group by the verification and the data being added to group after wrapping Data packet deposits into described group of complete data packet in the data storage, and bag is long and frame period deposits into the control information and deposits In reservoir;Loopback module for CPU to be made to set loopback mode, including receiving side looping back data memory, is set according to CPU Loopback mode, receive message from receiving side looping back data memory, and after carrying out the exchanging of source/destination location, recalculate The verification of the proprietary protocol and, the verification of IP bags and, the verification of TCP/UDP bags with, to generate looping back data bag, by the ring It returns data packet and is saved in sending side looping back data memory;Passage mixes and mac adaptation modules, for directly reading the transmission Side ring returns the message in data storage, and sends.
Another object of the present invention is to provide a kind of generation method of the 100G ethernet test messages based on FPGA, It is characterized in that, including:Interface module makes FPGA communicate by pci bus with CPU;The scheduler module of at least one passage, Including scheduling control information memory, stream number memory, bag long memory configures CPU transmission rates, and according to transmission rate, Scheduling pulse is generated, a scheduling pulse is often generated, then generates and sends a message;When dispatch pulse it is effective when, from current The stream number taken out in stream number memory, according to stream number from the length of bag long memory read data packet, by stream number, bag length and interframe Every writing in scheduling control information memory;The configuration of at least one passage and statistical module read the stream number, bag length and frame Interval then from the corresponding message generation configuration data of the stream number, and updates the statistics of the stream;The group of at least one passage Bag and correction verification module including data storage and control information memory, are matched somebody with somebody what is generated from the configuration and statistical module Data latch is put, according to set of configuration data bag, calculates the verification of proprietary protocol and the verification of IP bags and and TCP/UDP The verification of bag and, by the verification and be added to group in the data after bag, with the complete data packet of generation group, by described group of complete number It is deposited into according to bag in the data storage, bag is long and frame period is deposited into the control information memory;Passage mixes and mac is fitted With module, the data packet organized in the data storage is merged.
A further purpose of the present invention is to provide a kind of generation method of the 100G ethernet test messages based on FPGA, It is characterized in that, including:Interface module makes FPGA communicate by pci bus with CPU;The scheduler module of at least one passage, Including scheduling control information memory, stream number memory, bag long memory configures CPU transmission rates, and according to transmission rate, Scheduling pulse is generated, a scheduling pulse is often generated, then generates and sends a message;When dispatch pulse it is effective when, from current The stream number taken out in stream number memory, according to stream number from the length of bag long memory read data packet, by stream number, bag length and interframe Every writing in scheduling control information memory;The configuration of at least one passage and statistical module read the stream number, bag length and frame Interval then from the corresponding message generation configuration data of the stream number, and updates the statistics of the stream;The group of at least one passage Bag and correction verification module including data storage and control information memory, are matched somebody with somebody what is generated from the configuration and statistical module Data latch is put, according to set of configuration data bag, calculates the verification of proprietary protocol and the verification of IP bags and and TCP/UDP The verification of bag and, by the verification and be added to group in the data after bag, with the complete data packet of generation group, by described group of complete number It is deposited into according to bag in the data storage, bag is long and frame period is deposited into the control information memory;Loopback module, makes CPU Loopback mode is set, including receiving side looping back data memory, according to the loopback mode that CPU is set, from receiving side loopback number Receive message according to memory, and after carrying out the exchanging of source/destination location, recalculate the proprietary protocol verification and, IP bags Verification and, the verification of TCP/UDP bags with, to generate looping back data bag, the looping back data bag is saved in sending side loopback Data storage;Passage mixes and mac adaptation modules, directly reads the message in the sending side looping back data memory, and It sends.
Beneficial effects of the present invention are:
First, it is simple in structure, including interface module;The scheduler module of at least one passage;The configuration of at least one passage And statistical module;The group bag and correction verification module of at least one passage, passage mixing and mac adaptation modules, using multiple passages into Row group bag, the prior art is overcome to be generated using CPU, and message is more in the presence of cpu resource is occupied, and CPU processing is interrupted and process is occupied Time is long and the low defects such as low with performance of the efficiency of CPU processing data, can using the generation of hardware realization test packet, Significantly increase the randomness and real-time of data packet.
Second, it is widely used, loopback module makes CPU set loopback mode, including receiving side looping back data memory, root According to the loopback mode that CPU is set, message is received from receiving side looping back data memory, and after carrying out the exchanging of source/destination location, Recalculate proprietary protocol verification and, the verification of IP bags and, the verification of TCP/UDP bags with, to generate looping back data bag, general Looping back data bag is saved in sending side looping back data memory.The type of real-time aligned data bag can be given birth to 100Gbps linear speeds Into, send test flow, complete test statistics measurement, route message generation and message intercept.
Description of the drawings
Attached drawing described herein is used for providing further understanding of the present application, forms the part of the application, this Shen Schematic description and description please does not form the improper restriction to the application for explaining the application.In the accompanying drawings:
Fig. 1 is the example structure signal of the generation system of the 100G ethernet test messages based on FPGA of the present invention Figure;
Fig. 2 is that another example structure of the generation system of the 100G ethernet test messages based on FPGA of the present invention is shown It is intended to;
Fig. 3 is the embodiment flow chart of the generation method of the 100G ethernet test messages based on FPGA of the present invention;
Fig. 4 is another embodiment flow of the generation method of the 100G ethernet test messages based on FPGA of the present invention Figure.
Specific embodiment
Some vocabulary has such as been used to censure specific components among specification and claim.Those skilled in the art should It is understood that hardware manufacturer may call same component with different nouns.This specification and claims are not with name The difference of title is used as the mode for distinguishing component, but is used as the criterion of differentiation with the difference of component functionally.Such as logical The "comprising" of piece specification and claim mentioned in is an open language, therefore should be construed to " include but do not limit In "." substantially " refer in receivable error range, those skilled in the art can be described within a certain error range solution Technical problem basically reaches the technique effect.Specification subsequent descriptions are so described to implement the better embodiment of the application Description is for the purpose of the rule for illustrating the application, is not limited to scope of the present application.The protection domain of the application When subject to appended claims institute defender.
Embodiment 1
Fig. 1 is refer to, the generation system of the 100G ethernet test messages of the invention based on FPGA includes:Interface mould Block, for FPGA to be made to communicate by pci bus with CPU;The scheduler module of at least one passage, is deposited including scheduling control information Reservoir, stream number memory, bag long memory for configuring CPU transmission rates, and according to transmission rate, generate scheduling pulse, often A scheduling pulse is generated, then generates and sends a message;When scheduling pulse is effective, taken out from current stream number memory Stream number, according to stream number from the length of bag long memory read data packet, by stream number, bag is long and frame period write-in scheduling controlling letter It ceases in memory;The configuration of at least one passage and statistical module, for reading the stream number, bag length and frame period, Ran Houcong The corresponding message generation configuration data of the stream number, and update the statistics of the stream;The group bag and calibration mode of at least one passage Block, including data storage and control information memory, for the configuration data that will be generated from the configuration and statistical module Latch is got up, according to set of configuration data bag, calculate proprietary protocol verification and, the verification of IP bags with and TCP/UDP bags school Test and, by the verification and be added to group in the data after bag, with the complete data packet of generation group, described group of complete data packet deposited Into in the data storage, bag is long and frame period is deposited into the control information memory;Passage mixes and mac is adapted to mould Block, for the data packet organized in the data storage to be merged.
Preferably, high speed Ethernet interface module is further included, is mixed with the passage and mac adaptation modules is connected It connects.
Preferably, the high speed Ethernet interface module includes:40G/100G Physical Coding Sublayers module and MAC module.
Preferably, the number of active lanes is 5.
As specific embodiment, including:0 scheduler module of passage, 1 scheduler module of passage, 2 scheduler module of passage, passage 3 scheduler modules, 4 scheduler module of passage.
Preferably, each channel scheduling module includes scheduling control information memory, stream number memory, bag long memory.
As specific embodiment, including:Passage 0 configures and statistical module, and passage 1 configures and statistical module, and passage 2 is matched somebody with somebody It puts and statistical module, passage 3 configures and statistical module, and passage 4 configures and statistical module.
As specific embodiment, including:0 group of bag module of passage, 1 group of bag module of passage, 2 groups of bag modules of passage, passage 3 groups of bag modules, 4 groups of bag modules of passage.
Preferably, each passage group bag module includes data storage and control information memory.
As specific embodiment, described 0 group of bag module of passage, 1 group of bag module of passage, 2 groups of bag modules of passage, passage 3 Group bag module, 4 groups of bag module interface channel mixing of passage and mac adaptation modules, the passage mixing are connected with mac adaptation modules High speed Ethernet interface module.
Preferably, the reference clock of each passage is 195.3125Mhz, and the data bit width of processing is 512bit.
Preferably, fpga chip mainly includes:Programmable input-output unit, basic programmable logic cells, clock pipe Manage unit, embedded block formula RAM, routing cell, embedded bottom functional unit and embedded application specific hardware modules.
Preferably, FPGA realize combination logic using small-sized look-up table (16 × 1RAM), and each look-up table is connected to one The input terminal of a d type flip flop, trigger drive other logic circuits or driving I/O, thus constitute and combination can be realized again Logic function can realize the basic logic unit module of sequential logic function again, these intermodules are interconnected using metal connecting line Or it is connected to I/O modules.
Preferably, the logic of FPGA loads programming data to realize by internally static storage cell, is stored in Value in memory cell determine logic unit logic function and a module between or the connection side between module and I/O Formula, and finally determine logic unit logic function and each module between or the connecting mode between module and I/O, it is and final Determine the function achieved by FPGA, FPGA allows unlimited number of programming.
Preferably, the programmable input-output unit is the interface section with external circuitry, different electrical for completing The driving of input/output signal with matching is required under characteristic, by the flexible configuration of software, different electrical standards can be adapted to With I/O physical characteristics, the size of driving current can be adjusted.
Preferably, external input signal can be input to the inside of FPGA by may be programmed input-output unit, can also It directly inputs inside FPGA.
Preferably, basic programmable logic cells include a configurable switch matrix, this matrix by 4 or 6 input, Some type selecting circuits (multiplexer etc.) and trigger composition.
Preferably, switch matrix is high flexible, and processing combinational logic, shift LD can be configured to it Device or RAM.
Preferably, each basic programmable logic cells can be not only used for realizeing combination logic, sequential logic, can be with It is configured to distributed RAM and distribution ROM.
Preferably, basic programmable logic cells are by the function of two 4 inputs, carry logic, arithmetical logic, storage logic It is formed with function multiplexer.
Preferably, arithmetical logic includes an XOR gate and one and door, and an XOR gate can realize that 2bit adds behaviour entirely Make, carry logic is made of carry signal and function multiplexer, is used to implement quick arithmetic addition and subtraction operation;4 input functions Generator is used to implement 4 input LUT, distribution RAM or 16 bit shift registers.
Preferably, the carry logic includes two the Fast Carry Logics, for improving the place of basic programmable logic cells Manage speed.
Preferably, Clock Managing Unit locks for digital dock management and phase loop.Phase loop locking can carry It is integrated for accurate clock, and shake can be reduced, and realize filtering function.
Preferably, embedded block formula RAM can be configured as single port RAM, two-port RAM, contents address memory and The storage organizations such as FIFO.
Preferably, in each storage unit of contents address memory inside it CAM is write there are one CL Compare Logic In data can and each internal data be compared, and return to the address of all data identical with port data.
Preferably, all units inside routing cell connection FPGA, according to technique, length, width and distributing position It is different and be divided into the different classification of 4 classes.The first kind is global routing's module, is answered for chip internal global clock and the overall situation The wiring of position/set;Second class is long wire module, to complete the high speed signal and the second global clock signal between chip Bank Wiring;Three classes are short-term modules, for completing the logic interconnection between basic logic unit and wiring;4th class is distribution The interconnection module of formula, for control signal wires such as proprietary clock, resets.
Preferably, embedded bottom functional unit includes:DLL (Delay Locked Loop), PLL (Phase Locked Loop), DSP.For completing clock high-precision, the frequency multiplication of low jitter and frequency dividing and duty cycle adjustment and phase shift etc. Function.
Preferably, the configuration mode that the present embodiment uses programs FPGA for FPGA is connected CPU, by CPU.
Preferably, the configuration mode that a piece of FPGA adds a piece of EPROM also can be used.
Preferably, the configuration mode of a piece of PROM programmings multiple FPGA also can be used.
Preferably, the configuration mode of serial PROM programmings FPGA also can be used.
Embodiment 2
It refer to Fig. 2, the generation system of the 100G ethernet test messages based on FPGA of the present embodiment, including:Interface Module, for FPGA to be made to communicate by pci bus with CPU;The scheduler module of at least one passage, including scheduling control information Memory, stream number memory, bag long memory, for configuring CPU transmission rates, and according to transmission rate, pulse is dispatched in generation, A scheduling pulse is often generated, then generates and sends a message;When scheduling pulse is effective, taken from current stream number memory The stream number gone out, according to stream number from the length of bag long memory read data packet, by stream number, bag is long and frame period writes scheduling controlling In information-storing device;The configuration of at least one passage and statistical module, for reading the stream number, bag length and frame period, then From the corresponding message generation configuration data of the stream number, and update the statistics of the stream;The group bag of at least one passage and verification Module, including data storage and control information memory, for the configuration number that will be generated from the configuration and statistical module According to latching, according to set of configuration data bag, the verification of proprietary protocol and the verification of IP bags and and TCP/UDP bags are calculated Verification and, by the verification and be added to group in the data after bag, with the complete data packet of generation group, by described group of complete data Bag is deposited into the data storage, and bag is long and frame period is deposited into the control information memory;Loopback module, for making CPU sets loopback mode, including receiving side looping back data memory, according to the loopback mode that CPU is set, from receiving side loopback Data storage receives message, and after carrying out the exchanging of source/destination location, recalculate the proprietary protocol verification and, IP The verification of bag and, the verification of TCP/UDP bags with, to generate looping back data bag, the looping back data bag is saved in transmission side ring Return data storage;Passage mixes and mac adaptation modules, for directly reading the report in the sending side looping back data memory Text, and send.
Preferably, high speed Ethernet interface module is further included, is mixed with the passage and mac adaptation modules is connected It connects.
Preferably, the high speed Ethernet interface module includes:40G/100G Physical Coding Sublayers module and MAC module.
Preferably, the number of active lanes is 5.
As specific embodiment, including:0 scheduler module of passage, 1 scheduler module of passage, 2 scheduler module of passage, passage 3 scheduler modules, 4 scheduler module of passage.
Preferably, each channel scheduling module includes scheduling control information memory, stream number memory, bag long memory.
As specific embodiment, including:Passage 0 configures and statistical module, and passage 1 configures and statistical module, and passage 2 is matched somebody with somebody It puts and statistical module, passage 3 configures and statistical module, and passage 4 configures and statistical module.
As specific embodiment, including:0 group of bag module of passage, 1 group of bag module of passage, 2 groups of bag modules of passage, passage 3 groups of bag modules, 4 groups of bag modules of passage.
Preferably, each passage group bag module includes data storage and control information memory.
As specific embodiment, described 0 group of bag module of passage, 1 group of bag module of passage, 2 groups of bag modules of passage, passage 3 Group bag module, 4 groups of bag module interface channel mixing of passage and mac adaptation modules, the passage mixing are connected with mac adaptation modules High speed Ethernet interface module.
Preferably, the reference clock of each passage is 195.3125Mhz, and the data bit width of processing is 512bit.
Embodiment 3
It refer to Fig. 3, the generation method of the 100G ethernet test messages based on FPGA of the present embodiment, including:Interface Module makes FPGA communicate by pci bus with CPU;The scheduler module of at least one passage is stored including scheduling control information Device, stream number memory, bag long memory configure CPU transmission rates, and according to transmission rate, generate scheduling pulse, often generate One scheduling pulse, then generate and send a message;When dispatch pulse it is effective when, the stream that is taken out from current stream number memory Number, according to stream number from the length of bag long memory read data packet, by stream number, bag is long and frame period write-in scheduling control information is deposited In reservoir;The configuration of at least one passage and statistical module read the stream number, bag length and frame period, then from the stream number pair The message generation configuration data answered, and update the statistics of the stream;The group bag and correction verification module of at least one passage, including Data storage and control information memory will latch from the configuration data of the configuration and statistical module generation, according to Set of configuration data bag, calculate proprietary protocol verification and, the verification of IP bags and and TCP/UDP bags verification with, by the school It tests and is added in the data after group bag, with the complete data packet of generation group, described group of complete data packet is deposited into the data and is deposited In reservoir, bag is long and frame period is deposited into the control information memory;Passage mixes and mac adaptation modules, by the data The data packet organized in memory merges.
Preferably, configuration data is header information needed for Ethernet pack arrangement, such as:Source MAC addresses, purpose MAC Address, source IP address, purpose IP address.
Preferably, the frame format of Ethernet is:Frame head+filling data+postamble, MAC destination addresses usually use hexadecimal It represents.Destination address is used for the direction of transfer and the routing that judge ethernet frame between devices.Each ethernet device leads to Often it is allocated a unique MAC Address.
And some special MAC Address are retained, for representing some special functions, for example, complete 1 address (FF: FF:FF:FF:FF:FF) it is used to represent broadcast address.
Preferably, source address:6 bytes refer to the MAC Address of sender.Usually use hexadecimal representation.Source address is general Be in production, by production firm's write device, first three byte representation vendor code of MAC Address, rear three table of bytes Show equipment serial number.It should be noted that for some equipment, such as test equipment, its MAC Address is to set at any time 's.
Preferably, length/type field:2 bytes, this field are used to represent the length of frame or the upper layer data association of encapsulation Discuss type.If the field is less than 05DC (HEX), then it represents that length, if greater than 0600 (HEX), then it represents that the association of data field Discuss type.Such as:0800HEX expressions are IP agreements.
Preferably, data field:46 to 1500 bytes are to need the application data transmitted in data field, generally comprise upper strata Protocol data, such as IP data.
Preferably, FCS Frame Check Sequences:4 bytes, sender obtain frame check by calculating each byte in frame Sequence, and it is inserted into the last transmission of frame.Recipient can recalculate verification sequence in receive process, and in receiving frame Last 4 byte verification sequence compares.For the ethernet frame that Frame Check Sequence is wrong or loses, most equipment can be by it It abandons.
Destination address Source address Length/type Fill data field FCS
Preferably, transport protocol is TCP and UDP, is the frame format of TCP bags below:
Destination address Source address Type IP stems TCP stems Fill data FCS
IP stem structures:
Transmission Control Protocol stem structure:
UDP stem structures
Source port (16) Destination interface (16) Length field (16) Verification and (16)
Preferably, IP header checks and:IP data packet headers are only examined, stem in units of 16, carry out two successively Complement on n-1 n is summed.
Preferably, TCP data bag verifies and meets algorithm:TCP puppet stem+TCP stems+data;Wherein TCP puppets stem For:32 source IP address, 32 purpose IP address, 8 bit protocols, 16 TCP length.
Preferably, UDP message bag verifies and meets algorithm:UDP puppet stem+UDP stems+data;Wherein UDP puppets stem For:32 source IP address, 32 purpose IP address, 8 bit protocols, 16 UDP length.
Preferably, the step of merging includes the bag length being successively read in the control information memory of each passage and frame Interval, according to the signal of the Bao Changyu frame periods and each passage of value generation reading data packet.
Preferably, counted using counter, reach the data packet that each passage is read with generation during value when counting Signal.
Preferably, the number of active lanes is 5.
As specific embodiment, including:0 scheduler module of passage, 1 scheduler module of passage, 2 scheduler module of passage, passage 3 scheduler modules, 4 scheduler module of passage.
Preferably, each channel scheduling module includes scheduling control information memory, stream number memory, bag long memory.
As specific embodiment, including:Passage 0 configures and statistical module, and passage 1 configures and statistical module, and passage 2 is matched somebody with somebody It puts and statistical module, passage 3 configures and statistical module, and passage 4 configures and statistical module.
As specific embodiment, including:0 group of bag module of passage, 1 group of bag module of passage, 2 groups of bag modules of passage, passage 3 groups of bag modules, 4 groups of bag modules of passage.
Preferably, each passage group bag module includes data storage and control information memory.
As specific embodiment, described 0 group of bag module of passage, 1 group of bag module of passage, 2 groups of bag modules of passage, passage 3 Group bag module, 4 groups of bag module interface channel mixing of passage and mac adaptation modules, the passage mixing are connected with mac adaptation modules High speed Ethernet interface module.
Preferably, the reference clock of each passage is 195.3125Mhz, and the data bit width of processing is 512bit.
Embodiment 4
It refer to Fig. 4, the generation method of the 100G ethernet test messages based on FPGA of the present embodiment, including:Interface Module makes FPGA communicate by pci bus with CPU;The scheduler module of at least one passage is stored including scheduling control information Device, stream number memory, bag long memory configure CPU transmission rates, and according to transmission rate, generate scheduling pulse, often generate One scheduling pulse, then generate and send a message;When dispatch pulse it is effective when, the stream that is taken out from current stream number memory Number, according to stream number from the length of bag long memory read data packet, by stream number, bag is long and frame period write-in scheduling control information is deposited In reservoir;The configuration of at least one passage and statistical module read the stream number, bag length and frame period, then from the stream number pair The message generation configuration data answered, and update the statistics of the stream;The group bag and correction verification module of at least one passage, including Data storage and control information memory will latch from the configuration data of the configuration and statistical module generation, according to Set of configuration data bag, calculate proprietary protocol verification and, the verification of IP bags and and TCP/UDP bags verification with, by the school It tests and is added in the data after group bag, with the complete data packet of generation group, described group of complete data packet is deposited into the data and is deposited In reservoir, bag is long and frame period is deposited into the control information memory;Loopback module makes CPU set loopback mode, including According to the loopback mode that CPU is set, message is received from receiving side looping back data memory for receiving side looping back data memory, and After carrying out the exchanging of source/destination address, recalculate the proprietary protocol verification and, the verification of IP bags is with TCP/UDP bags It verifies and to generate looping back data bag, the looping back data bag is saved in sending side looping back data memory;Passage mix and Mac adaptation modules directly read the message in the sending side looping back data memory, and send.
Preferably, the number of active lanes is 5.
As specific embodiment, including:0 scheduler module of passage, 1 scheduler module of passage, 2 scheduler module of passage, passage 3 scheduler modules, 4 scheduler module of passage.
Preferably, each channel scheduling module includes scheduling control information memory, stream number memory, bag long memory.
As specific embodiment, including:Passage 0 configures and statistical module, and passage 1 configures and statistical module, and passage 2 is matched somebody with somebody It puts and statistical module, passage 3 configures and statistical module, and passage 4 configures and statistical module.
As specific embodiment, including:0 group of bag module of passage, 1 group of bag module of passage, 2 groups of bag modules of passage, passage 3 groups of bag modules, 4 groups of bag modules of passage.
Preferably, each passage group bag module includes data storage and control information memory.
As specific embodiment, described 0 group of bag module of passage, 1 group of bag module of passage, 2 groups of bag modules of passage, passage 3 Group bag module, 4 groups of bag module interface channel mixing of passage and mac adaptation modules, the passage mixing are connected with mac adaptation modules High speed Ethernet interface module.
Preferably, the reference clock of each passage is 195.3125Mhz, and the data bit width of processing is 512bit.
Beneficial effects of the present invention are:
First, it is simple in structure, including interface module;The scheduler module of at least one passage;The configuration of at least one passage And statistical module;The group bag and correction verification module of at least one passage, passage mixing and mac adaptation modules, using multiple passages into Row group bag, the prior art is overcome to be generated using CPU, and message is more in the presence of cpu resource is occupied, and CPU processing is interrupted and process is occupied Time is long and the low defects such as low with performance of the efficiency of CPU processing data, can using the generation of hardware realization test packet, Significantly increase the randomness and real-time of data packet.
Second, it is widely used, loopback module makes CPU set loopback mode, including receiving side looping back data memory, root According to the loopback mode that CPU is set, message is received from receiving side looping back data memory, and after carrying out the exchanging of source/destination location, Recalculate proprietary protocol verification and, the verification of IP bags and, the verification of TCP/UDP bags with, to generate looping back data bag, general Looping back data bag is saved in the type of sending side looping back data memory real-time aligned data bag, can be generated with 100Gbps linear speeds, Test flow is sent and received, completes measurement, the generation for routeing message and the message intercept of test statistics.
Several preferred embodiments of the application have shown and described in above description, but as previously described, it should be understood that the application Be not limited to form disclosed herein, be not to be taken as the exclusion to other embodiment, and available for various other combinations, Modification and environment, and above-mentioned introduction or the technology or knowledge of association area can be passed through in application contemplated scope described herein It is modified.And changes and modifications made by those skilled in the art do not depart from spirit and scope, then it all should be in this Shen It please be in the protection domain of appended claims.

Claims (6)

1. a kind of generation system of the 100G ethernet test messages based on FPGA, which is characterized in that including:
Interface module, for FPGA to be made to communicate by pci bus with CPU;
The scheduler module of at least one passage, including scheduling control information memory, stream number memory, bag long memory is used In configuration CPU transmission rates, and according to transmission rate, scheduling pulse is generated, a scheduling pulse is often generated, then generates and sends One message;When scheduling pulse is effective, stream number is taken out from current stream number memory, is read according to stream number from bag long memory The length of data packet, by stream number, bag is long and frame period is write in scheduling control information memory;
The configuration of at least one passage and statistical module, for reading the stream number, bag is grown and frame period, then current stream number pair The message generation configuration data answered, and update the statistics currently flowed;
The group bag and correction verification module of at least one passage, including data storage and control information memory, for by described in The configuration data of configuration and statistical module generation latches, according to set of configuration data bag, calculate proprietary protocol verification and, IP The verification of bag and and TCP or UDP bags verification and, it is complete with generation group by the verification and the data being added to group after wrapping Data packet, described group of complete data packet is deposited into the data storage, bag is long and frame period deposits into the control information In memory;
Passage mixes and mac adaptation modules, for the data packet organized in the data storage to be merged.
2. a kind of generation system of the 100G ethernet test messages based on FPGA, which is characterized in that including:
Interface module, for FPGA to be made to communicate by pci bus with CPU;
The scheduler module of at least one passage, including scheduling control information memory, stream number memory, bag long memory is used In configuration CPU transmission rates, and according to transmission rate, scheduling pulse is generated, a scheduling pulse is often generated, then generates and sends One message;When scheduling pulse is effective, stream number is taken out from current stream number memory, is read according to stream number from bag long memory The length of data packet, by stream number, bag is long and frame period is write in scheduling control information memory;
The configuration of at least one passage and statistical module, for reading the stream number, bag is grown and frame period, then current stream number pair The message generation configuration data answered, and update the statistics currently flowed;
The group bag and correction verification module of at least one passage, including data storage and control information memory, for by described in The configuration data of configuration and statistical module generation latches, according to set of configuration data bag, calculate proprietary protocol verification and, IP The verification of bag and and TCP or UDP bags verification and, it is complete with generation group by the verification and the data being added to group after wrapping Data packet, described group of complete data packet is deposited into the data storage, bag is long and frame period deposits into the control information In memory;
Loopback module, for CPU to be made to set loopback mode, including receiving side looping back data memory, the ring set according to CPU The pattern of returning receives message from receiving side looping back data memory, and after carrying out the exchanging of source/destination location, recalculates described The verification of proprietary protocol and, the verification of IP bags and, the verification of TCP/UDP bags with, to generate looping back data bag, by the loopback number Sending side looping back data memory is saved according to bag;
Passage mixes and mac adaptation modules, for directly reading the looping back data bag in the sending side looping back data memory, And it sends.
3. the generation system of the 100G ethernet test messages according to claim 1 or 2 based on FPGA, feature exist In further including high speed Ethernet interface module, mixed with the passage and mac adaptation modules are attached.
4. the generation system of the 100G ethernet test messages according to claim 3 based on FPGA, which is characterized in that institute Stating high speed Ethernet interface module includes:40G/100G Physical Coding Sublayers module and MAC module.
5. the generation system of the 100G ethernet test messages according to claim 1 or 2 based on FPGA, feature exist In the number of active lanes is 5.
6. the generation system of the 100G ethernet test messages according to claim 5 based on FPGA, which is characterized in that every The reference clock of a passage is 195.3125Mhz, and the data bit width of processing is 512bit.
CN201510020595.1A 2015-01-15 2015-01-15 The generation system of 100G ethernet test messages based on FPGA Active CN104702464B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510020595.1A CN104702464B (en) 2015-01-15 2015-01-15 The generation system of 100G ethernet test messages based on FPGA

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510020595.1A CN104702464B (en) 2015-01-15 2015-01-15 The generation system of 100G ethernet test messages based on FPGA

Publications (2)

Publication Number Publication Date
CN104702464A CN104702464A (en) 2015-06-10
CN104702464B true CN104702464B (en) 2018-06-05

Family

ID=53349254

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510020595.1A Active CN104702464B (en) 2015-01-15 2015-01-15 The generation system of 100G ethernet test messages based on FPGA

Country Status (1)

Country Link
CN (1) CN104702464B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116866301A (en) * 2018-12-27 2023-10-10 达发科技(苏州)有限公司 Hardware auxiliary speed measuring system
CN110210053A (en) * 2019-04-24 2019-09-06 天津大学 A kind of Design of Communication Interface method of the real-time digital solver based on FPGA
CN110086669A (en) * 2019-04-29 2019-08-02 华东师范大学 A kind of network based on ZYNQ is given out a contract for a project machine
CN110290020B (en) * 2019-06-17 2020-10-13 北京挚友科技有限公司 High-precision flow percentage generation method and device for Ethernet tester
CN111478825B (en) * 2020-04-10 2023-04-18 深圳市风云实业有限公司 Extensible network traffic generation and analysis method and system
CN112134757B (en) * 2020-09-21 2022-08-19 北京信而泰科技股份有限公司 Message generation method and device
CN116707639A (en) * 2023-07-10 2023-09-05 江苏信而泰智能装备有限公司 400G Ethernet flow testing device based on FPGA

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101425941A (en) * 2008-12-04 2009-05-06 北京星网锐捷网络技术有限公司 Loop network link convergence time and recovery time test system
US7869381B1 (en) * 2009-09-21 2011-01-11 Spirent Communications, Inc. Methods and apparatuses for generating network test packets and parts of network test packets
CN103685248A (en) * 2013-12-02 2014-03-26 许继电气股份有限公司 Process layer tri-play message transport real-time scheduling method
CN103716248A (en) * 2013-06-07 2014-04-09 潘晶 Ethernet traffic generation and analysis method based on Ethernet switch chip
CN103731321A (en) * 2014-01-13 2014-04-16 加弘科技咨询(上海)有限公司 FPGA (Field Programmable Gate Array)-based method and device for generating RFC 2544 testing data streams

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101425941A (en) * 2008-12-04 2009-05-06 北京星网锐捷网络技术有限公司 Loop network link convergence time and recovery time test system
US7869381B1 (en) * 2009-09-21 2011-01-11 Spirent Communications, Inc. Methods and apparatuses for generating network test packets and parts of network test packets
CN103716248A (en) * 2013-06-07 2014-04-09 潘晶 Ethernet traffic generation and analysis method based on Ethernet switch chip
CN103685248A (en) * 2013-12-02 2014-03-26 许继电气股份有限公司 Process layer tri-play message transport real-time scheduling method
CN103731321A (en) * 2014-01-13 2014-04-16 加弘科技咨询(上海)有限公司 FPGA (Field Programmable Gate Array)-based method and device for generating RFC 2544 testing data streams

Also Published As

Publication number Publication date
CN104702464A (en) 2015-06-10

Similar Documents

Publication Publication Date Title
CN104702464B (en) The generation system of 100G ethernet test messages based on FPGA
CN104660462B (en) A kind of group packet system of ten thousand mbit ethernets test equipment
CN104660460A (en) System and method for testing performance of Ethernet
US10652024B2 (en) Digital signature systems and methods for network path trace
US6950395B1 (en) Method and apparatus for a token bucket metering or policing system with a delayed filling scheme
US20090122703A1 (en) Electronic Device and Method for Flow Control
US20030152084A1 (en) Differentiated services for a network processor
US20090072858A1 (en) Heterogeneous configurable integrated circuit
Braun et al. Protocol wrappers for layered network packet processing in reconfigurable hardware
Georges et al. Strict priority versus weighted fair queueing in switched ethernet networks for time critical applications
US10367743B2 (en) Method for traffic management at network node, and network node in packet-switched network
Kundel et al. OpenBNG: Central office network functions on programmable data plane hardware
WO2020142867A1 (en) Traffic shaping method and related device
WO2021062426A2 (en) Cyclic queuing and forwarding (cqf) segmentation
CN113438182B (en) Credit-based flow control system and flow control method
CN104601307B (en) Add-on system and method based on ten thousand mbit ethernet timestamps of FPGA
Li et al. A SDN-based traffic bandwidth allocation method for time sensitive networking in avionics
Khattak et al. Effective routing technique: Augmenting data center switch fabric performance
WO2008096338A2 (en) Frame concatenation with drop precedence assignment
Benacer et al. A high-speed traffic manager architecture for flow-based networking
US10079769B1 (en) Methods and apparatus for implementing dynamic rate controllers using linked list of rate programs
CN102932276A (en) Computing node cluster system and data relay
CN104660459A (en) FPGA-based system and FPGA-based method for realizing online business scanning of 10 gigabit Ethernet
Kwak et al. A new starting potential fair queuing algorithm with O (1) virtual time computation complexity
Bitar Building Networking Applications from a NoC-Enhanced FPGA

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information

Inventor after: Guo Lina

Inventor before: Zhu Tianquan

Inventor before: Bao Shengqing

Inventor before: Guo Lina

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant