A Straight Construction Algorithm for a Delay Invariant Convolutional Network Coding on Cyclic Networks

Delay invariant convolutional network codes (abbreviated DI-CNCs) can guarantee multicast communication at asymptotically optimal rates in networks with any delay profile. For a cyclic network, it has been shown that one can associate it with an acyclic network consisting of nodes in five layers, and the acyclic algorithm of <inline-formula> <tex-math notation="LaTeX">$\mathbb {F}$ </tex-math></inline-formula>-linear multicast can be employed to construct a DI- <inline-formula> <tex-math notation="LaTeX">$\mathbb {F}$ </tex-math></inline-formula>-CNC, as long as the field size is larger than the number of sinks in the cyclic network. In this paper, we present a directly feasible construction algorithm for a DI- <inline-formula> <tex-math notation="LaTeX">$\mathbb {F}$ </tex-math></inline-formula>-CNC over a cyclic network. Complexity of code construction and theoretical guarantees of algorithm implementation are also investigated in detail. The advantage of the straight construction algorithm is that for an existing code, when some sink nodes and associated edges are added, our algorithm just modifies the new assigned coding coefficients in an efficient localized manner, without the necessity to construct again the code in its expanding network.

transmission delay is nonzero along every cycle, then data 27 propagation in a causal manner can be assured in the cyclic 28 network by a CNC. The optimal CNCs are demonstrated to 29 achieve the maximum transmission rate from the source node 30 to the set of eligible receiver nodes. For a multicast network, 31 an optimal CNC can be constructed by the deterministic 32 algorithm [16] or the random one [17] with respect to a certain 33 delay pattern. 34 Delay-sensitive traffic systems (typical systems of this kind 35 include multimedia services and satellite communications) 36 have expressed a phenomenal growth in recent years [18], 37 [19], [20], [21]. One feature of these systems is that infor-38 mation bits traversing the network have a strict deadline. 39 In addition to delay constraints, real-time communication 40 networks also require achieving the maximum transmission 41 rate from the source node to its receiver nodes timely. Under 42 the above delay-sensitive traffic network setting, especially 43 VOLUME 10, 2022 This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/ over a cyclic network, one can consider deploying delay 44 invariant CNCs (DI-CNCs) into it. DI-CNCs are firstly intro-45 duced by Sun et al. in [22], they are a new class of CNCs for 46 multicast networks, which are not dependent on the delays of the network. If a DI-CNC is deployed into the network, any generating rate from the source. In this paper, we assume that 98 the ordering on edges of E is led by data-generating edges.

99
A sink means a non-source node r to which there are ω 100 edge-disjoint paths from s. The set of τ sink nodes is denoted 101 by R = {r 1 , r 2 , · · · , r τ } ⊂ V . 102 Let F be a finite field, which represents the symbol alpha-103 bet, and F q the finite field with q elements. Similarly to [22], 104 let P be a principal ideal domain (PID), which represents the 105 general ensemble of data units. Definition below describes a 106 linear network coding where the base field is generalized to 107 a PID. 108 Definition 1: A P-linear network coding (P-LNC) on a 109 network N = (V , E) means the assignment of an element l d,e 110 in P to every pair (d, e) of edges such that l d,e = 0 when (d, e) 111 is not an adjacent pair. The element l d,e is called the coding 112 coefficient or local encoding kernel (LEK) for the pair (d, e). 113 Generally, P = F in conventional network coding, and P = 114 F z in CNC, where F z is a rational power series ring, z 115 is the dummy variable that represents a unit-time delay [24], 116 [25]. An F-CNC means an F z -LNC (l d,e ) with (l d,e ) ∈ F z . 117 For linear network coding, any edge e has a global coding 118 vector associated with it as follows. where [g e ] e∈E is the ω × |E| matrix obtained by juxtaposing 133 the GEKs g e with e ∈ E, H s an ω × |E| matrix formed 134 by appending |E| − ω columns of zeroes to the ω × ω 135 identity matrix I ω . And this can be expressed in the following 136 equivalent forms:  where det(I |E| − K ), (I |E| − K ) * are the discriminant and the 141 adjugate of the matrix I |E| − K , respectively.

