Network Protection Codes Against Link Failures Using Network Coding
Protecting against link failures in communication networks is essential to increase robustness, accessibility, and reliability of data transmission. Recently, network coding has been proposed as a solution to provide agile and cost efficient network …
Authors: ** Salah A. Aly, Ahmed E. Kamal (Department of Electrical, Computer Engineering
Netw ork Protection Codes Agai nst Link F ailure s Using Netw ork Coding Salah A. Aly and Ahmed E. Kamal Department of Electrical and Computer Engineering Iow a State Uni versity , Ames, I A 500 11, USA Email: { salah,kamal } @iastate.ed u Abstract —Protecting against li nk failures in communication networks is essential to increase robustness, accessibility , and reliability of data transmission. R ecently , network coding has been proposed as a solution to pro vide agile and cost efficient network protection against link f ailures, which does n ot require data re routing, or packet retransmission. T o achie ve this, separate paths hav e to be p ro visioned to carry encoded packets, hence requiring either the addition of extra links, or reserving some of the r esources for this purpose. In this paper , we p ropose network protection codes against a sin gle link failu re using network coding, wh ere a separate path using reserv ed link s is n ot needed. In this case portions of the link capacities are used to carry the encoded packets. The scheme is extended to protect against multiple link failures and can be impl emented at an ov erlay layer . Although this leads to reducin g the network capacity , the n etwork capacity reduction is asymptotically small in most cases of practical interest. W e demonstrate th at such network protection codes are equivalent to error correcting codes for erasure ch annels. F inally , we stu dy the encoding and d ecoding op erations of such codes ov er the binary field. I . I N T RO D U C T I O N Network codin g is a powerful tool that has been used to increase the th rough put, capacity , and perfor mance of com- munication netw orks [15], [18]. It offers b enefits in terms of energy efficiency , additional security , and red uced delay . Network coding allows th e intermediate nod es not only to forward packets u sing network scheduling algorithms, but also en code/dec ode th em using algebr aic primitive op erations (see [1], [4], [1 5], [1 8] an d reference s therein). One app lication of ne twork co ding that has been p roposed recently is to provide protection against link failures in overlay networks [9], [1 2]. This is ac hiev ed by tran smitting combin a- tions o f data units f rom mu ltiple conn ections on a ba ckup path in a manner that enab les each receiver node to r ecover a co py of the data transmitted on the w orking path in case the workin g path fails. T his can result in recovery from failures without data rero uting, hence achieving agile prote ction. Moreover , the sharing of protection re sources betwee n m ultiple con nections throug h the tr ansmission of linear combin ations of data units results in efficient use of pr otection resou rces. This, however , requires the establishment of extra p aths over which the co m- bined data units are transmitted . Such paths may require the This rese arch was support ed in part by grant s CNS-0626741 and CNS- 0721453 from the Natio nal Science Found ation, and a gift from Cisco Systems. addition of links to the network unde r the Separate Capacity Provisioning strategy ( SCP), or that paths be provisioned using existing links if using the Joint Capacity Provisioning strategy (JCP), hence reducin g the network traffic car rying capacity . Certain network s can allow extra transmissions and the addition of bandwidth, b ut they d o not allow the additio n o f new p aths. In this scenario , one needs to design efficient da ta recovery schemes. Several previous approach es focused o n solving this p roblem u sing additio nal extra paths at an overlay network lev el, o r deploying ARQ p rotocols for th e rec overy of lost packets. In o rder to provide recovery from link failures in such networks, ap proache s o ther than using ded icated paths, or ad ding extra links must be used . In this p aper, we propo se such an appr oach in which we use network coding to pr ovide agile, and resou rce e fficient p rotection against link failures, and without adding extra paths. The appro ach is ba sed on combinin g data units from a nu mber of s ources, a nd th en transmitting the encoded data units using a small fraction of the band width allocated to the c onnection s, hence disposing of the requir ement of having extra paths. In this scena rio, once a path fails, the receiver can recover the lost packets easily from the neigh bors by initiating simp le queries. Previous solu tions in network surviv ability a pproach es us- ing n etwork co ding fo cused on providing backu p paths to recover th e data affected by the failures [9], [10], [ 11]. Su ch approa ches inc lude 1+N, and M+N protection s. In 1+N pro- tection, an extra secondar y path is used to carry combinations of data units from N different connec tions, and is therefore used to protect N primary paths from any single link failure. The M+ N is an extension of 1+N p rotection where M extra secondary p aths are need ed to p rotect multiple link failures. In this paper , we apply n etwork coding f or network protec- tion against lin k failures and packet loss. W e define th e concept of pro tection codes similar to erro r-correcting co des that ar e widely u sed in ch annel co ding [8] , [ 14]. Protectio n cod es are a new class of error m onitorin g cod es that we p ropose in Section V. Such codes aim to provide better provisioning an d data recovery mechan isms. A pro tection co de is defined by a matrix G k nown at a set of senders S and receivers R. Every column vector in the g enerator matrix of a protection code defines the set o f operatio ns, in which every send er (receiver) needs to per form. 2 The new contributions in this p aper a re stated as fo llows: i) W e introduce lin k protection ne twork cod ing-based using reduced cap acity instead of adding extra p aths as shown in th e previous work [9], [10], [1 1]. ii) W e develop a theoretical fo undation o f protection codes, in wh ich the r eceiv ers are able to recover data sen t over t failed lin ks out of n p rimary links. This pap er is organized as follows. In Section II we b riefly state th e related work and p revious solu tions to the n etwork protection prob lem usin g network coding. In Section I II we present the network model and prob lem definition. Sections IV and V discuss sing le and m ultiple link failure s an d h ow to protect these link failures u sing r educed capacity an d n etwork coding. I n Section VI we g iv e analysis of the gen eral case o f t ≪ n link failures, and the pap er is co ncluded in Section VII. I I . R E L AT E D W O R K In [ 9], the autho r introd uced a 1+N pro tection mo del in optical mesh networks using network cod ing over p-cycles. The au thor suggested a mode l for protecting N connections from a set of sources to a set o f re ceiv ers in a network with n connectio ns, where on e conn ection m ight fail. The sugg ested model can p rotect against a single lin k failure in any arbitra ry path conne cting a sourc e an d d estination. In [10], the author extended the previous mod el to pro tect multiple link failures. It is shown that protecting again st m failures, at leas t m p -cycles ar e needed. An illustrati ve example in case of two link failures was giv en. The idea was to deriv e m linear ly independ ent equations to recover the data sent f rom m sources. In [11], the author exten ded the protection mod el in [9] and provided a GMPLS-based imp lementation of a link protection strategy that is a hybrid of 1 +N and 1:N. It is claimed that the hybrid 1+N link pr otection provides protection at higher layers and with a speed th at is co mparab le to the speed ach iev ed by the phy sical layer implemen tations. In add ition, it has less cost and much flexibility . Monitorin g network in formation flow u sing network codin g was in troduced in [ 7], [6]. In [5], it was sh own how to use network codin g technique s to impr ove network monito ring in overlay networks. Practical aspects of network coding has been shown in [3]. In this paper, we provide a new techn ique for pr otecting network failur es u sing p r otection co des and r educed capacity . This tec hnique can b e deployed at an overlay layer in optical mesh networks, in which detecting failure is an essential task. The benefits of the pr oposed appro ach are that: i) It allows receivers to re cover the lo st data without d ata reroutin g or data retra nsmission. ii) It has less computational com plexity and d oes no t require adding extra p aths or reserving backu p path s. iii) At any po int in time, all n con nection paths have f ull capacity excep t at one p ath in case of protecting against a single link failure and m < n paths in case of protecting against m link failures. W e will analyze the p roposed pr otection codes a nd er ror correcting c odes that are u sed for erasure channe ls. I I I . N E T W O R K M O D E L Let G = ( V , E ) be a grap h which r epresents an ab straction of a set o f connec tions. V is a set o f network nod es and E is a set of edg es. Let there b e n unicast c onnection s, an d let S ⊂ V be the set of sources { s 1 , ..., s n } and R ⊂ V \ S be the set of receiv er nodes { r 1 , ..., r n } of the n co nnection s in G . The case of S ∩ R 6 = φ can b e easily incor porated in our model. T wo nodes u and v in V \{ S ∪ R } are connected by an edge ( u, v ) in E if there is a direct co nnection between them. W e a ssume that the sou rces are inde penden t of e ach other, meaning they can only send messages and there is n o correlation between them. For simplicity , we will assume that a dir ect disjoint path exists b etween s i and r i , an d it is disjoin t from the path betwe en s j and r j , for j 6 = i . The gra ph G rep resents an ab straction of ou r network mod el N with the following assump tions. i) Let N be a network with a set of sources S = { s 1 , s 2 , . . . , s n } and a set of r eceiv ers R = { r 1 , r 2 , . . . , r n } , where S ∪ R ⊂ V . ii) Let L be a set of links L 1 , L 2 , . . . , L n such that ther e is a link L i if an d only if there is a conn ection path be tween the sender s i and receiver r i , i.e ., L i = { ( s i , w 1 i ) , ( w 1 i , w 2 i ) , . . . , ( w ( m ) i , r i ) } , (1) where 1 ≤ i ≤ n and ( w ( j − 1) i , w j i ) ∈ E , for some integer m. Hence we have | S | = | R | = | L | = n . The n connectio n paths are pair wise link disjoin t. iii) Every source s ℓ sends a packet with its own I D s ℓ and data x ℓ to the r eceiv er r ℓ , so pack et s ℓ = ( I D s ℓ , x ℓ , t δ ℓ ) , (2) where t δ ℓ is the round time at step δ of the so urce packet pack et s ℓ . iv) All links carry uni-directio nal m essages from so urces to receivers. v) W e consider the scenar io where the cost of adding a new path is high er than just c ombining messages in an existing p ath, or there is no t enough reso urces t o provision extra paths in the network . These two cases co rrespond to separate and joint capacity p rovisioning, respectively [19]. W e can define the un it cap acity c i of a link L i as follows. Definition 1: Let N b e a ne twork mo del defined by a tu ple ( S, R, L ) . The un it capacity o f a link L i is given by c i = 1 , L i is activ e; 0 , other wise . (3) Also, the av erage normalized capa city of N is defined b y the total n umber of acti ve links divided b y the total num ber of links n C N = 1 n n X i =1 c i . (4) 3 This means that each sour ce s i can send one packet per unit time o n a link L i . Assume that all links have the same capacity . I n fact, we m easure the capacity of N in the sense of th e m ax-flow min-cut theor em, see [13]. One ca n always assume that a sourc e with a large rate can be divided into a set of sour ces, each of which h as a u nit link capac ity . W e can also define the set o f sourc es that are connecte d to a source s i in N as th e d egree of this sou rce. Definition 2: The num ber of neig hbors with a direct con- nection to a node u (i.e. , a sour ce s i in S in the network N ) is called the node degr ee of u ∈ V , and is denoted b y d n ( u ) , i.e., 1 ≤ |N ( u ) | = d n ( u ) ≤ n. (5) The following definitio n describ es the working an d pr otec- tion paths betwe en two network compo nents. Definition 3: The working paths on a netw ork with n connectio n paths car ry tr affic und er n ormal operations. The Pr otection path s p rovide alternate backup paths to c arry the traffic in case of failures. A protec tion scheme ensures that data sent fr om the sour ces will reach the r eceivers in case of failure in cidences o n the working paths. In this work the goal is to provide a reliab le meth od for data protectio n sent ov er a link L i without adding extra paths to the existing on es, b ut by possibly reducing the source r ates slightly . In fact there are network scenarios whe re adding extra path is not applicable [16], [17], [19]. W e propose a model to protect link failures u sing n etwork codin g where some sender s are able to encod e oth er sender’ s packets. W e will study the network pr otection again st link failures at an overlay layer in two cases: Single link failures and mu ltiple lin k failur es. I V . P R OT E C T I N G N E T W O R K S A G A I N S T A S I N G L E L I N K F A I L U R E In this section we study the problem of pro tecting a set o f connectio ns against a sing le lin k failure in a network N with a set of sources S and a set of receivers R . This problem has b een stud ied in [9], [10] by provisioning a p ath that is link disjoint from all connection paths, and p asses throug h all sources and destina tions. All s ource packets are encoded in one single packet an d transmitted over th is path. Th e encod ing is dynamic in the sense that packets are added an d removed at each source and de stination. Assume that the assumption s about the pro posed network model N , and the abstraction g raph G presen ted in Section I II hold. W e know that if there is an a cti ve link L i between s i and r i , then the cap acity c i is the unit cap acity . Let us con sider the case wh ere ev ery source s i sends its own d ata x i and the encoded data y i . The enco ded me ssage y i is defined as y i = x 1 ⊕ . . . ⊕ x i 6 = j ⊕ . . . ⊕ x n (6) from all other sources S \ { s i } over the finite field F 2 = { 0 , 1 } , where the symbo l ⊕ is the XOR operation. Assume that among the set of links L , there is a link L i for 1 ≤ i ≤ n such that the sources s i sends a packet to th e receivers r i as follows pack et s i = ( I D s i , x i , t δ i ) . (7) Assume fo r now that link L j has the unit ca pacity . The source s j sends a p acket that will car ry the en coded d ata y j to th e receiver r j over the link L j , pack et s j = ( I D s j , y j , t δ j ) . (8) W e assume th at the summation o perations ar e performed over F 2 . Now we consider the case where there is a single failur e in a link L k . Theref ore, we have two cases: i) If k 6 = j , then th e rece i ver r k needs to q uery ( n − 1 ) nodes in orde r to r ecover th e lo st data x k over the failed link L k . x k can be recovered by adding all other n − 1 data units. ii) If the link L j has a failure, then the receiver r j does no t need to query any o ther nod e. In th is case the link L j carries encoded data that is u sed f or protectio n. This shows that only one single receiver need s to perfo rm ( n − 2) ope rations in or der to r ecover its data if its link fails. In other words, all other receivers will receive the transmitted data fro m the senders of their own co nnections with a constan t operation O (1) . A. Network Pr otection Code s (NPC) fo r a Single Link F ailure W e can de fine the set o f sources th at will send en coded packets by using co nstraint ma trices. W e assume th at th ere is a network protection code C ⊆ F n 2 defined by the constraint systematic matrix G = 1 0 . . . 0 1 0 1 . . . 0 1 . . . . . . . . . . . . . . . 0 0 . . . 1 1 ( n − 1) × n , (9) W ithout loss of generality , in Equa tion (9), the column vector ( g 1 j g 2 j . . . g ( n − 1) j ) T in F n − 1 2 correspo nds to (n-1) sour ces, say for examp le th e sour ces s 1 , s 2 , . . . , s n − 1 , that will send (up date) their v alues to (n-1) receivers, say i.e. , r 1 , r 2 , . . . , r n − 1 . Also, there exists one source that will send encoded data. Also, the row vector ( g i 1 g i 2 . . . g in ) in F n 2 determines th e ch annels L 1 , L 2 , . . . , L n . Th e colu mn vector g in correspo nds to the sour ce s i that will car ry enco ded data on th e connection p ath L i , see Fig. 1. The minimu m weight of a row in G is 2. W e can defin e the p r otection cod es that will protect a single path failure as follows: Definition 4: An [ n, n − 1 , 2] 2 network pr otection cod e C is a n − 1 dimension al subspace of the space F n 2 defined by th e systematic g enerator matrix G and is a ble to protect a single network failure of an arbitrary p ath L i . W e n ote that the pr otection cod es are also error cor recting codes th at can be used for channel detection . Recall that a n 4 s 1 s 2 s j s n r 1 r 2 r j r n X 1 X 2 S n-1 r n-1 x 1 +x 2 +…+x j-1 +x j+1 +…+x n X n X n-1 Fig. 1. Netw ork protecti on against a single l ink failure using reduce d capacity and netwo rk cod ing. One lin k out of n primary links carries encoded data . [ n, n − 1 , 2 ] code over F 2 is a c ode that en codes (n-1) symb ols into n symbols an d d etects ( correct f rom) a single path failure. In general, w e will assume that the code C defined by the systematic gen erator ma trix G is k nown for every source s i and every receiv er r i . This means that every receiv er will be able to recover the data x i if the link L i is corrupted . W e assume that the positions of th e failures ar e known. Furthermo re, e very source nod e has a copy of the code C . W ithout loss of generality , the protection matr ix among all sources is given by: L 1 L 2 · · · L n − 1 L n s 1 x 1 0 · · · 0 x 1 s 2 0 x 2 · · · 0 x 2 . . . . . . . . . · · · . . . . . . s n − 1 0 0 · · · x n − 1 x n − 1 total x 1 x 2 . . . x n y n (10) y n is the protectio n value from e very sou rce s ℓ that will be encoded at sou rce s n , for all 1 ≤ ℓ ≤ n − 1 . Pu t dif ferently , we have y n = n − 1 X ℓ =1 x ℓ (11) The summ ation operation is d efined by the XOR op eration. W e note that the any source s i can carry the enco ded d ata. Hence from the matr ix ( 10), we have y j = n X ℓ =1 ,ℓ 6 = j x ℓ (12) W e assum e that e very source s j has a buf fer that sto res its value x j and the protectio n value y j . Hence s j prepare s a packet p ack et s j that contains the values pack et s j = ( I D s j , y j , t δ ℓ ) , (13) where y j is defined in Equa tion (1 2). Example 5: Let S an d R be two sets of sen ders and receivers, resp ectiv ely , in the network model N . The following scheme explains the plain and enco ded data sent in fiv e consecutive round s f rom the fi ve senders to the fiv e receivers. cy cl e 1 2 3 rounds 1 2 3 4 5 . . . . . . s 1 → r 1 y 1 x 1 1 x 2 1 x 3 1 x 4 1 . . . . . . s 2 → r 2 x 1 2 y 2 x 2 2 x 3 2 x 4 2 . . . . . . s 3 → r 3 x 1 3 x 2 3 y 3 x 3 3 x 4 3 . . . . . . s 4 → r 4 x 1 4 x 2 4 x 3 4 y 4 x 4 4 . . . . . . s 5 → r 5 x 1 5 x 2 5 x 3 5 x 4 5 y 5 . . . . . . (14) The encode d data y j , f or 1 ≤ j ≤ 5 , is sent as y j = j − 1 X i =1 x j − 1 i + 5 X i = j + 1 x j i . (15) W e no tice that ev ery message h as its own round. Hence th e protection data is distributed among all path s fo r f airness, see [2] for fu rther d etails. W e n otice that it is enough to allow o nly on e source node to perform the encoding operations for protecting against a single p ath failur e. This fact can be stated in the following lemma. Lemma 6: Enco ding the d ata fro m sources S \{ s i } at a source s i in the network N is enou gh to protec t against a single path failure. Lemma 7: The total n umber of encoding operation s needed to rec over from a single lin k failure in a network N with n sourc es is given by ( n − 2) an d the total number of transmissions is n . The previous lemma guaran tees the r ecovery from a single arbitrary link failure. Th e reason is that the link tha t car ries encoded d ata might fail itself and on e ne eds to p rotect its data. Lemma 8: In th e network mod el N , the av erage ne twork capacity of protecting against a single link failure using reduced capacity and network cod ing is g i ven by ( n − 1 ) /n . Pr oof: (Sketch) i) W e k now that e very so urce s ℓ that sends the d ata x ℓ has capacity c ℓ = 1 . ii) Also, the source s i that sends x i and th e encod ed data y i at different slots, has a full capacity . iii) The source s i is no t fixed amo ng all nod es S , however , it is rotated period ically over all sources f or fairness. On average one sour ce of the n node s will reduce its capacity . This shows the capacity of N as stated. V . P R OT E C T I N G N E T W O R K S A G A I N S T M U LT I P L E L I N K F A I L U R E S In the pr evious section we intr oduced a strategy for a single link failure in optical mesh networks, where th e chance o f a single lin k failur e is much higher tha n m ultiple link failures. Howe ver , it was shown in [5] thr ough an experimental study that ab out %3 0 of the failures of the Sprint backbone network are multiple link failures. Hence, on e needs to design a gen eral strategy against multip le link failures. In this section we will gen eralize th e abov e strategy to protect a gainst t path failures using network pr otection codes 5 (NPC) and the reduced capacity . W e ha ve the f ollowing assumptions abou t the ch annel m odel: i) W e assum e that any t arbitrar y paths may fail and they are indepen dent of each othe r . ii) Location of the failures are known, but they are arbitrary among n connec tions. iii) Protectin g n workin g paths, k conn ection must carry p lain data, and m = n − k co nnections must carry encoded data. iv) W e d o not add extra link paths, and every source n ode is able to enco de the in coming p ackets. v) W e co nsider the encoding and decod ing operations are perfor med over F 2 . W e will sho w th e connection between err or correcting co des and protectio n cod es [8], [1 4]. W e h av e n workin g paths fro m the senders to receivers. W e will assume that a path L i can hav e a full c apacity or it can manage a b uffer that main tains the full capacity wher e the encoded data is sent. Assume that the no tations in the previous sectio ns hold. Let us assume a network model N with t > 1 path failures. One can define a p rotection code C which pro tects n link s as shown in th e sy stematic m atrix G in (16). In g eneral, the systematic generato r matr ix G defines the source nodes that will send encoded m essages and source nodes th at will send on ly plain messages. In order to p rotect n working paths, k connection must carry plain data, and m = n − k co nnections must carry encoded data . The systematic generator matrix o f the NPC fo r multiple link failures is given by: G = 1 0 . . . 0 0 1 . . . 0 . . . . . . . . . 0 0 . . . 1 p 11 p 12 . . . p 1 m p 21 p 22 . . . p 2 m . . . . . . . . . . . . p k 1 p k 2 . . . p km identity matrix I k × k | {z } Submatrix P k × m | {z } , (16) where p ij ∈ F 2 The matrix G can be rewritten as G = I k | P , (17) where P is the sub- matrix that defines the redund ant data P k i =1 p ij , for 1 ≤ j ≤ m , to be sent to a set o f sou rces for the purpo se of data protection ag ainst data lo ss and link protection against link failures. Based on the above m atrix, ev ery sour ce s i sends its own message x i to the receiver r i via the link L i . In ad dition m links o ut of th e n links will carry encoded d ata. d min is the minimum weig ht of a row in G . Definition 9: An [ n, k , d min ] 2 protection code C is a k dimensiona l subspace of the space F n 2 that is able to protect all network failur es up to d min − 1 . In general the network p r otection code (NPC), which pro- tects against mu ltiple p ath f ailures, can b e d efined b y a generato r matrix G k nown for ev ery send er and receiver . Also, there exists a par ity check matrix H corr esponds to G suc h that GH T = 0 . W e will restrict ourselves in th is work to NPC that are g enerated by a g iv en systematic gene rator matrix G over F 2 . W ithout loss of ge nerality , the p rotection matr ix a mong all sources is given by L 1 L 2 · · · L k L k +1 L k +2 . . . L n s 1 x 1 0 · · · 0 p 11 x 1 p 12 x 1 . . . p 1 m x 1 s 2 0 x 2 · · · 0 p 21 x 2 p 22 x 2 . . . p 2 m x 2 . . . . . . . . . · · · . . . . . . . . . . . . s k 0 0 · · · x k p k 1 x k p k 2 x k . . . p km x k x 1 x 2 . . . x k y k +1 y k +2 . . . y n (18) W e en sure that k = n − m paths h av e fu ll capa city an d they carry the plain data x 1 , x 2 , . . . , x k . Also, all other m paths hav e full cap acity , in wh ich they carry the encoded data y k +1 , y k +2 , . . . , y n . In additio n, th e m links are not fixed, an d they ar e ch osen alternatively between th e n links. Encoding Process. The network enco ding pr ocesses at the set of sen ders a re perfo rmed in a similar mann er as in Section I V. Every source s i has a copy of the systematic matrix G a nd it will prepar e a p acket along with its ID in two dif ferent cases. First, if the so urce s i will send only its own data x i with a full link capacity , then pack et s i = ( I D s i , x i , t δ i ) . (19) Second, if the source s j will send an encoded data in its packet, then pack et s j = ( I D s j , k X ℓ =1 ,ℓ 6 = j p ℓj x ℓ , t δ j ) , (20) where p ℓj ∈ F 2 . Recovery Process. The recovery p rocess is d one as follo ws. The p ack et s i arrives at a receiver r i in time slots, hen ce every packet from a source s i has a round time t δ i . In this case, time synchro nization is needed to guar antee the r eception o f the correct d ata. Th e receiver r i at time slot n will detect the signal in the link L i . If th e link L i failed, then r i will send a quer y to other receivers in R \{ r i } asking for their received data. Assume there are t path failures. Th en we have three cases: 1) All t lin k failures h av e oc curred in links th at do no t carry encoded packets, i.e., pac k et s i = ( I D s i , x i , t δ i ) . I n this case, o ne re ceiv er that carr ies an en coded packet, e.g., r j , can send n − t − 1 que ries to the other receiv ers with acti ve links asking for their rec eiv ed data. After this process, the receiver r j is able to d ecode all messages. 2) All t lin k failures have occurred in links that carry e n- coded packets, i.e ., pack e t s j = ( I D s j , P k ℓ =1 ,ℓ 6 = j x ℓ , t δ j ) . In this case no rec overy operations are needed. 6 3) All t link failures have occurred in arbitrary links. This case is a co mbination of th e pr evious two cases and the recover process is don e in a similar way . Only the lost data on the workin g paths need s to be recovered. Our f uture work will include pra ctical implem entation as- pects of the proposed model as shown in the case of adding extra paths [11]. Th e pro posed ne twork protection scheme using d istributed capacity an d cod ing is ab le to recover up to t ≤ d min − 1 link failures (as defined in Definition 9) am ong n paths and it ha s the following advantages: i) k = n − m links have full cap acity a nd th eir sen der n odes have the sam e transmission rate. ii) The m lin ks that c arry encod ed data are d ynamic (dis- tributed) am ong a ll n links. Theref ore, no sin gle link L i will suffer fro m red uced cap acity . iii) The encoding process is simp le once e very send er s i knows the NPC. He nce s i maintains a rou nd time t δ ℓ for each sent pack e t s i . iv) T he rec overy f rom link failure s is done in a dy namic and simple way at one receiver . V I . A NA LY S I S W e shall provide theoretical analysis regard ing t he pr oposed network protection co des. One can easily co mpute the number of p aths n eeded to carry encod ed messages to p rotect against t link failures, and will obtain the average network capacity . The main ide a behin d NPC is to simplify th e en coding opera tions at the sourc es and the d ecoding o perations at the receiv ers. The following lemma demonstrates th e average no rmalized capacity of the pro posed n etwork mod el N . Lemma 10: Let C be a protec tion co de with parameter s [ n, n − m, d min ] over F 2 . Assume n and m be the numb er of sources ( receivers) an d number of connection s carryin g encoded packets, respectively , the average capa city of the network N is given by ( n − m ) /n. (21) Pr oof: W e h av e m p rotection paths that carry encode d data. Hence th ere are n − m workin g path s that car ry plain data. The r esult is a direct con sequence by applying the normalize d capacity definition . Lemma 11: In the n etwork protection mo del N , in order to protect t n etwork disjoint link failures, the minim um distance of the pro tection code mu st be at least t + 1 . Pr oof: W e can assume that the ne twork link failures can occur at any ar bitrary p aths. The proo f comes from the fact that the pro tection co de c an detect t failures. The pr evious lemma ensures that the maximum numb er of failures tha t can be recovered by C is d min − 1 . For examp le one can u se th e Hamming code s with pa- rameters [2 µ , 2 µ − µ − 1 , 3] 2 , for som e p ositi ve integer µ , to recover from two failures, see [8], [14] for notatio n. On e can also puncture these co des to reach the required len gth, i.e., number o f conn ections. [7 , 4 , 3] 2 , [15 , 1 1 , 3] 2 , an d [63 , 57 , 3 ] 2 are examples of Ham ming codes that p rotect against two link failures. Ano ther example is the BCH codes with arbitra ry design distance. [15 , 11 , 3] 2 , [31 , 26 , 3] 2 and [63 , 56 , 3 ] 2 are examples o f BCH co des that pro tect on e an d two link failur es. Also, [15 , 8 , 5] 2 , [31 , 21 , 5] 2 and [4 8 , 36 , 5 ] 2 are examp les of BCH codes that pro tect ag ainst f our lin k failur es [8 ], [14]. V I I . C O N C L U S I O N W e studied a m odel fo r r ecovering from network link fail- ures u sing network cod ing and reduced capacity . W e defined the co ncept of n etwork pr otection cod es to pr otect against arbitrary t link failures. W e sh owed that the encodin g and decodin g proc esses of the pro posed scheme are simple and can b e d one in a dynamic way at a ny arbitra ry send ers and receivers in an overlay layer on op tical mesh networks. Our future work will include ta bles of best kn own protection cod es and a c omparison between pr otection against link failures using reduc ed capac ity and using extra path s. R E F E R E N C E S [1] R. Ahlswede, N. C ai, S.-Y . R. Li, a nd R. W . Y eung. Network informati on flo w . IEEE T rans. Inform. Theory , 46: 1204–1216, 2000. [2] S. A. Aly and A. E. Kamal. Netw ork coding-based protect ion strategie s against a single link fai lure in optical networks. In Proc . IEEE Inter - national Confere nce on Computer Engineering & Systems (ICCES’08), Cair o, EG , N ov ember 25-27, 2008. arXi v:0810.405 9 v1 [cs.IT]. [3] P . A. Chou, Y . Wu, and K. Jain. Pract ical network coding. 41st Allerton Conf . Comm., Ctrl . and Comp. , Monticell o, IL, Oct. 2003. [4] C. Fragouli, J. L e Boudec, and J. Wid mer . Network coding: An instant primer . ACM SIGCOMM Compute r Communi cation Revie w , 36(1): 63– 68, 2006. [5] C. Fragouli and A. Markopoulou. A netwo rk coding approach to overlay netw ork monitoring . In 44th A nnual Allerton Confer ence on Communi- cation, Contr ol, and Comput ing , Monticello, Illi nois, September 2005. [6] T . Ho, R. Koe tter , M. Medard, D. K arge r , and M. Effros. The benefits of coding ov er routing in a randomized setting. In P r oc. of the IEEE Internati onal Symposium on Information Theory (ISIT03) , page 442, Y okoha ma, Japan, June 2003. [7] T . Ho, B. Leong, Y . Chang , Y . W en, and R. Koet ter . Network monitoring in multi cast networks using network coding. In Proc . of International Symposium on Information Theory (ISIT05) , 2005. [8] W . C. Huffma n and V . Pless. Fundamentals of Error -Corr ectin g Codes . Cambridge Unive rsity Press, Cambridge, 2003. [9] A. E . Kamal. 1+N prot ection in opt ical mesh networks using network coding on p-cycle s. In Proc. of the IEEE Globecom , 2006. [10] A. E. Kamal. 1+N protecti on against mult iple f aults in mesh netw orks. In Pr oc. of the IEE E Internatio nal Conf ere nce on Communicati ons (ICC) , 2007. [11] A. E. Kamal. Gmpls-based hybrid 1+N link protection ov er p -cycle s: Design and per formance. In Proc . of IEEE Globecom , 2007. [12] A. E. Kamal. A genera lized strategy for 1+N protec tion. In Proc . of the IE EE International Conf ere nce on Communications (ICC) , 2008. [13] D. R. Karger . Random sampling in cut, flo w and netw ork design problems. Math. of Oper . Res. , 24(2):0383 0413, 1999. [14] F .J. MacW illia ms and N. J.A. Sloane. The Theory of Er r or-Co rrec ting Codes . Am sterdam: North-Holla nd, 1977. [15] E. Soljanin and C. Frago uli. Network codingin formation flo w perspec- ti ve. 2007. [16] A. K. Somani. Survivabilit y and traf fic gr ooming in Optical Networks . Cambridge Press, 2006. [17] J. V asseur , M. Pi ckav et, and P . Demee ster . Network Recovery : Pro tectio n and Restora tion of Optica l, SONET -SDH, IP , and MPLS . Morgan Kaufmann Publishers Inc. San Francisco, CA, 2004. [18] R. W . Y eung, S.-Y . R. Li, N. Cai , and Z. Zhang. Network Coding Theory . No w Publishers Inc., 2006. [19] D. Z hou and S. Subra maniam. Survi v abili ty in optical networks. IEEE network , 14:16–23, Nov ./De c. 2000.
Original Paper
Loading high-quality paper...
Comments & Academic Discussion
Loading comments...
Leave a Comment