WO2014208489A1 - パケット転送処理装置および方法 - Google Patents

パケット転送処理装置および方法 Download PDF

Info

Publication number
WO2014208489A1
WO2014208489A1 PCT/JP2014/066523 JP2014066523W WO2014208489A1 WO 2014208489 A1 WO2014208489 A1 WO 2014208489A1 JP 2014066523 W JP2014066523 W JP 2014066523W WO 2014208489 A1 WO2014208489 A1 WO 2014208489A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
write
buffer
read
packets
Prior art date
Application number
PCT/JP2014/066523
Other languages
English (en)
French (fr)
Inventor
伊藤 康之
禎之 安田
晶子 大輝
浦野 正美
柴田 随道
Original Assignee
日本電信電話株式会社
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 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to US14/898,720 priority Critical patent/US9894007B2/en
Publication of WO2014208489A1 publication Critical patent/WO2014208489A1/ja

Links

Images

Classifications

    • 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/522Dynamic queue service slot or variable bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • 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
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9084Reactions to storage capacity overflow

Definitions

  • the present invention relates to a packet communication technique, and more particularly, to a buffer control technique for temporarily storing received packets in a buffer in a packet transfer processing device such as a router or a switch that concentrates an access network and connects to a core network.
  • a packet transfer processing device such as a router or a switch that concentrates an access network and connects to a core network.
  • a packet transfer processing device such as a router or a switch is installed at a position where the access network is concentrated and connected to the core network, inbound processing for receiving packets from the access network side to which the user device is connected, and Performs outbound processing to send packets to the access network.
  • the packet transfer processing device 50 includes a register file 51, a selector 52, a data writing unit 53, a packet buffer BUF, and a data reading unit 54 as main functional units used for inbound processing. ing.
  • the register file 51 is provided for each line from the first network NW1 formed of an access network or the like, and has a function of receiving packets from these lines and holding them in its own internal register.
  • the selector 52 has a function of selecting a packet read from the register file 51.
  • the data writing unit 53 has a function of inputting the packet selected by the selector 52 to the write port PW of the packet buffer BUF.
  • the packet buffer BUF is composed of a dual port SRAM having a write port PW and a read port PR.
  • the data input to the write port PW in the storage area specified by the write address information in the SRAM.
  • a function of writing a packet from the writing unit 53 and a function of reading a packet from the storage area specified by the read address information in the SRAM and outputting it from the read port PR to the data reading unit 54 in response to a read instruction. is doing.
  • the data reading unit 54 has a function of transmitting a packet read from the packet buffer BUF to the second network NW2.
  • the packet transfer processing device 50 includes a FIFO management unit 61, a read / selection control unit 62, and a write control unit as main functional units used for access control of the packet buffer BUF in inbound processing. 63, a read control unit 64, and an address control unit 65 are provided.
  • the FIFO management unit 61 has a function of managing the address information and the amount of packets written in each register file 51.
  • the read / selection control unit 62 instructs the register file 51 to read the packet stored in the register file 51 according to the address information and the amount of packets output from the FIFO management unit 61, and includes discarding. It has a function for instructing the selector 52 to select a packet and a function for outputting the address information and the write instruction of the packet selected by the selector 52 to the write control unit 63.
  • the write control unit 63 has a function of outputting the address information output from the read / selection control unit 62 to the address control unit 65 and a function of outputting the write instruction output from the read / selection control unit 62 to the packet buffer BUF.
  • the read control unit 64 has a function of outputting address information of a packet read from the packet buffer BUF to the address control unit 65 and a function of outputting a read instruction of the packet to the packet buffer BUF.
  • the address control unit 65 outputs the address information output from the write control unit 63 to the packet buffer BUF as the write address of the packet to be written to the packet buffer BUF, and the address information output from the read control unit 64 to the packet It has a function of outputting to the packet buffer BUF as a read address of a packet read from the buffer BUF.
  • the packet amount of each register file 51 managed by the FIFO management unit 61 is set. Based on the address information indicating the storage location of the packet output from the read / selection control unit 62 and the write instruction, the read / selection control unit 62 selects the packet to be written based on the write control unit 63 and the address control.
  • the unit 65 executes access control of the packet buffer BUF and writes the packet.
  • the address control unit 65 executes access control of the packet buffer BUF and reads the packet.
  • the line from the first network NW1 such as an access network is usually multiplexed. It is over-allocated. For this reason, when a received packet that exceeds the write bandwidth that is the limit of the write process arrives simultaneously from these lines, the write process to the packet buffer BUF cannot catch up and the received packet is discarded. At this time, since the received packet is discarded while fully using the write bandwidth to the packet buffer BUF, the received packet from each line is discarded in a chain regardless of the state of the packet buffer BUF. As a result, the packet transfer performance is degraded.
  • the present invention is intended to solve such a problem, and an object of the present invention is to provide a buffer control technique capable of suppressing the occurrence of chained discard of received packets due to insufficient write bandwidth.
  • a packet transfer processing device is a packet transfer processing device that collects a plurality of lines from a first network and connects them to a second network.
  • a register file that holds each of the packets received from these lines, a selector that sequentially selects and outputs any one of the packets read from the register file, and a packet that is selected and output from the selector
  • a write priority determination unit that determines that priority is required for a write operation, and a read bandwidth related to a packet read operation from the packet buffer out of all access bandwidths in the packet buffer when the write priority determination unit determines that priority is required
  • a write priority control unit that preferentially executes the packet write operation in the packet buffer by increasing a write bandwidth related to the packet write operation to the packet buffer as compared to the width.
  • Another packet transfer apparatus is a packet transfer processing apparatus that collects a plurality of lines from a first network and connects them to a second network, and is provided for each of the lines.
  • a register file that holds each packet received from the line, a selector that sequentially selects and outputs one of the packets read from the register file, and a data write that writes the packet selected and output from the selector to the packet buffer ,
  • a data reading unit for transmitting a packet read from the packet buffer to the second network, and a buffer accumulation amount in the packet buffer is detected based on the number of write packets and the number of read packets in the packet buffer Detected by the buffer accumulation amount detection unit and the buffer accumulation amount detection unit.
  • the surplus packets are read from the register file and selectively output from the selector to the data writing unit. Includes a read / selection control unit that reads the surplus packet from the register file and discards it by the selector.
  • Another packet transfer apparatus is a packet transfer processing apparatus that collects a plurality of lines from a first network and connects them to a second network, and is provided for each of the lines.
  • a register file that holds each packet received from the line, a selector that sequentially selects and outputs one of the packets read from the register file, and a data write that writes the packet selected and output from the selector to the packet buffer ,
  • a data reading unit for transmitting a packet read from the packet buffer to the second network, and a buffer accumulation amount in the packet buffer is detected based on the number of write packets and the number of read packets in the packet buffer Detected by the buffer accumulation amount detection unit and the buffer accumulation amount detection unit.
  • the write control unit for increasing / decreasing the write bandwidth related to the packet write operation to the packet buffer, and the increase / decrease in the buffer accumulation amount detected by the buffer accumulation amount detection unit
  • a read control unit for increasing / decreasing a read bandwidth related to a packet read operation from the packet buffer.
  • a packet transfer method is a packet transfer processing method used in a packet transfer processing apparatus that collects a plurality of lines from a first network and connects them to a second network
  • the register file includes: A step of holding each packet received for each line, a step of selecting and outputting one of the packets read from the register file in order, and a data writing unit being selected and output from the selector
  • a data write step for writing the packet to the packet buffer, a data read unit for transmitting the packet read from the packet buffer to the second network, and a write priority determination unit for receiving the packet from the line Reception rate for packets and reception rate for write priority determination
  • the write priority determination step for determining that the priority of the write operation is necessary, and the write priority control unit prioritizes the write priority determination step.
  • Another packet transfer processing method is a packet transfer processing method used in a packet transfer processing device for concentrating a plurality of lines from a first network and connecting to a second network.
  • a file holding each received packet for each line; a selector sequentially selecting and outputting any one of the packets read from the register file; and a data writing unit from the selector A data writing step for writing the selected and output packet to the packet buffer, a data reading unit for transmitting the packet read from the packet buffer to the second network, and a buffer accumulation amount detecting unit including the packet Based on the number of write packets and read packets in the buffer A buffer accumulation amount detecting step for detecting a buffer accumulation amount in the packet buffer; and a read / selection control unit that detects the buffer accumulation amount detected in the buffer accumulation amount detection step and a packet holding amount in the register file.
  • the surplus packet is read from the register file and selectively output from the selector to the data writing unit.
  • the surplus packet is read from the register file and discarded by the selector. reading And a selection control step.
  • Another packet transfer processing method is a packet transfer processing method used in a packet transfer processing device for concentrating a plurality of lines from a first network and connecting to a second network.
  • a file holding each received packet for each line; a selector sequentially selecting and outputting any one of the packets read from the register file; and a data writing unit from the selector A data writing step for writing the selected and output packet to the packet buffer, a data reading unit for transmitting the packet read from the packet buffer to the second network, and a buffer accumulation amount detecting unit including the packet Based on the number of write packets and read packets in the buffer
  • a buffer accumulation amount detection step for detecting a buffer accumulation amount in the packet buffer, and a write control unit that writes packets to the packet buffer in accordance with the increase or decrease in the buffer accumulation amount detected in the buffer accumulation amount detection step.
  • a write control step for decreasing and increasing a write bandwidth, and a read control unit for reading a packet from the packet buffer according to an increase / decrease in the buffer storage amount detected in the buffer storage amount
  • the present invention it is possible to reduce the frequency of occurrence of packet loss even when the reception rate is increased, and to suppress the occurrence of chained discard of received packets due to insufficient write bandwidth. As a result, it is possible to maintain good packet transfer performance as a result.
  • FIG. 1 is a block diagram illustrating a main configuration of the packet transfer processing device according to the first embodiment.
  • FIG. 2 is a timing chart illustrating write priority control of the packet transfer processing device according to the first embodiment.
  • FIG. 3 is a block diagram of a main configuration of the packet transfer processing device according to the second embodiment.
  • FIG. 4 is a block diagram illustrating a main configuration of the packet transfer processing device according to the third embodiment.
  • FIG. 5 is a timing chart illustrating discard priority control of the packet transfer processing device according to the third embodiment.
  • FIG. 6 is a block diagram of a main configuration of the packet transfer processing device according to the fourth embodiment.
  • FIG. 7 is a block diagram of a main configuration of the packet transfer processing device according to the fifth embodiment.
  • FIG. 8 is a block diagram showing a main configuration of a conventional packet transfer processing device.
  • the packet transfer processing device 10 is a packet transfer processing device such as a router or a switch that collects a plurality of lines from a first network NW1 such as an access network and connects it to a second network NW2 such as a core network. And having a function of performing inbound processing for receiving a packet from the access network side to which the user apparatus is connected and a function of performing outbound processing for transmitting the packet to the access network side.
  • the total access bandwidth of the packet buffer is composed of a write bandwidth allocated for packet writing and a read bandwidth allocated for packet reading.
  • the allocation ratio of the write bandwidth is increased compared to the read bandwidth out of the total access bandwidth of the packet buffer. More specifically, the packet reception rate is constantly monitored, and when the reception rate exceeds a threshold value, the write bandwidth allocation rate in the packet buffer is increased.
  • the packet transfer processing device 10 includes a register file 11, a selector 12, a data writing unit 13, a packet buffer BUF, and a data reading unit 14 as main functional units used for inbound processing. Yes.
  • the register file 11 is provided for each line from the first network NW1 composed of an access network or the like, and has a function of receiving packets from these lines and holding them in its own internal register.
  • the selector 12 has a function of selecting a packet read from the register file 11.
  • the data writing unit 13 has a function of inputting the packet selected by the selector 12 to the port P of the packet buffer BUF via the data bus DB.
  • the packet buffer BUF is composed of a single-port SRAM having a port P for writing / reading, and writing data input to the port P into the storage area designated by the write address information in the SRAM in response to a write instruction.
  • the data reading unit 14 has a function of reading the packet stored in the packet buffer BUF from the port P through the data bus DB and transmitting it to the second network NW2.
  • the packet transfer processing device 10 includes a FIFO management unit 21, a read / selection control unit 22, a write control unit as main functional units used for access control of the packet buffer BUF in inbound processing. 23, a read control unit 24, and an address control unit 25 are provided.
  • the FIFO management unit 21 has a function of managing address information and the amount of packets written in each register file 11.
  • the read / selection control unit 22 instructs the register file 11 to read the packet stored in the register file 11 according to the address information output from the FIFO management unit 21 and the amount of packets, and includes discarding. It has a function of instructing the selector 12 to select a packet, and a function of outputting the address information and write instruction of the packet selected by the selector 12 to a write priority control unit 30B described later.
  • the write control unit 23 has a function of outputting the address information from the write priority control unit 30B to the address control unit 25 and a function of outputting the input write instruction to the packet buffer BUF.
  • the read control unit 24 has a function of outputting address information of a packet read from the packet buffer BUF to the address control unit 25 and a function of outputting an instruction to read the packet to the packet buffer BUF.
  • the address control unit 25 outputs the address information output from the write control unit 23 to the packet buffer BUF as the write address of the packet to be written to the packet buffer BUF, and the address information output from the read control unit 24 to the packet It has a function of outputting to the packet buffer BUF as a read address of a packet read from the buffer BUF.
  • a write priority determination unit 30A and a write priority control unit 30B are provided.
  • the write priority determination unit 30A compares the reception rate for packets received from each line of the first network NW1 with the reception rate threshold for write priority determination, and the reception rate exceeds the reception rate threshold. In this case, it has a function of determining that priority is given to the write operation.
  • the write priority control unit 30B compares the read bandwidth related to the packet read operation from the packet buffer BUF out of the total access bandwidth in the packet buffer BUF. It has a function of preferentially executing the packet writing operation in the packet buffer BUF by increasing the write bandwidth for the packet writing operation to the buffer BUF.
  • the write priority determination unit 30A is provided with a received packet counting unit 31, a received packet totaling unit 32, a reception rate calculation unit 33, and a reception rate comparison unit 34 as main functional units.
  • the write priority control unit 30B is provided with a transfer control unit 35 and an access control unit 36 as main functional units.
  • the received packet counting unit 31 is provided for each line from the first network NW1, and has a function of counting received packets captured from the line.
  • the received packet totaling unit 32 has a function of totaling the counting results obtained by the received packet counting unit 31.
  • the reception rate calculation unit 33 has a function of calculating a reception rate regarding the reception packets of all the lines based on the aggregation result obtained by the reception packet aggregation unit 32.
  • the reception rate comparison unit 34 compares the reception rate obtained by the reception rate calculation unit 33 with a preset reception rate threshold for write priority determination, and according to the comparison result, the packet buffer BUF Has a function of determining whether or not the write priority operation is necessary.
  • the reception rate exceeds the reception rate threshold, a priority indicating that the write operation needs to be prioritized for the read operation is output as the write priority determination result, and the reception rate is the reception rate threshold.
  • priority not indicating that priority of the write operation is unnecessary is output.
  • the transfer control unit 35 outputs a read permission signal for permitting the reading / selection control unit 22 to read a packet from the register file 11 when writing a packet to the packet buffer BUF, and a reception rate comparison unit 34. And a function of changing the output interval of the read permission signal according to the write priority determination result from, and a function of outputting address information and a write instruction from the read / selection control unit 22 to the write control unit 23. Yes.
  • the write priority control in the packet buffer BUF is performed by switching the allocation ratio between the write bandwidth and the read bandwidth for the packet buffer BUF. For example, when the write priority determination result indicates that priority is required, out of the total access bandwidth of the packet buffer BUF, the write bandwidth is set to 100% and the read bandwidth is set to 0%, indicating that priority is not required. When the write bandwidth is set to 50% and the read bandwidth is set to 50% of the total access bandwidth of the packet buffer BUF, the transfer control unit 35 is half of the case where priority is not required. A read permission signal is output at intervals.
  • the access control unit 36 outputs a write permission for permitting the write control unit 23 to write a packet to the packet buffer BUF, and a packet request to the packet buffer BUF in response to a write request from the write control unit 23.
  • a function for outputting a write instruction, a function for outputting a read permission for permitting reading of a packet from the packet buffer BUF to the read control unit 24, and a read request from the read control unit 24 to the packet buffer BUF It has a function of outputting a packet read instruction and a function of changing the ratio of outputting the write permission and the read permission in accordance with the write priority determination result from the reception rate comparison unit 34.
  • the access control unit 36 outputs only the write permission and stops the output of the read permission when the write priority determination result indicates that priority is required, and when the priority is not necessary, the access permission and read permission are output. Are set to the same ratio.
  • the reception rate threshold value RRth is 80 Gbps.
  • the write bandwidth WW and the read bandwidth RW when the write priority determination result indicates that priority is required are not limited to 100% and 0%, but may be, for example, 80% or 20%. What is necessary is just to determine suitably according to the line
  • the reception rate threshold value RRth is also the same, and may be appropriately determined according to the line, access network, core network, and operation conditions and specifications that are to be processed by the packet transfer processing apparatus 10, such as 60 Gbps. .
  • the number of packets of packets arriving from the line from the first network NW1 is periodically counted for each line by the received packet counting unit 31 and totaled by the received packet counting unit 32.
  • the reception rate calculation unit 33 calculates the reception rate RR for the reception packets of all the lines based on the total result, and the reception rate comparison unit 34 calculates the reception rate RR and a preset reception rate threshold value RRth. And whether or not the write priority operation in the packet buffer BUF is necessary is determined.
  • the transfer control unit 35 outputs a read permission signal to the read / selection control unit 22 at an interval corresponding to the write bandwidth 100 Gbps, and the packet is read from the register file 11 at a timing corresponding to this.
  • the data is output to the data writing unit 13 via the selector 12.
  • the address information and the write instruction output from the read / selection control unit 22 in accordance with the reading of these packets are notified to the write control unit 23 via the transfer control unit 35.
  • the access control unit 36 notifies the write control unit 23 of write permission at intervals corresponding to the write bandwidth 100 Gbps, and notifies the read control unit 24 of read permission at intervals corresponding to the read bandwidth 100 Gbps. .
  • the write control unit 23 notifies the address control unit 25 of the address information from the transfer control unit 35 and also notifies the access control unit 36 of the write request in accordance with the write permission from the access control unit 36.
  • the packet output from the data writing unit 13 to the port P of the packet buffer BUF is written in the storage area corresponding to the address information from the address control unit 25 in response to a write instruction from the access control unit 36.
  • the transfer control unit 35 outputs a read permission signal to the read / selection control unit 22 at intervals corresponding to the write bandwidth 200 Gbps.
  • the access control unit 36 notifies the write control unit 23 of write permission at intervals corresponding to the write bandwidth 200 Gbps, and stops reading permission notification to the read control unit 24. Thereby, in the packet buffer BUF, the read operation is not performed and only the write operation is performed with priority.
  • the write priority determination unit 30A compares the reception rate regarding the packet received from each line of the first network NW1 with the reception rate threshold for write priority determination, If the reception rate exceeds the reception rate threshold value, it is determined that the priority of the write operation is required, and if the write priority control unit 30B determines that the priority is required by the write priority determination unit 30A, the entire access bandwidth in the packet buffer BUF Of the width, the packet write operation in the packet buffer BUF is preferentially executed by increasing the write bandwidth related to the packet write operation to the packet buffer BUF compared to the read bandwidth related to the packet read operation from the packet buffer BUF. It is what you do.
  • the write priority control unit 30B determines that priority is required by the write priority determination unit 30A, the read operation may be stopped and only the write operation may be executed.
  • the amount of buffer accumulation in the register file 11 can be reduced very quickly, the write bandwidth can be maximized, and even if the reception rate increases significantly thereafter, the write bandwidth is insufficient. It is possible to suppress the occurrence of chained discard of received packets due to.
  • the reception rate threshold value RRth can obtain a certain effect even if the reception bandwidth threshold value RRth is the same as the write bandwidth WW, but the reception rate threshold value RRth is set to a value smaller than the write bandwidth WW.
  • the packet in the register file 11 can be written in the packet buffer BUF in advance. As a result, it is possible to more effectively suppress the occurrence of chained discard of received packets due to insufficient write bandwidth.
  • the occurrence of chained discard of received packets is suppressed by preferentially executing the packet writing operation to the packet buffer BUF according to the determination based on the packet reception rate.
  • the buffer accumulation amount detection unit 40 uses the buffer in the packet buffer BUF based on the number of write packets and the number of read packets in the packet buffer BUF. It has a function to detect the accumulated amount.
  • the buffer accumulation amount detection unit 40 includes a write packet counting unit 41, a read packet counting unit 42, and a differential packet number calculating unit 43 as main functional units.
  • the write packet counting unit 41 has a function of counting the number of packets written to the packet buffer BUF based on a processing signal from the data writing unit 13 or the write control unit 23.
  • the read packet counting unit 42 has a function of counting the number of packets read from the packet buffer BUF based on a processing signal from the data reading unit 14 or the read control unit 24.
  • the difference packet number calculation unit 43 calculates the difference between the number of write packets counted by the write packet counting unit 41 and the number of read packets counted by the read packet counting unit 42, thereby increasing the buffer accumulation amount in the packet buffer BUF. It has a function to detect.
  • the read / selection control unit 22 compares the buffer accumulation amount detected by the buffer accumulation amount detection unit 40 with the packet retention amount in the register file 11, thereby writing the write band out of the packets held in the register file 11.
  • a function for determining whether or not some or all of the surplus packets exceeding the width can be stored in the packet buffer BUF, and if so, the surplus packets are read from the register file 11 and selectively output from the selector 12 to the data writing unit 13 And a function of reading a surplus packet from the register file 11 and discarding it by the selector 12 when it cannot be stored.
  • the packet buffer BUF is composed of a dual port type SRAM having a write port PW and a read port PR separately.
  • the data writing unit 13 has a function of inputting the packet selected by the selector 12 to the write port PW of the packet buffer BUF via the data bus DB.
  • the data reading unit 14 has a function of reading packets stored in the packet buffer BUF from the port PR via the data bus DB and transmitting them to the second network NW2.
  • Other functional units according to the present embodiment are the same as those in the first embodiment described above, and detailed description thereof is omitted here.
  • the buffer accumulation amount detection unit 40 periodically detects the buffer accumulation amount in the packet buffer BUF based on the number of write packets and the number of read packets in the packet buffer BUF.
  • the read / selection control unit 22 compares the buffer accumulation amount with the packet retention amount in the register file 11 and holds it in the register file 11. It is determined whether or not some or all of the surplus packets exceeding the write bandwidth can be stored in the packet buffer BUF.
  • the surplus packets are read from the register file 11 and are selectively output from the selector 12 by the data writing unit 13.
  • the surplus packets are read from the register file 11 and discarded by the selector 12.
  • the buffer accumulation amount detection unit 40 detects the buffer accumulation amount in the packet buffer BUF based on the number of write packets and the number of read packets in the packet buffer BUF, and performs read / selection control.
  • the unit 22 compares the buffer accumulation amount detected by the buffer accumulation amount detection unit 40 with the packet retention amount in the register file 11, so that one of the packets retained in the register file 11 exceeds the write bandwidth.
  • a function for determining whether or not a part or all of the surplus packets can be stored in the packet buffer BUF; If accumulation is not possible, surplus capacity is saved from the register file 11. In which was to be discarded at the selector 12 reads the Tsu door.
  • the packet discard operation in the register file 11 is preferentially executed in accordance with the determination based on the buffer accumulation amount of the packet buffer BUF, thereby suppressing the occurrence of chained discard of received packets.
  • the case has been described as an example.
  • a case will be described in which occurrence of chained discard of received packets is suppressed by preferentially executing a packet writing operation to the packet buffer BUF in accordance with the determination based on the buffer accumulation amount of the packet buffer BUF. To do.
  • the buffer accumulation amount detection unit 40 uses the buffer in the packet buffer BUF based on the number of write packets and the number of read packets in the packet buffer BUF. It has a function to detect the accumulated amount.
  • the configuration of the buffer accumulation amount detection unit 40 is the same as that in the second embodiment, and a description thereof is omitted here.
  • the write control unit 23 has a function of decreasing the write bandwidth in accordance with the increase / decrease of the buffer accumulation amount detected by the buffer accumulation amount detection unit 40.
  • the read control unit 24 has a function of increasing / decreasing the read bandwidth in accordance with the increase / decrease of the buffer accumulation amount detected by the buffer accumulation amount detection unit 40.
  • the packet buffer BUF is composed of a single-port SRAM having a port P for writing / reading, and writing data input to the port P into the storage area designated by the write address information in the SRAM in response to a write instruction.
  • the data reading unit 14 has a function of reading the packet stored in the packet buffer BUF from the port P through the data bus DB and transmitting it to the second network NW2.
  • Other functional units according to the present embodiment are the same as those in the first embodiment described above, and detailed description thereof is omitted here.
  • a buffer storage amount threshold value PCNTth for write priority determination is provided for the buffer storage amount PCNT of the packet buffer BUF.
  • PCNT exceeds PCNTth, the total access bandwidth of the packet buffer BUF is If the write bandwidth WW is set to 100% and the read bandwidth RW is set to 0% to indicate that priority is not required, the write bandwidth WW is set to 50% of the total access bandwidth of the packet buffer BUF. The read bandwidth RW is 50%.
  • the write bandwidth WW and the read bandwidth RW when PCNT exceeds PCNTth are not limited to 100% and 0%.
  • the processing of the packet transfer processing device 10 such as 80% and 20%. What is necessary is just to determine suitably according to an object line, an access network, a core network, and operation conditions and specifications.
  • the buffer storage amount threshold value PCNTth is also the same, for example, 60 Gbps or the like, if it is appropriately determined according to the line, access network, core network, and operation conditions and specifications to be processed by the packet transfer processing device 10. Good.
  • the buffer accumulation amount detection unit 40 periodically detects the buffer accumulation amount PCNT in the packet buffer BUF based on the number of write packets and the number of read packets in the packet buffer BUF.
  • the write controller 23 compares the PCNT with a preset PCNTth every time the PCNT is detected by the buffer accumulation amount detector 40. Whenever the PCNT is detected by the buffer accumulation amount detection unit 40, the read control unit 24 compares this PCNT with a preset PCNTth.
  • the write control unit 23 sets the write bandwidth WW to 50% of the total access bandwidth of the packet buffer BUF.
  • the read bandwidth RW is 50% of the total access bandwidth of the packet buffer BUF.
  • the write control unit 23 sets the write bandwidth WW to 100% of the total access bandwidth of the packet buffer BUF.
  • the read control unit 24 Of the total access bandwidth of the buffer BUF, the read bandwidth RW is set to 0%.
  • the write control unit 23 outputs a read permission signal to the read / selection control unit 22 at an interval corresponding to the write bandwidth 100%, and the packet is read from the register file 11 at a timing according to this.
  • the data is output to the data writing unit 13 via the selector 12.
  • the read control unit 24 stops the read operation because the read bandwidth is RW 0%. Thereby, in the packet buffer BUF, the read operation is not performed and only the write operation is performed with priority.
  • the write control unit 23 and the read control unit 24 set the write bandwidth WW to 50% and the read bandwidth RW as before time T0. 50%.
  • the packets stored in the packet buffer BUF are sequentially read out.
  • the buffer accumulation amount detection unit 40 detects the buffer accumulation amount in the packet buffer BUF based on the number of write packets and the number of read packets in the packet buffer BUF, and the write control unit 23.
  • the write bandwidth is decreased according to the increase / decrease in the buffer accumulation amount detected by the buffer accumulation amount detection unit 40, and the read control unit 24 increases / decreases the buffer accumulation amount detected by the buffer accumulation amount detection unit 40.
  • the read bandwidth is increased or decreased according to
  • the second embodiment is applied to the first embodiment described above. That is, the write priority determination unit 30A and the write priority control unit 30B are provided to perform the write priority control according to the first embodiment, and the buffer accumulation amount detection unit 40 is provided to provide the second embodiment. Such discard priority control is performed.
  • the third embodiment is applied to the first embodiment described above. That is, the write priority determination unit 30A and the write priority control unit 30B are provided to perform the write priority control according to the first embodiment, and the buffer accumulation amount detection unit 40 is provided to provide the third embodiment. Such write priority control is performed.
  • the write bandwidth becomes larger than the read bandwidth, and the packet write operation in the packet buffer BUF is preferentially executed. For this reason, packets stored in the register file 11 are read at a higher speed and written to the packet buffer BUF, and the buffer storage amount in the register file 11 is reduced. Therefore, since the buffer accumulation amount in the register file 11 is gradually reduced and the write bandwidth is increased, the frequency of occurrence of packet loss can be reduced even if the reception rate is increased thereafter. The occurrence of chained discard of received packets due to shortage can be suppressed.
  • the second embodiment is applied to the first embodiment
  • the fifth embodiment the first embodiment is described.
  • 3rd Embodiment 2nd Embodiment and 3rd Embodiment can be applied independently with respect to 1st Embodiment, respectively. Therefore, you may apply both 2nd Embodiment and 3rd Embodiment to 1st Embodiment.
  • the write priority determination unit 30A and the write priority control unit 30B are provided to perform the write priority control according to the first embodiment, and the buffer accumulation amount detection unit 40 of FIG.
  • the buffer accumulation amount detection unit 40 of FIG. 7 is provided to perform the write priority control according to the third embodiment.
  • SYMBOLS 10 Packet transfer processing apparatus, 11 ... Register file, 12 ... Selector, 13 ... Data writing part, BUF ... Packet buffer, 14 ... Data reading part, 30A ... Write priority determination part, 30B ... Write priority control part.

