CS 352 Internet Technology - PowerPoint PPT Presentation

About This Presentation
Title:

CS 352 Internet Technology

Description:

CS 352 Internet Technology Dept. of Computer Science Rutgers University – PowerPoint PPT presentation

Number of Views:198
Avg rating:3.0/5.0
Slides: 77
Provided by: Bret108
Category:

less

Transcript and Presenter's Notes

Title: CS 352 Internet Technology


1
CS 352 Internet Technology
  • Dept. of Computer Science
  • Rutgers University

2
Administrative
  • Instructor Richard Martin
  • TA TBA
  • Textbook
  • James F. Kurose and Keith W. Ross, Computer
    Networking, 3rd edition.
  • Class webpage
  • http//remus.rutgers.edu/cs352/S06/
  • Announcements
  • Lecture notes
  • Projects
  • Homeworks
  • Old exams

3
Course Goals
  • Understand the basic principles of computer
    networks
  • Understand the Internet and its protocols
  • Understand the key design principles used to
    build the Internet
  • Experience building network systems

4
Course goals (cont.)
  • Course is not about specific skills
  • E.g. configure a router from company X vs. learn
    principles of how all routers work
  • Success means you are confident to tackle a range
    of network programming, design and maintenance.

5
Course Approach
  • Lectures theory behind how networks operate
  • Tested in exams
  • See last semesters classes for sample problems
  • Programming assignments
  • Real world experience with networks
  • Program design
  • Communicating your design

6
Course Work
  • 2 Mid-terms (15 each)
  • No electronic devices or notes allowed. No cheat
    sheets allowed
  • Final (35)
  • You must send the instructor email at least 2
    weeks before the final if you need to take the
    makeup!
  • Project (35)
  • Part 1 (10)
  • Part 2 (10)
  • Part 3 (15)

7
Programming assignments
  • Single long project
  • Broken into three parts
  • Can work in a group of 2
  • Both program and write-up required
  • Background needed to get started
  • Java (112 level)
  • Comfortable using data structures(stacks, trees,
    vector)
  • Unix (login, handin, permissions, javac)

8
Programming Assignment
  • 2 Code reviews
  • 10-15 minute oral question and answer period.
  • TA and instructor will critically review your
    assignment.
  • lost art of program design.
  • Make improvements for next level of the
    assignment.
  • Grade depends on level of improvement in code
    quality as well as functionality.
  • No late handin
  • Failure to meet the deadline will result in a
    zero for all team members. No exceptions!

9
Academic integrity
  • No cheating on projects and exams
  • Run code similarity detectors on the projects
    code review
  • Scrutinize exams for copying
  • Department academic integrity policy
  • http//www.cs.rutgers.edu/policies/academicintegri
    ty/
  • Acknowledge your awareness of this policy by the
    end of September to continue to access department
    computing facilities

10
Facilities
  • Cereal machines and lab
  • 20 UltraSparc machines
  • 30 Linux machines
  • Cardkey Access student ID card
  • Romulus and remus for general use
  • Create your accounts now!
  • http//remus.rutgers.edu/newaccount.html

11
CS352 Fundamentals
12
Why Study Networks?
  • Integral part of society
  • Work, entertainment, community
  • Pervasive
  • Home, car, office, school, mall
  • Huge impact on people and society

13
Impact of the Net on People
  • Anytime access to remote information
  • HW assignments from my server
  • Person-to-person and group communication
  • email, blogs, chat
  • Form and strengthen communities
  • chat rooms, MUDs, newsgroups

14
Impact of the Net on Society
  • Huge impact!
  • Continuation of technologies that reduce problems
    of time space
  • (e.g. railroads,phone,autos,TV)
  • Good, bad and ugly
  • mirror of society
  • Changes still on the horizon
  • Commerce, services, entertainment, socializing

