Legal claims defining the scope of protection, as filed with the USPTO.
1. A method comprising: determining, by a network device, a data transfer rate per unit time interval associated with a flow of data; determining, by the network device, a first time, the first time being associated with receiving a first data unit included in the flow of data; determining, by the network device and based on the data transfer rate per unit time interval, a quantity of data allocated to the flow of data between the first time and a second time, the second time being associated with receiving a second data unit included in the flow of data, the second data unit being a next data unit, from the flow of data, received by the network device after the first data unit, and determining the quantity of data, allocated to the flow of data, further including: determining a first counter value, the first counter value indicating a quantity of data transferred between a third time and the first time, the third time being associated with receiving a third data unit included in the flow of data, the third data unit being received prior to the first data unit, and determining the quantity of data based on the first counter value; and policing, by the network device, the second data unit based on the quantity of data.
2. The method of claim 1 , further comprising: performing a single burst read operation to read data from a memory, the data including: information identifying the data transfer rate per unit time interval, information identifying the first time, and information identifying the first counter value.
3. The method of claim 1 , further comprising: performing a single burst write operation to store a fourth time and a second counter value, the fourth time being associated with performing the single burst write operation, and the second counter value being associated with a quantity of data transferred between the third time and the second time.
4. The method of claim 1 , where determining the quantity of data allocated to the flow of data between the first time and the second time further includes: determining a quantity of time intervals occurring between the first time and the second time, and determining the quantity of data, allocated to the flow of data between the first time and the second time, further based on the data transfer rate per unit time interval and the quantity of time intervals.
5. A method comprising: determining, by a network device, a data transfer rate per unit time interval associated with a flow of data; determining, by the network device, a first time associated with receiving a first data unit in the flow of data; determining, by the network device and based on the data transfer rate per unit time interval, a quantity of data allocated to the flow of data between the first time and a second time, the second time being associated with receiving a second data unit in the flow of data, the second data unit being a next data unit, from the flow of data, received by the network device after the first data unit, and determining the quantity of data allocated to the flow of data including: determining a first quantity of credits, the first quantity of credits corresponding to an amount of bandwidth allocated to the flow of data per unit time interval, determining a quantity of time intervals occurring between the first time and the second time, and determining a second quantity of credits based on the first quantity of credits and the quantity of time intervals; and policing by the network device, the second data unit based on the quantity of data and the second quantity of credits.
6. The method of claim 5 , further comprising: performing a single burst read operation to retrieve data from a memory, the data including: information identifying the data transfer rate per unit time interval, information identifying the first time, and information identifying the first quantity of credits.
7. The method of claim 5 , where the flow of data includes a particular type of data.
8. A device comprising: a memory; and a processor to: determine a data transfer rate per unit time interval associated with a flow of data received by the device, determine a first time, the first time being associated with receiving a first data unit included in the flow of data, determine a quantity of data allocated to the flow of data between the first time and a second time based on the data transfer rate per unit time interval, the second time being associated with receiving a second data unit included in the flow of data, the second data unit being a next data unit, from the flow of data, received after the first data unit, and the processor, when determining the quantity of data, being further to: determine a first counter value indicating a quantity of data transferred between a third time and the first time, the third time being associated with receiving a third data unit included in the flow of data, and the third data unit being received prior to the first data unit, and determine the quantity of data based on the data transfer rate per unit time interval and the first counter value, and police the second data unit based on the quantity of data.
9. The device of claim 8 , where the processor is further to: perform a burst read operation to read, from a memory, data that includes: information identifying the data transfer rate per unit time interval, information identifying the first time, and information identifying the first counter value.
10. The device of claim 8 , where the processor is further to: perform a burst write operation to update the first time and to update the first counter value, the processor, when performing the burst write operation, being further to: update the first time to identify a fourth time that is associated with performing the burst write operation, and update the first counter value to a second counter value that identifies a quantity of data transferred between the fourth time and the second time.
11. The device of claim 8 , where, when determining the quantity of data, the processor is further to: determine a quantity of time intervals occurring between the first time and the second time, and determine the quantity of data allowed further based on the data transfer rate per unit time interval and the determined quantity of time intervals.
12. A device comprising: a memory; and a processor to: determine a data transfer rate per unit time interval associated with a flow of data received by the device, determine a first time, the first time being associated with receiving a first data unit included in the flow of data, determine a quantity of data allocated to the flow of data between the first time and a second time based on the data transfer rate per unit time interval, the second time being associated with receiving a second data unit included in the flow of data, the second data unit being a next data unit, in the flow of data, received after the first data unit, and the processor, when determining the quantity of data, being further to: determine a first quantity of credits, the first quantity of credits identifying an amount of bandwidth that is allocated, per unit time interval, to the flow of data, determine a quantity of time intervals occurring between the first time and the second time, determine a second quantity of credits based on the first quantity of credits and the quantity of time intervals, and determine the quantity of data based on the second quantity of credits, and police the second data unit based on the quantity of data.
13. The device of claim 12 , where the processor is further to: perform a burst read operation to retrieve, from a memory, data that includes: information identifying the data transfer rate per unit time interval, information identifying the first time, and information identifying the first quantity of credits.
14. The device of claim 12 , where the flow of data includes a particular type of data.
15. A non-transitory computer-readable medium storing instructions, the instructions comprising: one or more instructions that, when executed by a processor of a device, cause the processor to: perform, based on receiving a first data unit in a flow of data, a burst read operation to retrieve, from a memory, data associated with policing the first data unit, the retrieved data including: information identifying a first time associated with receiving a second data unit, the second data unit being received prior to the first data unit, and information identifying a data transfer rate per unit time interval included in the flow of data, and information identifying a first counter value that indicates a quantity of data transferred between a third time and the first time, the third time being associated with accessing the memory based on receiving a third data unit included in the flow of data, and the third data unit being received prior to the second data unit, determine, based on the first time and the data transfer rate per unit time interval, a quantity of data allocated to the flow of data between the first time and a second time, the second time being associated with performing the burst read operation, and the quantity of data being determined based on the data transfer rate per unit time interval and the first counter value, and police the first data unit based on the quantity of data.
16. The non-transitory computer readable medium of claim 15 , where the instructions further comprise: one or more instructions to: perform a burst write operation to update the first time and to update the first counter value, the first time being updated to identify a fourth time that is associated with performing the burst write operation, and the first counter value being updated to a second counter value that identifies a quantity of data transferred between the third time and the fourth time.
17. The non-transitory computer readable medium of claim 15 , where the one or more instructions to determine the quantity of data, further include: one or more instructions to: determine a quantity of time intervals occurring between the first time and the second time, and determine the quantity of data further based on the data transfer rate per unit time interval and the quantity of time intervals.
18. A non-transitory computer readable medium to store instructions, the instructions comprising: one or more instructions that, when executed by a processor of a device, cause the processor to: perform, based on receiving a first data unit in a flow of data, a burst read operation to retrieve, from a memory, data associated with policing the first data unit, the retrieved data including: information identifying a first time associated with receiving a second data unit, the second data unit being received prior to the first data unit, information identifying a data transfer rate per unit time interval included in the flow of data, and information identifying a first quantity of credits, the first quantity of credits identifying an amount of bandwidth that is allocated, per unit time interval, for transmitting the flow of data, determine, based on the first time and the data transfer rate per unit time interval, a quantity of data allocated to the flow of data between the first time and a second time, the second time being associated with performing the burst read operation, determine a quantity of time intervals occurring between the first time and the second time, determine a second quantity of credits based on the first quantity of credits and the quantity of time intervals, and police the first data unit based on the quantity of data and the second quantity of credits.
19. The non-transitory computer readable medium of claim 18 , where the retrieved data further includes information identifying a maximum quantity of credits included in the flow of data, and where the second quantity of credits is determined further based on the maximum quantity of credits.
20. The non-transitory computer readable medium of claim 18 , where the flow of data includes a particular type of data.
Unknown
August 6, 2013
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.