45
Introduction 1-1 CDA 4503 Introduction To Computer Networks http://www.cs.fsu.edu/~kartik/cen 4516 Kartik Gopalan [email protected]

Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan [email protected]

Embed Size (px)

Citation preview

Page 1: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-1

CDA 4503 Introduction To Computer Networks

http://www.cs.fsu.edu/~kartik/cen4516

Kartik [email protected]

Page 2: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-2

Goals of this course

Learn about Fundamentals of Networking Network Applications

• Design and Implementation Network Protocols

• Physical-level, Routing-level, Transport-level, Application-level

Network Internals• Individual components

Network Management• Administration, Security

Page 3: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-3

Pre-requisites

COP4530 - Data Structures and Algorithms

CIS3931 - Either Elementary Java or C++ Programming (or equivalent)

Working knowledge of Unix environment Shell, commands, vi, emacs.

Page 4: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-4

Office hours

Instructor : Kartik Gopalan

Location : Room 164,  Love Bldg.

Office Hours:   1:00PM to 3:00PM Mon-Wed

Email : [email protected]

Page 5: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-5

Textbooks

Required Textbook : Computer Networking: A Top-Down Approach Featuri

ng the Internet (2nd Edition)

by James F. Kurose, Keith Ross.  Publisher: Pearson Addison Wesley; 3rd edition ISBN: 0321227352

Recommended  Reference  Textbook : Computer Networks (4th Edition)

by Andrew S. Tanenbaum.  Publisher: Prentice Hall, ISBN: 0130661023

Page 6: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-6

Evaluation Criteria

Final Exam 30% December 14th (Wednesday) 5:30 PM to 7:30

PM

Midterm Exams 30% October 10th (Monday) 5:15 PM to 6:30 PM

Assignments 40%

Page 7: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-7

Attendance

Attendance will be taken

Used to decide on borderline grades

Page 8: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-8

Assignments

All assignment are individual

Typically two weeks per-assignment

Start early

Ask questions early

Submit on time

Page 10: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-10

Asking questions1. Make Google your friend!

• Can’t beat the response time!

2. Office hours: Mon-Wed  1:00 to 3:00 PM at 164, Love Bldg.

3. Use class mailing list Discussion board on campus blackboard Advantages

• Anybody may reply (including your classmates)• Everyone benefits from common issues• Don’t ask for solutions!

Page 11: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-11

Academic Integrity

Means No copying from anywhere Don’t solve assignments for others Don’t ask/give solutions. Protect your code

Moss: An automated tool for comparing code will be used.

Please read the guidelines on course web page

Dishonesty Not fair to others. You may get a grade of F.

Page 12: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-12

Chapter 1Introduction

Computer Networking: A Top Down Approach Featuring the Internet, 3rd edition. Jim Kurose, Keith RossAddison-Wesley, July 2004.

All material copyright 1996-2004J.F Kurose and K.W. Ross, All Rights Reserved

Page 13: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-13

Chapter 1: Introduction

Overview: what’s the Internet what’s a protocol? network edge network core access net, physical media Internet/ISP structure performance: loss, delay protocol layers, service

models network modeling

Page 14: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-14

Chapter 1: roadmap

1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Network access and physical media1.5 Internet structure and ISPs1.6 Delay & loss in packet-switched

networks1.7 Protocol layers, service models1.8 History

Page 15: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-15

What’s the Internet: “nuts and bolts” view millions of connected

computing devices: hosts = end systems

running network apps communication links

fiber, copper, radio, satellite transmission rate =

bandwidth (bits/sec)

Switches – forward packets Two types

• Routers: across networks• Link-layer switches

– within networks

local ISP

companynetwork

regional ISP

router workstation

servermobile

Page 16: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-16

What’s the Internet: “nuts and bolts” view protocols control sending,

receiving of msgs e.g., TCP, IP, HTTP, FTP,

PPP

Internet: “network of networks” loosely hierarchical public Internet versus

private intranet

Internet standards RFC: Request for comments IETF: Internet Engineering

Task Force

local ISP

companynetwork

regional ISP

router workstation

servermobile

Page 17: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-17

What’s the Internet: a service view communication infrastructure

enables distributed applications: Web, email, games, e-

commerce, file sharing Note; Web is not a separate

