EP1511236A1 - Circuit de transfert de paquets et procede de transfert de paquets - Google Patents

Circuit de transfert de paquets et procede de transfert de paquets Download PDF

Info

Publication number
EP1511236A1
EP1511236A1 EP03756117A EP03756117A EP1511236A1 EP 1511236 A1 EP1511236 A1 EP 1511236A1 EP 03756117 A EP03756117 A EP 03756117A EP 03756117 A EP03756117 A EP 03756117A EP 1511236 A1 EP1511236 A1 EP 1511236A1
Authority
EP
European Patent Office
Prior art keywords
queue
priority
packets
threshold level
read
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.)
Withdrawn
Application number
EP03756117A
Other languages
German (de)
English (en)
Inventor
Takeshi Kanazawa
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of EP1511236A1 publication Critical patent/EP1511236A1/fr
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/527Quantum based scheduling, e.g. credit or deficit based scheduling or token bank
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/622Queue service order
    • H04L47/623Weighted service order
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/624Altering the ordering of packets in an individual queue
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/205Quality of Service based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3045Virtual queuing

Definitions

  • the present invention relates to a packet transport circuit and a packet transport method for outputting packets memorized in a plurality of queues.
  • Packet transport apparatuses employing VOQ (Virtual Output Queuing) methods have been in use over the recent years for improved throughput of packet transport apparatuses.
  • VOQ Virtual Output Queuing
  • a packet transport apparatus employing the VOQ method has a plurality of receivers for receiving packets and a plurality of transmitters for transmitting the packets, and is designed to have the received packets queued in the VOQ's provided in the receivers.
  • VOQM 3 reports the queuing of the packets to an SM (Scheduler Module) corresponding to a transmitter.
  • SM Service Module
  • Each SM orders one VOQM 3 having packets queued therein to output the packets to crossbar switch 4 provided between transmitter 2 and receiver 1.
  • Crossbar control 5 executes a control such that transmitter 2 corresponding to the SM, and receiver 1 having VOQM 3 that ordered crossbar switch 4 to output the packets, will connect.
  • each SM determines, for every frame formed with a plurality of time slots, the VOQ to output packets in each time slot of the next frame.
  • FIG.3 shows the operation of a scheduler in a packet transport apparatus having four transmitters 4 and four receivers 1.
  • FIG.3 illustrates a case where one frame is formed with four time slots and where four SM's (i.e. SM1-SM4) determine the VOQ to output packets in each time slot of the next frame.
  • SM1 determines the VOQ to output packets in time slot T5 of frame F2.
  • SM1 determines the VOQ to output packets in time slot T5 of frame F2, and reports the determined VOQ to SM2. In addition, SM1 is reported as to which VOQ is determined to output packets in time slot T8.
  • SM1 determines the VOQ to output packets in time slot T8 of frame F2 from among VOQ' s other than the VOQ reported from SM4, and reports to SM2 the VOQ reported from SM4 and the VOQ that SM1 determined in time slot T2.
  • the SM determines the VOQ to output packets in each time slot of the next frame, and reports the result to the following SM's.
  • the configuration connects the SM's like a pipeline, so that the VOQ' s determined by earlier SM's can be also reported.
  • the VOQ's that have been determined to output packets are reported between the time slots, so as to prevent a plurality of VOQ's in the same receiver 1 from outputting packets to crossbar switch 4.
  • Each SM's determination will be reported to the VOQM's.
  • Each VOQM memorizes in which time slot to output packets, in a register. Then, each VOQM makes reference to the register, and, in the time slot to output packets, outputs packets from the VOQ to the crossbar switch.
  • FIG.2 and FIG.3 show examples of a packet transport apparatus having four transmitters 2 and four transmitters 1.
  • SM1 determines the receiver that connects with the transmitter corresponding to SM1 in time slot T5.
  • SM2-SM3 have not yet determined the receivers to connect with the transmitters that respectively correspond to the SM's in time slot T5, and so SM1 makes a determination in time slot T5 with highest priority.
  • SM2-SM4 also each have a time slot where SM2-SM4 determine the receivers to connect with the corresponding transmitters with highest priority.
  • SM2 holds priority in time slot T6.
  • SM3 holds priority in time slot T7.
  • SM4 holds priority in time slot T8.
  • each SM determines the receiver to connect with the corresponding transmitter in the time slot of the second priority, and, while the priority lowers towards time slot T4, determines the receiver to connect with the corresponding transmitter in each time slot.
  • each SM makes determinations in time slots of the highest priority to the lowest priority.
  • each SM can determine the connection between the receiver and the corresponding transmitter on a fair basis.
  • Published Unexamined Japanese Patent Application No.2001-168869 is known as a prior art for determining queues to output packets.
  • Published Unexamined Japanese Patent Application No.2001-168869 discloses a bandwidth share control method and a packet transport circuit that make possible minimum bandwidth guarantee, the sharing of unoccupied bandwidth between users, and fairness.
  • FIG.4 is a block diagram showing a configuration of a prior art packet transport apparatus disclosed in Published Unexamined Japanese Patent Application No.2001-168869.
  • FIG.5 is a figure for explaining a control algorithm in the prior art packet transport apparatus.
  • cells from a plurality of input paths 11 are multiplexed, and, thereafter, when VPI (Virtual Path Identifier) and VCI (Virtual Channel Identifier) are extracted as output information from each of multiplexed cells 22, converted into input share group/connection information 23 in VPI/VCI conversion table 14, and, in this state, given to write controller 15. Based on this input share group/connection information 23, an write address into cell buffer 13 is created by write controller 15. Consequently, each multiplexed cell 22 is contained in cell buffer 13 on a per input share group basis and on a per connection basis.
  • VPI Virtual Path Identifier
  • VCI Virtual Channel Identifier
  • each cell 22 is temporarily accommodated in cell buffer 13, and thereafter each cell 22 is read from this cell buffer 13 through a read address provided from read controller 17 and then separated so as to be outputted to intended output path 12.
  • Read controller 17 generates the read address for cell buffer 13 from output share group information 25 and connection information 26.
  • output share group information 25 is supplied from WRR (Weighted Round Robin)1 table 20 to read controller 17.
  • WRR Wooded Round Robin
  • queue searcher 18 creates output connection information 26.
  • This queue searcher 18 is provided with output connection determiner 18a utilizing a priority writer andwith search history memory 18b for memorizing priority writing results as search history.
  • the scheduling scheme of the prior art control algorithm includes WRR scheduler 19, WRR1 table 20, WRR2 table 21, and queue destination flag table 16.
  • WRR scheduler 19 that circulates on a regular cycle reads output share group information 25 from WRR1 table 20.
  • connection cell output capacity information 28 within the output share group is read from WRR2 table 21, and output connection determiner 18a in queue searcher 18 determines the queue due to output.
  • the number of time slots forming one frame is the same as the number of SM's, and so an increase in the number of receivers and transmitters results in an increase in the number of time slots forming one frame. That is, with the packet transport apparatus disclosed in Published Unexamined Japanese Patent Application No.2001-7822, an increase in the number of receivers and transmitters is followed by an extension in the time of one frame, and the time each SM takes to determine the VOQ to output packets also extends, during which no packet is outputted from the VOQ, which then causes the problem of increased delay time.
  • the packet transport apparatus disclosed in Published Unexamined Japanese Patent Application No.2001-168869 is configured such that a search for outputting queues can be started only after information is read from two types of tables, and so queue searcher 78 has to wait until the reading from the two types of tables ends, which then causes the problem of increased time for determining the queues.
  • queue searcher 78 has to wait until the reading from the two types of tables ends, which then causes the problem of increased time for determining the queues.
  • there is a problem that a section to start the operation of WRR scheduler 19 before packets are outputted from the queues needs to be provided.
  • a packet transport circuit has: a plurality of containers that respectively connect with corresponding output ports and accommodate packets in a plurality of queues in and from which the packets are written and read; an inputter that sorts the packets inputted through an input port and has the packets accommodated in the containers; and a read controller that, on a per container basis, determines a queue to read the packets from, reads the packets from the determined queue, and outputs the packets to the output ports, and the read controller furthermore has: a write queue information generator that, on a per container basis, generates write queue information indicating the queues having the packets written therein; a priority determiner that, on a per queue basis, determines priorities in the reading of the packets; and a read queue determiner that, on a per container basis, determines the queue to read the packets from, with reference to the write queue information and the priorities.
  • a packet transport method has: an input step of sorting a plurality of packets and accommodating the plurality of packets in a plurality of queues in a plurality of containers, the containers containing the plurality of queues in and from which the packets are written and read and respectively connected with corresponding output ports; a read control step of determining, on a per container basis, a queue to read the packets from, reading the packets from the determined queue, and outputting the packets to the output ports, and the read control step furthermore has: a write queue information generating step of generating, on a per container basis, write queue information indicating the queues having the packets written therein; a priority determining step of determining, on a per queue basis, priorities in the reading of the packets; and a read queue determining step of determining, on a per container basis, the queue to read the packets from with reference to the write queue information and the priorities.
  • a packet transport program implements a packet transport method on a computer, and this method has: an input step of sorting a plurality of packets and accommodating said plurality of packets in a plurality of queues in a plurality of containers, said containers containing said plurality of queues in and from which said packets are written and read and respectively connected with corresponding output ports; a read control step of determining, on a per container basis, a queue to read the packets from, reading said packets from the determined queue, and outputting said packets to said output ports, and the read control step furthermore has: a write queue information generating step of generating, on a per container basis, write queue information indicating the queues having the packets written therein; a priority determining step of determining, on a per queue basis, priorities in the reading of the packets; and a read queue determining step of determining, on a per container basis, said queue to read the packets from with reference to the write queue information and the priorities.
  • FIG.6 is a block diagram showing the configuration of the packet transport circuit of the first embodiment of the present invention.
  • inputter 191 inpacket transport circuit 109 of the first embodiment connects with each output port of packet transport circuit via container 193.
  • Inputter 191 is designed to pass a received packet to container 193 connected with the output port corresponding to the destination of the packet and to thus enable container 193 to transmit the packet.
  • packet transport circuit 109 is configured such that inputter 191 is able to pass received packets to a plurality of containers 193 that respectively connect with the output ports where the packets are transmitted to, while preventing the packets from interfering with each other.
  • the above configuration enables a plurality of containers 193 to transmit the packets due to be transmitted without interfering with each other. As a result, high throughput can be realized.
  • a packet's destination corresponds with one of the multiple output ports of packet transport circuit 109.
  • Received packet sorter 1911 provided in inputter 191 passes a received packet to container 193 connected with the output port corresponding to the destination of the received packet.
  • Container 193 has a plurality of queues 1931 that memorize the packets passed from inputter 191. Queues 1931 are given priorities in passing the packets to the output port. Container 193 reports write queue report information 195 representing the queue in which the packets are written, to read controller 194. Based on write queue report information 195, read controller 194 determines queue 1931 to read the packets from on a per container 193 basis, and provides read queue indicating information 198 representing determined queue 1931 on a per container 193 basis. Container 193 transmits the packets from queue 1931 represented by read queue indicating information 198 to the output port. Then, when the transmission of the packets is over, container 193 reports the amount of read data to read controller 194 as read amount information 197.
  • threshold level writer 110 and determination indicator 111 report setup from outside pertaining to packet transport circuit 109, to read controller 194.
  • Packet transport circuit 109 is designed to set threshold level 1101 for each queue 1931, and, when the amount of read data from queue 1931 exceeds a second threshold level, set determining indication 1111 as to whether or not to stop the reading of the packets.
  • FIG.7-FIG.11 each show a detailed configuration of packet transport circuit 109.
  • the various function blocks shown in FIG.7-FIG.11 can be built with either hardware or software.
  • a case will be described here with the instant example where the various function blocks shown in FIG.7-FIG.11 are built with software, except for the memories that are built with memory devices.
  • the premise is that a program that implements the same operations as the following function blocks is held in a given location in the system for a computer to read and implement the program.
  • apart from building all the function blocks with software if there are functions that require high speed processing and if hardwarecircuitconfiguration will achieve more superior system performance, it is also possible to configure the system by combining software and hardware.
  • FIG.7 is a block diagram showing a configuration of read controller 194.
  • read controller 194 has write queue information generator 1941, priority determiner 1940, and read queue determiner 1942.
  • Write queue information generator 1941 generates write queue information 19412 representing queue 1931 having packets written therein, on a per container 193 basis.
  • Priority determiner 1940 determines the priority in reading the packets, on a per queue 1931 basis.
  • read queue determiner 1942 reads the queue to read the packets from, on a per container 193 basis.
  • Write queue information generator 1941 has write queue information memory 19414 and write queue information updater 19411.
  • Write queue information memory 19414 memorizes write queue information 19412, on a per container 193 basis.
  • Write queue information updater 19411 updates write queue information 19412 memorized in write queue information memory 19414 according to the condition of packet writing in queue 1931.
  • Write queue information updater 19411 includes finished queue detector 19413 that detects queue 1931 that finishes outputting the packets, on a per container 193 basis.
  • write queue report information 195 representing the queue into which the writing from container 193 has been executed is reported
  • write queue information updater 19411 acquires write queue information 19412 of corresponding container 193 from write queue information memory 19414. Then, write queue information updater 19411 updates the packet writing condition of only queue 1931 represented by write queue report information 195, and reports updated write queue information 19412 to write queue information memory 19414.
  • Finished queue detector 19413 is given a report of read finish report information 196, which represents the end of the reading of the packets from container 193 where queue 1931 that has outputted the packets is accommodated, and which represents as to whether there are packets left in this queue 1931 after the end of the reading.
  • read finish report information 196 is reported, on a per container 193 basis
  • finished queue detector 19413 detects queue 1931 that finishes outputting the packets, from determined queue information 1947 reported from read queue determiner 1942, on a per container 193 basis. Then, finished queue detector 19413 reports the writing condition in this queue 1931 and in queue 1931 corresponding to container 193, and read finish report information 196, to write queue information updater 19411.
  • finished queue detector 19413 reports that the reading from queue 1931 that has been outputting the packets finishes, as finish queue detection information 199, to write queue information updater 19411 and to priority determiner 1940, on a per container 193 basis.
  • write queue information updater 19411 acquires write queue information 19412 of the corresponding container from write queue information memory 19414. Then, write queue information updater 19411 updates the packet container condition of only queue 1931 that has finished outputting the packets, in accordance with the detection of finished queue detector 19413, and reports updated write queue information 19412 to write queue information memory 19414.
  • read queue information memory 19414 memorizes updated read queue information 19412, on a per container 193 basis. Then, read queue information memory 19414 reports memorized read queue information 19412 to read queue determiner 1942 and to priority determiner 1940, on a per container 193 basis.
  • Priority determiner 1940 has priority memory 1946, priority writer 1944, and highest priority detector 1945.
  • Priority memory 1946 memorizes the priorities of queues 1931, in a distinguishable manner, on a per container 193 basis.
  • Priority writer 1944 has the priority of each queue 1931 written and memorized in priority memory 1946, on a per container 193 basis.
  • highest priority detector 1945 detects the highest priority among the priorities of queues 1931 having packets written therein, and reports the result to read queue determiner 1942.
  • FIG.8 is a block diagram showing a configuration of prioritywriter 1944.
  • prioritywriter 1944 has read data amount detector 19442 and priority corrector 19443.
  • Read data amount detector 19442 detects the amount of data read from each queue 1931, on a per container 193 basis.
  • priority corrector 19443 corrects and lowers the priority of this queue 1931 to apredeterminedpriority, andwrites it inprioritymemory 1946.
  • Read data amount detector 19442 detects the amount of data read from queue 1931 represented by finished queue detection information 1947. Then, read data amount detector 19442 combines this read data amount and read amount information 197 reported from container 193 containing queue 1931 that has been outputting the packets, and reports the result to priority corrector 19443.
  • priority corrector 19443 corrects and lowers the priority of this queue 1931 to a predetermined priority, and writes the result in priority memory 1946.
  • Threshold level memory 19446 of FIG.8 memorizes the predetermined threshold level set on a per queue 1931 basis.
  • priority calculator 19445 of FIG.8 calculates the priority of this queue and writes the result in priority memory 1946.
  • priority calculator 19445 calculates lower priorities with reference to the output data amount, so as to set the priority of above queue 1931 at a predetermined order (i.e. B in FIG.11). In the illustrated example, when the amount of data outputted from queue 1931 is 0, the priority is set at the level shown as A.
  • Each threshold level memory 19446 shown in FIG.8 has first individual threshold level circuit 19446a and second individual threshold level circuit 19446b.
  • First individual threshold level circuit 19446a memorizes a threshold level corresponding to the minimum guaranteed bandwidth for queue 1931.
  • Second individual level circuit 19446b provided on per queue 1931 basis, memorizes a higher threshold level than the threshold level memorized in first individual threshold level circuit 19446a.
  • priority corrector 19443 lowers the priority to the first priority (i.e.
  • priority corrector 19443 lowers the priority to the second priority (i.e. C in FIG.11), which is lower than the first priority, and writes the result in priority memory 1946.
  • priority corrector 19443 when stopping output from queue 1931 having reached the threshold level memorized in second individual threshold level circuit 19446b, lowers the priority to a priority for stopping output, shown as D1 in FIG.11.
  • priority corrector 19443 may change the priority as with D3 in FIG.11. However, it is more preferable to lower the priority according to the output data amount, as with D2 in FIG.11, so that queues 1931 can output the packets on a fair basis.
  • threshold level memory 19446 memorizes the threshold levels in a way that makes them changeable, and packet transport circuit 109 further has threshold level writer 110 that writes threshold levels in threshold level memory 19446.
  • aforementioned highest priority detector 1945 detects the highest priority among the priorities of queues 1931 having packets written therein, on a per container 193 basis, and reports the result to read queue determiner 1942.
  • priority queue detector 19451 detects the highest priority among the priorities of queues 1931 having packets written therein, on a per container 193 basis. Highest priority holder 19455 is capable of holding the priorities detected by priority queue detector 19451.
  • Highest priority holder 19455 has priority holding circuit 194561 for holding the priorities detected by priority queue detector 19451 on a per container 193 basis, thereby enabling read queue determiner 1942 to determine queue 1931 to read, on a per container 193 basis. Moreover, according to the detection of aforementioned finished queue detector 19413, highest priority detector 1945 detects the highest priority anew among the priorities for queues 1931 having packets written therein, and reports new priorities to read queue determiner 1942.
  • aforementioned read queue determiner 1942 determines queue 1931 to read packets from on a per container 193 basis.
  • queue detector 19421 Based on highest priority information 1949 reported from highest priority detector 1945 on a per container 193 basis in accordance with the priority determined by priority determiner 1940, queue detector 19421 detects queue 1931 of the highest priority among queues 1931 represented by read queue information 19412 on a per container 193 basis.
  • highest priority detector 1945 detects the highest priority among the priorities of queues 1931 having packets written therein, and reports new priorities to read queue determiner 1942, so that when packet output is finished, read queue determiner 1942 determines new queue 1931 to read packets from.
  • queue selector 19422 selects queue 1931 from among queues 1931 detected by queue detector 19421 on a per container 193 basis, and outputs read queue indicating information 198 and determined queue information 1947 in accordance with this selection, so as to make queue 1931 output the packets.
  • Queue selector 19422 has select queue information generator 194221 and select queue container 194222.
  • Select queue information generator 194221 generates select queue information that indicates one of queues 1931 detected by queue detector 19421 on a per container 193 basis.
  • Select queue container 194222 contains the select queue information generated by select queue information generator 194221, on a per container 193 basis.
  • select queue information generator 194221 next generates select queue information indicating this queue 1931.
  • select queue information container 194222 has select queue holder 194224 for holding select queue information generated by select queue information generator 194221 on a per container 193 basis.
  • select queue information generator 194221 When queue detector 19421 detects queue 1931 apart from queue 1931 indicated by the select queue information currently held in select queue holder 194224, select queue information generator 194221 next generates select queue information indicating this queue 1931, and has it held in select queue holder 194224. Select queue information generator 194221 reports the select queue information held in select queue holder 194224 as determined queue information 1947, on a per container 193 basis.
  • Queues 1931 are ranked so that select queue information generator 194221 generates select queue information on a per container 193 basis.
  • Select queue information generator 194221 puts queue 1931 indicated by the select queue information currently held in select queue holder 194222 at the end of the rank, and generates select queue information indicating queue 1931 corresponding to the highest rank among queues 1931 detected by queue detector 19421, on a per container 193 basis.
  • read queue determiner 1942 determines queue 1931 that memorizes packets among queues 1931 indicated by determination indicator 111 as queue 1931 to read.
  • inputter 191 sorts received packets for containers 193, read queue information generator 1941 in read controller 194 generates read queue information that represents queues 1931 having packets written therein, on a per container 193 basis, and, in a similar manner, priority determiner 1940 in read controller 194 determines the priorities in reading the packets.
  • read queue determiner 1942 determines queue 1931 to read packets from, on a per container 193 basis.
  • an increase in the number of transmitters/receivers simply results in an increase in the number of containers 193, so that the time required to determine queues 1931 to read does not change, and thus a high-speed packet transport circuit with short delay time can be achieved.
  • select queue information generator 194221 generates select queue information that indicates one of queues 1931 detected by queue detector 19421, and select queue information generator 194221 contains the select queue information generated by select queue information generator 194221 until the next opportunity of selection comes.
  • select queue information generator 194221 is able to generate select queue information that indicates this queue 1931, so as to make selection of queue 1931 fair without bias in favor of any specific queue 1931.
  • the priorities of a plurality of queues 1931 are determined on a per container 193 basis, and multiple containers 193 transport packets respectively in parallel. Then, it is possible to determine connections between the transmitters and receivers on a fair basis and transmit the packets in parallel. As a result, regardless of the number of the receivers and transmitters, a high-speed packet transport circuit with short delay time can be provided.
  • FIG.12 is a block diagram showing the configuration of the packet transport circuit of the second embodiment of the present invention.
  • packet transport circuit 200 of the second embodiment of the present invention is based on packet transport circuit 109 of the first embodiment of the present invention, except that output from a plurality of queues 1931 in a plurality of containers 193 is controlled by means of output selector 202 instead of by read controller 194.
  • Output selector 202 is designed to select one of multiple queues 1931 and output the packets memorized in this selected queue 1931.
  • output selector 202 has memory detector 221, priority determiner 222, selection determiner 223, a plurality of individual holders 224, a plurality of cumulative holders 225, and output amount measurer 226.
  • Memory detector 221 is provided with the function of detecting queues 1931 having packets memorized.
  • Priority determiner 222 is provided with the function of determining the priority to output the packets on a per queue 1931 basis. Then, from among queues 1931 detected by memory detector 221, selection determiner 223 determines queues 1931 to output packets in accordance with the priority determined by priority determiner 222, and provides these queues 1931 with packet output instructions.
  • output amount measurer 226 measures the amount of packet data outputted from each queue 1931.
  • Multiple individual holders 224 are provided to correspond respectively to queues 1931.
  • Multiple individual holders 224 holds the amount of output data of the packets outputted from corresponding queues 1931 (i.e. the amount of output data measured by output amount measurer 226). Then, when the amount of output data from queue 1931 held in individual holder 224 reaches the predetermined threshold level set for queue 1931, priority determiner 222 lowers the priority of queue 1931 corresponding to individual holder 224 to a predetermined order, or to an order corresponding to the output data amount.
  • the relative order of queue 1931, with which the output data amount has not reached the threshold level, is heightened, and the packets memorized in this queue 1931 below the threshold level are outputted preferentially, thereby enabling bandwidth control on a per 1931 basis.
  • Each of a plurality of cumulative holders 225 is provided to correspond to one or multiple queues 1931 (i.e. group container with one or multiple queues 1931).
  • Multiple cumulative holders 225 accumulate and hold the output data amount of the packets outputted from the corresponding group containers (i.e. the output data amount measured by output amount measurer 226). Then, when the cumulative level of the amount of output data from a group container corresponding to cumulative holder 225 reaches the predetermined threshold level, which is set on a per group container basis (that is, on a per cumulative holder 225 basis), priority determiner 222 lowers the priority of the group container corresponding to this cumulative holder 225 to a predetermined order, or to an order corresponding to the cumulative level of the output data amount.
  • the relative order of queue 1931 belonging to a group container with which the cumulative level of output data amount has not reached the threshold level is heightened, and the packets memorized in queue 1931 belonging to this group container below the threshold level are outputted preferentially, thereby enabling bandwidth control on a per group container basis and enabling bandwidth control on a per queue 1931 basis.
  • the cumulative level of the output data amount held in predetermined cumulative holder 225 refers to the total level of the output data amount of the group container corresponding to predetermined cumulative holder 225.
  • the multiple user apparatuses communicating with the user apparatus are each provided with one or multiple queues 1931, thereby managing one or multiple queues 1931 as one group container and executing bandwidth control.
  • output selector 202 has identification writer 203, threshold level writer 204, and detection indicator 205.
  • Identification writer 203 provides queues 1931 and the groups without inconsistency.
  • Identification writer 203 supplies cumulative identification memory 2261 (described later) of output amount measurer 226 and queue identification memory 22261 (described later) of priority determiner 222, with queue identification information representing corresponding queues 1931 on a per cumulative holder 225 basis, and cumulative identification information representing corresponding cumulative holder 225 on a per queue 1931 basis, and have these memorized.
  • detection indicator 205 selects between disallowing output from this queue 1931 and making this queue 1931 the best effort type (i.e. queue 1931 with no service guarantee). As with queue 1931 of the lowest priority, detection indicator 205 instructs priority queue detector 2231 of selection determiner 223 (described later) to disallow packet output from this queue 1931. Threshold level writer 204 writes the threshold level set on a per cumulative holder 225 basis and the threshold level per queue 1931 into cumulative threshold level memory 2227 (described later) and individual threshold level memory 2222 (described later) of priority determiner 222.
  • FIG.13 is a block diagram showing the configuration of a priority determiner of the packet transport circuit of the second embodiment of the present invention.
  • priority determiner 222 has priority memory 2221 and priority writer 2223. Then, priority writer 2223 writes the priority of each queue 1931 and group container into priority memory 2221.
  • priority writer 2223 has a plurality of individual threshold level memories 2222, individual writer 2225, cumulative writer 2226, and a plurality of cumulative threshold level memories 2227.
  • Multiple individual threshold level memories 2222 are provided to respectively correspond to individual holders 224.
  • Multiple individual holders 224 have the threshold level for the output data amount of each individual holder 224 memorized (i.e. the amount of output data measured by output amount measurer 226).
  • each individual threshold level memory 2222 with a unique threshold level (that is, a unique threshold level for each individual holder 224) . It is also possible to change the threshold level memorized in each individual threshold level memory 2222 by means of threshold level writer 204.
  • individual writer 2225 Upon receiving the output data amount held in each individual holder 224 and the threshold level memorized in each individual threshold level memory 2222, individual writer 2225 compares the output data amount supplied from individual holder 224 with the threshold level supplied from individual threshold level memory 2222 corresponding to above individual holder 224. When the output data amount exceeds the threshold level, individual writer 2225 lowers the priority of this queue 1931 to a predetermined order and writes this predetermined order in priority memory 2221.
  • a plurality of cumulative threshold level memories 2227 are provided to respectively correspondtocumulativeholders225.
  • Multiplecumulative threshold level memories 2227 have the cumulative levels of the output data amount of cumulative holders 225 memorized (that is, the cumulative level of the output data amount per group container).
  • each cumulative threshold level memory 2227 with a unique threshold level (that is, a unique threshold level per cumulative holder 224).
  • cumulative writer 2226 Upon receiving the cumulative level of the output data amount held in each cumulative holder 225 and the threshold level memorized in each cumulative threshold level memory 2227, cumulative writer 2226 compares the cumulative level of the output data amount supplied from cumulative holder 225 and the threshold level supplied from cumulative threshold level memory corresponding to this cumulative holder 225. When the cumulative level of the output data amount exceeds the threshold level, cumulative writer 2226 lowers the priority of this queue 1931 and the group container to a predetermined order, and writes this predetermined order in priority memory 2221.
  • each queue 1931 or group container memorized in priority memory 2221 periodically, so as to resume the priority provided in advance on a per queue 1931 or group container basis.
  • the threshold level it is preferably provided for each queue 1931 or group container, memorized in individual threshold level memory 2222 or in cumulative threshold level memory 2227, and determined with reference to each assigned bandwidth and the above period.
  • threshold level writer 204 enables writing and change of threshold levels in individual threshold level memory 2222 and cumulative threshold level memory 2227 corresponding to queues 1931 and the group containers. As a result, it is possible to accurately assign bandwidth assigned each group container and assign bandwidth to each queue belonging to a predetermined group container. It is also possible to flexibly change the bandwidth to assign to each queue 1931 and group container at timings of choice.
  • FIG.14 is a block diagram showing the configurations of an individual threshold level memory and an individual writer in the packet transport circuit of the second embodiment of the present invention.
  • individual threshold level memory 2222 has first individual threshold level circuit 22221 and second individual threshold level circuit 22222.
  • Individual writer 2225 has priority calculator 2228 and calculation result writer 2229.
  • priority calculator 2228 of individual writer 2225 shown in FIG.14 calculates the priorities, so as to set the priority of corresponding queue 1931 at a predetermined priority. This calculation result is written into priority memory 2221 by calculation result writer 2229.
  • FIG.18 is a figure for explaining the first example of relationship between priority calculated by the priority calculator and the output data amount in the packet transport circuit of the second embodiment of the present invention.
  • the vertical axis represents priority and the horizontal axis represents the output data amount of queue 1931.
  • Priority calculator 2228 determines the priority in accordance with the output data amount and the threshold level memorized in individual threshold memory 2222. As shown in FIG.18, when queue 1931 outputs no packet, the priority of queue 1931 is considered priority F shown in FIG.18.
  • the priority of queue 1931 is lowered as the amount of output data from queue 1931 increases, and, when the output data amount reaches the threshold level provided on a per queue 1931 basis (i.e. Th1 in FIG.18), the priority of queue 1931 is set at a predetermined order (i.e. priority G in FIG.18).
  • priority calculator 2228 By thus determining the priority by means of priority calculator 2228, it is possible to set a higher priority for queue 1931 that has not outputted data in a close amount to the threshold level than the priority of queue 1931 that has outputted data in a close amount to the threshold level. As a result, the average time it takes the output data amount to reach the threshold level becomes equal between queues 1931.
  • individual threshold level memory 2222 has first individual threshold level circuit 22221 and second individual threshold level circuit 22222.
  • First individual threshold level circuit has a threshold level corresponding to the minimum guaranteed bandwidth (i.e. minimum guaranteed bandwidth threshold level) for queue 1931 memorized.
  • Second individual threshold level circuit 22222 has a threshold level for the maximum bandwidth memorized (i.e. maximum bandwidth threshold level), which is greater than the minimum guaranteed bandwidth threshold level memorized in first individual threshold level circuit 22221.
  • maximum bandwidth threshold level i.e. maximum bandwidth threshold level
  • FIG.19 is a figure for explaining a second example of relationship between priority calculated by the priority calculator and the output data amount, in the packet transport circuit of the second embodiment of the present invention.
  • the vertical axis represents priority and the horizontal axis represents the output data amount of queue 1931.
  • priority calculator 2228 sets the priority of queue 1931 at priority A in FIG.19, and lowers the priority of queue 1931 as the amount of output data from queue 1931 increases.
  • the priority of queue 1931 is set at a predetermined priority (i.e. priority B in FIG.19).
  • queues 1931 are still able to output packets until the amount of output data reaches the threshold level memorized in second individual threshold level circuit 22222 (i.e. Th2 in FIG.19).
  • Th2 the threshold level memorized in second individual threshold level circuit 22222
  • the priority of this queue 1931 becomes best effort priority C shown in FIG.19.
  • threshold level writer 204 is able to have a lower threshold level, than the threshold level memorized in first individual threshold level circuit 22221, written and memorized in second individual threshold level circuit 22222 in individual threshold level memory 2222. As a result, it is possible to set the minimum guaranteed bandwidth and the maximum guaranteed bandwidth for queue 1931.
  • queue 1931 that is made the best effort type by detection indicator 205 subsequently, regardless of the amount of output data of the packets from this queue 1931, it is also possible not to change the priority as represented by priority D3 in FIG.19. Furthermore, as represented by priority D2 in FIG.19, it is also possible to continue outputting packets incessantly over the monitoring period, and, as for queue 1931 that has outputted data in an amount corresponding to the physically outputtable upper limit level, disallow packet output from this queue 1931 by means of detection indicator 205. By this means, queues 1931 that have outputted data in a greater amount have lower priority, thereby enabling fair packet output between queues 1931.
  • FIG.15 is a block diagram showing the configuration of a cumulative threshold level memory and a cumulative writer in the packet transport circuit of the second embodiment of the present invention.
  • cumulative threshold level memory 2227 has first cumulative threshold level circuit 22271 and second cumulative threshold level circuit 22272.
  • Cumulative writer 22262 has queue identification memory 22261 and correspondence writer 22262.
  • a plurality of queue identification memories 22261 in cumulative writer 2226 shown in FIG.15 are provided to respectively correspond to cumulative holders 225.
  • a plurality of queue identification memories 22261 have identification information representing corresponding queues 1931 and group containers memorized.
  • correspondence writer 22262 makes reference to the identification information memorized in queue identification memories 22261 corresponding to cumulative holders 225, detects queue 1931 with which the priority needs to be changed, and writes the changed priority in priority memory 2221.
  • First cumulative threshold level circuit 22271 of cumulative threshold level memory 2227 has a minimum guaranteed bandwidth cumulative threshold level memorized, which is a cumulative threshold level for the minimum guaranteed bandwidth for queue 1931 corresponding to cumulative holder 225 (when there are a plurality of corresponding queues 1931, the total of their threshold levels is used).
  • Second cumulative threshold level circuit 22272 has a cumulative threshold level for the maximum bandwidth (i.e. maximum bandwidth cumulative threshold level), which is greater than the minimum guaranteed bandwidth cumulative threshold level memorized in first cumulative threshold level circuit 22271.
  • cumulative writer 2226 lowers the priority of this queue 1931 to the first priority for queue 1931 that has outputted data in excess of the minimum guaranteed bandwidth threshold level, and writes the result in priority memory 2221.
  • cumulative writer 2226 lowers the priority of this queue 1931 to a second priority lower than the first priority, and writes the result in priority memory 2221.
  • FIG.17 is a block diagram showing the configuration of a selection determiner of the packet transport circuit of the second embodiment of the present invention.
  • selection determiner 223 has priority queue detector 2231 and queue determiner 2232.
  • priority queue detector 2231 detects queue 1931 corresponding to the highest priority detected by memory detector 221.
  • Queue determiner 2232 is capable of determining queues 1931 to be selected, from among queues 1931 detected by priority queue detector 2231.
  • queue determiner 2232 includes determined queue information generator 22321 and determined queue information holder 22322.
  • Determined queue information generator 2321 generates determined queue information representing one of queues 1931 detected by priority queue detector 2231.
  • Determined queue information holder 22322 holds the determined queue information from determined queue information generator 22321.
  • determined queue information generator 22321 is capable of detecting queue 1931 represented by the determined queue information currently held in determined queue information holder 22322.
  • determined queue information generator 22321 When determined queue information holder 22322 detects queue 1931 apart from queue 1931 currently held by determined queue information holder 22322, determined queue information generator 22321 next generates determined queue information representing this queue 1931. Moreover, determined queue information generator 22321 puts queue 1931 represented by the determined queue information currently held in determined queue information holder 22322 at the end of the rank (corresponding to the lowest priority), and next generates determined queue information representing queue 1931 corresponding to the highest rank (i.e., queue 1931 of the highest priority) among queues 1931 detected by priority queue detector 2231, so that the rank changes upon every selection and multiple queues 1931 are selected on a fair basis.
  • FIG.16 is a block diagram showing the configuration of an output amount measurer of the packet transport circuit of the second embodiment of the present invention.
  • output amount measurer 226 has cumulative identification memory 2261, data amount count circuit 2262, individual selection circuit 2263, cumulative selection circuit 2264, and finish detector 2265.
  • a plurality of cumulative identification memories 2261 are set corresponding to cumulative holders 225.
  • a plurality of cumulative identification memories 2261 are capable of memorizing cumulative identification information representing the correspondence between cumulative holders 225 and queues 1931 and the group containers. By this means, the correspondence between cumulative holders 225 and queues 1931 and the group containers becomes identifiable, so that the output data amount of queue 1931 that outputs packets accumulates in cumulative holder 225 indicated by the cumulative identification information.
  • data amount counter 2262 counts the amount of output data from queue 1931.
  • the output data amount counted by data amount count circuit 2262 is provided to individual selection circuit 2263 and to cumulative selection circuit 2264.
  • Individual selection circuit 2263 selects individual holder 224 that is capable of holding the output data amount of each queue 1931.
  • Cumulative selection circuit 2264 selects cumulative holder 225 capable of accumulating and holding the output data amount of each queue 1931 and group container.
  • Individual selection circuit 2263 supplies the output data amount to individual holder 224 corresponding to queue 1931 selected by selection determiner 223.
  • cumulative selection circuit 2264 supplies the output data amount to cumulative holder 225 represented by the cumulative identification information in cumulative identification memory 2261 corresponding to the group container selected by selection determiner 223.
  • identification writer 203 writes queue identification information in queue identification memory 22261 provided on a per cumulative holder basis, has it memorized, and has cumulative identification information representing this cumulative holder 225 in cumulative identification memory 2261 corresponding to queue 1931 represented by the queue identification information. As a result, it is possible to set the correspondence between queues 1931 and the group containers without inconsistency.
  • identification writer 203 makes the information memorized in queue identification memory 22261 and cumulative identification memory 2261 changeable, thereby enabling the user to change the correspondence between queues 1931 and the group containers.
  • Finish detector 2265 detects the end of packet output from queues 1931. Finish detector 2265 is capable of reporting the end of packet output to priority determiner 222, selection determiner 223, data amount count circuit 2262, individual selection circuit 2263, and cumulative selection circuit 2264, and so forth, thereby reporting processing timing (to secure synchronization) and reducing the power consumed during the non-processing period (i.e. wait-period). That is, based on the timing of the end of packet output, data amount count circuit 2262 is capable of counting and providing the output data amount to individual holder 224 and to cumulative holder 225. Priority determiner 222 is likewise capable of determining the priority of queue 1931 that has outputted packets, in accordance with the timing of the end of packet output.
  • selection determiner 222 is likewise capable of determining queue 1931 to select anew in accordance with the timing of the end of packet output. As described above, by thus detecting the end of packet output by means of finish detector 2265, when there is queue 1931 still outputting packets, selection determiner 223 is unable to select another queue 1931 until the current packet output from queue 1931 is over. As a result, not only fixed-length packets such as ATM cells, but also variable-length packets such as IP packets can be controlled and outputted accurately.
  • queue 1931 that has outputted packets corresponding to an output data amount that reaches threshold level Th1 has its priority lowered to priority G in FIG.18.
  • detection indicator 205 disallows output from this queue 1931, the priority is lowered to priority D1 in FIG.18, and then no packet will be outputted from this queue 1931.
  • this queue 1931 has its priority lowered to the best effort priority shown as priority C in FIG.18.
  • this queue 1931 outputs the packets, it is possible not to change the priority, as represented by priority D3 in FIG.18.
  • priority D2 in FIG.18 it is preferable to disallow output from queue 1931 that has reached the upper limit level.
  • FIG.20 is a figure for explaining a third example of relationship between priority calculated by the priority calculator and output data amount, in the packet transport circuit of the second embodiment of the present invention.
  • individual writer 2225 writes lowest priority E in priority memory 2221.
  • best effort queue 1931 can be provided inside packet transport circuit 200.
  • this queue 1931 later outputs packets, it is possible not to change the priority, as represented by priority D3 in FIG.18. However, as represented by priority D2 in FIG.18, it is preferable to disallow output from queue 1931 that has reached the upper limit level.
  • packet transport circuit 200 is formed with individual units having respective functions
  • packet transport circuit 200 is formed with individual units having respective functions
  • a plurality of queues 1931 are divided into groups and make a plurality of group containers, and bandwidth control is executed with reference to the cumulative level (i.e. total level) of the output data amount of queues 1931 belonging to the multiple group containers.
  • the second embodiment of the present invention is applicable to cases where one container 193 controls output from a plurality of queues 1931.
  • the present invention is applicable to an apparatus that receives packets and outputs them through a plurality of output ports.
EP03756117A 2002-05-30 2003-05-30 Circuit de transfert de paquets et procede de transfert de paquets Withdrawn EP1511236A1 (fr)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2002157333 2002-05-30
JP2002157333 2002-05-30
JP2002160579 2002-05-31
JP2002160579 2002-05-31
PCT/JP2003/006809 WO2003103234A1 (fr) 2002-05-30 2003-05-30 Circuit de transfert de paquets et procede de transfert de paquets

Publications (1)

Publication Number Publication Date
EP1511236A1 true EP1511236A1 (fr) 2005-03-02

Family

ID=29714295

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03756117A Withdrawn EP1511236A1 (fr) 2002-05-30 2003-05-30 Circuit de transfert de paquets et procede de transfert de paquets

Country Status (5)

Country Link
US (1) US20050163138A1 (fr)
EP (1) EP1511236A1 (fr)
JP (1) JPWO2003103234A1 (fr)
CN (1) CN1656754A (fr)
WO (1) WO2003103234A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2290552A1 (fr) * 2008-06-03 2011-03-02 Fujitsu Limited Dispositif de transfert de données, dispositif de traitement d'informations, et procédé de commande

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8023408B2 (en) * 2004-11-19 2011-09-20 International Business Machines Corporation Dynamically changing message priority or message sequence number
US7619971B1 (en) * 2005-05-16 2009-11-17 Extreme Networks, Inc. Methods, systems, and computer program products for allocating excess bandwidth of an output among network users
US20070089032A1 (en) * 2005-09-30 2007-04-19 Intel Corporation Memory system anti-aliasing scheme
US7657682B2 (en) * 2007-09-14 2010-02-02 Freescale Semiconductor, Inc. Bus interconnect with flow control
US9262357B2 (en) * 2008-09-29 2016-02-16 International Business Machines Corporation Associating process priority with I/O queuing
US8503440B2 (en) 2008-10-20 2013-08-06 Tadeusz H. Szymanski Crossbar switch and recursive scheduling
WO2011067409A1 (fr) * 2009-12-04 2011-06-09 Napatech A/S Ensemble et procédé de réception et de stockage de données avec économie de bande passante par régulation de la mise à jour des niveaux de remplissage de files d'attente
JP7188206B2 (ja) * 2019-03-20 2022-12-13 富士通株式会社 通信装置、通信システム、及び通信方法
CN116185649A (zh) * 2021-11-26 2023-05-30 中兴通讯股份有限公司 存储控制方法、存储控制器、存储芯片、网卡、可读介质

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US167955A (en) * 1875-09-21 Improvement in eaves-trough hangers
US97733A (en) * 1869-12-07 Improved fastening for travelling-bags
US33581A (en) * 1861-10-29 Improvement in cider and wine mills
JP3673025B2 (ja) * 1995-09-18 2005-07-20 株式会社東芝 パケット転送装置
US6570876B1 (en) * 1998-04-01 2003-05-27 Hitachi, Ltd. Packet switch and switching method for switching variable length packets
JP2000031997A (ja) * 1998-07-15 2000-01-28 Fujitsu Ltd 帯域管理装置及びその方法
JP2000261438A (ja) * 1999-03-08 2000-09-22 Sony Corp フレームデータ交換装置及び方法
DE60128413T2 (de) * 2000-03-02 2008-01-17 Alcatel Lucent Gekennzeichneter Prioritätswarteschlangescheduler
KR100321784B1 (ko) * 2000-03-20 2002-02-01 오길록 중재 지연 내성의 분산형 입력 버퍼 스위치 시스템 및그를 이용한 입력 데이터 처리 방법
JP4879382B2 (ja) * 2000-03-22 2012-02-22 富士通株式会社 パケットスイッチ、スケジューリング装置、廃棄制御回路、マルチキャスト制御回路、およびQoS制御装置
JP4439100B2 (ja) * 2000-09-22 2010-03-24 株式会社東芝 ネットワーク間中継装置
JP4605911B2 (ja) * 2001-01-24 2011-01-05 富士通株式会社 パケット送出装置
JP4186421B2 (ja) * 2001-02-23 2008-11-26 株式会社日立製作所 パケット処理装置
US7164678B2 (en) * 2001-06-25 2007-01-16 Intel Corporation Control of processing order for received network packets
JP3914771B2 (ja) * 2002-01-09 2007-05-16 株式会社日立製作所 パケット通信装置及びパケットデータ転送制御方法
JP3869279B2 (ja) * 2002-02-05 2007-01-17 松下電器産業株式会社 パケット交換装置
US7142555B2 (en) * 2002-03-22 2006-11-28 Mindspeed Technologies, Inc. Method and apparatus for switching data using parallel switching elements

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO03103234A1 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2290552A1 (fr) * 2008-06-03 2011-03-02 Fujitsu Limited Dispositif de transfert de données, dispositif de traitement d'informations, et procédé de commande
EP2290552A4 (fr) * 2008-06-03 2012-08-15 Fujitsu Ltd Dispositif de transfert de données, dispositif de traitement d'informations, et procédé de commande

Also Published As

Publication number Publication date
WO2003103234A1 (fr) 2003-12-11
CN1656754A (zh) 2005-08-17
US20050163138A1 (en) 2005-07-28
JPWO2003103234A1 (ja) 2005-10-06

Similar Documents

Publication Publication Date Title
US5862137A (en) Point-to-multipoint arbitration
US6646986B1 (en) Scheduling of variable sized packet data under transfer rate control
US7058057B2 (en) Network switch port traffic manager having configurable packet and cell servicing
US6704321B1 (en) Traffic shaper
US7418002B2 (en) Method and apparatus for monitoring buffer contents in a data communication system
US6539024B1 (en) Method and apparatus for data buffer management in a communications switch
CA2112528C (fr) Systeme de commutation de paquets pour transmettre ceux-ci a partir de tampons d'entree utilisant l'etat des tampons de sortie
US6661802B1 (en) Congestion management
US7203170B2 (en) Network switch port with weighted random early discard
US20020167955A1 (en) Packet transfer device and packet transfer method adaptive to a large number of input ports
JPH0720124B2 (ja) データチャンネルのスケジューリング装置及び方法
EP1774714A2 (fr) Planificateur hierarchique a voies de planification multiples
US7164687B2 (en) Queue control method and relay apparatus using the method
US7283558B2 (en) Distributed weighted fair arbitration and forwarding
EP1511236A1 (fr) Circuit de transfert de paquets et procede de transfert de paquets
WO2006091175A1 (fr) Procede et dispositif pour la gestion de tampon dans des processeurs de paquets a memoire partagee
EP0810808A2 (fr) Dispositif pour le transport de cellules ATM
EP0839422B1 (fr) Structures de listes enchainees pour niveaux multiples de commande dans un commutateur mta
WO1997024904A1 (fr) Appareil de commutation
US6212181B1 (en) Method for using the departure queue memory bandwidth to support additional cell arrivals in an ATM switch
WO1997004564A1 (fr) Gestion de largeurs de bande attribuees et dynamiques
CA2575814C (fr) Propagation de taux de programmation minimums garantis
WO1997004561A1 (fr) Ordonnancement des liaisons
WO1997004570A1 (fr) Controle des attributions de largeur de bande a l'aide d'un compteur de cadence
WO1997004565A9 (fr) Arbitrage des priorites lors de transmissions de point a point ou de point a plusieurs points

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20041021

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PT RO SE SI SK TR

RBV Designated contracting states (corrected)

Designated state(s): DE FR GB

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20060405