why is the subject important? - piazza

7
1 Matta@BUCS - Introduction 1-1 CS 455/655 Computer Networks Abraham Matta Computer Science Boston University Chapter 1 Introduction Computer Networking: A Top-Down Approach, 6 th edition. Jim Kurose, Keith Ross Addison-Wesley. Why is the subject important? Networks of processes are ubiquitous To support a myriad of distributed applications They are getting larger and more complex Need experts in leveraging & managing them Matta@BUCS - Introduction 1-2 Matta@BUCS - Introduction 1-3

Upload: khangminh22

Post on 20-Nov-2023

1 views

Category:

Documents


0 download

TRANSCRIPT

1

Matta@BUCS - Introduction 1-1

CS 455/655 Computer Networks Abraham Matta Computer Science Boston University Chapter 1 Introduction

Computer Networking: A Top-Down Approach, 6th edition. Jim Kurose, Keith Ross Addison-Wesley.

Why is the subject important? q Networks of processes are ubiquitous

❍ To support a myriad of distributed applications q They are getting larger and more complex q Need experts in leveraging & managing them

Matta@BUCS - Introduction 1-2

Matta@BUCS - Introduction 1-3

2

Syllabus q  Available on

https://piazza.com/bu/fall2014/cs455655/home ❍  Only grades on Blackboard: https://learn.bu.edu

q  655 superset of 455

❍  Additional readings and assignments ❍  Participate in Network Reading Group, Mon 11am, MCS 148

•  Subscribe at www.cs.bu.edu/groups/nrg •  NRG web page: http://www.bu.edu/cs/nrg/

q  Basic prerequisites ❍  strong programming, basic algorithms, simple math

q  TF: Yuefeng Wang q  Grading

❍  2 exams ❍  assignments (3-4 written, 3 labs, 3 programming) ❍  3-4 extensions or extra assignments for 655

Matta@BUCS - Introduction 1-4

Hands-on Labs

Matta@BUCS - Introduction 1-5

We’re a stone’s throw away from where many “networking” firsts originated …

q First optical (light) “one-if-by-land-and-two-if-by-sea” signals ❍ Used to signal that the British are coming in

1775 q First telegraph (Morse code)

❍ Used for reporting fires in 1852 q First transatlantic radio message

❍ From Nova Scotia to England in 1902 q First switches and email message

❍  at BBN in 1967-1972 q 

Matta@BUCS - Introduction 1-6

Guglielmo Marconi

Paul Revere

3

Expectations q This class IS about...

❍ Concepts, Principles, and Protocols ❍ General-Purpose Computer Networks ❍  Internet Perspective ❍ Network Software ❍ Designing and Building a System

q This class IS NOT about... ❍ Specialized networks (e.g., CATV, telephone) ❍  ISO/OSI Perspective ❍ Network Hardware ❍ Advanced Theoretical Analysis

Matta@BUCS - Introduction 1-7

Why Build a Computer Network?

q To support distributed applications (e.g., FTP, WWW, ...)

q Most functionality in software q General-purpose computers q New functionality easily added ``inside'' the

network (e.g., CDN=Content Distribution Net) q Computers are increasingly faster

Matta@BUCS - Introduction 1-8

Common Functionality

q Specify remote machine q Connect to it (possibly some handshaking) q Transfer data q Close connection

Client process

Request

Reply

Server process

Client machine Server machine

Network

Matta@BUCS - Introduction 1-9

4

Requirements: (1) Connectivity q  Building blocks

❍  links: copper wire, coax cable, optical fiber, radio, … ❍  nodes: general-purpose workstations, PCs, routing elements, …

q  Direct links ❍  point-to-point (e.g. dial-up, DSL)

❍  multiple access (LAN environment)

Need MAC (Medium Access Control) protocol to control

access to the shared medium (e.g. shared Ethernet, HFC upstream channel, wireless)

. . .

multiple access network

Matta@BUCS - Introduction 1-10

point-to-point network

Requirements: (1) Connectivity q  Indirect connectivity

❍  switched networks (WAN environment)

❍  intermediate nodes are called switches ❍  end nodes are called hosts or end-systems (net’s edge) ❍  packet switching: send/receive messages (packets)

•  may need fragmentation/reassembly ❍  store-and-forward

Matta@BUCS - Introduction 1-11

