Internet Architecture



Similar documents
The OSI & Internet layering models

CSE 123b Communications Software

Lecture 2: Protocols and Layering. CSE 123: Computer Networks Stefan Savage

Lecture 1: Course Introduction" CSE 222A: Computer Communication Networks Alex C. Snoeren

Lecture 1: Course Introduction. CSE 123: Computer Networks Stefan Savage

Network Security TCP/IP Refresher

Ethernet. Ethernet. Network Devices

The OSI model has seven layers. The principles that were applied to arrive at the seven layers can be briefly summarized as follows:

Data Communication Networks and Converged Networks

Protocols. Packets. What's in an IP packet

EITF25 Internet Techniques and Applications L5: Wide Area Networks (WAN) Stefan Höst

Overview of Computer Networks

Lecture (02) Networking Model (TCP/IP) Networking Standard (OSI) (I)

Lecture 28: Internet Protocols

Internet Concepts. What is a Network?

Topics. Computer Networks. Let s Get Started! Computer Networks: Our Definition. How are Networks Used by Computers? Computer Network Components

Objectives of Lecture. Network Architecture. Protocols. Contents

Internet Control Protocols Reading: Chapter 3

IP address format: Dotted decimal notation:

Indian Institute of Technology Kharagpur. TCP/IP Part I. Prof Indranil Sengupta Computer Science and Engineering Indian Institute of Technology

SFWR 4C03: Computer Networks & Computer Security Jan 3-7, Lecturer: Kartik Krishnan Lecture 1-3

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX

(Refer Slide Time: 01:38 01:37)

Network Models OSI vs. TCP/IP

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

Computer Networks CS321

IP Networking. Overview. Networks Impact Daily Life. IP Networking - Part 1. How Networks Impact Daily Life. How Networks Impact Daily Life

ELEC3030 (EL336) Computer Networks. How Networks Differ. Differences that can occur at network layer, which makes internetworking difficult:

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2

The OSI and TCP/IP Models. Lesson 2

Data Communication and Computer Network

TCP/IP Protocol Suite. Marshal Miller Chris Chase

Architecture and Performance of the Internet

CS101 Lecture 19: Internetworking. What You ll Learn Today

Chapter 3: Review of Important Networking Concepts. Magda El Zarki Dept. of CS UC Irvine

Slide 1 Introduction cnds@napier 1 Lecture 6 (Network Layer)

Internetworking. Problem: There is more than one network (heterogeneity & scale)

architecture: what the pieces are and how they fit together names and addresses: what's your name and number?

Data Communication Networks

IST 220 Exam 3 Notes Prepared by Dan Veltri

CPS221 Lecture: Layered Network Architecture

Communications and Computer Networks

UPPER LAYER SWITCHING

Kick starting science...

CCNA 1: Networking Basics. Cisco Networking Academy Program Version 3.0

Protocol Data Units and Encapsulation

Guide to TCP/IP, Third Edition. Chapter 3: Data Link and Network Layer TCP/IP Protocols

Computer Networks III

Introduction to TCP/IP

Data Communication Networks Introduction

Internet Protocol Address

LAN Switching and VLANs

Chapter 3. TCP/IP Networks. 3.1 Internet Protocol version 4 (IPv4)

Networking Test 4 Study Guide

Computer Networks. Definition of LAN. Connection of Network. Key Points of LAN. Lecture 06 Connecting Networks

RARP: Reverse Address Resolution Protocol

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

CSE 3461 / 5461: Computer Networking & Internet Technologies

Chapter 9. IP Secure

Layered Architectures and Applications

Asynchronous Transfer Mode: ATM. ATM architecture. ATM: network or link layer? ATM Adaptation Layer (AAL)

Overview. Lecture 16: IP variations: IPv6, multicast, anycast. I think we have a problem. IPv6. IPv6 Key Features

20-CS X Network Security Spring, An Introduction To. Network Security. Week 1. January 7

Internet Working 5 th lecture. Chair of Communication Systems Department of Applied Sciences University of Freiburg 2004

Overview of Routing between Virtual LANs

Protocols and Architecture. Protocol Architecture.

