CN1878132A - Method and system for realizing variable-length packet switching - Google Patents

Method and system for realizing variable-length packet switching Download PDF

Info

Publication number
CN1878132A
CN1878132A CNA2005101183937A CN200510118393A CN1878132A CN 1878132 A CN1878132 A CN 1878132A CN A2005101183937 A CNA2005101183937 A CN A2005101183937A CN 200510118393 A CN200510118393 A CN 200510118393A CN 1878132 A CN1878132 A CN 1878132A
Authority
CN
China
Prior art keywords
bag
port
plane
variable
multiplexer
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.)
Pending
Application number
CNA2005101183937A
Other languages
Chinese (zh)
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.)
Huawei Technologies Co Ltd
University of Electronic Science and Technology of China
Original Assignee
Huawei Technologies Co Ltd
University of Electronic Science and Technology of China
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 Huawei Technologies Co Ltd, University of Electronic Science and Technology of China filed Critical Huawei Technologies Co Ltd
Priority to CNA2005101183937A priority Critical patent/CN1878132A/en
Publication of CN1878132A publication Critical patent/CN1878132A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a variable-length sectionalization bag switching method and system in the multi-plane switching system, which comprises the following steps: a. the distributor records service quantity of each switching plane; the input port proceeds logical split for the received variable-length sectionalization bag; b. the distributor of input port selects minimum plane of service quantity from all switching planes to send sectionalization bag to the selected plane after it affirms itself idle condition and the variable-length sectionalization bag reaches the input port; c. the switching plane transmits the received sectionalization bag sequence to corresponding multi-connector of output end; d. the multi-connector sends itself sectionalization bag to output port. The invention can transmit variable-length sectionalization bag on each switching plane balancedly without remodeling combined sectionalization bag for multi-connector, which improves the switching efficiency.

Description

