CN101562544B - Data packet generator and data packet generating method - Google Patents

Data packet generator and data packet generating method Download PDF

Info

Publication number
CN101562544B
CN101562544B CN2008100668012A CN200810066801A CN101562544B CN 101562544 B CN101562544 B CN 101562544B CN 2008100668012 A CN2008100668012 A CN 2008100668012A CN 200810066801 A CN200810066801 A CN 200810066801A CN 101562544 B CN101562544 B CN 101562544B
Authority
CN
China
Prior art keywords
packet
template
configuration information
send
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.)
Expired - Fee Related
Application number
CN2008100668012A
Other languages
Chinese (zh)
Other versions
CN101562544A (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.)
FLEXCOMM TECHNOLOGY (SHENZHEN) Co Ltd
Original Assignee
FLEXCOMM TECHNOLOGY (SHENZHEN) 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 FLEXCOMM TECHNOLOGY (SHENZHEN) Co Ltd filed Critical FLEXCOMM TECHNOLOGY (SHENZHEN) Co Ltd
Priority to CN2008100668012A priority Critical patent/CN101562544B/en
Publication of CN101562544A publication Critical patent/CN101562544A/en
Application granted granted Critical
Publication of CN101562544B publication Critical patent/CN101562544B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention relates to the technology of network data processing, which aims at the defects of poor performance of a data packet generating software based on PC of the prior art, and the like, and provides a data packet generator and a data packet generating method. The data packet generator comprises an input interface, a network processor, and a network output port, wherein the input interfaceis used for receiving and transmitting data packet configuration information; the network processor is connected with the input interface, is used for receiving transmitted data packet configuration information and generating data packet template, copying the data packet template in a multithreading mode and transmitting the copied data packet; and the network output port is connected with the network processor and is used for receiving and transmitting the data packet transmitted by the network processor. The invention also provides a data packet generating method based on the data packet generator. The invention can meet needs of various transmitting speeds by strong processing capacity of the network processor, can be easily connected with various types of the existing network devices,has flexible programming and portability at the same time, and has low cost.

Description

A kind of packet maker and packet generation method
Technical field
The present invention relates to the network data processing technology, more particularly, relate to a kind of packet maker and packet generation method.
Background technology
In the research and development and production process of the network equipment, often need test the performance (for example packet forwarding speed) of the network equipment.Test process needs the routine work environment of analog network equipment, the performance performance of network apparatus test under simulated environment then.Because the main task of the network equipment is to receive and transmit packet, therefore, in test process, need to use a kind of equipment to generate packet, then the packet that generates is sent to the network equipment that needs test.This equipment that is used to generate packet is exactly the packet maker.
Packet maker in the market is broadly divided into two types, and one type of packet that is based on common PC (Personal Computer, personal computer) generates software, like Sniffer software; The another kind of data communication tester that is based on FPGA (Field Programmable Gate Array, field programmable gate array) is like the Smartbits series of tests appearance of Spirent company production.
The performance and the PC performance that generate software based on the packet of PC are closely related, because the PC performance is often not high, so the performance of this type packet generation software is also relatively poor.In addition, at present the high bandwidth of the network interface card interface that uses of PC is merely gigabit, and this also determines this type of software can't undertake the test assignment of catenet equipment.
Data communication tester based on FPGA often costs an arm and a leg, and programmability is with portable poor, and these shortcomings have all limited the penetration and promotion of this type data communication tester.
Therefore, need a kind of packet to generate scheme, can overcome that existing packet based on PC generates software performance is poor, the network interface bandwidth is low defective and existing data communication tester based on FPGA costs an arm and a leg, the defective of programmability and portable difference.
Summary of the invention
The technical problem that the present invention will solve is; To packet generation software performance poor, the network interface bandwidth low defective of prior art based on PC; Cost an arm and a leg with existing data communication tester based on FPGA, the defective of programmability and portable difference, a kind of packet maker and packet generation method are provided.
The technical solution adopted for the present invention to solve the technical problems is: construct a kind of packet maker, comprising:
Input interface is used for receiving and transmitting the packet configuration information;
Network processing unit links to each other with input interface, is used to receive transmit the packet configuration information of coming, and generates data package template, and with multithreading data package template is duplicated, and sends and duplicates the packet that obtains;
The network output mouth links to each other with network processing unit, is used for receiving and sending by network processing unit data sent bag.
In packet maker of the present invention, said network processing unit further comprises:
Core processor links to each other with said input interface, is used to receive said packet configuration information, generates and send said data package template, and distributes the transmission task, sends the transmission mission bit stream;
A plurality of transmission micro engines link to each other with core processor, are used to receive separately data package template and transmission mission bit stream, and according to sending mission bit stream data package template are duplicated, and send and duplicate the packet that obtains;
Output interface links to each other with the network output mouth with said a plurality of transmission micro engines, is used to receive the packet that a plurality of transmission micro engines send and mails to the network output mouth.
In packet maker of the present invention, said packet configuration information comprises packet configuration information and data packet number information, and said core processor further comprises:
Information extraction modules is used to receive the packet configuration information, extracts packet configuration information and data packet number information, sends the packet configuration information, sends task according to the data packet number information distribution, generates and send said transmission mission bit stream;
The template generation module links to each other with information extraction modules, is used to receive the packet configuration information, generates and send said data package template.
In packet maker of the present invention, also comprise task memory, it further comprises:
Template storage is used for receiving and storing said data package template;
Scrachpad storage comprises:
The quantity memory block is used for receiving and storing said transmission mission bit stream;
Memory block, template address is used for the memory location of record data bag template at template storage.
In packet maker of the present invention, also comprise:
The control micro engine comprises:
Send control module, be used for, mail to said a plurality of transmission micro engine in the memory location of memory block, said template address read data packet template;
Each sends micro engine and further comprises:
The packet generation module is used to receive the memory location of data package template, reads corresponding data package template and duplicates, and sends and duplicates the packet that obtains; Wherein,
Send control module and in said quantity memory block, read the transmission mission bit stream that sends micro engine, data package template is duplicated according to this transmission mission bit stream control data bag generation module.
The present invention also provides a kind of packet generation method, comprises the steps:
S1, reception packet configuration information;
S2, generate data package template according to the packet configuration information;
S3, with the parallel duplicate packet template of multithreading, send and duplicate the packet that obtains.
In packet generation method of the present invention, said packet configuration information comprises packet configuration information and data packet number information.
In packet generation method of the present invention, said step S1 also comprises:
S11, in said packet configuration information, extract packet configuration information and data packet number information.
In packet generation method of the present invention, said step S2 further comprises:
S21, the said packet configuration information of foundation generate said data package template;
S22, the said data packet number information distribution of foundation are sent task, generate and send mission bit stream;
S23, with the data package template that generates with send mission bit stream and mail to many and send threads.
In packet generation method of the present invention, said step S3 further comprises:
Mission bit stream is parallel to be duplicated data package template according to sending for S31, said many transmission threads, sends and duplicates the packet that obtains.
The technical scheme of embodiment of the present invention has following beneficial effect: by the powerful disposal ability of network processing unit, the data package transmission velocity that technical scheme of the present invention provides can fully satisfy the test needs of the existing all kinds of large, medium and small type network equipments; Through adopting abundant interface type, packet maker provided by the invention can be realized easily interconnected with existing disparate networks equipment; Rely on outstanding versatility and the popularity rate of network processing unit, packet maker provided by the invention has programmatic and transplantability very flexibly, and with low cost.
Description of drawings
To combine accompanying drawing and embodiment that the present invention is described further below, in the accompanying drawing:
Fig. 1 is the structural representation according to the packet maker 100 of one embodiment of the invention;
Fig. 2 is the structural representation according to the network processing unit 200 of one embodiment of the invention;
Fig. 3 is the structural representation according to the network processing unit 300 of one embodiment of the invention;
Fig. 5 is the flow chart according to the packet generation method 500 of one embodiment of the invention;
Fig. 4 is the flow chart according to the packet generation method 400 of one embodiment of the invention;
Fig. 6 is the flow chart according to the packet generation method 600 of one embodiment of the invention.
Embodiment
The packet that the invention provides a kind of network processor-based generates scheme; Can be by the powerful parallel processing capability of network processing unit; The data package transmission velocity that can fully satisfy existing all kinds of large, medium and small network equipment detection needs is provided; And interface is richer, can realize easily interconnected with existing disparate networks equipment just combining accompanying drawing and specific embodiment to describe technical scheme provided by the invention in detail below.
Fig. 1 is the structural representation according to the packet maker 100 of one embodiment of the invention.As shown in Figure 1, packet maker 100 comprises input interface 102, network processing unit 104 and the network output mouth 106 that links to each other in order.
Input interface 102 is used to receive the packet configuration information 108 of user through the configuration interface input, and it is mail to network processing unit 104 handles.Packet configuration information 108 comprises packet configuration information and data packet number information.The packet configuration information is used to make up data package template, and it can comprise the various data that are used to make up packet.For example; With OSI (Open System Interconnection; Open System Interconnection) reference model is an example, and the packet configuration information comprises logic addressing information (three layer protocol information) that the corresponding control information transmission of the pairing packet payload information of application layer~session layer, transport layer, network layer are corresponding and data link layer corresponding physical addressing information (two-layer protocol information) etc.Because the performed data forwarding of the network equipment is operated employed addressing information and often is merely network layer and data link layer corresponding protocols information, so can the packet configuration information be reduced to and only comprise packet payload information, three layer protocol information and two-layer protocol information.
The packet payload information has defined the create-rule of packet payload, for example can adopt complete 0, complete 1, increase progressively (for example writing 0x00 to 0xff successively) to the packet payload, successively decrease (for example writing 0xff to 0x00 to the packet payload), A5 modes such as (writing 0xa5 to the packet payload) make up the packet payload.
Three layer protocol information definitions three layer protocol types (like IP (Internet Protocol; Internet protocol) agreement, IPX (Internetwork Packet Exchange; Internet packet exchange) agreement etc.), version, COS, three layers of addressing information and the verification that calculates and etc. information; Be example with the IP agreement for example, this three layer protocols information comprises information such as source IP address, purpose IP address.
The two-layer protocol information definition two layers of addressing information, the verification that calculates and etc. information; Be example for example with Ehernet II frame; This two-layer protocol information comprises information such as source MAC (Media Access Contorl, medium access control) address, target MAC (Media Access Control) address.
The content that it should be noted that the packet configuration information can arbitrarily set according to concrete realization (for example according to the type of the packet that will generate), and scope of the present invention should not be construed as and only limits to describing for example of preceding text.
Record the quantity of data packets that needs generation in the data packet number information.
Network processing unit 104 is core components of packet maker 100, and it receives the packet configuration information 108 that input interface 102 is transmitted, and extracts wherein packet configuration information and data packet number information.Subsequently, network processing unit 104 generates data package template according to the packet configuration information, thereby and with multithreading data package template is duplicated the parallel required packet 110 that generates according to data packet number information, mail to network output mouth 106 again.
Network output mouth 106 comprises various types of network interfaces (for example Ethernet) of supporting various speed (such as but not limited to gigabit, OC48, OC192 etc.), is used to send the packet 110 of generation.
Network processing unit is the core component of packet maker of the present invention, and it adopts coenocytism, can just combine Fig. 2 that its structure is described in detail below through parallel generation and the transmission of accomplishing packet of multithreading.
Fig. 2 is the structural representation according to the network processing unit 200 of one embodiment of the invention.As shown in Figure 2, network processing unit 200 comprises core processor 202, a plurality of transmission micro engine 204 and output interface 206.A plurality of micro engines 204 link to each other with output interface 206 with core processor 202 respectively.
Core processor 202 links to each other such as but not limited to the input interface among Fig. 1 102 with input interface, is used to receive the packet configuration information 208 that input interface is received and transmitted.Packet configuration information 208 is basic identical with the packet configuration information 108 among Fig. 1, repeats no more here.Core processor 202 extracts packet configuration information and data packet number information from packet configuration information 208, and generates data package template according to the packet configuration information.Simultaneously, core processor 202 sends task according to the data packet number information distribution, confirms that promptly each transmission micro engine 204 needs the data packet number that sends.After this, core processor 202 mails to each transmission micro engine 204 of participating in sending with the data package template that generates, and sends micro engine 204 to each simultaneously and sends the transmission mission bit stream.
As optional, also can be each transmission micro engine 204 of participating in sending packet configuration information 208 is set separately.In this case; Core processor 202 extracts packet configuration information and data packet number information respectively from each packet configuration information 208; Generate corresponding data package template, the data packet number information with data package template that generates and extraction together mails to corresponding transmission micro engine 204 then.
Send micro engine 204 and be used to receive core processor 202 data package template that sends and the data packet number that self need send; And the data packet number that foundation needs to send duplicates the data package template of receiving; Generate a plurality of packets 210, and mail to output interface 206.This shows that the generating rate of packet is closely related with the quantity of sending micro engine 204, therefore, in concrete implementation procedure, can increase the quantity of sending micro engine 204 according to needed packet generating rate.
Output interface 206 connects the network output mouth, such as but not limited to the network output mouth 110 among Fig. 1, is used for the packet of receiving 210 is mail to the network output mouth that is connected.As indicated above; The network output mouth comprises the diverse network interface of supporting various speed (such as but not limited to gigabit, OC48, OC192 etc.); And the corresponding different data packet format of the network output mouth of different rates (the corresponding gigabit interface of ethernet packet header (like the mac frame head) for example; The corresponding OC48 in POS (Packet Over SONET, synchronous optical network interface) packet header, OC192 interface etc.).Output interface 206 is used for the form according to packet 210, and it is mail to corresponding port in the network output mouth.
In concrete implementation procedure; Can be according to concrete needs (transmission rate that for example need realize); From existing diverse network processor, select suitable network processing unit, on the basis of this network processing unit, add corresponding module then, realize technical scheme of the present invention.For example, the network processing unit IXP2800 that can select Intel company to make realizes technical scheme of the present invention as the basis, to realize being up to the data package transmission velocity of 10Gbps.IXP2800 comprises Xscale core processor (hereinafter referred core processor), multi-level store, a plurality of micro engine (standard configuration is 16) and SPI interface.Wherein, multi-level store comprises Scratchpad memory (hereinafter referred scrachpad storage) and DDR (Double Data Rate, double data rate) memory (hereinafter referred template storage).In running, communicate through scrachpad storage between core processor and a plurality of micro engine, then intercom mutually between a plurality of micro engines through Next Neighbor Ring.For ease of understanding, in the following description, scrachpad storage and DDR memory are referred to as task memory.Below the network processing unit IXP2800 that just makes with Intel company be that example is described technical scheme of the present invention.
Fig. 3 is the structural representation according to the network processing unit 300 of one embodiment of the invention.The network processing unit IXP2800 that network processing unit 300 is made by Intel company improves and forms.As shown in Figure 3, network processing unit 300 comprises core processor (Xscale core processor) 302, task memory 304, a plurality of micro engine 306/308 and output interface (SPI interface) 310.Wherein, Task memory 304 further comprises scrachpad storage (Scratchpad memory) 3042 and template storage 3044, and scrachpad storage 3042 can further be subdivided into not only quantity memory block 30422 with memory block, template address 30424, a plurality of micro engine 306/308 but also can be further defined as control micro engine 306, a plurality of transmission micro engine 308.
Core processor 302 links to each other such as but not limited to the input interface among Fig. 1 102 with input interface, is used to receive the packet configuration information 312 that input interface is received and transmitted.The packet configuration information of describing among packet configuration information 312 and Fig. 1 108 is basic identical, repeats no more here.For realizing technical scheme of the present invention, information extraction modules 3022 and template generation module 3024 in the Xscale of IXP2800 core processor, have been added.
Information extraction modules 3022 is used for extracting packet configuration information and data packet number information from packet configuration information 312, then the packet configuration information is mail to template generation module 3024.Subsequently; Information extraction modules 3022 is sent task according to the data packet number information distribution; Confirm that promptly each sends micro engine 308 and need the quantity of data packets of sending, then it is write in the quantity memory block 30422 of scrachpad storage 3042 (send and send mission bit stream).Quantity memory block 30422 further is divided into a plurality of subpools according to the quantity of sending micro engine 308, the data packet number of the transmission micro engine 308 required transmissions that each subpool storage is corresponding.In concrete implementation procedure, in scrachpad storage 3042, but quantity memory block 30422 corresponding address scope 0x3e00, and further confirm the address realm of each subpool according to the quantity of subpool.For each, if the data on its address are that packet is not sent in 0 expression, if 0xffffffff then representes to send continuously packet, if other numerals are then represented the data packet number that needs send.Special, when the user sends when stopping to send order through configuration interface, can realize through on the subpool address, writing data 0.
Template generation module 3024 links to each other with information extraction modules 3022; Be used to receive information extraction modules 3022 data sent bag configuration informations; Generate data package template according to this information; And it is write in the template storage 3044 (send data package template), and its memory location in template storage 3044 is write in the memory block, template address 30424 of scrachpad storage 304.Memory block, template address 30424 further is divided into a plurality of subpools according to the quantity of sending micro engine 308, the memory location of data package template in template storage 3044 of the transmission micro engine 308 required transmissions that each subpool storage is corresponding.In concrete implementation procedure; In scrachpad storage 3042; But memory block, template address 30424 corresponding address scope 0x3e10~0x3e90 (the corresponding situation of only using 8 transmission micro engines 308); Wherein corresponding first of 0x3e10 sends the memory location (buffer index) of micro engine 308 pairing data package templates in template storage 3044, and other addresses by that analogy.
As optional, also can be each transmission micro engine 308 of participating in sending packet configuration information 312 is set separately.In this case, information extraction modules 3022 is extracted packet configuration information and data packet number information respectively from each packet configuration information 312, and the packet configuration information is mail to template generation module 3024 generation data package templates successively.Simultaneously, each data packet number information that will extract of information extraction modules 3022 writes respectively in the quantity memory block 30422 of scrachpad storage 3042.Each data package template that template generation module 3024 generates will write in the template storage 3044, and its memory location in template storage 3044 is write in the memory block, template address 30424 of scrachpad storage 3042.
Control micro engine 306 forms through in the micro engine of IXP2800, adding 3062 improvement of transmission control module.Send control module 3062 and be used for the memory location of reading each data package template in the memory block, template address 30424 of scrachpad storage 3042; Through Next Neighbor Ring the memory location of reading is sent to each corresponding transmission micro engine 308 then, notify each to send micro engine 308 read data packet template from template storage 3044 with this.
In addition, send the transmission mission bit stream that control module 3062 also is used for reading in the quantity memory block 30422 of scrachpad storage 3042 each transmission micro engine 308, the data packet number that promptly need send.When find sending data packet number that micro engine 308 needs to send greater than 0 the time, just the transmission micro engine 308 of notice correspondence duplicates the data package template that it reads, and sends then and duplicates the packet that obtains.After this, send data packet number that control module 3062 will send micro engine 308 and need to send and be updated to former quantity and subtract 1, repeat said process then, data packet number that need transmission up to this transmission micro engine 308 is 0.
Sending micro engine 308 forms through adding 3082 improvement of packet generation module in the micro engine of IXP2800.Packet generation module 3082 is used to receive the memory location of control micro engine 306 data sent bag templates, in template storage 3044, reads corresponding data package template.Subsequently, notice is sent in duplicating that packet generation module 3082 reception control micro engines 306 send, and data package template is duplicated and sends.
The output interface of describing among output interface 310 and Fig. 2 206 is basic identical, is used to send each and sends the packet 314 that micro engine 308 generates, and repeats no more here.
In concrete implementation procedure, scrachpad storage can be realized by the Scratchpad memory.Scratchpad is the memory block of built-in chip type, and access speed is very fast, is only second to register.And the communication interface between control micro engine and the transmission micro engine is neighbours' registers, and neighbours' register is because be register, so read or write speed is very fast.In the IXP2800 network processing unit, each micro engine is provided with 128 neighbours' registers.Content in neighbours' register can be read by next micro engine.For example the program in the micro engine 0 writes neighbours' register with data, micro engine 1 just can be from neighbours' register reading of data.By that analogy; Except that first and last micro engine do not have the front with the back neighbours; Remaining micro engine can be through the previous micro engine of neighbours' register read data, or data write neighbours' register realize and the communicating by letter of next micro engine.When 128 neighbours' registers were set to Next Neighbour Ring, whole 128 registers became the formation of a first in first out.With 0, No. 1 micro engine is example, and No. 0 micro engine writes data in Next Neighbour Ring formation, and No. 1 micro engine just can be received these data.Joining the team, go out team, quene state judgement etc. all has corresponding built-in command and register to realize.The network processing unit that Intel company produces such as the related content of IXP2800 network processing unit are described in detail in " Intel Building block ref Manual ", and this paper quotes full content wherein.
It should be noted that the network processing unit 300 among Fig. 3 is to be improved by the network processing unit IXP2800 that Intel company makes to form.Improvements are to have added some modules such as information extraction modules 3022, to realize technical scheme of the present invention.In concrete implementation procedure, the module of interpolation can realize through hardware mode, also can realize (for example IXP2800 being programmed) through software mode, also can combine the mode of (firmware) to realize through software and hardware.In addition, every employing coenocytism also comprises the network processing unit of the memory of suitable capacity, all can be used for realizing technical scheme of the present invention, so the scope of technical scheme of the present invention does not receive the restriction of particular network processor type.Special, realize that when being used in combination C language and microcode (microcode) when of the present invention, the degree of coupling between each module is low, new function is expanded in can be convenient, flexible make amendment.
The present invention also provides a kind of packet generation method based on above-mentioned packet maker, below just combine following accompanying drawing and specific embodiment to be described in detail.
Fig. 4 is the flow chart according to the packet generation method 400 of one embodiment of the invention.As shown in Figure 4, method 400 starts from step 402.
Subsequently, at next step 404, receive the packet configuration information.The content of relevant data bag configuration information is described in detail at preamble, repeats no more here.
Subsequently, at next step 406, generate data package template according to the packet configuration information.
Subsequently, at next step 408, generate packet and send so that multithreading is parallel.In this step, with what multithreading walked abreast data package template is duplicated (number of times that duplicates is included in the packet configuration information) according to the packet configuration information, obtain a plurality of packets, send then and duplicate the packet that obtains.
At last, method 400 ends at step 410.
Core concept of the present invention is at first to generate data package template, walks abreast through many threads simultaneously then and accomplishes duplicating and the transmission task of data package template, just combines Fig. 5 that this core concept is described below.
Fig. 5 is the flow chart according to the packet generation method 500 of one embodiment of the invention.As shown in Figure 5, method 500 starts from step 502.
Subsequently, at next step 504, receive the packet configuration information.The content of relevant data bag configuration information is described in detail at preamble, repeats no more here.
Subsequently, at next step 506, from the packet configuration information, extract packet configuration information and data packet number information.The content of relevant data bag configuration information and data packet number information is described in detail at preamble, repeats no more here.
Subsequently, at next step 508, according to the packet configuration information generation data package template of extraction, and according to the thread distribution transmission task of data packet number information for participating in sending, mission bit stream is sent in generation.
Subsequently, at next step 510, data package template that generates and transmission mission bit stream are mail to corresponding transmission thread.As indicated above, also can be each transmission thread of participating in sending the packet configuration information is set separately.In this case; From each packet configuration information, extract packet configuration information and data packet number information at first respectively; Generate corresponding data package template, the data packet number information with data package template that generates and extraction together mails to corresponding transmission thread then.
Subsequently, at next step 512, each thread sends then and duplicates the packet that obtains according to parallel data package template is duplicated of separately transmission mission bit stream.
At last, method 500 ends at step 514.
Said method can be carried out through network processing unit, is shared the generation of data package template and is duplicated the transmission task by a plurality of processors in the network processing unit.Below the implementation of said method is just described with reference to the IXP2800 network processing unit of Intel company.
Fig. 6 is the flow chart according to the packet generation method 600 of one embodiment of the invention.Method 600 is carried out by the IXP2800 network processing unit of Intel company.The content of relevant this network processing unit is described in detail at preamble, repeats no more here.As shown in Figure 6, method 600 starts from step 602.
Subsequently, at next step 604, core processor receives the packet configuration information, extracts packet configuration information and data packet number information.The content of relevant data bag configuration information, packet configuration information and data packet number information is described in detail at preamble, repeats no more here.
Subsequently, at next step 606, core processor generates data package template according to the packet configuration information, and sends task according to the data packet number information distribution, generates and sends mission bit stream.
Subsequently, at next step 608, core processor is stored in data package template in the template storage, and its memory location in template storage is write scrachpad storage, in scrachpad storage, writes the transmission mission bit stream simultaneously.
Subsequently, at next step 610, a plurality of transmission micro engines are mail in the memory location of control micro engine read data packet template.
Subsequently, at next step 612, a plurality of transmission micro engines are according to the memory location read data packet template of data package template.
Subsequently, at next step 614, the control micro engine is controlled the parallel duplicate packet template of a plurality of transmission micro engines according to sending mission bit stream, sends and duplicates the packet that obtains.Wherein send micro engine transmission thread promptly corresponding mentioned above.
At last, method 600 ends at step 616.