Requirements: (1) Connectivity

q  internetworks q  nodes that connect

networks are called routers or gateways

q  A network can be defined recursively as two or more nodes connected by a physical link, or by two or more networks connected by one or more nodes

Matta@BUCS - Introduction 1-12

5

Requirements: (1) Connectivity

Matta@BUCS - Introduction 1-13

q Net’s core managed by a hierarchy of ISPs

access net

access net

access net

access net

access net

access net

access net

access net

access net

access net

access net

access net

access net

access net access

net

access net

… …

ISP B

ISP A

ISP C

regional net peering link

customer-provider link

Requirements: (1) Connectivity

q Addressing and routing ❍  address: byte-string that identifies a node;

usually unique ❍  routing: process of determining how to forward

messages toward the destination node based on its address

❍  types of addresses •  unicast: node-specific •  broadcast: all nodes on the network •  multicast: some subset of nodes on the network

Matta@BUCS - Introduction 1-14

Requirements: (2) Cost-effective Resource Sharing q  Must share (multiplex) network resources (nodes and

links) among multiple users

q  Common Multiplexing Strategies ❍  Time-Division Multiplexing (TDM): pre-assign time slots ❍  Frequency-Division Multiplexing (FDM): pre-assign

frequencies

Matta@BUCS - Introduction 1-15

6

Requirements: (2) Cost-effective Resource Sharing q  Statistical Multiplexing q  Time-division, but on demand

rather than fixed (no waste) q  Reschedule link on a per-packet

basis q  Packets from different sources

interleaved on the link q  Buffer packets that are

contending for the link q  Packet queue may be processed

FIFO, but not necessarily q  Buffer overflow, causing packet

drop (loss), is called congestion

Matta@BUCS - Introduction 1-16

. . .

Requirements: (3) Process-to-Process Channels q  The application programs

running on the hosts connected to the network must be able to communicate in a meaningful and efficient way

q  Network supports common process-to-process channels; e.g., ❍  Reliable (no loss, no errors, no

duplication, in-order): for file access and digital libraries

❍  Secure (privacy, authentication, message integrity)

❍  Delay-bounded: for real-time voice and video

Host

Host

HostHost

Host

Application

Application

Channel

Matta@BUCS - Introduction 1-17

Requirements: (3) e2e Channels

q  What Goes Wrong in the Network? ❍  Bit-level errors (electrical interference) ❍  Packet-level errors (congestion) ❍  Link and node failures

❍  Packets are delayed ❍  Packets are delivered out-of-order ❍  Third parties eavesdrop

The key problem is to fill in the gap between what applications expect and what the underlying technology provides

Matta@BUCS - Introduction 1-18

7

Requirements: (3) e2e Channels q  Performance: Bit Rate (throughput)

❍  Amount of data that can be transmitted per time unit ❍  Example: 10Mbps ❍  link versus end-to-end ❍  Notation

•  KB = 210 bytes •  Mbps = 106 bits per second

❍  Bit rate (aka capacity) related to ``bit width''

1 second

1 second

1Mbps (each bit 1 microseconds wide)

2 Mbps (each bit 0.5 microseconds wide)

Matta@BUCS - Introduction 1-19

Requirements: (3) e2e Channels

q  Performance: Delay ❍  Time it takes to send message from point A to point B ❍  Example: 24 milliseconds (ms) ❍  Sometimes interested in round-trip time (RTT) ❍  Components of delay

•  Total Delay = Processing + Propagation + Transmit + Queue •  Propagation Delay = Distance / SpeedOfLight •  Transmit = Size / Bit Rate

❍  Speed of light •  3.0 x 108 meters/second in a vacuum •  2.3 x 108 meters/second in a cable •  2.0 x 108 meters/second in a fiber

Matta@BUCS - Introduction 1-20

Requirements: (3) e2e Channels

q  Relative importance of bit rate and delay ❍  small message (e.g., 1 byte): 1ms vs 100ms dominates 1Mbps vs

100Mbps ❍  large message (e.g., 25 MB): 1Mbps vs 100Mbps dominates 1ms

vs 100ms q  Bandwidth (Bit Rate/thruput) x Delay Product (BxD)

q  Example: 100ms RTT and 45Mbps Bit Rate ~ 560 KB of data

Matta@BUCS - Introduction 1-21

delay

bandwidth