printable version

Network Overview
COMP750
Distributed Systems
Ex:
Any standard electrical device
110 volts of 60 Hertz providing
up to 15 amps
The electrical power network in North America follows a standard to
ensure that any electrical device can be used.
• The purpose of a network is to allow two computers
to communicate.
Network Standards
•
•
•
•
Not very often followed as a standard.
OSI networks are more popular in Europe.
Popular and important model for network architectures.
Similar to the Internet Protocol model but not the same.
• A standard and network architecture model.
International Standards Organization
Open System Interface
•
•
Divides the many networking functions into seven different layers
Called a stack because each layer provides functions or services to
the layer above it.
• OSI Stack
International Standards Organization Open System Interface Model
ISO OSI Model
Information flow indicator
•Only the lowest layer
actually sends bits to another
computer
•When a layer wants to send
something to its peer layer in
another computer, it calls a
function in the layer below it
to actually send the data.
• OSI Stack
sending computer
Layer 1
Layer 2
Layer 3
Layer 4
Layer 5
Layer 6
Layer 7
OSI Flow Chart
receiving computer
•
•
•
•
Their post office
Airline
Your post office
Airline
You do not have to worry about how to find your friends house in the distant city.
The post office does not need to know how to fly the airplane.
Each layer assumes that the layer below it will provide certain functions.
Each layer provides additional functionality
Your friend
You
Ex: U.S. Mail
OSI (an Analogy)
7.
Physical
Ethernet, Token Ring
SONET, RS-232C
Provides network services.
Defines the characteristics of the physical
connections. This is the only layer that
actually sends bits to another computer.
Detects and corrects any errors on the link.
Provides flow control.
6. Data link
- logical data link
- media access control
Internet Protocol (IP)
5.
Finds a route for packets to take through
the network. Directs packets to the correct
computer
Transport
4.
Establishes sessions.
Network
Session
3.
Converts the data to the representation
used by the local computer.
X.400 email, HTTP, FTP, telnet
Provides network services.
Transport Control Protocol (TCP)
Presentation
2.
example
purpose
Multiplexes data streams from different
applications. Directs packets to the correct
user on a computer. This is the first end-toend layer. May also provide error
correction.
Application
layer
Seven Layer Specs. (OSI)
1.
Information chart
Application
Transport
Internet
Network Interface
1.
2.
3.
5.
layer
TCP, UDP
IP
Transport
Network
Data Link
Multiplexes data streams from different
applications. May also provide error
correction.
Routing.
Provides access to the Data Link and lower
protocols. The IP stack does not define the
lower levels.
Ethernet
HTTP, FTP, Telnet
Application, Session
and Presentation
Provides network services.
example
OSI equivalent
purpose
• The Internet Protocol uses a similar, but slightly
different model than OSI.
• The Internet Protocol does not define the lower
levels.
Internet Protocol Stack
• The first, or lowest, end to end layer.
• The transport layer delivers packets to the
appropriate application on the host.
• Some transport layer protocols correct
transmission errors.
• There are several popular transport layer
protocols including TCP and UDP.
Transport Layer
• Applications are identified by a 16 bit
integer number known as a port number.
• Internet ports do NOT refer to plugs in the
back of the machine.
• The full address of an application is
InternetName:port
• Applications bind to a port number to
receive data sent to that port.
Internet Port Numbers
–
–
–
–
–
–
21
23
79
80
443
17
ftp
telnet
finger
HTTP web servers
HTTPS secure web servers
Quote of the Day
• Port numbers under 2K are reserved for
specific “well known” application servers
Well Known Ports
• Well Known Ports are only used by servers.
• Servers for non-standard applications use
higher numbered ports.
• Applications accessing a server use a higher
numbered port.
• When a program connects to a remote
system, it is automatically assigned a port.
Lesser Known Ports
best effort delivery
Complete reliability
corrects lost, corrupted and
out-of-order packets
Full Duplex
communication
Point to Point
communication
Stream Interface
Reliable connection startup no connection
Point to Point communication or
broadcast
Packet Interface
Full Duplex communication
Connectionless
UDP
Connection Oriented
TCP
TCP and UDP
•
•
•
•
HTTP - web protocol
telnet - terminal protocol
ftp - file transfer protocol
any program that has lengthy transfers that
require reliability.
Popular TCP Applications
DNS requests
WINS requests
Streaming Audio
Any application that needs to send a short
amount of data that can be resent if
necessary (idempotent or at-least-once).
• Time critical applications
•
•
•
•
Popular UDP Applications
– message to the server requesting a connection.
– Response from server accepting connection.
– Message to the server specifying parameters.
• A program using TCP must connect to the
remote host before sending any data.
• Connection verifies ability to communicate
with the destination.
• To establish a connection, TCP sends:
Connection Oriented
• TCP corrects lost, corrupted, delayed and
out-of-order packets.
• Applications do not have to worry about the
transmission reliability.
• Data is delivered exactly as it was sent.
• UDP does not correct any errors. Higher
level software must recover from problems.
• UDP is far more efficient than TCP.
Error Correction
• TCP connects one sender to one receiver.
• All data sent over a TCP connection goes to
the same receiving application.
• TCP connections do not support broadcasts.
• Connections are full duplex allowing
communication in both directions.
Point to Point Communications
Received less than request 50 bytes
UDP receive
75 bytes
25
50 bytes
truncated
50 bytes
UDP receive
50 bytes
50 bytes
UDP receive
25 bytes
50 bytes
UDP sent
Packet Interface
50 bytes
TCP receive
50 bytes
TCP receive
75 bytes
TCP receive
25 bytes
50 bytes
TCP sent
25
50 bytes
50 bytes
50 bytes
25
Stream Interface
TCP Header
Checksum
Message Length
Data
Destination Port
Source Port
UDP Header
The nested protocol headers that appear in a frame as the frame travels across
a network. Each layer of protocol software adds a header to an outgoing
frame.
Nested Protocol Headers
•The data link layer often adds a trailer to the packet that contains a cyclic
redundancy check (CRC) to detect errors.
•The physical layer might, or might not, append a header or trailer to the packet.
•It is the bottom frame, with all of the headers, that is actually sent across the
network. When it is received at the other end, the headers are stripped off as the
packet is passed up the stack to the user application.
Nested Protocol Headers
• Each packet needs a header to identify its
destination.
• Intermediate nodes must receive an entire
packet before sending on towards the
destination, but they do not have to receive
the entire message.
• Data is sent in packets or frames.
Packet Switching
• Packet sizes range from 48 bytes for ATM
to 1500 bytes for Ethernet to 8K bytes for
frame relay.
• The size of a packet is usually much smaller
than the total data size.
• The packets can be variable sized or (more
often) fixed sized.
Packet Switching
Packet Switching
• Circuit switching works well if the time to
transfer the data is long compared to the
circuit setup time.
• Packet switching easily allows multiple
independent data streams to be combined
one a channel.
• The Internet uses packet switching.
Comparison of Methods
 dataBits  PktSize + headerSize
*
time = 

 PktSize  transmissi onRate
• When calculating the transmission time of
data sent over a packet switched system,
you have to account for the header and
trailer overhead.
• Each packet has a header and can only hold
some maximum amount of data.
Transmission Time
•
•
•
•
•
•
•
X = number of bits to be sent (bits).
B = transmission line speed (bits/second)
D = propagation delay (seconds) = distance/c
P = packet size (bits).
H = header size (bits).
S = switching time (seconds).
K = number of hops or data lines used.
Delay with Intermediates