Transport and Network Layer

Introduction To Computer Networking

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

Internet Protocol: IP packet headers. vendredi 18 octobre 13

CCNA R&S: Introduction to Networks. Chapter 5: Ethernet

Interconnection of Heterogeneous Networks. Internetworking. Service model. Addressing Address mapping Automatic host configuration

Link Layer. 5.6 Hubs and switches 5.7 PPP 5.8 Link Virtualization: ATM and MPLS

Internet Protocols. Addressing & Services. Updated:

Introduction to IPv6 and Benefits of IPv6

CS5008: Internet Computing

Network layer" 1DT066! Distributed Information Systems!! Chapter 4" Network Layer!! goals: "

Network Technologies

OSI Reference Model: An Overview

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

Computer Networks Vs. Distributed Systems

Mathatma Gandhi University

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup.

Agenda. Distributed System Structures. Why Distributed Systems? Motivation

EE4367 Telecom. Switching & Transmission. Prof. Murat Torlak

The internetworking solution of the Internet. Single networks. The Internet approach to internetworking. Protocol stacks in the Internet

CSET 4750 Computer Networks and Data Communications (4 semester credit hours) CSET Required IT Required

Overview of TCP/IP. TCP/IP and Internet

FIREWALLS & NETWORK SECURITY with Intrusion Detection and VPNs, 2 nd ed. Chapter 2 An Introduction to Networking

ESSENTIALS. Understanding Ethernet Switches and Routers. April 2011 VOLUME 3 ISSUE 1 A TECHNICAL SUPPLEMENT TO CONTROL NETWORK

IPv6 Fundamentals Ch t ap 1 er I : ntroducti ti t on I o P IPv6 Copyright Cisco Academy Yannis Xydas

How To Design A Network For A Network (Netnet)

Introduction Chapter 1. Uses of Computer Networks

Final for ECE374 05/06/13 Solution!!

Lecture 8. IP Fundamentals

Address Resolution Protocol (ARP), Reverse ARP, Internet Protocol (IP)

Computer Networks - Xarxes de Computadors

CSE 3214: Computer Network Protocols and Applications

CS 640: Introduction to Computer Networks. Goals of This Class. Goal of Networking. Page 1. Understand principles and practice of networking

Internet Packets. Forwarding Datagrams

Transcription:

Internet Architecture CSE 561 Lecture 2, Spring 2002 David Wetherall The OSI layering Model End host Application Presentation Session Top four layers are end-to-end Lower 3 layers are peer-to-peer End host Application Presentation Session Transport Network Network node Network Network node Network Transport Network link link link link Physical Physical Physical Physical djw // CSE 561, Spring 2002, with credit to savage L2.2 1

Layer encapsulation Layer N+1 packet becomes Layer N data End host Application End host Application P Presentation Presentation P S Session Session S T Transport Transport T N Network Network N D link link D Ph Physical Physical Ph djw // CSE 561, Spring 2002, with credit to savage L2.3 Layer Encapsulation (2) Typical Web packet Ethernet Hdr IP Hdr TCP Hdr HTTP Hdr Payload (Web object) Start of packet End of packet Notice that layers add overhead Space (headers), effective bandwidth Time (processing headers, peeling the onion), latency djw // CSE 561, Spring 2002, with credit to savage L2.4 2

The Internet layering model Application (Web,FTP,SMTP) Transport (TCP,UDP) Network (IP) link (Ethernet,802.11) So-called hourglass model One network layer protocol Significant diversity at other layers No presentation or session layers Implementations more important than interfaces Physical (100BaseTX,1000BaseSX) djw // CSE 561, Spring 2002, with credit to savage L2.5 Layering by example ROUGHLY, what happens when I click on a Web page from UCSD? My computer www.yahoo.com? Internet djw // CSE 561, Spring 2002, with credit to savage L2.6 3

Application layer (HTTP) Turn click into HTTP request GET http://www.yahoo.com/r/mp HTTP/1.1 Host: www.yahoo.com Connection:keep-alive djw // CSE 561, Spring 2002, with credit to savage L2.7 Application layer? Name resolution (DNS) Where is www.yahoo.com? My computer (132.239.9.64) What s the address for www.yahoo.com Local DNS server (132.239.51.18) Oh, you can find it at 64.58.76.177 djw // CSE 561, Spring 2002, with credit to savage L2.8 4

