+ All Categories
Home > Documents > Lecture 02

Lecture 02

Date post: 12-Sep-2015
Category:
Upload: dosti-masti
View: 11 times
Download: 1 times
Share this document with a friend
Description:
Vu lectures cs716
Popular Tags:
26
1 CS716 Advanced Computer Networks By Dr. Amir Qayyum
Transcript
  • *CS716

    Advanced Computer Networks

    By Dr. Amir Qayyum

  • Lecture No. 2

  • *MultiplexingPhysical links/switches must be shared among users(synchronous) Time-Division Multiplexing (TDM)Frequency-Division Multiplexing (FDM)Multiple flows on a single linkDo you see any problem with TDM / FDM ?

  • *Statistical MultiplexingOn-demand time-division, possibly synchronous (ATM)Schedule link on a per-packet basisBuffer packets in switches that are contending for the linkPackets from different sources interleaved on linkDo you see any problem ?

  • *Statistical MultiplexingAn application needs to break-up its message in packets, and re-assemble at the receiverFair allocation of link capacity: FIFO, round-robin or QoSIf congestion occurs at a switch - buffer may overflow, packets may be lost

  • *Enough ?A network is delivering packets among a collection of computers

    How application processes communicate in a meaningful way ?

    Hide network complexity by implementing the common services once

  • *Inter-Process CommunicationTurn host-to-host connectivity into process-to-process communication, making the communication meaningful.Fill gap between what applications expect and what the underlying technology provides.HostHostApplicationHostApplicationHostHostChannelAbstraction for application-level communication

  • *IPC AbstractionsSemantics and interface depend on applicationsRequest/Replydistributed file systemsfile servers (FTP)digital libraries / HTTPinformation retrievalMessage streamvideo on-demandvideo conferencingdelay sensitivetwo-way frame flow1/4 NTSC = 352x240 pixels(352 x 240 x 24)/8=247.5KB30 fps = 7500KBps = 60Mbps10fps + compression < 10Mbpsreliable ?prioritized ?delay/bandwidth guarantees ?

  • *Abstract Channel FunctionalityWhat functionality does a channel provide ?Smallest set of abstract channel types adequate for largest number of applicationsWhere the functionality is implemented ?Network as a simple bit-pipe with all high-level communication semantics at the hostsMore intelligent switches allowing hosts to be dumb devices (telephone network)

  • *What Goes Wrong in the Network?Reliability at stake

    Bit-level errors (electrical interference)Packet-level errors (congestion)distinction between lost and late packetLink and node failuresdistinction between broken and flaky linkdistinction between failed and slow node

  • *What Goes Undesirable in the Network?Required performance at stake

    Messages are delayedMessages are delivered out-of-orderThird partys eavesdropThe challenge is to fill the gap between application expectations and hardware capabilities

  • *Performance Metrics and to do so while delivering good performance

    Bandwidth (throughput)data transmitted per unit time, e.g. 10 Mbpslink bandwidth versus end-to-end bandwidthnotation KB = 210 bytesKbps = 103 bits per second

  • *Performance Metrics1 second(a)1 second(b)1Mbps, 1s/bit2Mbps, 0.5s/bitBandwidth related to bit width

  • *Performance MetricsLatency / delaytime to send message from point A to point Bone-way versus round-trip time (RTT)componentsLatency = Propagation + Transmit + QueuePropagation = Distance / cTransmit = Size / BandwidthNote:No queuing delay in direct (point-to-point) linkBandwidth irrelevant if size = 1 bitProcess-to-process latency includes software processing overhead (dominates over shorter distances)

  • *Bandwidth versus LatencyRelative importance, depends on application1-byte character:Choice of 1ms vs 100ms dominates 1Mbps vs 100Mbps25MB file:Choice of 1Mbps vs 100Mbps dominates 1ms vs 100msLarge data (file transfer) is bandwidth criticalSmall data (HTTP) is latency critical

  • *Bandwidth versus Latency10,00050002000100050020010050201052110010RTT (ms)1-MB object, 1.5-Mbps link1-MB object, 10-Mbps link2-KB object, 1.5-Mbps link2-KB object, 10-Mbps link1-byte object, 1.5-Mbps link1-byte object, 10-Mbps linkPerceived latency (ms)

  • *Delay x Bandwidth ProductAmount of data in flight or in the pipeExample: 100ms RTT x 45Mbps BW = 560KBThis much data must be buffered before the sender responds to slowdown the requestBandwidthDelay

  • *Infinite BandwidthLatency (RTT) dominates instead of throughputThroughput = TransferSize / TransferTimeTransferTime = RTT + 1/Bandwidth x TransferSize1 MB file over a 1 Mbps network takes around 8 secWith RTT of 100ms, it corresponds to 80 RTTsEffective throughput is 1MB/8.1s = 0.987Mbps1 MB file over a 1 Gbps network takes 100ms + 8msEffective throughput is 1MB/108ms = 74.1 Mbps1-MB file to 1-Gbps link apears like a 1-KB packet to 1-Mbps link

  • *Bandwidth RequirementsRequest/reply type applications may agree for as much bandwidth as is availableMessage stream type applications often require a certain bandwidth: not more not lessAverage required bandwidth does not always help to design a networkUpper bound on a burst (peak-rate transfer)Queuing delay introduces variation in latency (jitter)

  • *Wrap-upEstablished a comprehensive set of requirements for network design

    Networks evolve to accommodate changes in underlying technologies and user demands

    However, hardware and user expectations are moving targets

  • *Network ArchitectureThe challenge is to fill the gap between hardware capabilities and application expectations, and to do so while delivering good performance

    Designers cope with this complex task by developing a network architecture as a guidelineLayering, protocols, standards

  • *LayeringUse abstractions to hide complexityAbstractions naturally lead to layeringEach layer provides some functionalityHardwareHost-to-host connectivityProcess-to-process channelsApplication programs

  • *LayeringAlternative abstractions at each layerManageable network componentsModify layers independentlyHardwareHost-to-host connectivityApplication programsRequest/replychannelMessage streamchannel

  • *ProtocolsBuilding blocks of a network architectureEach protocol object has two different interfacesservice interface: operations on this protocolpeer-to-peer interface: messages exchanged with peer Term protocol is overloadedspecification of peer-to-peer interfacemodule that implements this interfacepeer modules are interoperable if both accurately follow the specifications

  • *Host 1Host 2ServiceinterfacePeer-to-peerinterfaceProtocol InterfacesHigh-levelobjectHigh-levelobjectProtocolProtocol

  • *Protocol Graph Network ArchitectureCollection of protocols and their dependenciesmost peer-to-peer communication is indirectpeer-to-peer is direct only at hardware levelHost 1Host 2FileapplicationDigitallibraryapplicationVideoapplicationFileapplicationDigitallibraryapplicationVideoapplicationRRPRRPMSPMSPHHPHHPRRP: Request Reply Protocol

    MSP: Message Stream Protocol

    HHP: Host-to-Host Protocol


Recommended