slides - Sigcomm

advertisement
The Evolution of Layered Protocol Stacks
Leads to
an Hourglass-Shaped Architecture
Saamer Akhshabi
Constantine Dovrolis
Georgia Institute of Technology
s.akhshabi,constantine@gatech.edu
1
My co-author, Saamer Akhshabi
(2nd year PhD student,
he could not travel to Toronto)
2
Outline
•
•
•
•
Motivation
Model description
Results
Concluding remarks
3
Where does this work come from?
Silver
light
Firefox
HTTP
Thunder
bird
SMTP
TCP
…
MPlayer
…
RTP
UDP
IPv4
PPP
Optical
Fiber
…
Ethernet
Twisted
Pair
Coaxial
Cable
…
4
Why is it an hourglass?
Silver
light
Firefox
HTTP
Thunder
bird
SMTP
TCP
…
MPlayer
…
RTP
UDP
IPv4
PPP
Optical
Fiber
…
Ethernet
Twisted
Pair
Coaxial
Cable
…
5
What happens at the “waist”
compared to other layers?
Silver
light
Firefox
HTTP
Thunder
bird
SMTP
TCP
…
MPlayer
…
RTP
UDP
IPv4
PPP
Optical
Fiber
…
Ethernet
Twisted
Pair
Coaxial
Cable
…
6
How can a new protocol
survive at the waist?
Silver
light
Firefox
HTTP
Thunder
bird
SMTP
TCP
…
RTP
UDP
ATM
IPv4
PPP
Optical
Fiber
…
MPlayer
X.25
IPv6
…
Ethernet
Twisted
Pair
SNA
Coaxial
Cable
…
7
What about “Future Internet”
those architectures?
• Will these architectures
also evolve to an
hourglass in few years?
• How to make them more
“evolvable”?
NDN
XIA
Mpb
ilityF
irst
Neb
ula
– So that they can better
accommodate innovation?
– So that no single protocol
at the waist “kills” all
competitors
8
Outline
•
•
•
•
Motivation
Model: EvoArch
Results
Conclusions
9
Two Disclaimers
• EvoArch is only an abstraction of protocol
stacks
– EvoArch does not capture many practical aspects and
protocol-specific or layer-specific semantics
• EvoArch is certainly not the only model, or “the
correct model”, for the emergence of
hourglass-shaped network architectures
– Models should be judged based on their assumptions,
parsimony and predictions
10
Model description
L
Protocol
dependencies
as edges
…
4
3
Protocols
as nodes
2
Products: P(u)
u
Layer of u: l(u)
Substrates:S(u)
1
Layered acyclic network
Every layer provides a service
11
The value of a protocol
• The value of a protocol depends on the value
of its products
• Protocols with valuable products are more
valuable
– example TCP, HTTP
1
1
1
1
1
1
1
3
2
5
5
1
12
The generality of a layer
As we go higher in the
stack:
• Protocols become less
general – they offer
more specialized
services
• The probability that a
protocol is used by
next-layer’s protocols
decreases
Firefox
Silverlight
HTTP
Thunder
bird
RTP
SMTP
TCP
MPlayer
UDP
IPv4
PPP
Optical
Fiber
Ethernet
Twisted
Pair
Coaxial
Cable
13
Generality as a probability
• We introduce a
parameter called
generality vector s
• s(l) : probability that
new node at layer l+1
chooses each node at
layer l as substrate
• s(l) decreases as we
go higher in protocol
stack
s(L-1) = 0.1
s(3) = 0.5
s(1) = 0.9
14
Competition between protocols
• Two protocols at the same layer compete if
they offer similar services
– i.e., if they have large overlap in their products
• HTTP competes with FTP due to several
overlapping products
HTTP
FTP
• TCP does not compete with UDP because they
have minimal service overlap
TCP
UDP
15
Modeling competition
• Let C(u) be set of competitors of u
• Node w competes with u if
• c: competition threshold
• If c = 3/5
• u competes with
q and w
• q does not
compete with w
q
u
w
16
When does a protocol “die”?
• Protocols can become extinct due to
competition with other protocols
• For example, HTTP services cover the set of
services provided by FTP
HTTP
FTP
• Competition from HTTP has led to FTP’s
demise
17
Modeling protocol deaths
• A node u dies if its value is significantly less than the value of
its strongest (i.e., maximum value) competitor.
• z: mortality parameter
18
Cascade deaths
• u is w’s competitor
• Suppose that w dies due to competition with u
(r=3/7)
1
1
2
1
1
1
1
4
1
2
7
1
1
3
1
2
If a node w dies,
its products also
die if their only
substrate is w.
This can lead to
cascade deaths.
19
Protocol births
• Basic birth process
Number of new nodes at given time is a
small fraction of total number of nodes in
network at that time.
New nodes assigned randomly to layers
• Death-regulated birth process
The birth rate at a layer is regulated by
the death rate in that layer
Discussed later
20
Summary of EvoArch
• Discrete-time model
– Time advances in rounds
• Each round includes
birth of new nodes
competition among nodes at the same layer
potentially, death of some nodes
• Key parameters
– Generality vector s
– Competition threshold c
– Mortality parameter z
21
Outline
• Motivation
• Model Description
• Results
– Emergence of hourglass structures
– Controlling the location/width of the
waist
– Evolutionary kernels
– Protocol differences
• Conclusions
22
Hourglass shape
L = 10
c = 3/5
z=1
s(l) = 1-l/L
• The network forms an hourglass structure over time
• The waist usually occurs at layer 5 or 6.
23
 w(l) : width of layer l
 Minimum occurs at layer b
 X = {w(l), l = 1, . . . b}
 Y = {w(l), l = b, . . .L}
 Mann-Kendall statistic for
