Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Review of Networking Concepts (Part 2) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute.

Slides:



Advertisements
Similar presentations
Cognitive Radio Communications and Networks: Principles and Practice By A. M. Wyglinski, M. Nekovee, Y. T. Hou (Elsevier, December 2009) 1 Chapter 9 Fundamentals.
Advertisements

1 IK1500 Communication Systems IK1330 Lecture 3: Networking Anders Västberg
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Informal Quiz 7: QoS->Optical T F  Strong authentication involves sending shared secrets.
A Flexible Model for Resource Management in Virtual Private Networks Presenter: Huang, Rigao Kang, Yuefang.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #01: SOLUTIONS Shivkumar Kalyanaraman: GOOGLE: “Shiv.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #07 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #11 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side, delivers.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
ATM Networks An Engineering Approach to Computer Networking.
10 - Network Layer. Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6961:Internet Protocols Quiz 1: Solutions Time: 60 min (strictly enforced) Points: 50 YOUR.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Informal Quiz 1 True or False? T F  The structure of MAC addresses facilitates performance.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6961:Internet Protocols Quiz 1 Time: 60 min (strictly enforced) Points: 50 YOUR NAME: Be.
Shivkumar KalyanaramanRensselaer Q1-1 ECSE-6600: Internet Protocols Quiz 1 Time: 60 min (strictly enforced) Points: 50 YOUR NAME: Be brief, but DO NOT.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 01-1 System Design and Performance Analysis Concepts Shivkumar Kalyanaraman Rensselaer Polytechnic.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Review of Networking and Design Concepts There are two ways of constructing a software design:
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Introduction to Experiment Design Shiv Kalyanaraman Rensselaer Polytechnic Institute
Networking Support In Java Nelson Padua-Perez Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
EE 4272Spring, 2003 Protocols & Architecture A Protocol Architecture is the layered structure of hardware & software that supports the exchange of data.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Informal Quiz 6: IPv6, QoS T F  Given a constant set of resources, the bandwidth and delay.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1-1 Informal Quiz 1 True or False? T F  The reason why a computer database is better than a.
1 Lecture 24: Interconnection Networks Topics: communication latency, centralized and decentralized switches (Sections 8.1 – 8.5)
Data Communications Architecture Models. What is a Protocol? For two entities to communicate successfully, they must “speak the same language”. What is.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Informal Quiz 1 True or False? T F  The structure of MAC addresses facilitates scalability.
System Design An Engineering Approach to Computer Networking.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Introduction to Experiment Design Shiv Kalyanaraman Rensselaer Polytechnic Institute
Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar1 ECSE-4670: Computer Communication Networks (CCN) Informal Quiz 1 Shivkumar.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1-1 ECSE-4670: CCN Quiz 1: Solutions Time: 45 min (strictly enforced) Points: 50 YOUR NAME: Be.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6961:Internet Protocols Quiz 2 Time: 60 min (strictly enforced) Points: 50 { 5 questions,
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Internet Protocol (IP): Addressing and Forwarding Shivkumar Kalyanaraman Rensselaer Polytechnic.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4670: Computer Communication Networks (CCN) Informal Quiz 1 (Solutions) Shivkumar Kalyanaraman:
EE 4272Spring, 2003 Chapter 11. ATM and Frame Relay Overview of ATM Protocol Architecture ATM Logical Connections ATM Cells ATM Service Categories ATM.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Quiz 1 SOLUTIONS Time: 60 min (strictly enforced) Points: 50 YOUR.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Informal Quiz 2 True or False? T F  The IP checksum protects the entire IP datagram 
1 Instant replay  The semester was split into roughly four parts. —The 1st quarter covered instruction set architectures—the connection between software.
Data Communications and Networking
Review: – computer networks – topology: pair-wise connection, point-to-point networks and broadcast networks – switching techniques packet switching and.
جلسه دهم شبکه های کامپیوتری به نــــــــــــام خدا.
System Design An Engineering Approach to Computer Networking.
1 Next Few Classes Networking basics Protection & Security.
1 The Internet and Networked Multimedia. 2 Layering  Internet protocols are designed to work in layers, with each layer building on the facilities provided.
Data and Computer Communications Circuit Switching and Packet Switching.
William Stallings Data and Computer Communications 7 th Edition Chapter 1 Data Communications and Networks Overview.
Ch 1. Computer Networks and the Internet Myungchul Kim
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 A TCP Friendly Traffic Marker for IP Differentiated Services Feroz Azeem, Shiv Kalyanaraman,
Computer Networks with Internet Technology William Stallings
CCNA 3 Week 4 Switching Concepts. Copyright © 2005 University of Bolton Introduction Lan design has moved away from using shared media, hubs and repeaters.
CS 8501 Networks-on-Chip (NoCs) Lukasz Szafaryn 15 FEB 10.
Computer Security Workshops Networking 101. Reasons To Know Networking In Regard to Computer Security To understand the flow of information on the Internet.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #14 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
Packet switching network Data is divided into packets. Transfer of information as payload in data packets Packets undergo random delays & possible loss.
Fall 2001CS 6401 Introduction to Networking Outline Networking History Statistical Multiplexing Performance Metrics.
Forwarding.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #01 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Protocols and Architecture Slide 1 Use of Standard Protocols.
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Ch 8. Switching. Switch  Devices that interconnected with each other  Connecting all nodes (like mesh network) is not cost-effective  Some topology.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Spring 2007, Exam 1 Time: 75 min (strictly enforced) Points: 50.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #09: SOLUTIONS Shivkumar Kalyanaraman: GOOGLE: “Shiv.
Introduction Computer networks: – definition – computer networks from the perspectives of users and designers – Evaluation criteria – Some concepts: –
Network Layer4-1 Chapter 4 Network Layer All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Review of Networking and Design Concepts (I): Brief Version Based in part upon slides of Prof.
Graciela Perera Department of Computer Science and Information Systems Slide 1 of 18 INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723 Graciela.
Practical Issues for Commercial Networks
Chapter 4 Network Layer Computer Networking: A Top Down Approach 5th edition. Jim Kurose, Keith Ross Addison-Wesley, April Network Layer.
ECSE-4670: Computer Communication Networks (CCN)
An Engineering Approach to Computer Networking
Network Basics and Architectures Neil Tang 09/05/2008
Presentation transcript:

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Review of Networking Concepts (Part 2) Shivkumar Kalyanaraman Rensselaer Polytechnic Institute

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 2 q General System Design techniques q Multiplexing, virtualization q Parallelization & pipelining q Batching, Randomization, q Locality and hierarchy, q Separating data & control, Extensibility q Performance q General System Design techniques q Multiplexing, virtualization q Parallelization & pipelining q Batching, Randomization, q Locality and hierarchy, q Separating data & control, Extensibility q Performance Overview

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 3 System Design Ideas q Resources: space, time, computation, money, labor. q Design a system to tradeoff cheaper resources against expensive ones (for a gain) q Protocol: q Specification: message semantics and actions taken while sending/receiving them. q Interface between layers is also called the architecture. Interface design crucial because interface outlives the technology used to implement the interface. q Resources: space, time, computation, money, labor. q Design a system to tradeoff cheaper resources against expensive ones (for a gain) q Protocol: q Specification: message semantics and actions taken while sending/receiving them. q Interface between layers is also called the architecture. Interface design crucial because interface outlives the technology used to implement the interface.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 4 System Design Ideas (contd) q Layering and encapsulation: q Allows a subroutine abstraction between a layer and its adjacent layers. q Layering allows pipelined implementations. q Application layer framing: packet format at every layer flexible and application-defined q Circuit-switching: resource (circuit) reservation followed by time-bound transmission. q Resources wasted if unused: expensive. q Straightforward to assure quality for voice (150 ms round trip delay, 64 Kbps bandwidth). q Layering and encapsulation: q Allows a subroutine abstraction between a layer and its adjacent layers. q Layering allows pipelined implementations. q Application layer framing: packet format at every layer flexible and application-defined q Circuit-switching: resource (circuit) reservation followed by time-bound transmission. q Resources wasted if unused: expensive. q Straightforward to assure quality for voice (150 ms round trip delay, 64 Kbps bandwidth).

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 5 Design Ideas (contd) q Time slots have no meta-data (header) associated. All relevant meta-data is inferred from timing and state installed during circuit/connection-setup. q Packet-switching: packets with meta-data (header) and store-and-forward type transmission. q Very efficient – can exploit multiplexing gains both in space and time (see below). q Cost: self-descriptive header per-packet, buffering and delays for applications. (tradeoff space and time for money) q Time slots have no meta-data (header) associated. All relevant meta-data is inferred from timing and state installed during circuit/connection-setup. q Packet-switching: packets with meta-data (header) and store-and-forward type transmission. q Very efficient – can exploit multiplexing gains both in space and time (see below). q Cost: self-descriptive header per-packet, buffering and delays for applications. (tradeoff space and time for money)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 6 Statistical Multiplexing q Reduce resource requirements by exploiting statistical knowledge of the system. Specifically, choose service rate such that: q average rate <= service rate <= peak rate q Muxing Gain = peak rate/service rate. q Cost: buffering, delays for applications. Tradeoff space and time resources for money q Useful only if peak rate differs significantly from average rate. q Reduce resource requirements by exploiting statistical knowledge of the system. Specifically, choose service rate such that: q average rate <= service rate <= peak rate q Muxing Gain = peak rate/service rate. q Cost: buffering, delays for applications. Tradeoff space and time resources for money q Useful only if peak rate differs significantly from average rate.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 7 Spatial and Temporal Multiplexing q Spatial muxing: Decrease resource sizing expecting smaller set of sources to be active at any time instant. q Cost: call-blocking (time) q Temporal muxing: even if many are active at any particular time instant, expect that the average over time will be much smaller. q Cost: buffers and meta-data (headers) in packets (space). q Note: We need packet switching to exploit both spatial and temporal gains. q Spatial muxing: Decrease resource sizing expecting smaller set of sources to be active at any time instant. q Cost: call-blocking (time) q Temporal muxing: even if many are active at any particular time instant, expect that the average over time will be much smaller. q Cost: buffers and meta-data (headers) in packets (space). q Note: We need packet switching to exploit both spatial and temporal gains.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 8 Virtualization q Virtualization: If Quality of Service (QoS) is met, the multiplexed shared resource may seem like a unshared virtual resource. q Multiplexing + indirection = virtualization, i.e., refer the virtual resource as if it were the physical resource itself. q Eg: virtual memory, virtual circuit, socket ports in BSD, telephone call. q Indirection requires binding and unbinding... q Virtualization: If Quality of Service (QoS) is met, the multiplexed shared resource may seem like a unshared virtual resource. q Multiplexing + indirection = virtualization, i.e., refer the virtual resource as if it were the physical resource itself. q Eg: virtual memory, virtual circuit, socket ports in BSD, telephone call. q Indirection requires binding and unbinding...

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 9 Pipelining and Parallelism q Goal: trading computation for (gain in) time. q Degree of parallelism: response time x throughput q Linear speedup: split up task into N independent subtasks, each requiring same amount of time. q Response time speedup of N. Throughput constant. Degree = N q Pipelining: Can't independently split subtasks - the subtasks may be serially dependent. q We can get speedup in throughput, but NOT in response time by using pipelining q Goal: trading computation for (gain in) time. q Degree of parallelism: response time x throughput q Linear speedup: split up task into N independent subtasks, each requiring same amount of time. q Response time speedup of N. Throughput constant. Degree = N q Pipelining: Can't independently split subtasks - the subtasks may be serially dependent. q We can get speedup in throughput, but NOT in response time by using pipelining

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 10 Batching q Goal: trading response time for (gain in) throughput q Batching is good when: q overhead per task increases less than linearly w/ number of tasks q time to accumulate a batch is not too long. q Response time can be traded off q Eg: Interrupt handling, Silly window avoidance in TCP q TCP also has triggers to avoid batching for telnet packets -- when response time is important q Goal: trading response time for (gain in) throughput q Batching is good when: q overhead per task increases less than linearly w/ number of tasks q time to accumulate a batch is not too long. q Response time can be traded off q Eg: Interrupt handling, Silly window avoidance in TCP q TCP also has triggers to avoid batching for telnet packets -- when response time is important

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 11 Randomization q Goal: Trade computation for (response) time q Used in breaking ties without biases or high probability of repeat of tie. q Eg: Use of exponential backoff in broadcast multiple access (ethernet), avoidance of ACK or NAK implosion in reliable multicast, or in some routing algorithms. q Goal: Trade computation for (response) time q Used in breaking ties without biases or high probability of repeat of tie. q Eg: Use of exponential backoff in broadcast multiple access (ethernet), avoidance of ACK or NAK implosion in reliable multicast, or in some routing algorithms.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 12 Locality and Hierarchy q Locality: Critical in exploiting smaller, faster resource to create an illusion of a larger, faster resource. q The larger, slower resource, is accessed when item is not found in the smaller resource. q Hierarchy: for scalability. q Loose hierarchies more efficient than strict ones (eg: children can interconnect). q Eg: managing name space or address allocation and forwarding. q Locality: Critical in exploiting smaller, faster resource to create an illusion of a larger, faster resource. q The larger, slower resource, is accessed when item is not found in the smaller resource. q Hierarchy: for scalability. q Loose hierarchies more efficient than strict ones (eg: children can interconnect). q Eg: managing name space or address allocation and forwarding.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 13 Miscellaneous ideas q Different types of hierarchy: topological, routing, traffic management, organizational. q Separating data and control: Per-packet actions are part of critical data path -- fewer control actions => greater forwarding speed. q Greater separation of data and control => need to install more state in the network. q Eg: separate CCIS channel in telephony. q Eg: separate routing protocols in Internet. q Extensibility: hooks for future growth. Eg: version field, reserved fields. q Different types of hierarchy: topological, routing, traffic management, organizational. q Separating data and control: Per-packet actions are part of critical data path -- fewer control actions => greater forwarding speed. q Greater separation of data and control => need to install more state in the network. q Eg: separate CCIS channel in telephony. q Eg: separate routing protocols in Internet. q Extensibility: hooks for future growth. Eg: version field, reserved fields.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 14 What is performance ? q How fast does computer A run MY program ? q Is machine A generally faster than machine B, and if so, how much faster ? q Performance is one of the three factors driving architecture (interface design) q Others: functionality demanded, technology available q How fast does computer A run MY program ? q Is machine A generally faster than machine B, and if so, how much faster ? q Performance is one of the three factors driving architecture (interface design) q Others: functionality demanded, technology available

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 15 Metrics and Parameters System Parameters or Factors Metrics q Parameters: clock rate, poisson inter-arrivals, ftp workload etc q Metrics: throughput, response time, queue length. q Metric choice should characterize the design tradeoffs (in space, time etc) adequately q Metrics are usually functions of many factors. Use of one factor alone may be misleading.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 16 More on Metrics/Parameters q User metrics: q How fast does MY program run => we need a measure of execution time ? q System metrics: q How much is the system utilized ? q How much buffers do I need to provision ? q How many programs is it able to execute per second ? q => Need a measure of throughput, queue length q Eg: Execution Time = Instrns/pgm *avg clock cycles/Instruction * time/clock cycle. q T = I /P * CPI *Clock cycle time q All three factors combine to affect the metric. q User metrics: q How fast does MY program run => we need a measure of execution time ? q System metrics: q How much is the system utilized ? q How much buffers do I need to provision ? q How many programs is it able to execute per second ? q => Need a measure of throughput, queue length q Eg: Execution Time = Instrns/pgm *avg clock cycles/Instruction * time/clock cycle. q T = I /P * CPI *Clock cycle time q All three factors combine to affect the metric.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 17 Workloads, Benchmarks q Workload: a test case for the system q Benchmark: A set of workloads which together is representative of “MY program”. Should be reproduceable q Problem: combining metrics from each test case. q Pitfalls: ratio games. q Workload: a test case for the system q Benchmark: A set of workloads which together is representative of “MY program”. Should be reproduceable q Problem: combining metrics from each test case. q Pitfalls: ratio games. Machine A B Test case 1 1s 10s 2 100s 10s Which is faster, A or B ?

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 18 Effect on Design: Amdahl’s law q Execution time after improvement = Execution time affected by improvement / speedup + Unaffected execution time q Point: Speedup the common case !! q Execution time after improvement = Execution time affected by improvement / speedup + Unaffected execution time q Point: Speedup the common case !!

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 19 Summary q Constraints: space, time, computation,money q Techniques: q Multiplexing, Parallelism and Pipelining, q Batching, Randomization, q Locality and hierarchy, q Separating data & control, Extensibility q Performance q Constraints: space, time, computation,money q Techniques: q Multiplexing, Parallelism and Pipelining, q Batching, Randomization, q Locality and hierarchy, q Separating data & control, Extensibility q Performance