1
Advanced Computer Networks
Lecture No. 1
3
Instructor’s introduction
• Farhan Elahi
Asst. Prof. Dept. of Computer Science
FICT, BUITEMS, Quetta.
You may download the lecture slides by using the following link.
http://sites.google.com/site/farhanelahi/home/lecturers/acn
4
Significance and Rationale of course
• Networks and telecommunication is getting more
and more importance
• Future telecomm networks will be more oriented
toward “networks” rather than “communication”
• Widespread Internet, diffused in our daily life is a
ground reality; its beneficial to understand it
• Its fun to play with protocols (software) and able
to design exciting new type of networks
5
Foundation Course in Network Stream
• This Computer Networks course is a foundation course for
“Networks” as the Area of Specialization
• It is a required pre-requisite course for the following
advanced level courses in networking
– Performance Analysis of Communication Networks
– Integrated Services over Packet Networks
– Computer Network Security
– Mobile Networking
• It is a recommended pre-requisite for the course:
– Network and System Programming
6
Course Material
• Reference books
– Many textbooks on Networking may be consulted
• Lot of research papers!
– Many will be made available on course web site
• RFCs and Internet drafts
– Related to TCP/IP suite and other protocols
• Web resources
– Tutorials, white papers, reports, etc.
7
Text Book
• Larry L. Peterson and Bruce S. Davies,
Computer Networks: A Systems Approach
– Third Edition [2003], Morgan Kaufmann
Publishers, San Mateo, California, USA
8
Prerequisites
• Required:
• An undergraduate level course on computer
networks
• Good knowledge of C language, preferably in
Unix/Linux
– e.g. C and Data Structures course
9
Course Evaluation
• Assignments
• Quizzes
• Research Papers
• Term Projects / Reports
• Midterm exam
• Final exam
10
Expectations
What do you want (or expect) to learn from
this course ?
11
Expectations
• This course IS about …
– Network principles and concepts
– General purpose computer networks
– Internet perspective
• Major components of the Internet protocol suite
– Network software
– Designing and building a system
12
Expectations
• This course IS NOT about …
– Survey of existing protocol standards
– Specialized networks (e.g. CATV, telephone)
– OSI perspective
– Network hardware
• Data transmission on physical layer
– Queuing theory (we do survey, if time permits)
13
Expectations
We will learn
why
networks are like they are
14
Objectives: Principles and Concepts
• At the end of this course, you should be able to:
– Identify the problems that arise in networked
communication
– Explain advantages/disadvantages of existing solutions
to these problems in different networking scenarios
– Evaluate novel approaches to these problems
– Understand the components of Internet protocol suite
– Understand the implications of a given solution for
performance in various networking environments
15
Objectives: Programming
• At the end of this course, you should be able to:
– Identify and describe the purpose of each component
of the TCP/IP protocol suite
– Develop client-server applications using TCP/IP
– Understand the impact of trends in network hardware
on network software issues
16
Course Contents
• Overview
• Introduction to network programming
• Direct link networks
• Packet switching
• Internetworking
• End-to-end protocols
• Congestion control and resource allocation
• End-to-end data
• Applications
• Performance analysis and queuing theory (?)
17
Introduction
• Outline
– Statistical Multiplexing
– Inter-Process Communication
– Performance Metrics
– Network Architecture
18
What is Your Over-ambitious Goal ?
• Build a computer network which
– Can grow to global proportions
– Support diverse applications
• Then … think about
– Underlying building blocks
• Which available technologies to use
– Integrating the blocks to communicate
• Which software architecture to use
Network Design
Before looking inside a computer network,
first agree on what a computer network is?
20
Computer Network ?
• Set of serial lines to attach
terminals to mainframe ?
• Telephone network carrying
voice traffic ?
• Cable network to disseminate
video signals ?
Specialized to handle:
Keystrokes
Voice
Video
21
What Distinguishes a
Computer Network ?
• Generality
• Built from general purpose
programmable hardware
• Supports wide range of applications
22
Applications – Users’ Contact with
the Network
• Most people know the Internet through its
applications
– Web, email, streaming audio and video, chat, …
• Applications present an intuitively simple
interface
– Textual and graphical objects
– Simple “clicks” to maneuver the application
• However, users are not aware of what happens
in the network with their simple “clicks” !!!
23
Applications – Consumers of
Networks
• On a simple click, several messages may be exchanged
over the Internet
• In a web browser, 17 messages may be exchanged
– up to six messages to translate the server name
– three messages to set up a TCP connection
– four messages to send HTTP “get” request + response
– four messages to tear down the TCP connection
• Moreover, millions of messages are exchanged each day
by Internet nodes to make their presence and services
known
24
Applications – the Driving Force
• Streaming audio and video is an emerging application
– Source generates and sends the video stream in messages across
the Internet
• Video-on-demand: reads a preexisting movie
– One-way data transfer
• Videoconferencing: interactive session
– Very tight timing constraints
• Diversity of applications that can be built on top of the
Internet hint at the complexity of the Internet design
25
Our Road Map …
• Fortunately, we are not the first to build a
computer network
• Lets start exploring the path that others have
already dig deep
• By asking (and answering) why networks
are designed the way they are
26
Network Overview
• What must a network provide ?
– Connectivity
– Cost-effective sharing
– Functionality
– Performance
• How are networks designed and built ?
– Layering
– Protocols
– Standards
27
Perspective
• For network user
– Connectivity: for services required; error
free delivery within acceptable time limits
• For network designer
– Efficiency: cost-effective design, fair
allocation and efficient use of resources
• For network operator
– Maintenance: easy to administer, fault
localization & isolation, usage accounting
28
Building Blocks
• Nodes: PC, special-purpose hardware…
– Hosts
– Switches
• Links: coax cable, optical fiber…
– Point-to-point
– Multiple access
…
29
Why not connect each node
with every other node ?
• Number of computers that can be
connected becomes very limited
• Number of wires coming out of each
node becomes unmanageable
• Amount of physical hardware/devices
required becomes very expensive
• Solution: indirect connectivity using
intermediate data forwarding nodes
30
Switched Networks
– Two or more nodes
connected by a link
– Circular nodes
(switches) implement
the network
– Squared nodes (hosts)
use the network
• A network can be defined recursively as...
31
Switched Networks
– Two or more networks
connected by one or more
nodes: internetworks
– Circular nodes (router or
gateway) interconnects
the networks
– A cloud denotes “any type
of independent network”
• A network can be defined recursively as...
32
A Network
A network can be defined recursively as
Two or more nodes connected by a physical link
OR
Two or more networks connected by one or more
nodes
33
Components of a Network
34
Switching Strategies
• Circuit switching:
carry bit streams
a. establishes a dedicated
circuit
b. links reserved for use
by communication
channel
c. send/receive bit stream
at constant rate
d. example: original
telephone network
• Packet switching: store-
and-forward messages
a. operates on discrete
blocks of data
b. utilizes resources
dynamically according
to traffic demand
c. send/receive messages
at variable rate
d. example: Internet
35
What next ?
• Hosts are directly or indirectly connected to
each other
• Can we now provide host-host connectivity ?
• Nodes must be able to say which host it wants
to communicate with
36
Addressing and Routing
• Address: byte-string that identifies a node
– Usually unique
• Routing: forwarding decisions
– Process of determining how to forward messages to the
destination node based on its address
• Types of addresses
– unicast: node-specific
– broadcast: all nodes on a network
– multicast: some subset of nodes on a network
37
Wrap-up
• A network can be constructed from nesting
of networks
• An address is required for each node that is
reachable on the network
• Address is used to route messages toward
appropriate destination