142
According to (3), if the discriminant det(I |E| − K ) is zero, 143 then for g e , none or multiple solutions exsit.

144
Definition 3: The discriminant of a P-linear network cod-145 ing on a network N = (V , E) is det(I |E| − K ). The code 146 is said to be nonsingular when the discriminant is nonzero. 147 A nonsingular code is said to be normal when it determines 148 a unique set of coding vectors.
to the notion of data propagation via the code, a sufficient 151 condition for normality of a P-linear network coding is that 152 det(I |E| − K ) is a unit in P [6].

153
Definition 4: A normal P-linear network coding with the 154 coding vectors g e is called a P-linear multicast when 155 rank P (span{g e : e ∈ In(r)}) = ω for every sink r. (4) 156 A linear multicast is an optimal network coding, which Unlike the design scheme of DI-CNC in the associated 183 acyclic network of the original network N = (V , E) [22], 184 we consider DI-CNC construction in the directed line graph

204
In our construction, we will employ partial encoding ker-205 nels (PEKs) to maintain the regularity of every basis of sink 206 node. Before giving the definition of the PEK, we need the 207 following notation.

226
Now, we can give the definition of the PEK.

227
Definition 8 [16]: For any node e in the line graph N , 228 without loss of generality, assume that e e i k ∈ O i , then 229 the PEK u e (z) of the node e satisfies the conditions (i) and 230 (ii) in Definition 2 (with g d (z), g e (z) replaced by u d (z), u e (z), 231 respectively ) when the LEKs in B i k are set to zero.

232
Notice that the difference between GEK g e (z) and PEK 233 u e (z) is that for g e (z), the LEKs in B i k may not currently be 234 zero, since they can be determined in previous steps.

235
For the sake of clarity, we summarize some notations in 236 Table 1.

238
In this section, we will present the DI-F-CNC construction 239 algorithm, which is shown in Algorithm 1. And our algorithm 240 assumes that the code designer has full knowledge of the 241 network. By the definition of F-linear multicast, after the code 242 construction, we must make sure that 243 (I) the code is normal, namely, det(I − K ) is nonzero,

A. STATEMENT OF DI-F-CNC CONSTRUCTION ALGORITHM 247
We consider the code construction on the line graph 248 N (P i ) and process every basis ξ i of sink node 249 r i , i = 1, · · · , τ , one after another. Initially, all LEKs in 250 N (V, E) are assigned to zeros, thus, det(I − K ) = 1 = 0, 251 during the code construction, we will remain that det(I − 252 K ) = 0. Note that a basis may have more than one associated 253 flows, we choose any one of them, only the bases and their 254 determined associated flows are taken into account in our 255 algorithm. For any edge in the original network N , which does 256 not take part in any of the associated flows, we can assign the 257 VOLUME 10, 2022 zero encoding coefficient to it or remove it directly from the 258 network. According to [1], this will not affect achieving the 259 optimal rate.

Algorithm 1
The DI-F-CNC Algorithm Input: The original network N Output: All LEKs of N 1: find the associated flow P i between the source node s and the sink node r i , i = 1, 2, · · · , τ ; 2: find the line graph N (P i ) for P i , i = 1, 2, · · · , τ ; let the LEKs of all edges be 0 s; 5: end for 6: for i = 1 to τ do 7: traverse the nodes in P i by topological order; // e i k is the first processing node, e i k is the next one after e i k 12: k is the next processing node after node e i k 13:  18: if e i k is the last processing node of P i then 19: (d). rank(span{g e : e ∈ ξ j }) = ω for all j < i. 293 And Theorems 1-4 (in subsection III-D) guarantee that 294 choosing LEKs in finite field F is sufficient to maintain the 295 DI-F-CNC conditions, where | F| ≥ τ + 3, and τ is the total 296 number of all sink nodes.