A kind of method and system that realize the variable-length packets packet switch
Technical field
The present invention relates to the switching technology of the communications field, relate to a kind of method and system that realize the variable-length packets packet switch or rather.
Background technology
At present, the quick growth of network service traffic, to the factor such as progressively perfect of the raising of IP qos requirement, optical transport technology, make industry improve constantly to the performance requirement of network router/switches, such as, usually require router/switch to have big exchange capacity, and require it to have short switching delay etc.
Current big capacity switching system is realized based on cell (cell-based) usually; specifically be before the variable-length packets bag exchanges; to divide into groups earlier to wrap (packet) cutting is the cell of fixed length; after pairing all cell of this packet pass through switching fabric, at output port it is reassembled as packet again.This technology can be brought very high exchange capacity and throughput to router/switch, such as, crossbar single-stage switching fabric for input-buffer, when adopting higher inner exchanging accelerated factor and good exchange dispatching algorithm, can reach the exchange capacity of nearly T bit-level (Tbps) and 100% system throughput.
With regard to switching fabric, the cell-based technology has developed quite perfectly, but from the angle of switching system, then still there are some problems in this technology.These problems are specific as follows:
At first, when exchange capacity was very big, the problem that most of requirement adopts the switching fabric of centralized exchange scheduling controlling to face was that the time interval of scheduling processing is very short.Such as, the length of cell usually at 40~80Byte, when port speed reaches 10Gbps or when above, the cycle of each scheduling will foreshorten to tens nS.And concerning based on the switching system of single exchange plane, the very short scheduling processing time can greatly be limited the raising of the systematic function such as power system capacity, dispatching algorithm.
Secondly,, cell is recombinated, therefore cause the switching delay of switching system bigger at output port owing to need carry out cutting to packet at the input port of switching system.Particularly at output port, the effective grouping of could recombinating out after all cell that must belong to same variable-length packets by the time arrive, not only there is delay problem in this, and all can bring very big pressure to the buffer memory and the management thereof of output port.In addition, the cell that belongs to same variable-length packets arrives output port through different inner exchanging paths, also out of order problem can occur.
In addition, be in the process of a plurality of cell, also to have the problem of n+1 with the variable-length packets cutting at input port.The effective length of promptly supposing cell is nByte, if the length of packet is that (Byte of k * n+1) then needs (k+1) individual cell to carry this packet, comparing under the opposite extreme situations, such as k=1,, also need again the cell of use even then the length of packet only has more 1Byte more.Obviously this can reduce the exchange efficiency of system.
At present, for solving based on the existing problem of the switching system of cell, industry has proposed the processing mode to the direct exchange of variable-length packets.In addition, the limited and easy limited problem of expansion for the exchange capacity that solves single exchange plane, industry has proposed multilevel switching fabric.
Many planes switching technology can solve limited buffer memory bandwidth problem effectively, and improves the speed of exchanges data.Many planes switching technology can make the wire rate of the operation rate of cache exchanging less than inbound port place, exchanges data plane: arrive under the situation of exchange plane inbound port in same quantity data, with same speed, by increasing the plane number of deal with data exchange, can reduce the operation rate of each exchange plane.The number that increases exchange plane can also increase exchange capacity.
Specifically, the structure of many planes exchange as shown in Figure 1, in many planes exchange with N inbound port, K exchange plane, the grouping bag of inbound port is distributed device (de-multiplexer) and is distributed on this K exchange plane and handles, like this, the operation rate of each exchange plane can be less than the speed R of inbound port, and promptly the operation rate of each exchange plane can be r=SR/K, wherein, S is the acceleration in the exchange plane.Data through exchange after, converge at the output port place from the data of different exchange planes, with convergence, and the speed of the grouping bag after converging still is R by multiplexer (multiplexer).
In addition, the exchange of many planes can be supported elongated exchange, existingly in the time of therefore can solving fixed length cutting noted earlier causes the low problem of exchange efficiency because of needs distribute more cell.
Obviously, in the switching system of many planes, people wish that distributor can be distributed to data on the different exchange planes equably, to guarantee the load balancing of each exchange plane.Because present many planes switching system is handled to be the cell of fixed length, therefore the load balancing that will reach between a plurality of exchange planes realizes relatively easily.But can there be out of order problem in the cell that arrives output port by different exchange planes, makes that the variable-length packets bag reorganization of output port is very difficult.If can guarantee that all cell that belong to same grouping bag arrive output port and packet-based exchange dispatching algorithm in order, then possibly can't reach good load balancing between each exchange plane and adopt.This contradiction has had a strong impact on the practical application of many planes switching fabric.
At present, have and centralized exchange control unit is set in the switching system of many planes comes a plurality of exchange planes are exchanged scheduling, with the scheme of the order that guarantees the grouping bag, but this scheme at be fixed length grouping bag, and this scheme can increase the complexity of realization, and the extensibility of restriction system.
" virtual inbound port formation Parallel packet switch (VIQPPS; Virtual inputQueue parallel Packet Switch) " structure has also been proposed at present, this structure adopts virtual inbound port formation (VIQ at the output port place, Virtual input Queue) structure is handled the grouping bag from different exchange planes, to guarantee the order of grouping bag.But such structure directly is used in the exchange of variable-length packets bag and has certain difficulty.Because if use VIQ to store and be cut into the variable-length packets bag of fixed length, then must extract the grouping bag from each exchange plane, and send to multiplexer according to the order at before output port place from different exchange planes.And after being extracted out, the grouping bag of order can not directly be sent to output port, and must in buffer memory, stop, all here up to all cell that belong to same variable-length packets bag, could form complete variable-length packets bag, just can send to output port afterwards.In this implementation procedure, each step implements all more complicated, and efficient is also lower, and can bring bigger time delay, and needs extra buffer memory to store the grouping bag that does not in time send to output port.
As seen from the above description, all there is defective in two kinds of present processing schemes.Though these two kinds of schemes can guarantee the order that each grouping bag transmits, these two kinds of schemes all can not guarantee the load balancing of each exchange plane, and a kind of processing scheme in back also needs to reconfigure the grouping bag.
Summary of the invention
In view of this, subject matter to be solved by this invention is: a kind of method that realizes variable-length packets packet switch in the switching system of many planes is provided, this method can guarantee the load balancing of each exchange plane when realizing the variable-length packets exchange, and does not need to reconfigure the grouping bag.
The present invention also provides a kind of system that realizes variable-length packets packet switch in the switching system of many planes.
For overcoming the above problems, the invention provides following technical scheme:
A kind of method that realizes variable-length packets packet switch in the switching system of many planes of the present invention, distributor writes down the volume of services of each exchange plane, and this method further may further comprise the steps:
A. input port carries out logical division to the variable-length packets bag of receiving;
B. the distributor of input port is selected the plane of a volume of services minimum from all exchange planes after determining self to be in idle condition and to have the variable-length packets bag to arrive this input port, and will divide into groups to wrap and all send to the plane of being chosen;
C. the grouping bag that will receive of exchange plane sequentially is sent to the multiplexer of corresponding output port;
D. multiplexer grouping bag that self is received sends to output port.
Described step a is: the bag that will divide into groups is divided into the data segment of fixed length in logic, increases a head sign on first logical data section of this grouping bag, in the end increases tail tail sign on a logical data section;
Among the step b, the described distributor bag that will divide into groups all sends to the plane of being chosen and is: the distributor bag that sequentially will divide into groups sends to the plane of being chosen, and finishes until the data segment transmission that has the tail sign.
Among the described step b, if distributor determines that self is in busy condition, then continue to transmit current data segment, and after self transferring idle condition to and having the variable-length packets bag to arrive this input port, select plane and follow-up step among the execution in step b; If distributor is determined self to be in idle condition and do not had the variable-length packets bag to arrive this input port, then this distributor is selected plane and follow-up step again among the execution in step b after defining the arrival of grouping bag.
The inbound port of exchange plane is connected with distributor, and outbound port is connected with multiplexer, and exchange plane provides more than one inbound port and outbound port by disk, and selects inbound port and outbound port by pointer;
Further comprise before the described step c: exchange plane selects to be used for inbound port and the outbound port at this plane transmission grouping bag in all inbound ports on this plane and outbound port, and described being chosen as:, then finish the transmission that grouping is wrapped by the inbound port and the outbound port that lock current use if there is not the data segment that contains the tail sign in the data of current transmission; If there is the data segment contain the tail sign, then pointer is selected the inbound port and the outbound port that are used for next time transmitting by rotating by disk, and skips blocked inbound port and outbound port.
Described steps d comprises: if described multiplexer is determined self current idle condition that is in, and the data with existing section is buffered in this multiplexer, the maximum variable-length packets bag of then selecting to have arrived this multiplexer of data segment sends, or the data segment that the length sum l that selects to have arrived in each variable-length packets bag the data segment of this multiplexer satisfies formula l>L (K-1)/K and arrives this multiplexer the earliest sends, wherein, L is the total length of variable-length packets bag, and K is the general layout number of exchange plane in the system.
In the described steps d, if multiplexer determines that self is in busy condition, then continue to transmit current data segment, and transfer idle condition to, and after the data with existing section is buffered in this multiplexer, send the step of grouping bag among the execution in step d at self; If multiplexer is determined self to be in idle condition and self do not had data cached section, then this multiplexer sends the step of grouping bag again having determined self buffer memory behind the data segment among the execution in step d.
The volume of services of each exchange plane of described distributor record is: the volume of services of data flow on each exchange plane that the pairing input port of this distributor inserts perhaps is: the volume of services of data flow on each exchange plane between the pairing input port of this distributor and each output port.
This method further comprises: the thresholding and the definite value of exchange plane volume of services are set,
The volume of services that described distributor writes down each exchange plane further comprises: judge the volume of services that whether exists in the volume of services of all exchange planes greater than this threshold value, if having, then all volumes of services are deducted set definite value.
Set thresholding is: the maximum accumulator value deducts the maximum length of variable-length packets bag.
The volume of services that described distributor writes down each exchange plane further comprises: if exist for the volume of services of negative value after deducting definite value, then add the value of absolute value maximum in all negative values for all volumes of services.
A kind of system that realizes variable-length packets packet switch in the switching system of many planes of the present invention, this system comprise that input port, distributor, exchange plane, the output port corresponding with input port reach the multiplexer corresponding with output port, wherein:
Input port is used for the variable-length packets bag of receiving is carried out logical division, and the variable-length packets bag is sent to corresponding distributor;
The distributor corresponding with input port, be used to write down the volume of services of each exchange plane, and after determining current free of data transmission and having the variable-length packets bag to arrive input port, from all exchange planes, select the plane of a volume of services minimum, and the grouping bag that input port sends is all sent to the plane of being chosen;
Exchange plane is used for the grouping bag of receiving sequentially is sent to the multiplexer of corresponding output port correspondence;
The multiplexer corresponding with output port, the grouping bag that is used for self is received sends to output port.
Described input port carries out logical division to the variable-length packets bag of receiving: with variable-length packets bag logical division is the data segment of fixed length, and on first logical data section of this grouping bag, increase the head sign, in the end increase the tail sign on a logical data section;
The described distributor corresponding with the input port bag that will divide into groups all sends to the plane of being chosen and is: the bag that sequentially will divide into groups sends to flat sided straight to the data segment transmission of being chosen that has the tail sign and finishes.
Described distributor is further used for:
After determining self to be in busy condition, continue to transmit current data segment, and after self transferring idle condition to and having the variable-length packets bag to arrive this input port, select the plane of volume of services minimum and send the grouping bag;
And after determining self to be in idle condition and not have the variable-length packets bag to arrive this input port, wait for the grouping bag, after having the grouping bag to arrive, select the plane of volume of services minimum again and send the grouping bag.
The inbound port of described exchange plane is connected with distributor, and outbound port is connected with multiplexer, and exchange plane provides more than one inbound port and outbound port by disk, and selects inbound port and outbound port by pointer;
Described exchange plane is further used for: select to be used for inbound port and outbound port at this plane transmission grouping bag in all inbound ports on this plane and outbound port, and described being chosen as:, then finish the transmission that grouping is wrapped by the inbound port and the outbound port that lock current use if there is not the data segment that contains the tail sign in the data of current transmission; If there is the data segment contain the tail sign, then pointer is selected the inbound port and the outbound port that are used for next time transmitting by rotating by disk, and skips blocked inbound port and outbound port.
Described multiplexer is further used for: determining self current idle condition that is in, and after the data with existing section is buffered in this multiplexer, the maximum variable-length packets bag of selecting to have arrived this multiplexer of data segment sends, or the data segment that the length sum l that selects to have arrived in each variable-length packets bag the data segment of this multiplexer satisfies formula l>L (K-1)/K and arrives this multiplexer the earliest sends, wherein, L is the total length of variable-length packets bag, and K is the general layout number of exchange plane in the system.
Described multiplexer is further used for: after determining self to be in busy condition, continue to transmit current data segment, and transfer idle condition at self, and after the data with existing section is buffered in this multiplexer, select the variable-length packets bag to send;
And after determining self to be in idle condition and self not have data cached section, wait for data segment, after the data segment of having determined self buffer memory, select the variable-length packets bag to send.
The present invention program is by the volume of services of distributor record exchange plane, by input port the variable-length packets bag of receiving is carried out logical division, and with all transmission in one plane of each variable-length packets bag, make the variable-length packets bag comparatively balancedly on each exchange plane, to transmit, and multiplexer does not need to reconfigure the grouping bag, has improved exchange efficiency.
Exchange algorithm of the present invention makes exchange grouping bag to transmit on an exchange plane, and can not bothered by other variable-length packets bags.
The present invention program is by being provided with multiplexer, it promptly is set after the grouping bag that certain-length is arranged arrives, again data segment transmission is arrived corresponding output port, thereby make multiplexer in the process that transmits the variable-length packets bag, wait for with exceeding, even can not need to wait for.
Distributor among the present invention is made distribution and is judged that required parameter all from this distributor, need not the exchange plane feedback information, thereby simplified the transmission of Control Parameter.And the distributor among the present invention only relates to and adding up and comparison operation, and hardware realizes that cost is lower.
Multiplexer among the present invention is made and is judged required parameter from the divide into groups length that arrived of each of the head grouping of variable-length packets and local record, so the realization of multiplexer algorithm is also very simple.
Description of drawings
Fig. 1 is the structural representation of present many planes switching system;
Fig. 2 is realization flow figure of the present invention;
Fig. 3 among the present invention to the schematic diagram of variable-length packets bag logical division;
Fig. 4 carries out the schematic diagram of data transmission and processing according to different situations for distributor among the present invention;
Fig. 5 carries out the schematic diagram of data transmission and processing according to different situations for multiplexer among the present invention;
Fig. 6 is the schematic diagram of inbound port and outbound port in the exchange plane.
Embodiment
Below in conjunction with drawings and the specific embodiments the present invention program is described in further detail.
As shown in Figure 2, the present invention program's processing comprises following step:
Step 201, input port carry out logical division to the variable-length packets of receiving.
Specifically, when the grouping bag arrives the input port of switching system, this grouping is wrapped the cutting of not carrying out physically, but the bag that logically will divide into groups is divided into the data segment of fixed length, be the cell of fixed length, and for first logic cell of this grouping bag stamps " head " sign, last the logic cell that wraps for this grouping stamps afterbody sign " tail " sign.Variable-length packets bag after cutting apart has comprised a plurality of variable-length packets bags as shown in Figure 3 among Fig. 3, and first cell of the right indicates " head ", and the 4th cell indicates " tail ", and to identify a variable-length packets bag, the back then is other variable-length packets bag.
When transmission, the data segment cell order on an exchange plane that then needs to belong to same variable-length packets and fixed length transmits, the middle data segment that does not transmit other variable-length packets, therefore the grouping bag of receiving with outbound port that transmits all is complete grouping bag, thereby can avoid making up the operation of grouping bag.
The distributor of step 202, input port is selected the plane of a volume of services minimum from all planes after determining self to be in idle condition and to have the variable-length packets bag to arrive this input port, and will divide into groups to wrap and all send to the plane of being chosen.
Based on the logical division of input port, distributor can lean against the bag that will divide into groups privately and send to this plane, transmits until the data segment that has " tail " sign to finish.
When distributor wraps on the exchange plane in each transmission grouping, all need to write down the volume of services on this plane.Promptly on the basis of current service amount, add the current volume of services that needs the grouping bag of transmission.
The grouping bag that step 203, exchange plane will be received sequentially is sent to the multiplexer of the pairing output port of this grouping bag.
The grouping bag that step 204, multiplexer are received self sends to output port.
Can realize dividing into groups to wrap in transmission in many exchange planes by above-mentioned steps.
Based on above-mentioned processing as can be seen, though many planes of the present invention switching system is identical with Fig. 1, still comprise input port, the distributor corresponding, exchange plane, output port and the multiplexer corresponding with output port with input port, but the processing of various piece all exists differently with prior art, also is that the function of various piece realizes all unlike the prior art.
In the above-mentioned steps 202, whether the distributor current time sheet that needs to determine input port is in idle condition and has the variable-length packets bag to arrive this input port.In fact, distributor also may be in busy condition at the current time sheet, or the situation that is in not busy state and does not have the variable-length packets bag to arrive, for the former, distributor continues to transmit the data segment of certain variable-length packets bag at the current time sheet to this input port, and after self transferring idle condition to and having the variable-length packets bag to arrive this input port, handle accordingly; For the latter, distributor then keeps idle condition, and monitors whether have the bag of grouping to arrive, and this distributor is handled after defining the arrival of grouping bag more accordingly.The handling process of distributor as shown in Figure 4.
For further describing the present invention program, define several notions earlier at this:
Kt: represent k timeslice.Time is divided into the timeslice that length is t, and in each timeslice, distributor, each exchange plane and multiplexer all can be handled accordingly.
Flow i: expression input port i receives and will send to the data flow of output port.
S I, p(kt): expression exchange plane p at moment kt from flow iThe volume of services that obtains.This volume of services is recorded in the distributor i place of input port i.S I, p(0) initial value is set to 0, As time goes on, and S I, p(kt) increase according to the number of mail to the data segment of plane p.
Based on above-mentioned defined notion, the processing to step 202 specifically describes below.
The current idle condition that is in of distributor i, and find data flow flow iIn the variable-length packets bag arrived input port i, then this distributor i is at the volume of services self stored set (S I, 0(kt), S I, 1(kt) ... S I, pmax(kt)) seek plane in, and this variable-length packets bag is sent to this plane with minimum service value.Wherein, pmax is the number of exchange plane, supposes plane p 1Has minimum service value S at moment kt I, p1(kt), then will to arrive input port i and length be that the data segment of the variable-length packets bag of L leans against and sends to the plane that this is chosen privately to distributor i, transmits until the data segment that indicates " tail " to finish.And distributor i can be about to the S of self record when transmitting first data segment of this variable-length packets bag I, p1(kt) be increased to (S I, p1(kt)+L).
In addition, because S I, p1(kt) be an accumulated value, always ever-increasing in the course of the work, so specific implementation considers the accumulator of finite length when having the distributor of above-mentioned functions, can carry out following processing: if certain S I, p(kt) numerical value surpasses the threshold value S that sets in advance Max, wherein, this thresholding can be set to the maximum length that the maximum accumulator value deducts the variable-length packets bag, then will gather (S I, 0(kt), S I, 1(kt) ... S I, pmax(kt)) all volumes of services in deduct a definite value S who sets in advance Hold, if having certain or certain several volumes of services deducting S in the set HoldAfter negative value appears, then these values are changed to 0 again for the volume of services of negative.Because the load of a plurality of exchange planes is dynamic equilibrium in the operate as normal, this means (S I, j, 0(kt), S I, j, 1(kt) ... S I, j, pmax(kt)) deviation between is not very big, therefore if rationally choose the maximum length and the S of volume of services accumulator HoldSize, then each volume of services all deducts S HoldThe probability that a plurality of negative values appear in the back is very little, can not produce a very large impact the performance of above-mentioned load-balancing algorithm.Certainly, be that the volume of services make each exchange plane can be balanced further, then can when the volume of services of certain or certain several negative values occurring, add the value of absolute value maximum in these negative values for all volumes of services in this distributor.
Above-mentionedly only write down the volume of services of each exchange plane,, can also further write down the volume of services of each exchange plane, promptly pass through S at output port for further guaranteeing the equilibrium of each exchange plane at input port at the distributor end I, j, p(kt): expression exchange plane p at moment kt from flow I, jThe volume of services that obtains, wherein, flow I, jThe data flow of expression from input port i to output port j.Like this, then distributor record is distribution of flows data quantity transmitted on each exchange plane between input port i and the output port j.Follow-up processing is then identical with the front, and only distributor needs to search according to input port and output port simultaneously when obtaining volume of services.
Above-mentioned processing is all only at distributor, and the present invention program reduces the stand-by period for the efficient of the multiplexer of raising outbound port, has also proposed corresponding processing scheme at multiplexer.Such as, if multiplexer determines that self currently is in idle condition and existing cell is buffered in this multiplexer, then selects the longest cell of variable-length packets packet length that has arrived this multiplexer to send.Multiplexer also may be determined self current busy condition that is in, and then continue to transmit current data segment, and transfers idle condition at self, and after the data with existing section is buffered in this multiplexer, carries out corresponding the processing again; If multiplexer is determined self to be in idle condition and self do not had data cached section, then this multiplexer is carried out corresponding the processing again having determined self buffer memory behind the data segment.The processing of multiplexer as shown in Figure 5.
Certainly, for further improving the efficient of multiplexer, can also carry out following processing.
For ease of describing, the notion on candidate plane is proposed at first.The candidate plane is defined as: at the multiplexer end, from plane p and length is that the variable-length packets bag of L will be competed outbound port, if it is that the data segment of l has arrived multiplexer that this variable-length packets bag has had length, and l>L (K-1)/K, this plane is exactly one of candidate plane of this outbound port of competition so.Wherein, this formula can be derived by (L-l)/(R/K)=L/R and be obtained, and the length L of variable-length packets bag can obtain from the head grouping of grouping bag, can record in the multiplexer have arrived the length l of the cell of this multiplexer, K is the number of exchange plane, and multiplexer can be known.In addition, calculate, (K-1)/K can also be summed up as a specific constant for simplifying.
Therefore, in above-mentioned steps 204, if multiplexer determine from all data segments that transmitted a variable-length packets bag in the current time sheet, and current buffer memory some data segments, then multiplexer will preferentially select the grouping bag in the candidate plane to send.Further, if there is the data segment in the more than one candidate plane to arrive this multiplexer, then can preferentially sends and arrive this multiplexer data in buffer section the earliest.
In addition, because an exchange plane has a plurality of inbound ports and outbound port usually, such as, these ports exist with the rotating disk form usually, and these ports can transmit different grouping bags simultaneously, as shown in Figure 6.Therefore, in above-mentioned steps 203, exchange plane needs to select the inbound port and the outbound port of current use when the variable-length packets bag that the reception distributor sends.If being designated in the data segment " tail ", then the rotating disk pointer g of the rotating disk pointer a of input port and output port can upgrade according to the ISLIP algorithm, and if be other situation, then can use the elongated exchange algorithm that is called PBILSIP to determine.Because the inbound port in the exchange plane can adopt identical processing scheme with outbound port, only be that example is described in detail here therefore with the inbound port.
The ISLIP algorithm at first is described.The ISLIP algorithm is a kind of improved polling algorithm, is made up of the wheel commentaries on classics moderator of a 2-D.Cell is dispatched by the poll moderator at each inbound port and outbound port.ISLIP improves on the basis of polling algorithm, to reduce the synchronia that occurs in the output moderator.ISLIP has the connection of setting up recently just and is changed to lowest priority, phenomenon hungry to death can occur and under high load condition, each output port all has the characteristics of same throughput.
The ISLIP algorithm adopts fixing rotational order in input/output scheduling, specifically comprise three steps:
1, request (Request).Each inbound port outbound port that cell may arrive in its formation sends request.
2, response (Grant).After output in the exchange plane is received request, from the priority list of fixing rotational order, select the highest outbound port of current priority, and notify all inputs whether to be responded.
3, confirm (Accept).After input is received response, change the outbound port of selecting current priority pointer indication the sequence list from fast pulley.And the pointer pa that will point to limit priority in fast pulley changes sequence list increases by 1, to move on to next place.
The elongated exchange algorithm of PBILSIP is once described below again.This exchange algorithm specifically was divided into for three steps:
1, cell request stage.Do not mate for all, promptly do not set up the input port of input-output corresponding relation, have cell to need exchange if this port is current, then the output port to correspondence sends request.
2, arbitration result advertisement phase.For the output port that does not have coupling, if received request signal, then move the pointer of its sliding window, have the arbitration port of limit priority to find the next one, and the arbitration port that is found is announced to the corresponding input end mouth.
3, the input judgement is concurrent delivers letters unit's stage.If input port is received announcement, the pointer that it also moves own sliding window finds the next one to have the judgement port of limit priority, and it is finished once coupling as accepting port.
This PBISLIP exchange algorithm can be finished whole algorithm by the iteration several times.And for this exchange algorithm, number of iterations can be less than the iterations of ISLIP algorithm.Best iterations need illustrate by emulation.
The method of rotating disk pointer g of upgrading the rotating disk pointer a of inbound port in the exchange plane and outbound port based on ISLIP exchange algorithm and PBISLIP exchange algorithm is as follows:
1, in the input rank of a port, as long as there is the data segment that contains sign " tail ", then pointer upgrades by rotating by disk, but skips blocked port.
If there is not the data segment that contains sign " tail " in the input rank of 2 one ports, then this port is locked motionless, promptly continues to finish the transmission of a variable-length packets bag.These are called blocked port by appropriate ports.
3, need with on the disk all appropriate ports number cover (MASK) and fall, just locked port numbers is masked.When disk rotates, pointer will can not rest on by on the port numbers of MASK.The operation key of MASK is to have eliminated the possibility that number is obtained other couplings by appropriate ports again.
The above only is the present invention program's preferred embodiment, not in order to limit protection scope of the present invention.

