Computer Networks (CS 778) - PowerPoint PPT Presentation

Loading...

PPT – Computer Networks (CS 778) PowerPoint presentation | free to download - id: 72484c-MWE0M



Loading


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation
Title:

Computer Networks (CS 778)

Description:

Computer Networks (CS 778) Chapter 1, Foundations 1.1 Requirements understanding the fundamental network ideas makes understanding any new protocol easier. – PowerPoint PPT presentation

Number of Views:17
Avg rating:3.0/5.0
Slides: 33
Provided by: William1246
Category:

less

Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Computer Networks (CS 778)


1
Computer Networks (CS 778)
  • Chapter 1, Foundations
  • 1.1 Requirements
  • understanding the fundamental network ideas makes
    understanding any new protocol easier.
  • 1st step is to identify the constraints and
    requirements that influence network design.

2
Perspective
  • It is important to understand the expectations
    one has of a network depending on your
    perspective
  • Network users services that their applications
    need, e.g., guarantee that each message it sends
    will be delivered without error within a certain
    amount of time
  • Network designers cost-effective design e.g.,
    network resources are efficiently utilized and
    fairly allocated to different users
  • Network providers system that is easy to
    administer and manage e.g., faults can be easily
    isolated and it is easy to account for usage
  • This section attempts to distill these different
    perspectives into a high-level introduction to
    the major considerations that drive network
    design and, in doing so, identify challenges
    addressed throughout the book.

3
1.1.1 Connectivity Building Blocks
  • A network must provide connectivity among
    computers.
  • a few select machines (private corporate
    networks).
  • privacy, security concerns
  • potentially all computers in world (e.g., the
    Internet).
  • growth concerns (challenge of scalability to
    arbitrary size)
  • Network connectivity occurs at many levels
  • Link physical medium directly connecting
    computers(coax, fiber)
  • 2 computers point-to-point (pp links) link.
  • more than 2 computers multiple-access link.
  • limited size (geographically nodes) or
    unlimited (satellite nets)
  • Node a computers (other device?) linked by
    network.
  • indirect connections among sets of cooperating
    nodes possible
  • (without a complete set of direct physical
    connections)

4
Strategies
  • Node in a set of nodes can be connected to 1 or
    more links
  • Those attached to ? 2 run software to forward
    data from 1 to next
  • CIRCUIT SWITCHED networks
  • (carry bit streams, e.g., telephony networks)
  • circuit-switched net establishes dedicated
    circuit across a sequence of links, allows source
    to send a stream of bits.
  • PACKET SWITCHED
  • (store-and-forward, vast majority eg, Internet)
  • nodes send discrete data blocks
    (frames/packet/messages)
  • Use "store and forward" strategy, typically
  • Each nodes receives an entire packet,
  • stores it in its internal memory,
  • forwards complete packet to the next node.

5
Switched Networks
Nodes can be inside the network (switches,
routers, gateways) or outside the network
(hosts) A cloud is used for any type of net
(pt-to-pt or multiple access) A generic internet
(connected group of networks) will be in lower
case while the currently operational TCP/IP
Internet will be indicated in upper
case. internetworking can be recursed to any
number of levels.
  • A network 2 or more nodes connected by links
    (and a network is the simples internet

An "internet consists of 2 or more
networks/internets. Signified by links
interconnecting clouds. The nodes on these links
are called routers or gateways
6
Addressing and Routing
  • Internetworking requires "addressing" so
    communication can take place.
  • Address identifies a node
  • Routing systematic determination of how to
    forward a message to destination node, based on
    its address (unicast assumed here)
  • Types of addresses
  • unicast specific node on a network/internet
  • broadcast all nodes on a network/internet
  • multicast some subset of the nodes on a
    network/internet

7
Multiplexing (multiple users sharing a system
resource concurrently)
  • Cost-effective Resource Sharing
  • Packet Switching used in computer networks
  • In circuit switching, when no data is being sent,
    "circuit cannot be used by another
    source-destination pair).
  • Collection of nodes indirectly connected by
    nesting of neworks, node pairs may send messages
    concurrently across a link.
  • Time-Division Multiplexing (TDM)
  • divide time into equal quanta, round-robin among
    flows.
  • Frequency-Division Multiplexing (FDM) (transmit
    flows over different frequencies)

