# TPKT.ComplexForward[x].DestinationPacketSize

Specifies the amount of packet data (in bytes) that must accumulate before a ThroughPacket packet can be sent out.

#### Syntax

TPKT.ComplexForward[x].DestinationPacketSize = packetsize

x = index of a particular ThroughPacket transmission condition

#### Access

Read/Write

#### Type

Integer

#### Default

None.

#### Allowed values

0..1500 (bytes)

#### Example

TPKT.ComplexForward[0].DestinationPacketSize = 1440

#### Details

You can combine TPKT.ComplexForward[x].DestinationPacketSize keywords and TPKT.ComplexForward[x].LifeTimeTicks keywords to define condition sets that specify when packets are transferred by the system. Packets are transferred only when the amount of data specified by the TPKT.ComplexForward[x].DestinationPacketSize keyword has accumulated within the time period specified by the associated TPKT.ComplexForward[x].LifeTimeTicks keyword. For example:

TPKT.ComplexRxPort = 4046
TPKT.ComplexTxPort = 4046
TPKT.NumberOfComplexForwardConditions = 4
TPKT.ComplexForward.Count = 8
TPKT.ComplexForward[0].LifeTimeTicks = 0
TPKT.ComplexForward[0].DestinationPacketSize = 1440
TPKT.ComplexForward[1].LifeTimeTicks = 1
TPKT.ComplexForward[1].DestinationPacketSize = 980
TPKT.ComplexForward[2].LifeTimeTicks = 2
TPKT.ComplexForward[2].DestinationPacketSize = 700
TPKT.ComplexForward[3].LifeTimeTicks = 3
TPKT.ComplexForward[3].DestinationPacketSize = 1
TPKT.ComplexForward[4].LifeTimeTicks = 0
TPKT.ComplexForward[4].DestinationPacketSize = 0
TPKT.ComplexForward[5].LifeTimeTicks = 0
TPKT.ComplexForward[5].DestinationPacketSize = 0
TPKT.ComplexForward[6].LifeTimeTicks = 0
TPKT.ComplexForward[6].DestinationPacketSize = 0
TPKT.ComplexForward[7].LifeTimeTicks = 0
TPKT.ComplexForward[7].DestinationPacketSize = 0

In the previous example, the system sends out ThroughPacket packets only when the following conditions are met:

Within this period of time... | At least this much data must accumulate...
--- | ---
0 ms | 1440 bytes
10 ms | 980 bytes
20 ms | 700 bytes
30 ms | 1 byte

The example sets less demanding packet payload size restrictions as time elapses. The system uses these varying restrictions to minimize the latency it introduces when it holds on to packets until a specific amount of data accumulates. After the third tick (tick number 3 in the example), the system sends the packet out with whatever data it has accumulated up to that point, so long as a single byte of data has accumulated. Therefore, the maximum amount of latency that ThroughPacket introduces in this example is 30 ms.

You can set NULL ThroughPacket conditions by setting the associated TPKT.ComplexForward[x].DestinationPacketSize keyword to 0.

For information about the Clarent ThroughPacket multiplexing algorithm and its implementation in Fusion software, refer to the Dialogic® NaturalAccess™ Fusion™ VoIP API Developer’s Manual.

#### See also

TPKT.ComplexForward.Count, TPKT.ComplexRxPort, TPKT.ComplexTxPort, TPKT.NumberOfComplexForwardConditions