Claims (16)

1, a kind of method that realizes variable-length packets packet switch in the switching system of many planes is characterized in that, distributor writes down the volume of services of each exchange plane, and this method further may further comprise the steps:
A. input port carries out logical division to the variable-length packets bag of receiving;
B. the distributor of input port is selected the plane of a volume of services minimum from all exchange planes after determining self to be in idle condition and to have the variable-length packets bag to arrive this input port, and will divide into groups to wrap and all send to the plane of being chosen;
C. the grouping bag that will receive of exchange plane sequentially is sent to the multiplexer of corresponding output port;
D. multiplexer grouping bag that self is received sends to output port.
2, method according to claim 1, it is characterized in that, described step a is: the bag that will divide into groups is divided into the data segment of fixed length in logic, increases a head sign on first logical data section of this grouping bag, in the end increases tail tail sign on a logical data section;
Among the described step b, the described distributor bag that will divide into groups all sends to the plane of being chosen and is specially: the distributor order bag that will divide into groups sends to the plane of being chosen, and finishes until the data segment transmission that has the tail sign.
3, method according to claim 1, it is characterized in that, among the described step b, if distributor determines that self is in busy condition, then continue to transmit current data segment, and after self transferring idle condition to and having the variable-length packets bag to arrive this input port, select plane and follow-up step among the execution in step b; If distributor is determined self to be in idle condition and do not had the variable-length packets bag to arrive this input port, then this distributor is selected plane and follow-up step again among the execution in step b after defining the arrival of grouping bag.
4, method according to claim 2, it is characterized in that the inbound port of exchange plane is connected with distributor, outbound port is connected with multiplexer, exchange plane provides more than one inbound port and outbound port by disk, and selects inbound port and outbound port by pointer;
Further comprise before the described step c: exchange plane selects to be used for inbound port and the outbound port at this plane transmission grouping bag in all inbound ports on this plane and outbound port, and described being chosen as:, then finish the transmission that grouping is wrapped by the inbound port and the outbound port that lock current use if there is not the data segment that contains the tail sign in the data of current transmission; If there is the data segment contain the tail sign, then pointer is selected the inbound port and the outbound port that are used for next time transmitting by rotating by disk, and skips blocked inbound port and outbound port.
5, method according to claim 1, it is characterized in that, described steps d comprises: if described multiplexer is determined self current idle condition that is in, and the data with existing section is buffered in this multiplexer, the maximum variable-length packets bag of then selecting to have arrived this multiplexer of data segment sends, or the data segment that the length sum l that selects to have arrived in each variable-length packets bag the data segment of this multiplexer satisfies formula l>L (K-1)/K and arrives this multiplexer the earliest sends, wherein, L is the total length of variable-length packets bag, and K is the general layout number of exchange plane in the system.
6, method according to claim 5, it is characterized in that in the described steps d, if multiplexer determines that self is in busy condition, then continue to transmit current data segment, and transfer idle condition at self, and after the data with existing section is buffered in this multiplexer, send the step of grouping bag among the execution in step d; If multiplexer is determined self to be in idle condition and self do not had data cached section, then this multiplexer sends the step of grouping bag again having determined self buffer memory behind the data segment among the execution in step d.
7, method according to claim 1, it is characterized in that, the volume of services of each exchange plane of described distributor record is: the volume of services of data flow on each exchange plane that the pairing input port of this distributor inserts perhaps is: the volume of services of data flow on each exchange plane between the pairing input port of this distributor and each output port.
8, method according to claim 7 is characterized in that, this method further comprises: the thresholding and the definite value of exchange plane volume of services are set,
The volume of services that described distributor writes down each exchange plane further comprises: judge the volume of services that whether exists in the volume of services of all exchange planes greater than this threshold value, if having, then all volumes of services are deducted set definite value.
9, method according to claim 8 is characterized in that, set thresholding is: the maximum accumulator value deducts the maximum length of variable-length packets bag.
10, method according to claim 8, it is characterized in that, the volume of services that described distributor writes down each exchange plane further comprises: if exist for the volume of services of negative value after deducting definite value, then add the value of absolute value maximum in all negative values for all volumes of services.
11, a kind of system that realizes variable-length packets packet switch in the switching system of many planes is characterized in that, this system comprises that input port, distributor, exchange plane, the output port corresponding with input port reach the multiplexer corresponding with output port, wherein:
Input port is used for the variable-length packets bag of receiving is carried out logical division, and the variable-length packets bag is sent to corresponding distributor;
The distributor corresponding with input port, be used to write down the volume of services of each exchange plane, and after determining current free of data transmission and having the variable-length packets bag to arrive input port, from all exchange planes, select the plane of a volume of services minimum, and the grouping bag that input port sends is all sent to the plane of being chosen;
Exchange plane is used for the grouping bag of receiving sequentially is sent to the multiplexer of corresponding output port correspondence;
The multiplexer corresponding with output port, the grouping bag that is used for self is received sends to output port.
12, system according to claim 11, it is characterized in that, described input port carries out logical division to the variable-length packets bag of receiving: with variable-length packets bag logical division is the data segment of fixed length, and on first logical data section of this grouping bag, increase the head sign, in the end increase the tail sign on a logical data section;
The described distributor corresponding with the input port bag that will divide into groups all sends to the plane of being chosen and is: the bag that sequentially will divide into groups sends to flat sided straight to the data segment transmission of being chosen that has the tail sign and finishes.
13, system according to claim 11 is characterized in that, described distributor is further used for:
After determining self to be in busy condition, continue to transmit current data segment, and after self transferring idle condition to and having the variable-length packets bag to arrive this input port, select the plane of volume of services minimum and send the grouping bag;
And after determining self to be in idle condition and not have the variable-length packets bag to arrive this input port, wait for the grouping bag, after having the grouping bag to arrive, select the plane of volume of services minimum again and send the grouping bag.
14, system according to claim 11, it is characterized in that the inbound port of described exchange plane is connected with distributor, outbound port is connected with multiplexer, exchange plane provides more than one inbound port and outbound port by disk, and selects inbound port and outbound port by pointer;
Described exchange plane is further used for: select to be used for inbound port and outbound port at this plane transmission grouping bag in all inbound ports on this plane and outbound port, and described being chosen as:, then finish the transmission that grouping is wrapped by the inbound port and the outbound port that lock current use if there is not the data segment that contains the tail sign in the data of current transmission; If there is the data segment contain the tail sign, then pointer is selected the inbound port and the outbound port that are used for next time transmitting by rotating by disk, and skips blocked inbound port and outbound port.
15, system according to claim 11, it is characterized in that, described multiplexer is further used for: determining self current idle condition that is in, and after the data with existing section is buffered in this multiplexer, the maximum variable-length packets bag of selecting to have arrived this multiplexer of data segment sends, or the data segment that the length sum l that selects to have arrived in each variable-length packets bag the data segment of this multiplexer satisfies formula l>L (K-1)/K and arrives this multiplexer the earliest sends, wherein, L is the total length of variable-length packets bag, and K is the general layout number of exchange plane in the system.
16, system according to claim 15, it is characterized in that, described multiplexer is further used for: after determining self to be in busy condition, continue to transmit current data segment, and transfer idle condition at self, and after the data with existing section is buffered in this multiplexer, select the variable-length packets bag to send;
And after determining self to be in idle condition and self not have data cached section, wait for data segment, after the data segment of having determined self buffer memory, select the variable-length packets bag to send.
CNA2005101183937A 2005-10-31 2005-10-31 Method and system for realizing variable-length packet switching Pending CN1878132A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2005101183937A CN1878132A (en) 2005-10-31 2005-10-31 Method and system for realizing variable-length packet switching

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2005101183937A CN1878132A (en) 2005-10-31 2005-10-31 Method and system for realizing variable-length packet switching