15
Concepts for this week
  • What is the Internet?
  • Core and Edge of the Internet
  • Circuit, message and packet switching
  • Network delay analysis
  • Single link
  • Multi-link
  • Layering and encapsulation

16
What is the Internet?
17
What is Internet Technology?
  • What is an internet?
  • Network of networks
  • What is the Internet?
  • A global internet based on the IP protocol
  • To what does Internet technology refer?
  • Architecture
  • Services

Protocols
18
Architecture-wise
Network Collection of interconnected machines
Host Machine running user application
Media Physical process used (copper wire, fiber
optics, satellite link)
Channel Logical line of communication
Router decide where to send data next
19
Service-wise (applications)
  • Electronic mail
  • Remote terminal
  • File transfer
  • Newsgroups
  • File sharing
  • Resource distribution
  • World Wide Web
  • Video conferencing
  • Games

20
Protocols
  • Protocol
  • Architecture ? Service
  • Rules of communication

21
Core Network Switching Schemes
  • How much state about the connection between two
    hosts does each node/router along a path through
    the network maintain?

22
Switching Schemes
  1. Circuit Switching
  2. Message Switching (Store-and-Forward)
  3. Packet Switching (Store-and-Forward)

23
Circuit Switching
  • Provides service by setting up the total path of
    connected lines hop-by-hop from the origin to the
    destination
  • Example Telephone network

24
Circuit Switching (contd)
  • 1. Control message sets up a path from origin to
    destination
  • 2. Return signal informs source that data
    transmission may proceed
  • 3. Data transmission begins
  • 4. Entire path remains allocated to the
    transmission (whether used or not)
  • 5. When transmission is complete, source releases
    the circuit

25
Circuit Switching (contd)
Call request signal
Propagation Delay
Transmission Delay
Time
Call accept signal
Data Transmission Time
Data
A
B
C
D
Routers/Switches
26
Message Switching
  • Each message is addressed to a destination
  • When the entire message is received at a router,
    the next step in its journey is selected if this
    selected channel is busy, the message waits in a
    queue until the channel becomes free
  • Thus, the message hops from node to node
    through a network while allocating only one
    channel at a time
  • Analogy Postal service

27
Message Switching (contd)
Header
Transmission Delay
Time
Queueing Delay
A
B
C
D
Routers/switches
28
Packet Switching
  • Messages are split into smaller pieces called
    packets
  • These packets are numbered and addressed and sent
    through the network one at a time
  • Allows Pipelining
  • Overlap sending and receiving of packets on
    multiple links

29
Packet Switching (contd)
Header
Time
Transmission Delay
Pipelining
A
B
C
D
30
Comparisons
  • (1) Header Overhead
  • Circuit lt Message lt Packet
  • (2) Transmission Delay
  • Short Bursty Messages
  • Packet lt Message lt Circuit
  • Long Continuous Messages
  • Circuit lt Message lt Packet

31
Network delay analysis
32
Why Study Network Performance
  • Networks cost
  • OC-3 line 10,000/month
  • Cable modem 40/month
  • Are you getting your /worth?
  • Why is the network slow?
  • Approach
  • Build abstract models of network performance
  • Observe where real networks deviate from model
  • Simple Models Tells us average/best/worse
    cases-gtuseful, practical
  • Complex Models Hard to understand -gt useless

33
Units
  • Bits are the units used to describe an amount of
    data in a network
  • 1 kilobit (Kbit) 1 x 103 bits 1,000 bits
  • 1 megabit (Mbit) 1 x 106 bits 1,000,000 bits
  • 1 gigabit (Gbit) 1 x 109 bits 1,000,000,000
    bits
  • Seconds are the units used to measure time
  • 1 millisecond (msec) 1 x 10-3 seconds 0.001
    seconds
  • 1 microsecond (msec) 1 x 10-6 seconds
    0.000001 seconds
  • 1 nanosecond (nsec) 1 x 10-9 seconds
    0.000000001 seconds
  • Bits per second are the units used to measure
    channel capacity/bandwidth and throughput
  • bit per second (bps)
  • kilobits per second (Kbps)
  • megabits per second (Mbps)

