Network Layering CS 118

Similar documents
Sharing Channels CS 118

Lecture 2: Internet Architecture

CS4700/5700: Network fundamentals

TCP/IP THE TCP/IP ARCHITECTURE

416 Distributed Systems. Networks review; Day 1 of 2 Jan 5 + 8, 2018

Design Considerations : Computer Networking. Outline. Challenge 1: Address Formats. Challenge. How to determine split of functionality

Layering in Networked computing. OSI Model TCP/IP Model Protocols at each layer

CS155b: E-Commerce. Lecture 3: Jan 16, How Does the Internet Work? Acknowledgements: S. Bradner and R. Wang

The Internetworking Problem. Internetworking. A Translation-based Solution

CompSci 356: Computer Network Architectures. Lecture 8: Spanning Tree Algorithm and Basic Internetworking Ch & 3.2. Xiaowei Yang

Introduction to routing in the Internet

Network Architecture Models

Parts of a Network. app. router. link. host. Computer Networks 2

CSEP 561 Internetworking. David Wetherall

Multiparty Communications CS 118. Computer Network Fundamentals Peter Reiher. Lecture 4 Page 1 CS 118. Winter 2016

Page 1. Goals for Today" What Is A Protocol?" CS162 Operating Systems and Systems Programming Lecture 10. Protocols, Layering and e2e Argument"

Peer entities. Protocol Layering. Protocols. Example

ICS 351: Networking Protocols

Lecture-4. TCP/IP-Overview:

The Netwok 15 Layer IPv4 and IPv6 Part 3

Component Function Example

Computer Networking. Introduction. Quintin jean-noël Grenoble university

IP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia

The Network 15 Layer IPv4 and IPv6 Part 3

CS519: Computer Networks. Lecture 1 (part 2): Jan 28, 2004 Intro to Computer Networking

Internetworking I: Basics. November 11, 1999

Network Security Fundamentals. Network Security Fundamentals. Roadmap. Security Training Course. Module 2 Network Fundamentals

cs144 Midterm Review Fall 2010

Announcements Computer Networking. What is the Objective of the Internet? Today s Lecture

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

5105: BHARATHIDASAN ENGINEERING COLLEGE NATTARMPALLI UNIT I FUNDAMENTALS AND LINK LAYER PART A

416 Distributed Systems. Networks review; Day 2 of 2 Fate sharing, e2e principle And start of RPC Jan 10, 2018

CS 268: Internet Architecture & E2E Arguments. Today s Agenda. Scott Shenker and Ion Stoica (Fall, 2010) Design goals.

ECE4110 Internetwork Programming. Introduction and Overview

The DNS. Application Proxies. Circuit Gateways. Personal and Distributed Firewalls The Problems with Firewalls

Internetworking Part 2

CS61C Machine Structures Lecture 37 Networks. No Machine is an Island!

Networks and distributed computing

Assignment - 1 Chap. 1 Wired LAN s

Defining Networks with the OSI Model. Module 2

Hands-On Network Security: Practical Tools & Methods

Introduction to routing in the Internet

CS 43: Computer Networks The Link Layer. Kevin Webb Swarthmore College November 28, 2017

Computer Networks Prof. S. Ghosh Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture 28 IP Version 4

precise rules that govern communication between two parties TCP/IP: the basic Internet protocols IP: Internet protocol (bottom level)

Goal of Today s Lecture. EE 122: Designing IP. The Internet Hourglass. Our Story So Far (Context) Our Story So Far (Context), Con t

TCP/IP Overview. Basic Networking Concepts. 09/14/11 Basic TCP/IP Networking 1

Networking and Internetworking 1

Administrivia CSC458 Lecture 4 Bridging LANs and IP. Last Time. This Time -- Switching (a.k.a. Bridging)

Chapter -4 OSI Reference Model

On Inter-layer Assumptions

CS 640: Introduction to Computer Networks. Today s Lecture. Page 1

Networking and TCP/IP. John Kalbach November 8, 2004

CSCI Computer Networks

Introduction to TCP/IP networking

Design Considerations : Computer Networking. Outline

Cisco Cisco Certified Network Associate (CCNA)

Identify the features of network and client operating systems (Windows, NetWare, Linux, Mac OS)

Mobile MOUSe ROUTING AND SWITCHING FUNDAMENTALS ONLINE COURSE OUTLINE

Significance of TCP/IP Model Divya Shree Assistant Professor (Resource Person), Department of computer science and engineering, UIET, MDU, Rohtak

CS4700/CS5700 Fundaments of Computer Networks

Introduction to Networks