Abstract

 書き込み優先判定部(30A)が、第1の網(NW1)の各回線から受信したパケットに関する受信レートと書き込み優先判定用の受信レートしきい値とを比較する機能と、受信レートが受信レートしきい値を越えた場合、書き込み動作の優先要と判定し、書き込み優先制御部(30B)が、書き込み優先判定部(30A)で優先要と判定された場合、パケットバッファ(BUF)における全アクセス帯域幅のうち、パケットバッファ(BUF)からのパケット読み出し動作に関する読み出し帯域幅に比較して、パケットバッファ(BUF)に対するパケット書き込み動作に関する書き込み帯域幅を大きくすることにより、パケットバッファにおけるパケット書き込み動作を優先して実行する。これにより、書き込み帯域幅不足に起因する、受信パケットの連鎖的な廃棄の発生が抑制される。

Description

パケット転送処理装置および方法
 本発明は、パケット通信技術に関し、特にアクセス網を集線してコアネットワークに接続するルータやスイッチなどのパケット転送処理装置において、受信パケットをバッファに一時蓄積するためのバッファ制御技術に関する。
 ルータやスイッチなどのパケット転送処理装置は、アクセス網を集線してコアネットワークと接続する位置に設置された場合、ユーザ装置が接続されるアクセス網側からパケットを受信するインバウンド(Inbound)処理と、アクセス網側にパケットを送信するアウトバウンド(Outbound)処理とを行う。
 このパケット転送処理装置50には、図8に示すように、インバウンド処理に用いる主な機能部として、レジスタファイル51、セレクタ52、データ書き込み部53、パケットバッファBUF、およびデータ読み出し部54が設けられている。
 レジスタファイル51は、アクセス網などからなる第1の網NW1からの回線ごとに設けられて、これら回線からパケットをそれぞれ受信して自己の内部レジスタに保持する機能を有している。
 セレクタ52は、レジスタファイル51から読み出されたパケットを選択する機能を有している。
 データ書き込み部53は、セレクタ52で選択されたパケットを、パケットバッファBUFの書き込みポートPWへ入力する機能を有している。
 パケットバッファBUFは、書き込みポートPWと読み出しポートPRを有するデュアルポート型のSRAMからなり、書き込み指示に応じて、SRAMのうち書き込みアドレス情報で指定された記憶領域に、書き込みポートPWに入力されたデータ書き込み部53からのパケットを書き込む機能と、読み出し指示に応じて、SRAMのうち読み出しアドレス情報で指定された記憶領域から、パケットを読み出して読み出しポートPRからデータ読み出し部54へ出力する機能とを有している。
 データ読み出し部54は、パケットバッファBUFから読み出されたパケットを第2の網NW2へ送信する機能を有している。
 また、このパケット転送処理装置50には、図8に示すように、インバウンド処理におけるパケットバッファBUFのアクセス制御に用いる主な機能部として、FIFO管理部61、読み出し/選択制御部62、書き込み制御部63、読み出し制御部64、およびアドレス制御部65が設けられている。
 FIFO管理部61は、各レジスタファイル51に書き込まれたアドレス情報とパケットの量を管理する機能を有している。
 読み出し/選択制御部62は、FIFO管理部61から出力されたアドレス情報とパケットの量に応じて、レジスタファイル51に保管されているパケットの読み出しをレジスタファイル51に指示するとともに、廃棄を含めたパケットの選択をセレクタ52へ指示する機能と、セレクタ52で選択されたパケットのアドレス情報および書き込み指示を書き込み制御部63へ出力する機能とを有している。
 書き込み制御部63は、読み出し/選択制御部62から出力されたアドレス情報をアドレス制御部65へ出力する機能と、読み出し/選択制御部62から出力された書き込み指示をパケットバッファBUFへ出力する機能を有している。
 読み出し制御部64は、パケットバッファBUFから読み出すパケットのアドレス情報をアドレス制御部65へ出力する機能と、当該パケットの読み出し指示をパケットバッファBUFへ出力する機能とを有している。
 アドレス制御部65は、書き込み制御部63から出力されたアドレス情報を、パケットバッファBUFに書き込むパケットの書き込みアドレスとしてパケットバッファBUFへ出力する機能と、読み出し制御部64から出力されたアドレス情報を、パケットバッファBUFから読み出すパケットの読み出しアドレスとしてパケットバッファBUFへ出力する機能とを有している。
 したがって、図8に示す従来のパケット転送処理装置10において、第1の網NW1から受信したパケットをパケットバッファBUFへ書き込む際、FIFO管理部61で管理している各レジスタファイル51のパケットの量に基づいて、読み出し/選択制御部62が書き込むべきパケットを選択し、読み出し/選択制御部62から出力された当該パケットの格納場所を示すアドレス情報と書き込み指示に基づいて、書き込み制御部63とアドレス制御部65が、パケットバッファBUFのアクセス制御を実行して、当該パケットの書き込みを行う。
 また、パケットバッファBUFからパケットを読み出して第2の網NW2へ送信する際、読み出し制御部64から出力された読み出すべきパケットの格納場所を示すアドレス情報と読み出し指示に基づいて、読み出し制御部64とアドレス制御部65が、パケットバッファBUFのアクセス制御を実行して、当該パケットの読み出しを行う。