Advanced Computer Networks Lecture 1.ppt

  • 1.
  • 2.
  • 3.
    3 Instructor’s introduction • FarhanElahi Asst. Prof. Dept. of Computer Science FICT, BUITEMS, Quetta. You may download the lecture slides by using the following link. http://sites.google.com/site/farhanelahi/home/lecturers/acn
  • 4.
    4 Significance and Rationaleof course • Networks and telecommunication is getting more and more importance • Future telecomm networks will be more oriented toward “networks” rather than “communication” • Widespread Internet, diffused in our daily life is a ground reality; its beneficial to understand it • Its fun to play with protocols (software) and able to design exciting new type of networks
  • 5.
    5 Foundation Course inNetwork Stream • This Computer Networks course is a foundation course for “Networks” as the Area of Specialization • It is a required pre-requisite course for the following advanced level courses in networking – Performance Analysis of Communication Networks – Integrated Services over Packet Networks – Computer Network Security – Mobile Networking • It is a recommended pre-requisite for the course: – Network and System Programming
  • 6.
    6 Course Material • Referencebooks – Many textbooks on Networking may be consulted • Lot of research papers! – Many will be made available on course web site • RFCs and Internet drafts – Related to TCP/IP suite and other protocols • Web resources – Tutorials, white papers, reports, etc.
  • 7.
    7 Text Book • LarryL. Peterson and Bruce S. Davies, Computer Networks: A Systems Approach – Third Edition [2003], Morgan Kaufmann Publishers, San Mateo, California, USA
  • 8.
    8 Prerequisites • Required: • Anundergraduate level course on computer networks • Good knowledge of C language, preferably in Unix/Linux – e.g. C and Data Structures course
  • 9.
    9 Course Evaluation • Assignments •Quizzes • Research Papers • Term Projects / Reports • Midterm exam • Final exam
  • 10.
    10 Expectations What do youwant (or expect) to learn from this course ?
  • 11.
    11 Expectations • This courseIS about … – Network principles and concepts – General purpose computer networks – Internet perspective • Major components of the Internet protocol suite – Network software – Designing and building a system
  • 12.
    12 Expectations • This courseIS NOT about … – Survey of existing protocol standards – Specialized networks (e.g. CATV, telephone) – OSI perspective – Network hardware • Data transmission on physical layer – Queuing theory (we do survey, if time permits)
  • 13.
  • 14.
    14 Objectives: Principles andConcepts • At the end of this course, you should be able to: – Identify the problems that arise in networked communication – Explain advantages/disadvantages of existing solutions to these problems in different networking scenarios – Evaluate novel approaches to these problems – Understand the components of Internet protocol suite – Understand the implications of a given solution for performance in various networking environments
  • 15.
    15 Objectives: Programming • Atthe end of this course, you should be able to: – Identify and describe the purpose of each component of the TCP/IP protocol suite – Develop client-server applications using TCP/IP – Understand the impact of trends in network hardware on network software issues
  • 16.
    16 Course Contents • Overview •Introduction to network programming • Direct link networks • Packet switching • Internetworking • End-to-end protocols • Congestion control and resource allocation • End-to-end data • Applications • Performance analysis and queuing theory (?)
  • 17.
    17 Introduction • Outline – StatisticalMultiplexing – Inter-Process Communication – Performance Metrics – Network Architecture
  • 18.
    18 What is YourOver-ambitious Goal ? • Build a computer network which – Can grow to global proportions – Support diverse applications • Then … think about – Underlying building blocks • Which available technologies to use – Integrating the blocks to communicate • Which software architecture to use
  • 19.
    Network Design Before lookinginside a computer network, first agree on what a computer network is?
  • 20.
    20 Computer Network ? •Set of serial lines to attach terminals to mainframe ? • Telephone network carrying voice traffic ? • Cable network to disseminate video signals ? Specialized to handle: Keystrokes Voice Video
  • 21.
    21 What Distinguishes a ComputerNetwork ? • Generality • Built from general purpose programmable hardware • Supports wide range of applications
  • 22.
    22 Applications – Users’Contact with the Network • Most people know the Internet through its applications – Web, email, streaming audio and video, chat, … • Applications present an intuitively simple interface – Textual and graphical objects – Simple “clicks” to maneuver the application • However, users are not aware of what happens in the network with their simple “clicks” !!!
  • 23.
    23 Applications – Consumersof Networks • On a simple click, several messages may be exchanged over the Internet • In a web browser, 17 messages may be exchanged – up to six messages to translate the server name – three messages to set up a TCP connection – four messages to send HTTP “get” request + response – four messages to tear down the TCP connection • Moreover, millions of messages are exchanged each day by Internet nodes to make their presence and services known
  • 24.
    24 Applications – theDriving Force • Streaming audio and video is an emerging application – Source generates and sends the video stream in messages across the Internet • Video-on-demand: reads a preexisting movie – One-way data transfer • Videoconferencing: interactive session – Very tight timing constraints • Diversity of applications that can be built on top of the Internet hint at the complexity of the Internet design
  • 25.
    25 Our Road Map… • Fortunately, we are not the first to build a computer network • Lets start exploring the path that others have already dig deep • By asking (and answering) why networks are designed the way they are
  • 26.
    26 Network Overview • Whatmust a network provide ? – Connectivity – Cost-effective sharing – Functionality – Performance • How are networks designed and built ? – Layering – Protocols – Standards
  • 27.
    27 Perspective • For networkuser – Connectivity: for services required; error free delivery within acceptable time limits • For network designer – Efficiency: cost-effective design, fair allocation and efficient use of resources • For network operator – Maintenance: easy to administer, fault localization & isolation, usage accounting
  • 28.
    28 Building Blocks • Nodes:PC, special-purpose hardware… – Hosts – Switches • Links: coax cable, optical fiber… – Point-to-point – Multiple access …
  • 29.
    29 Why not connecteach node with every other node ? • Number of computers that can be connected becomes very limited • Number of wires coming out of each node becomes unmanageable • Amount of physical hardware/devices required becomes very expensive • Solution: indirect connectivity using intermediate data forwarding nodes
  • 30.
    30 Switched Networks – Twoor more nodes connected by a link – Circular nodes (switches) implement the network – Squared nodes (hosts) use the network • A network can be defined recursively as...
  • 31.
    31 Switched Networks – Twoor more networks connected by one or more nodes: internetworks – Circular nodes (router or gateway) interconnects the networks – A cloud denotes “any type of independent network” • A network can be defined recursively as...
  • 32.
    32 A Network A networkcan be defined recursively as Two or more nodes connected by a physical link OR Two or more networks connected by one or more nodes
  • 33.
  • 34.
    34 Switching Strategies • Circuitswitching: carry bit streams a. establishes a dedicated circuit b. links reserved for use by communication channel c. send/receive bit stream at constant rate d. example: original telephone network • Packet switching: store- and-forward messages a. operates on discrete blocks of data b. utilizes resources dynamically according to traffic demand c. send/receive messages at variable rate d. example: Internet
  • 35.
    35 What next ? •Hosts are directly or indirectly connected to each other • Can we now provide host-host connectivity ? • Nodes must be able to say which host it wants to communicate with
  • 36.
    36 Addressing and Routing •Address: byte-string that identifies a node – Usually unique • Routing: forwarding decisions – Process of determining how to forward messages to the destination node based on its address • Types of addresses – unicast: node-specific – broadcast: all nodes on a network – multicast: some subset of nodes on a network
  • 37.
    37 Wrap-up • A networkcan be constructed from nesting of networks • An address is required for each node that is reachable on the network • Address is used to route messages toward appropriate destination