L1
R1
L2
R2
Switch 1
Switch 2
L3
R3
8
Statistical Multiplexing (SM)
  • (in TDM and FDM, if a flow has nothing to send,
  • resource is wasted over that time or frequency)
  • SM Time-division, but on demand, not fixed.
  • Reschedule link on a per-packet basis
  • Packets of different sources interleaved on link
  • Buffer packets that are contending for the link
  • Packet queue processed FIFO/priority
  • Buffer overflow is called congestion
  • Physical link shared over time (like TDM) but
    data transmitted on demand, not during
    predetermined time slots. Flow gets to transmit
    without waiting (if it's the only flow with data)
    and it avoids idle time.
  • How does SM ensure each flow gets a turn?
    (Upper bound packet size, rather than arbitrary
    sized message) - may require "segmentation/reassem
    bly (SAR)
  • Decision made on packet by packet basis as to
    which flow sends
  • if gt 1 flow has data, packets are
    interleaved (usually FIFO, RoundRobin)
  • QoS can be requested (max packet delay, etc.)
  • Buffers needed when switch gets packets faster
    than it can send.
  • When buffers fill up (switch congested) some
    packets must be dropped.

9
WDM and DWDM
WDM
Passive bandpass filter
  • DWDM (Dense Wave Division Multiplexing) uses
    greater wavelength packing densities to multiplex
    more optical signals over one fiber.

Optical fiber

10
Inter-Process Communication
  • One option application designers build all
    functionality into applications.
  • Better option implement "common services", for
    application designers use.
  • Challenge for network designers is to identify
    the right set of services which hide complexity
    without over-constraining designer. Think of
    logical process channels as providing
    communication services guaranteed
    message-delivery/correct-ordering secure
    communication (no eavesdropping)
  • Turn host-to-host connectivity into
    process-to-process communication.
  • Fill gap between what apps expect and what
    underlying technology provides.
  • Think of the net as more than a delivery system
    of packets between computers. Think of it as
    providing names for sets of applic-processes to
    communicate over network.

11
IPC Abstractions
Remote File Access - 1 of the earliest
application classes (FTP, NFS, ) Client
(request file be sent) Server (honors request)
model is used. remote reading client
sends small "request" server sends large
"file". remote writing client sends
large "file" server sends small "ack". Another
class of applications is video over the net (VOD,
video-conferencing) Two types of channels (IPC
entities) might be provided for these
applications, Request/Reply (for files)
(guarantee delivery, protect privacy/integrity..)
Message-stream (for video)
(order-preserve, privacy/integrity protecting,
supporting multicasting.
12
What Can Go Wrong in the Network?
  • Bit-level errors
  • single bits, burst errors (several consecutive
    bits)
  • fairly rare (every 106 bits on copper 1013 on
    optical)
  • there are detection/correction techniques.
  • Packet-level errors (e.g., due to congestion and
    packet dropping?, error?)
  • (packet lost/discarded due to congested switch or
    routing error)
  • Link and node failures
  • Messages are delayed
  • Messages are deliver out-of-order
  • Third parties eavesdrop
  • Key problem is to fill in the gap between what
    applications expect and what underlying
    technology provides.

13
  • Bandwidth
  • of bits per second that can be sent.
  • Latency (delay)
  • Time to send message from point A to point B
  • Example 24 ms across this continent on fiber
  • Sometimes interested in round-trip time (RTT)
  • E.g., in Request/Reply mode.
  • Components of latency
  • Latency Propagation Transmit Queue
  • Propagation Distance / SpeedOfLight
  • Transmit Size / Bandwidth
  • amount of time it takes to transmit a unit of
    data.
  • delay from when 1st bit of data arrives at dest.
    of linkchannel until last bit arrives
    linkchannel
  • Queue latency (delays in switch and send queues
    - none for links)

14
  • 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
  • no queuing delays in direct link
  • bandwidth not relevant if Size 1 bit
  • process-to-process latency includes software
    overhead
  • software overhead can dominate when Distance is
    small
  • Terminology
  • NAME Deka Hecto Kilo Mega Giga
    Tera Peta Exa
  • Power of 10 1 2 3 6
    9 12 15 18
  • NAME Deci Centi Milli Micro Nano
    Pico Femto Atto
  • Power of 10 -1 -2 -3 -6
    -9 -12 -15 -18
  • Bandwidth versus Latency (relative importance)
  • If youre sending 1 byte, propagation latency
    dominates
  • - Big difference between 1 ms latency and
    100 ms
  • - Bandwidth is immaterial (1 Mbps / 1000
    Mbps??)
  • If youre sending 500 MB, bandwidth dominates
  • - Big difference at 1 Mbps (500 sec
    transmit delay) or 1 Gbps (500 msec transmit
    delay)

15
Delay x Bandwidth Product
  • Delay x Bandwidth Product is often useful
  • Example 100ms x 45Mbps 562KB
  • bits held by pipe at one time. (Bandwidth
    bits/meter)
  • Whereas, delay length of pipe in meters (or
    sec, since speed light is constant
  • bits a source must send before 1st bit appears
    at dest.

16
Network Architecture (general blueprint for
design/implementation)
  • The 2 most common architectures are Open Systems
    Interconnection (OSI) and Internet.
  • Layering and Protocols
  • When a system gets complex, designers use levels
    of abstraction
  • encapsulation that provides an interface for
    higher layers,
  • hides details of how the layer is implemented.
  • Challenge identify abstractions that provides
    useful services and can be easily implemented in
    the underlying system.
  • Services provided at higher layers are
    implemented in terms of services provided at
    lower layers.
  • E.g., Application Programs layer
  • Process-Process layer (AKA channels)
  • Host-Host layer (links)
  • Underlying Hardware layer

17
Layering
  • Use abstractions to hide complexity
  • Abstraction naturally leads to layering
  • Can have alternative abstractions at each layer

Types of process-to-process channels --gt
18
Protocol
  • Provides communication service that higher-layer
    objects use to exchange messages.
  • Protocols have
  • Service-interface used by objects to specify
    communication services (e.g., request/reply
    versus message-stream are protocol options for
    process-to-process channels)
  • Peer-interface to protocols counterpart (peer)
    on another machine (Note, except at the
    hardware level where peers communicate directly
    over a link, peer-to-peer communication is
    indirect (each protocol communicates with a peer
    by passing messages to some lower level
    protocol...)

19
Protocols
  • Net architecture bldg blocks 2 interfaces
  • service interface operations on this protocol
  • peer-to-peer interface messages exchanged with
    peers

Host 1
Host 2
Service
High-level
High-level
interface
object
object
Protocol
Protocol
Peer-to-peer
interface
20
Protocol Machinery
  • Protocol Graph (Represents protocol levels in a
    hierarchical diagram)
  • The simple example we have used so far has 4
    layers
  • Application programs
  • Process-Process layer (transport) AKA, channels
    with either Request/Reply or Message Passing
    protocol
  • Host-Host layer (data link)
  • 3 Protocols
  • RRP Request/Reply Protocol
  • MSP Message Stream Protocol
  • HHP Host-to-host Protocol E.g., A File
    application uses RRP/HHP protocol stack.

21
  • Encapsulation (header/body)
  • RRP, for example, treats application message as
  • string of bytes (or bits).
  • It doesnt care what the message is, just where
    it goes and with what QoS (this info is header
    info).
  • Therefore the payload (body) is "encapsulated".
  • Encapsulation is repeated at each level (and
    header info from lower level becomes part of
    payload for next level).
  • Multiplexing may occur at each level also.

22
Standard Architectures (Standards bodies define
layers)
  • Open Systems Interconnect(OSI) Architecture
  • of the International Standards Organization (ISO)
  • So OSI ISO architecture
  • International Telecom Union (ITU) formerly CCITT
  • European
  • X dot series X.25, X.400, X.500
  • IEEE

23
ISO OSI Architecture ISO was one of the 1st to
formally define a connectivity standard for
computers (OSI) OSI partitions network
functionality into 7 layers with 1 or more
protocols implementing each layer. Lower 3
implemented on all network nodes (both switches
and hosts) Physical transmits of raw bits over
a physical link Data Link collects stream of
bits into a larger
aggregates (called frames) - makes it a "data
link" not just a physical link -
Network-adapters (hardware) and device-drivers
(software typically involved here. Network
routing among nodes (packet switching) implements
host-host link using eg, IP-adr Next 4
layers run on hosts. (Session and Presentation
layers are fuzzy and little used!) Transport
implements process-to-process channel using e.g.,
( IP-addr, port- ) - Provides end-end
network-independent message transport services to
processes Session ties together different
streams in same appl (eg, audio, video, data in
a teleconf. Appl) Presentation resolves data
format differences (16/32/64 bit int.,
etc.) Application applications (sockets are most
common API)
24
Internet Architecture (4 layer architecture)
  • Network layer a variety of network protocols
    (e.g., FDDI, Ehternet...)
  • Internet Protocol layer (IP) interconnects
    multiple net technologies into single logical
    internetwork
  • Transport layer (TCPTrans Ctrl Protocol or
    UDPUser Datagram Protocol)
  • provide alternative logical channels to
    applications
  • - TCP provides reliable byte-stream
    channels
  • - UDP provides unreliable datagram
    (message) channels
  • Apps FTP, TFTP (Trivial File Transfer), Telnet
    (remote login), SMTP (Simple Mail Transfer

  • ________________________________
  • Not strict layering ______________Applicat
    ion______
  • _TCP__UDP______
  • _____IP______________
    _________
  • ______________Network_
    _________
  • IETP requirements for a new protocol
    Specifications at least 1 Implementation
  • Final note ISO protocols are largely ignored
    today. It is a good reference architecture, but
    it is a commercial failure. Why?
  • TCP/IP is good, simple, shipped
    free_with_BSD_since_80s

25
Internet Architecture (AKA TCP/IP)
  • By Internet Engineering Task Force (IETF)
  • Hourglass Design
  • Evolved from ARPANET (DARPA funded packet net)
  • Different from ISO (reconcilable, but not that
    informative)
  • OS offers APIs (syntax for impl of layers eg,
    sockets)

FTP
HTTP
NV
TFTP
TCP
UDP
IP

NET
NET
NET
1
2
n
26
Reconciling OSI layers with the TCP/IP layers
  • Reconciling OSI layers with the TCP/IP layers?
    (Peterson-Davies say its not worthwihile Other
    authors attempt it (Tanenbaum)
  • Application
    Application
  • Presentation -
  • Session -
  • Transport
    Transport (TPC/UDP packet/frame)
  • Network
    Internet (IP)
  • DataLink
    Network (aka host-net)
  • Physical

27
TCP/IP Model
28
In all Reference Models, encapsulate at each layer
29
ATM Architecture
  • While were talking about architecture standards
    and reconciling them, there is a 3rd, the ATM
    architecture.
  • ATM is "Connection Oriented, not connectionless
    like ISO and the Internet Architectures.
  • ie, there is a "setup phase (of a virtual
    end-to-end connection)
  • (like the telephone system - "dialing and
    connecting"), then a
  • transmission phase
  • ATM Layers Apps, e.g., VOICE VIDEO DATA

  • ------------------------------------
  • ATM Adaptation Layer (ALL)
  • ------------------------------------
  • ATM Layer
  • ------------------------------------
  • Physical Layer
  • ------------------------------------

30
Physical Layer
  • Physical Layer physical interfaces and framing
    protocols
  • Several Standards for physical connectivity
    between devices
  • DS-1 or T1 at 1.54 Mbps
  • DS-3 or T3 at 45 Mbps
  • 100 Mbps access using FDDI standard
  • 155 Mbps access using Fiber Channel standard on
    multimode fiber
  • Synchronous Optical NETwork (SONET) is the
    predominant physical layer framing standard for
    optical transmission (nonUSSDH-Synch Digital
    Hierarchy)
  • (The name sometimes also refers to a physical
    connection architecture I.e., SONET ring)
  • LEVEL LINE-RATES
  • OC-1 51.84 Mbps
  • OC-3 155.52 Mbps
  • OC-12 622.08 Mbps
  • OC-48 2488.32 Mbps

31
ATM Layer
  • Cell structure definition
  • --------------------------------------
    --------------------------
  • GFC VPI VCI PT CLP HEC
    Info Field (Payload)
  • -------------------------------------------
    ---------------------
  • Bits 4 8 16 3 1 8
  • byte lt - - - - - - 5 - - - - - - - - - -
    -gtlt - - - 48 - - - -gt
  • GFC Generic Flow Control. (police traffic
    across user-network interface)
  • Two levels of addressing
  • VPI Virtual Path Indetifier - size goes to 12
    bits for NNIs
  • VCI Virtual Circuit Identifier - VPI VCI combo
    identifies the channel
  • PT Payload Type (for congestion control)
  • Types user-info, connection-mgmt-info-(signaling
    ), etc
  • CPL Cell Loss Priority - indicates if cell can
    be discarded upon congestion
  • HEC Header Error Ctrl ( Cyclic Redundancy Check
    on cell header indicates bit errors in header
    portion)
  • ATM Adaptation Layer
  • Interface between user application and ATM
  • Performs segmentation and reassembly into ATM
    cells

32
Protocol Implementation Issues
  • Process Model
  • Process-per-protocol model
  • Separate process (thread) for each protocol in
    stack
  • Much context switching (each move up/down stack
    results in a context switch!)
  • Simple to understand
  • Process-per-message model
  • OS dispatches one process for message
  • Message is taken up/down stack by invoked
    protocol procedures.
  • No context switching
  • Much faster
  • Harder to understand?
About PowerShow.com