Basic Concepts EE 122, Fall 2013 Sylvia Ratnasamy

Slides:



Advertisements
Similar presentations
Introduction 2 1: Introduction.
Advertisements

Layering and the network layer CS168, Fall 2014 Sylvia Ratnasamy
20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
NETWORK LAYER (1) T.Najah AlSubaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
1 Packet Switching, Layer Models and Protocol Suites Data Communications and Computer Networks Asst. Prof. Chaiporn Jaikaeo, Ph.D.
1 If the Internet is the answer, then what was the question? EE122 Fall 2012 Scott Shenker Materials with thanks.
COS 461 Fall 1997 Networks and Protocols u networks and protocols –definitions –motivation –history u protocol hierarchy –reasons for layering –quick tour.
Intro (continued) and Design Principles Nick Feamster CS 3251: Computer Networking I Spring 2013.
James 1:5 If any of you lacks wisdom, he should ask God, who gives generously to all without finding fault, and it will be given to him.
Lect-2: BasicsComputer Networks : An Introduction to Computer Networks Handout #2: Foundations and Basic Concepts Additional Reading Text book:
Lecture 2 Introduction 1-1 Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  circuit.
CMPE 80N - Introduction to Networks and the Internet 1 CMPE 80N Winter 2004 Lecture 13 Introduction to Networks and the Internet.
1 An Introduction to Computer Networks Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans Kaashoek, Hari Balakrishnan, and Sam Madden Prof.
1 Link Layer & Network Layer Some slides are from lectures by Nick Mckeown, Ion Stoica, Frans Kaashoek, Hari Balakrishnan, and Sam Madden Prof. Dina Katabi.
Lecture Internet Overview: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  circuit switching,
Lecture Internet Overview: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  circuit switching,
Ch. 28 Q and A IS 333 Spring Q1 Q: What is network latency? 1.Changes in delay and duration of the changes 2.time required to transfer data across.
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Gursharan Singh Tatla Transport Layer 16-May
Lecture 1, 1Spring 2003, COM1337/3501Computer Communication Networks Rajmohan Rajaraman COM1337/3501 Textbook: Computer Networks: A Systems Approach, L.
Plan of attack ‣ What is a network made of? ‣ How is it shared? ‣ How do we evaluate a network? ‣ How is communication organized? 1.
1: Introduction1 Part I: Introduction Goal: r get context, overview, “feel” of networking r more depth, detail later in course r approach: m descriptive.
1 Internet Design: Goals and Principles EE122 Fall 2012 Scott Shenker Materials with thanks to Jennifer Rexford,
Data Communications and Networking
Review: – computer networks – topology: pair-wise connection, point-to-point networks and broadcast networks – switching techniques packet switching and.
Presentation on Osi & TCP/IP MODEL
Lecture 2 TCP/IP Protocol Suite Reference: TCP/IP Protocol Suite, 4 th Edition (chapter 2) 1.
Introduction 1-1 Chapter 1: roadmap 1.1 What is the Internet? 1.2 Network edge  end systems, access networks, links 1.3 Network core  circuit switching,
Slides originally from Professor Williamson at U Calgary1-1 Introduction Part II  Network Core  Delay & Loss in Packet-switched Networks  Structure.
CS 447 Networks and Data Communication
Review of Networking Concepts Part 1: Switching Networks
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Introduction Slide 1 A Communications Model Source: generates.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
7-1 Last time □ Wireless link-layer ♦ Introduction Wireless hosts, base stations, wireless links ♦ Characteristics of wireless links Signal strength, interference,
ECE 466 Switching Networks. ECE 466 A communication network provides a scalable solution to connect a large number of end systems Communication Networks.
Chapter 1 Introduction Circuit/Packet Switching Protocols Computer Networking: A Top Down Approach, 5 th edition. Jim Kurose, Keith Ross Addison-Wesley,
TELE202 Lecture 5 Packet switching in WAN 1 Lecturer Dr Z. Huang Overview ¥Last Lectures »C programming »Source: ¥This Lecture »Packet switching in Wide.
RSC Part I: Introduction Redes y Servicios de Comunicaciones Universidad Carlos III de Madrid These slides are, mainly, part of the companion slides to.
Basic Concepts CS 438: Spring 2014 Matthew Caesar
TCOM 509 – Internet Protocols (TCP/IP) Lecture 03_b Protocol Layering Instructor: Dr. Li-Chuan Chen Date: 09/15/2003 Based in part upon slides of Prof.
Lecture91 Administrative Things r Return homework # 1 r Review some problems in homework # 1 r Questions about grading? Yona r WebCT for CSE245 is working!
Computer Networks with Internet Technology William Stallings
20.1 Chapter 20 Network Layer: Internet Protocol Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
CS 453 Computer Networks Lecture 18 Introduction to Layer 3 Network Layer.
ICOM 6115©Manuel Rodriguez-Martinez ICOM 6115 – Computer Networks and the WWW Manuel Rodriguez-Martinez, Ph.D. Lecture 21.
Packet switching network Data is divided into packets. Transfer of information as payload in data packets Packets undergo random delays & possible loss.
Networking Fundamentals. Basics Network – collection of nodes and links that cooperate for communication Nodes – computer systems –Internal (routers,
William Stallings Data and Computer Communications
Networking Basics CCNA 1 Chapter 11.
Lecture # 03 Switching Course Instructor: Engr. Sana Ziafat.
Taking Stock ‣ What is a network made of? ‣ How is it shared? ‣ How do we evaluate a network? ‣ How is communication architected? 1.
Protocol Layering Chapter 11.
CSE 413: Computer Network Circuit Switching and Packet Switching Networks Md. Kamrul Hasan
1 Transport Layer: Basics Outline Intro to transport UDP Congestion control basics.
1 Switching and Forwarding Sections Connecting More Than Two Hosts Multi-access link: Ethernet, wireless –Single physical link, shared by multiple.
Data Communication Networks Lec 13 and 14. Network Core- Packet Switching.
CSE 331: Introduction to Networks and Security Fall 2000 Instructor: Carl A. Gunter Slide Set 2.
Lecture # 3: WAN Data Communication Network L.Rania Ahmed Tabeidi.
Introduction 1-1 source application transport network link physical HtHt HnHn M segment HtHt datagram destination application transport network link physical.
2003 컴퓨터 통신 1 Foundation # 컴퓨터 통신 2 Outline A Detailed FTP Example Layering Packet Switching and Circuit Switching Some terms –Data rate, “Bandwidth”
: An Introduction to Computer Networks Handout #2: Foundations and Basic Concepts Additional Reading Text book: Chap. 3.1 Homepage
Slides taken from: Computer Networking by Kurose and Ross
Transport Layer Unit 5.
Chapter 20 Network Layer: Internet Protocol
Network Core and QoS.
Data Communication Networks
Net 323 D: Networks Protocols
Networking Basics: A Review
Chapter 3 Transport Layer
Network Core and QoS.
Presentation transcript:

Basic Concepts EE 122, Fall 2013 Sylvia Ratnasamy

Administrivia Instructional account forms have been sent by to registered students (not wait list) you should have them by now and if you don’t Size of discussion sections raised to 45 Reminder: sections start this Friday

Today Basic concepts links packet delays circuit switching packet (datagram) switching Layering (if we have time)

Nodes and Links AB

Properties of Links Bandwidth (capacity): “width” of the link number of bits sent (or received) per unit time (bits/sec or bps) Latency (delay): “length” of the link propagation time for data to travel along the link (seconds) Bandwidth-Delay Product (BDP): “volume” of the link amount of data that can be “in flight” at any time propagation delay × bits/time = total bits in link bandwidth Latency delay x bandwidth

Examples of Bandwidth-Delay Same city over a slow link: BW~100Mbps Latency~0.1msec BDP ~ 10,000bits ~ 1.25KBytes Cross-country over fast link: BW~10Gbps Latency~10msec BDP ~ 10 8 bits ~ 12.5GBytes

time=0 Packet Delay Sending a 100B packet from A to B? AB 100Byte packet Time 1Mbps, 1ms Time to transmit one bit = 1/10 6 s Time to transmit 800 bits=800x1/10 6 s Time when that bit reaches B = 1/ /10 3 s The last bit reaches B at (800x1/10 6 )+1/10 3 s = 1.8ms Packet Delay = Transmission Delay + Propagation Delay Packet Delay = (Packet Size ÷ Link Bandwidth) + Link Latency

Packet Delay Sending a 100B packet from A to B? AB 100Byte packet Time 1Mbps, 1ms 1Gbps, 1ms? The last bit reaches B at (800x1/10 6 )+1/10 3 s = 1.8ms 1GB file in 100B packets The last bit reaches B at (800x1/10 9 )+1/10 3 s = ms The last bit in the file reaches B at (10 7 x800x1/10 9 )+1/10 3 s = 8001ms 10 7 x 100B packets

Packet Delay: The “pipe” view Sending 100B packets from A to B? AB 100Byte packet Time 1Mbps, 10ms 100Byte packet time  BW  pkt tx time

Packet Delay: The “pipe” view Sending 100B packets from A to B? 1Mbps, 10ms (BDP=10,000) time  BW  10Mbps, 1ms (BDP=10,000) time  BW  1Mbps, 5ms (BDP=5,000) time  BW 

Packet Delay: The “pipe” view Sending 100B packets from A to B? 1Mbps, 10ms (BDP=10,000) time  BW  200B? 1Mbps, 10ms (BDP=10,000) time  BW 

Any questions?

Nodes and Links AB

What if we have more nodes? One link for every node? Need a scalable way to interconnect nodes

What if I have more nodes? One link for all nodes? This is a broadcast network

Solution: A switched network Nodes share network link resources How is this sharing implemented?

Two forms of switched networks Circuit switching (used in the telephone network) Packet switching (used in the Internet)

Circuit switching (1) Node A sends a reservation request (2) Interior switches establish a connection -- i.e., “circuit” (3) A starts sending data (4) A sends a “teardown circuit” message Idea: source reserves network capacity along a path A B 10Mb/s?

Circuit Switching: Sharing a Link Time-division Each circuit allocated certain time slots Frequency-division Each circuit allocated certain frequencies time frequency time

Time-Division Multiplexing/Demultiplexing Time divided into frames; frames into slots Relative slot position inside a frame determines to which conversation data belongs e.g., slot 0 belongs to orange conversation Slots are reserved (released) during circuit setup (teardown) If a conversation does not use its circuit capacity is lost! Frames Slots =

time Timing in Circuit Switching

time Timing in Circuit Switching

time Timing in Circuit Switching

time Timing in Circuit Switching

Circuit Establishment time Timing in Circuit Switching

Information Circuit Establishment Transfer time Timing in Circuit Switching

Information Circuit Establishment Transfer Circuit Teardown time Timing in Circuit Switching

Circuit switching: pros and cons Pros guaranteed performance fast transfer (once circuit is established) Cons

Information Circuit Establishment Transfer Circuit Teardown time Timing in Circuit Switching

Circuit switching: pros and cons Pros guaranteed performance fast transfer (once circuit is established) Cons wastes bandwidth if traffic is “bursty”

Information Circuit Establishment Transfer Circuit Teardown time Timing in Circuit Switching

Information Circuit Establishment Circuit Teardown time Data transfer Timing in Circuit Switching

Circuit switching: pros and cons Pros guaranteed performance fast transfers (once circuit is established) Cons wastes bandwidth if traffic is “bursty” connection setup time is overhead

Circuit switching A B Circuit switching doesn’t “route around trouble”

Circuit switching: pros and cons Pros guaranteed performance fast transfers (once circuit is established) Cons wastes bandwidth if traffic is “bursty” connection setup time is overhead recovery from failure is slow

Circuit switching: pros and cons Pros guaranteed performance fast transfers (once circuit is established) Cons wastes bandwidth if traffic is “bursty” connection setup adds delay recovery from failure is slow [in the telephone network] designed for a specific app

Two forms of switched networks Circuit switching (e.g., telephone network) Packet switching (e.g., Internet)

Packet Switching Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload”* © Nick McKeown Internet Address 2.Age 3.Checksum to protect header Header Data headerpayload

Packet Switching Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload”* payload is the data being carried header holds instructions to the network for how to handle packet (think of the header as an interface!)

Packet Switching Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload” Switches “forward” packets based on their headers

Switches forward packets to MIT to UW UCB to NYU DestinationNext Hop UCB4 UW5 MIT2 NYU3 Forwarding Table MIT switch#2 switch#5 switch#3 switch#4

time Timing in Packet Switching payl oad hdrhdr What about the time to process the packet at the switch? We’ll assume it’s relatively negligible (mostly true)

time Timing in Packet Switching payl oad hdrhdr Could the switch start transmitting as soon as it has processed the header? Yes! This would be called a “cut through” switch

time Timing in Packet Switching payl oad hdrhdr We will always assume a switch processes/forwards a packet after it has received it entirely. This is called “store and forward” switching

Packet Switching Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload” Switches “forward” packets based on their headers

Packet Switching Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload” Switches “forward” packets based on their headers Each packet travels independently no notion of packets belonging to a “circuit”

Packet Switching Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload” Switches “forward” packets based on their headers Each packet travels independently No link resources are reserved in advance. Instead packet switching leverages statistical multiplexing

Statistical Multiplexing

Data Rate 1 Data Rate 2 Data Rate 3 Three Flows with Bursty Traffic Time Capacity

Data Rate 1 Data Rate 2 Data Rate 3 When Each Flow Gets 1/3 rd of Capacity Time Frequent Overloading

When Flows Share Total Capacity Time No Overloading Statistical multiplexing relies on the assumption that not all flows burst at the same time. Very similar to insurance, and has same failure case

Data Rate 1 Data Rate 2 Data Rate 3 Three Flows with Bursty Traffic Time Capacity

Data Rate 1 Data Rate 2 Data Rate 3 Three Flows with Bursty Traffic Time Capacity

Data Rate >> Capacity Three Flows with Bursty Traffic Time Capacity What do we do under overload?

Statistical multiplexing: pipe view time  BW  pkt tx time

Statistical multiplexing: pipe view

No Overload !

Statistical multiplexing: pipe view Transient Overload Not a rare event! Queue

Statistical multiplexing: pipe view Transient Overload Not a rare event! Queue

Statistical multiplexing: pipe view Transient Overload Not a rare event! Queue

Statistical multiplexing: pipe view Transient Overload Not a rare event! Queue

Statistical multiplexing: pipe view Transient Overload Not a rare event! Queue

Statistical multiplexing: pipe view Queue Transient Overload Not a rare event! Queues absorb transient bursts!

Statistical multiplexing: pipe view What about persistent overload? Will eventually drop packets

Queues introduce queuing delays Recall, packet delay = tx delay + prop delay With queues (stat. muxing) packet delay = tx delay + prop delay + queuing delay Queuing delay caused by “packet interference” Made worse at high load less “idle time” to absorb bursts think about traffic jams at rush hour

Basic Queuing Theory Terminology Arrival process: how packets arrive Average rate A Peak rate P Service process: transmission times Average transmission time (function of packet size) W: average time packets wait in the queue W for “waiting time” L: average number of packets waiting in the queue L for “length of queue” Two different quantities

Little’s Law (1961) L = A x W Compute L: count packets in queue every second How often does a single packet get counted? W times Why do you care? Easy to compute L, harder to compute W

Statistical Multiplexing is a recurrent theme in computer science Phone network rather than dedicated lines Ancient history Packet switching rather than circuits Today’s lecture Cloud computing Shared datacenters, rather than single PCs

Packet Switching Data is sent as chunks of formatted bits (Packets) Packets consist of a “header” and “payload” Switches “forward” packets based on their headers Each packet travels independently No link resources are reserved in advance. Instead packet switching leverages statistical multiplexing allows efficient use of resources but introduces queues and queuing delays

Circuit switching: pros and cons Pros guaranteed performance fast transfers (once circuit is established) Cons wastes bandwidth if traffic is “bursty” connection setup adds delay recovery from failure is slow

Packet switching: pros and cons Cons no guaranteed performance header overhead per packet queues and queuing delays Pros efficient use of bandwidth (stat. muxing) no overhead due to connection setup resilient -- can `route around trouble’

Recap: you should leave this lecture with… A sense of how the basic `plumbing’ works links and switches packet delays (tx, propagation, queuing) statistical multiplexing and queues circuit vs. packet switching Next: back to lofty principles protocols and layering

Layering

Three (networking) design steps Break down the problem into tasks Organize these tasks Decide who does what

Tasks in Networking What does it take to send packets across country? Simplistic decomposition: Task 1: send along a single wire Task 2: stitch these together to go across country This gives idea of what I mean by decomposition

Tasks in Networking (bottom up) Bits on wire Packets on wire Deliver packets within local network Deliver packets across global network Ensure that packets get to the destination Do something with the data

Resulting Modules Bits on wire (Physical) Packets on wire (Physical) Delivery packets within local network (Datalink) Deliver packets across global network (Network) Ensure that packets get to the dst. (Transport) Do something with the data (Application) This is decomposition… Now, how do we organize these tasks?

Dear John, Your days are numbered. --Pat Inspiration… CEO A writes letter to CEO B Folds letter and hands it to administrative aide Aide: Puts letter in envelope with CEO B’s full name Takes to FedEx FedEx Office Puts letter in larger envelope Puts name and street address on FedEx envelope Puts package on FedEx delivery truck FedEx delivers to other company 78

CEO Aide FedEx CEO Aide FedEx LocationFedex Envelope (FE) The Path of the Letter 79 Letter Envelope Semantic Content Identity “Peers” on each side understand the same things No one else needs to Lowest level has most packaging

The Path Through FedEx 80 Truck Sorting Office Airport FE Sorting Office Airport Truck Sorting Office Airport Crate FE New Crate FE Higher “Stack” at Ends Partial “Stack” During Transit Deepest Packaging (Envelope+FE+Crate) at the Lowest Level of Transport Highest Level of “Transit Stack” is Routing

In the context of the Internet Applications …built on… Reliable (or unreliable) transport Best-effort global packet delivery Best-effort local packet delivery Physical transfer of bits

Three Observations Each layer: Depends on layer below Supports layer above Independent of others Multiple versions in layer Interfaces differ somewhat Components pick which lower-level protocol to use But only one IP layer Unifying protocol 82

Layering Crucial to Internet’s Success Reuse Hides underlying detail Innovation at each level can proceed in parallel Pursued by very different communities 83

Distributing Layers Across Network Layers are simple if only on a single machine Just stack of modules interacting with those above/below But we need to implement layers across machines Hosts Routers (switches) What gets implemented where? 84

What Gets Implemented on Host? Bits arrive on wire, must make it up to application Therefore, all layers must exist at host! 85

What Gets Implemented on Router? Bits arrive on wire Physical layer necessary Packets must be delivered to next-hop Datalink layer necessary Routers participate in global delivery Network layer necessary Routers don’t support reliable delivery Transport layer (and above) not supported 86

What Gets Implemented on Switches? Switches do what routers do, except they don’t participate in global delivery, just local delivery They only need to support Physical and Datalink Don’t need to support Network layer Won’t focus on the router/switch distinction When I say switch, I almost always mean router Almost all boxes support network layer these days 87

88 Complicated Diagram HTTP TCP IP Ethernet interface HTTP TCP IP Ethernet interface IP Ethernet interface Ethernet interface SONET interface SONET interface host router HTTP message TCP segment IP packet

89 Simple Diagram Lower three layers implemented everywhere Top two layers implemented only at hosts Transport Network Datalink Physical Transport Network Datalink Physical Network Datalink Physical Application Host AHost BRouter

90 Logical Communication Layers interacts with peer’s corresponding layer Transport Network Datalink Physical Transport Network Datalink Physical Network Datalink Physical Application Host AHost BRouter

91 Physical Communication Communication goes down to physical network Then from network peer to peer Then up to relevant layer Transport Network Datalink Physical Transport Network Datalink Physical Network Datalink Physical Application Host AHost BRouter

92 Layer Encapsulation Trans: Connection ID Net: Source/DestLink: Src/Dest Appl: Get index.html User AUser B Common case: 20 bytes TCP header + 20 bytes IP header + 14 bytes Ethernet header = 54 bytes overhead

Next time. Recap layering Protocols Introduction to the network layer