298
Firstly, we find the associated flow P i between the source 299 node s and the sink node r i , i = 1, 2, · · · , τ . By Ford and 300 Fulkerson algorithm [27], the total complexity of this step is where ω is equal to the size of the minimal individ-302 ual min-cut between s and the sink node r i , i = 1, 2, · · · , τ .

303
Note that for the line graph N (V, E) the |E| × |E| matrix 304 K is given by We can label the line graph, and initialize the LEKs l d,e , 307 where (d, e) ∈ E in total complexity O(|E| 2 ).

311
(1) The complexity of initializing O i and U i is O(ω 2 ).

312
(2) For node e i k in line graph N , the complexity of com-

314
(3) If we employ the linear independent test vector method 315 given in [23, Lemma 5] or in [28], the complexities of check-   and a single output, since these nodes would simply receive 347 and forward the same symbol. The bases of sinks r 1 , r 2 are 348 ξ 1 = {e 1 , e 9 } and ξ 2 = {e 2 , e 6 }, respectively. Note that 349 in Fig.1, the data generating rate from source s is E). Thus, the associated flow of ξ 1 is 353 And the 354 associated flow of ξ 2 is P 2 = {P 2 1 , P 2 2 }= {s 2 → e 2 , s 1 → 355 e 1 → e 9 → e 6 } (lines 1-2). At the beginning, all LEKs in 356 N are set to zeros (line 3-5). Assume that we go through 357 VOLUME 10, 2022 the nodes s 1 , s 2 , e 1 , e 2 , e 6 , e 9 in P 1 in topological order, the 358 nodes s 1 , s 2 , e 1 , e 2 , e 9 , e 6 in P 2 in topological order.  In the next steps, we will deal with nodes e 6 , e 9 , succes-381 sively. After similar discussions, we can assign l C e 2 ,e 6 = 1,

420
When we add some non-source nodes and associated edges 421 in the original network, they can produce newly additional 422 bases ξ j and associated flows P j (j > τ ). Assume that the 423 already processed node prior to the new one follows the 424 topological orders of associated flows P j (j > τ ). Then 425 constructing a DI-F-CNC on the expanding network just 426 corresponds to adding some new for-loop steps (lines 6-19) 427 in Algorithm 1, namely, our algorithm can modify the already 428 assigned LEKs in a localized manner.

429
For example, we add a sink r 3 in Fig.4 (the gray node in 430 Fig.4), and connect it with the original network by directed 431 edges e 13 , e 14 . The associated line graph of the extending 432 network is depicted in Fig.5(a) (the added edges are also 433 marked by gray dashed arrows). The associated flow for the 434 new basis ξ = {e 13 , e 14 } of sink r 3 is P 3 = {P 3 1 , P 3 2 } = {s 1 → 435 e 1 → e 4 → e 13 , s 2 → e 2 → e 7 → e 6 → e 14 }. 436 In Fig.5(a), we prefer the topological order for the 437 nodes in P 3 following the rule that the already processed 438 nodes in original line graph are prior to the new nodes 439 in the extending line graph. Thus, we process the nodes 440 s 1 , s 2 , e 1 , e 2 , e 4 , e 7 , e 13 , e 6 , e 14 in P 3 in topological order.  6-19), a similar 445 analysis can be applied on the case i = 3. We conclude that a 446 DI-F-CNC can be constructed on the extending network in 447 Fig.4, with all already assigned LEKs in Fig.2(b) remain 448 unchanged and new LEKs l e 4 ,e 13 = l e 6 ,e 14 = 1, l e 5 ,e 13 = 0 449 (see Fig.5(b)). 450 Therefore, by the above example, using our construction 451 algorithm, constructing a DI-F-CNC on the expanding net-452 work just corresponds to adding some new for-loop steps 453 (lines 6-19) in Algorithm 1. And the number of LEKs need-454  substituting it into (6) and (7), we can obtain that After substituting (9) into (5), we have det(I −K ) = 0, which 490 contradicts to our assumption. Thus, Theorem 1 holds.