network. It is a distributed application-level service.

communication services provided to apps: Connectionless unreliable

service connection-oriented reliable

service

Quality of Service --performance guarantees : Bandwidth End-to-end delay

Page 18: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-18

What’s a protocol?a human protocol and a computer network protocol:

Hi

Hi

Got thetime?

2:00

TCP connection req

TCP connectionresponseGet http://www.awl.com/kurose-ross

<file>time

Page 19: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-19

What’s a protocol?… all communication activity

in Internet governed by protocols

specific msgs sent

specific actions taken when msgs received, or other events

protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt

Page 20: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-20

Chapter 1: roadmap

1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Network access and physical media1.5 Internet structure and ISPs 1.6 Delay & loss in packet-switched

networks1.7 Protocol layers, service models1.8 History

Page 21: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-21

A closer look at network structure: network edge:

applications and hosts network core:

routers network of networks

access networks, physical media: communication links

Page 22: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-22

The network edge: end systems (hosts):

run application programs e.g. Web, email at “edge of network”

client/server model client host requests, receives

service from always-on server e.g. Web browser/server;

email client/server

peer-peer model: minimal (or no) use of

dedicated servers e.g. Gnutella, KaZaA

Page 23: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-23

Network edge: connection-oriented service

Goal: Maintain a session for data transfer between end systems.

handshaking: setup (prepare for) data transfer ahead of time Hello, hello back human

protocol set up “state” in two

communicating hosts

TCP - Transmission Control Protocol Internet’s connection-

oriented service

TCP service [RFC 793]

1. reliable data transfer loss: acknowledgements and

retransmissions

2. In-order byte-stream Apps don’t see packets

3. flow control: sender won’t overwhelm

receiver

4. congestion control: senders “slow down sending

rate” when network congested

Note: The above 4 features don’t have to be part of every connection-oriented service.

Page 24: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-24

Network edge: connectionless service

Goal: data transfer between end systems same as before!

UDP - User Datagram Protocol [RFC 768]: connectionless unreliable data

transfer no flow control no congestion

control

Apps using TCP: HTTP (Web), FTP (file transfer), Telnet (remote login), SMTP (email)

Apps using UDP: streaming media, teleconferencing, DNS, Internet telephony

Page 25: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-25

Chapter 1: roadmap

1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Network access and physical media1.5 Internet structure and ISPs 1.6 Delay & loss in packet-switched

networks1.7 Protocol layers, service models1.8 History

Page 26: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-26

The Network Core

mesh of interconnected routers

the fundamental question: how is data transferred through net?

circuit switching: dedicated circuit per “call” (or session) : telephone net

packet-switching: data sent thru net in discrete “chunks” or packets

Page 27: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-27

Network Core: Circuit Switching

End-to-end resources reserved for session

link bandwidth, switch capacity

dedicated resources: no sharing

circuit-like (guaranteed) performance

call setup required

Page 28: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-28

Network Core: Circuit Switching

network resources (e.g., bandwidth) divided into “shares”

shares allocated to calls

resource share idle if not used by owning call (no sharing)

Multiplexing : dividing link bandwidth into “shares” frequency division time division

Page 29: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-29

Circuit Switching: FDM and TDM

FDM

frequency

time

TDM

frequency

time

4 users

Example:

Page 30: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-30

Numerical example

How long does it take to send a file of 640,000 bits from host A to host B over a circuit-switched network?

All links are 1.536 Mbps Each link uses TDM with 24 slots 500 msec to establish end-to-end circuit

Work it out!

Page 31: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-31

Network Core: Packet Switchingeach end-end data stream

divided into packets

user A, B packets share network resources

each packet uses full link bandwidth

resources used as needed

Resource contention:

aggregate resource demand can exceed amount available

congestion: packets queue, wait for link use

store and forward: packets move one hop at a time

Node receives complete packet before forwarding

Page 32: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-32

Packet Switching: Statistical Multiplexing

Sequence of A & B packets does not have fixed pattern statistical multiplexing.

In TDM each host gets same slot in revolving TDM frame.

A

B

C10 Mb/sEthernet

1.5 Mb/s

D E

statistical multiplexing

queue of packetswaiting for output

link

Page 33: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-33

Packet switching versus circuit switching

1 Mb/s link each user:

