Computer Networking An Introduction to Computer Networks and Layered Architectures Dr Sandra I....
-
Upload
reginald-ryan -
Category
Documents
-
view
221 -
download
2
Transcript of Computer Networking An Introduction to Computer Networks and Layered Architectures Dr Sandra I....
Computer NetworkingAn Introduction to Computer
Networks and Layered Architectures
Dr Sandra I. Woolley
2
Contents
Introduction to computer networks
Layered architectures
– OSI and TCP/IP layer models
– Overview of TCP/IP
– Application protocols and TCP/IP utilities
OSI – Open Systems Interconnection
TCP/IP - Transmission Control Protocol/Internet Protocol
8P8C (RJ45) network connectorshttp://www.flickr.com/photos/kluzz/1694878799/
3
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.
Examples of facilities are copper wires, coaxial cables, optical fiber, ducts, conduits, etc.
A cloud is usually used to represent a computer network.
4
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/
5
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
66
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 circuit-
like methods.
77
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-to-
peer), . . .– 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 Harbourhttp://en.wikipedia.org/wiki/SS_Great_Eastern
http://en.wikipedia.org/wiki/File:SS_Great_Eastern_in_New_York_Harbor_by_Stacy.jpg
8
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.
9
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.
Ethernet is the standard for high-speed wired access to computer networks.
Category 5 Ethernet cableshttp://www.flickr.com/photos/zinkwazi/474203018/
10
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
11
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 Net 2
Router
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.
12
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.
G
G
G
GG
G
Net 1
Net 5
Net 3
Net 4Net 2
* “ID” abbreviation for IDentifier
1313
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.
1414
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)
Internet
Transport
Protocol
1515
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 well-known 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
TCP Connection RequestFrom: 128.100.11.13 Port 1127To: 64.15.247.200 Port 80
ACK, TCP Connection RequestFrom: 64.15.247.200 Port 80 To:128.100.11.13 Port 1127
ACK
Layer Models
1717
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.
1818
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.
1919
The OSI Reference Model
7
6
6
4
3
2
1
Applicationlayer
Presentationlayer
Sessionlayer
Transportlayer
Networklayer
Data linklayer
Physicallayer
Applicationlayer
Presentationlayer
Sessionlayer
Transportlayer
Networklayer
Data linklayer
Physicallayer
Networklayer
Application A Application B
Data Linklayer
Physicallayer
Networklayer
Data Linklayer
Physicallayer
Communication network
2020
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
21
nentity
n-PDUs
nentity
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).
22
n+1entity
n-SAP
n+1entity
n-SAP
n entity n entity
n-SDU
n-SDU
n-SDU
H
H n-SDU
n-PDU
Layer Services and Encapsulation
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.
23
Headers and Trailers
sh
Applicationlayer
Presentationlayer
Sessionlayer
Transportlayer
Networklayer
Data linklayer
Physicallayer
Application A Application BData
ah
Bits
dhdt
nh
th
ph
Applicationlayer
Presentationlayer
Sessionlayer
Transportlayer
Networklayer
Data linklayer
Physicallayer
24
n-PDU
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.– Sender side: SDU is segmented into
multiple PDUs.– Receiver side: SDU is reassembled from
sequence of PDUs.
n-SDU
n-PDU n-PDU n-PDU
Segmentation(a)
n-SDU
n-PDU n-PDU
Reassembly(b)
The Internet and TCP/IP
2626
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.
27
ApplicationLayer
TransportLayer
InternetLayer
NetworkInterface
ApplicationLayer
TransportLayer
InternetLayer
NetworkInterface
TCP/IP Network Architecture
The TCP/IP model does not require strict layering.
E.g. Applications can run directly over the internet layer.
28
How the Layers Work Together (Encapsulation Example)
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
HTTP Request
TCP header HTTP Request
IP header
TCP header HTTP Request
Ethernet header
IP header
TCP header HTTP Request FCS*
*FCS – Frame Check Sequence
29
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.
3030
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
Application layer
Transport layer
Internet layer
Network interface layer
Internet layer
Network interface layer
Network 1 Network 2
Host A Host B
Router/gatewayApplication layer
Transport layer
Internet layer
Network interface layer
31
TCP/IP Protocols
(ICMP, ARP)
HTTP SMTP RTP
TCP UDP
IP
Network
interface 1
Network
interface 3
Network
interface 2
DNS
Best-effort connectionless packet transfer
3232
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.
3333
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”
Thank You