特開2004-178056号公報
 しかしながら、このような従来技術では、通常、パケット転送処理性能に対して集約効率を上げるため、アクセス網などからなる第1の網NW1からの回線を多重しており、パケット転送処理性能に対して過剰な割り当てとなっている。このため、これら回線から同時に書き込み処理の限界となる書き込み帯域幅を越える受信パケットが到着した場合、パケットバッファBUFへの書き込み処理が追いつかず、受信パケットの廃棄が発生する。
 このとき、パケットバッファBUFへの書き込み帯域幅をフルに使用しながら、受信パケットを廃棄するため、パケットバッファBUFの状態によらず、各回線からの受信パケットが連鎖的に廃棄されてしまい、結果としてパケット転送性能に劣化が生じるという問題点があった。
 本発明はこのような課題を解決するためのものであり、書き込み帯域幅不足に起因する、受信パケットの連鎖的な廃棄の発生を抑制できるバッファ制御技術を提供することを目的としている。
 このような目的を達成するために、本発明にかかるパケット転送処理装置は、第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置であって、前記回線ごとに設けられて、これら回線から受信したパケットをそれぞれ保持するレジスタファイルと、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するセレクタと、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込み部と、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出し部と、前記回線から受信した前記パケットに関する受信レートと書き込み優先判定用の受信レートしきい値とを比較し、前記受信レートが前記受信レートしきい値を越えた場合、書き込み動作の優先要と判定する書き込み優先判定部と、前記書き込み優先判定部で優先要と判定された場合、前記パケットバッファにおける全アクセス帯域幅のうち、前記パケットバッファからのパケット読み出し動作に関する読み出し帯域幅に比較して、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を大きくすることにより、前記パケットバッファにおけるパケット書き込み動作を優先して実行する書き込み優先制御部とを備えている。
 また、本発明にかかる他のパケット転送装置は、第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置であって、前記回線ごとに設けられて、これら回線から受信したパケットをそれぞれ保持するレジスタファイルと、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するセレクタと、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込み部と、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出し部と、前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出部と、前記バッファ蓄積量検出部で検出された前記バッファ蓄積量と、前記レジスタファイルにおけるパケット保持量とを比較することにより、前記レジスタファイルに保持されているパケットのうち、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を越える一部または全部の余剰パケットを前記パケットバッファへ蓄積可能か否か判定し、蓄積可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタから前記データ書き込み部へ選択出力し、蓄積不可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタで廃棄する読み出し/選択制御部とを備えている。
 また、本発明にかかる他のパケット転送装置は、第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置であって、前記回線ごとに設けられて、これら回線から受信したパケットをそれぞれ保持するレジスタファイルと、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するセレクタと、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込み部と、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出し部と、前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出部と、前記バッファ蓄積量検出部で検出された前記バッファ蓄積量の増減に応じて、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を減増させる書き込み制御部と、前記バッファ蓄積量検出部で検出された前記バッファ蓄積量の増減に応じて、前記パケットバッファからのパケット読み出し動作に関する読み出し帯域幅を増減させる読み出し制御部とを備えている。
 また、本発明にかかるパケット転送方法は、第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置で用いられるパケット転送処理方法であって、レジスタファイルが、前記回線ごとに受信したパケットをそれぞれ保持するステップと、セレクタが、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するステップと、データ書き込み部が、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込みステップと、データ読み出し部が、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出しステップと、書き込み優先判定部が、前記回線から受信した前記パケットに関する受信レートと書き込み優先判定用の受信レートしきい値とを比較し、前記受信レートが前記受信レートしきい値を越えた場合、書き込み動作の優先要と判定する書き込み優先判定ステップと、書き込み優先制御部が、前記書き込み優先判定ステップで優先要と判定された場合、前記パケットバッファにおける全アクセス帯域幅のうち、前記パケットバッファからのパケット読み出し動作に関する読み出し帯域幅に比較して、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を大きくすることにより、前記パケットバッファにおけるパケット書き込み動作を優先して実行する書き込み優先制御ステップとを備えている。
 また、本発明にかかる他のパケット転送処理方法は、第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置で用いられるパケット転送処理方法であって、レジスタファイルが、前記回線ごとに受信したパケットをそれぞれ保持するステップと、セレクタが、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するステップと、データ書き込み部が、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込みステップと、データ読み出し部が、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出しステップと、バッファ蓄積量検出部が、前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出ステップと、読み出し/選択制御部が、前記バッファ蓄積量検出ステップで検出された前記バッファ蓄積量と、前記レジスタファイルにおけるパケット保持量とを比較することにより、前記レジスタファイルに保持されているパケットのうち、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を越える一部または全部の余剰パケットを前記パケットバッファへ蓄積可能か否か判定し、蓄積可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタから前記データ書き込み部へ選択出力し、蓄積不可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタで廃棄する読み出し/選択制御ステップとを備えている。
 また、本発明にかかる他のパケット転送処理方法は、第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置で用いられるパケット転送処理方法であって、レジスタファイルが、前記回線ごとに受信したパケットをそれぞれ保持するステップと、セレクタが、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するステップと、データ書き込み部が、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込みステップと、データ読み出し部が、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出しステップと、バッファ蓄積量検出部が、前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出ステップと、書き込み制御部が、前記バッファ蓄積量検出ステップで検出された前記バッファ蓄積量の増減に応じて、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を減増させる書き込み制御ステップと、読み出し制御部が、前記バッファ蓄積量検出ステップで検出された前記バッファ蓄積量の増減に応じて、前記パケットバッファからのパケット読み出し動作に関する読み出し帯域幅を増減させる読み出し制御ステップとを備えている。
 本発明によれば、受信レートが増大してもパケットロスの発生頻度を低減でき、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することが可能となる。これにより、結果としてパケット転送性能を良好に維持することができる。
