Computer Networks I Introduction to Computer Networks
Computer Networks I Introduction to Computer Networks
Computer Networks I Introduction to Computer Networks
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Version Feb 21, 2011<br />
<strong>Computer</strong> <strong>Networks</strong> I<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
<strong>Introduction</strong> <strong>to</strong><br />
<strong>Computer</strong> <strong>Networks</strong><br />
David.Villa@uclm.es<br />
Outline<br />
Internet his<strong>to</strong>ry<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Internet his<strong>to</strong>ry<br />
Other Internet s<strong>to</strong>ries<br />
What is a network<br />
Network classification<br />
Inter-networks<br />
Networking issues<br />
Packet switching modes<br />
Network architectures<br />
Reference models<br />
● OSI model<br />
●<br />
TCP/IP model<br />
●<br />
●<br />
●<br />
●<br />
1950-1960 – Project RAND. Networking was limited <strong>to</strong> some<br />
terminals connected <strong>to</strong> a mainframe by means of leased lines.<br />
1962 – J.C.R. Licklider published “On-Line Man <strong>Computer</strong><br />
Communication”.<br />
1962 – Licklider was hired by DARPA <strong>to</strong> “interconnect the DoD<br />
main computers at Cheyenne Mountain, Pentagon and SAC”<br />
(ARPAnet).<br />
●<br />
Three network terminals were installed: Santa Monica,<br />
Berkeley and MIT.<br />
1962 – Leonard Kleinrock proposes packet switching.<br />
● References<br />
<strong>Computer</strong> <strong>Networks</strong> I 2<br />
<strong>Computer</strong> <strong>Networks</strong> I 3<br />
Internet his<strong>to</strong>ry<br />
Internet his<strong>to</strong>ry<br />
●<br />
1968 – Douglas Engelbart and ARC presents the NLS. That<br />
event was known later as “The mother of all demos”.<br />
●<br />
●<br />
1969 – RFC 1 “Host software”<br />
1969 – First ARPANET: 4 nodes<br />
● 1971 – 15 nodes<br />
The Internet Archive<br />
●<br />
The NLS (oNLine System) was the first operating system<br />
including graphic interface, desk<strong>to</strong>p, icons, mouse, windows,<br />
hyperlinks and video-conference!!<br />
<strong>Computer</strong> <strong>Networks</strong> I 4<br />
life.com – Click! A Brief His<strong>to</strong>ry of Computing<br />
<strong>Computer</strong> <strong>Networks</strong> I 5
● 1981 – ARPANET has 213 nodes<br />
The TCP/IP network testbed (February 1982)<br />
Internet his<strong>to</strong>ry<br />
Internet his<strong>to</strong>ry<br />
Sigma 7 mainframe at UCLA<br />
PDP-10<br />
●<br />
●<br />
●<br />
●<br />
1971 – Ray Tomlinson sent the first<br />
email.<br />
1971 – FTP (File Transfer Pro<strong>to</strong>col).<br />
1973 – Robert E. Kahn and Vin<strong>to</strong>n<br />
Cerf work in a common<br />
internetwork pro<strong>to</strong>col.<br />
1974 – RFC 675 “Specification of<br />
Internet Transmission Control<br />
Program”, by Vin<strong>to</strong>n Cerf.<br />
<strong>Computer</strong> <strong>Networks</strong> I 6<br />
<strong>Computer</strong> <strong>Networks</strong> I 7<br />
Internet his<strong>to</strong>ry<br />
Internet his<strong>to</strong>ry<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
1981 – RFCs 791-793 define the basics of TCP/IP.<br />
1983 (January 1th) – the flag day, TCP/IP replaced all earlier<br />
pro<strong>to</strong>cols in ARPANET.<br />
1983 – Paul Mockapetris proposes DNS (Domain Name<br />
System).<br />
1983 – Berkeley Unix 4.2BSD includes the socket API.<br />
1984 – 4 Berkeley students write BIND (Berkeley Internet<br />
Name Domain). The DNS Unix first implementation.<br />
1985 – IETF (Internet Engineering Task Force) is created.<br />
●<br />
●<br />
●<br />
●<br />
●<br />
1991 – Tim Berners-Lee (CERN)<br />
develop the first network based<br />
hypertext implementation and the HTTP<br />
pro<strong>to</strong>col in the "WorldWideWeb" project.<br />
1993 – University of Illinois<br />
creates the Mosaic graphical web<br />
browser.<br />
1994 – Classless Inter-Domain<br />
Routing.<br />
1998 – IPv6.<br />
2008 – 1500 M-users.<br />
NeXT computer. It ran the first<br />
web server at CERN<br />
● 1989 – First ISP “The World” in USA.<br />
<strong>Computer</strong> <strong>Networks</strong> I 9<br />
<strong>Computer</strong> <strong>Networks</strong> I 8<br />
Other Internet s<strong>to</strong>ries<br />
Other Internet s<strong>to</strong>ries<br />
1994 – Jerry Yang and David Filo, graduate students at<br />
Standford, create Yahoo!<br />
● 2008 → Microsoft offers 44.6 G$<br />
1994 – Jeffrey Bezos founded Amazon.<br />
●<br />
2010 – 74.4 G$, 31.200 employees<br />
● 2009 → 14.100 employees, Assets: 14.9 G$<br />
<strong>Computer</strong> <strong>Networks</strong> I 10<br />
<strong>Computer</strong> <strong>Networks</strong> I 11<br />
Other Internet s<strong>to</strong>ries<br />
Other Internet s<strong>to</strong>ries<br />
1996 – Stanford PhD students Larry Page and Sergey Brin<br />
create Google.<br />
● 2009 → 192 G$<br />
●<br />
2010 → 24.400 employees<br />
1999 – 18-year-old Shawn Fanning creates Napster.<br />
●<br />
●<br />
2001 (Feb) → 25 M-users, 80 M-mp3<br />
2001 (July) → It closes<br />
<strong>Computer</strong> <strong>Networks</strong> I 12<br />
<strong>Computer</strong> <strong>Networks</strong> I 13
Other Internet s<strong>to</strong>ries<br />
Other Internet s<strong>to</strong>ries<br />
2001 – Larry Sanger and Jimmy Wales found Wikipedia.<br />
2004 – The Harvard student Mark Zuckerberg creates<br />
Facebook.<br />
● 2010 → 41 G$<br />
● 2011 → 17 M-articles, 278 languages<br />
<strong>Computer</strong> <strong>Networks</strong> I 15<br />
●<br />
2011 → 1700 employees and 600 M-users.<br />
<strong>Computer</strong> <strong>Networks</strong> I 14<br />
Other Internet s<strong>to</strong>ries<br />
Other Internet s<strong>to</strong>ries<br />
How is it possible that a bunch of<br />
students may create some of the most<br />
successful world companies<br />
How is it possible that a bunch of<br />
students may create some of the most<br />
successful world companies<br />
The reason is<br />
TCP/IP<br />
(one of them at least)<br />
<strong>Computer</strong> <strong>Networks</strong> I 16<br />
<strong>Computer</strong> <strong>Networks</strong> I 17<br />
The nature of the Internet<br />
What is a network<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Communication is the base of the human society, and<br />
Internet has definitely changed the way that we<br />
communicate ourselves.<br />
Internet core pro<strong>to</strong>cols were designed <strong>to</strong> be open,<br />
scalable and interoperable.<br />
Most of the Internet standards and pro<strong>to</strong>cols are on<br />
public domain (RFC).<br />
Nowadays, nobody can control Internet, but this might<br />
change soon...<br />
●<br />
●<br />
Is a set of interconnected au<strong>to</strong>nomous computers so<br />
they may interchange information.<br />
The network users are aware that there are different<br />
computers with associated resources.<br />
i<br />
The network is usually represented<br />
by a cloud, <strong>to</strong> emphasize that we do<br />
not know its internal structure.<br />
<strong>Computer</strong> <strong>Networks</strong> I 18<br />
<strong>Computer</strong> <strong>Networks</strong> I 19<br />
Network classification<br />
<strong>Networks</strong><br />
by link type<br />
●<br />
●<br />
By link type<br />
By scale<br />
●<br />
●<br />
A point-<strong>to</strong>-point connection provides a link that<br />
only can be used by the two peers.<br />
Usually they are wires, but microwaves or satellite<br />
links are also feasible.<br />
● By <strong>to</strong>pology<br />
<strong>Computer</strong> <strong>Networks</strong> I 21<br />
<strong>Computer</strong> <strong>Networks</strong> I 20
<strong>Networks</strong><br />
by link type<br />
<strong>Networks</strong><br />
by scale<br />
●<br />
●<br />
In a multipoint connection several nodes (more<br />
that two) share a the link.<br />
Usually, it allows different addressing methods:<br />
●<br />
●<br />
Unicast. The address identifies a single destination host.<br />
Broadcast. A special address identifies all hosts in the net.<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
IPN: InterPlanetary and Delay Tolerant <strong>Networks</strong> (DTN).<br />
Global (Internet).<br />
WAN: Wide Area Network – a country or intercontinental links.<br />
MAN: Metropolitan Area Network – A city or part of it.<br />
LAN: Local Area Network – A department or building.<br />
PAN: Personal Area Network – <strong>Computer</strong> and desk<strong>to</strong>p.<br />
SAN: System Area Network – Clusters and embedded<br />
systems.<br />
NoC: Network On Chip – Network concepts inside a chip.<br />
● Multicast. The address identifies a host subset.<br />
<strong>Computer</strong> <strong>Networks</strong> I 23<br />
<strong>Computer</strong> <strong>Networks</strong> I 22<br />
<strong>Networks</strong><br />
by scale: LAN<br />
<strong>Networks</strong><br />
by scale: WAN<br />
●<br />
●<br />
●<br />
The LAN is privately administered.<br />
High speed (100Mbps – 1Gbps), focused on resource<br />
sharing and the needs of a set of people.<br />
It uses a single transmission technology and <strong>to</strong>pology.<br />
●<br />
●<br />
It involves hosts and sub-networks (that use p-t-p links).<br />
A subnet is composed by:<br />
router<br />
● Link lines<br />
● Routers<br />
LAN<br />
subnet<br />
LAN<br />
bus<br />
ring<br />
●<br />
The router must s<strong>to</strong>re messages and forward them <strong>to</strong> the<br />
appropriate destination. That “s<strong>to</strong>re and forward”<br />
mechanism (or “packet switching”) is the opposite <strong>to</strong><br />
“circuit switching”.<br />
<strong>Computer</strong> <strong>Networks</strong> I 24<br />
<strong>Computer</strong> <strong>Networks</strong> I 25<br />
<strong>Networks</strong><br />
by <strong>to</strong>pology<br />
inter-networks<br />
●<br />
●<br />
An inter-network is a set of interconnected (heterogeneous)<br />
networks.<br />
<strong>Networks</strong> with different software and hardware technology<br />
may share information due <strong>to</strong> a logical network pro<strong>to</strong>col<br />
and gateways.<br />
gateway<br />
web server<br />
<strong>Computer</strong> <strong>Networks</strong> I 26<br />
<strong>Computer</strong> <strong>Networks</strong> I 27<br />
Networking main issues<br />
Packet switching modes<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Addressing<br />
Data flow: Simplex, half-duplex and full-duplex<br />
Error detection and correction<br />
Message ordering<br />
Flow control<br />
Fragmentation<br />
Multiplexing<br />
Routing<br />
Connectionless<br />
Each message is sent as a unrelated individual unit.<br />
The message includes destination (and probably<br />
source) address and other information for its delivery.<br />
Connection-oriented<br />
It requires a connection set-up phase, then the<br />
communication works as a continuous byte stream,<br />
usually supporting duplex transmission.<br />
● ...<br />
<strong>Computer</strong> <strong>Networks</strong> I 29<br />
<strong>Computer</strong> <strong>Networks</strong> I 28
Network architecture<br />
Reference models<br />
●<br />
●<br />
●<br />
●<br />
It is a framework that describe a communication<br />
network, its components and pro<strong>to</strong>cols.<br />
The network design is organized as a layer stack.<br />
Each layer provides a set of services <strong>to</strong> the upper<br />
layer and requires services <strong>to</strong> the lower layer.<br />
The layer 'n' of a node maintains a virtual<br />
conversation with the same layer the destination<br />
node. That conversation must meet a specific<br />
pro<strong>to</strong>col.<br />
●<br />
●<br />
OSI model<br />
TCP/IP model<br />
i<br />
The reference model and the pro<strong>to</strong>col<br />
suite implementation are very different<br />
things. They must not be confused.<br />
<strong>Computer</strong> <strong>Networks</strong> I 30<br />
<strong>Computer</strong> <strong>Networks</strong> I 31<br />
OSI model<br />
OSI layering<br />
●<br />
●<br />
●<br />
The Open System Interconnection (OSI) is an ISO<br />
(International Organization for Standardization)<br />
It is an initiative is a general conceptual model <strong>to</strong><br />
describe and study any pro<strong>to</strong>col stack.<br />
The model defines three basic concepts:<br />
●<br />
●<br />
service: the function that a layer may provide.<br />
interface: the way <strong>to</strong> get the layer services.<br />
● pro<strong>to</strong>col: the set of rules between homologous peers.<br />
<strong>Computer</strong> <strong>Networks</strong> I 33<br />
application<br />
presentation<br />
session<br />
transport<br />
network<br />
link<br />
physical<br />
segments<br />
packages<br />
frames<br />
bits<br />
physical media<br />
application<br />
presentation<br />
session<br />
transport<br />
network<br />
link<br />
physical<br />
<strong>Computer</strong> <strong>Networks</strong> I 32<br />
1. Physical layer<br />
OSI model<br />
media layers<br />
It defines the electrical, mechanical and temporal<br />
characteristics for devices required in a particular data<br />
communication technology.<br />
2. Data link layer<br />
It supports data transfers between directly reachable nodes<br />
(neighbors). It provides physical addressing.<br />
3. Network layer<br />
It supports end-<strong>to</strong>-end communication with variable length<br />
individual messages. It provides the logical addressing.<br />
4. Transport layer<br />
OSI model<br />
host layers<br />
It provides a reliable error-free communication channel between end<br />
users. It also support process multiplexing.<br />
5. Session layer<br />
It allows <strong>to</strong> create sessions among hosts and it manages<br />
synchronization.<br />
6. Presentation layer<br />
It define on-the-wire data representation and its semantic.<br />
7. Application layer<br />
Application specific pro<strong>to</strong>cols like mail, news, remote shell, etc.<br />
<strong>Computer</strong> <strong>Networks</strong> I 34<br />
<strong>Computer</strong> <strong>Networks</strong> I 35<br />
TCP/IP model<br />
TCP/IP model<br />
●<br />
●<br />
The TCP/IP model arrives years<br />
later of first implementations. The<br />
aim is <strong>to</strong> formalize and<br />
standardize its use and<br />
development.<br />
It is closely related with TCP/IP<br />
pro<strong>to</strong>cols stack, and it can not be<br />
used <strong>to</strong> describe other pro<strong>to</strong>cols<br />
or networks.<br />
application<br />
transport<br />
inter-net<br />
host <strong>to</strong> net<br />
host <strong>to</strong> net<br />
Application layer<br />
High level pro<strong>to</strong>cols like: DNS, SMTP, HTTP, FTP and many others.<br />
Transport layer<br />
It defines transport pro<strong>to</strong>cols: TCP (Transport Control Pro<strong>to</strong>col) and UDP<br />
(User Datagram Pro<strong>to</strong>col).<br />
Inter-network layer<br />
It provides mechanisms <strong>to</strong> network interconnection and package routing.<br />
It defines the IP pro<strong>to</strong>col, that provides a connectionless delivery service.<br />
Host-<strong>to</strong>-net layer<br />
It provides (does not provides) required mechanisms <strong>to</strong> make possible<br />
that “a IP packet reaches other host in the network”.<br />
<strong>Computer</strong> <strong>Networks</strong> I 36<br />
<strong>Computer</strong> <strong>Networks</strong> I 37
OSI, TCP/IP and hybrid models<br />
Encapsulation<br />
7<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
OSI<br />
application<br />
presentation<br />
session<br />
transport<br />
network<br />
data link data link<br />
physical<br />
TCP/IP<br />
application<br />
transport<br />
inter-net<br />
host <strong>to</strong> net<br />
host <strong>to</strong> net<br />
hybrid<br />
application<br />
transport<br />
network<br />
data link data link<br />
physical<br />
The user information can not go directly “on the wire”.<br />
Data transmission requires group bytes in PDUs (Pro<strong>to</strong>col Data Units). The PDU adds<br />
control information as header and tails.<br />
application<br />
transport<br />
network<br />
network<br />
header<br />
transport<br />
header<br />
user data<br />
segment<br />
package<br />
i<br />
When we talk about a “x layer thing”<br />
we always refer <strong>to</strong> the OSI model.<br />
i<br />
Although... we will<br />
use the hybrid.<br />
data link data link<br />
link<br />
header<br />
tail<br />
frame<br />
physical<br />
bits<br />
<strong>Computer</strong> <strong>Networks</strong> I 38<br />
Encapsulation<br />
The recipe<br />
1. Data build (from an application).<br />
2. Segment the data for end-<strong>to</strong>-end transportation.<br />
3. Add network addresses and build one (or several)<br />
datagrams.<br />
4. Add physical link address and build frames for<br />
each datagram.<br />
5. Code frame bits in signals that can be sent by the<br />
physical medium.<br />
References<br />
B.F. Transmisión de da<strong>to</strong>s y redes de comunicaciones, 3th edition 2007.<br />
●<br />
Chapter 1<br />
A.S. Redes de computadores. Pearson, 4th edition, 2003.<br />
●<br />
Chapter 1: Sections 1.1 a 1.4 y 1.6<br />
CISCO Systems. Inc. Guía del primer año. CCNA 1 y 2. Cisco Press, 2003.<br />
●<br />
Chapter 1<br />
●<br />
Chapter 2: Pages 39 – 69<br />
CISCO Networking Academy e-learning.<br />
●<br />
Modules 1 y 2.<br />
All unlabeled figures are taken from the Wikipedia.<br />
<strong>Computer</strong> <strong>Networks</strong> I 41<br />
CISCO Icons<br />
Bridge hub switch<br />
multilayer<br />
switch<br />
router<br />
PC dumb terminal lap<strong>to</strong>p<br />
file server<br />
FDDI<br />
FDDI ring<br />
serial line<br />
network cloud<br />
circuit switched<br />
serial line<br />
Ethernet<br />
<strong>Computer</strong> <strong>Networks</strong> I 42