IP Packet Switching. Goals of Todayʼs Lecture. Simple Network: Nodes and a Link. Connectivity Links and nodes Circuit switching Packet switching

University of Southern California EE450: Introduction to Computer Networks

Reti di Calcolatori I

Growth. Individual departments in a university buy LANs for their own machines and eventually want to interconnect with other campus LANs.

DATA COMMUNICATION AND NETWORKS

MODERNIZATION OF AUTOMATIC SURFACE WEATHER OBSERVING SYSTEMS AND NETWORKS TO UTILIZE TCP/IP TECHNOLOGY

Layering and Addressing CS551. Bill Cheng. Layer Encapsulation. OSI Model: 7 Protocol Layers.

b) Diverse forms of physical connection - all sorts of wired connections, wireless connections, fiber optics, etc.

PART X. Internetworking Part 1. (Concept, IP Addressing, IP Routing, IP Datagrams, Address Resolution)

Welcome to: Computer Science 457 Networking and the Internet. Fall 2014 Dr. Joseph Gersch

Internet. Organization Addresses TCP/IP Protocol stack Forwarding. 1. Use of a globally unique address space based on Internet Addresses

Where we are in the Course

CPSC156a: The Internet Co-Evolution of Technology and Society. Lecture 4: September 16, 2003 Internet Layers and the Web

Network Layer (1) Networked Systems 3 Lecture 8

CPS221 Lecture: Layered Network Architecture

Goals and topics. Verkkomedian perusteet Fundamentals of Network Media T Circuit switching networks. Topics. Packet-switching networks

Networking midterm. 5. As a data unit moves up from one protocol layer to another, control headers are:

CSCI-GA Operating Systems. Networking. Hubertus Franke

LOGICAL ADDRESSING. Faisal Karim Shaikh.

EEC-484/584 Computer Networks

ROYAL INSTITUTE OF INFORMATION & MANAGEMENT

Patrick Stuedi, Qin Yin, Timothy Roscoe Spring Semester 2015

Introduction to Information Science and Technology 2017 Networking II. Sören Schwertfeger 师泽仁

Communications Software. CSE 123b. CSE 123b. Spring Lecture 2: Internet architecture and. Internetworking. Stefan Savage

Integrated Services. Integrated Services. RSVP Resource reservation Protocol. Expedited Forwarding. Assured Forwarding.

A Practical (and Personal) Perspective on IPv6 for Servers. Geoff Huston June 2011

Advanced Computer Networks

CS162 Operating Systems and Systems Programming Lecture 21. Networking. Page 1

CS 268: Lecture 4 (Internet Architecture & E2E Arguments)

Wireshark Lab: Getting Started

Introduction to Internetworking

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Communication Networks - 3 general areas: data communications, networking, protocols

Computer Network Protocols: Myths, Missteps, and Mysteries. Dr. Radia Perlman, Intel Fellow

Chapter 7. Local Area Network Communications Protocols

Introduction to Networking

OSI Reference Model. Computer Networks lab ECOM Prepared By : Eng. Motaz Murtaja Eng. Ola Abd Elatief

Network: infrastructure (hard/software) that enables endpoints (hosts) to communicate

Transcription:

Network Layering Computer Network Fundamentals Peter Reiher Page 1

Outline What is a layer? Goals of layering Internet and the One Ring Page 2

What is a layer? A layer is: The largest set of parties (nodes) that can communicate Using a single protocol And a single name space A kind of a zone I.e., the transitive closure of a set of nodes via relayed communication Page 3

Limits of a single layer Homogeneity Complexity Page 4

Homogeneity 1 No environment / context optimizations Prevents customization, e.g., for wireless, satellite, low-power, lightweight devices, etc. Difficult to pick Hard to pick one everyone will agree on Page 5

Homogeneity 2 Locked-in once deployed No incremental evolution Needs a flag day to change First major change to Multics: June 14, 1966 Internet shift from NCP to TCP: Jan. 3, 1983 Page 6

Complexity One large, flat layer Difficult to manage Difficult to route (determine paths) Difficult to coordinate resources And its one, large name space See above Groups of layers can be easier Page 7

Reasons to have multiple layers Abstraction Emulation Containment Scale Page 8

Abstraction Model Simplification Extract key features See: Picasso -> Page 9

Abstraction and Layering Present a simpler system Topology Protocol Behavior Other simplifications Node subset Smaller distance Page 10

IEEE 802 Base layer (802.2 LLC: Logical Link Layer) Addressing Frame format Error detection Upper-layer interface (API) Lower layer Bridging (802.1), i.e., switch control and configuration Upper layers Ethernet (802.3) Token bus (802.4) Token ring (802.5) Wireless (802.11) Personal (802.15) Emergency (802.23) Page 11

