Apparatus and method for data transmission
Abstract
Local concentration of accessing loads on a data buffer during data cell reading is reduced. Also, by providing sufficient time for a data cell reading operation with respect to data cell transmission timing, transmission rate fluctuation of CBR data cells in a transmitting side is reduced. When transmission of a new data stream is added, controller in a cell control unit refers to a transmitted data cell count of VC information processed through a slot immediately before. The controller determines whether a data cell transmitted through the slot immediately before is a head portion of a packet or not. If the data cell transmitted through the slot immediately before is the head portion of the packet, the controller only adds the VC information of the data stream to a shaper link list, and withholds transmission of the data cell. On the other hand, if the data cell transmitted through the slot immediately before is not the head portion of the packet, then the controller adds the VC information of the data stream, and transmits the data cell.
Claims
exact text as granted — not AI-modified1 - 11 . (canceled)
12 . A method comprising:
transmitting, by a network device and in a first slot of a transmission cycle, one of:
a first portion of a first data unit, or
a second portion of the first data unit;
incrementing, by the network device, a first counter after transmitting the one of the first portion of the first data unit or the second portion of the first data unit,
the first counter being incremented from a first value to a second value when the first portion of the first data unit is transmitted in the first slot of the transmission cycle,
the first counter being incremented from the second value to a third value when the second portion of the first data unit is transmitted in the first slot of the transmission cycle;
determining, by the network device, a value of a second counter,
the second counter being associated with transmitting a second data unit in a second slot of the transmission cycle,
the second counter being set to a fourth value prior to transmitting a first portion of the second data unit from the network device,
the second counter being incremented from the fourth value to a fifth value after transmitting the first portion of the second data unit from the network device, and
the second counter being incremented from the fifth value to a sixth value after transmitting a second portion of the second data unit from the network device;
when the value of the second counter is the fourth value:
transmitting, by the network device and when the value of the first counter is not the second value, the first portion of the second data unit from the network device, and
transmitting, by the network device and when the value of first counter is the second value, the first portion of the second data unit in a slot of a subsequent transmission cycle; and
when the value of the second counter is not the fourth value:
transmitting, by the network device, the second portion of the second data unit in the second slot of the transmission cycle.
13 . The method of claim 12 , where the first portion of the first data unit includes a head portion of the first data unit, and
where the first portion of the second data unit includes a head portion of the second data unit.
14 . The method of claim 12 , further comprising:
storing the first data unit; and setting the first counter to the first value based on storing the first data unit.
15 . The method of claim 12 , where transmitting the one of the first portion of the first data unit or the second portion of the first data unit includes:
transmitting the second portion of the first data unit; where the method further comprises:
determining, based on transmitting the second portion of the first data unit, that the first data unit has been transmitted from the network device;
setting the first counter to the first value based on the first data unit being transmitted from the network device; and
determining to transmit the second data unit from the network device based on setting the first counter to the first value; and
where determining the value of the second counter includes:
determining, based on determining to transmit the second data unit, the value of the second counter.
16 . The method of claim 12 , where transmitting the one of the first portion of the first data unit or the second portion of the first data unit includes:
determining that a value of a third counter does not comprise a seventh value,
the third counter comprising the seventh value when a first portion of a third data unit is transmitted in a third slot of the transmission cycle,
the third slot of the transmission cycle occurring immediately prior to the first slot of the transmission cycle; and
transmitting the first portion of the first data unit in the first slot of the transmission cycle based on the third counter not comprising the seventh value.
17 . The method of claim 12 , where the first counter indicates a quantity of transmitted data cells for the first data unit and the second counter indicates a quantity of transmitted data cells for the second data unit.
18 . The method of claim 12 , further comprising:
determining that the first portion of the second data unit includes a head portion of the second data unit,
where the value of the second counter is determined based on determining that the first portion of the second data unit includes the head portion of the second data unit.
19 . A network device comprising:
a processor to:
transmit, in a first slot of a transmission cycle, one of:
a first portion of a first data unit, or
a second portion of the first data unit,
increment a first counter after transmitting the one of the first portion of the first data unit or the second portion of the first data unit,
the first counter being incremented from a first value to a second value when the first portion of the first data unit is transmitted in the first slot of the transmission cycle,
the first counter being incremented from the second value to a third value when the second portion of the first data unit is transmitted in the first slot of the transmission cycle,
determine a value of a second counter,
the second counter being associated with transmitting a second data unit in a second slot of the transmission cycle,
the second counter being set to a fourth value prior to transmitting a first portion of the second data unit from the network device,
the second counter being incremented from the fourth value to a fifth value after transmitting the first portion of the second data unit from the network device, and
the second counter being incremented from the fifth value to a sixth value after transmitting a second portion of the second data unit from the network device,
transmit, when the value of the second counter is the fourth value and when the value of the first counter is not the second value, the first portion of the second data unit from the network device,
transmit, when the value of the second counter is the fourth value and when the value of first counter is the second value, the first portion of the second data unit in a slot of a subsequent transmission cycle, and
transmit, when the value of the second counter is not the fourth value, the second portion of the second data unit in the second slot of the transmission cycle.
20 . The device of claim 19 , where the first portion of the first data unit includes a head portion of the first data unit and the first portion of the second data unit includes a head portion of the second data unit.
21 . The device of claim 19 , where the processor is further to:
store the first data unit, and set the first counter to the first value based on storing the first data unit.
22 . The device of claim 19 , where, when transmitting the one of the first portion of the first data unit or the second portion of the first data unit, the processor is to:
transmit the second portion of the first data unit, where the processor is further to:
determine, based on transmitting the second portion of the first data unit, that the first data unit has been transmitted from the network device,
set the first counter to the first value based on the first data unit being transmitted from the network device, and
determine to transmit the second data unit from the network device based on setting the first counter to the first value, and
where, when determining the value of the second counter, the processor is to:
determine, based on determining to transmit the second data unit, the value of the second counter.
23 . The device of claim 19 , where, when transmitting the one of the first portion of the first data unit or the second portion of the first data unit, the processor is to:
determine that a value of a third counter does not comprise a seventh value, the third counter comprising the seventh value when a first portion of a third data unit is transmitted in a third slot of the transmission cycle, the third slot of the transmission cycle occurring immediately prior to the first slot of the transmission cycle; and transmit the first portion of the first data unit in the first slot of the transmission cycle based on the third counter not comprising the seventh value.
24 . The device of claim 19 , where the first counter indicates a quantity of transmitted data cells for the first data unit and the second counter indicates a quantity of transmitted data cells for the second data unit.
25 . The device of claim 19 , where the processor is further to:
determine that the first portion of the second data unit includes a head portion of the second data unit,
where the processor determines the value of the second counter based on the first portion of the second data unit including the head portion of the second data unit.
26 . A non-transitory computer-readable medium storing instructions, the instructions comprising:
one or more instructions that, when executed by a processor of a network device, cause the processor to:
transmit, in a first slot of a transmission cycle, one of:
a first portion of a first data unit, or
a second portion of the first data unit,
increment a first counter after transmitting the one of the first portion of the first data unit or the second portion of the first data unit,
the first counter being incremented from a first value to a second value when the first portion of the first data unit is transmitted in the first slot of the transmission cycle,
the first counter being incremented from the second value to a third value when the second portion of the first data unit is transmitted in the first slot of the transmission cycle,
determine a value of a second counter,
the second counter being associated with transmitting a second data unit in a second slot of the transmission cycle,
the second counter being set to a fourth value prior to transmitting a first portion of the second data unit from the network device,
the second counter being incremented from the fourth value to a fifth value after transmitting the first portion of the second data unit from the network device, and
the second counter being incremented from the fifth value to a sixth value after transmitting a second portion of the second data unit from the network device,
transmit, when the value of the second counter is the fourth value and when the value of the first counter is not the second value, the first portion of the second data unit from the network device,
transmit, when the value of the second counter is the fourth value and when the value of first counter is the second value, the first portion of the second data unit in a second slot of a subsequent transmission cycle, and
transmit, when the value of the second counter is not the fourth value, the second portion of the second data unit in the second slot of the transmission cycle.
27 . The non-transitory computer-readable medium of claim 26 , where the first portion of the first data unit includes a head portion of the first data unit and the first portion of the second data unit includes a head portion of the second data unit.
28 . The non-transitory computer-readable medium of claim 26 , where the instructions further comprise:
one or more instructions to store the first data unit, and one or more instructions to set the first counter to the first value based on storing the first data unit.
29 . The non-transitory computer-readable medium of claim 26 , where the one or more instructions to transmit the one of the first portion of the first data unit or the second portion of the first data unit include:
one or more instructions to transmit the second portion of the first data unit, where the instructions further comprise:
one or more instructions to determine, based on transmitting the second portion of the first data unit, that the first data unit has been transmitted from the network device,
one or more instructions to set the first counter to the first value based on the first data unit being transmitted from the network device, and
one or more instructions to determine to transmit the second data unit from the network device based on setting the first counter to the first value, and
where the one or more instructions to determine the value of the second counter include:
one or more instructions to determine, based on determining to transmit the second data unit, the value of the second counter.
30 . The non-transitory computer-readable medium of claim 26 , where the one or more instructions to transmit the one of the first portion of the first data unit or the second portion of the first data unit include:
one or more instructions to determine that a value of a third counter does not comprise a seventh value,
the third counter comprising the seventh value when a first portion of a third data unit is transmitted in a third slot of the transmission cycle,
the third slot of the transmission cycle occurring immediately prior to the first slot of the transmission cycle; and
one or more instructions to transmit the first portion of the first data unit in the first slot of the transmission cycle based on the third counter not comprising the seventh value.
31 . The non-transitory computer-readable medium of claim 26 , where the first counter indicates a quantity of transmitted data cells for the first data unit and the second counter indicates a quantity of transmitted data cells for the second data unit.Join the waitlist — get patent alerts
Track US2013136137A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.