Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Internet Computing
Ali Sunyaev
Internet ComputingPrinciples of Distributed Systems andEmerging Internet-Based Technologies
Ali SunyaevInstitute of Applied Informaticsand Formal Description MethodsKarlsruhe Institute of TechnologyKarlsruhe, Germany
ISBN 978-3-030-34956-1 ISBN 978-3-030-34957-8 (eBook)https://doi.org/10.1007/978-3-030-34957-8
© Springer Nature Switzerland AG 2020This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of thematerial is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,broadcasting, reproduction on microfilms or in any other physical way, and transmission or informationstorage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodologynow known or hereafter developed.The use of general descriptive names, registered names, trademarks, service marks, etc. in this publicationdoes not imply, even in the absence of a specific statement, that such names are exempt from the relevantprotective laws and regulations and therefore free for general use.The publisher, the authors and the editors are safe to assume that the advice and information in thisbook are believed to be true and accurate at the date of publication. Neither the publisher nor the authors orthe editors give a warranty, expressed or implied, with respect to the material contained herein or for anyerrors or omissions that may have been made. The publisher remains neutral with regard to jurisdictionalclaims in published maps and institutional affiliations.
This Springer imprint is published by the registered company Springer Nature Switzerland AG.The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Preface
The Internet is a success story. Over the past few decades, its value to individuals,organizations, and society has become more profound than most of us could everhave imagined. This is no surprise, given that the Internet has brought fundamentalchanges to almost all areas of life. It has not only changed the way we communicate,gather information, and consume media, but has also led to profound societalchanges. Important social debates (e.g., #MeToo) are currently held online, becausethe Internet provides the required infrastructure and communication channels toallow almost all of our society members to democratically exchange their view-points. The Internet’s widespread dissemination has also led to new types ofcompanies, purely based on Internet-related business models, emerging. Amazon,Google, and Facebook are famous examples of such companies.
The Internet landscape is still evolving steadily and becoming increasinglycomplex. This complexity is not only due to the emergence of its underlyinginfrastructure but also relates to organizations and individuals’ more widespreaduse of the Internet’s new and innovative tools. It is therefore extremely importantthat students and young professionals in the fields related to information technologyfamiliarize themselves with the Internet’s basic mechanisms and are introduced tothe most promising Internet-related technologies of our time.
Against this backdrop, this book seeks to provide insights into the most importanttechnologies and concepts related to the Internet through the scientific field ofInternet computing. It is obviously not possible to cover all facets of Internetcomputing in a single book; instead, this book’s goal is to provide a broad overviewof the most important foundational concepts and to shed light on the most promisingcurrent trends in Internet computing. In doing so, I primarily take an organizationalview and reflect on the importance of the constantly evolving Internet-relatedarchitectures and technologies for business issues. For example, the use of cloud-based services has, for organizations of all kinds, become widespread over the lastdecade. However, with an increasing number of organizations moving towardIndustry 4.0 and the Internet of Things, the cloud paradigm may no longer ade-quately meet some of the emerging demands. Consequently, new paradigms, such as
v
Fog and Edge Computing, are coming into play and receiving increasing attentionfrom research and practice. Nevertheless, other revolutionary technologies are alsoclosely linked to the Internet and also have the potential to continue the fundamentalchange driven by the Internet. At the time of writing this book, distributed ledgertechnologies (e.g., the Bitcoin Blockchain) are just one of such hype topics. Manypeople presume that distributed ledger technologies’ elimination of superfluous thirdparties could have the potential to lead to profound changes in many areas, such asfinance, health, and politics. Whether and to what extent such changes will actuallyoccur remain to be seen. Nevertheless, I believe that such promising developmentsshould be covered and their basics conveyed to the readers of a book such as this.
The idea for this book was raised during discussions with my research associatesand PhD students at Karlsruhe Institute of Technology (KIT). While searching for awell-known and respected textbook on Internet computing for one of our lectures,we were surprised to find that no such work existed. Consequently, I decided to writeit. This book is divided into 12 chapters, which, as a whole, offer a comprehensivelecture on the foundations of Internet computing. Each individual chapter can be alecture unit.
My sincerest thanks to all my research associates and PhD students at KIT whohelped me create the texts: Tobias Dehling, Malte Greulich, Niclas Kannengießer,Theresa Kromat, Sebastian Lins, Benjamin Sturm, Heiner Teigeler, and ScottThiebes. I specifically want to thank Manuel Schmidt-Kraepelin, who not onlyhelped me create the book’s content but also supported me during the publicationprocess. I would also like to thank Elisabeth Lieder for supporting the project at theoperational level and Deniz Özdem for creating the graphics. I also want to thank IlseEvertse and her associates for the editing of this book
I hope that you enjoy reading about, getting to know the many new aspects ofInternet computing, and experiencing its fascination. We are responsible for theInternet’s future—not only by providing its technological advances but also byfinding innovative ways of generating value for individuals, organizations, andsocieties alike. Let us take on this responsibility together.
Last but not least, the author is responsible for all the formal and content errors.
Karlsruhe, Germany Ali Sunyaev
vi Preface
Contents
1 Introduction to Internet Computing . . . . . . . . . . . . . . . . . . . . . . . . 11.1 A Brief History of the Internet . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Phase I: Development of TechnologicalFundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.2 Phase II: Growth and Internationalization . . . . . . . . . . 41.1.3 Phase III: Commercialization and the World
Wide Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 Defining Internet Computing . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.2.2 Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121.2.3 Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.2.4 Systemic Matters . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3 Distributed Information Systems for Internet Computing . . . . . 161.3.1 Distributed Systems . . . . . . . . . . . . . . . . . . . . . . . . . 161.3.2 Information Systems . . . . . . . . . . . . . . . . . . . . . . . . . 161.3.3 Design Challenges of Distributed Information
Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171.4 Application Examples of Internet Computing . . . . . . . . . . . . . 19
2 Information Systems Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . 252.1 Defining Information Systems Architecture . . . . . . . . . . . . . . . 262.2 The Principles of Information System Architecture . . . . . . . . . 27
2.2.1 Principle 1: Architecture Models Information SystemBoundaries, Inputs, and Outputs . . . . . . . . . . . . . . . . 28
2.2.2 Principle 2: An Information System Can Be Brokendown into a Set of Smaller Subsystems . . . . . . . . . . . 28
2.2.3 Principle 3: An Information System Can Be Consideredin Interaction with Other Systems . . . . . . . . . . . . . . . 29
2.2.4 Principle 4: An Information System Can Be ConsideredThrough Its Entire Lifecycle . . . . . . . . . . . . . . . . . . . 30
vii
2.2.5 Principle 5: An Information System Can Be Linked toAnother Information System via an Interface . . . . . . . 30
2.2.6 Principle 6: An Information System Can Be Modeled atVarious Abstraction Levels . . . . . . . . . . . . . . . . . . . . 31
2.2.7 Principle 7: An Information System Can Be ViewedAlong Several Layers . . . . . . . . . . . . . . . . . . . . . . . . 32
2.2.8 Principle 8: An Information System Can Be DescribedThrough Interrelated Models with Given Semantics . . . 32
2.2.9 Principle 9: An Information System Can Be DescribedThrough Different Perspectives . . . . . . . . . . . . . . . . . 33
2.3 Architectural Views . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342.4 Architectural Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.4.1 Client-Server Architectures . . . . . . . . . . . . . . . . . . . . 362.4.2 Tier Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . 372.4.3 Peer-to-Peer Architectures . . . . . . . . . . . . . . . . . . . . . 432.4.4 Model View Controller Architectures . . . . . . . . . . . . . 442.4.5 Service-Oriented Architecture . . . . . . . . . . . . . . . . . . 45
3 Design of Good Information Systems Architectures . . . . . . . . . . . . . 513.1 Architecture Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 523.2 IS Architectures' Quality . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2.1 Functional and Nonfunctional Requirements . . . . . . . 563.2.2 Quality Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3 The Information Systems Architecture Design Process . . . . . . . 663.3.1 Basic Process Activities . . . . . . . . . . . . . . . . . . . . . . 663.3.2 Example Method for Designing Architectures:
Attribute-Driven Design (ADD) Method . . . . . . . . . . 733.3.3 Success of Architecture Design Processes: The Iron
Triangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4 Internet Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 834.1 History of the Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 844.2 Today’s Internet Network Infrastructure . . . . . . . . . . . . . . . . . 864.3 The Internet Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.3.1 Internet Protocol Suite . . . . . . . . . . . . . . . . . . . . . . . 924.3.2 IP Addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974.3.3 Domain Name System . . . . . . . . . . . . . . . . . . . . . . . 984.3.4 IP-Routing and Packet Forwarding . . . . . . . . . . . . . . 101
4.4 Content Delivery Networks . . . . . . . . . . . . . . . . . . . . . . . . . . 1054.5 Emerging Internet Network Architecture . . . . . . . . . . . . . . . . . 109
4.5.1 Software-Defined Networking . . . . . . . . . . . . . . . . . . 1094.5.2 Network Functions Virtualization . . . . . . . . . . . . . . . 1124.5.3 Overlay Networks . . . . . . . . . . . . . . . . . . . . . . . . . . 1144.5.4 Information-Centric Networking . . . . . . . . . . . . . . . . 115
viii Contents
5 Middleware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1255.1 Introduction to Middleware . . . . . . . . . . . . . . . . . . . . . . . . . . 1265.2 Remote Procedure Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1295.3 Middleware Categories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
5.3.1 Message-Oriented Middleware . . . . . . . . . . . . . . . . . 1335.3.2 Transaction-Oriented Middleware . . . . . . . . . . . . . . . 1395.3.3 Object-Oriented Middleware . . . . . . . . . . . . . . . . . . . 144
6 Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1556.1 Introduction to Web Services . . . . . . . . . . . . . . . . . . . . . . . . . 1566.2 Basic Web Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
6.2.1 Hyper Text Transfer Protocol (HTTP) . . . . . . . . . . . . 1596.2.2 Extensible Markup Language (XML) . . . . . . . . . . . . . 163
6.3 Web Service Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . 1716.3.1 Service-Oriented Architecture . . . . . . . . . . . . . . . . . . 1716.3.2 Internal and External Web Service Architecture
Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1746.3.3 SOAP Web Services . . . . . . . . . . . . . . . . . . . . . . . . . 1766.3.4 RESTful Web Services . . . . . . . . . . . . . . . . . . . . . . . 1846.3.5 Differentiating Between RESTful and SOAP
Web Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
7 Cloud Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1957.1 An Introduction to Cloud Computing . . . . . . . . . . . . . . . . . . . 196
7.1.1 The Emergence of Cloud Computing . . . . . . . . . . . . . 1967.1.2 Definition of Cloud Computing and its Essential
Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1987.1.3 The Cloud Service Market . . . . . . . . . . . . . . . . . . . . 2007.1.4 Cloud Computing Service Models . . . . . . . . . . . . . . . 2037.1.5 Cloud Computing Deployment Models . . . . . . . . . . . 2057.1.6 Differences Between Related Concepts . . . . . . . . . . . 208
7.2 Essentials to the Provision of Cloud Services . . . . . . . . . . . . . 2107.2.1 Essential Cloud Technologies . . . . . . . . . . . . . . . . . . 2107.2.2 Cloud Service Stack . . . . . . . . . . . . . . . . . . . . . . . . . 212
7.3 Chances and Challenges of Cloud Computing . . . . . . . . . . . . . 2147.3.1 Reasons to Move into the Cloud: Benefits and
Opportunities for Organizations . . . . . . . . . . . . . . . . . 2147.3.2 Cloud Computing’s Transformative Mechanisms . . . . 2187.3.3 The Downside of Cloud Computing: New Risks
and Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2207.4 Security and Data Protection in Cloud Environments . . . . . . . . 223
7.4.1 Security and Privacy Challenges Due to EssentialCloud Service Characteristics . . . . . . . . . . . . . . . . . . 223
7.4.2 Continuous Service Certification as Innovative Meansto Ensure Security and Data Protection . . . . . . . . . . . 226
Contents ix
8 Fog and Edge Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2378.1 Fog and Edge Computing Fundamentals . . . . . . . . . . . . . . . . . 238
8.1.1 Definition and Characteristics of Fog Computing . . . . 2398.1.2 Fog Computing Service Models . . . . . . . . . . . . . . . . 2458.1.3 Fog Computing Deployment Models . . . . . . . . . . . . . 2468.1.4 Definition and Characteristics of Edge Computing . . . 2478.1.5 Mist Computing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2498.1.6 Differences to Cloud Computing . . . . . . . . . . . . . . . . 249
8.2 Challenges and Opportunities of Fog and Edge Computing . . . 2528.2.1 Challenges of Fog and Edge Computing . . . . . . . . . . 2528.2.2 Opportunities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
8.3 Fog and Edge Computing in Practice . . . . . . . . . . . . . . . . . . . 2598.3.1 OpenFog Reference Architecture for Fog Computing . . . 2598.3.2 Video Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2598.3.3 Augmented Reality Glasses . . . . . . . . . . . . . . . . . . . . 260
9 Distributed Ledger Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2659.1 Background of Distributed Ledger Technology . . . . . . . . . . . . 266
9.1.1 Distributed Ledger Technology as a Game Changer . . . 2669.1.2 History of Distributed Ledger Technology . . . . . . . . . 2719.1.3 Terminology in Distributed Ledger Technology . . . . . 274
9.2 Technical Foundations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2769.2.1 Hash Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2779.2.2 Merkle Tree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2789.2.3 Public Key Infrastructure . . . . . . . . . . . . . . . . . . . . . 2799.2.4 Consensus Mechanisms in Distributed Ledger
Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2819.3 The Bitcoin Blockchain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2849.4 Smart Contracts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2899.5 Applications of Distributed Ledger Technology . . . . . . . . . . . . 290
9.5.1 Financial Technology . . . . . . . . . . . . . . . . . . . . . . . . 2919.5.2 Health Care . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2929.5.3 Supply Chain Management . . . . . . . . . . . . . . . . . . . . 292
10 The Internet of Things . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30110.1 Introduction of the Internet of Things . . . . . . . . . . . . . . . . . . . 302
10.1.1 Definition and Characteristics . . . . . . . . . . . . . . . . . . 30210.1.2 A Brief History of the Internet of Things . . . . . . . . . . 304
10.2 The Internet of Things: Technologies and Architectures . . . . . . 30610.2.1 Enabling Technologies . . . . . . . . . . . . . . . . . . . . . . . 30610.2.2 Core Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31010.2.3 Architecture Models . . . . . . . . . . . . . . . . . . . . . . . . . 313
10.3 Internet of Things Applications . . . . . . . . . . . . . . . . . . . . . . . 31810.3.1 Smart Homes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31810.3.2 Smart Cities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
x Contents
10.3.3 The Industrial Internet of Things . . . . . . . . . . . . . . . . 32410.3.4 The Internet of Things in the Energy and Health Care
Sectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32710.4 Challenges and the Future of the Internet of Things . . . . . . . . . 329
10.4.1 Challenges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32910.4.2 Outlook: The Future of the Internet of Things . . . . . . 332
11 Critical Information Infrastructures . . . . . . . . . . . . . . . . . . . . . . . . 33911.1 Foundations of Critical Information Infrastructures . . . . . . . . . 340
11.1.1 The Emergence of Critical InformationInfrastructures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
11.1.2 Sociotechnical Systems . . . . . . . . . . . . . . . . . . . . . . . 34211.1.3 Conceptualization of Critical Information
Infrastructures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34511.1.4 Differences Between Critical Infrastructures
and Critical Information Infrastructures . . . . . . . . . . . 34611.2 Properties of Critical Information Infrastructures . . . . . . . . . . . 34911.3 Functions of Critical Information Infrastructures . . . . . . . . . . . 353
11.3.1 Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35311.3.2 Governance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35511.3.3 Knowledge Management . . . . . . . . . . . . . . . . . . . . . . 35711.3.4 Information Collection . . . . . . . . . . . . . . . . . . . . . . . 359
11.4 Operation of Critical Information Infrastructures . . . . . . . . . . . 360
12 Emerging Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37312.1 Emergence and Emerging Technology . . . . . . . . . . . . . . . . . . 37412.2 Immersive Technologies . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
12.2.1 Virtual Reality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38312.2.2 Augmented Reality . . . . . . . . . . . . . . . . . . . . . . . . . . 386
12.3 Virtual Assistant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39012.4 Artificial Intelligence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Contents xi
Abbreviations
ADD Attribute-driven designAED Automated external defibrillatorAFRINIC African Network Information CenterAGI Artificial general intelligenceAI Artificial intelligenceAmazon S3 Amazon Simple Storage ServiceAMQP Advanced Message Queuing ProtocolANI Artificial narrow intelligenceAPI Application programming interfaceAPNIC Asia-Pacific Network Information CentreAR Augmented realityARIN American Registry for Internet NumbersARP Address Resolution ProtocolARPA Advanced Research Project AgencyASI Artificial super intelligenceASR Architecturally significant requirementsAV Augmented virtualityAWS Amazon Web ServicesB2B Business-to-businessB2C Business-to-consumerBBN Bolt, Beranek, and NewmanBOT Beginning of transactionBTC BitcoinCA Certification authorityCAVE Cave automatic virtual environmentCCN Content-centric networkingCDC Centers for Disease Control and PreventionCDN Content delivery networkCGM Continuous glucose monitoringCICS Customer Information and Control SystemsCII Critical information infrastructure
xiii
CIX Commercial Internet eXchangeCLR Common Language RuntimeCOM Component Object ModelCOMPAS Correctional Offender Management Profiling for Alternative
SanctionsCORBA Common Object Request Broker ArchitectureCRL Certification revocation listCRM Customer relationship managementCSC Cloud service certificationCSNET Computer Science NetworkCSS Cascading Style SheetsDARPA Defense Advanced Research Projects AgencyDCE Distributed Computing EnvironmentDCOM Distributed Component Object ModelDCPS Data-Centric Publish/SubscribeDDoS Distributed denial of serviceDII Dynamic Invocation InterfaceDLRL Data Local Reconstruction LayerDLT Distributed Ledger TechnologyDNS Domain name systemDOE Department of EnergyDoS Denial-of-ServiceDPoS Delegated Proof-of-StakeDRE Direct-recording electronicDSI Dynamic Skeleton InterfaceEAI Enterprise Application IntegrationEAS Emergency Alert SystemEHR Electronic health recordEOT End of transactionEPA Environmental Protection AgencyESIOP Environment-Specific Inter-ORB ProtocolESNet Energy Sciences NetworkETSI European Telecommunications Standards InstituteEU European UnionEVM Ethereum Virtual MachineFCC Federal Communications CommissionFDDI Fiber Distributed Data InterfaceFEMA Federal Emergency AgencyFId Forwarding identifierFTP File Transfer ProtocolGIOP General Inter-ORB ProtocolGP General practitionerGPS Global Positioning SystemGTP Game transfer phenomena
xiv Abbreviations
HLL High-level programming languageHMD Head-mounted displayHTML HyperText Markup LanguageHTTP HyperText Transfer ProtocolIaaS Infrastructure as a ServiceIAB Internet Architecture BoardICANN Internet Corporation for Assigned Names and NumbersICCC International Computer Communications ConferenceICMP Internet Control Message ProtocolICN Information-centric networkingICO Initial coin offeringICT Information and communication technologyIDE Integrated development environmentIDL Interface definition languageIEEE Institute of Electrical and Electronics EngineersIETF Internet Engineering Task ForceIGMP Internet Group Management ProtocolIGRP Interior Gateway Routing ProtocolIIN Interbank Information NetworkIIOP Internet Inter-ORB ProtocolIMP Interface Message ProcessorIoT Internet of ThingsIP Internet ProtocolIPTO Information Processing Technique OfficeIRTF Internet Research Task ForceIS Information systemsISO International Organization for StandardizationISOC Internet SocietyISP Internet Service ProviderIT Information technologyITU International Telecommunication UnionIXP Internet Exchange PointJ2SE Java 2 Standard EditionJava EE Java Platform Enterprise EditionJMS Java Messaging ServiceJSON JavaScript Object NotationLACNIC Latin America and Caribbean Network Information CentreLAN Local Area NetworkLBS location-based serviceLCD Liquid crystal displayLPC Local procedure callMAE Metropolitan Area ExchangeMOM Message-oriented middlewareMQTT Message Queuing Telemetry TransportMR Mixed reality
Abbreviations xv
MTBF Mean time between failureMTS Microsoft Transaction ServerMTTR Mean time to repairMTU Maximum transmission unitMVC Model View ControllerNAP Network Access PointNASA National Aeronautics and Space AdministrationNCP Network Control ProgramNFS Network File SystemNFV Network function virtualizationNIST National Institute of Standards and TechnologyNOAA National Oceanic and Atmospheric AdministrationNPL National Physical LaboratoryNSF National Science FoundationOMG DDS Data Distribution Service by the Object Management GroupOOM Object-oriented middlewareORB Object Request BrokerOSI Open Systems InterconnectionP2P Peer-to-peerPaaS Platform as a ServicePBFT Practical Byzantine fault tolerancePC Personal ComputerPDA Personal digital assistantPIT Pending interest tablePOA Portable Object AdapterPOP Point of presencePOP3 Post Office Protocol 3PoS Proof-of-StakePoW Proof of WorkPSIRP Publish-Subscribe Internet Routing ParadigmPSMOM Publish/subscribe message-oriented middlewareQoS Quality of serviceRA Registration authorityRARP Reverse Address Resolution ProtocolREST Representational State TransferRFC Request for CommentsRFID Radio frequency identificationRId Rendezvous identifierRIP Routing Information ProtocolRIPE NCC Réseaux IP Européens Network Coordination CentreRIR Regional Internet RegistriesRMI Remote Method InvocationRSM Replicated state machineSaaS Software as a Service
xvi Abbreviations
SAML Security Assertion Markup LanguageSCADA Supervisory control and data acquisitionSCTP Stream Control Transmission ProtocolSDN Software-defined networkingSGML Standard Generalized Markup LanguageSHA Secure hash algorithmSId Scope identifierSLA Service-level agreementsSMTP Simple Mail Transfer ProtocolSNMP Simple Network Management ProtocolSOA Service-oriented architectureSOAP Simple Object Access ProtocolSQS Amazon Simple Queue ServiceSRI Stanford Research InstituteSSL Secure Sockets LayerSTOMP Streaming Text-Oriented Messaging ProtocolSUS System Usability ScaleTCP Transmission Control ProtocolTDAG Transaction-based directed acyclic graphsTIP Terminal Interface ProcessorTLS Transport Layer SecurityTOM Transaction-oriented middlewareTP Transaction processingTRPC Transactional remote procedure callTTL Time to liveUCLA University of California, Los AngelesUCSB University of California, Santa BarbaraUDP User Datagram ProtocolUID Unique identifierUML Unified Model LanguageURI Uniform Resource IdentifiersUTXO Unspent transaction outputVC Venture capitalVNF Virtualized network functionVoIP Voice over IPVPN Virtual private networkVR Virtual realityW3C World Wide Web ConsortiumWADL Web Application Description LanguageWAL Write-ahead logWAN Wide Area NetworkWCF Windows Communication FoundationWHO World Health OrganizationWSAN Wireless sensor and actuator network
Abbreviations xvii
WS-BPEL Web Services Business Process Execution LanguageWSDL Web Services Description LanguageWSN Wireless sensor networkWWW World Wide WebXaaS Everything as a ServiceXML Extensible Markup LanguageXSD XML Schema Definition
xviii Abbreviations