Administration, Networks Overview: Requirements

Download Report

Transcript Administration, Networks Overview: Requirements

0907422 Computer Networks
Dr. Walid Abu-Sufah
Computer Engineering Department
University of Jordan
1
Course Information
• Instructor:
– Dr. Walid Abu-Sufah
– Office: Room 10 - Computer Engineering
– Office Hours: Su, T, Th 11-12; Wed: 1-2 and by
appointment.
– E-mail [email protected]
• Teaching Assistant:
– To be announced
• Class Website:
http://www.ju.edu.jo/ecourse/netcourse/netindex.html
2
Goals for Today’s Class: course overview
• Goals of the course
• Learning the material
• Course grading
• Academic policies
3
What You Learn in This Course
• Knowledge: how the Internet works
– IP protocol suite
– Internet architecture
– Applications (Web, e-mail, VoIP, …)
• Insight: key concepts in networking
– Protocols
– Layering
– Resource allocation
– Naming
• Network programming skills NOT here but in
0907522
– Socket programming
– Designing and implementing protocols
4
Prerequisite
• 0907421Communications (1)
• Probability and Statistics
5
Textbook
• Computer Networks: A Systems Approach, by
Peterson & Davie, 4th Edition
6
Grading Policy
• Homework
4%
– 5 homework assignments
• Quizzes
16%
– 5 quizzes, based on homeworks
• Mid-term Exam
30%
– Sunday, March 30 ; 5 - 6:30
• Final Exam
50%
– Thursday, June 5 ; 5 - 7
7
Policies: The Course Web Site
Posted on the course website you will find lecture
notes; homeworks and their solutions; solutions of
quizzes, old exams, and the midterm; classroom
seat assignments (for enforcing attendance
regulations); and grades. Class announcements,
such as homework/quizzes dates and changes in
assignments, will also be posted on the Web.
You are therefore responsible for checking the
course web site. If you make an error because
you did not check the Web, I will hold you fully
responsible.
8
Policies: Homework and Quizzes
Five sets of homework problems will be assigned.
Unless otherwise announced in class, the
solutions of the homework are due at the
beginning of the first lecture in the weeks indicated
in the course calendar on the website. No late
homework will be accepted.
One quiz will be given at the beginning of the
same lecture when each of the five homeworks is
collected. The quiz will be based on the
homework. For each student, the lowest of the 5
grades of quizzes will be dropped. As a result,
there will be no make-up quizzes for any
reason. A similar grading approach will be used for
the homeworks.
9
Policies: Makeup Midterm
 There will be no make-up for the midterm. In
case of medical/ or other DISABLING
emergencies, the instructor should be notified
BEFORE the midterm and his approval for
missing the midterm should be obtained before the
midterm. If for any reason the instructor could not
be reached, the department secretary should be
notified before the midterm. The phone number is
535-5000 Extension 23000.
10
Policies: Grading Corrections
 Ask the instructor for any grading correction
requests within a week of returning the
exam/quiz papers. After that, your grade will not
be adjusted. If you find any mistake in grading,
please let the instructor know. Your grade will not
be lowered.
11
Policies: Class Attendance
 Class attendance will be taken. University
regulations regarding attendance will be
strictly enforced. If you miss class, you must
obtain the covered material from a willing
classmate and/or the course web site. The
instructor will not be available (during office hours
or other times) to repeat material covered.
12
Policies: Academic Honesty
• Your work in this class must be your own.
• Penalties for excessive collaboration and cheating
are severe.
• Sharing homework answers is forbidden
13
Course Objectives
• At the end of the semester, you should be able to:
– Identify the problems that arise in computer networks
– Explain the advantages and disadvantages of existing
solutions to these problems in the context of different
networking regimes
– Understand the implications of a given solution for
performance in various networking regimes
– Evaluate novel approaches to these problems
14
Okay, so let’s get started
15
What is a Network?
• Something that connects two or more computers
• Tools that help computers communicate
– .. and people communicate
16
Network Overview
• What functionality must a network provide? What
are the requirements? (Sections 1.2 & 1.5)
– Connectivity
– Cost-effective Resource Sharing
– Support for common services needed by application
processes
– Performance
• What is network architecture? How are networks
designed and built? (Section 1.3)
– Layering
– Protocols
– Standards
17
Connectivity
• Building Blocks
– Links:
coax cable, optical fiber, …
– Nodes: workstations, routers, …
• Links:
– Point-to-point
– Multiple access
…
18
Indirect Connectivity
• Switched Networks
– Two types of nodes: hosts &
switches
• Internetworks
– Networks (clouds)
interconnected to form an
internetwork
– A router or gateway: a node
that is connected to two or
more networks
19
Recursive definition of a network
• Two or more nodes connected by a
physical link
OR
• Two or more networks connected by
one or more nodes
20
Effects of Indirect Connectivity
• Switching/Routing nodes receive data on one link
and forward it onto another  switching network
– Circuit Switching
 Telephone Stream-based (dedicated circuit)
 Links reserved for use by communication channel
 Send/receive bit stream at constant rate
– Packet Switching
 Internet Message-based (store-and-forward)
 Links used dynamically
 Admission policies and other traffic determine