34
Types of Delay
  • Processing
  • Time to execute protocol code
  • Queuing
  • Time waiting in queue to be processed
  • Transmission
  • Time to get bits on wires
  • Propagation
  • Time for bits to move across wires

35
Transmission vs. Prop. delay
  • A single transmission link as a water pipe
  1. The thicker the pipe, the more water it can carry
    from one end to the other in each unit time
  2. Water is carried from one end of the pipe to the
    other at constant speed, no matter how thick the
    pipe is

Water Data bits Thickness of the pipe Channel
capacity Speed of water through the pipe
Propagation speed
36
Transmission vs. Prop. Delay (cont)
  • pipe
  1. Propagation delay is how long takes to cross the
    pipe, irrespective of volume
  2. Transmission (bandwidth delay) is related to how
    much water can be pushed in through the opening
    per unit time

37
Transmission Time
  • How long does it take A to transmit an entire
    packet onto the link?

Relevant information packet length 1500
bytes channel capacity 100 Mbps
Another way to ask this question If the link can
transmit 10 million bits in a second, how many
seconds does it take to transmit 1500 bytes
(8x1500 bits)?
Solving for t t 0.00012 sec (or 120 msec)
100 Mbits
1500 x 8 bits

1 sec
t
38
Propagation Delay
  • How long does it take a single bit to travel on
    the link from A to B?

Relevant information link distance 500 m
prop. delay factor 5 msec/km
Another way to ask this question If it takes a
signal 5 msec to travel 1 kilometer, then how
long does it take a signal to travel 500 meters?
5 msec
t
Solving for t t 2.5 msec

1000 m
500 m
39
Processing Delay
  • Stylized format required to send data
  • Analogy adding and removing envelopes to letters

How long does it take to execute all these
layers? Why is this time important?
40
Example
  • Protocol Processing Time 40 msec
  • packet length 1500 bytes
  • channel capacity 100 Mbps
  • propagation delay factor 5 msec/km
  1. How long to format the data?
  2. How long does it take a single bit to travel on
    the link from A to B?
  3. How long does it take A to transmit an entire
    packet onto the link?

41
Timeline Method
Host A
Host B
Protocol Delay
40
1st bit
Propagation delay
2.5
Time
120
Transmission time
last bit
Protocol Delay
40
Total time 401202.540 202.5 msec
42
Queuing Delay
Packets waiting processing at input ports
0
0
Packets waiting transmission at output ports
Router
1
2
2
3
Packets arriving faster than processing or
transmission delay gt queuing (I.e. waiting in
line)
43
Analytic Comparison of multi-link network
  • Given choice of 2 switching schemes, how would
    you compare their performance?
  • What would you need to know?
  • What are the independent variables?
  • What is the dependent variable?
  • Could you come up with a closed form expression
    based on your choices?

44
Example Circuit Switching vs. Packet Switching
  • Goal Determine which is faster
  • Formal definition Least time to move a fixed
    amount of data
  • Approach
  • Compute time where circuit switching and packet
    switching are equal based on all possible factors
  • A factor moving in one direction or the other
    will tip the balance in favor of one or the other
  • Well ignore wire-line propagation delay in this
    example

45
Factors
  • Number of bytes in the message N
  • Time to set up circuit c
  • Per-link bandwidth B
  • Size of the packet p
  • Size of the header h
  • Number of switches s

46
Circuit Switching Time
  • Time to send N bytes using circuit switching
  • Set-up cost bandwidth delay

47
Pipelining Parallelogram for packet switching
Host A
Switch 1
Switch 2
Host B
Packet 1
Propagation Delay
Packet 2
Packet 3
Time
Packet 4
Bandwidth Delay
48
Note on Pipelining
  • The above analysis is very general
  • Packets in a computer network
  • Messages/packets are the unit of work.
  • Instructions in a processor
  • Instructions are the unit of work.
  • Jobs through a batch Q in an operating system.
  • Processes are the unit of work.
  • Pipelining speeds up work over time.
  • How?

49
Packet Switching Time
Delay Transmission Propagation delays
Propagation delay Time for a single packet
to cross - not really prop. delay in the
traditional sense
Transmission delay (also bandwidth delay)
Time to push all the packets into the network
50
Packet Switching Time
Transmission delay
Propagation delay
Number of packets
Number of links/hops
Time for each packet to go through each link
51
Equilibrium Point
Assuming all other factors equal, solve for C Q
Can you add link propagation delay to this
example?
52
Homework Questions
  • If we use message switching, how does the time
    increase as we scale s?
  • How does packet switching reduce the impact of
    increasing s?
  • Show, using an equation, how reducing the packet
    size and packet switching reduces the impact of
    increasing s.
  • Where does the approach of reducing packet size
    fail to give any benefit?

53
Layering and Encapsulation
54
Why Layering?
  • Network communication is very complex
  • Separation of concerns
  • Different vendors and organizations responsible
    for different layers
  • Testing and maintenance is simplified
  • Easy to replace a single layer with a different
    version

55
Protocol Hierarchy
  • Use layers to hide complexity
  • Each layer implements a service
  • Layer N uses service provided by layer N-1
  • layer N-1 provides a service to layer N
  • Protocols
  • Each layer communicates with its peer by a set of
    rules
  • Interface
  • A layers interface specifies the operations

56
Protocol Hierarchy (contd)
Host A
Host B
Layer 7 Protocol
Layer 7
Layer 7
Layer 6 Protocol
Layer 6
Layer 6
Layer 5 Protocol
Layer 5
Layer 5
Layer 4 Protocol
Layer 4
Layer 4
Layer 3 Protocol
Layer 3
Layer 3
Layer 2 Protocol
Layer 2
Layer 2
Layer 1 Protocol
Layer 1
Layer 1
Physical Medium
57
Different Layering Architectures
  • ISO OSI 7-Layer Architecture
  • TCP/IP 4-Layer Architecture
  • application layer 5 layers in Kurose
  • Novell NetWare IPX/SPX 4-Layer Architecture

58
Standards Making Organizations
  • ISO International Standards Organization
  • ITU International Telecommunication Union
    (formerly CCITT)
  • ANSI American National Standards Institute
  • IEEE Institute of Electrical and Electronic
    Engineers
  • IETF Internet Engineering Task Force
  • ATM Forum ATM standards-making body
  • ...and many more

59
Why So Many Standards Organizations?
  • Multiple technologies
  • Different areas of emphasis and history
  • Telecommunications/telephones
  • ITU,ISO,ATM
  • Local area networking/computers
  • IETF, IEEE
  • System area networks/storage
  • ANSI

60
ISO OSI Layering Architecture
Host A
Host B
Application Protocol
Application Layer
Application Layer
Presentation Protocol
Presentation Layer
Presentation Layer
Session Protocol
Session Layer
Session Layer
Transport Protocol
Transport Layer
Transport Layer
Network Layer
Network Layer
Network Layer
Network Layer
Data Link Layer
Data Link Layer
Data Link Layer
Data Link Layer
Physical Layer
Physical Layer
Physical Layer
Physical Layer
Router
Router
61
ISOs Design Principles
  • A layer should be created where a different level
    of abstraction is needed
  • Each layer should perform a well-defined function
  • The layer boundaries should be chosen to minimize
    information flow across the interfaces
  • The number of layers should be large enough that
    distinct functions need not be thrown together in
    the same layer out of necessity, and small enough
    that the architecture does not become unwieldy