図1は、第1の実施の形態にかかるパケット転送処理装置の要部構成を示すブロック図である。 図2は、第1の実施の形態にかかるパケット転送処理装置の書き込み優先制御を示すタイミングチャートである。 図3は、第2の実施の形態にかかるパケット転送処理装置の要部構成を示すブロック図である。 図4は、第3の実施の形態にかかるパケット転送処理装置の要部構成を示すブロック図である。 図5は、第3の実施の形態にかかるパケット転送処理装置の廃棄優先制御を示すタイミングチャートである。 図6は、第4の実施の形態にかかるパケット転送処理装置の要部構成を示すブロック図である。 図7は、第5の実施の形態にかかるパケット転送処理装置の要部構成を示すブロック図である。 図8は、従来のパケット転送処理装置の要部構成を示すブロック図である。
 次に、本発明の実施の形態について図面を参照して説明する。
[第1の実施の形態]
 まず、図1を参照して、本発明の第1の実施の形態にかかるパケット転送処理装置10について説明する。
 このパケット転送処理装置10は、アクセス網などの第1の網NW1からの複数の回線を集線して、コアネットワークなどの第2の網NW2と接続する、ルータやスイッチなどのパケット転送処理装置であり、ユーザ装置が接続されるアクセス網側からパケットを受信するインバウンド(Inbound)処理を行う機能と、アクセス網側にパケットを送信するアウトバウンド(Outbound)処理を行う機能とを有している。
 前述したように、パケット転送処理装置10のインバウンド処理において、受信したパケットを一時的に蓄積するパケットバッファにおける書き込み帯域幅が不足した場合、受信パケットの連鎖的廃棄が発生する。したがって、書き込み帯域幅の不足が発生した場合には、その書き込み帯域幅を拡張すれば、受信パケットの連鎖的廃棄の発生を抑制することができる。
 本実施の形態は、パケットバッファの全アクセス帯域幅は、パケットの書き込み用として割り当てられている書き込み帯域幅と、パケットの読み出し用として割り当てられている読み出し帯域幅とから構成されていることに着目し、書き込み帯域幅の不足が発生した場合には、パケットバッファの全アクセス帯域幅のうち、読み出し帯域幅に比較して書き込み帯域幅の割当率を増大させるようにしたものである。より具体的には、パケットの受信レートを常時監視しておき、受信レートがしきい値を越えた場合には、パケットバッファにおける書き込み帯域幅の割当率を増大させるようにしたものである。
 図1に示すように、パケット転送処理装置10には、インバウンド処理に用いる主な機能部として、レジスタファイル11、セレクタ12、データ書き込み部13、パケットバッファBUF、およびデータ読み出し部14が設けられている。
 レジスタファイル11は、アクセス網などからなる第1の網NW1からの回線ごとに設けられて、これら回線からパケットをそれぞれ受信して自己の内部レジスタに保持する機能を有している。
 セレクタ12は、レジスタファイル11から読み出されたパケットを選択する機能を有している。
 データ書き込み部13は、セレクタ12で選択されたパケットを、データバスDBを介してパケットバッファBUFのポートPへ入力する機能を有している。
 パケットバッファBUFは、書き込み/読み出し兼用のポートPを有するシングルポート型のSRAMからなり、書き込み指示に応じて、SRAMのうち書き込みアドレス情報で指定された記憶領域に、ポートPに入力されたデータ書き込み部13からのパケットを書き込む機能と、読み出し指示に応じて、SRAMのうち読み出しアドレス情報で指定された記憶領域から、パケットを読み出してポートPからデータ読み出し部14へ出力する機能とを有している。
 データ読み出し部14は、パケットバッファBUFに蓄積されているパケットを、ポートPからデータバスDBを介して読み出して、第2の網NW2へ送信する機能を有している。
 また、このパケット転送処理装置10には、図1に示すように、インバウンド処理におけるパケットバッファBUFのアクセス制御に用いる主な機能部として、FIFO管理部21、読み出し/選択制御部22、書き込み制御部23、読み出し制御部24、およびアドレス制御部25が設けられている。
 FIFO管理部21は、各レジスタファイル11に書き込まれたアドレス情報とパケットの量を管理する機能を有している。
 読み出し/選択制御部22は、FIFO管理部21から出力されたアドレス情報とパケットの量に応じて、レジスタファイル11に保管されているパケットの読み出しをレジスタファイル11に指示するとともに、廃棄を含めたパケットの選択をセレクタ12へ指示する機能と、セレクタ12で選択されたパケットのアドレス情報および書き込み指示を、後述の書き込み優先制御部30Bへ出力する機能とを有している。
 書き込み制御部23は、書き込み優先制御部30Bからのアドレス情報をアドレス制御部25へ出力する機能と、入力された書き込み指示をパケットバッファBUFへ出力する機能を有している。
 読み出し制御部24は、パケットバッファBUFから読み出すパケットのアドレス情報をアドレス制御部25へ出力する機能と、当該パケットの読み出し指示をパケットバッファBUFへ出力する機能とを有している。
 アドレス制御部25は、書き込み制御部23から出力されたアドレス情報を、パケットバッファBUFに書き込むパケットの書き込みアドレスとしてパケットバッファBUFへ出力する機能と、読み出し制御部24から出力されたアドレス情報を、パケットバッファBUFから読み出すパケットの読み出しアドレスとしてパケットバッファBUFへ出力する機能とを有している。
 本実施の形態は、このようなインバウンド処理に用いる構成として、書き込み優先判定部30Aと、書き込み優先制御部30Bとを設けたものである。
 書き込み優先判定部30Aは、第1の網NW1の各回線から受信したパケットに関する受信レートと書き込み優先判定用の受信レートしきい値とを比較する機能と、受信レートが受信レートしきい値を越えた場合、書き込み動作の優先要と判定する機能とを有している。
 書き込み優先制御部30Bは、書き込み優先判定部30Aで優先要と判定された場合、パケットバッファBUFにおける全アクセス帯域幅のうち、パケットバッファBUFからのパケット読み出し動作に関する読み出し帯域幅に比較して、パケットバッファBUFに対するパケット書き込み動作に関する書き込み帯域幅を大きくすることにより、パケットバッファBUFにおけるパケット書き込み動作を優先して実行する機能を有している。
 書き込み優先判定部30Aには、主な機能部として、受信パケット計数部31、受信パケット集計部32、受信レート計算部33、および受信レート比較部34が設けられている。
 また、書き込み優先制御部30Bには、主な機能部として、転送制御部35とアクセス制御部36が設けられている。
 受信パケット計数部31は、第1の網NW1からの回線ごとに設けられて、当該回線からキャプチャした受信パケットを計数する機能を有している。
 受信パケット集計部32は、受信パケット計数部31で得られた計数結果を集計する機能を有している。
 受信レート計算部33は、受信パケット集計部32で得られた集計結果に基づき、これら全回線の受信パケットに関する受信レートを計算する機能を有している。
 受信レート比較部34は、受信レート計算部33で得られた受信レートと、予め設定されている書き込み優先判定用の受信レートしきい値とを比較し、この比較結果に応じて、パケットバッファBUFにおける書き込み優先動作の要否を判定する機能を有している。受信レートが受信レートしきい値を越えた場合には、書き込み優先判定結果として、読み出し動作に対して書き込み動作の優先が必要であることを示す優先要を出力し、受信レートが受信レートしきい値以下の場合には、書き込み動作の優先が不要であることを示す優先不要を出力する。
 転送制御部35は、パケットバッファBUFに対してパケットを書き込む際、読み出し/選択制御部22に対してレジスタファイル11からのパケット読み出しを許可する読み出し許可信号を出力する機能と、受信レート比較部34からの書き込み優先判定結果に応じて、読み出し許可信号の出力間隔を変更する機能と、読み出し/選択制御部22からのアドレス情報および書き込み指示を、書き込み制御部23へ出力する機能とを有している。
 本実施の形態では、パケットバッファBUFに対する書き込み帯域幅と読み出し帯域幅との割当率を切り替えることにより、パケットバッファBUFでの書き込み優先制御を行っている。例えば、書き込み優先判定結果が優先要を示す場合には、パケットバッファBUFの全アクセス帯域幅のうち、書き込み帯域幅を100%とするとともに読み出し帯域幅を0%とし、優先不要を示す場合には、パケットバッファBUFの全アクセス帯域幅のうち、書き込み帯域幅を50%とするとともに読み出し帯域幅を50%とする場合、転送制御部35は、優先要の場合は、優先不要の場合の半分の間隔で読み出し許可信号を出力することになる。
 アクセス制御部36は、書き込み制御部23に対してパケットバッファBUFへのパケットの書き込みを許可する書き込み許可を出力する機能と、書き込み制御部23からの書き込み要求に応じて、パケットバッファBUFへパケットの書き込み指示を出力する機能と、読み出し制御部24に対してパケットバッファBUFからのパケットの読み出しを許可する読み出し許可を出力する機能と、読み出し制御部24からの読み出し要求に応じて、パケットバッファBUFへパケットの読み出し指示を出力する機能と、受信レート比較部34からの書き込み優先判定結果に応じて、書き込み許可と読み出し許可を出力する割合を変更する機能とを有している。
 前述した例によれば、アクセス制御部36は、書き込み優先判定結果が優先要を示す場合、書き込み許可のみを出力して読み出し許可の出力を停止し、優先不要を示す場合、書き込み許可と読み出し許可の出力を同じ割合とする。