Publications (1)

Publication Number Publication Date
CN1878132A true CN1878132A (en) 2006-12-13

Family

ID=37510431

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005101183937A Pending CN1878132A (en) 2005-10-31 2005-10-31 Method and system for realizing variable-length packet switching

Country Status (1)

Country Link
CN (1) CN1878132A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101094077B (en) * 2007-02-28 2010-05-26 华为技术有限公司 Global timing mark synchronization method and system of switching network of multiple planes
CN101014012B (en) * 2007-02-02 2010-08-25 华为技术有限公司 Benes network and variable length packet distributing method and equipment
CN102118304A (en) * 2010-01-05 2011-07-06 中兴通讯股份有限公司 Cell switching method and cell switching device
CN103595658A (en) * 2013-11-18 2014-02-19 清华大学 Scalable fixed-length multi-path switching system without closed-loop flow control
CN107896199A (en) * 2017-10-20 2018-04-10 深圳市风云实业有限公司 The method and apparatus of transmitting message

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101014012B (en) * 2007-02-02 2010-08-25 华为技术有限公司 Benes network and variable length packet distributing method and equipment
CN101094077B (en) * 2007-02-28 2010-05-26 华为技术有限公司 Global timing mark synchronization method and system of switching network of multiple planes
CN102118304A (en) * 2010-01-05 2011-07-06 中兴通讯股份有限公司 Cell switching method and cell switching device
CN102118304B (en) * 2010-01-05 2014-03-12 中兴通讯股份有限公司 Cell switching method and cell switching device
CN103595658A (en) * 2013-11-18 2014-02-19 清华大学 Scalable fixed-length multi-path switching system without closed-loop flow control
CN103595658B (en) * 2013-11-18 2016-09-21 清华大学 Expansible fixed length multipath exchange system without closed-loop flow control
CN107896199A (en) * 2017-10-20 2018-04-10 深圳市风云实业有限公司 The method and apparatus of transmitting message
CN107896199B (en) * 2017-10-20 2021-03-16 深圳市风云实业有限公司 Method and device for transmitting message