Claims (7)

1. a packet maker is characterized in that, comprising:
Input interface is used for receiving and transmitting the packet configuration information; Said packet configuration information comprises packet configuration information and data packet number information;
Network processing unit links to each other with input interface, is used to receive transmit the packet configuration information of coming, and generates data package template, and with multithreading data package template is duplicated, and sends and duplicates the packet that obtains;
The network output mouth links to each other with network processing unit, is used for receiving and sending by network processing unit data sent bag;
Said network processing unit further comprises:
Core processor links to each other with said input interface, is used to receive said packet configuration information, generates and send said data package template, and distributes the transmission task, sends the transmission mission bit stream;
Said core processor further comprises: information extraction modules; Be used to receive the packet configuration information; Extract packet configuration information and data packet number information, send the packet configuration information, send task according to the data packet number information distribution; Confirm the quantity of data packets that each transmission micro engine need send, generate and send said transmission mission bit stream;
A plurality of transmission micro engines link to each other with core processor, are used to receive separately data package template and transmission mission bit stream, and according to sending mission bit stream data package template are duplicated, and send and duplicate the packet that obtains.
2. packet maker according to claim 1 is characterized in that, said network processing unit further comprises:
Output interface links to each other with the network output mouth with said a plurality of transmission micro engines, is used to receive the packet that a plurality of transmission micro engines send and mails to the network output mouth.
3. packet maker according to claim 1 is characterized in that, said core processor further comprises:
The template generation module links to each other with information extraction modules, is used to receive the packet configuration information, generates and send said data package template.
4. a packet maker is characterized in that, comprises input interface, network processing unit and network output mouth;
Said network processing unit further comprises core processor, task memory, a plurality of transmission micro engine and output interface:
Said core processor links to each other with said input interface, is used to receive said packet configuration information, generates and send said data package template, and distributes the transmission task, sends the transmission mission bit stream;
Said core processor further comprises information extraction modules and template generation module:
Said information extraction modules; Be used to receive the packet configuration information; Extract packet configuration information and data packet number information, send the packet configuration information, send task according to the data packet number information distribution; Confirm the quantity of data packets that each transmission micro engine need send, generate and send said transmission mission bit stream;
Said template generation module links to each other with information extraction modules, is used to receive the packet configuration information, generates and send said data package template;
Said task memory, the said task memory that links to each other with said core processor further comprises template storage, scrachpad storage and memory block, template address:
Said template storage is used to receive and store the said data package template that said template generation module generates;
Said scrachpad storage comprises: the quantity memory block is used to receive and store the said transmission mission bit stream that said information extraction modules is sent;
Memory block, said template address is used for the memory location of record data bag template at template storage;
Said a plurality of transmission micro engine links to each other with said task memory, be used to receive separately data package template with send mission bit stream, and data package template is duplicated according to sending mission bit stream, send and duplicate the packet that obtains and give said output interface.
5. packet maker according to claim 4 is characterized in that, also comprises:
The control micro engine comprises:
Send control module, be used for, mail to said a plurality of transmission micro engine in the memory location of memory block, said template address read data packet template;
Each sends micro engine and further comprises:
The packet generation module is used to receive the memory location of data package template, reads corresponding data package template and duplicates, and sends and duplicates the packet that obtains; Wherein,
Send control module and in said quantity memory block, read the transmission mission bit stream that sends micro engine, data package template is duplicated according to this transmission mission bit stream control data bag generation module.
6. a packet generation method is characterized in that, comprises the steps:
S1, reception packet configuration information; Said packet configuration information comprises packet configuration information and data packet number information;
S2, generate data package template according to the packet configuration information;
S3, with the parallel duplicate packet template of multithreading, send and duplicate the packet that obtains;
Said step S1 also comprises: S11, extraction packet configuration information and data packet number information in said packet configuration information;
Said step S3 further comprises: mission bit stream is parallel to be duplicated data package template according to sending for S31, said many transmission threads, sends and duplicates the packet that obtains.
7. packet generation method according to claim 6 is characterized in that, said step S2 further comprises:
S21, the said packet configuration information of foundation generate said data package template;
S22, the said data packet number information distribution of foundation are sent task, generate and send mission bit stream;
S23, with the data package template that generates with send mission bit stream and mail to many and send threads.
CN2008100668012A 2008-04-17 2008-04-17 Data packet generator and data packet generating method Expired - Fee Related CN101562544B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100668012A CN101562544B (en) 2008-04-17 2008-04-17 Data packet generator and data packet generating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100668012A CN101562544B (en) 2008-04-17 2008-04-17 Data packet generator and data packet generating method

