Computing in Communication Networks: From Theory to Practice
Book information
Description
Computing in Communication Networks: From Theory to Practice provides comprehensive details and practical implementation tactics on the novel concepts and enabling technologies at the core of the paradigm shift from store and forward (dumb) to compute and forward (intelligent) in future communication networks and systems. The book explains how to create virtualized large scale testbeds using well-established open source software, such as Mininet and Docker. It shows how and where to place disruptive techniques, such as machine learning, compressed sensing, or network coding in a newly built testbed. In addition, it presents a comprehensive overview of current standardization activities. Specific chapters explore upcoming communication networks that support verticals in transportation, industry, construction, agriculture, health care and energy grids, underlying concepts, such as network slicing and mobile edge cloud, enabling technologies, such as SDN/NFV/ ICN, disruptive innovations, such as network coding, compressed sensing and machine learning, how to build a virtualized network infrastructure testbed on one’s own computer, and more. Contents List of contributors About the editors Preface from the editors Acknowledgments Acronyms Part 6 Examples 1 On the need of computing in future communication networks 1.1 Evolution of communication networks 1.1.1 The telephone networks: circuit-switched 1.1.2 The Internet: packet-switched 1.1.3 The cellular communication networks 1.2 The 5G communication system 1.2.1 The 5G Atom core: use cases 1.2.1.1 Connected autonomous cars 1.2.1.2 Industry 4.0 1.2.1.3 Agriculture 1.2.1.4 Energy grid 1.2.1.5 Tactile Internet 1.2.2 First tier: the technical requirements 1.2.2.1 Latency and jitter 1.2.2.2 Throughput 1.2.2.3 Resilience 1.2.2.4 Security 1.2.2.5 Massiveness 1.2.2.6 Heterogeneity 1.2.2.7 Energy consumption 1.2.2.8 Technical requirements per use case Technical requirements: connected autonomous cars Technical requirements: Industry 4.0 Technical requirements: Agriculture 4.0 Technical requirements: energy grids Technical requirements: tactile Internet 1.2.3 Second tier: the concepts 1.2.3.1 New air interface concept 1.2.3.2 Mesh 1.2.3.3 Multipath communication and multiconnectivity 1.2.3.4 Content delivery networks 1.2.3.5 Information-centric networks 1.2.3.6 Network slicing 1.2.3.7 Mobile edge cloud 1.2.4 Third tier: the softwarization technologies 1.2.4.1 Software-defined radio 1.2.4.2 Software-defined networks 1.2.4.3 Network function virtualization 1.2.4.4 Service function chaining 1.2.5 Fourth tier: innovation and novelties 1.2.5.1 Block chaining 1.2.5.2 Machine learning 1.2.5.3 Network coding 1.2.5.4 Compressed sensing 1.3 Softwarization: the game changer for network operators 2 Standardization activities for future communication networks 2.1 Introduction 2.2 Standardization in telecommunications 2.3 Standardization of future generation networks 2.3.1 3GPP standardization 2.3.2 ETSI standardization 2.3.3 ITU-T standardization 2.3.4 IETF/IRTF standardization Part 7 Extensions 3 Network slicing 3.1 Introduction 3.2 Network slice: concept and life cycle 3.3 Network slicing architectures 3.3.1 Single owner, single controller 3.3.2 Single owner, multiple tenants - SDN proxy 3.3.3 Multiple owners, tenants 3.4 Network slicing examples 4 Mobile edge cloud 4.1 Introduction 4.2 Mobile edge cloud 4.2.1 Similar concepts 4.2.2 Characteristics 4.2.3 Key enablers 4.2.4 General architecture 4.3 MANO frameworks 4.4 MEC example implementations 4.4.1 Tron demonstrator 4.4.2 Ball sorting machine 4.4.3 Ambulance demonstrator 4.4.4 Seamless migration for autonomous cars 5 Content distribution 5.1 Introduction 5.2 Content delivery networks 5.2.1 Content distribution 5.2.2 Request routing 5.3 Information-centric networking 5.3.1 Operation primitives and packet types 5.3.2 Content naming 5.3.3 In-network caching 5.3.4 Node architecture and packet handling 5.3.5 Content-based security Part 3 Enabling technologies 6 Software-defined networks 6.1 Networking in today's Internet 6.2 The road to SDN 6.2.1 What is software-defined networking? 6.2.2 Architecture 6.2.3 SDN use cases 6.2.3.1 Maintenance dry-out 6.2.3.2 Traffic scheduling and predictability 6.2.3.3 Service function chaining 6.2.3.4 User handover 6.2.3.5 Network access control 6.3 Technologies and standards 6.3.1 SDN controllers 6.3.2 SDN switches 6.3.3 OpenFlow 6.3.3.1 Flow table 6.3.3.2 Classifiers and actions 6.3.3.3 Workflow of OpenFlow 6.3.4 P4 6.3.5 NETCONF 7 Network function virtualization 7.1 Introduction 7.2 Network function virtualization 7.3 NFV-SDN architectures 7.4 Programmable protocol stack 7.5 Virtualization of RAN and BBU splitting Part 8 Tools 8 Machine learning 8.1 Introduction 8.2 Supervised learning 8.2.1 Problem formulation 8.2.2 Supervised learning workflow 8.2.2.1 Feature encoding Label encoding One-hot encoding 8.2.2.2 Commonly used distance measures Mean squared error Categorical cross-entropy 8.2.2.3 Error minimization: gradient descent Gradient descent Stochastic gradient descent Minibatch gradient descent 8.2.2.4 Predicting probability distributions: SoftMax 8.2.2.5 Overfitting vs. underfitting Underfitting Overfitting L1 regularization L2 regularization Early stopping 8.2.3 Linear and logistic regression 8.2.3.1 Linear regression Optimal solution 8.2.3.2 Logistic regression 8.2.4 Support vector machines 8.2.4.1 Linear separation 8.2.4.2 Linear separation with margin 8.2.4.3 Nonlinear separation 8.2.5 Decision trees 8.2.5.1 Training a decision tree: the CART algorithm Split (im)purity 8.2.6 Artificial neural networks 8.2.6.1 Artificial Neural Network (ANN) fundamentals 8.2.6.2 Layers 8.2.6.3 Training with backpropagation 8.2.6.4 Best practices, new trends 8.2.7 Convolutional neural networks 8.2.7.1 Convolutional layers 8.2.7.2 Pooling layers 8.2.7.3 Residual (skip) connections 8.3 Intermission 8.4 Reinforcement learning 8.4.1 Finite Markov decision processes 8.4.2 Q-learning 8.4.3 The exploration vs. exploitation dilemma 8.4.3.1 The ε-greedy policy 8.4.3.2 The upper confidence bound policy 8.4.4 Deep Q-learning 9 Network coding 9.1 Interflow network coding - the basics 9.1.1 The butterfly network 9.1.2 Alice and Bob topology 9.1.3 The X topology 9.1.4 The cross topology 9.2 Intraflow network coding - now it gets interesting 9.2.1 How to create coded packets A note on practical hands-on in Python 9.2.1.1 Coding a packet with a binary field size 9.2.1.2 Coding a packet with a larger field size 9.2.1.3 Recoding coded packets 9.2.2 RLNC and the butterfly 9.2.3 Impact of the coding parameters 9.2.3.1 Overhead due to linear dependencies 9.2.3.2 Computational complexity 9.2.3.3 Overhead due to the coding coefficients 9.2.4 The potential of recoding 10 Compressed sensing 10.1 Compressed sensing theory 10.1.1 Problem formulation 10.1.2 Mathematical background 10.1.2.1 Basis and frame of a vector space Basis Example Frame 10.1.2.2 Norms 10.1.2.3 Orthogonal matrices 10.1.2.4 Matrix decomposition 10.1.2.5 Kronecker product 10.1.3 Sparse and compressible signals 10.1.4 Measurement matrix design 10.1.4.1 Mutual coherence 10.1.4.2 Null space property 10.1.4.3 Restricted isometry property 10.2 Basic reconstruction algorithms 10.2.1 Convex relaxation 10.2.2 Greedy algorithms 10.2.2.1 Greedy pursuits Orthogonal Matching Pursuit (OMP) 10.2.2.2 Thresholding 10.2.3 Message passing 10.2.4 Reconstruction strategies discussion 10.3 Sparse representation 10.3.1 Well-known transforms 10.3.2 Sparsifying dictionary/dictionary learning 10.3.2.1 K-SVD algorithm 10.4 Distributed compressed sensing 10.4.1 Joint sparsity models 10.4.1.1 Sparse common component + innovations (JSM-1) 10.4.1.2 Common sparse supports model (JSM-2) 10.4.1.3 Nonsparse common component + sparse innovations (JSM-3) 10.4.2 DCS reconstruction algorithms 10.5 Compressed sensing for communications 10.5.1 Compressed sensing for WSN 10.5.2 Kronecker compressed sensing 10.5.2.1 Kronecker product sparsifying bases 10.5.2.2 Kronecker product measurement matrices Part 5 Building the testbed 11 Mininet: an instant virtual network on your computer 11.1 Introduction 11.2 Mininet workflow 11.2.1 Create a network topology 11.2.2 Interact with a network 11.2.3 Programmable network with SDN 11.3 Demystifying Mininet 11.3.1 Resource management and isolation 11.3.1.1 Linux NS 11.3.1.2 Linux Cgroups 11.3.2 Configurable data plane 11.3.2.1 Linux virtual ethernet pairs (veth pairs) 11.3.2.2 Linux traffic control 11.3.2.3 Virtual switch 11.4 Create a tiny topology from scratch 12 Docker: containerize your application 12.1 Introduction to Docker 12.2 Containers vs virtual machines 12.3 Management, orchestration and external tools 12.3.1 Kubernetes 12.3.2 Docker Swarm 12.4 Getting started with Docker 12.4.1 Basic commands 12.4.1.1 Docker images 12.4.1.2 Docker containers 12.4.2 Building an image - Dockerfile 12.4.3 Services and stacks 12.4.4 Docker Swarm 13 ComNetsEmu: a lightweight emulator 13.1 Introduction 13.2 ComNetsEmu in a nutshell 13.2.1 Test environment management 13.2.2 Application container management 13.3 Examples for getting started 13.3.1 Echo server 13.3.2 Docker-in-Docker for resource limitation Part 1 Future communication networks and systems 14 Realizing network slicing 14.1 Network slicing in Mininet 14.1.1 Introduction 14.1.2 Link capacity slicing 14.2 Network slicing in ComNetsEmu 14.2.1 Example 1: topology slicing 14.2.1.1 Implementation 14.2.1.2 Validation 14.2.2 Example 2: service slicing 14.2.2.1 Implementation 14.2.2.2 Validation 14.2.3 Example 3: SDN proxy-based slicing 14.2.3.1 Implementation 14.2.3.2 Validation 15 Realizing mobile edge clouds 15.1 Introduction 15.2 Mechanisms and practical implementation 15.2.1 Without SDN/NFV technologies 15.2.2 With SDN/NFV technologies 15.3 ComNetsEmu experimentation 15.4 Emulation results 15.4.1 Latency measurement results on SDN controller 15.4.2 Latency measurement at client side 16 Machine learning for routing 16.1 Introduction 16.2 Fitting reinforcement learning to routing 16.2.1 Designing state and action space 16.2.2 Reward 16.2.3 Exploration 16.3 Example 16.3.1 Setup 16.3.2 Running the example 16.3.3 Discussion 16.3.4 Changing parameters 17 Machine learning for flow compression 17.1 Introduction 17.2 The compression oracle 17.3 The O2SC library 17.3.1 Examples of predefined oracles 17.3.2 Defining oracles using machine learning 17.4 Examples 17.5 The interactive environment 18 Machine learning for congestion control 18.1 Introduction 18.2 Characterizing congestion 18.3 Congestion window 18.4 Designing the agent 18.5 Example with ComNetsEmu 18.6 Exercises 18.6.1 Exercise 1 18.6.2 Exercise 2 18.6.3 Exercise 3 19 Machine learning for object detection 19.1 Introduction 19.2 Distributed YOLO with compression 19.2.1 Distributed YOLO: VNF and server 19.2.2 Model split 19.2.3 Inside YOLO 19.2.4 Feature map compression 19.3 Examples 19.3.1 Infinite forwarding VNF 19.3.2 Limited forwarding VNF 20 Network coding for transport 20.1 Introduction 20.2 Network coding as virtualized network function 20.2.1 Virtualization approaches 20.2.2 Coding the traffic 20.3 Multihop recoding example 20.4 Adaptive redundancy example 20.4.1 Delivery probability of packets 20.4.2 Running the example 20.4.3 Example results 21 Network coding for storage 21.1 Introduction 21.2 Distributed storage 21.3 Network coding in distributed storage 21.4 Running the example 21.4.1 Uncoded repair 21.4.2 Simple network code with replication 21.4.3 Network coding with recoding 22 In-network compressed sensing 22.1 Introduction 22.2 Point-to-point scenario 22.2.1 Using DCT for data sparsification 22.2.2 Using a trained dictionary for data sparsification 22.3 Single-cluster scenario 22.3.1 Using DCT for data sparsification 22.3.2 Using a trained dictionary for data sparsification 22.3.2.1 Overcomplete dictionary robustness 22.4 Next steps 23 Security for mobile edge cloud 23.1 Introduction 23.2 Network segmentation 23.2.1 Concepts 23.2.2 Implementation 23.2.3 nftables 23.3 Network isolation exercise 23.3.1 Blacklisting and whitelisting 23.3.2 Stateful filtering 23.3.3 Chains and jumps 23.4 Secure network tunnels 23.4.1 Concepts 23.4.2 Implementation 23.4.3 Wireguard 23.5 Secure network tunnel exercise 23.5.1 Man-in-the-middle 23.5.2 Tunnel network Part 2 Concepts 24 Connecting to the outer world 24.1 Introduction 24.2 Connecting ComNetsEmu to the Internet 24.2.1 Manual host configuration 24.2.1.1 Checking connectivity and NIC of the host 24.2.1.2 Running an example network 24.2.1.3 Connecting the guest interface to the OVS bridge 24.2.1.4 Update IP addresses on the hosts 24.2.2 Using NAT service 24.2.3 Using DNS resolution 24.3 Connecting different test bed VMs 24.4 Exercises 24.4.1 Exercise 1 24.4.2 Exercise 2 25 Integrating time-sensitive networking 25.1 Introduction 25.2 IEEE802.1AS - if timing matters 25.3 Different shapes of packets - IEEE802.1Qav and IEEE802.1Qbv 25.3.1 Credit-based shaper 25.3.2 Time-aware shaper 25.4 IEEE802.1Qci - you shall not pass! 25.5 IEEE802.1Qbu, IEEE802.3br - filling the gaps 25.6 Hands-on: time-sensitive queueing in the new Linux kernel 5.2 25.6.1 ComNetsEmu setup 25.6.2 Using the TAS simulator 25.6.3 Preparing the TAS 25.6.4 Measurement and results 26 Integrating software-defined radios 26.1 Introduction 26.2 Basic principles 26.2.1 What is programmable in SDR? 26.2.2 Design considerations 26.2.3 Design constraints 26.3 Software stacks 26.3.1 Universal Software Radio Peripheral (USRP) 26.3.2 GNU radio 26.4 Examples 26.4.1 Setup 26.4.2 OFDM transceiver exercise 26.4.2.1 Execution 26.4.2.2 Results and analysis 26.4.3 Latency measurement exercise 26.4.3.1 Execution 26.4.3.2 Results and analysis Part 4 Innovation track 27 Networking tools 27.1 Connectivity testing - ping 27.2 Basic network administration - iproute2 27.2.1 ip addr 27.2.2 ip link 27.2.3 ip route 27.3 Traffic generation - iPerf 27.4 Process monitoring - htop 27.5 Network traffic manipulation - TC 27.6 Traffic monitoring - tcpdump/Wireshark 27.6.1 tcpdump 27.6.2 Wireshark 27.6.2.1 Main features 27.6.2.2 Installation 27.6.2.3 User interface 27.7 Rapid Python prototyping - Jupyter 27.8 Hands-on example to tie all tools together Bibliography Index
Similar books
MySQL® Notes for Professionals book
2018 · PDF
MrExcel 2022: Boosting Excel
2022 · PDF
MrExcel 2022: Boosting Excel
2022 · PDF
Session C11: Ancient Cultural Landscapes in South Europe – their Ecological Setting and Evolution, Session C22: Gardeners from South America, Session S04: Agro-Pastoralism and Early Metallurgy Sessions, Session WS29: The Idea of Enclosure in Recent Iberian Prehistory, Session C88: Rhytmes et causalites des dynamiques de l'anthropisation en Europe entre 6500 ET 500 BC: Hypotheses socio-culturelles et/ou climatiques: Proceedings of the XV UISPP World Congress (Lisbon 4-9 September 2006) / Actes du XV Congrès Mondial (Lisbonne 4-9 Septembre 2006) Vol.36
2010 · PDF
THE BRITISH ARMY IN INDIA: ITS PRESERVATION BY AN APPROPRIATE CLOTHING, HOUSING, LOCATING, RECREATIVE EMPLOYMENT, AND HOPEFUL ENCOURAGEMENT OF THE TROOPS. with AN APPENDIX ON INDIA : THE CLIMATE OP ITS HILLS ; THE DEVELOPMENT OF ITS RESODRCBS, INDUSTRY, AND ARTS ; THE ADMINISTRATION OF JUSTICE ; THE BLACK ACT ; THE PROGRESS OF CHRISTIANITY ; THE TRAFFIC IN OPIUM ; THE VALUE OF INDIA ; PERMANENT CAUSES OF DISAFFECTION, AND OF THE RECENT REBELLION ; THE TRADITIONARY POLICY; MISGOVERNMENT BY NATIVE RULERS ; ANNEXATIONS OF THEIR TERRITORY, ETC.
1858 · PDF
Idries Shah 27 Books Collection : A Perfumed Scorpion, A Veiled Gazelle, Caravan of Dreams, Darkest England, Destination Mecca, Evenings with Idries Shah, Knowing How to Know, Learning How to Learn, Letters and Lectures of Idries Shah, Neglected aspects of Sufi study, Observations, Oriental Magic, Reflections, Seeker after Truth, Special Illumination, Special Problems in the study of Sufi ideas, Sufi thought and action, Tales of the Dervishes, The Dermis Probe, The Elephant in the Dark, The Englishman Handbook, Idries Shah Antology, The Magic Monastery, The natives are restless, wisdom of the Idiots PDF.
2022 · PDF
The travels of Capts. Lewis and Clarke from St. Louis, by way of the Missouri and Columbia rivers, to the Pacific ocean; performed in the years 1804, 1805 & 1806, by order of the government of the United States. Containing delineations of the manners, customs, religion, &c. of the Indians, comp. from various authentic sources, and original documents, and a summary of the Statistical view of the Indian nations, from the official communication of Meriwether Lewis. Illustrated with a map of the country, inhabited by the western tribes of Indians
1809 · PDF
Professional Linux kernel architecture ''Wrox programmer to programmer''--Cover. - ''What you are reading right now is the result of an evolution over more than seven years: After two years of writing, the first edition was published in German by Carl Hanser Verlag in 2003. It then described kernel 2.6.0. The test was used as a basis for the low-level design documentation for the EAL4+ security evaluation of Red Hat Enterprise Linux 5, requiring to update it to kernel 2.6.18 (if the EAL acronym does not mean anything to you, then Wikipedia is once more your friend). Hewlett-Packard sponsored the translation into English and has, thankfully, granted the rights to publish the result. Updates to kernel 2.6.24 were then performed specifically for this book''--P. ix
2008 · PDF