491
The following Theorem shows that we can always pick an 492 eligible LEK to maintain the transfer function condition.

493
Theorem 2: Let e be any node in the line graph N of the 494 original network N , and S(e) be the set of all successors of the 495 node e. Assume that e ∈ S(e) is a successor of the node e, T ee 496 is the the total transfer function from e to e with the LEK l e,e , 497 and T ee = 1. We change l e,e to a new LEK l e,e , and define 498 the associated transfer function by T ee . If T ee = 1, then any 499 other new LEK l e,e will make its associated transfer function 500 T ee holding that T ee = 1. (10) 505 Similarly, we obtain that 506 T ee = T 1 + l e,e T 2 , (11) 507 T ee = T 1 + l e,e T 2 .

515
In order to derive the the regularity condition of the set of 516 PEKs in Algorithm 1, we need the following Lemma.

517
Lemma 1: In the line graph N of a given network N , 518 assume that E = {e 1 , · · · , e i , · · · , e ω } is a set of nodes 519 in N , and W = {w(e 1 ), · · · , w(e i ), · · · , w(e ω )} is the set 520 of GEKs (or PEKs) of the associated nodes in E. Suppose 521 that for a picked index i, T e i e i = 1 with the current LEKs, 522 where T e i e i is the transfer function from node e i to e i . Let 523 W = { w(e 1 ), · · · , w(e i ), · · · , w(e ω )} be the set of GEKs (or 524 PEKs) of the associated nodes in E, in which l e i ,e = 0 for any 525 node e ∈ N . Then the vectors w(e i ), i = 1, 2, · · · , ω, in W 526 have the same linearly independence as the vectors w(e i ), 527 i = 1, 2, · · · , ω, in W . where i = j, i, j ∈ {1, 2, · · · , ω}. The matrix form of the 537 above expressions (17) and (18) is as follows . . .
Therefore, the vectors w(e i ), i = 1, 2, · · · , ω, have  (e 1 ), · · · , u C (e i ), · · · , u C (e ω )}, with the LEK 571 l C e i ,e i and B e i = 0, 572 U N = { u N (e 1 ), · · · , u N (e i ), · · · , u N (e ω )}, with the LEK 573 l N e i ,e i and B e i = 0. 574 By Lemma 1, the PEKs in set U C are linearly dependent 575 just like the PEKs in set U C , and the PEKs in set U N have 576 the same linear dependence with the PEKs in set U N .

577
Note that B e i = 0 for sets U C , U C and U N . Thus, when we 578 change the LEK of the adjacent pair (e i , e i ) from l C e i ,e i to l N e i ,e i , 579 it does not alter the PEKs of nodes e 1 , · · · , e i−1 , e i+1 , · · · , e ω 580 in sets U C , U C and U N . In other words, we have By the constraint relation (i) in Definition 1, it is not 583 difficult to obtain that Since the PEKs in U C are linearly dependent, we have Thus, u C (e i ) can be linearly represented by u C (e 1 ), · · · , 588 u C (e i−1 ), u C (e i+1 ), · · · , u C (e ω ), namely, namely, u N (e i ) also can be determined by a linear combi-593 nation of u C (e 1 ), · · · , u C (e i−1 ), u C (e i+1 ), · · · , u C (e ω ) as 594 follows, where b j ∈ F, j = 1, · · · , i − 1, i + 1, · · · , ω. Notice that 597 u C (e 1 ), · · · , u C (e i ), · · · , u C (e ω ) are linearly independent, 598 after substituting (23) and (25) into (21), we can get 600 which contradicts to the assumption that l N e i ,e i = l C e i ,e i . There-601 fore, u N (e i ) / ∈ span{ U N \ u N (e i )}, namely, the PEKs in set U N 602 are linearly independent, and so do the PEKs in set U N .

603
Now, we discuss the regularity condition for the bases of 604 sink nodes.

