Computer Networks - McMaster University

Download Report

Transcript Computer Networks - McMaster University

COSC6377: Computer
Networks
Rong Zheng
[email protected]
Computer Networking:
A Top Down Approach
Featuring the Internet,
3rd edition.
Jim Kurose, Keith Ross
Addison-Wesley, July
2004.
Introduction
1-1
Introduction
 Overview of the course
 Basic concepts and structures in computer
networking
 Network architecture
Introduction
1-2
What’s the Internet: “nuts and
bolts” view
 End systems
 Host computer
 Network applications
 Access networks
 Local area networks
 communication links
router
server
workstation
mobile
local ISP
regional ISP
 Network core:
 routers
 network of networks
company
network
Introduction
1-3
What’s the Internet: “nuts and bolts” view

Protocols define format, order
of msgs sent and received
among network entities, and
actions taken on msg
transmission, receipt


router
server

mobile
local ISP
e.g., TCP, IP, HTTP, FTP, PPP
Internet: “network of networks”

workstation
regional ISP
loosely hierarchical
public Internet versus private
intranet
 Internet standards


RFC: Request for comments
IETF: Internet Engineering
Task Force
company
network
Introduction
1-4
Network Components (Examples)
Links
Interfaces
Fibers
Ethernet card
Switches/routers
Large router
Wireless card
Coaxial Cable
Switch
Introduction
1-5
Introduction
1-6
Internet structure: network of networks
 roughly hierarchical
 at center: “tier-1” ISPs (e.g., MCI, Sprint, AT&T, Cable
and Wireless), national/international coverage
 treat each other as equals
Tier-1
providers
interconnect
(peer)
privately
Tier 1 ISP
Tier 1 ISP
NAP
Tier-1 providers
also interconnect
at public network
access points
(NAPs)
Tier 1 ISP
Introduction
1-7
Tier-1 ISP: e.g., Sprint
Sprint US backbone network
DS3 (45 Mbps)
OC3 (155 Mbps)
OC12 (622 Mbps)
OC48 (2.4 Gbps)
Seattle
Tacoma
Stockton
San Jose
Cheyenne
Kansas City
New York
Pennsauken
Relay
Wash. DC
Chicago
Roachdale
Anaheim
Atlanta
Fort Worth
Orlando
Introduction
1-8
Internet structure: network of networks
 “Tier-2” ISPs: smaller (often regional) ISPs
 Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs
Tier-2 ISP pays
tier-1 ISP for
connectivity to
rest of Internet
 tier-2 ISP is
customer of
tier-1 provider
Tier-2 ISP
Tier-2 ISP
Tier 1 ISP
Tier 1 ISP
Tier-2 ISP
NAP
Tier 1 ISP
Tier-2 ISPs
also peer
privately with
each other,
interconnect
at NAP
Tier-2 ISP
Tier-2 ISP
Introduction
1-9
Internet structure: network of networks
 “Tier-3” ISPs and local ISPs
 last hop (“access”) network (closest to end systems)
local
ISP
Local and tier3 ISPs are
customers of
higher tier
ISPs
connecting
them to rest
of Internet
Tier 3
ISP
Tier-2 ISP
local
ISP
local
ISP
local
ISP
Tier-2 ISP
Tier 1 ISP
Tier 1 ISP
Tier-2 ISP
local
local
ISP
ISP
NAP
Tier 1 ISP
Tier-2 ISP
local
ISP
Tier-2 ISP
local
ISP
Introduction
1-10
Internet structure: network of networks
 a packet passes through many networks!
local
ISP
Tier 3
ISP
Tier-2 ISP
local
ISP
local
ISP
local
ISP
Tier-2 ISP
Tier 1 ISP
Tier 1 ISP
Tier-2 ISP
local
local
ISP
ISP
NAP
Tier 1 ISP
Tier-2 ISP
local
ISP
Tier-2 ISP
local
ISP
Introduction
1-11
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?
Introduction
1-12
An Imaginary 2-tier
Application
Transmission
Media
SMTP
SSH
Coaxial
cable
FTP
Fiber
optic
HTTP
Packet
radio
 New application has to interface to all existing media

adding new application requires O(m) work, m = number of media
 New media requires all existing applications be modified

adding new media requires O(a) work, a = number of applications
 Total work in system O(ma)  eventually too much work to
add apps/media
 Application end points may not be on the same media!
Introduction
1-13
Solution: Indirection
 Solution: introduce an intermediate layer that
provides a single abstraction for various network
technologies
O(1) work to add app/media
 Indirection is an often used technique in computer
science
SSH
NFS
HTTP
SMTP
Application