Publications (2)

Publication Number Publication Date
CN101562544A CN101562544A (en) 2009-10-21
CN101562544B true CN101562544B (en) 2012-07-04

Family

ID=41221176

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100668012A Expired - Fee Related CN101562544B (en) 2008-04-17 2008-04-17 Data packet generator and data packet generating method

Country Status (1)

Country Link
CN (1) CN101562544B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101841437B (en) * 2010-03-23 2012-04-18 华为技术有限公司 Method and device for testing equipment
CN102523159A (en) * 2011-12-15 2012-06-27 盛科网络(苏州)有限公司 Certification message generation method and system for network chip
CN103441952B (en) * 2013-08-20 2016-10-05 西安电子科技大学 Based on multinuclear or the processing method of network data packets of many-core flush bonding processor
CN106357475A (en) * 2016-08-31 2017-01-25 成都科来软件有限公司 Data packet construction system and working method thereof
TWI686062B (en) * 2018-10-18 2020-02-21 神雲科技股份有限公司 Data-generation device, switch and data-generation method
CN112650705A (en) * 2020-12-31 2021-04-13 清华大学 Routing control method and artificial intelligence processor
CN112530541B (en) * 2021-01-21 2022-10-04 山东勤成健康科技股份有限公司 Medical information system data templating integrated system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1509016A (en) * 2002-12-19 2004-06-30 ��ʽ����Ntt����Ħ Agreement test system and method thereof
CN101141320A (en) * 2007-08-07 2008-03-12 中兴通讯股份有限公司 Method and device for generating network flux

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1509016A (en) * 2002-12-19 2004-06-30 ��ʽ����Ntt����Ħ Agreement test system and method thereof
CN101141320A (en) * 2007-08-07 2008-03-12 中兴通讯股份有限公司 Method and device for generating network flux

