230 likes | 376 Views
Efficient Network Coded Data Transmission in DTN. - Paper By Yunfeng Lin, Baochun Li, Ben Liang. Outline. Motivation Constraints in DTN Network coding Vs Replication Binary Spraying Vs Epidemic routing Protocol Principle Assumptions Description Example Performance
E N D
Efficient Network Coded Data Transmission in DTN - Paper By Yunfeng Lin, Baochun Li, Ben Liang
Outline • Motivation • Constraints in DTN • Network coding Vs Replication • Binary Spraying Vs Epidemic routing • Protocol • Principle • Assumptions • Description • Example • Performance • Average transmission / relay • Transmission delay • Relay buffer size • Optimal Maximal Spray count Vs Identical Maximal spray count
Motivation – Constraints in DTN • Opportunistic connections between nodes • Nodes have limited transmission capabilities • Buffer space limitations • Battery power limited • Nodes might be mobile • Delay in packet delivery will be large • Node density is sparse
Motivation – NC Vs Replication Replication – Transmitting copies of a packet. Network coding – combining packets and transmitting the resultant packet Example: K = 3, K – Number of source packets, namely, A, B and C. Number of encoded packets, K’ = 3 Buffer Space of each relay, BS = 2 Number of nodes = 4, which includes one source, one destination. Number of relays is two.
Motivation – Replication Example R1 A A DESTINATION B B C A B R2
Motivation – Replication Example R1 A A C Replaces B B C A Here also C replaces B R2 DESTINATION ONLY A AND C ARE RETRIEVED. FOR, B MORE DELAY IS INCURRED
R1 A + B + C A + B + C DESTINATION A + 2B + 3C A + 2B + 3C 2A + 2B + C A + B + C A + 2B + 3C R2 Motivation – NC Example
R1 3A +3B +2C, x = 1 A + B + C 3A + 4B + 4C, x = 1 A + 2B + 3C 2A + 2B + C 5A + 5B + 3C, x = 2 5A + 6B + 5C, x = 2 R2 DESTINATION ANY THREE PACKETS CAN HELP RETRIEVE A, B AND C Motivation – NC Example
R1, L = 1 R3 S, K = 2, L = 2 D R2, L = 1 R4 R5 R3 R1 S, K = 2 D R2 R4 Motivation – Binary Spraying Vs ER Epidemic routing Binary spraying
ER NCER Binary Spraying E-NCR Protocol - Principle • This protocol called the E-NCR, is a combination of Network coding and Binary spraying. NCER – Network Coding based Epidemic routing ER – Epidemic Routing E-NCR - Efficient Network coding based routing
Protocol - Assumptions There is once source with ‘K’ packets to be transmitted, ‘n’ relay nodes and a destination For every opportunistic contact, only one packet can be transmitted. The source ‘S’ and the Destination ‘D’ have enough buffer space to hold all ‘K’ packets. But relay nodes have buffer space B, defined as 1 <= B <= K While a packet transmission is made, no other back-ground traffic exists. A packet in the buffer in an node is purged as soon as a ACK is received from ‘D’ or Time-to-live field is zero.
Protocol - Description SOURCE-RELAY: K' = K + some more encoded packets L = c * log k, where c is some constant i = 0; S = K'; do { if(detect any node and <i,l> not already there with that node) { send an encoded packet <i, L, co-efficients, packet> i++; } }while(S != i);
Protocol - Description RELAY-RELAY, SENDER SIDE: do { if(detect any node X) { get spray list of X; //list element is a tuple <i, l>,where i is index of packet, ‘l’ is the //remaining spray count do { compare this->spraylist with x->spraylist; if(any this->spraylist-><i, l> such that l >=0 and i does not exist in x->spraylist) { send encoded packet <i, floor(l/2)> to node x; update tuple <i, l> to <i, ceil(l/2)>; } }while(end of x->spraylist); } }while(true);
Protocol - Description RELAY-RELAY, RECEIVER SIDE: if(packet received) { if(buffer size == max_buffer_size) { encode incoming packet with all packets in list; } else { place packet in free slot; } add <i,l> of incoming packet to spray list; } DESTINATION: do { if(got a packet) { add to packet list try to decode list of packets; if(decode possible) { exit loop; } } }while(true);
Protocol - Example • In the following example, • There are 7 nodes. One Source, One destination and 5 relays • The buffer space is 1 for the relay nodes and 3 for the source and destination • Number of packets to be transmitted from source is k = 3 • L, the maximal spray count is set to log2(k) which is approximately 2 and the threshold is T = 1. • In the first level, l, the spray count reduces to L/2 which is 1. Since, this is the threshold, all future transmissions are one per packet.
E1, L = 2 E1 + (X) E2 L = 1 E1 + (X) E2 E3 + (Y) E1 E2, L = 2 E1 E3 + (Z) E2 E2 E3 E3, L = 2 E3 + (Y) E1 L = 1 E1, E2, E3 Protocol - Example
Some Limitations • Destination has to wait till minimum of ‘K’ encoded packets have to be received • Some packets which have linear dependence could arise during encoding at relays.
Acknowledgements • My Audience for your comments, time and patience. • Prof. Chan Mun Choon • Dr. A. V. Babu • Manjunath • Chen Bin Bin • The Authors of the paper