Emulation Abstraction to copy behavior Replicate capabilities of another system By limiting, composing, or modifying an existing system Change existing system to another one by adding layers Page 12

Emulation and Layering PPP Point-to-point protocol Emulate a physical wire over a dialup modem PPPoE Ethernet PPPoA ATM Page 13

Containment Enforce boundaries Protect interior Ensure a stable locale Enforce limited function Protect exterior Deploy new features Support local capability Page 14

Containment and Layering Hide / protect a network from the world Hide / protect the world from an experiment Page 15

Scale Limit complexity Hard to route everywhere, so maybe route via a tree? Overcome physical limits Sharing can be very useful, but may require a very different protocol for relaying Page 16

Scale and Layering Tree routing Know your descendants Route down for known, up for unknown Relies on varying detail at different layers Label groups Cloud routing Traverse the clouds without knowing what happens inside Inside the cloud, it s the cloud s problem Page 17

Connections and layering Dovetailed Edge connected Peer translators Both transit or terminus Stacked Top-to-bottom connected Treat lower layers as encapsulation transit Never as terminus Page 18

Translation gateways Gateway converts Bidirectional translation Complex internal state Two views Presents two views Proxies in both directions Page 19

Benefits of adapters Allow local optimization Allow partial (subset) upgrades Page 20

Issues with adapters The telephone game Semantic gaps Gateway state Scale vs. number of languages Page 21

Lost in translation Protocols have idioms Behaviors are native to a protocol Sequences of translations lose info Telephone game Page 22

Semantic gaps No protocol is complete Turing machine has completeness But protocols built on finite state machines FSM is a limited TM Some things don t translate Ballpark, drop a dime Page 23

State problems Size Physical limits constrain state State can explode Combined FSMs = product of states Reliability Gateway failure = lost state Lost state affects protocols on both sides Path correlation End-to-end exchanges need to go through the same gateway for their entire interaction OR state needs to be shared among multiple gateways Page 24

Mutual modeling My world Has a proxy for you Ends at that proxy Your world Has a proxy for me Ends at that proxy Sort of independent but not really We both think our worlds are contained But my proxy and your proxy are coupled Page 25

Scale of translation More languages = more translators Each new language has cost proportional to the number of languages currently in use Gets worse as languages are added Who adds the translator? Team effort both new and old parties Need someone fluent in both Page 26

Stacked layers The alternative to edge layers Put one layer on top of another Each layer has its own responsibilities Need not worry about things higher layers handle And higher layers assume lower layer has taken care of certain things Layers can be customized to circumstances Wireless vs. wired links, e.g. Page 27

Stacked layers Each layer sits on a lower layer Each layer depends on the lower layer But not directly on the layers below that We might have icing connecting the layers To hold them together A network isn t a cake, but it s a little less different than you might think Page 28

Internet model Internet Net A Net B Net C But how do these different nets work together? One layer to rule them all! Page 29

IP Layer The common layer for the Internet Packets Variable length Includes source and destination addresses Global addresses Two-level hierarchy High bits = assigned by central authority Low bits = locally assigned Best-effort communication Allows for loss, reordering Enables simple forwarding, use smart ends to repair Page 30

Metcalfe s Law If this is right, key to maximizing network utility is maximizing N Page 31

Internet principle Talking to everyone poorly is more important than talking to anyone well Prefer capability over efficiency Prefer capability over performance Prefer capability over security Prefer capability over anything else! Capability is everything Page 32

Benefits of a common layer All the benefits of dovetailing Abstraction Emulation Containment Scale Common expectations Encourages internetwork communication that avoids idioms, or uses them very carefully Stacking supports recursion Can be applied in various places, repeatedly AND multiple versions don t interact Page 33

The Hourglass Principle Page 34

The Narrow Waist HTTP DNS FTP NFS IM HTTP/DNS/FTP/ NFS/IM TCP/UDP/ SCTP/RTP λppm λcdma enrz epcm Ethernet/ FDDI/Sonet λ PPM, λ CDMA, e - NRZ, e - PCM Page 35

How may waists? IP The one ring 802.* The lowest layer above hardware, for many HTTP/HTTPS A user layer that works everywhere Even where others are blocked Page 36

Issues with a common layer Lowered expectations Avoiding idioms may be less efficient Least common denominator may be weak Cost Everyone translates, sometimes even when not necessary Common language is native to no one Like Esperanto Page 37