100 kb/s when “active” active 10% of time

circuit-switching: 10 users

packet switching: with 35 users,

probability > 10 active less than .0004

Packet switching allows more users to use network!

N users

1 Mbps link

Page 34: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-34

Packet switching versus circuit switching

Great for bursty data resource sharing simpler, no call setup

Excessive congestion: packet delay and loss protocols needed for reliable data transfer,

congestion control Q: How to provide circuit-like behavior?

bandwidth guarantees needed for audio/video apps

still an unsolved problem (chapter 6)

Is packet switching a “slam dunk winner?”

Page 35: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-35

Packet-switching: store-and-forward

Takes L/R seconds to transmit (push out) packet of L bits on to link or R bps

Entire packet must arrive at router before it can be transmitted on next link: store and forward

delay = 3L/R

Example: L = 7.5 Mbits R = 1.5 Mbps delay = 15 sec

R R RL

Page 36: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-36

Packet-switched networks: forwarding Goal: move packets through routers from source to

destination we’ll study several path selection (i.e. routing) algorithms

(chapter 4)

datagram network: destination address in packet determines next hop routes may change during session analogy: driving, asking directions

virtual circuit network: each packet carries tag (virtual circuit ID), tag determines

next hop fixed path determined at call setup time, remains fixed thru

call routers maintain per-call state

Page 37: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-37

Network Taxonomy

Telecommunicationnetworks

Circuit-switchednetworks

FDM TDM

Packet-switchednetworks

Networkswith VCs

DatagramNetworks

Page 38: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-70

Chapter 1: roadmap

1.1 What is the Internet?1.2 Network edge1.3 Network core1.4 Network access and physical media1.5 Internet structure and ISPs1.6 Delay & loss in packet-switched

networks1.7 Protocol layers, service models1.8 History

Page 39: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-71

Protocol “Layers”Networks are

complex! many “pieces”:

hosts routers links of various

media applications protocols hardware,

software

Question: Is there any hope of organizing structure of

network?

Or at least our discussion of networks?

Page 40: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-72

Organization of air travel

a series of steps

ticket (purchase)

baggage (check)

gates (load)

runway takeoff

airplane routing

ticket (complain)

baggage (claim)

gates (unload)

runway landing

airplane routing

airplane routing

Page 41: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-73

ticket (purchase)

baggage (check)

gates (load)

runway (takeoff)

airplane routing

departureairport

arrivalairport

intermediate air-trafficcontrol centers

airplane routing airplane routing

ticket (complain)

baggage (claim

gates (unload)

runway (land)

airplane routing

ticket

baggage

gate

takeoff/landing

airplane routing

Layering of airline functionality

Layers: each layer implements a service via its own internal-layer actions relying on services provided by layer below

Page 42: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-74

Why layering?Dealing with complex systems: explicit structure allows identification,

relationship of complex system’s pieces layered reference model for discussion

modularization eases maintenance, updating of system change of implementation of layer’s service

transparent to rest of system e.g., change in gate procedure doesn’t

affect rest of system

Page 43: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-75

Internet protocol stack application: supporting network

applications FTP, SMTP, HTTP

transport: host-host data transfer TCP, UDP

network: routing of datagrams from source to destination IP, routing protocols

link: data transfer between neighboring network elements PPP, Ethernet

physical: bits “on the wire” (signaling)

application

transport

network

link

physical

Page 44: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-76

messagesegment

datagram

frame

sourceapplicatio

ntransportnetwork

linkphysical

HtHnHl M

HtHn M

Ht M

M

destination

application

transportnetwork

linkphysical

HtHnHl M

HtHn M

Ht M

M

networklink

physical

linkphysical

HtHnHl M

HtHn M

HtHnHl M

HtHn M

HtHnHl M HtHnHl M

router

switch

Encapsulation

Page 45: Introduction1-1 CDA 4503 Introduction To Computer Networks kartik/cen4516 Kartik Gopalan Kartik@cs.fsu.edu

Introduction 1-81

Introduction: Summary

Covered a “ton” of material! Internet overview what’s a protocol? network edge, core,

access network packet-switching

versus circuit-switching Internet/ISP structure performance: loss, delay layering and service

models history

You now have: context, overview,

“feel” of networking more depth, detail

to follow!