Transport layer (TCP) Break message into packets (TCP segments) Should be delivered reliably & in-order GET http://www.yahoo.com/r/mp HTTP/1.1 Host: www.yahoo.com Connection:keep-alive 3 yahoo.c 2 p://www. 1 GET htt and let me know when they got there djw // CSE 561, Spring 2002, with credit to savage L2.9 Network layer: IP Addressing Address each packet so it can traverse network and arrive at host My computer (132.239.9.64) www.yahoo.com (64.58.76.177) Destination Source 64.58.76.177 132.239.9.641 GET htt djw // CSE 561, Spring 2002, with credit to savage L2.10 5

Network layer: IP Routing Each router forwards packet towards destination UCSD Sprint UUNet www.yahoo.com (64.58.76.177) Qwest AT&T djw // CSE 561, Spring 2002, with credit to savage L2.11 link layer (Ethernet) Too boring for a picture (sorry) Break message into frames Media Access Control (MAC) Send frame djw // CSE 561, Spring 2002, with credit to savage L2.12 6

Physical layer 2.4Ghz Radio DS/FH Radio (1-11Mbps) 802.11b Wireless Access Point Cat5 Cable (4 wires) 100Base TX Ethernet 100Mbps Ethernet switch/router To campus backbone 62.5/125um 850nm MMF 1000BaseSX Ethernet 1000Mbps djw // CSE 561, Spring 2002, with credit to savage L2.13 Clark88: Design Philosophy of the DARPA Internet Protocols Unique paper Not many papers explaining the motivation and reasoning that went into the design of systems that we take for granted Note that this was written 15 years after the project began And the paper itself is already 13 years old! The setting Multiple research and military networks How do we connect them so that they can talk to each other? Hard to imagine, but this was before LANs djw // CSE 561, Spring 2002, with credit to savage L2.14 7

Some brief history DARPAnet (circa 1968*) DARPA funded a lot of University mainframes Wanted to saved money by sharing them Bob Taylor, Larry Roberts to make it happen Internetworking/Internet (circa1978*) SATNet, ARPAnet, Packet radio, Ethernet built Each with a different network functionality Painful to make them communicate Cerf, Postel and Cohen split network functionality into single shared protocol inventing internetworking * Plug: Where Wizards Stay Up Late by Hafner and Lyon is the best account of early Internet History I ve seen. djw // CSE 561, Spring 2002, with credit to savage L2.15 Meta-points The Internet was designed There is no natural law that says TCP/IP, network routing, etc.. had to look the way it does now It could well have been done differently It was guided by a particular set of design goals The Internet evolves The Internet today is not the same Internet as 1988, 1973 TCP/IP have changed considerably over the years We re using IPv4, with IPv6 (maybe) being deployed The design goals are different now than yesterday djw // CSE 561, Spring 2002, with credit to savage L2.16 8

Primary Goal: Connect Stuff Effective technique for multiplexed utilization of existing interconnected networks Minimal assumptions about underlying networks No support for broadcast, multicast, real-time, reliability Extra support could actually get in the way (X.25 example) Packet switched, store and forward Matched application needs, nets already packet switched Enables efficient resource sharing/high utilization Gateways interconnect networks Routers/Switches in today s nomenclature djw // CSE 561, Spring 2002, with credit to savage L2.17 Why is this hard? Heterogeneity Addressing Each network media has a different addressing scheme Bandwidth Modems to terabits Latency Seconds to nanoseconds Packet size Dozens to thousands of bytes Loss rates Differ by many orders of magnitude Service guarantees Send and pray vs reserved bandwidth djw // CSE 561, Spring 2002, with credit to savage L2.18 9