Why has stacked layering won? Benefits outweigh costs There were critics as recently as 1990s, e.g., that IP was not fast enough for network disks Parallels lingua franca experience Removes home field advantage Nobody spoke their native languages all that well, anyway The lingua franca of networking developed as networking itself developed Page 38

How layers are used More about dovetailing (peer layers) More about stacked layers Page 39

Dovetailed (peer) layers Net A Net B Page 40

Translation Net A Net B Page 41

Peer what is translated? Everything: Message contents Addresses Page 42

Stacked layers Internet Net A Net B Net C Remember, we re thinking layers, not physical connections here Page 43

Stacked layers Where does communication go? Internet Net A Net B Net C Between the subnets? Or through the common layer? Page 44

Subnet to subnet Common interchange Translate to common Relay common Translate back Page 45

Subnet to subnet Pros: Reduces number of translators Compared to direct translation Sub-layers can be tuned to native contexts Cons: Twice translated Like two-step dovetailing Page 46

Staying in the waist Common as primary Use sub-layers as a transit Page 47

Staying in the waist Pros: Sub-layers for local environments, local relaying Translate just the name Use sub-layer as a transit communications service Cons: Enables communication only at the common layer Page 48

Conclusion: stacking as transit wins Avoids translation Except for the names And content, as necessary, at the endpoints Supports localization Using subnets as transits Page 49

A layer vs. layering A layer (one layer) A homogeneous network Largest group that can communicate via transitive closure with one protocol and one name space Largest network with one protocol and one namespace Layering (stacked transit using multiple layers) Creating a homogeneous network from a set of heterogeneous networks Page 50

Stacking via transit Transiting other layers A layer as unifying different networks The basic definition Translating capabilities A layer as an adapter between networks Takes one capability and turns it into another Page 51

Services provided by a layer Communication Shared state coordination Any computable function High-level capabilities built from shared state Typically that assist communication itself Page 52

Useful functions Emulation Act like a single physical link Splitting Large messages over smaller ones Joining Pack many small messages in one larger one Correction Repair the impact of loss, error, reordering Page 53

What defines a layer? WHO can communicate Largest group using a single set of rules HOW they use communication Services that users can apply to problems 2-party? Multiparty? Reliable? Ordered? Like a wire or like packages? HOW they interact with heterogeneous nets The kinds of other networks that a layer can group Page 54

Layers as building blocks Capabilities it provides Expectations it assumes Page 55

Layer expectations A layer is a common language But only for nets it can translate to Requirements: Name translation Identify party s local name, given common one Capability translation Use the lower net as a communications link Page 56

Layer capabilities A layer provides a common language A common interface A common set of services With which users can apply Expectations: Name Users must identify party s common name Capability Users must be able to use the services provided Page 57

Things you can do with layers Unify heterogeneous networks As we ve seen Bridge communications between other layers Create new services Does not have to join heterogeneous nets Can bridge capabilities between other layers Page 58

Glue layers Adapt capabilities Lossy -> reliable Reordered -> ordered Jittery -> periodic Stream -> message Message -> stream Multiple stream -> 1 1 stream -> multiple Page 59

How layers interact Common (upper) layer Translates its (common) names to that of the lower layer Creates its own (common) services from those provided by the lower Various (lower) layers Expect upper layer to use its names Expect upper layer to use its services Provides some set of communications capabilities within its network Page 60

Things that make you go hmm Upper layer also Expects its names Provides its services Lower layer also Translates its names Creates its services Page 61

What s the difference? Common layer Each heterogeneous layer Page 62

So what really defines a layer? Largest set that can communicate with: Single name space Single protocol A network with: Common expectations Common capabilities Every layer is its own one ring Page 63

Examples of layers Lowest (touch the physical layer) Ethernet, ATM Above Ethernet IP, ARP, PPPoE Above IP TCP, UDP, ICMP Above TCP HTTP, SMTP, IMAP, DNS, NFS, NTP Page 64

Different expectations and capabilities HTTP Provides request/response messaging Expects reliable, ordered stream of bytes TCP Provides reliable, ordered stream of bytes Expects messaging Delivered within 2 minutes if delivered If lost, because of congestion (competition) Mostly without errors Ethernet Provides messaging without errors (can be lost) Expects a shared wire (originally) Page 65

Messages inside messages Frame Ethernet IP TCP» HTTP Page 66

Messages spread across messages IP datagram = IP fragment 1 IP fragment 2 Page 67

Summary Layering allows us to create powerful networks from components Stacking layers for transit Transit is the win for heterogeneity Layers have requirements What they expect Layers create capabilities What they provide Page 68