Similar Documents

Publication Publication Date Title
EP2353017B1 (en) Packet aggregation and fragmentation at layer-2 over a managed network
US11916781B2 (en) System and method for facilitating efficient utilization of an output buffer in a network interface controller (NIC)
US10341260B2 (en) Early queueing network device
EP2466476B1 (en) Network interface device with multiple physical ports and unified buffer memory
CN1201532C (en) Quick-circulating port dispatcher for high-volume asynchronous transmission mode exchange
US8340120B2 (en) User selectable multiple protocol network interface device
CN1214168A (en) Efficient output-request packet switch and method
EP2442499B1 (en) Data exchange method and data exchange structure
US7529865B1 (en) Packet buffer management apparatus and method
US11677676B1 (en) Shared traffic manager
CN1866910A (en) Data message transmission method and Ethernet bridge apparatus based on VLAN
CN1878132A (en) Method and system for realizing variable-length packet switching
CN1866927A (en) Information switching realizing system and method and scheduling algorithm
CN1791069A (en) Input queue packet switch architecture and queue service discipline
US20090213857A1 (en) Method, system, computer program product, and hardware product for ethernet virtualization using an elastic fifo memory to facilitate flow of broadcast traffic to virtual hosts
CN1292568C (en) Device and method for group continuous transfer of multi-team data
CN101753246A (en) Polling method and device thereof
CN111352657A (en) Method for reading x86 data by FPGA high-speed and high-efficiency running water
CN101064697A (en) Apparatus and method for realizing asynchronous transmission mode network service quality control
US10742558B1 (en) Traffic manager resource sharing
US20060077973A1 (en) Output scheduling method of crosspoint buffered switch
US20090225665A1 (en) Method, system, computer program product, and hardware product for ethernet virtualization using an elastic fifo memory to facilitate flow of unknown traffic to virtual hosts
CN1933441A (en) Router exchange structure for supporting uniform exchange and service quality guarantee method
US20190273693A1 (en) Technologies for pacing network packet transmissions
CN1125548C (en) Output queueing method for downward transferring packet in order

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication