View
222
Download
0
Embed Size (px)
Citation preview
Oct 18, 2009
Computer Networking
Yishay Mansour (mansour at cs.tau.ac.il)
Teaching Assistant: Hillel Avni
1
Lecture 1: Oct 18, 2009
Course InformationLectures: Sunday 4 – 7 Orenstein 111Exercises: Wednesday 11 –12, 12 – 1 Super Center 315 מרכזי על
Web site: http://www.cs.tau.ac.il/research/hillel.avni/courses/comnet10.html
1. An Engineering Approach to Computer Networking / Keshav
2. Computer Networks / Tanenbaum 3. Data Networks / Bertsekas and Gallager
•A Top-down Approach to Computer Networking / Kurouse-Ross Books:
2/71
Lecture 1: Oct 18, 2009
Practical Information
Homework assignment: Mandatory Both theoretical and programming
Grades:Final Exam: 60% theory exercises: 20%Programming exercises: 20%
3/71
Lecture 1: Oct 18, 2009
Motivation
Today’s economy manufacturing, distributing, and retailing goods but also creating and disseminating
information publishing banking film making….
part of the ‘information economy’ Future economy is likely to be dominated
by information!
4/71
Lecture 1: Oct 18, 2009
Information? A representation of knowledge Examples:
books bills CDs & DVDs
Can be represented in two ways analog (atoms) digital (bits)
the Digital Revolution convert information as atoms to information as bits use networks to move bits around instead of atoms
5/71
Lecture 1: Oct 18, 2009The Challenges
represent all types of information as bits.
move the bits In large quantities, everywhere, cheaply, Securely, with quality of service, ….
6/71
Lecture 1: Oct 18, 2009
Today’s Networks are complex!
hosts routers links of various media applications protocols hardware, software
Tomorrow’s will be even more! 7/71
Oct 18, 2009 8
Backbone ISPISP ISP
Internet Physical InfrastructureResidential access
Cable Fiber DSL Wireless
Campus access, e.g.,
Ethernet Wireless
The Internet is a network of networks
Each individually administrated network is called an Autonomous System (AS) 8/71
Lecture 1: Oct 18, 2009
This course’s Challenge To discuss this complexity in an
organized way, that will make today’s computer networks (and their limitations) more comprehensive.
identification, and understanding relationship of complex system’s pieces.
Problems that are beyond a specific technology
9/71
Lecture 1: Oct 18, 2009Early communications systems I.e. telephone point-to-point links directly connect together the users wishing to
communicate use dedicated communication circuit if distance between users increases beyond the
length of the cable, the connection is formed by a number of sections connected end-to-end in series.
10/71
Lecture 1: Oct 18, 2009
Data Networks
set of interconnected nodes exchange information sharing of the transmission circuits= "switching". many links allow more than one path between
every 2 nodes. network must select an appropriate path for each
required connection.
11/71
Lecture 1: Oct 18, 2009Qwest backbone
http://www.qwest.com/largebusiness/enterprisesolutions/networkMaps/preloader.swf12/71
Oct 18, 2009
Networking Issues - Telephone
Addressing - identify the end user
phone number 1-201-222-2673 = country code + city code + exchange + number
Routing - How to get from source to destination.
Telephone circuit switching: Based on the phone number.
Information Units - How is information sent
telephone Samples @ Fixed sampling rate. not self descriptive! have to know where and when a sample came
13/71
Lecture 1: Oct 18, 2009
Networking Issues - Internet
Addressing - identify the end user
IP addresses 132.66.48.37, Refer to a host interface = network number + host number
Routing- How to get from source to destination
Packet switching: move packets (chunks) of data among routers from source to destination independently.
Information Units - How is information sent.
Self-descriptive data: packet = data + metadata (header).
14/71
Lecture 1: Oct 18, 2009
Telephone networks support a single, end-to-end quality of service but is expensive to boot
Internet supports no quality of service but is flexible and cheap
Future networks will have to support a wide range of service qualities at a reasonable cost
15/71
Lecture 1: Oct 18, 2009History 1961-1972: Early packet-switching
principles
1961: Kleinrock - queuing theory shows effectiveness of packet-switching
1964: Baran - packet-switching in military networks1967: ARPAnet – conceived by Advanced Research
Projects Agency1969: first ARPAnet node operational
1972: ARPAnet demonstrated publicly NCP (Network Control Protocol) first host-host
protocol first e-mail program ARPAnet has 15 nodes
16/71
Lecture 1: Oct 18, 2009History 1972-1980: Internetworking, new and
proprietary nets
1970: ALOHAnet satellite network in Hawaii1973: Metcalfe’s PhD thesis proposes Ethernet1974: Cerf and Kahn - architecture for
interconnecting networkslate70’s: proprietary architectures: DECnet, SNA,
XNAlate 70’s: switching fixed length packets (ATM
precursor)1979: ARPAnet has 200 nodes
17/71
Lecture 1: Oct 18, 2009
Cerf and Kahn’s internetworking principles:
minimalism, autonomy - no internal changes required to interconnect networks
best effort service model stateless routers decentralized control
Defines today’s Internet architecture
18/71
Lecture 1: Oct 18, 2009History 1980-1990: new protocols,
proliferation of networks
1983: deployment of TCP/IP1982: SMTP e-mail protocol defined 1983: DNS defined for name-to-IP-address
translation1985: FTP protocol defined1988: TCP congestion control
new national networks: CSnet, BITnet, NSFnet, Minitel100,000 hosts connected to confederation of
networks
19/71
Lecture 1: Oct 18, 2009
History 1990 - : commercialization and WWW
early 1990’s: ARPAnet decommissioned1991: NSF lifts restrictions on commercial use of
NSFnet (decommissioned, 1995)early 1990s: WWW
hypertext [Bush 1945, Nelson 1960’s]HTML, http: Berners-Lee1994: Mosaic, later Netscapelate 1990’s: commercialization of WWW
20/71
Lecture 1: Oct 18, 2009
Demand and Supply
Huge growth in users The introduction of the web
Faster home access Better user experience.
Infrastructure Significant portion of telecommunication.
New evolving industries Although, sometimes temporary
setbacks21/71
Lecture 1: Oct 18, 2009
Internet: Users
0
200
400
600
800
1000
1200
1400
Mil
lion
use
rs
1995 1997 1999 2001 2003 2005 2007 2009
year 22/71
Lecture 1: Oct 18, 2009Penetration around the Globe (2009)
Africa
Asia/Pacific
Europe
Middle EastUSA+Canada
Latin America
Australia
Africa
Asia/Pacific
Europe
Middle East
USA+Canada
Latin America
Australia
0
10
20
30
40
50
60
70
80
Africa
Asia/P
acific
Europ
e
Mid
dle E
ast
USA+Can
ada
Latin
Am
erica
Austra
lia
%Population %Penetration
http://www.internetworldstats.com/stats.htm 23/71
Lecture 1: Oct 18, 2009Users around the Globe (2002/5/9)
Africa
Asia/Pacific
Europe
Middle East
USA+Canada
Latin America
Australia
0
100
200
300
400
500
600
700
800
2009
2005
2002
24/71
Lecture 1: Oct 18, 2009
Technology: Modem speed
300 12002400960014400
2880033600
56000
0
20000
40000
60000
80000
100000
year
bp
s
25/71
Lecture 1: Oct 18, 2009
Today’s options
Modem: 56 K ISDN: 64K – 128K Frame Relay: 56K ++ Today High Speed Connections
Cable, ADSL, Satellite. All are available at
5Mb (2005) 30 Mb (2009)
OBSOLETE
26/71
Lecture 1: Oct 18, 2009Why do we need Standards
Networks (and other media) support communication between different entities
Need agreement to ensure correct, efficient and meaningful communication
29/71
Lecture 1: Oct 18, 2009Various Organizations Issue Standards
IEEE (Institute for Electrical and Electronic
Engineers)
IETF (Internet Engineering Task Force)
ITU (International Telecommunications Union)
ISO (International Organization for Standardization)
W3C (World Wide Web Consortium)30/71
Lecture 1: Oct 18, 2009
Protocol Layers
A way for organizing structure of network
The idea: a series of steps
… Or at least our discussion of networks
31/71
Lecture 1: Oct 18, 2009
Protocol Layering
Necessary because communication is complex
Intended primarily for protocol designers
Divides the problem into intellectually manageable pieces
Provides a conceptual framework that can help us understand protocols
Think of layering as a guideline, not a rigid specification
Understand that optimizations may violate strict layering
Should be invisible to users32/71
Lecture 1: Oct 18, 2009
Mail system functionality
QuickTime™ and aTIFF (Uncompressed) decompressor
are needed to see this picture.
33/71
Lecture 1: Oct 18, 2009
How do we Communicate?
Send a mail from Alice to Bob Alice in Champaign, Bob in Hollywood
Example: US Postal Service
Bob
Champaign, Illinois
Hollywood, California
Alice
34/71
Lecture 1: Oct 18, 2009
What does Alice do?
Bob’s address (to a mailbox) Bob’s name – in case people share mailbox Postage – have to pay! Alice’s own name and address
in case Bob wants to return a message In case the mail has to be returned.
Bob100 Santa Monica Blvd.Hollywood, CA 90028
Alice200 Cornfield Rd.Champaign, IL 61820
35/71
Lecture 1: Oct 18, 2009
What does Bob do?
Install a mailbox Receive the mail Get rid of envelope Read the message
Bob100 Santa Monica Blvd.Hollywood, CA 90028
Alice200 Cornfield Rd.Champaign, IL 61820
36/71
Oct 18, 2009
Layers:
Person delivery of parcel
Post office counter handling
Ground transfer: loading on trucks
Airport transfer: loading on airplane
Airplane routing from source to destination
each layer implements a service
via its own internal-layer actions
relying on services provided by layer below
Peer entities
37/71
Lecture 1: Oct 18, 2009
Advantages of Layering
explicit structure allows identification & relationship of complex system’s pieces layered reference model for discussion
modularization eases maintenance & updating of system change of implementation of layer’s
service transparent to rest of system
38/71
Lecture 1: Oct 18, 2009
Protocols
A protocol is a set of rules and formats that govern the communication between communicating peer set of valid messages - syntax meaning of each message -
semantics
Necessary for any function that requires cooperation between peers
39/71
Lecture 1: Oct 18, 2009
A protocol provides a service For example: the post office protocol for
reliable parcel transfer service
Peer entities use a protocol to provide a service to a higher-level peer entity for example, truck drivers use a protocol to
present post offices with the abstraction of an unreliable parcel transfer service
Protocols
40/71
Lecture 1: Oct 18, 2009
Protocol Layers
A network that provides many services needs many protocols
Some services are independent, But others depend on each other
A Protocol may use another protocol as a step in its execution for example, ground transfer is one step in the
execution of the example reliable parcel transfer protocol
This form of dependency is called layering Post office handling is layered above parcel
ground transfer protocol. 41/71
Lecture 1: Oct 18, 2009Open protocols and systems
A set of protocols is open if protocol details are publicly available changes are managed by an organization whose
membership and transactions are open to the public A system that implements open protocols is
called an open system International Organization for Standards (ISO)
prescribes a standard to connect open systems open system interconnect (OSI)
Has greatly influenced thinking on protocol stacks
42/71
Lecture 1: Oct 18, 2009
ISO OSI reference model
Reference model formally defines what is meant by a layer, a
service etc. Service architecture
describes the services provided by each layer and the service access point
Protocol architecture set of protocols that implement the service
architecture compliant service architectures may still use
non-compliant protocol architectures43/71
Lecture 1: Oct 18, 2009
The seven Layers
Presentation
Application
Session
Transport
Network
Data Link
Physical
Presentation
Application
Session
Transport
Network
Data Link
Physical
Network
Data Link
Physical
End system End systemIntermediate system
There are only 5!!
Application
44/71
Lecture 1: Oct 18, 2009The seven Layers - protocol stack
Presentation
Application
Session
Transport
Network
Data Link
Physical
Presentation
Application
Session
Transport
Network
Data Link
Physical
data
DH+data+DT
bits
data
data
data
data
AH
PH
SH
TH
Network
Data Link
Physical
dataNH
Session and presentation layers are not so important, and are often ignoredSession and presentation layers are not so important, and are often ignored
45/71
Lecture 1: Oct 18, 2009
עיקרון השכבות
Application
Transport
Network
Data-Link
Application
Transport
Network
Data-Link
Network
Identical message
Identical message
Identical message
Source Destination בשכבהXמתקבלת הודעה זהה להודעה ששכבה
Xמסרה בצד המקור
46/71
Lecture 1: Oct 18, 2009
Postal network
Application: people using the postal system Session and presentation: chief clerk sends
some priority mail, and some by regular mail ; translator translates letters going abroad.
Transport layer: mail clerk sends a message, retransmits if not acked
Network layer: postal system computes a route and forwards the letters
datalink layer: letters carried by planes, trains, automobiles
physical layer: the letter itself
47/71
Lecture 1: Oct 18, 2009
Internet protocol stack
application: supporting network applications ftp, smtp, http
transport: host-host data transfer tcp, udp
network: routing of datagrams from source to destination ip, routing protocols
link: data transfer between neighboring network elements ppp, ethernet
physical: bits “on the wire”
application
transport
network
link
physical
48/71
Lecture 1: Oct 18, 2009
applicationtransportnetwork
Linkphysical
applicationtransportnetwork
Linkphysical
source destination
M
M
M
M
Ht
HtHn
HtHnHl
M
M
M
M
Ht
HtHn
HtHnHl
message
segment
datagram
frame
Protocol layering and data
49/71
Lecture 1: Oct 18, 2009
Physical layer L1
Moves bits between physically connected end-systems
Standard prescribes coding scheme to represent a bit shapes and sizes of connectors bit-level synchronization
Internet technology to move bits on a wire, wireless link,
satellite channel etc.
50/71
Lecture 1: Oct 18, 2009
Datalink layer L2
(Reliable) communication over a single link. Introduces the notion of a frame
set of bits that belong together Idle markers tell us that a link is not carrying a
frame Begin and end markers delimit a frame Internet
a variety of datalink layer protocols most common is Ethernet others are FDDI, SONET, HDLC
51/71
Lecture 1: Oct 18, 2009
Datalink layer (contd.)
Datalink layer protocols are the first layer of software Very dependent on underlying physical link properties Usually bundle both physical and datalink in hardware.
Ethernet (broadcast link) end-system must receive only bits meant for itneed datalink-layer addressalso need to decide who gets to speak nextthese functions are provided by Medium ACcess sublayer (MAC)
52/71
Lecture 1: Oct 18, 2009
Network layer L3
Carries data from source to destination. Logically concatenates a set of links to form the
abstraction of an end-to-end link Allows an end-system to communicate with any other
end-system by computing a route between them Hides idiosyncrasies of datalink layer Provides unique network-wide addresses Found both in end-systems and in intermediate
systems
53/71
Lecture 1: Oct 18, 2009
Network layer types
In datagram networks provides both routing and data forwarding
In connection-oriented network separate data plane and control plane data plane only forwards and schedules
data (touches every byte) control plane responsible for routing, call-
establishment, call-teardown (doesn’t touch data bytes)
54/71
Lecture 1: Oct 18, 2009
Internet network layer is provided by Internet
Protocol (IP) found in all end-systems and intermediate
systems provides abstraction of end-to-end link segmentation and reassembly packet-forwarding, routing, scheduling unique IP addresses can be layered over anything, but only best-
effort service
Network layer (contd.)
55/71
Lecture 1: Oct 18, 2009
At intermediate systems participates in routing protocol to create
routing tables responsible for forwarding packets schedules the transmission order of packets chooses which packets to drop
Network layer (contd.)
At end-systems
primarily hides details of datalink layer segments and reassemble detects errors
56/71
Lecture 1: Oct 18, 2009
Transport layer L4
Reliable end-to-end communication. creates the abstraction of an error-controlled,
flow-controlled and multiplexed end-to-end link(Network layer provides only a ‘raw’ end-to-end service)
Some transport layers provide fewer services e.g. simple error detection, no flow control, and no retransmission
Internet TCP provides error control, flow control, multiplexing
UDP provides only multiplexing57/71
Lecture 1: Oct 18, 2009
Transport layer (contd.)
Error control GOAL: message will reach destination despite packet loss,
corruption and duplication ACTIONS: retransmit lost packets; detect, discard, and
retransmit corrupted packets; detect and discard duplicated packets
Flow control match transmission rate to rate currently sustainable on
the path to destination, and at the destination itself Multiplexes multiple applications to the
same end-to-end connection adds an application-specific identifier (port number) so
that receiving end-system can hand in incoming packet to the correct application 58/71
Lecture 1: Oct 18, 2009
Session layer
Not common Provides full-duplex service, expedited
data delivery, and session synchronization
Internet doesn’t have a standard session layer
59/71
Lecture 1: Oct 18, 2009
Duplex if transport layer is simplex, concatenates two
transport endpoints together
Expedited data delivery allows some messages to skip ahead in end-system
queues, by using a separate low-delay transport layer endpoint
Synchronization allows users to place marks in data stream and to
roll back to a prespecified mark
Session layer (cont.)
60/71
Lecture 1: Oct 18, 2009
Presentation layer
Usually ad hoc Touches the application data (Unlike other layers which deal with headers) Hides data representation differences
between applications characters (ASCII, unicode, EBCDIC.)
Can also encrypt data Internet
no standard presentation layer only defines network byte order for 2- and 4-
byte integers 61/71
Lecture 1: Oct 18, 2009
Application layer
The set of applications that use the network Doesn’t provide services to any other layer
62/71
Lecture 1: Oct 18, 2009
עיקרון השכבות
VoIP
UDP
Network (IPv4)
Ethernet
Application
Transport
Network
Data-Link
Network
Source Destination
Email(smtp) ftp
TCP
WiFiModem
63/71
Lecture 1: Oct 18, 2009
עיקרון השכבות
Network
Source Destination
app1
UDP
Network (IPv4)
Ethernet
app2 app3
TCP
WiFiModem
app1
UDP
Network (IPv4)
Ethernet
app2 app3
TCP
WiFiModem
64/71
Lecture 1: Oct 18, 2009
Discussion
Layers break a complex problem into smaller, simpler pieces.
Why seven layers? Need a top and a bottom 2 Need to hide physical link; so need datalink
3 Need both end-to-end and hop-by-hop actions;
so need at least the network and transport layers 5
65/71
Lecture 1: Oct 18, 2009
1Introduction and Layering
2Data Link: Multi Access
3Hubs, Bridges and Routers
4Scheduling and Buffer Management
5Switching Fabrics
6Routing
7Reliable Data Transfer
8End to End Window Based Protocols
9Flow Control
10Multimedia and QoS
11Network Security
12Distributed Algorithms
Course outline
66