bandwidth
21
Addressing
• Addressing
– Unique byte-string used to indicate which node is the
target of communication
• Types of Addresses
– Unicast: node-specific
– Broadcast: all nodes on the network
– Multicast: subset of nodes on the network
• Routing
– The process of determining how to forward messages
toward the destination node based on its address
22
Network Overview (continued I)
• What functionality must a network provide? What
are the requirements? (Sections 1.2 & 1.5)
Connectivity
– Cost-effective Resource Sharing
– Support for common services needed by application
processes
– Performance
23
Cost-Effective Sharing of Resources
• Physical links and switches must be shared among
many users
• Common multiplexing strategies
– (Synchronous) Time-Division Multiplexing (TDM)
– Frequency-Division Multiplexing (FDM)
24
Sharing
• Time-Division Multiplexing
– Synchronous
• Frequency-division multiplexing
frequency
time
25
Statistical Multiplexing
• Statistical Multiplexing (SM)
– On-demand time-division multiplexing
– Defines an upper bound on the size of the block of data
that each flow is permitted to transmit at a given time, a
packet
 ensures that all flows eventually get their turn to
transmit
– Scheduled on a per-packet basis
 Packets from different sources are interleaved
26
Statistical Multiplexing in a Switch
• Packets buffered in switch until forwarded
• Selection of next packet depends on policy
– How do we make these decisions in a fair manner?
Round Robin? FIFO?
– How should the switch handle congestion?
27
Network Overview (continued II)
• What functionality must a network provide? What
are the requirements? (Sections 1.2 & 1.5)
Connectivity
Cost-effective Resource Sharing
– Support for common services needed by application
processes
– Performance
28
Support for common services needed by
application processes
– Goal:
 Meaningful communication between application programs
running on hosts connected to the network
– Idea
 Common services simplify the role of applications
 Hide the complexity of the network without overly constraining the
application designer
– Semantics and interface depend on applications
 Request/reply: FTP, HTTP, Digital Library
 Message stream: video-on-demand, video conferencing
29
Channels
• Channel
– The abstraction for application-level communication
• Idea
– Turn host-to-host connectivity into process-to-process
communication
Host
Host
APP
Host
APP
Channel
Host
Host
30
Inter-process Communication
• Problems typically masked by communication
channel abstractions
– Bit errors (electrical interference)
– Packet errors (congestion)
– Link/node failures
– Message delays
– Out-of-order delivery
– Eavesdropping
• Goal
– Fill the gap between what applications expect and what
the underlying technology provides
31
Network Overview (continued III)
• What functionality must a network provide? What
are the requirements? (Sections 1.2 & 1.5)
Connectivity
Cost-effective Resource Sharing
Support for common services needed by application
processes
– Performance
32
Bandwidth/throughput Performance
Metric
• Data transmitted per unit time
• Example: 10 Mbps
• Link bandwidth vs. end-to-end throughput
• Notation
– KB = 210 bytes
– Mbps = 106 bits per second
33
Latency/delay Performance Metric
• Time from A to B
–Latency (delay): how long it takes to perform a
particular function such as delivering a message
or moving an object
• Example: 30 msec (milliseconds)
• Many applications depend on round-trip time
(RTT)
34
Latency Components
• Propagation delay over each link
– the specific amount of time it takes a signal to propagate
from one end of a link to another
• Transmission time
• Queuing delays
• Software processing overheads
35
Performance Notes
• Speed of Light
– 3.0 x 108 meters/second in a vacuum
– 2.3 x 108 meters/second in a cable
– 2.0 x 108 meters/second in a fiber
• Comments
– No queueing delays in a direct link
– Bandwidth is not relevant if size = 1bit
– Software overhead can dominate when distance is small
• Key Point
– Latency dominates small transmissions
– Bandwidth dominates large transmissions
36
Perceived latency (response time) vs.
RTT
37
Delay x Bandwidth Product Metric
• Relative importance of bandwidth and latency
depends on application
– Large file transfer is bandwidth critical
– Small messages (HTTP, NFS, etc.) are latency critical
– Variance in latency (jitter) can also affect some
applications (e.g., audio/video conferencing)
• Delay x bandwidth product
– Amount of data in “pipe”
– Half of data that must be buffered before sender
responds to slowdown request
38
Delay x Bandwidth Product
• channel between two processes = pipe
• delay = length
• bandwidth = area of a cross section
• bandwidth x delay product = volume
Delay
Bandwidth
39
Delay x Bandwidth Product
• Bandwidth x delay product
– How many bits the sender must transmit before the first
bit arrives at the receiver if the sender keeps the pipe full
– Takes another one-way latency to receive a response
from the receiver
11 10 9
A
8
7
6
5
4
3
2
1
B
40
Delay x Bandwidth Product
• Example: Transcontinental Channel
– BW = 45 Mbps
– delay = 50ms
– bandwidth x delay product
= (50 x 10–3 sec) x (45 x 106 bits/sec)
= 2.25 x 106 bits
41
Bandwidth vs. Latency
• Relative importance
– 1-byte: Latency bound
 1ms vs 100ms latency dominates 1Mbps vs 100Mbps BW
– 25MB: Bandwidth bound
 1Mbps vs 100Mbps BW dominates 1ms vs 100ms latency
25MB
100 Mbps
100Mbps
1 Mbps
1Mbps
100ms
1ms
1B
42
Bandwidth vs. Latency (continued)
• Infinite bandwidth
– RTT dominates
 Throughput = TransferSize / TransferTime
 TransferTime = RTT + (1/Bandwidth) x TransferSize
• What is “Infinite or High” bandwidth?
– Its all relative
– 1 MB file to 1 Gbps link looks like a 1KB packet to 1
Mbps link
43