[第1の実施の形態の動作]
 次に、図1および図2を参照して、本実施の形態にかかるパケット転送処理装置10の動作について説明する。
 この例では、パケットバッファBUFの全アクセス帯域幅を200Gbpsとし、書き込み優先判定結果が優先要を示す場合には、パケットバッファBUFの全アクセス帯域幅のうち、書き込み帯域幅WWを100%(=200Gbps)とするとともに読み出し帯域幅RWを0%とし、優先不要を示す場合には、パケットバッファBUFの全アクセス帯域幅のうち、書き込み帯域幅WWを50%(=100Gbps)とするとともに読み出し帯域幅RWを50%(=100Gbps)とする。また、受信レートしきい値RRthを80Gbpsとする。
 なお、書き込み優先判定結果が優先要を示す場合の書き込み帯域幅WW,読み出し帯域幅RWについては、100%,0%に限定されるものではなく、例えば80%,20%など、パケット転送処理装置10の処理対象となる回線、アクセス網、コアネットワーク、さらには運用条件や仕様に応じて、適宜決定すればよい。また、受信レートしきい値RRthも同様であり、例えば60Gbpsなど、パケット転送処理装置10の処理対象となる回線、アクセス網、コアネットワーク、さらには運用条件や仕様に応じて、適宜決定すればよい。
 第1の網NW1からの回線から到着したパケットのパケット数は、周期的に、受信パケット計数部31で回線ごとに計数され、受信パケット集計部32で集計される。受信レート計算部33は、この集計結果に基づき、これら全回線の受信パケットに関する受信レートRRを計算し、受信レート比較部34は、この受信レートRRと予め設定されている受信レートしきい値RRthとを比較し、パケットバッファBUFにおける書き込み優先動作の要否を判定する。
 図2の時刻T0より前において、受信レートRRが受信レートしきい値RRth以下であるため、書き込み優先判定結果は優先不要を示している。このため、パケットバッファBUFには、全アクセス帯域幅のうち、書き込み帯域幅WWとして50%(=100Gbps)が割り当てられ、読み出し帯域幅として50%(=100Gbps)が割り当てられることになる。
 したがって、転送制御部35は、書き込み帯域幅100Gbpsに応じた間隔で、読み出し/選択制御部22に対して読み出し許可信号を出力し、これに応じたタイミングでレジスタファイル11からパケットが読み出され、セレクタ12を介してデータ書き込み部13へ出力される。
 また、これらパケットの読み出しに合わせて読み出し/選択制御部22から出力されたアドレス情報および書き込み指示が、転送制御部35を介して書き込み制御部23へ通知される。
 一方、アクセス制御部36は、書き込み帯域幅100Gbpsに応じた間隔で、書き込み制御部23に書き込み許可を通知するとともに、読み出し帯域幅100Gbpsに応じた間隔で、読み出し制御部24に読み出し許可を通知する。
 これにより、書き込み制御部23は、アクセス制御部36からの書き込み許可に応じて、転送制御部35からのアドレス情報をアドレス制御部25へ通知するとともに、書き込み要求をアクセス制御部36へ通知する。
 したがって、データ書き込み部13からパケットバッファBUFのポートPへ出力されたパケットが、アクセス制御部36からの書き込み指示に応じて、アドレス制御部25からのアドレス情報に応じた記憶領域に書き込まれる。
 この後、時刻T0において、受信レートRRが受信レートしきい値RRthを越えた場合、書き込み優先判定結果が優先要に切り替えられる。このため、パケットバッファBUFには、全アクセス帯域幅のうち、書き込み帯域幅WWとして100%(=200Gbps)が割り当てられ、読み出し帯域幅として0%が割り当てられることになる。
 したがって、転送制御部35は、書き込み帯域幅200Gbpsに応じた間隔で、読み出し/選択制御部22に対して読み出し許可信号を出力する。
 一方、アクセス制御部36は、書き込み帯域幅200Gbpsに応じた間隔で、書き込み制御部23に書き込み許可を通知するとともに、読み出し制御部24に対する読み出し許可の通知を停止する。
 これにより、パケットバッファBUFでは、読み出し動作が行われず、書き込み動作のみが優先して行われる。
 このため、レジスタファイル11内に蓄積されているパケットがより高速で読み出されてパケットバッファBUFに書き込まれることになり、レジスタファイル11内におけるバッファ蓄積量が低減する。したがって、時刻T0以降、レジスタファイル11内のバッファ蓄積量が減っているとともに、書き込み帯域幅が増大していることから、その後の時刻T1~T2に亘って受信レートRRが100Gbpsを越えても、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。なお、書き込み帯域幅WWを増大させない場合、WWを越えた図2の斜線部分に相当するパケットが破棄されることになり、連鎖的廃棄の発生原因となる。
 この後、時刻T3に、 受信レートRRが受信レートしきい値RRth以下となった場合、書き込み優先判定結果が優先不要に切り替えられる。このため、パケットバッファBUFには、時刻T0以前と同様に、全アクセス帯域幅のうち、書き込み帯域幅WWとして50%(=100Gbps)が割り当てられ、読み出し帯域幅として50%(=100Gbps)が割り当てられることになる。
 これにより、パケットバッファBUFに蓄積されたパケットが順次読み出されることになる。
