CN1412976A - Group polling multistream transmit method for generating data, grouping network and testing load - Google Patents
Group polling multistream transmit method for generating data, grouping network and testing load Download PDFInfo
- Publication number
- CN1412976A CN1412976A CN02146150A CN02146150A CN1412976A CN 1412976 A CN1412976 A CN 1412976A CN 02146150 A CN02146150 A CN 02146150A CN 02146150 A CN02146150 A CN 02146150A CN 1412976 A CN1412976 A CN 1412976A
- Authority
- CN
- China
- Prior art keywords
- stream
- group
- grouping
- time
- iat
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 title claims description 24
- 230000005540 biological transmission Effects 0.000 claims description 23
- 238000005516 engineering process Methods 0.000 claims description 9
- 230000003139 buffering effect Effects 0.000 claims description 8
- 125000004122 cyclic group Chemical group 0.000 claims description 7
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 6
- 238000006073 displacement reaction Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000007689 inspection Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 108091092195 Intron Proteins 0.000 description 2
- 238000000205 computational method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000002542 deteriorative effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
In test load generation system by adopting FPGA or ASIC, according to the flow mode of every flow calcualting currently grouped preset transmitting time EST; grouping all the flows according to the pinricple of that the number of flows is defined by minimum IAT, the IAT is a time length occupied by a flow for transmitting a subgroup; then in every group, according to the principle of that EST is less than flow of global clock period and is time over flow placing the correspondent subgroup into grouped transmitting queue; finally utilizing global polling mechanism to circularly check transmitting queue of every subgroup, according to the principle of that highest significant position is preference, priority-transmitting time over flow.
Description
Technical field
The branch group polling formula multithread sending method that generation data packet network test load is used belongs to network test load generation technique field.
Background technology
Test load generate be data packet network test in the applied in network performance test particularly must with one of critical component, can be used for uniformity test, HIST and performance test.Its role is to: generate data traffic and issue equipment under test or tested network, thereby provide a controlled reproducible data traffic environment for network test with certain characteristic; On the other hand, partial discharge also will carry some detecting information for analysis to measure as test stream.
For the diversity of data traffic in the Simulation of Complex network environment and sudden, during generating, load usually introduces the notion of " stream ".One " stream " is a series of groupings that have certain feature at aspects such as block length, type, source/destination address, QoS priority, for example stream of the TCP in the IP network (only paying close attention to a direction) and UDP stream.The speed and the burst degree of stream are its important attribute.By making up the different stream of big measure feature, just can simulate traffic environment complicated in the real network to a certain extent.
In this load generation system based on stream, when a plurality of streams were shared the bandwidth of same transmission interface, a key issue was how to determine the transmission sequence and the delivery time of grouping in each stream, and this work is finished by the stream scheduler module.The stream scheduling not only will guarantee the average transmission rate of each stream, also will keep " stream mode " of each stream as far as possible.Stream mode is the important attribute of stream, and it has not only determined the transmission rate of stream, and has portrayed the sudden of stream.Accurately being defined as of stream mode: the standard that the transmitting time sequence of dividing into groups in the stream (or sending intervening sequence) should meet.This standard can be a simple specification, also can be complicated stochastic model.For example all uniform flow requires all groupings to send (timeslice that each grouping takies is identical) with uniform interval; Linear burst flow requires periodic occur happen suddenly (burst) in the process of transmitting; Poisson flow then requires grouping to send one-tenth negative exponent distribution blanking time (timeslice); It is the random process of self similarity that self similar flow requires to send intervening sequence.Obviously, support different stream mode can adopt not homogeneous turbulence scheduling strategy, support that in general the requirement of complicated more stream mode convection current dispatching algorithm is high more.
Generate the paper or the patent of the special elaboration stream scheduling problem of not publishing in the field at present at test load.But the stream dispatching algorithm can be used for reference the queue scheduling algorithm in the network QoS control to a great extent because both at problem certain similarity is arranged.For example, in order to support complicated stream mode, can copy a kind of transmission algorithm of queue scheduling algorithm design: the virtual delivery time (being exactly predetermined delivery time) that at first calculates grouping in each stream according to the stream mode of each stream based on virtual delivery time ordering, to divide into groups again will divide into groups then to send in the virtual moment as much as possible according to virtual delivery time ordering.Above algorithm versatility is very strong, and the computational methods that only need to change virtual delivery time just can be supported various stream mode.But, wherein have an ordering action to relate to the problem of time complexity:, to influence transmission rate thereby the insertion of ordering operation required time may surpass the time that sends a grouping for high-speed interface (more than 2.5Gbps).For example, for the interface of 2.5Gbps, the minimum IP message required time that sends a length and be 40 bytes is 156ns (containing the PPP encapsulation); Therefore be the FPGA of 50MH for dominant frequency, need in 8 clock cycle, finish and once insert operation; And the time that optimized sort algorithm once inserts is O (lnN), and N is a current queue length, and therefore the maximum queue length that can support is 2
8=256, promptly support 256 streams at most; The insertion algorithm of considering optimization again needs complex data structures support, and algorithm has very big difficulty and expense in realization.Address this problem two possible directions: the one, optimize the insert action of ordering, for example adopt parallel algorithm, so perhaps can support more stream, but the implementation complexity of algorithm can be quite high; Another evades ordering action exactly, and design does not need the new method that sorts.This method belongs in a kind of thinking in back.
Summary of the invention
The objective of the invention is to propose the branch group polling formula multithread sending method that a kind of generation data packet network test load of evading ordering action is used.
The core concept of grouping polling dispatching algorithm (GRR) has two: one, and each stream is according to the predetermined delivery time EST (Expected Sending Time) of the stream mode calculating current group of oneself, and the relation according to EST and current time during scheduling determines whether to send grouping; The 2nd, with all stream packets, each stream of poll is searched the stream that needs to send grouping in every group, whenever finds a stream just its grouping to be put into the group transmit queue, and adopts combinational logic to realize respectively organizing the poll of transmit queue at high level.
The invention is characterized in: in the test load generation system that adopts FPGA (field programmable gate array), at first calculate the EST (predetermined delivery time) of current group according to the stream mode of each stream; Secondly, all stream packets are carried out the branch group polling, each stream of poll that concerns according to EST and global clock cycle in every group is searched the stream that needs send grouping, whenever finds a stream just this grouping to be put into the transmit queue of grouping; Then by the global group polling mechanism, the transmit queue of each group of circular test or buffering are found just transmission; It contains successively and has the following steps:
(1) stream mode according to each stream calculates EST;
(2) according in group, searching the principle that the IAT of the flow amount of in one week of overtime stream poll required time in promptly dividing into groups less than the principle of the IAT (stream sends the timeslice length that grouping takies) of any one stream in the group by minimum determine all stream is divided into groups by following formula:
CHECK_TIME*NSG≤IAT
i
Wherein, CHECK_TIME is for checking the time of a stream; NSG is the number of stream in the grouping; IAT
iBe the set { S of stream in the group
1, S
2..., S
NSGIn i stream S
iIAT;
(3) poll is searched overtime stream in the grouping: the time of short grouping promptly exists and requires under the prerequisite of overtime stream to find under the principle of next overtime stream left margin from grouping to right margin in the period in minimum packets less than sending one in the time of checking a stream, each stream of sequential search, rebound left margin again when going out right margin moves in circles; For each stream, check that global clock whether greater than the EST of this stream, if overtime greater than just representing, just means a grouping that will send this stream, the sign of this stream is sent into the transmit queue of this grouping; Otherwise, check next stream;
(4) the global group poll is searched the message that will send: total time that group polling mechanism is found non-empty queue (or buffering) at every turn and obtained a stream to be sent less than sending under this principle of minimum packets time, the transmit queue of each grouping of cyclic query has message just to send.
Described global group poll is with the succinct realization of combinational logic: for a flag bit is established in each grouping, whether with 0/1 transmit queue of representing to divide into groups is empty, the flag bit of each grouping and become an attribute field, realize overall poll by everybody logical combination in cyclic shift and the field; Judge that whether certain grouping has message to send is to carry out according to everybody priority, if promptly high-order corresponding its flag bit of grouping is 1, expression has message, just overall transmit queue is sent in grouping and is preferentially sent.
Described group technology contains following steps successively:
(1) all stream is sorted from small to large according to IAT;
(2) determine first group capacity according to the IAT of minimum, banishing of front respective number into first group;
(3) determine second group capacity according to IAT minimum in the remaining stream again, less the banishing of the IAT of respective number into second group;
(4) repeat above process, finish up to grouping.
In the described group technology, all streams divide into groups according to following formula:
CHECK_TIME*NSG≤LAT
i/K
Wherein, K is a redundancy, K 〉=1.
When calculating described EST, for equal uniform flow every overtime transmission once, EST increases the time of an IAT.
When calculating described EST, for continuous burst flow, every overtime transmission once, EST increases an IAT, but when the burst end, EST increases a SilenceTime (gap of mourning in silence).
That the test load generation system adopts is FPGA or ASIC (application-specific IC).
Experimental results show that the present invention has realized intended purposes.
Description of drawings
Fig. 1. grouping polling dispatching algorithm (GRR:Grouped Round Robin) schematic diagram.
The figure of Fig. 2 .GRR algorithm global module.
Fig. 3. the structural representation of polling mechanism method and stream information in the group.
Fig. 4. the definition mode schematic diagram of linear flow pattern.
Fig. 5. the program flow chart of group technology.
Fig. 6. the Ether frame structure chart.
Fig. 7. the schematic diagram of ring shift left.
Embodiment
As shown in Figure 1, establishing total N stream will send, and is designated as Stream
1-Stream
N, being divided into M group in turn, each group can be designated as { Stream
Left[i]..., Stream
Right[i], left[i wherein] and right[i] be respectively the border, the left and right sides of i group.In each group, adopt polling algorithm each stream of circular test in turn.Each stream will write down a predetermined delivery time, is designated as EST, and EST determines according to stream mode.Safeguard a clock in the overall situation, clock wants each clock cycle to refresh once.During stream of each inspection, if the EST and the global clock of this stream compared---EST is less than global clock, and is promptly overtime, then sends a grouping of this stream, and determines the EST of next grouping according to the stream mode of this stream; If do not have overtimely, then do not do any action, check next stream.For overtime stream, its stream number signs such as (or) stream information addresses is sent into the transmit queue (when the team leader is 1, deteriorating to buffering) of this group.The overall situation has a group polling mechanism, and the transmit queue of each group of circular test (or buffering) is found just transmission; Group polling can be realized by simple combinational logic.Introduce each part below in detail.
The function of global group polling mechanism is the transmit queue (or buffering) of each group of cyclic query, has message just to send.On performance, require group polling mechanism to find non-empty queue (or buffering) at every turn and obtain a stream to be sent be no more than the time (is 160ns for the 2.5G interface) that sends minimum packets total time.Group polling can adopt combinational logic to realize very compactly, basic ideas are: each group establishes a flag bit, whether represent to organize transmit queue with 0/1 is empty, the flag bit of each group also becomes an attribute field, realize poll by everybody logical combination in cyclic shift and the field, the time of at every turn finding next non-room mostly is two clock cycle (50MHz is 40ns down) most.Detailed algorithm is described below:
Suppose to have 8 groups, each group uses a flag bit to represent.If FIFO (fifo queue) is empty in the group, then Dui Ying flag bit is 0; If the FIFO in the group is not empty, then Dui Ying flag bit is 1.Form a byte for these 8.Each cycle is with this 8 hyte ring shift left.The purpose of displacement is to make the position of the group correspondence that the next one will send be in highest order.
Use a counter (Current_Group) to be used to preserve position when anterior displacement, the group sequence number of promptly current highest order correspondence.For example, in the superincumbent table, initial Current_Group=0, displacement back Current_Group=1.Each displacement back being calculated as to Current_Group:
Current_Group=(Current_Group+1)Mod?8
If do not consider the factor that is shifted, judge whether certain group has message to send and can use combinational logic to realize.Judge according to everybody priority and carry out, if promptly the high-order corresponding group of attribute field has message, just preferential the transmission.Next sequence number that will the transmission group is N_Group.Be computational methods (can also further merge and simplify) below to N_Group:
N_Group=0:
If B0=1
N_Group=1:
If (B0=0) ﹠amp; ﹠amp; (B1=1)
N_Group=2:
If (B0=0) ﹠amp; ﹠amp; () ﹠amp B1=0; ﹠amp; (B2=1)
n_Group=3:
If (B0=0) ﹠amp; ﹠amp; () ﹠amp B1=0; ﹠amp; () ﹠amp B2=0; ﹠amp; (B3=1)
N_Group=4:
If (B0=0) ﹠amp; ﹠amp; () ﹠amp B1=0; ﹠amp; () ﹠amp B2=0; ﹠amp; () ﹠amp B3=0; ﹠amp; (B4=1)
N_Group=5:
If (B0=0) ﹠amp; ﹠amp; () ﹠amp B1=0; ﹠amp; () ﹠amp B2=0; ﹠amp; () ﹠amp B3=0; ﹠amp; () ﹠amp B4=0; ﹠amp; (B5=1)
N_Group=6:
If (B0=0) ﹠amp; ﹠amp; () ﹠amp B1=0; ﹠amp; () ﹠amp B2=0; ﹠amp; () ﹠amp B3=0; ﹠amp; () ﹠amp B4=0; ﹠amp; () ﹠amp B5=0; ﹠amp; (B6=1)
N_Group=7:
If (B0=0) ﹠amp; ﹠amp; () ﹠amp B1=0; ﹠amp; () ﹠amp B2=0; ﹠amp; () ﹠amp B3=0; ﹠amp; () ﹠amp B4=0; ﹠amp; () ﹠amp B5=0; ﹠amp; () ﹠amp B6=0; ﹠amp; (B7=1)
Consider the factor of displacement, the sequence number that the next one will the transmission group is Send_Group
Send_Group=(N_Group+Current_Group)Mod?8
In the group during poll, from the left margin to the right margin, each stream of sequential search, rebound left margin again when going out right margin moves in circles.For each stream, mainly check clock during inspection whether greater than the EST of this stream, overtime greater than just representing, mean that needs send a grouping of this stream, just its traffic identifier is sent into and organized interior transmit queue.It should be noted that the angle from flowing water, the time of checking a stream can not surpass the time of short grouping that sends.
The similar overall polling mechanism of performance requirement to polling mechanism in organizing also requires to find next overtime stream (if any) in blanking time in minimum packets.
The timeslice length that grouping of a stream transmission is taken is defined as IAT (InterArrivalTime), and IAT comprises the time of actual transmission grouping needs and silence period two parts afterwards.The equal uniform flow that constitutes with the fixed length bag is an example, and all the IAT of all groupings is identical in the uniform flow, is pkt_size/stream_rate, and wherein pkt_size is a fixed length bag size, and stream_rate is the transmission rate of this equal uniform flow.Be example (as Fig. 4) with even burst flow again, being defined as with the constant cycle burst, is constant rate of speed in the burst, and each grouping holding time sheet is IAT, the grouping number that sends in each burst is burstLength (burst length), and the gap of mourning in silence between the burst is silenceTime.Obviously, equal uniform flow can be regarded as the special case of even burst flow.
A necessary condition of grouping is that the time of searching overtime one week of stream poll in group can not surpass the IAT of any one stream in the group.Therefore, can hold of the time decision of the maximum number of stream in a group by reckling and the stream of inspection of each stream IAT.The time of checking a stream is designated as CHECK_TIME, this wherein should comprise the review time and overtime after processing time two parts.In fact, consider that the review time should for the OC48 interface, can be made as 160ns with CHECK_TIME less than the transmitting time of short grouping.The number of remembering stream in the group is NSG, organizes the set { S into included stream
1, S
2..., S
NSG, S
iIAT be IAT
iThen necessary condition can be expressed as
CHECK_TIME*NSG≤IAT
i
Promptly the flow amount in the group is by IAT decision minimum in the group.
For making the group number minimum, in order in limited group, to put down stream as much as possible, should adopt following group technology in other words:
1) all streams is sorted from small to large according to IAT;
2) determine first group capacity according to the IAT of minimum, put the stream of front respective number under first group;
3) determine second group capacity according to IAT minimum in the remaining stream, the stream that the IAT of respective number is less puts second group under;
4) repeat above process, finish up to grouping.
Can prove that this greedy algorithm is to make the minimum optimal algorithm of group number.
On the basis of above algorithm, can suitably adjust according to " IAT is close on the same group " and the principle of " respectively organizing load balancing ".
According to this group technology, the group number that obtains is seldom.Under the situation of 256 streams, maximum group number is 4.
For certain leeway is arranged, we can stipulate a redundancy k, are about to necessary condition and are defined as
CHECK_TIME*NSG≤IAT
i/k
Make the interior flow amount of group so still less, more help reducing the time of searching.
The block diagram of Fig. 5 has been described grouping process, wherein left[j] be the left margin of j group, NSG[j] be the size of j group, the grouping flow process is divided into out j-1 group when finishing.
Now be described as follows by an example:
Because the needs of test high-speed interface (more than 2.5Gbp), the stream transmission algorithm must be realized by hardware, for example adopts FPGA or ASIC.The FPGA that completed experimental system has adopted 1,000,000 of dominant frequency 50MH capacity can support the transmission of 256 even burst flow, and interface rate is 1Gbps (gigabit Ethernet interface), and expectation can be supported the 2.5G mouth.Utilize the FPGA of higher frequency, expectation can be supported the above speed of 10Gbps; Adopt the more FPGA of door number, can support the stream more than 1024.
Gigabit Ethernet interface with 1Gbps is an example, supposes to have 100 streams, is respectively:
S
1: ether frame length 64 bytes account for 1/3 bandwidth, all uniform flow;
S
2-S
4: frame length 64 bytes, each accounts for 1/6 bandwidth, all uniform flow;
S
5-S
20: frame length 64 bytes, each accounts for 1/ (16*12) bandwidth, all uniform flow;
S
21-S
100: frame length 64 bytes, each accounts for 1/ (12*80) bandwidth, all uniform flow.
Grouping redundancy k is taken as 8; CHECK TIME is taken as 160ns.
Grouping process:
For the 1Gbps Ethernet interface, the Ether frame of length 64 bytes adds leading and IFG (frame pitch, the Inter Frame Gap) back, totally 84 bytes, and 672bit, then sending a frame needs 672ns.
Be grouped as follows:
S
1Account for 1/3 bandwidth, so IAT is 672/ (1/3)=2016ns.Then first group capacity is 2016/ (CHECK_TIME*k)=1.575, is taken as 1.Then first group is { S
1.
S
2Account for 1/6 bandwidth, IAT is 4023ns, and then second pool-size is 4023/ (CHECK_TIME*k)=3.15, is taken as 3, and then second group is { S
2, S
3, S
4.
S
5Account for 1/ (16*12) bandwidth, IAT is 36864, and then the 3rd pool-size is 36864/ (CHECK_TIME*k)=28.8, is taken as 28, and then the 3rd group is { S
5, S
6..., S
20, S
21, S
22..., S
32.
S
33Account for 1/ (12*80) bandwidth, IAT is 645120, and then the 4th pool-size is 645120/ (CHECK_TIME*k)=504, therefore all the other all can be wrapped into { S
33, S
34..., S
100.
Only get final product with four groups.
Algorithm performance and space-time analysis of complexity:
See the time aspect earlier.Greedy algorithm has been adopted in the action of division group, the time overhead maximum be sorting operation, so time complexity is identical with the time complexity of ordering, the poorest is O (N
2), being preferably O (N*lnN), N is the number of stream.Because grouping is carried out before being operated in test, so its time complexity is not focus, O (N
2) complexity can satisfy actual needs fully.
In the stream process of transmitting when test is carried out, stream poll and global group poll have constituted two level production lines relation up and down in the group, and the throughput of whole streamline is by smaller's decision of two-stage flowing water throughput.Wherein, " cyclic shift+combinational logic " operation that the global group polling mechanism adopts can be found the set of queues of next non-NULL in two clock cycle, far can support linear speed to send (finish in the 40ns when dominant frequency is 50MH, and 2.5G interface to send the time of an IP bag the shortest be 156ns).
See stream poll in the group again.Because the time CHECK_TIME of fluxion NSG and a stream of inspection satisfies the above-mentioned relation formula in the group, therefore, then find the time of this stream can not surpass IAT as long as certain stream of existence is overtime in the group
Min(poll one circle can find/k at most, and the time is NSG*CHECK_TIME≤IAT
Min/ k); That is to say, can in the time of a grouping that sends this group, find the next overtime stream in the group.Notice that it is CHECK_TIME that individual critical quantity is arranged, and should satisfy CHECK_TIME≤IAT here
Min, checking promptly that a stream is whether overtime and calculate time of next EST must be less than sending time of short bag.
From above analysis as can be known, adopt this group of interior stream polling mechanism can make the transmission rate of each group reach the nominal rated speed of this group; In conjunction with the group polling mechanism of the overall situation and group technology as can be known, total transmission rate of all groups can reach the interface linear speed, satisfies the requirement on the time performance again.
Space complexity again.For any one algorithm, the essential information of each stream all will be stored, and therefore this essential information does not belong to the row that we analyze.In addition, each stream needs an EST, and word length is 48 in the experimental system that has realized.And each group only needs a transmit queue, and length is very limited.256 streams, redundancys are only to need 7 groups at 3 o'clock, and redundancy is 1 o'clock even as long as 4 groups.
Claims (7)
1. generate the branch group polling formula multithread sending method that the data packet network test load is used, it is characterized in that: in the test load generation system that adopts FPGA (field programmable gate array), at first calculate the EST (predetermined delivery time) of current group according to the stream mode of each stream; Secondly, all stream packets are carried out the branch group polling, each stream of poll that concerns according to EST and global clock cycle in every group is searched the stream that needs send grouping, whenever finds a stream just this grouping to be put into the transmit queue of grouping; Then by the global group polling mechanism, the transmit queue of each group of circular test or buffering are found just transmission; It contains successively and has the following steps:
(1) stream mode according to each stream calculates EST;
(2) according in group, searching the principle that the IAT of the flow amount of in one week of overtime stream poll required time in promptly dividing into groups less than the principle of the IAT (stream sends the timeslice length that grouping takies) of any one stream in the group by minimum determine all stream is divided into groups by following formula:
CHECK_TIME*NSG≤IAT
i
Wherein, CHECK_TIME is for checking the time of a stream; NSG is the number of stream in the grouping; IAT
iBe the set { S of stream in the group
1, S
2..., S
NSGIn i stream S
iIAT;
(3) poll is searched overtime stream in the grouping: the time of short grouping promptly exists and requires under the prerequisite of overtime stream to find under the principle of next overtime stream left margin from grouping to right margin in the period in minimum packets less than sending one in the time of checking a stream, each stream of sequential search, rebound left margin again when going out right margin moves in circles; For each stream, check that global clock whether greater than the EST of this stream, if overtime greater than just representing, just means a grouping that will send this stream, the sign of this stream is sent into the transmit queue of this grouping; Otherwise, check next stream;
(4) the global group poll is searched the message that will send: total time that group polling mechanism is found non-empty queue (or buffering) at every turn and obtained a stream to be sent less than sending under this principle of minimum packets time, the transmit queue of each grouping of cyclic query has message just to send.
2. the branch group polling formula multithread sending method of wanting 1 described generation data packet network test load to use according to right, it is characterized in that, described global group poll is with the succinct realization of combinational logic: for a flag bit is established in each grouping, whether with 0/1 transmit queue of representing to divide into groups is empty, the flag bit of each grouping and become an attribute field, realize overall poll by everybody logical combination in cyclic shift and the field; Judge that whether certain grouping has message to send is to carry out according to everybody priority, if promptly high-order corresponding its flag bit of grouping is 1, expression has message, just overall transmit queue is sent in grouping and is preferentially sent.
3. the branch group polling formula multithread sending method that generation data packet network test load according to claim 1 is used is characterized in that described group technology contains following steps successively:
(1) all stream is sorted from small to large according to IAT;
(2) determine first group capacity according to the IAT of minimum, banishing of front respective number into first group;
(3) determine second group capacity according to IAT minimum in the remaining stream again, less the banishing of the IAT of respective number into second group;
(4) repeat above process, finish up to grouping.
4. the branch group polling formula multithread sending method that generation data packet network test load according to claim 1 is used is characterized in that in the described group technology, all streams divide into groups according to following formula:
CHECK_TIME*NSG≤IAT
i/k
Wherein, k is a redundancy, k 〉=1.
5. the branch group polling formula multithread sending method that generation data packet network test load according to claim 1 is used is characterized in that: when calculating described EST, for equal uniform flow every overtime transmission once, EST increases the time of an IAT.
6. the branch group polling formula multithread sending method that generation data packet network test load according to claim 1 is used, it is characterized in that: when calculating described EST, for continuous burst flow, every overtime transmission once, EST increases an IAT, but when burst finished, EST increased a Silence Time (gap of mourning in silence).
7. that the described test load generation system of the branch group polling formula multithread sending method that generation data packet network test load according to claim 1 is used adopts is FPGA or ASIC (application-specific IC).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB021461503A CN1163021C (en) | 2002-11-01 | 2002-11-01 | Group polling multistream transmit method for generating data, grouping network and testing load |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB021461503A CN1163021C (en) | 2002-11-01 | 2002-11-01 | Group polling multistream transmit method for generating data, grouping network and testing load |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1412976A true CN1412976A (en) | 2003-04-23 |
CN1163021C CN1163021C (en) | 2004-08-18 |
Family
ID=4751014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB021461503A Expired - Fee Related CN1163021C (en) | 2002-11-01 | 2002-11-01 | Group polling multistream transmit method for generating data, grouping network and testing load |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1163021C (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100387027C (en) * | 2005-01-07 | 2008-05-07 | 清华大学 | Bag-preprocessing circuit assembly of interface card for high-speed network diversion equipment |
CN101820422A (en) * | 2010-03-30 | 2010-09-01 | 南京恩瑞特实业有限公司 | Safe computer message buffer implementation method |
CN109429256A (en) * | 2017-08-30 | 2019-03-05 | 大唐移动通信设备有限公司 | A kind of multi-user's multithread test method, base station and phase shifter |
CN111478825A (en) * | 2020-04-10 | 2020-07-31 | 深圳市风云实业有限公司 | Extensible network traffic generation and analysis method and system |
-
2002
- 2002-11-01 CN CNB021461503A patent/CN1163021C/en not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100387027C (en) * | 2005-01-07 | 2008-05-07 | 清华大学 | Bag-preprocessing circuit assembly of interface card for high-speed network diversion equipment |
CN101820422A (en) * | 2010-03-30 | 2010-09-01 | 南京恩瑞特实业有限公司 | Safe computer message buffer implementation method |
CN101820422B (en) * | 2010-03-30 | 2012-08-29 | 南京恩瑞特实业有限公司 | Safe computer message buffer implementation method |
CN109429256A (en) * | 2017-08-30 | 2019-03-05 | 大唐移动通信设备有限公司 | A kind of multi-user's multithread test method, base station and phase shifter |
CN109429256B (en) * | 2017-08-30 | 2020-09-04 | 大唐移动通信设备有限公司 | Multi-user multi-stream test method, base station and phase shifter |
CN111478825A (en) * | 2020-04-10 | 2020-07-31 | 深圳市风云实业有限公司 | Extensible network traffic generation and analysis method and system |
CN111478825B (en) * | 2020-04-10 | 2023-04-18 | 深圳市风云实业有限公司 | Extensible network traffic generation and analysis method and system |
Also Published As
Publication number | Publication date |
---|---|
CN1163021C (en) | 2004-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103139093B (en) | Based on the express network data stream load equalization scheduling method of FPGA | |
CN1302643C (en) | Apparatus for testing network equipment transmission performance and method thereof | |
CN1859276A (en) | Multiple port path selecting method for network equipment | |
CN1275008A (en) | Quick-circulating port dispatcher for high-volume asynchronous transmission mode exchange | |
CN1628296A (en) | System and method for efficient handling of network data | |
CN1794670A (en) | Test method for throughput capacity of IP equipment | |
CN1643872A (en) | Caching streaming data | |
US11715254B2 (en) | Systems and methods for distributed scalable ray processing | |
US7961744B2 (en) | Frame multiplexing device | |
CN106612236A (en) | Many-core network processor and micro engine message scheduling method and micro engine message scheduling system thereof | |
CN1216473C (en) | TCAM high-speed search method and system supporting multiple nexthop | |
CN1163021C (en) | Group polling multistream transmit method for generating data, grouping network and testing load | |
US10868769B1 (en) | Read instruction queues in a network device | |
CN1585399A (en) | Load balancing method for cluster server | |
CN107832149B (en) | Receive-side Scaling circuit for multi-core processor dynamic grouping management | |
CN105959224B (en) | High speed route lookup device and method based on bit vectors | |
CN1859279A (en) | Method for dispatching variable length data packet queue in crossbar switching matrix | |
CN1777145A (en) | Router and method of managing packet queue using the same | |
CN1130085C (en) | Method for producing ATM information source for low bit speed rate application | |
CN1643874A (en) | Scheduling using quantum and deficit values | |
CN1728698A (en) | Parallel structured order preserved flow equilibrium system, and method for dispatching message based on sorted sream | |
Liu et al. | Towards efficient load distribution in big data cloud | |
US7460544B2 (en) | Flexible mesh structure for hierarchical scheduling | |
Huang et al. | Wena: Deterministic run-time task mapping for performance improvement in many-core embedded systems | |
CN1203688C (en) | Fluid track dispatching method |
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 | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |