1 Network Coding and its Applications in Communication Networks Alex Sprintson Computer Engineering...
-
Upload
asher-spencer -
Category
Documents
-
view
218 -
download
2
Transcript of 1 Network Coding and its Applications in Communication Networks Alex Sprintson Computer Engineering...
1
Network Coding and its Applications in Communication
Networks
Alex Sprintson
Computer Engineering GroupDepartment of Electrical and
Computer EngineeringTexas A&M University
2
Information
Course webpage http://cegroup.ece.tamu.edu/spalex/netco
d Office Hours
TBA, WERC 333D Or by appointment [email protected]
Will use neo email
4
Network coding New research area (Ahlswede et. al. 2000) Benefits many areas
Networking, Communication, Distributed computing
Uses tools from Information Theory, Algebra, Combinatorics
Has a potential for improving: throughput, robustness, reliability and security
of networking and distributed systems.
5
Communication Networks
Directed graph G=(V,E).
Source nodes S. Terminal nodes T. Requirement:
deliver data from S to T.
t1
t2t3
t4
s1
s2s3
s4
G=(V,E)
7
Standard approach
Each node forwards and possibly duplicates messages Paths for unicast Trees for
multicast
t1
t2t3
t4
s1
s2
8
Standard approach
Steiner Tree Given a set T of
points (terminals), interconnect them by a tree of shortest length.
s
t1
t2
t3
t4
Steiner nodes
9
Standard tree packing
Steiner Tree Packing Given a source node
s and a set T of terminals, interconnect them by a tree of shortest length.
s
t1
t2
t3
t4
10
Network coding
Introduce nodes that do more than forwarding + duplication.
Each outgoing packets is a function of incoming packets.
m1
m2
m3
F1(m1,m2,m3)
F2(m1,m2,m3)
encoding
12
Traditional Approach
Steiner Tree Packing
Integer reservation -1 message per time unit
Fractional/time sharing solution1.5 messages per time unit
t1 t2
s
50% utilization
t1 t2
s
0% utilization
13
Network coding helps!
One message per time unit
1.5 messages per time unit
t1 t2
s
50% utilization
t1 t2
s
0% utilization
s
t1 t2
100% utilization
m1 m2
m1m2m1Åm2
2 messages per time unit
14
Delay Minimization
Jain and Chou (2004)
t1 t3
t2
a
a
a
b
b
b
s
Delay =3 Delay =2
t1 t3
t2
a
aÅb
b
b
a
s
aÅb
15
Energy Minimization
Wu et al. (2003); Wu, Chou, Kung (2004)Lun, Médard, Ho, Koetter (2004)
s1 s2
a bs1 s2
b a
Without network coding - 4 messages
s1 s2
a bs1 s2
aÅbaÅb
With network coding - 3 messages
16
Cost minimization
Cost without network coding 4with network coding 3 - 33%
reduction
t1 t2
s
0 0
00
1 1
0 0
1
Edge Costs
t1 t2
s
0 0
00
1 1
0 0
1
a
aa
b
bb
a,b
a,ba,b
a,b
aÅb
17
Research Issues
How useful is network coding? Multicast Practical Implementation Beyond Multicast Networks with cycles
What operations should be performed at each node?
Linear vs. non-linear operations The minimum size of a packet
Under what conditions is a given network coding problem solvable
How to find suitable edge functions? How many encoding nodes are needed?
18
Syllabus
In this class: Overview of the main results Overview of the current research Applications in communication networks Directions for future research
19
Syllabus
Introduction Introduction to network coding Introduction to network algorithms Benefits and coding advantage Diversity coding Linear Network coding
20
Course Outline
Network optimization and Linear Programming (LP) Basics of LP LP duality Primal-dual algorithms Approximation of NP-hard problem The probabilistic method
21
Course Outline
Network flows and disjoint path algorithms (3)
Theory of network flows Disjoint paths algorithms Increasing network connectivity Network reliability
22
Course Outline
Network coding (12) Algebraic framework Polynomial – time algorithms for network code desing Randomized algorithms Distributed network coding Information-flow decomposition Network coding for cyclic networks Encoding complexity Practical network coding
23
Course Outline
Design of robust communication networks
Bandwidth allocation Network coding-based methods Connection to convolution codes Knots and special cases Information-Theoretic approach for
network management
24
Course Outline
Network Error Correction (4) Robust networks Correcting adversarial errors Secure network coding
26
Course Outline
Coding for non-multicast networks Insufficiency of linear network codes Non-linear network codes
27
Course Outline
Network coding applications Applications in distributed computing Applications in sensor networks Network planning in wireless and ad-hoc
networks Applications for network storage
28
Course Outline
Web models and information retrieval algorithms Modeling the web Taxonomy of information retrieval models Retrieval evaluation
29
Course Outline
Textbook: No textbook will be used. Notes and research papers will be
available on the course website. A good reference site:
www.networkcoding.info
31
Network Capacity
In general: the maximum number of packets that can be sent throughout the network. For a given list of
source-destination pairs
Each link has a limited capacity
s1
t1
s2
t2
32
Network Capacity
Multicast connections: The maximum number
of packets that can be sent from s to T.
Each link has a limited capacity
s1
t1
t3
t2
34
Cut
Definition: A cut (V1,V2) is a partition of the nodes of the graph into two subsets V1 and V2=V\V1
Size of the cut: The total capacity of links between nodes in V1 and V2.
G V1
V2
s
c
36
Flow interpretation
Menger’s theorem: The minimum size of a cut between
s and t is h There are h disjoint paths between s and each t
A special case of min-cut – max-flow theorem
38
Upper bound
Let h be the size of the min-cut between s and a terminal tT
We cannot send more than h packets to this terminal
s1
t1
t3
t2
39
Challenge
Let h be the size of the min-cut between s and a terminal tT
Can send h packets to each terminal tT separatly e.g., by using h disjoint paths
Problem: How to send them to all terminals
simultaneously ? Solution:
Network coding