The Evolution of Layered Protocol Stacks Leads to an Hourglass-Shaped Architecture Saamer Akhshabi Constantine Dovrolis Georgia Institute of Technology 1
My co-author, Saamer Akhshabi (Very smart 2 nd year PhD student, he could not travel to Toronto) 2
Outline Motivation Model description Results Concluding remarks 3
Why did we write this paper? Ethernet Twisted Pair SMTPHTTP Thunder bird Silver light Firefox PPP Coaxial Cable IPv4 UDPTCP RTP Optical Fiber MPlayer … … … … 4
Why is the Internet protocol stack an hourglass? Ethernet Twisted Pair SMTPHTTP Thunder bird Silver light Firefox PPP Coaxial Cable IPv4 UDPTCP RTP Optical Fiber MPlayer … … … … 5
What happens at the “waist” compared to other layers? Ethernet Twisted Pair SMTPHTTP Thunder bird Silver light Firefox PPP Coaxial Cable IPv4 UDPTCP RTP Optical Fiber MPlayer … … … … 6
How can a new protocol survive at the waist? X.25 SNA Ethernet Twisted Pair SMTPHTTP Thunder bird Silver light Firefox PPP Coaxial Cable IPv4 UDPTCP RTP Optical Fiber MPlayer … … … … ATMIPv6 7
What about “Future Internet” those architectures? Will these architectures also evolve to an hourglass in few years? How to make them more “evolvable”? – So that they can better accommodate innovation? – So that no single protocol at the waist “kills” all competitors NDN XIA Mpb ility First Neb ula 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 Protocols as nodes Protocol dependencies as edges Products: P(u) Substrates:S(u) Layer of u: l(u) Layered acyclic network u Every layer provides a service L 1 …
The value of a protocol The value of a protocol depends on the value of its products Protocols with valuable products are more valuable
The generality of a layer Ethernet Twisted Pair SMTP HTTP Thunder bird Silverlight Firefox PPP Coaxial Cable IPv4 UDPTCP RTP Optical Fiber MPlayer 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 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(1) = 0.9 s(3) = 0.5 s(L-1) =
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 TCP does not compete with UDP because they have minimal service overlap TCPUDP HTTPFTP 15
Modeling competition If c = 3/5 u competes with q and w q does not compete with w quw Let C(u) be set of competitors of u Node w competes with u if c: competition threshold 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 Competition from HTTP has led to FTP’s demise HTTPFTP 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) 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 The network forms an hourglass structure over time The waist usually occurs at layer 5 or 6. L = 10 c = 3/5 z = 1 s(l) = 1-l/L 23
Hourglass Resemblance Metric 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) Width Layer number w(1) w(2) … w(b) w(b+1) … W(L) 24
Robustness High hourglass scores under a wide range of parameters 25
Why does EvoArch generate hourglass-shaped networks? Small generality Low competition (local) Low death probability Large generality Frequent competition Protocols have similar substrates & values Low death probability Generality close to 50% Few protocols with many products Most other protocols die 26
How can we get a wider waist? As γ increases – Location of the waist moves to higher layers – Width of waist increases 27 γ is the layer at which the generality is 50% Layer numberγ 0.5 s(l)
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? 30 It becomes practically impossible to replace kernels
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 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,
From Networking to Network Science Hourglass effect in development of embryos Hourglass effect in organization structures Hourglass effect in innate immune system 37
38 Thanks to Todd Streelman (School of Biology, Georgia Tech) Soojin Yi (School of Biology, Georgia Tech) National Science Foundation (NSF)