Internetwork with a common network layer All nets communicate using a common format Internet: IP over everything To talk across networks, you send IP packets Internal to a network, can use whatever you want Ethernet, ATM, etc. Alternative: translate packets between different networks Convert Ethernet to ATM Convert IP to OSI CLNP X.25 to NetBEUI djw // CSE 561, Spring 2002, with credit to savage L2.19 Heterogeneity: the power of IP Separate physical networks communicate to form a single logical network Router data packet Ethernet ATM data packet HTTP TCP IP Eth HTTP TCP IP ATM djw // CSE 561, Spring 2002, with credit to savage L2.20 10

Goal #2: Survivability Internet Assume anything can fail between two end points Fate-sharing (put state with entity that requires it) Direct consequence of end-to-end argument Smart end-points, dumb routers, and packet switching No need to manage connection state in routers; no replication Key benefit is that it s proved easier to scale By contrast: POTS (the other global network) Ultra reliable switches with self-healing Hardware switch over in the middle of a phone call djw // CSE 561, Spring 2002, with credit to savage L2.21 Survivability Implications End points maintain all essential state Routers are stateless ( soft state ) End points responsible for recovering from failures Host machines are trusted Have to rely upon hosts to implement the protocols correctly For performance as well as correctness Easy to be malicious Ex: source addresses (everything in an IP packet) are trusted (IP spoofing) Can be difficult to determine source of failures Not much feedback from network back to end point Makes performance optimizations more difficult Quality of Service Hard to control resource allocations at a higher level djw // CSE 561, Spring 2002, with credit to savage L2.22 11

Goal #3: Types of Service Originally single protocol (NCP->TCP) One set of service semantics not right for all applications Split IP and TCP, and built other services Common denominator: IP Best effort datagram service (send and pray) Other services built on top Reliable data stream (TCP) Unreliable message service (UDP) Real-time delivery: network support? Multicast: network support? djw // CSE 561, Spring 2002, with credit to savage L2.23 Key concepts and discussion Packet switching vs. circuit switching, virtual circuits Fate sharing Soft-state and flows The IP hourglass How have the design goals changed? User empowerment vs. ISPs Trust, accountability, multiple competing parties, See: Clark and Blumenthal, Rethinking the Design of the Internet: end to end arguments vs. the brave new world djw // CSE 561, Spring 2002, with credit to savage L2.24 12

Saltzer84: End-to-End Argument Key question: Where should functionality be placed in the network architecture? End-to-end argument Functionality should be implemented at a lower layer iff it can be correctly and completely implemented there Incomplete versions of a function can be used as a performance enhancement, but not for correctness Early, and still relevant, example ARPAnet provided reliable link transfers between switches Packets could still get corrupted on host-switch link, or inside of the switches Hence, still need reliability at higher layers djw // CSE 561, Spring 2002, with credit to savage L2.25 Reliable File Transfer From server disk over network to client disk Many places where errors can be introduced Disk can introduce bit errors Host I/O bus can introduce bit errors Packets can be corrupted, dropped, reordered at any node Conclusion Still need integrity checks on entire file, at application level, not per packet or per hop Impossible to design perfect layers because perfect requires support from higher layers djw // CSE 561, Spring 2002, with credit to savage L2.26 13

Example: Reliable File Transfer Host A Host B 2 App 3 App 5 6 Disk 1 OS 4 OS 7 Disk Where can data be corrected? How to tell if data has been corrupted? Is there any value in lower-layer reliability? djw // CSE 561, Spring 2002, with credit to savage L2.27 Performance Optimizations Functionality at lower layer can enhance performance Not required for correct operation Can be required for reasonably efficient operation Back of the envelope N hops (average hops on Internet route = 15 hops) Prob(corrupted packet per link) = p Prob(packet lost end to end) p = 0.0001% -> Prob(e2e loss) = 0.0015% p = 1% -> Prob(e2e loss) = 14% Tradeoff: Higher layers have more information about service needs Lower layers have more information about network capabilities djw // CSE 561, Spring 2002, with credit to savage L2.28 14

E2E Discussion E2E and network transparency Extensibility? Engineering tradeoffs versus rules Finding the endpoints Performance tradeoffs What belongs in the network? Multicast? Firewalls, NAT boxes? Web proxy caches? djw // CSE 561, Spring 2002, with credit to savage L2.29 15