Layering

advertisement
Computer Networking
An Introduction to Computer
Networks and Layered Architectures
Dr Sandra I. Woolley
Contents

Introduction to computer
networks

Layered architectures
– OSI and TCP/IP layer models
– Overview of TCP/IP
– Application protocols and
TCP/IP utilities
8P8C (RJ45) network connectors
http://www.flickr.com/photos/kluzz/1694878799/
OSI
– Open Systems Interconnection
TCP/IP - Transmission Control Protocol/Internet Protocol
2
What is a Communication Network?

A communication network is a
set of equipment and facilities
that provides a communication
service.

Examples of equipment are
routers, servers, switches,
multiplexers, hubs and
modems.
A cloud is usually used to represent a
computer network.

Examples of facilities are
copper wires, coaxial cables,
optical fiber, ducts, conduits,
etc.
3
Network Protocols

Communications between computers
requires very specific unambiguous
rules.

A protocol is a set of rules that governs
how two or more communicating
parties are to interact.
For example,
– Internet Protocol (IP)
– Transmission Control Protocol
(TCP)
– HyperText Transfer Protocol
(HTTP)
– Simple Mail Transfer Protocol
(SMTP)
http://www.flickr.com/photos/kairin/68086104/
4
Standards Bodies

Internet Engineering Task Force
– Internet standards development
– Request for Comments (RFCs):
www.ietf.org

International Telecommunications
Union
– International telecom standards

IEEE 802 Committee
– Local area and metropolitan
area network standards

Industry Organizations
– MPLS Forum, WiFi Alliance,
World Wide Web Consortium
5
Packet vs. Circuit Switching

Architectures appear and disappear over time
– Telegraph (message switching)
– Telephone (circuit switching)
– Internet (packet switching)

The trend has been toward packet switching
– Newer mobile phone technologies use packet switching.
– However, large packet flows are easier to manage with circuitlike methods.
6
Computer Network Evolution

1950s: Telegraph technology adapted to
computers.
 1960s: Dumb terminals access shared host
computer.
– SABRE airline reservation system
 1970s: Computers connect directly to each
other.
– ARPANET packet switching network
– Ethernet local area network
– TCP/IP internet protocols
 1980s and 1990s: New applications and
Internet growth.
– Commercialization of Internet
– E-mail, file transfer, web, P2P (peer-topeer), . . .
– Internet traffic surpasses voice traffic
An American Civil War (1861-5)
Telegraph Office
http://kikoshouse.blogspot.co.uk/2009/01/lincoln-as-first-technology-president.html
The Great Eastern which laid the first
transatlantic telegraph cables in 1866 and in
New York Harbour
http://en.wikipedia.org/wiki/SS_Great_Eastern
http://en.wikipedia.org/wiki/File:SS_Great_Eastern_in_New_York_Harbor_by_Stacy.jpg
7
ARPANET

The Advanced Research Projects
Agency Network (ARPANET) of
the U.S. Department of Defense
was the world's first operational
packet switching network, and the
progenitor of the global Internet.

Previous data communications
used circuit switching, where a
dedicated circuit is required for the
duration of each communication.

With packet switching links could
be shared and packets routed
independently.
Heart, F., McKenzie, A., McQuillian, J., and Walden, D., ARPANET Completion Report, Bolt, Beranek and
Newman, Burlington, MA, January 4, 1978.
8
Ethernet Local Area Network

In 1980s, affordable workstations
available.

Need for low-cost, high-speed
networks
– To interconnect local workstations
– To access local shared resources
(printers, storage, servers)

Low cost, high-speed
communications with low error rate
possible using coaxial cable.

Category 5 Ethernet cables
http://www.flickr.com/photos/zinkwazi/474203018/
Ethernet is the standard for highspeed wired access to computer
networks.
9
Ethernet Medium Access Control

Network interface controllers
(NICs) connect workstations to a
LAN (Local Area Network.)

Each NIC has a globally unique
address.

Frames are broadcast into the
shared medium.

NICs listen to the medium for
frames with their address.

Transmitting NICs listen for
collisions with other stations, and
abort and reschedule
retransmissions.
Transceivers
10
Internet






An internet is a network of networks.
The Internet used to always have a capital I
to distinguish it from a generic network of
networks. Many publications still observe
the distinction.
Routers (gateways) interconnect different
networks.
Host computers prepare Internet Protocol
(IP) packets and transmit them over their
attached network.
Routers forward IP packets across networks.
IP provides a “best-effort” service.
Net 1
08:14 AM Aug. 16, 2004 PT
Effective with this sentence, Wired News
will no longer capitalize the "I" in internet.
At the same time, Web becomes web and
Net becomes net.
Net 2
Router
11
Internet Addressing and Routing



