Title: Computer Networking An Introduction to Computer Networks and Layered Architectures
1Computer NetworkingAn Introduction to Computer
Networks and Layered Architectures
2Contents
- 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 connectors http//www.flickr.c
om/photos/kluzz/1694878799/
3What 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.
4Network 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/
5Standards 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
6Packet vs. Circuit Switching
- Architectures appear and disappear over time
- Telegraph (message switching)
- Telephone (circuit switching)
- Internet (packet switching)
- The trend is toward packet switching
- Cellular voice networks are packet-based.
- However, large packet flows are easier to manage
with circuit-like methods.
7Computer 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, . . .
- Internet traffic surpasses voice traffic
8ARPANET
- 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.
9Ethernet 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 cable http//www.flickr.com/ph
otos/zinkwazi/474203018/
10Ethernet Medium Access Control
- Network interface cards (NICs) connect
workstations to a LAN (Local Area Network.) - Each NIC has a globally unique address.
- Frames are broadcast into coaxial cable.
- NICs listen to the medium for frames with their
address. - Transmitting NICs listen for collisions with
other stations, and abort and reschedule
retransmissions.
11Internet
- An internet is a network of networks.
- The Internet has a capital I ( or does it? See
right.) - 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.
0814 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.
12Internet 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.
13Internet 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.eee.bham.ac.uk - Domain Name System (DNS) provides conversion
between names and addresses. - Domain names can be purchased, for example, from
UK2.net.
14Internet 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)
15Example 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
16Layer Models
17Layers, 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.
18The 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.
19The OSI Reference Model
Application A
Application B
Application layer
Application layer
7
Presentation layer
Presentation layer
6
Session layer
Session layer
6
Transport layer
Transport layer
4
Communication network
Network layer
Network layer
Network layer
Network layer
3
Data Link layer
Data Link layer
Data link layer
Data link layer
2
Physical layer
Physical layer
Physical layer
Physical layer
1
20The 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 -
controls error control, flow control, connection
set-up and release. - Network layer provides packet transfer of
packets across the network. The key aspect is
routing. - Data link layer transfers frames between
network nodes. Inserts address and check bits.
Performs flow control. - Physical layer Transfer of bits over the
channel. Set up and release of physical
connection.
21Peer-to-Peer Communication Terminology
- Processes at layer n (any of the 7 layers) are
referred to as layer n entities. - Layer n1 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).
22Layer Services
- 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.
23Headers and Trailers
24Segmentation and Reassembly
- A layer may impose a limit on the size of a data
block that it can transfer for implementation or
other reasons. - Thus a layer-n SDU may be too large to be handled
as a single unit by layer-(n-1) - Sender side SDU is segmented into multiple PDUs
- Receiver side SDU is reassembled from sequence
of PDUs
(a)
Segmentation
n-SDU
n-PDU
n-PDU
n-PDU
Reassembly
(b)
n-SDU
n-PDU
n-PDU
n-PDU
25The Internet and TCP/IP
26TCP/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.
27TCP/IP Network Architecture
- The TCP/IP model does not require strict
layering. - E.g. Applications can run directly over the
internet layer.
Application Layer
Application Layer
Transport Layer
Transport Layer
Internet Layer
Internet Layer
Network Interface
Network Interface
28How 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
Ethernet header
FCS Frame Check Sequence
29TCP/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.
30Internet 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
31TCP/IP Protocols
HTTP
RTP
DNS
SMTP
Reliable stream service
TCP
UDP
Best-effort connectionless packet transfer
(ICMP, ARP)
32IP 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.
33Private 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
34Thank You