62
Layer 1 Physical Layer
  • Functions
  • Transmission of a raw bit stream
  • Forms the physical interface between devices
  • Issues
  • Which modulation technique (bits to pulse)?
  • How long will a bit last?
  • Bit-serial or parallel transmission?
  • Half- or Full-duplex transmission?
  • How many pins does the network connector have?
  • How is a connection set up or torn down?

63
Layer 2 Data Link Layer
  • Functions
  • Provides reliable transfer of information between
    two adjacent nodes
  • Creates frames from bits and vice versa
  • Provides frame-level error control
  • Provides flow control
  • In summary, the data link layer provides the
    network layer with what appears to be an
    error-free link for packets

64
Layer 3 Network Layer
  • Functions
  • Responsible for routing decisions
  • Dynamic routing
  • Fixed routing
  • Performs congestion control

65
Layer 4 Transport Layer
  • Functions
  • Hide the details of the network from the session
    layer
  • Example If we want replace a point-to-point link
    with a satellite link, this change should not
    affect the behavior of the upper layers
  • Provides reliable end-to-end communication

66
Transport Layer (contd)
Host A
Host B
Application Protocol
Application Layer
Application Layer
first end-to-end layer
Presentation Protocol
Presentation Layer
Presentation Layer
Session Protocol
Session Layer
Session Layer
Transport Protocol
Transport Layer
Transport Layer
Network Layer
Network Layer
Network Layer
Network Layer
Data Link Layer
Data Link Layer
Data Link Layer
Data Link Layer
Physical Layer
Physical Layer
Physical Layer
Physical Layer
Router
Router
67
Transport Layer (contd)
  • Functions (contd)
  • Perform end-to-end flow control
  • Perform packet retransmission when packets are
    lost by the network

68
Layer 5 Session Layer
  • May perform synchronization between several
    communicating applications or logical
    transmissions
  • Groups several user-level connections into a
    single session
  • Examples
  • Banking session
  • Network meetings

69
Layer 6 Presentation Layer
  • Performs specific functions that are requested
    regularly by applications
  • Examples
  • encryption
  • ASCII to Unicode, Unicode to ASCII
  • LSB-first representations to MSB-first
    representations

70
Layer 7 Application Layer
  • Application layer protocols are
    application-dependent
  • Implements communication between two applications
    of the same type
  • Examples
  • FTP
  • HTTP
  • SMTP (email)

71
Encapsulation
  • Treat the neighboring layers information as a
    black box, cant look inside or break message
  • Sending add information needed by the current
    layer around the higher layers data
  • headers in front
  • trailers in back
  • Receiving Strip off headers and trailers before
    handing up the stack

72
Encapsulation
Data
Application Layer
  • Headers
  • Trailer

Presentation Layer
Data
PH
Session Layer
Transport Layer
Network Layer
Data
NH
Data Link Layer
Data
DH
DT
Physical Layer
Data
PH
73
Internet Hourglass Architecture
  • Defined by Internet Engineering Task Force (IETF)
  • Hourglass Design

74
Internet Design Principles
  • Scale
  • Protocols should work in networks of all sizes
    and distances
  • Incremental deployment
  • New protocols need to be deployed gradually
  • Heterogeneity
  • Different technologies, autonomous organizations
  • End-to-end argument
  • Some functions can only be correctly implemented
    at the end hosts the network should not provided
    these.

75
TCP/IP Layering Architecture
  • A simplified model
  • The network layer
  • Hosts drop packets into this layer, layer routes
    towards destination- only promise- try my best
  • The transport layer
  • reliable byte-oriented stream

Application
Transport
Internet/Network
Host-to-Net
76
TCP/IP Layering Architecture (contd)
Host B
Application Protocol
Application Layer
Transport Protocol (TCP)
Transport Layer
IP
IP
IP
Network Layer
Network Layer
Network Layer
Host-to- Net Layer
Host-to- Net Layer
Host-to- Net Layer
Write a Comment
User Comments (0)
About PowerShow.com