Method and apparatus for performing high-speed traffic shaping
First Claim
1. A traffic shaper for use in determining transmission start times for network messages, the traffic shaper comprising:
- an arithmetic logic unit (ALU) configured to compute at least one transmission start time for a selected network message; and
a forwarding trigger mechanism coupled to the ALU, the forwarding trigger mechanism comprising a time-searchable queue and a retrieve time generator, whereby, the forwarding trigger mechanism is configured to store the at least one transmission start time in the time-searchable queue, to generate a retrieve time in the retrieve time generator, and to issue a transmit trigger-signal for the selected network message when its at least one transmission start time matches the retrieve time, and wherein the retrieve time is allowed to equal but not exceed a system time.
1 Assignment
0 Petitions
Accused Products
Abstract
A network traffic shaper includes a traffic shaper table for storing traffic specifiers, such as permissible data transmission rates, an arithmetic logic unit (ALU), and a high-speed forwarding trigger mechanism having at least one time-searchable data structure or queue and a retrieve time generator that substantially tracks, but never exceeds, a system time. As network messages are received, they are stored at a message buffer and certain message parameters, including message length and a corresponding traffic specifier, are provided to the traffic shaper. The traffic shaper determines when the message may be sent in accordance with the associated traffic specifier and stores this transmission start time along with the message'"'"'s buffer location in the time-searchable queue of the forwarding trigger. The forwarding trigger continuously examines the transmission start times for previously stored messages. When the transmission start time of a given message matches the retrieve time generator, the forwarding trigger mechanism signals that the message may be sent.
43 Citations
36 Claims
-
1. A traffic shaper for use in determining transmission start times for network messages, the traffic shaper comprising:
-
an arithmetic logic unit (ALU) configured to compute at least one transmission start time for a selected network message; and
a forwarding trigger mechanism coupled to the ALU, the forwarding trigger mechanism comprising a time-searchable queue and a retrieve time generator, whereby, the forwarding trigger mechanism is configured to store the at least one transmission start time in the time-searchable queue, to generate a retrieve time in the retrieve time generator, and to issue a transmit trigger-signal for the selected network message when its at least one transmission start time matches the retrieve time, and wherein the retrieve time is allowed to equal but not exceed a system time. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. In an intermediate network device having a forwarding engine for making forwarding decisions with respect to network messages, a message buffer for temporarily storing the network messages at corresponding locations, and a traffic shaper for use in determining transmission start times for the network messages, the traffic shaper comprising:
-
a traffic shaper table having a plurality of records each containing data transmission rate information and a timestamp relating to a last time that a respective network message was transmitted at the data transmission rate;
an arithmetic logic unit (ALU) coupled to the traffic shaper table, the ALU configured to compute at least one transmission start time for a selected network message based on the transmission rate information and timestamp from a record of the traffic shaper table corresponding to the selected network message; and
a forwarding trigger mechanism for receiving the transmission start times computed by the ALU and message buffer location information from the forwarding engine, the forwarding trigger mechanism having a time-searchable calendar queue for storing the transmission start times and network message location information and a retrieve time generator for generating a retrieve time, whereby, the forwarding trigger mechanism searches the time-searchable calendar queue for transmission start times that match the retrieve time and issues transmit trigger-signals to the forwarding engine for network messages whose transmission start time matches the retrieve time, wherein, the retrieve time is allowed to equal but not exceed a system time. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for controlling the transmission time of network messages received at a traffic shaper in an intermediate network device, the method comprising the steps of:
-
computing one or more transmission start times for a given message in response to rate transmission information for the given message, a time at which a last message at a specified rate was sent, a length of the given message and a system time;
storing the one or more transmission start times in at least one entry of a content addressable memory (CAM);
generating a retrieve time;
comparing the entries of the CAM to the retrieve time; and
forwarding the given message when its one or more transmission start times matches the retrieve time in the traffic shaper, wherein the retrieve time is allowed to equal but not exceed the system time. - View Dependent Claims (20, 21, 22)
-
-
23. A traffic shaper for use in determining transmission start times for network messages, comprising:
-
an arithmetic logic unit (ALU) to compute a transmission start time for a selected network message; and
a forwarding trigger mechanism, coupled to the ALU, the forwarding trigger mechanism configured to store the transmission start time in a calendar queue, to generate a retrieve time, and to issue a transmit trigger-signal for the selected network message when the transmission start time matches the retrieve time wherein, the retrieve time is allowed to equal but not exceed a system time. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
-
30. A method for determining transmission start times for network messages in a traffic shaper, comprising the steps of:
-
computing a transmission start time for a selected network message;
storing the start time in a calendar queue;
generating a retrieve time; and
issuing a transmit trigger-signal for the selected network message when the transmission start time matches the retrieve time in the traffic shaper, wherein, the retrieve time is allowed to equal but not exceed a system time. - View Dependent Claims (31, 32, 33, 34, 35)
-
-
36. An apparatus for determining transmission start times for network messages in a traffic shaper, comprising:
-
means for computing a transmission start time for a selected network message;
means for storing the transmission start time in a calendar queue;
means for generating a retrieve time; and
means for issuing a transmit trigger-signal for the selected network message when the transmission start time matches the retrieve time in the traffic shaper, wherein, the retrieve time is allowed to equal but not exceed a system time.
-
Specification