Theorem 2. In an optimal division of a Burst, every
PDU ends either within the Starting edge or within
the Ending edge of a FEC Block.
Proof. Consider an optimal division of the Burst. If
all the PDUs end within the above edges of a FEC
Block then we are done. Otherwise, let the k
th
PDU
from the left of the Burst, denoted PDU
k
, to be the
first PDU from the left that ends at a bit of a FEC
Block which is outside the above edges. If PDU
k+1
begins at the next FEC Block boundary, or in the case
that PDU
k
is the last PDU in the Burst, one can add
at least one Data Block to the Burst, at the end of
PDU
k
, without changing the success probabilities of
the existing PDUs, thus increasing the B-Goodput and
contradicting the optimality of the given division.
Therefore, assume that PDU
k+1
begins imme-
diately after PDU
k
. If the success probability of
PDU
k+1
is larger than that of PDU
k
then one can
move one Data Block from PDU
k
to PDU
k+1
, thus
increasing the B-Goodput, contradicting the optimal-
ity of the given division. If the success probability of
PDU
k
is larger than that of PDU
k+1
then again one
can move one Data Block from PDU
k+1
to PDU
k
.
The success probability of PDU
k
is not changed. The
success probability of PDU
k+1
can only increase (we
shorten PDU
k+1
), and again the overall B-Goodput in-
creases, contradicting the optimality of the given di-
vision.
It turns out that the success probabilities of PDU
k
and PDU
k+1
must be equal. One can now move Data
Blocks from PDU
k
to PDU
k+1
until one of the follow-
ing occurs: there are Data Blocks left in PDU
k
but the
movement of one more Data Block will cause the be-
ginning of PDU
k+1
to cross a FEC Block boundary,
or there are no Data Blocks left in PDU
k
. In the first
case PDU
k
ends within the Starting edge of a FEC
Block. In the second case we can omit PDU
k
from
the division and move PDU
k+1
to begin at either the
beginning of a FEC Block or after PDU
k−1
.
Repeating the above process ends with a division
as claimed in the Theory.
2.4 An Algorithm to Compute the
B-Goodput
Theorems 1 and 2 establish the theoretic basis for
a dynamic programming algorithm to find the op-
timal division of a Burst. We denote this algo-
rithm by Division-Find. Algorithm Division-Find
builds a table T of L rows, as the number of FEC
Blocks in the Burst. The first row of T refers to
FEC Block 1 of the Burst and so on. Row num-
ber k shows the optimal use of FEC Blocks 1 to
k of the Burst, as it is explained in the following.
Every row has (2B − 1) entries, corresponding to
the places within a FEC Block where a PDU can
start, following Theorem 2. These entries of row k
are numbered T [k, 1],T [k,2], ...,T [k, B],T [k,F − (B −
2)],...,T [k, F].
The entries in T contain an average number of
successfully transmitted data bits, and not Goodputs.
The Goodput can be received by dividing the value in
an entry by the Burst size. The entries are computed
as follows. In row 1 we fill entries T [1, 1], ...,T [1,B]
only. Entry T[1, j],1 ≤ j ≤ B is computed assuming
that a PDU begins at bit number j in the FEC Block
and it contains as many Data Blocks as possible. Say
for entry T [1, j] one can allocate a PDU of X FEC
Blocks, starting from bit number j in the FEC Block.
Then T [1, j] = X · B · p.
We now move to row k,2 ≤ k ≤ L − 1. In each
of these rows we first compute entries T [k, F − (B −
2)],...,T [k, F] and then entries T [k,1],...,T [k , B]. We
first handle row 2 and consider entries T [2, j ], F −
(B − 2) ≤ j ≤ F. We want to find how the section
of the Burst, starting from bit j of the second FEC
Block, and ending at the end of the Burst, is most ef-
ficiently used, i.e. how one shall divide this section
into PDUs such that the maximal average number of
data bits are transmitted successfully. One needs to
consider 3 cases, derived from Theorems 1 and 2, as
shown in Figure 2, and choose the maximum among
the 3. Notice that not all the cases in Figure 2 always
exist. This depends on the relation between O + B to
F, e.g. if O + B is larger than 2B − 1 in case B in
Figure 2 then this case actually does not exist. Also
notice that in cases B and C one uses entries from row
1.
We now move to entries T [2,1],..., T [2, B]. Con-
sider entry T [2, j] in this set. We assume that a PDU
begins at bit j of the FEC Block and consider all the
possibilities to allocate PDUs at the section of the
Burst that begins at bit j of the second FEC Block
and that ends at the end of the Burst. We have 3 cases,
as shown in Figure 3, again derived from Theorems 1
and 2. The value of T [2, j] is the maximum among all
the cases. Notice that in case C we use an entry in row
2 that was already computed, and in case B we use an
entry in row 1. Again, not all the 3 cases always exist.
Concerning row L notice that at most two en-
tries need to be computed. From Theorem 1 entry
T [L,1] must be computed. Also, let X ≥ 1 be the
largest integer such that O +X · B +1 ≤ F. Then entry
T [L,O + X · B + 1], if exists, must also be computed.
As in the previous rows entry T [L,O + X · B + 1] is
computed before entry T [L, 1] and notice that entry
T [L,1] is the result of the algorithm that we are look-
ing for.
WINSYS2013-InternationalConferenceonWirelessInformationNetworksandSystems
194