605
Theorem 4: In the line graph N of a given network N , 606 we denote ξ = {e 1 , e 2 , · · · , e ω } be any regular basis of sink 607 node, which has been determined before. For any node e in 608 N , denote e be a successor of the node e. Let the current LEK 609 between the node e and the node e be l C e,e and the transfer 610 function T C ee = 1 with the current LEK l C e,e . We change 611 l C e,e into any new value l N e,e such that the associated transfer 612 function T N ee = 1, then at most one value of the l N e,e will make 613 the basis ξ not be regular.  Thus, by the constraint relation (i) in Definition 1, we have Note that T C ee = 1 and T N ee = 1, rearranging (29) and (30), 629 we have

660
If there exists i ∈ {1, 2, · · · , ω} such that α i = 0, without 661 loss of generality, we assume that α 1 = 0. Denote the ω × ω 662 matrix in the right hand of (39) by M . Applying elementary 663 column operations (replace the jth column by the sum of 664 that column and − α j α 1 multiple of the 1st column, and then 665 replace the 1st column by the sum of that column and −XR j α 1 666 multiple of the jth column, where j = 2, · · · , ω) on matrix M , 667 we can get an equivalent matrix M of M , Thus, If det( M ) = 0, then rank(M ) = rank( M ) = ω. In this case, 674 in terms of (38), the GEKs g N e 1 , · · · , g N e i , · · · , g N e ω are linearly 675 independent just as the GEKs g C e 1 , · · · , g C e i , · · · , g C e ω . We say that T 1 T 2 −T 2 −R+T 2 2 l C e,e = 0. Otherwise, assume to the contrary that It is easy to get the value of R,  We construct a class of special random directed cyclic net-733 works in MATLAB. For a given number of nodes, we number 734 all nodes, with source as node 1, and sinks as nodes with the 735 largest numbers. A random adjacency matrix A = (a ij ) of 736 the nodes is generated according to the following rules. The 737 elements in the fist column of A are zeroes, which ensures 738 source node has no incoming edges. The last few rows are 739 zeroes which ensures each sink node has no outgoing edges. 740 All the diagonal elements of A are zeroes, which ensures no 741 self-loop in the network. Other elements of A are assigned 742 0 with probability 0.85, and 1 with probability 0.15, such allo-743 cations of edge connection ensure that the random directed 744 network is not so intricate and cycles can exist with positive 745 probabilities. We throw away instances that the number of 746 edge-disjoint paths from source to any sink is less than 2 and 747 the number of outgoing edges from source is greater than 748 τ + 1, so we can focus on the scenarios of data generating 749 rate 2 ≤ ω ≤ τ + 1 (τ is the number of sink nodes in the 750 network).

751
Figs.6 and 7 depict the mean of the required field size 752 for the existence of DI-F-CNC in the aforementioned special 753 random directed cyclic networks (each statistic data is based 754 on 50 eligible random graphs). Fig.6 shows the case where 755 the number of sinks is fixed to 2, and the number of nodes 756 changes from 10 to 20 with network including k circles, k ∈ 757 {1, 2, 3}. Fig.7 shows the case where the number of circles 758 is fixed to 1, and the number of intermediate nodes changes 759 from 8 to 16 with network including k sinks, k ∈ {3, 4, 5}. 760 FIGURE 6. Mean of the required field size for the case where the number of sinks is fixed to 2, and the number of nodes changes from 10 to 20 with network including k circles, k ∈ {1, 2, 3}.

773
In this paper, we investigate a straight construction algorithm 774 for a field-based linear multicast network coding, which 775 actually qualifies as a DI-F-CNC over a cyclic network. 776 We conclude that if the size of the symbol field is no smaller 777 than τ + 3, where τ is the number of sink nodes in the 778 network, then we can always construct a DI-F-CNC. This 779 straight construction algorithm is beneficial to the scenario 780 that the network is locally dynamic changing.

781
How to design DI-CNCs over cyclic networks with mul-782 tiple sources is an interesting direction for future reasearch.

783
Another intriguing work would be how to investigate the 784 design and analysis of DI-CNCs over cyclic networks in the 785 presence of noise or interception.

787
The authors declare that they have no conflicts of interest.