Intermediate
layer
Transmission
Media
Coaxial
cable
Fiber
optic
802.11
LAN
Introduction
1-14
Network Architecture
 Architecture is not the implementation
itself
 Architecture is how to “organize”
implementations
 what
interfaces are supported
 where functionality is implemented
 Architecture is the modular design of the
network
Introduction
1-15
Software Modularity
Break system into modules:
 Well-defined interfaces gives flexibility
 can
change implementation of modules
 can extend functionality of system by adding
new modules
 Interfaces hide information
 allows for flexibility
 but can hurt performance
Introduction
1-16
Network Modularity
Like software modularity, but with a twist:
 Implementation distributed across routers
and hosts
 Must decide both:
 how
to break system into modules
 where modules are implemented
Introduction
1-17
Layering
 Layering is a particular form of
modularization
 The system is broken into a vertical
hierarchy of logically distinct entities
(layers)
 The service provided by one layer is based
solely on the service provided by layer
below
 Rigid structure: easy reuse, performance
suffers
Introduction
1-18
ISO OSI Reference Model
 ISO – International Standard Organization
 OSI – Open System Interconnection
 Seven layers
 Lower two layers are peer-to-peer
 Network layer involves multiple switches
 Next four layers are end-to-end
Host 1
Application
Presentation
Session
Transport
Network
Datalink
Physical
Physical medium A
Intermediate switch
Network
Datalink
Physical
Host 2
Application
Presentation
Session
Transport
Network
Datalink
Physical
Physical medium B
Introduction
1-19
Key Concepts
 Service – says what a layer does
 Ethernet: unreliable subnet unicast/multicast/broadcast
datagram service
 IP: unreliable end-to-end unicast datagram service
 TCP: reliable end-to-end bi-directional byte stream
service
 Service Interface – says how to access the
service

E.g. UNIX socket interface
 Protocol – says how is the service implemented
 a set of rules and formats that govern the communication
between two peers
Introduction
1-20
Functions of the Layers








Service: Handles details of application
programs.
Functions:
Service: Controls delivery of data between
hosts.
Functions: Connection
establishment/termination,
error control, flow control,
congestion control, etc.
Application telnet, ftp, email
Layer
www, NFS
Transport
TCP, UDP
Layer
Network
Layer
IP, ICMP, OSPF
RIP, BGP
Service: Moves packets inside the network.
Functions: Routing, addressing, switching,
etc.
(Data) Link Ethernet, WiFi
Service: Reliable transfer of frames over a
link.
Functions: Synchronization, error control,
flow
control, etc.
Layer
T1
Introduction
1-22
Internet Protocol Architecture
FTP
program
FTP protocol
FTP
program
TCP
TCP protocol
TCP
IP
Ethernet
Driver
IP protocol
Ethernet
protocol
Ethernet
Driver
IP
IP protocol
ATM
Driver
ATM
protocol
IP
ATM
Driver
Introduction
1-23
Internet Protocol Architecture
MPEG Servier
program
UDP
IP
Ethernet
Driver
MPEG Player
program
RTP protocol
UDP protocol
IP protocol
Ethernet
protocol
Ethernet
Driver
IP
UDP
IP protocol
ATM
Driver
ATM
protocol
IP
ATM
Driver
Introduction
1-24
source
message
segment Ht
datagram Hn Ht
frame
Hl Hn Ht
M
M
M
M
Encapsulation
application
transport
network
link
physical
Hl Hn Ht
M
link
physical
Hl Hn Ht
M
switch
destination
M
Ht
M
Hn Ht
Hl Hn Ht
M
M
application
transport
network
link
physical
Hn Ht
Hl Hn Ht
M
M
network
link
physical
Hn Ht
Hl Hn Ht
M
M
router
Introduction
1-25
Hourglass
Note: Additional protocols like routing
protocols (RIP, OSPF) needed to make
IP work
Introduction
1-26
Implications of Hourglass
A single Internet layer module:
 Allows all networks to interoperate
 all
networks technologies that support IP
can exchange packets
 Allows all applications to function on all
networks
 all
applications that can run on IP can use
any network
 Simultaneous developments above and
below IP
Introduction
1-27
Reality
 Layering is a convenient way to think about
networks
 But layering is often violated
 Firewalls
 Transparent
 NAT
caches
boxes
Introduction
1-28
Thinking Exercise – Interplanetary
Internet
 Network entities:
 Ground stations
 Satellites, space stations at
near-Earth orbit 600
kilometers (~ 2s)
 Mars rovers take ~ 10 to 30
min
 Planets farther away?
 Objective:
 Interconnect with earthbound networks?
http://www.spectrum.ieee.org/WEBONLY/publicfeature/aug05/0805inte.html
Introduction
1-29