Also Published As

Publication number Publication date
CN101562544A (en) 2009-10-21

Similar Documents

Publication Publication Date Title
CN101562544B (en) Data packet generator and data packet generating method
CN100369423C (en) Network simulation detection system and method
JP4024806B2 (en) Method and apparatus for providing interconnected network functionality
CN103581274B (en) Message forwarding method and device in stacking system
CN106341338B (en) A kind of retransmission method and device of message
CN105763437A (en) Message forwarding method and network equipment
CN110034993A (en) Transmit method, equipment and the network system of data
CN110177013A (en) A kind of EtherCAT master-salve station design and implementation methods based on FPGA
CN107947994B (en) Network topology self-discovery method and device, network equipment and computer storage medium
CN107302528A (en) A kind of transmission method of multi-protocol data and a kind of gateway apparatus
CN102098187B (en) Method and system for testing robustness of data path of router
CN102413018A (en) FPGA (field programmable gate array) based software-hardware coordinated network test system and method
CN108173691A (en) A kind of method and device of cross-equipment aggregation
CN102307118A (en) Back plate test method, apparatus thereof and system thereof
CN104901832A (en) Half-practicality network simulation platform of aviation Ad-Hoc network
CN105847460A (en) Method and device for realizing BFD (Bidirectional Forwarding Detection)
CN105553883A (en) Multi-DSP data exchange apparatus based on FPGA
CN104202398A (en) Remote control method, device and system
CN101527724B (en) Data transport container for transferring different data in internet protocol network
CN102299862B (en) Quick forwarding equipment and method for two-layer tunnel
CN101369934A (en) Network analogue method and system
CN100396031C (en) System and method for testing function of communication apparatus
CN101247294B (en) Test data generating method and device
CN106789449A (en) A kind of CAN exploitation and method of testing and system
CN101540703B (en) Method for configuring and testing asynchronous transmission mode point-to-multipoint interface environment and system thereof

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120704

Termination date: 20130417