[第1の実施の形態の効果]
 このように、本実施の形態は、書き込み優先判定部30Aが、第1の網NW1の各回線から受信したパケットに関する受信レートと書き込み優先判定用の受信レートしきい値とを比較する機能と、受信レートが受信レートしきい値を越えた場合、書き込み動作の優先要と判定し、書き込み優先制御部30Bが、書き込み優先判定部30Aで優先要と判定された場合、パケットバッファBUFにおける全アクセス帯域幅のうち、パケットバッファBUFからのパケット読み出し動作に関する読み出し帯域幅に比較して、パケットバッファBUFに対するパケット書き込み動作に関する書き込み帯域幅を大きくすることにより、パケットバッファBUFにおけるパケット書き込み動作を優先して実行するようにしたものである。
 これにより、受信レートが受信レートしきい値を越えた場合、読み出し帯域幅に比較して書き込み帯域幅が大きくなって、パケットバッファBUFにおけるパケット書き込み動作が優先して実行される。
 このため、レジスタファイル11内に蓄積されているパケットがより高速で読み出されてパケットバッファBUFに書き込まれることになり、レジスタファイル11内におけるバッファ蓄積量が低減する。したがって、レジスタファイル11内のバッファ蓄積量が徐々に減少するとともに、書き込み帯域幅が増大していることから、その後に受信レートが増大してもパケットロスの発生頻度を低減でき、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
 また、本実施の形態において、書き込み優先制御部30Bが、書き込み優先判定部30Aで優先要と判定された場合、読み出動作を停止して書き込み動作のみを実行するようにしてもよい。これにより、極めて迅速にレジスタファイル11内におけるバッファ蓄積量を低減させることができるとともに、書き込み帯域幅を最大とすることができ、その後に受信レートが大幅に増大しても、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
 また、本実施の形態において、受信レートしきい値RRthは、書き込み帯域幅WWと同じ値でも一定の効果を得ることができるが、受信レートしきい値RRthを書き込み帯域幅WWより小さい値に設定することにより、受信レートRRが書き込み帯域幅WWに達する前に、予めレジスタファイル11内のパケットを、パケットバッファBUFに書き込むことができる。これにより、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を、より効果的に抑制することができる。
[第2の実施の形態]
 次に、図3を参照して、本発明の第2の実施の形態にかかるパケット転送処理装置10について説明する。
 第1の実施の形態では、パケットの受信レートに基づく判定に応じて、パケットバッファBUFに対するパケット書き込み動作を優先的に実行することにより、受信パケットの連鎖的廃棄の発生を抑制する場合を例として説明した。本実施の形態では、パケットバッファBUFのバッファ蓄積量に基づく判定に応じて、レジスタファイル11内のパケット廃棄動作を優先的に実行することにより、受信パケットの連鎖的廃棄の発生を抑制する場合について説明する。
 図3に示すように、本実施の形態にかかるパケット転送処理装置10において、バッファ蓄積量検出部40は、パケットバッファBUFでの書き込みパケット数と読み出しパケット数とに基づいて、パケットバッファBUFにおけるバッファ蓄積量を検出する機能を有している。
 このバッファ蓄積量検出部40には、主な機能部として、書き込みパケット計数部41、読み出しパケット計数部42、および差分パケット数計算部43が設けられている。
 書き込みパケット計数部41は、データ書き込み部13または書き込み制御部23からの処理信号に基づいて、パケットバッファBUFに対して書き込まれたパケットの数を計数する機能を有している。
 読み出しパケット計数部42は、データ読み出し部14または読み出し制御部24からの処理信号に基づいて、パケットバッファBUFから読み出されたパケットの数を計数する機能を有している。
 差分パケット数計算部43は、書き込みパケット計数部41で計数された書き込みパケット数と、読み出しパケット計数部42で計数された読み出しパケット数との差分を計算することにより、パケットバッファBUFにおけるバッファ蓄積量を検出する機能を有している。
 読み出し/選択制御部22は、バッファ蓄積量検出部40で検出されたバッファ蓄積量と、レジスタファイル11におけるパケット保持量とを比較することにより、レジスタファイル11に保持されているパケットのうち書き込み帯域幅を越える一部または全部の余剰パケットをパケットバッファBUFへ蓄積可能か否か判定する機能と、蓄積可能な場合にはレジスタファイル11から余剰パケットを読み出してセレクタ12からデータ書き込み部13へ選択出力する機能と、蓄積不可能な場合にはレジスタファイル11から余剰パケットを読み出してセレクタ12で廃棄する機能とを有している。
 パケットバッファBUFは、書き込み用のポートPWと読み出し用のポートPRとを別個に有するデュアルポート型のSRAMからなる。
 データ書き込み部13は、セレクタ12で選択されたパケットを、データバスDBを介してパケットバッファBUFの書き込みポートPWへ入力する機能を有している。
 データ読み出し部14は、パケットバッファBUFに蓄積されているパケットを、ポートPRからデータバスDBを介して読み出して、第2の網NW2へ送信する機能を有している。
 なお、本実施の形態にかかるその他の機能部については、前述した第1の実施の形態と同様であり、ここでの詳細な説明は省略する。
[第2の実施の形態の動作]
 次に、図3を参照して、本実施の形態にかかるパケット転送処理装置10の動作について説明する。
 バッファ蓄積量検出部40は、周期的に、パケットバッファBUFでの書き込みパケット数と読み出しパケット数とに基づいて、パケットバッファBUFにおけるバッファ蓄積量を検出している。
 読み出し/選択制御部22は、バッファ蓄積量検出部40でバッファ蓄積量が検出されるごとに、そのバッファ蓄積量とレジスタファイル11におけるパケット保持量とを比較し、レジスタファイル11に保持されているパケットのうち、書き込み帯域幅を越える一部または全部の余剰パケットをパケットバッファBUFへ蓄積可能か否か判定する。
 ここで、パケットバッファBUFに空き記憶領域があって、余剰パケットを蓄積することが可能な場合には、レジスタファイル11から余剰パケットを読み出して、セレクタ12からデータ書き込み部13選択出力させる。
 一方、パケットバッファBUFに空き記憶領域がなく、余剰パケットを蓄積することが不可能な場合には、レジスタファイル11から余剰パケットを読み出して、セレクタ12で廃棄させる。
[第2の実施の形態の効果]
 このように、本実施の形態は、バッファ蓄積量検出部40が、パケットバッファBUFでの書き込みパケット数と読み出しパケット数とに基づいて、パケットバッファBUFにおけるバッファ蓄積量を検出し、読み出し/選択制御部22が、バッファ蓄積量検出部40で検出されたバッファ蓄積量と、レジスタファイル11におけるパケット保持量とを比較することにより、レジスタファイル11に保持されているパケットのうち書き込み帯域幅を越える一部または全部の余剰パケットをパケットバッファBUFへ蓄積可能か否か判定する機能と、蓄積可能な場合にはレジスタファイル11から余剰パケットを読み出してセレクタ12からデータ書き込み部13へ選択出力する機能と、蓄積不可能な場合にはレジスタファイル11から余剰パケットを読み出してセレクタ12で廃棄するようにしたものである。
 これにより、パケットバッファBUFに空き記憶領域がある場合には、レジスタファイル11内の余剰パケットがパケットバッファBUFへ書き込まれ、パケットバッファBUFに空き記憶領域がない場合には、レジスタファイル11内の余剰パケットがセレクタ12で廃棄される。
 このため、レジスタファイル11内のバッファ蓄積量が徐々に減少することから、その後に受信レートが増大してもパケットロスの発生頻度を低減でき、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
[第3の実施の形態]
 次に、図4を参照して、本発明の第3の実施の形態にかかるパケット転送処理装置10について説明する。
 第2の実施の形態では、パケットバッファBUFのバッファ蓄積量に基づく判定に応じて、レジスタファイル11内のパケット廃棄動作を優先的に実行することにより、受信パケットの連鎖的廃棄の発生を抑制する場合を例として説明した。本実施の形態では、パケットバッファBUFのバッファ蓄積量に基づく判定に応じて、パケットバッファBUFに対するパケット書き込み動作を優先的に実行することにより、受信パケットの連鎖的廃棄の発生を抑制する場合について説明する。
 図4に示すように、本実施の形態にかかるパケット転送処理装置10において、バッファ蓄積量検出部40は、パケットバッファBUFでの書き込みパケット数と読み出しパケット数とに基づいて、パケットバッファBUFにおけるバッファ蓄積量を検出する機能を有している。なお、バッファ蓄積量検出部40の構成については、第2の実施の形態と同様であり、ここでの説明は省略する。
 書き込み制御部23は、バッファ蓄積量検出部40で検出されたバッファ蓄積量の増減に応じて、書き込み帯域幅を減増させる機能を有している。
 読み出し制御部24は、バッファ蓄積量検出部40で検出されたバッファ蓄積量の増減に応じて、読み出し帯域幅を増減させる機能を有している。
 パケットバッファBUFは、書き込み/読み出し兼用のポートPを有するシングルポート型のSRAMからなり、書き込み指示に応じて、SRAMのうち書き込みアドレス情報で指定された記憶領域に、ポートPに入力されたデータ書き込み部13からのパケットを書き込む機能と、読み出し指示に応じて、SRAMのうち読み出しアドレス情報で指定された記憶領域から、パケットを読み出してポートPからデータ読み出し部14へ出力する機能とを有している。
 データ読み出し部14は、パケットバッファBUFに蓄積されているパケットを、ポートPからデータバスDBを介して読み出して、第2の網NW2へ送信する機能を有している。
 なお、本実施の形態にかかるその他の機能部については、前述した第1の実施の形態と同様であり、ここでの詳細な説明は省略する。
