CSE 422 Computer Networks - Computer Science and Engineering

Download Report

Transcript CSE 422 Computer Networks - Computer Science and Engineering

CSE 422
Computer Networks
CSE 422
1
Technology Over The Centuries
• 18th Century: Mechanical Systems
Accompanying The Industrial Revolution
• 19th Century: Age of The Steam Engine
• 20th Century: Information Gathering,
Processing, and Distribution e.g.,
–
–
–
–
Worldwide Telephone Network
Invention of Radio and TV
Computer Industry
Launching of Communication Satellites
2
Internet Growth (by Number of Computers)
30M
25M
20M
15M
10M
5M
0M
1982
1984
1986
1988
1990
1992
1994
1996
1998
3
Computer Networks:
• Definition:
Interconnected Collection of Autonomous Computers
• Goals
–
–
–
–
–
Resource Sharing
Lower Communication Costs
Client-Server Model
High Reliability
Communication Medium Among Widely Separated
People
– Smooth System Growth
– Simpler Software Design
4
Applications of Networks
• Access to Remote Programs
– Simulation
– Computer Aided Ed.,
– Medical Diagnosis
• Access to Remote Data Bases
–
–
–
–
–
Reservations For Hotels, Airplanes
Home Banking
Automated Newspaper
Automated Library
Access to Information System: (e.g. World Wide Web)
5
Applications of Networks (cont.)
• Communication Medium
–
–
–
–
–
Electronic Funds Transfer System
Electronic Mail
Teleconferencing
Worldwide Newsgroups
International Contacts by Humans
• Entertainment Industry
–
–
–
–
Video On Demand
Multiperson real-time simulation games
Selecting any movie/TV program ever made
Live TV may becomes interactive with audience
6
Social Issues
• Views on politics, religion, sex, etc. distributed
–
–
–
–
Newsgroups debate sensitive issues
Network operators risk being sued for contents
Rights to free speech may be violated
Anonymous messages can be desirable, but ...
7
Classification of interconnected
processors by physical size
0.1 m
1m
10m
100m
1km
10km
100km
1,000km
10,000km
Circuitboard
System
Room
Building
Campus
City
Country
Continent
Planet
Data flow machine
Multiprocessor
Local Network
Metropolitan Area
(Wide Area) Network
The Internet
8
Network Structure
Communication Subnet (Subnet)
– Switching Elements (Routers)
– Transmission Lines (Circuits)
Boundary of the
Communication subnet
Routers
Hosts
9
Types of Design For Subnets
Point-to-Point Circuits (Channels)
– Example of Topologies
(a)
(b)
(c)
(d)
(e)
(f)
Some possible topologies for a point-to-point subnet
(a) Star (b) Loop (c) Tree (d) Complete (e) Intersecting loops (f) Irregular
10
Types of Design
For Subnets (cont.)
Broadcast Channels
– Examples of Topologies
(a)
(b)
(c)
Communication subnet using broadcasting
(a) Bus (b) Satellite or Radio (c) Ring
11
Types of Design
For Subnets (cont.)
Note: Broadcast Subnets May Allocate Channel By:
1. Static Methods
• TDMA
2. Dynamic Methods
• Centralized
• Decentralized
12
Summary of Network types LANs, MANs, & WANs
• Local area networks (LANs)-are privately owned
networks within a single building or campus of up
to a few kilometers in size
• LANs-have three distinguished characteristics: (1)
size, (2) transmission technology, & (3) topology
• Metropolitan area networks (MANs)-basically a
larger version of LANs, and uses similar
technology
• MAN-has just one or two cables and contains no
switching elements
13
Network Types (Cont.)LANs, MANs, & WANs
• MAN standard-Distributed Queue and Dual
Bus (DQDB), consists of two unidirectional
buses (cables) to which all computers are
connected
• WAN-spans a large geographical area; it
consists of several hosts, connected to a
subnet, which in turn is connected via
transmission lines and switching elements
14
Network Types (Cont.)LANs, MANs, & WANs
Architecture of DQDB metropolitan area network
Bus A
Direction on flow on bus A
Computer
1
2
3
N
Direction on flow on bus B
Architecture of DQDB metropolitan area network
15
Network Types (Cont.)Wireless Networks
• Mobile computing, (e.g., notebook computers &
portable digital assistants (PDA) is growing at a
rapid rate)
• Users want network connectivity in cars, airplanes,
& other remote sites
• The use of a portable computer capable of wireless
networking will very likely revolutionize the way
we use computers
• Possible uses: portable office, fleets of trucks,
taxis, buses, and repairpersons (keeping in contact
with home)
16
Network Types (Cont.)Wireless Networks
• Other uses: workers at disaster sites (fires, floods,
etc.) where telephone system is destroyed; military
operations
• Some disadvantages: low bandwidth (1-2 Mbps),
high error rates, & frequent disconnections
• Wireless networks communicate via modulating
radio waves or pulsing infrared light
• Wireless communication; linked to wired network
infrastructure by transceivers
17
Network Types (Cont.)Wireless Networks
• Cellarea cover by an individual transceiver's signal; the
cell sizes vary widely
• Wireless networks comes in many forms. Some
universities have installed antennas all over
campus to allow students to access the library card
catalog, while sitting under the trees
• Security is a problem, because connection to
wireless is so easy; challenge for software
designers
• Address migration also presents a challenge
18
Examples of Networks
• Commercial Networks
– DECNET
– SNA
• National Network
–
–
–
–
ARPANET
NREN
EDUNET
USENET
19
Examples of Networks (cont.)
• Local Area Networks
– NOVELL NETWARE
– MAP and TOP
• Packet Carriers
– TYMNET
– TELENET
20
The Internet Emergesfunded by ARPA
•
•
•
•
•
Need to interconnect LANs, MANs, and WANs
Initially interconnected: NSFNET and ARPANET
Results: Internet, with TCP/IP Software
Growth continues exponentially, doubles each yr.
Main applications: Email, Remote Login, News,
File Transfer
• New application: WWW, with Internet Explorer,
further increased the Internet usage
21
Data Communications
Organizations
ISO
CCITT
ANSI
State Dept.
EIA
Carriers
NCS
Other
Org.
NTIA
Government Agencies
22
A Simplified Architecture for File Transfer
Computer X
Computer Y
File transfer
application
File and file transfer command
File transfer
application
Communications
Service module
Communications-related data units
Communications
Service module
Network access
Module
Communications
Network
Network interface
logic
Network interface
logic
Network access
Module
23
Network Architectures
• Protocols
• Layers
24
The ISO Reference Model
(Basic Principles)
1. A layer should be created where a different
level of abstraction is needed.
2. Each layer should perform a well defined
function.
3. The function of each layer should be chosen
with an eye toward defining internationally
standardized protocols.
25
The ISO Reference Model
(Basic Principles) (cont.)
4. The layer boundaries should be chosen to
minimize the information flow across the
interfaces.
5. The number of layers should be large
enough that distinct functions need not be
thrown together in the same layer out of
necessity, and small enough that the
architecture does not become unwieldy.
26
Design Issues For The Layers:
• Mechanism For Connection Establishment
• Mechanism For Connection Termination
• Rules for Data Transfer
– Simplex
– Half Duplex
– Full Duplex
• Error Control
• Properly Sequencing Messages
27
Design Issues
For The Layers: (cont.)
•
•
•
•
Flow Control
Routing
Multiplexing Conversations
Mechanism For Handling Arbitrarily Long
Messages
28
Layers, protocols, and Interfaces
L a ye r 7
L a y e r 7 p ro to c o l
L a ye r 7
L a y e r 6 /7 in te rfa c e
L a ye r 6
L a y e r 6 p ro to c o l
L a ye r 5
L a y e r 5 p ro to c o l
L a ye r 6
L a y e r 5 /6 in te rfa c e
L a ye r 5
L a y e r 4 /5 in te rfa c e
L a ye r 4
L a y e r 4 p ro to c o l
L a ye r 3
L a y e r 3 p ro to c o l
L a ye r 4
L a y e r 3 /4 in te rfa c e
L a ye r 3
L a y e r 2 /3 in te rfa c e
L a ye r 2
L a y e r 2 p ro to c o l
L a ye r 1
L a y e r 1 p ro to c o l
L a ye r 2
L a y e r 1 /2 in te rfa c e
L a ye r 1
P h y s ic a l M e d iu m
29
Example information flow
supporting virtual comm. in layer 7.
Transmitted
Layer7 protocol
m
m
6/7 interface
6/7 interface
Layer6 protocol
M
M
5/6 interface
Layer5 protocol
M
H4
M1
H4 M2
H3 H4
M1
H3 H4 M2
H2 H3 H4
M1
T2
5/6 interface
H2 H3 H4 M2
Source machine
Layer4 protocol
Layer3 protocol
T2
Layer2
protocol
M
H4 M1
H4
M2
H3 H4 M1
H3 H4
M2
H2 H3 H4
M2
H2 H3 H4 M1
T2
Destination machine
30
T2
Physical Layer
• Concerned with Transmitting Raw Bits over a
Communication Channel.
• Design Issues:
– Mechanical, Electrical, Procedural Interfacing to
Subnet
• Implemented in Hardware
31
Data Link Layer
• Takes a Raw Transmission Facility & Transforms It
To a Line Which Appears Free of Transmission
Errors to The Network Layer.
• Breaks Input Data Into Frames, Transmitting
Frames Sequentially, & Process Acknowledgment
Frames.
• Design Issues:
– Solve Problems Caused By Damaged, Lost, or Duplicate
Frames.
– How to Keep Fast Transmitters From Drowning Slow
Receiver.
32
Network Layer
--- Communication Subnet Layer
• Determines Chief Characteristics of IMP Host
Interface & How Packets Are Routed Within The
Subnet.
• Software Accepts Messages From The Source Host,
Converts Them To Packets, & See That Packets Are
Routed Correctly.
33
Network Layer
--- Comm. Subnet Layer (cont.)
• Design Issues
– The Division of Labor Between The IMPs &
The Host (i.e., Who Should Ensure That All
Packets Are Correctly Received at Their
Destination, & in Proper Order.)
– How The Route is Determined? By Using Static
Tables, Dynamic Tables, or ?
• Implemented in Host by I/O Drivers
34
Transport Layer
--- Host to Host Layer
• Provides a flow of data between two hosts, for the
application layer above.
• Accepts Data From Session Layer, Splits It Into
Smaller Units, If Needed, Passes to Network Layer,
& Ensures That All Pieces Arrive Correctly at
Other End.
• Determines The Type of Service Provided to The
Session Layer. e.g.,
– Error --- Free (Virtual) Point-to-Point Channel That
Delivers Messages in The Order They Were Sent.
35
Transport Layer
--- Host to Host Layer (cont.)
– Transport of Isolated Messages With No Guarantee
About The Order of Delivery.
– Broadcasting of Messages to Multiple Destinations.
• Design Issues
– Mechanism to Regulate The Flow of Information From
One Host to Another.
– Determine Which Message Belongs to Which
Connection.
• Implemented as Part of The Host OS.
36
Session Layer
--- User Interface Layer
• User Negotiate to Establish a Connection
with a Process on Another Machine.
• Manages The Session Once It Has Been Set
Up, (e.g., If Transport Connections are
Unreliable, The Session Layer May Be
Required To Recover From Broken
Transport Connections.)
• Implemented as Part of The OS.
37
Presentation Layer
• Represents Information to Communication
Application-Entities In a Way That Preserves
Meaning While Resolving Syntax
Differences. Typical Functions Include:
• Text Compression
– Encryption for Security
– Syntax Selection
– Conversion Between Character Codes (e.g.,
ASCII to EBCDIC)
38
Application Layer
• Based on Request From User, This Layer Selects
Appropriate Services To Be Supplied From Lower
Layers. e.g.
– Identification of Intended Communication
Partners & Their Availability & Authenticity.
– Determination of Cost Allocation Methodology.
– Establishment of Error Recovery Responsibility.
– Agreement on Required Privacy.
39
Application Layer (cont.)
• Design Issues
– Problem of Partitioning to Gain Maximum
Advantage of Network.
– Questions of Network Transparency, Hiding The
Physical Distribution of Resources From The
User.
40
Approximate correspondences
between the various networks
Layer
OSI
7
Application
6
Presentation
5
Session
TCP/IP
Protocol Suite
Process/
Application
SNA
Transaction Services
Presentation
Services
Data Flow Control
Host-Host
4
Transport
3
Network
Internet
Path Control
2
Data Link
Network
Access
Data Link Control
1
Physical
Transmission Control
Physical Control
41
A Critique of the OSI Model and
Protocols
• Bad timing
• Bad technology
• Bad implementation
• Bad Politics
42
A Critique of the TCP/IP
Reference Model
• Does not distinguish concepts of service, interface,
and Protocol clearly
• Not at all general, & poorly suited to describing any
other protocol stack
• Host-to-network layer is not really a layer, but an
interface between the network and the data-link
layers
• Does not distinguish between physical and data link
layers
• IP and TCP were well thought out, but the other
protocols were ad hoc
43
Relation Between Layers
at an Interface
IDU
Layer N+1
ICI
SAP = Service Access Point
IDU = Interface Data Unit
SDU = Service Data Unit
PDU = Protocol Data Unit
ICI = Interface Control Information
SDU
SAP
Interface
Layer N
ICI
SDU
SDU
Header
N-PDU
Layer N entities
Exchange N-PDUs
In their layer N
protocol
In order to transfer the SDU, the layer N entity may have to fragment
it into several pieces, each of which is given a header and sent as a
separate PDU such as a packet
44
Layering of TCP/IP-based protocols
HTTP
FTP
transport
layer
TCP
network
layer
NFS
RPC
TELNET
DNS
SNMP
UDP
IP
data link
layer
45
Six different types of services
Service
Connectionoriented
Connectionless
Reliable message stream
Reliable byte stream
Unreliable connection
Unreliable datagram
Acknowledged datagram
Request-reply
Example
Sequence of pages
Remote login
Digitized voice
Electronic junk mail
Registered mail
Database query
46
Service Primitives
request
response
4
Layer N+1
Layer N
1
confirm
2
3
indication
Physical channel
Host 1
Host 2
47
Service Primitives (cont.)
• Request: An entity wants the service to do some
work
• Indication: An entity is to be informed about an
event
• Response: An entity wants to respond to an event
• Confirm: An entity is to be informed about its
request
48
Service Primitives (cont.)
•
To make the concept of a service more concrete,
let us consider as an example a simple connectionoriented service with eight service primitives as
follows:
1. CONNECT.request --- Request a connection to be
established.
2. CONNECT.indication --- Signal the called party.
3. CONNECT.response --- Used by the callee to
accept/reject calls.
4. CONNECT.confirm --- Tell the caller whether the
call was accepted.
49
Service Primitives (cont.)
5. DATA.request --- Request that data be sent.
6. DATA.indication --- Signal the arrival of data.
7. DISCONNECT.request --- Request that a connection be
released.
8. DISCONNECT.indication --- Signal the peer about the
request.
• In this example, CONNECT is a confirmed service
(an explicit response is required) whereas
DISCONNECT is unconfirmed (no response).
50
Example Data Communication
Services
• Switched Multimegabit Data Services (SMDS)connecting LANs
• SMDS is designed to handle bursty traffic
• SMDS service: simple connectionless packet
service
• A useful feature of SMDS is broadcasting
• Another useful feature is address screening on both
incoming & outgoing packets
51
Example Data Communication
Services (cont.)
LAN 1
LAN 2
LAN 3
Leased
lines
LAN 4
SMDS
52
Data Commun. Services (Cont.)X.25 Networks
• Standard developed during the 1970s by CCITT
• Provides an interface between public packet
networks & their customers
• X.25 comprises the physical layer, the data link
layer & the network layer
• X.25 is connection-oriented & supports both
switched virtual circuits & permanent ones
• Provides ACKs and flow control
53
Data Commun. Services (Cont.)X.25 Networks
• Note: some older terminals still do not speak X.25
& need yet another way to connect (Packet
Assembler Disassembler)
• Multiplexing & switching of logical connections
take place in layer 3
• Call control signaling is carried on the same logical
connection as user data
54
Data Commun. Services (Cont.)Frame Relay
• An absolute connection-oriented service
• Goal: move bits from A to B at reasonable speed &
low cost
• Can be thought as a virtual leased line
• Does not provide ACKs or flow control
• Variable size packets (Frames) may be up to 1600
bytes
• Designed to operate at user data rates of up to 2
Mbps
55
Data Commun. Services (Cont.)Frame Relay
• Lower delay & higher thru put, since internal
processing is reduced, as is the protocol
functionality at the user-network interface
• Call control signaling is on a separate logical
connection from user data
• Multiplexing & switching of logical connections
take place in layer 2
56
Data Commun. Services (Cont.)B-ISDN and ATM
• Asynchronous Transfer Mode (ATM), Universal
information carrier: voice, data, & video
• ATM networks are connection-oriented
• Example services: video on demand, live TV from
many sources, full motion multimedia E-mail, CDquality music, high-speed data transport, LAN
interconnection
• Small fixed-sized packets (cells), 53 bytes long, of
which 5 bytes are header & 48 bytes are payload
57
Data Commun. Services (Cont.)B-ISDN and ATM
• ATM is called cell relay- a cell-switching
technology
• Cell delivery is not guaranteed, but the order is
• Cell-switching: highly flexible, & can handle both
VBR & CBR traffic, digital switching of cell is
easy via fiber optics, facilitates TV distribution
broadcasting
• Normal speed for ATM networks is 155 Mbps, 622
Mbps, and gigabit speed later
• The ATM Forum: an international group that guides
the future of ATM
58
Data Commun. Services (Cont.)B-ISDN and ATM
Plane management
Layer management
Control plane
Upper layers
CS
SAR
User plane
Upper layers
ATM adaption layer
ATM layer
TC
PMD
Physical layer
CS: Convergence sublayer
SAR: Segmentation and reassembly sublayer
TC: Transmission convergence sublayer
PMD: Physical medium dependent sublayer
59
Data Commun. Services (Cont.)B-ISDN and ATM
The ATM layers and sublayers, and their functions
OSI ATM ATM
layer layer sublayer
3/4
2/3
AAL
CS
SAR
Providing the standard interface(convergence)
Segmentation and reassembly
Flow control
cell header generation/extraction
virtual circuit/path management
Cell multiplexing/demultiplexing
ATM
TC
Cell rate decoupling
Header checksum generation and verification
Cell generation
Packing/unpacking cells from the enclosing envelope
Frame generation
PMD
Bit timing
Physical network access
2
Physical
1
Functionality
60
Data Commun. Services (Cont.)B-ISDN and ATM
Different networking services.
Issue
DQDB
SMDS
X.25
Connection oriented
Yes
No
Yes
Normal speed(Mbps)
45
45
.064
2
No
Yes
Yes
No
Yes
Fixed-size payload
Yes
No
No
No
Yes
Max payload
44
9188
128
1600
48
Permanent VCs
No
No
Yes
Yes
Yes
Multicasting
No
Yes
No
No
Yes
Switched
Frame relay ATM
Yes
Yes
155
61
Gigabits Testbeds
• Michigan State University: High-Speed
Networking & Performance Research Laboratory
(HSNP)
• ARPA & NSF financed a number of universityindustry gigabit testbeds
– MIT, U of Penn., IBM Watson Lab, and Bellcore;
Aurora- (a testbed linking four sites in the Northeast)
– AT\&T Bell Labs, Berkley, the U of Wis; Blanca(research issues: protocols, host interfaces, etc)
62
Gigabit Testbeds Cont.
– Cal Tech, JPL, Los Alamos, & San Diego Super
Computer Center; CASA- (aimed at doing research on
super computer applications
– CMU; Nectar- (an experimental MAN from CMU to
Pittsburgh, interested in applications involving chemical
process flowsheeting & Oper. Res.)
– U of NC, NC State U, IBM Res. Triangle Park;
VISTAnet- research focuses on 3D images to plan
radiation therapy for cancer patients)
63