Computer Networks
Download
Report
Transcript Computer Networks
Computer Networks
(Graduate level)
Lecture 1: Introduction
University of Tehran
Dept. of EE and Computer Engineering
By:
Dr. Nasser Yazdani
Univ. of Tehran
Computer Network
1
Objectives of course
Understand the state-of-the-art in network
protocols, architectures and applications
Understand how networking research is done
and prepare student for research in
networking.
How is class different from undergraduate
networking course
Training network programmers vs. training
network researchers
They are really different courses!
Univ. of Tehran
Computer Network
2
Course Materials
Course Web page
Research papers
visit regularly
Printed papers or pdf/ps version on the Web
page
~40 papers, Combination of classic and
recent work. Some Optional reading!
Recommended textbook
“Computer Networks, A system approach.
Peterson & Davie 3rd edition.
Univ. of Tehran
Computer Network
3
Grading
Homework assignments, around %20
Paper review
Problems and hands-on assignments
Severe late penalties!
Class discussion, participation around %5
point.
Project, ~ %30
Exam(s), Midterm and final, ~%45.
Univ. of Tehran
Computer Network
4
Covered Topics (we try!)
Traditional
Layering
Interconnecting (LAN)
Internet architecture
Routing (IP)
Switching
Transport (TCP)
Queue management
(FQ, RED)
Naming (DNS)
Univ. of Tehran
Recent Topics
Multicast
Wireless/Mobility
Active networks
QOS
Security
Network
measurement
Ad-hoc Networks
Sensor Networks
Computer Network
5
A tour of networking
Goal and objective
needs
design
requirement
Whirlwind tour of networking
Univ. of Tehran
Computer Network
6
Information, Computers and
Networks
Information: anything that is represented in
bits
Form (can be represented) vs substance (cannot)
Properties:
Infinitely replicable
Computers can “manipulate” information
Networks create “access” to information
Potential of networking:
move bits everywhere, cheaply, and with desired
performance characteristics
Break the space barrier for information
Univ. of Tehran
Computer Network
7
Objective of Networking ?
Direct or indirect access to every other node in
the network
Connectivity is the magic needed to communicate
if you do not have a link.
Must understand many connection factors
Traffic data rate
Traffic pattern (bursty or constant bit rate)
Traffic target (multipoint or single destination,
mobile or fixed)
Application requirements, Delay sensitivity Loss
sensitivity.
Univ. of Tehran
Computer Network
8
Another view
Building a network to support diverse
ranges of applications
Distributed computing.
Multimedia.
Telecommunication.
E-commerce, etc.
What kind of technology do we need?
Hardware.
Software.
Univ. of Tehran
Computer Network
9
What is a Network?
What is computer Network?
Different views.
Differences from other networks, Its
generality.
What is requirements? Different
perspective:
Network provider
Network designer
Application programmer
Univ. of Tehran
Computer Network
10
Design goals
Connectivity
Scalability
Simplicity
Efficiency
For designers.
Most importantly for users.
cost
performance
Support for common user services.
Univ. of Tehran
Computer Network
11
Levels of Networking
Communicating across a link, LANs.
Connecting together multiple links (Bridges)
Finding and routing data to nodes on
Internet.
Communicating on the application level,
matching application requirements
Univ. of Tehran
Computer Network
12
A First Step
Creating a link between nodes
Link: path followed by bits
Wired or wireless
Broadcast or point-to-point (or both)
Node: any device connected to a link
Univ. of Tehran
Computer Network
13
Types of Links
Point-to-Point
Multiple Access
…
Univ. of Tehran
Computer Network
14
Packet Transmission Modes
Unicast
Broadcast
Transmission to all network nodes
Multicast
Transmission to single specific receiver
Transmission to specific subset of nodes
Anycast
Transmission to one of a specific subset of
nodes
Univ. of Tehran
Computer Network
15
What are Switched Networks?
Switch: moves bits
between links
Switched Network
Packet switching
Circuit switching
Univ. of Tehran
Computer Network
16
Back in the Old Days…
Univ. of Tehran
Computer Network
17
Then Came TDM…
• Synchronous time division multiplexing
Multiplex (mux)
Univ. of Tehran
Demultiplex (demux)
Computer Network
18
TDM Logical Network View
Univ. of Tehran
Computer Network
19
Packet Switching (Internet)
Packets
Univ. of Tehran
Computer Network
20
Packet Switching
Interleave packets from different sources
Efficient: resources used on demand
General
Statistical multiplexing
Multiple types of applications
Accommodates bursty traffic
Addition of queues
Univ. of Tehran
Computer Network
21
Statistical Multiplexing Gain
1 Mbps link; users require 0.1 Mbps when
transmitting; users active only 10% of the
time
Circuit switching: can support 10 users
Packet switching: with 35 users,
probability that >=10 are transmitting at
the same time < 0.0017
Univ. of Tehran
Computer Network
22
Characteristics of Packet
Switching
Store and forward
Packets are self contained units
Can use alternate paths - reordering
Contention
Congestion
Delay
Univ. of Tehran
Computer Network
23
Second Step: Internet[work]
A collection of
interconnected
networks
Host: network
endpoints (computer,
PDA, light switch, …)
Router: node that
connects networks
Internet vs. internet
Univ. of Tehran
Computer Network
Internet[work]
24
Challenge
Many differences between networks
Address formats
Performance – bandwidth/latency
Packet size
Loss rate/pattern handling
Routing
How to translate between various
network technologies
Univ. of Tehran
Computer Network
25
Third Step: How To Find
Nodes?
internet
Computer 1
Univ. of Tehran
Computer 2
Computer Network
26
Naming
Humans use readable host names
E.g. www.cmu.edu
Globally unique (can correspond to multiple
hosts)
Naming system translates to physical
address
E.g. DNS translates name to IP Address (e.g.
128.2.11.43)
Address reflects location in network
Univ. of Tehran
Computer Network
27
Domain Name System
What’s the IP address for www.cmu.edu?
It is 128.2.11.43
Computer 1
Local DNS Server
DNS server address manually configured into OS
Univ. of Tehran
Computer Network
28
Packet Routing/Delivery
Each network technology has different
local delivery methods
Address resolution provides delivery
information within network
E.g., ARP maps IP addresses to Ethernet
addresses
Local, works only on a particular network
Routing protocol provides path through
an internetwork
Univ. of Tehran
Computer Network
29
Network:Address Resolution
Protocol
Broadcast: who knows the
Ethernet address for 128.2.11.43?
Ethernet
Broadcast: Yes, it is
08-00-2c-19-dc-45
Ethernet
Univ. of Tehran
Computer Network
30
Internetwork: Datagram
Routing
Routers send
packet to next
closest point
H
H
R
R
R
H
R
R
R
H
R
R
R: Routers
H
Univ. of Tehran
H: Hosts
Computer Network
31
Routing
Forwarding tables at each router
populated by routing protocols.
Original Internet: manually updated
Routing protocols update tables based on
“cost”
Exchange tables with neighbors or everyone
Use neighbor leading to shortest path
Univ. of Tehran
Computer Network
32
Fourth Step: Application
Demands
Reliability
Corruption
Lost packets
Flow and congestion control
Fragmentation
In-order delivery
Etc…
Univ. of Tehran
Computer Network
33
What if the Data gets
Corrupted?
Problem: Data Corruption
GET index.html
Internet
GET windex.html
Solution: Add a checksum
0,9 9
Univ. of Tehran
6,7,8 21
X
4,5 7
Computer Network
1,2,3 6
34
What if the Data gets Lost?
Problem: Lost Data
GET index.html
Internet
Solution: Timeout and Retransmit
GET index.html
Internet
GET index.html
GET index.html
Univ. of Tehran
Computer Network
35
What if Network is
Overloaded?
Problem: Network Overload
Solution: Buffering and Congestion Control
Short bursts: buffer
What if buffer overflows?
Packets dropped and retransmitted
Sender adjusts rate until load = resources
Called “Congestion control”
Univ. of Tehran
Computer Network
36
What if the Data Doesn’t Fit?
Problem: Packet size
On Ethernet, max IP packet is 1.5kbytes
Typical web page is 10kbytes
Solution: Fragment data across packets
ml
x.ht
inde
GET
GET index.html
Univ. of Tehran
Computer Network
37
What if the Data is Out of
Order?
Problem: Out of Order
ml
inde
x.th
GET
GET x.thindeml
Solution: Add Sequence Numbers
ml 4
inde 2
x.th 3
GET 1
GET index.html
Univ. of Tehran
Computer Network
38
Network Functionality
Summary
Link
Multiplexing
Routing
Addressing/naming (locating peers)
Reliability
Flow control
Fragmentation
Etc….
Univ. of Tehran
Computer Network
39
What is Layering?
Modular approach to network functionality
The idea of divide and conquer
Use abstraction to hide complexity.
Example:
Application
Application-to-application channels
Host-to-host connectivity
Link hardware
Univ. of Tehran
Computer Network
40
Protocols
Module in layered structure
Set of rules governing communication
between network elements (applications,
hosts, routers)
Protocols define:
Interface to higher layers (API)
Interface to peer
Format and order of messages
Actions taken on receipt of a message
Univ. of Tehran
Computer Network
41
Protocols
Building blocks of a network architecture
Each protocol object has two different
interfaces
service interface: operations on this protocol
peer-to-peer interface: messages exchanged
with peer
Term “protocol” is overloaded
specification of peer-to-peer interface
module that implements this interface
Univ. of Tehran
Computer Network
42
Layering Characteristics
Each layer relies on services from layer
below and exports services to layer above
Interface defines interaction
Hides implementation - layers can change
without disturbing other layers (black
box)
Univ. of Tehran
Computer Network
43
Layering
User A
User B
Application
Transport
Network
Link
Host
Host
Layering: technique to simplify complex systems
Univ. of Tehran
Computer Network
44
Layer Encapsulation
User A
User B
Get index.html
Connection ID
Source/Destination
Link Address
Univ. of Tehran
Computer Network
45
Protocol Demultiplexing
Multiple choices at each layer
FTP
HTTP
NV
TCP
UDP
IPX
NET1
TFTP
Network
IP
Type
Field
Protocol
Field
TCP/UDP
IP
NET2
Univ. of Tehran
…
NETn
Computer Network
Port
Number
46
E.g.: OSI Model: 7 Protocol
Layers
Physical: how to transmit bits
Data link: how to transmit frames
Network: how to route packets
Transport: how to send packets
end2end
Session: how to tie flows together
Presentation: byte ordering, security
Application: everything else
Univ. of Tehran
Computer Network
47
OSI Layers and Locations
Application
Presentation
Session
Transport
Network
Data Link
Physical
Host
Univ. of Tehran
Switch
Computer Network
Router
Host
48
Example: Transport Layer
First end-to-end layer
End-to-end state
May provide reliability, flow and
congestion control
Univ. of Tehran
Computer Network
49
Example: Network Layer
Point-to-point communication
Network and host addressing
Routing
Univ. of Tehran
Computer Network
50
Is Layering Harmful?
Sometimes..
Layer N may duplicate lower level
functionality (e.g., error recovery)
Layers may need same info (timestamp,
MTU)
Strict adherence to layering may hurt
performance
Univ. of Tehran
Computer Network
51
Class Coverage
Brief coverage of physical and data link
layer
Focus on network to application layer
We will deal with:
Protocol rules and algorithms
Investigate protocol trade-offs
Why this way and not another?
Univ. of Tehran
Computer Network
52
Next Lecture: Links
How to make computers talk across a
wire
Assigned reading
Chap. 2 of book (Recommended!)
Univ. of Tehran
Computer Network
53