IP uses a hierarchical address space: Network ID + Host ID*
IP packets (datagrams) are routed according to the Network ID
IP routers use routing tables to direct the transfer of packets.
Net 3
G
Net 1
G
G
G
Net 2
Net 5
G
Net 4
G
12
* “ID” abbreviation for IDentifier
Internet Names and IP Addresses





Routing is done based on IP
addresses. IPv4 has 32-bit addresses.
We will consider IPv6 later.
Addresses have a dotted-decimal
notation.
– E.g., 128.100.11.1
Hosts are also identified by name
– Easier to remember
– Names often have a hierarchical
name structure, e.g.
www.birmingham.ac.uk
Domain Name System (DNS) provides
conversion between names and
addresses.
Domain names can be purchased, for
example, from UK2.net.
13
Internet Transport Protocols

Host computers run two transport protocols on top of IP to enable
process-to-process communications.
– User Datagram Protocol (UDP) enables best-effort transfer.
– Transmission Control Protocol (TCP) enables reliable transfer.

All Internet applications run on TCP or UDP. For example,
– TCP: HTTP (web); SMTP (e-mail); FTP (file transfer)
– UDP: DNS, RTP (voice & multimedia)
Transport
Protocol
Internet
14
Example in Textbook

Study the example in the recommended text that describes what happens
when a user clicks on a URL.
– Note: DNS domain name service uses UDP, HTTP uses TCP. Also
note the use of port numbers; ephemeral port numbers and wellknown port numbers.

Browser software uses HyperText Transfer Protocol (HTTP) to send
request for document
 HTTP server waits for requests by listening to a well-known port number
(80 for HTTP)
 HTTP client sends request messages through an “ephemeral port
number,” e.g. 1127
 HTTP needs a Transmission Control Protocol (TCP) connection between
the HTTP client and the HTTP server to transfer messages reliably
ACK
ACK, TCP Connection Request
From: 64.15.247.200 Port 80
To:128.100.11.13 Port 1127
TCP Connection Request
From: 128.100.11.13 Port 1127
To: 64.15.247.200 Port 80
15
Layer Models
Layers, Services and Protocols

The overall communications process between two or more
machines connected across one or more networks is very complex.

Layering puts similar communication functions into groups that are
manageable.

Each layer provides a service to the layer above.

Each layer operates according to a protocol.
17
The OSI* Reference Model
*Open Systems Interconnection

Network architecture:
– Definition of layers
– Design of protocols for each layer

By the 1970s every computer vendor had developed its own
proprietary layered network architecture.

Computers from different vendors could not be networked together.

Open Systems Interconnection (OSI) was an international effort by
the International Organization for Standardization (ISO) to enable
multivendor computer interconnection.
18
The OSI Reference Model
Application A
Application B
7
Application
layer
Application
layer
6
Presentation
layer
Presentation
layer
6
Session
layer
Session
layer
4
Transport
layer
Transport
layer
3
Network
layer
Network
layer
Network
layer
Network
layer
2
Data link
layer
Data Link
layer
Data Link
layer
Data link
layer
1
Physical
layer
Physical
layer
Physical
layer
Physical
layer
Communication network
19
The OSI Layers







Application layer : e-mail, file transfer, network
management, etc.
Presentation layer : independent representation of
data.
Session layer : dialogue control.
Transport layer : end-to-end transfer of data
(segments). Error control, flow control, connection
set-up and release.
Network layer : transfers packets across the
network. Logical addressing, packet forwarding and
routing.
Data link layer : enables communication between
network nodes. It has two sublayers*: logical link
control (LLC) and medium access control (MAC).
Logical link control multiplexes protocols and
provides error control and node-to-node
communication of frames. Medium access control
provides physical addressing and channel access
control mechanisms.
Physical layer : Transfer of bits over the channel.
Set up and release of physical connection.
*An IEEE subdivision – e.g. Ethernet standard
http://en.wikipedia.org/wiki/File:Osi-model.png
20
Peer-to-Peer Communication Terminology

Processes at layer n (any of the 7
layers) are referred to as layer n
entities.

Layer n+1 entities make use of layer n
services below via a software port
called the layer service access point
(SAP).

Entities exchange protocol data units
(PDUs).

PDUs contain a header (which
contains protocol control information)
and a service data unit (SDU)
(information requiring communication).
n-PDUs
n
entity
n
entity
21
Layer Services and Encapsulation
n+1
entity
n+1
entity
n-SAP
n-SDU
n-SDU
n-SDU
n-SAP
H
n entity
n entity
H
n-SDU
n-PDU

The layer n SDU is the layer n + 1 PDU and is encapsulated in the layer n
PDU.