monotonic trend on the
sequences X and Y:
coefficients τX and τY
 H = (τY – τX)/2
• H=1 when widths first
decrease and then
increase (monotonically)
W(L)
…
w(b+1)
w(b)
…
w(1)
Layer number
Hourglass Resemblance Metric
w(2)
Width
24
Robustness
• High hourglass scores under a wide range of
parameters
25
Why does EvoArch generate
hourglass-shaped networks?
Small generality
Low competition (local)
Few deaths
Generality close to 50%
Few protocols with many products
Most other protocols die
Large generality
High competition
Protocols have similar products
-similar values
Few deaths
26
How can we get a wider waist?
• γ is the layer
at which the
generality is
50%
s(l)
• As γ increases
0.5
γ
Layer number
– Location of the waist
moves to higher layers
– Width of waist increases
27
Evolutionary kernels
28
How can a kernel die?
• Normalized value of a node: value divided by maximum
possible value at that round
• If several nodes appear at the next higher layer, and
kernel fails to quickly acquire those new possible products,
someone else may do so..
29
Death-regulated birth process?
• What if the birth probability in a layer is regulated
by the death probability in that layer?
• It becomes practically impossible to replace kernels
30
What if protocols differ
in term of a “quality factor”?
• The “quality factor” can be interpreted broadly





Performance,
Extent of deployment,
Reliability or security,
Incremental improvements,
etc
31
Effects of quality factor
• We still get an hourglass
• Slower network growth
• Lower part of hourglass is smaller in size
– only high quality nodes survive at the lower part
• Kernels are often NOT the highest quality protocols
32
Outline
•
•
•
•
Motivation
Model Description
Results
Concluding remarks
33
What does this mean for the
Internet architecture?
• New way to think about (and teach) Internet’s
hourglass architecture
• New way to think about “ossification” of
protocols at the waist
• Parameterized model for TCP/IP stack:
– Two protocols compete when their service overlap
is more than 70%
– A protocol survives only if its value is more than
90% of its strongest competitor’s value
– Death-regulated births
34
What does this mean for
IPv4 vs IPv6?
• IPv6 has same products but lower extent of
deployment (i.e., lower “quality factor”)
• IPv6 would find it easier to compete w IPv4
if:
– It had some distinct products that IPv4 does not
have
– Unfortunately, it only offers more addresses
• IPv6 would face easier adoption if it was not
presented as “IPv4 replacement” but as “the
second network-layer protocol”
35
What does this mean for future
Internet architectures?
• Hourglass structures should be expected if
these new architectures evolve/compete
• Designers should strive for wider waist
– More diverse waist -> more evolvable architecture
• EvoArch: as the waist moves higher, it also
becomes wider
– How to push the waist to a higher layer?
– See highly relevant paper:
• L. Popa, A. Ghodsi, and I. Stoica. HTTP as the Narrow
Waist of the Future Internet. In ACM SIGCOMM
HotNets, 2010
36
From Networking
to Network Science
• Hourglass effect in development of embryos
• Hourglass effect in organization structures
• Hourglass effect in innate immune system
37
Download