David D. Clark
Total Page:16
File Type:pdf, Size:1020Kb
Designs for an Internet David D. Clark Dra Version 3.0 of Jan 1, 2017 David D. Clark Designs for an Internet Status is version of the book is a pre-release intended to get feedback and comments from members of the network research community and other interested readers. Readers should assume that the book will receive substantial revision. e chapters on economics, management and meeting the needs of society are preliminary, and comments are particularly solicited on these chapters. Suggestions as to how to improve the descriptions of the various architectures I have discussed are particularly solicited, as are suggestions about additional citations to relevant material. For those with a technical background, note that the appendix contains a further review of relevant architectural work, beyond what is in Chapter 5. I am particularly interesting in learning which parts of the book non-technical readers nd hard to follow. Revision history Version 1.1 rst pre-release May 9 2016. Version 2.0 October 2016. Addition of appendix with further review of related work. Addition of a ”Chapter zero”, which provides an introduction to the Internet for non-technical readers. Substantial revision to several chapters. Version 3.0 Jan 2017 Addition of discussion of Active Nets Still missing–discussion of SDN in management chapter. ii 178 David D. Clark Designs for an Internet A note on the cover e picture I used on the cover is not strictly “architecture”. It is a picture of the Memorial to the Mur- dered Jews of Europe, in Berlin, which I photographed in 2006. When I saw it, I was quite struck by the apparently endless variation on a common theme represented by the blocks. According to Wikipedia (see hps://en.wikipedia.org/wiki/Memorial to the Murdered Jews of Europe), the artist said that the stelae are de- signed to produce an uneasy, confusing atmosphere. Perhaps, but I actually found wandering among all the small variations on an endless theme somewhat tranquil. As I thought about all the alternative proposals I have seen for an Internet architecture, the picture grew on me. It is possible that I should not entangle respect for the victims of the Holocaust with my musings on architectural diversity, but I found this installation wonderful, and all the lile variations, all requesting our aention, seem quite symbolic of what we in the research community sometimes nd ourselves doing. iii 178 Contents Contents iv Preface vii 0 A primer on the Internet 1 0.1 Introduction . 1 0.2 e basic communication model of the Internet . 2 0.3 e role of the router . 2 0.4 Application support services in the end-node . 3 0.5 Routing and forwarding . 4 0.6 e Domain Name System . 5 0.7 e design of applications . 5 0.8 Onward . 6 1 Introduction 7 1.1 What is “architecture” . 7 1.2 e role of interfaces . 10 1.3 Summary–inking about architecture . 10 2 Requirements 12 2.1 Fitness for purpose–What is a network for? . 12 2.2 Generality . 14 2.3 Longevity . 15 2.4 Security . 16 2.5 Availability and resilience . 16 2.6 Management . 16 2.7 Economic viability . 16 2.8 Meeting needs of society . 16 2.9 Moving beyond requirements . 17 3 e architecture of the Internet–A historical perspective 19 3.1 e relation of architecture to function . 37 4 Architecture and function 39 4.1 Introduction . 39 4.2 Per-hop behaviors . 40 4.3 Tussle . 40 4.4 Reasoning about expressive power . 41 iv 178 David D. Clark Designs for an Internet 4.5 Pruning the space of options . 43 4.6 Tussle and regions . 44 4.7 Generality . 45 4.8 Architectural alternatives for expressive power . 46 4.9 PHBs and control of network resources . 49 4.10 Expressive power and evolvability . 50 4.11 What is new . 51 5 Alternative network architectures 53 5.1 Introduction . 53 5.2 Dierent requirements–dierent approaches . 54 5.3 Active Networks and virtualization . 66 5.4 e Future Internet Architecture project . 69 5.5 Dierent requirements–similar mechanisms . 74 6 Longevity 80 6.1 Introduction–the goal of longevity . 80 6.2 Classes of theories . 80 6.3 Architecture and longevity . 81 6.4 e theory of utility . 81 6.5 e theory of tussle and points of control . 82 6.6 e theory of building blocks and composable elements. 84 6.7 e theory of the stable platform . 85 6.8 e theory of semantics-free service . 85 6.9 e theories of global agreement . 86 6.10 e theory of technology independence . 86 6.11 e theory of the hourglass . 87 6.12 e theory of cross-layer optimization . 87 6.13 e theory of downloadable code . 87 6.14 Change: hard or easy? . 88 6.15 e theory of hegemony . 88 6.16 e present Internet . 89 6.17 e future . 90 7 Security 91 7.1 Introduction . 91 7.2 Dening security . 91 7.3 A historical perspective . 93 7.4 Aack and defense of the network itself . 94 7.5 Aacks on network communication . 98 7.6 Aacks on the aached hosts . 99 7.7 Denial of Service aacks . 102 7.8 Balancing the aspects of security . 103 7.9 e role of architecture . 104 7.10 Conclusions . 111 7.11 Acknowledgement . 112 8 Availability 113 v 178 David D. Clark Designs for an Internet 8.1 Characterizing availability . 113 8.2 A theory of availability . 113 8.3 Availability and security . 116 8.4 Architecture . ..