[第3の実施の形態の動作]
 次に、図4および図5を参照して、本実施の形態にかかるパケット転送処理装置10の動作について説明する。
 この例では、パケットバッファBUFのバッファ蓄積量PCNTに対して、書き込み優先判定用のバッファ蓄積量しきい値PCNTthを設け、PCNTがPCNTthを越えた場合には、パケットバッファBUFの全アクセス帯域幅のうち、書き込み帯域幅WWを100%とするとともに読み出し帯域幅RWを0%とし、優先不要を示す場合には、パケットバッファBUFの全アクセス帯域幅のうち、書き込み帯域幅WWを50%とするとともに読み出し帯域幅RWを50%とする。
 なお、PCNTがPCNTthを越えた場合の書き込み帯域幅WW,読み出し帯域幅RWについては、100%,0%に限定されるものではなく、例えば80%,20%など、パケット転送処理装置10の処理対象となる回線、アクセス網、コアネットワーク、さらには運用条件や仕様に応じて、適宜決定すればよい。また、バッファ蓄積量しきい値PCNTthも同様であり、例えば60Gbpsなど、パケット転送処理装置10の処理対象となる回線、アクセス網、コアネットワーク、さらには運用条件や仕様に応じて、適宜決定すればよい。
 バッファ蓄積量検出部40は、周期的に、パケットバッファBUFでの書き込みパケット数と読み出しパケット数とに基づいて、パケットバッファBUFにおけるバッファ蓄積量PCNTを検出している。
 書き込み制御部23は、バッファ蓄積量検出部40でPCNTが検出されるごとに、このPCNTと予め設定されているPCNTthと比較する。
 読み出し制御部24は、バッファ蓄積量検出部40でPCNTが検出されるごとに、このPCNTと予め設定されているPCNTthと比較する。
 図5の時刻T0より前において、PCNTがPCNTth以下であることから、書き込み制御部23は、パケットバッファBUFの全アクセス帯域幅のうち、書き込み帯域幅WWを50%とし、同じく、読み出し制御部24は、パケットバッファBUFの全アクセス帯域幅のうち、読み出し帯域幅RWを50%とする。
 この後、時刻T0において、PCNTがPCNTthを越えた場合、書き込み制御部23は、パケットバッファBUFの全アクセス帯域幅のうち、書き込み帯域幅WWを100%とし、同じく、読み出し制御部24は、パケットバッファBUFの全アクセス帯域幅のうち、読み出し帯域幅RWを0%とする。
 したがって、書き込み制御部23は、書き込み帯域幅100%に応じた間隔で、読み出し/選択制御部22に対して読み出し許可信号を出力し、これに応じたタイミングでレジスタファイル11からパケットが読み出され、セレクタ12を介してデータ書き込み部13へ出力される。
 また、読み出し制御部24は、読み出し帯域幅RW0%であることから、読み出し動作を停止する。
 これにより、パケットバッファBUFでは、読み出し動作が行われず、書き込み動作のみが優先して行われる。
 このため、レジスタファイル11内に蓄積されているパケットがより高速で読み出されてパケットバッファBUFに書き込まれることになり、レジスタファイル11内におけるバッファ蓄積量が低減する。したがって、時刻T0以降、レジスタファイル11内のバッファ蓄積量が減っているとともに、書き込み帯域幅が増大していることから、受信レートRRが増大しても、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
 この後、時刻T1において、PCNTがPCNTth以下となった場合、書き込み制御部23および読み出し制御部24は、時刻T0より前と同様に、書き込み帯域幅WWを50%とするとともに読み出し帯域幅RWを50%とする。
 これにより、パケットバッファBUFに蓄積されたパケットが順次読み出されることになる。
[第3の実施の形態の効果]
 このように、本実施の形態は、バッファ蓄積量検出部40が、パケットバッファBUFでの書き込みパケット数と読み出しパケット数とに基づいて、パケットバッファBUFにおけるバッファ蓄積量を検出し、書き込み制御部23が、バッファ蓄積量検出部40で検出されたバッファ蓄積量の増減に応じて、書き込み帯域幅を減増させ、読み出し制御部24が、バッファ蓄積量検出部40で検出されたバッファ蓄積量の増減に応じて、読み出し帯域幅を増減させるようにしたものである。
 これにより、パケットバッファBUFに空き記憶領域がある場合には、読み出し帯域幅に比較して書き込み帯域幅が大きくなって、パケットバッファBUFにおけるパケット書き込み動作が優先して実行される。
 このため、レジスタファイル11内に蓄積されているパケットがより高速で読み出されてパケットバッファBUFに書き込まれることになり、レジスタファイル11内におけるバッファ蓄積量が低減する。したがって、レジスタファイル11内のバッファ蓄積量が徐々に減少するとともに、書き込み帯域幅が増大していることから、その後に受信レートが増大してもパケットロスの発生頻度を低減でき、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
[第4の実施の形態]
 次に、図6を参照して、本発明の第4の実施の形態にかかるパケット転送処理装置10について説明する。
 本実施の形態は、前述した第1の実施の形態に第2の実施の形態を適用したものである。すなわち、書き込み優先判定部30Aと書き込み優先制御部30Bとを備えて、第1の実施の形態にかかる書き込み優先制御を行うとともに、バッファ蓄積量検出部40を備えて、第2の実施の形態にかかる廃棄優先制御を行うようにしたものである。
 これにより、受信レートが受信レートしきい値を越えた場合、読み出し帯域幅に比較して書き込み帯域幅が大きくなって、パケットバッファBUFにおけるパケット書き込み動作が優先して実行される。
 このため、レジスタファイル11内に蓄積されているパケットがより高速で読み出されてパケットバッファBUFに書き込まれることになり、レジスタファイル11内におけるバッファ蓄積量が低減する。したがって、レジスタファイル11内のバッファ蓄積量が徐々に減少するとともに、書き込み帯域幅が増大していることから、その後に受信レートが増大してもパケットロスの発生頻度を低減でき、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
 これに加えて、パケットバッファBUFに空き記憶領域がある場合には、レジスタファイル11内の余剰パケットがパケットバッファBUFへ書き込まれ、パケットバッファBUFに空き記憶領域がない場合には、レジスタファイル11内の余剰パケットがセレクタ12で廃棄される。
 このため、レジスタファイル11内のバッファ蓄積量が徐々に減少することから、その後に受信レートが増大してもパケットロスの発生頻度を低減でき、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
[第5の実施の形態]
 次に、図7を参照して、本発明の第5の実施の形態にかかるパケット転送処理装置10について説明する。
 本実施の形態は、前述した第1の実施の形態に第3の実施の形態を適用したものである。すなわち、書き込み優先判定部30Aと書き込み優先制御部30Bとを備えて、第1の実施の形態にかかる書き込み優先制御を行うとともに、バッファ蓄積量検出部40を備えて、第3の実施の形態にかかる書き込み優先制御を行うようにしたものである。
 これにより、受信レートが受信レートしきい値を越えた場合、読み出し帯域幅に比較して書き込み帯域幅が大きくなって、パケットバッファBUFにおけるパケット書き込み動作が優先して実行される。
 このため、レジスタファイル11内に蓄積されているパケットがより高速で読み出されてパケットバッファBUFに書き込まれることになり、レジスタファイル11内におけるバッファ蓄積量が低減する。したがって、レジスタファイル11内のバッファ蓄積量が徐々に減少するとともに、書き込み帯域幅が増大していることから、その後に受信レートが増大してもパケットロスの発生頻度を低減でき、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
 これに加えて、パケットバッファBUFに空き記憶領域がある場合には、読み出し帯域幅に比較して書き込み帯域幅が大きくなって、パケットバッファBUFにおけるパケット書き込み動作が優先して実行される。
 このため、レジスタファイル11内に蓄積されているパケットがより高速で読み出されてパケットバッファBUFに書き込まれることになり、レジスタファイル11内におけるバッファ蓄積量が低減する。したがって、レジスタファイル11内のバッファ蓄積量が徐々に減少するとともに、書き込み帯域幅が増大していることから、その後に受信レートが増大してもパケットロスの発生頻度を低減でき、書き込み帯域幅の不足による受信パケットの連鎖的廃棄の発生を抑制することができる。
 なお、前述した第4の実施の形態では、第1の実施の形態に第2の実施の形態を適用したものについて説明し、前述した第5の実施の形態では、第1の実施の形態に第3の実施の形態を適用したものについて説明したが、第2の実施の形態と第3の実施の形態とは、第1の実施の形態に対してそれぞれ独立して適用できる。したがって、第1の実施の形態に第2の実施の形態と第3の実施の形態の両方を適用してもよい。
 すなわち、書き込み優先判定部30Aと書き込み優先制御部30Bとを備えて、第1の実施の形態にかかる書き込み優先制御を行い、図6のバッファ蓄積量検出部40を備えて、第2の実施の形態にかかる廃棄優先制御を行うとともに、図7のバッファ蓄積量検出部40を備えて、第3の実施の形態にかかる書き込み優先制御を行うようにしたものである。これにより、第1、第2および第3の実施の形態にかかる効果をすべて得ることができる。
[実施の形態の拡張]
 以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。また、各実施形態については、矛盾しない範囲で任意に組み合わせて実施することができる。
 10…パケット転送処理装置、11…レジスタファイル、12…セレクタ、13…データ書き込み部、BUF…パケットバッファ、14…データ読み出し部、30A…書き込み優先判定部、30B…書き込み優先制御部。