The service provided by a layer can be connection-oriented or connectionless.
22
Headers and Trailers
Application A
Application B
Data
Application
layer
Presentation
layer
Session
layer
sh
Transport
layer
Transport
layer
th
Network
layer
Physical
layer
Presentation
layer
ph
Session
layer
Data link
layer
Application
layer
ah
Network
layer
nh
dt
dh
Bits
Data link
layer
Physical
layer
23
Segmentation and Reassembly



A layer may impose a limit on the
size of a data block that it can
transfer for implementation or other
reasons.
Therefore a layer n+1 SDU may be
too large to be handled as a single
unit by layer n.
This can be resolved by
segmentation and reassembly.
–
–
(a)
Segmentation
n-SDU
n-PDU
(b)
Sender side: SDU is segmented into
multiple PDUs.
Receiver side: SDU is reassembled from
sequence of PDUs.
n-PDU
n-PDU
Reassembly
n-SDU
n-PDU
n-PDU
n-PDU
24
The Internet and TCP/IP
TCP/IP Network Architecture

While the OSI standards were being developed the TCP/IP
(Transmission Control Protocol/Internet Protocol) network
architecture emerged as an alternative.

TCP/IP was distributed freely as part of Berkeley UNIX.
– Numerous applications were developed at various universities
and a market for networking software emerged.
– This led to a global Internet and the dominance of the TCP/IP
network architecture.
– IP provides a connectionless best-effort service for packets of
information.
26
TCP/IP Network Architecture
Application
Layer

Transport
Layer

Internet
Layer
Network
Interface
The TCP/IP
model does
not require
strict layering.
E.g.
Applications
can run
directly over
the internet
layer.
Application
Layer
Transport
Layer
Internet
Layer
Network
Interface
27
How the Layers Work Together
(Encapsulation Example)
HTTP Request
TCP Header contains
source & destination port
numbers
IP Header contains
source and destination IP
addresses; transport
protocol type
Ethernet Header contains
source & destination MAC
addresses;
network protocol type
Ethernet
header
TCP
header
HTTP Request
IP
header
TCP
header
HTTP Request
IP
header
TCP
header
HTTP Request
FCS*
*FCS – Frame Check Sequence
28
TCP/IP Network Architecture






The TCP/IP network architecture is a set of protocols that
allows communication across multiple diverse networks.
It has four layers. The TCP/IP application layer
incorporates the functions of the top three OSI layers.
Application layer programs (email, file transfer etc.) are
intended to run directly over the transport layer.
Two basic types of service are offered in the transport
layer;
– Transmission Control Protocol (TCP) reliable
connection-oriented transfer
– User Datagram Protocol (UDP) - best-effort
connectionless transfer.
The internet layer handles the transfer of information
across multiple networks (e.g., routing and congestion
control). A key aspect of the internet layer is the definition
of a globally unique address for machines. The internet
layer provides a single service of best effort connectionless
packet transfer.
The network interface layer enables IP communication
across different networks.
29
Internet Protocol Approach




IP packets transfer information across Internet
Host A IP → router→ router→ router→ Host B IP
IP layer in each router determines next hop (router)
Network interfaces transfer IP packets across networks
Host B
Host A
Application layer
Application layer
Router/gateway
Transport layer
Transport layer
Internet layer
Internet layer
Internet layer
Network
interface layer
Network 1
Network
interface layer
Network
interface layer
Network 2
30
TCP/IP Protocols
HTTP
DNS
SMTP
TCP
RTP
UDP
Best-effort
connectionless packet
transfer
IP
Network
Network
Network
interface 1
interface 2
interface 3
(ICMP, ARP)
31
IP Utilities

PING - a simple application to determine if a host is reachable.
– Makes use of Internet Control Message Protocol (ICMP) messages. The
purpose of ICMP is to inform sending hosts about errors encountered by
destination hosts or routers.

Traceroute - to determine the route that a packet will take to another
host.
– Makes use of ICMP and UDP. The sender sends a UDP datagram with
TTL =1 (Time to live in hops = 1) and an invalid port no. to the destination
host. The first router sets TTL to 0, discards the datagram and sends an
ICMP Time Exceeded message to the sender. This identifies the first
machine in the route. TTL is incrementally increased until the destination is
reached. The destination then returns an ICMP Port Unreachable message
to the sender.

Netstat - provides information about the network status.

Tcpdump - capture and observe packet exchanges in a link.
32
Private Study Recommendations

Read chapters 1 and 2 (Section 2.4 on sockets is NOT assessed).

Study the “nytimes” example in the text.

Experiment with Wireshark (previously “Ethereal”).

Experiment with utilities, for example:
– ping at command prompt -Type "command" in "Run" box and then
"ping" at prompt – instructions will appear)
– traceroute – See visual traceroute or 3D traceroute applications at
www.snapfiles.com (“tracert” is the command line instruction)
– Visit www.mycooltools.com for “VisualRoute and “Myspeed”
33
Thank You
Download