Claims (10)

  1.  第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置であって、
     前記回線ごとに設けられて、これら回線から受信したパケットをそれぞれ保持するレジスタファイルと、
     前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するセレクタと、
     前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込み部と、
     前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出し部と、
     前記回線から受信した前記パケットに関する受信レートと書き込み優先判定用の受信レートしきい値とを比較し、前記受信レートが前記受信レートしきい値を越えた場合、書き込み動作の優先要と判定する書き込み優先判定部と、
     前記書き込み優先判定部で優先要と判定された場合、前記パケットバッファにおける全アクセス帯域幅のうち、前記パケットバッファからのパケット読み出し動作に関する読み出し帯域幅に比較して、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を大きくすることにより、前記パケットバッファにおけるパケット書き込み動作を優先して実行する書き込み優先制御部と
     を備えることを特徴とするパケット転送処理装置。
  2.  請求項1に記載のパケット転送処理装置において、
     前記書き込み優先制御部は、前記書き込み優先判定部で前記優先要と判定された場合、前記読み出動作を停止して書き込み動作のみを実行することを特徴とするパケット転送処理装置。
  3.  請求項1または請求項2に記載のパケット転送処理装置において、
     前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出部と、
     前記バッファ蓄積量検出部で検出された前記バッファ蓄積量と、前記レジスタファイルにおけるパケット保持量とを比較することにより、前記レジスタファイルに保持されているパケットのうち前記書き込み帯域幅を越える一部または全部の余剰パケットを前記パケットバッファへ蓄積可能か否か判定し、蓄積可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタから前記データ書き込み部へ選択出力し、蓄積不可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタで廃棄する読み出し/選択制御部と
     をさらに備えることを特徴とするパケット転送処理装置。
  4.  請求項1または請求項2に記載のパケット転送処理装置において、
     前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出部と、
     前記バッファ蓄積量検出部で検出された前記バッファ蓄積量の増減に応じて、前記書き込み帯域幅を減増させる書き込み制御部と、
     前記バッファ蓄積量検出部で検出された前記バッファ蓄積量の増減に応じて、前記読み出し帯域幅を増減させる読み出し制御部と
     をさらに備えることを特徴とするパケット転送処理装置。
  5.  第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置であって、
     前記回線ごとに設けられて、これら回線から受信したパケットをそれぞれ保持するレジスタファイルと、
     前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するセレクタと、
     前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込み部と、
     前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出し部と、
     前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出部と、
     前記バッファ蓄積量検出部で検出された前記バッファ蓄積量と、前記レジスタファイルにおけるパケット保持量とを比較することにより、前記レジスタファイルに保持されているパケットのうち、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を越える一部または全部の余剰パケットを前記パケットバッファへ蓄積可能か否か判定し、蓄積可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタから前記データ書き込み部へ選択出力し、蓄積不可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタで廃棄する読み出し/選択制御部と
     を備えることを特徴とするパケット転送処理装置。
  6.  第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置であって、
     前記回線ごとに設けられて、これら回線から受信したパケットをそれぞれ保持するレジスタファイルと、
     前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するセレクタと、
     前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込み部と、
     前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出し部と、
     前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出部と、
     前記バッファ蓄積量検出部で検出された前記バッファ蓄積量の増減に応じて、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を減増させる書き込み制御部と、
     前記バッファ蓄積量検出部で検出された前記バッファ蓄積量の増減に応じて、前記パケットバッファからのパケット読み出し動作に関する読み出し帯域幅を増減させる読み出し制御部と
     を備えることを特徴とするパケット転送処理装置。
  7.  第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置で用いられるパケット転送処理方法であって、
     レジスタファイルが、前記回線ごとに受信したパケットをそれぞれ保持するステップと、
     セレクタが、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するステップと、
     データ書き込み部が、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込みステップと、
     データ読み出し部が、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出しステップと、
     書き込み優先判定部が、前記回線から受信した前記パケットに関する受信レートと書き込み優先判定用の受信レートしきい値とを比較し、前記受信レートが前記受信レートしきい値を越えた場合、書き込み動作の優先要と判定する書き込み優先判定ステップと、
     書き込み優先制御部が、前記書き込み優先判定ステップで優先要と判定された場合、前記パケットバッファにおける全アクセス帯域幅のうち、前記パケットバッファからのパケット読み出し動作に関する読み出し帯域幅に比較して、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を大きくすることにより、前記パケットバッファにおけるパケット書き込み動作を優先して実行する書き込み優先制御ステップと
     を備えることを特徴とするパケット転送処理方法。
  8.  請求項7に記載のパケット転送処理方法において、
     前記書き込み優先制御ステップは、前記書き込み優先判定ステップで前記優先要と判定された場合、前記読み出動作を停止して書き込み動作のみを実行することを特徴とするパケット転送処理方法。
  9.  第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置で用いられるパケット転送処理方法であって、
     レジスタファイルが、前記回線ごとに受信したパケットをそれぞれ保持するステップと、
     セレクタが、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するステップと、
     データ書き込み部が、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込みステップと、
     データ読み出し部が、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出しステップと、
     バッファ蓄積量検出部が、前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出ステップと、
     読み出し/選択制御部が、前記バッファ蓄積量検出ステップで検出された前記バッファ蓄積量と、前記レジスタファイルにおけるパケット保持量とを比較することにより、前記レジスタファイルに保持されているパケットのうち、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を越える一部または全部の余剰パケットを前記パケットバッファへ蓄積可能か否か判定し、蓄積可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタから前記データ書き込み部へ選択出力し、蓄積不可能な場合には前記レジスタファイルから前記余剰パケットを読み出して前記セレクタで廃棄する読み出し/選択制御ステップと
     を備えることを特徴とするパケット転送処理方法。
  10.  第1の網からの複数の回線を集線して第2の網と接続するパケット転送処理装置で用いられるパケット転送処理方法であって、
     レジスタファイルが、前記回線ごとに受信したパケットをそれぞれ保持するステップと、
     セレクタが、前記レジスタファイルから読み出されたパケットからいずれか1つを順に選択出力するステップと、
     データ書き込み部が、前記セレクタから選択出力されたパケットをパケットバッファへ書き込むデータ書き込みステップと、
     データ読み出し部が、前記パケットバッファから読み出したパケットを前記第2の網へ送信するデータ読み出しステップと、
     バッファ蓄積量検出部が、前記パケットバッファでの書き込みパケット数と読み出しパケット数とに基づいて、当該パケットバッファにおけるバッファ蓄積量を検出するバッファ蓄積量検出ステップと、
     書き込み制御部が、前記バッファ蓄積量検出ステップで検出された前記バッファ蓄積量の増減に応じて、前記パケットバッファに対するパケット書き込み動作に関する書き込み帯域幅を減増させる書き込み制御ステップと、
     読み出し制御部が、前記バッファ蓄積量検出ステップで検出された前記バッファ蓄積量の増減に応じて、前記パケットバッファからのパケット読み出し動作に関する読み出し帯域幅を増減させる読み出し制御ステップと
     を備えることを特徴とするパケット転送処理方法。
PCT/JP2014/066523 2013-06-24 2014-06-23 パケット転送処理装置および方法 WO2014208489A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/898,720 US9894007B2 (en) 2013-06-24 2014-06-23 Packet transfer processing apparatus and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-131546 2013-06-24
JP2013131546A JP5571826B1 (ja) 2013-06-24 2013-06-24 パケット転送処理装置および方法

Publications (1)

Publication Number Publication Date
WO2014208489A1 true WO2014208489A1 (ja) 2014-12-31

Family

ID=51427281

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/066523 WO2014208489A1 (ja) 2013-06-24 2014-06-23 パケット転送処理装置および方法

Country Status (3)

Country Link
US (1) US9894007B2 (ja)
JP (1) JP5571826B1 (ja)
WO (1) WO2014208489A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3030827B1 (fr) * 2014-12-19 2017-01-27 Stmicroelectronics (Grenoble 2) Sas Procede et dispositif de traitement securise de donnees cryptees

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0669913A (ja) * 1992-06-18 1994-03-11 Fujitsu Ltd クロック乗換回路
JP2007194991A (ja) * 2006-01-20 2007-08-02 Matsushita Electric Ind Co Ltd パケット通信装置及びパケット通信方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6499072B1 (en) * 1999-09-02 2002-12-24 Ati International Srl Data bus bandwidth allocation apparatus and method
US6957267B2 (en) * 2000-12-28 2005-10-18 Intel Corporation Data packet processing
JP4266619B2 (ja) 2002-11-25 2009-05-20 株式会社ルネサステクノロジ 調停回路
US7631229B2 (en) * 2006-04-24 2009-12-08 Freescale Semiconductor, Inc. Selective bit error detection at a bus device
US9444905B2 (en) * 2014-03-20 2016-09-13 International Business Machines Corporation Allocating network bandwidth to prefetch requests to prefetch data from a remote storage to cache in a local storage

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0669913A (ja) * 1992-06-18 1994-03-11 Fujitsu Ltd クロック乗換回路
JP2007194991A (ja) * 2006-01-20 2007-08-02 Matsushita Electric Ind Co Ltd パケット通信装置及びパケット通信方法

Also Published As

Publication number Publication date
JP5571826B1 (ja) 2014-08-13
US9894007B2 (en) 2018-02-13
JP2015005946A (ja) 2015-01-08
US20160127249A1 (en) 2016-05-05

Similar Documents

Publication Publication Date Title
US9294402B2 (en) Router, method for controlling router, and program
US10992580B2 (en) Ingress rate limiting in order to reduce or prevent egress congestion
CN110278157B (zh) 拥塞控制方法及网络设备
US9798603B2 (en) Communication device, router having communication device, bus system, and circuit board of semiconductor circuit having bus system
US20140211634A1 (en) Adaptive buffer allocation management
US9008109B2 (en) Buffer management of relay device
EP2670085A1 (en) System for performing Data Cut-Through
CN111526095A (zh) 一种流量控制方法和装置
US8571049B2 (en) Setting and changing queue sizes in line cards
JP5571826B1 (ja) パケット転送処理装置および方法
CN103685062A (zh) 缓存管理方法及装置
CN104104601A (zh) 数据传输方法、设备及系统
US8681807B1 (en) Method and apparatus for switch port memory allocation
JP2008060700A (ja) バッファ制御装置及びバッファ制御方法
US8976651B2 (en) Load balance control unit, load balance control method and storage medium
US10367751B2 (en) Distributing and rate limiting packets among multiple paths in a single stage switching topology to a reordering node
KR20110084250A (ko) 이더넷 랜 내 포트 또는 포트쌍에서 등시성 데이터 스트림에 따라 스위치오프될 수 있는 포트를 갖는 멀티포트 mac 브릿지를 구동하는 방법
JP4630231B2 (ja) パケット処理システム、パケット処理方法、およびプログラム
US8073999B2 (en) Data input-output control apparatus
US20130262713A1 (en) Apparatus and method for fragmenting tramsmission data
JP6502134B2 (ja) データ送信制御装置、データ送信制御方法、及び、プログラム
US11146496B2 (en) Relay device
US11184297B2 (en) Relay device
JP3646871B2 (ja) データ中継装置及びデータ中継方法
US20150095621A1 (en) Arithmetic processing unit, and method of controlling arithmetic processing unit

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14816843

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 14898720

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14816843

Country of ref document: EP

Kind code of ref document: A1