Networks Basics of BITS

download Networks Basics of BITS

of 15

Transcript of Networks Basics of BITS

  • 8/19/2019 Networks Basics of BITS

    1/38

    BITS PilaniPilani Campus

    Advance ComputerNetworks (CS G525)

    Virendra S ShekhawatDepartment of Computer Science and Information Systems

  • 8/19/2019 Networks Basics of BITS

    2/38

    BITS PilaniPilani Campus

    First Semester 2015-2016Lecture-1 [01 st Aug 2015]

  • 8/19/2019 Networks Basics of BITS

    3/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    Agenda

    • About the course• Internet design philosophy [CH 1]

    – Compulsory Reading• The Design Philosophy of The DARPA Internet Protocols [Clark

    1988]

    • A brief History of the Internet [Leiner 2009] ( Self Reading )

    • Where to implement the network functionalities [CH 2] – Compulsory Reading

    • End to End Arguments in System Design [J H Saltzer 1984]

    Advanced Computer Networks CS ZG5253

  • 8/19/2019 Networks Basics of BITS

    4/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    Objective of Networking?

    • Communication between applications running ondifferent hosts

    • Understand applications needs/requirements

    –Bandwidth requirement (i.e. bits/sec)

    – Traffic nature• Bursty or constant bit rate

    – Traffic target

    •Single or multiple, Fixed or mobile

    – Delay sensitive? – Loss sensitive?

    Advanced Computer Networks CS ZG5254

  • 8/19/2019 Networks Basics of BITS

    5/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    Telephone network vs. Internet

    • Telephone network – End to end connection establishment – Message switching

    – Resource utilization?• Internet

    – Packet switching (packets are self contained unit!)

    –Use Store and forward

    – On demand resource allocation – Good for bursty traffic. Why???

    Advanced Computer Networks CS ZG5255

  • 8/19/2019 Networks Basics of BITS

    6/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    Issues with Packet switching

    • Reordering requires at destination – Packets can take different paths to reach

    destination

    • Contention – Causes Packet loss

    • Congestion – Causes Delay

    Advanced Computer Networks CS ZG5256

  • 8/19/2019 Networks Basics of BITS

    7/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    What is Internet?

    • Network of networks… – Multiple networks are interconnected – Key components

    • Hosts or end points• Routers to connect networks

    • Interconnected Networks Internet

    Advanced Computer Networks CS ZG5257

  • 8/19/2019 Networks Basics of BITS

    8/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    Challenges

    • Interconnected networks are different invarious ways – Address formats

    – Performance – bandwidth/latency – Packet size – Loss rate/loss handling

    – Routing• How to transfer the data from one network toanother???

    Advanced Computer Networks CS ZG5258

  • 8/19/2019 Networks Basics of BITS

    9/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    Functionalities Required

    • Find the nodes in the Internet• Route the packets• Deal with the different packet size requirements

    from different networks

    • Meet the application requirements – Reliability

    • Data loss and data corruption

    – Congestion and flow control – In order delivery

    Advanced Computer Networks CS ZG5259

  • 8/19/2019 Networks Basics of BITS

    10/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    Layered Architecture

    • Networking functionalities can be divided intomodules/layers

    • Good side of layered model – Each layer relies on services from layer below and

    exports services to layer above

    – Interface defines interaction – Hides implementation - layers can change without

    disturbing other layers (black box)

    Advanced Computer Networks CS ZG52510

  • 8/19/2019 Networks Basics of BITS

    11/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    Example: OSI Layers

    • Physical: how to transmit bits• Data link: how to transmit frames• Network: how to route packets

    • Transport: how to send packets end to end• Session: how to tie flows together• Presentation: byte ordering, security

    • Application: everything else• Question…?

    – How TCP/IP is different from OSI?

    Advanced Computer Networks CS ZG52511

  • 8/19/2019 Networks Basics of BITS

    12/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    Any Drawbacks of Layering?

    • Layer N may duplicate lower level functionality(e.g., error recovery)

    • Layers may need same info (timestamp, MTU)• Strict adherence to layering may hurt

    performance. How?

    • Question? – How to determine each layer’s functionality?

    Advanced Computer Networks CS ZG52512

  • 8/19/2019 Networks Basics of BITS

    13/38BITS Pilani, Pilani CampusFirst Sem 2015-1613

    Goals for the Internet Architecture

    0. Connect existing networksInitially ARPANET and ARPA packet radio network

    1. Survivability

    2. Support multiple types of servicesDiffer in Speed, Latency and Reliability

    3. Must accommodate a variety of networks

    4. Allow distributed management5. Allow host attachment with a low level of effort6. Be cost effective7. Allow resource accountability

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    14/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    0. Connecting Networks

    • How to internetwork various networktechnologies

    • ARPANET, X.25 networks, LANs, satellite

    networks, packet networks, serial links…• Many differences between networks – Address formats – Performance – bandwidth/latency – Packet size – Loss rate/pattern/handling – Routing

    Advanced Computer Networks CS ZG52514

  • 8/19/2019 Networks Basics of BITS

    15/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    Standardization: SupportMultiple Types of Networks

    • How to provide Interconnectivity with wide variety ofnetworks? – Minimal set of functionality for underlying network gives

    this flexibility!• Minimum packet size• Reasonable delivery odds, but not 100%• Some form of addressing unless point to point

    • Important non-assumptions: – Perfect reliability – Broadcast, multicast – Priority handling of traffic – Internal knowledge of delays, speeds, failures, etc.

    • Also achieves Goal 3 of supporting various networks

    15Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    16/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    IP Hourglass

    • Need to interconnect many existingnetworks

    • Hide underlying technology fromapplications

    • Decisions: – Network provides minimal functionality – “Narrow waist” – Tradeoff No assumptions no guarantee

    • Question – If some applications want these services

    (e.g. reliability) then how to get it?

    Technology

    Applicationsemail WWW phone...

    SMTP HTTP RTP...

    TCP UDP…

    IP

    ethernet PPP…

    CSMA async sonet...

    copper fiber radio...

    16Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    17/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    1. Survivability

    • Ensure communication service even in the presence ofnetwork and router failures• If network disrupted and reconfigured

    – Communicating entities should not care! – No higher-level state reconfiguration

    • How to achieve such reliability? – Where can communication state be stored?

    17

    Network Host

    Failure handing Replication “Fate sharing” Net Engineering Tough SimpleTrust Less More

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    18/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    Fate Sharing

    • Lose state information for an entity if and only if the entityitself is lost.

    • Examples: – OK to lose TCP state if one endpoint crashes

    • NOT okay to lose if an intermediate router reboots – Is this still true in today’s network?

    • Survivability compromise – Weak provisions for getting network failure information – Higher level protocols are used to detect the failure

    ConnectionState State No State

    18Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    19/38

  • 8/19/2019 Networks Basics of BITS

    20/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    Types of Service

    • TCP vs. UDP – Elastic apps that need reliability: remote login, email, filetransfer

    – Inelastic, loss-tolerant apps: real-time voice or video – Others in between, or with stronger requirements – Biggest cause of delay variation: reliable delivery

    • Today’s net: ~100ms RTT • Reliable delivery can add seconds .

    • Original Internet model: “TCP/IP” one layer – First app was remote login… – But then came debugging, voice, etc. – These differences caused the layer split, added UDP

    20Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    21/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    4. Distributed Management

    • Different agencies are involved in managinggateways and networks

    • Each organization running its own routingalgorithms

    • Lack of tools availability for distributedapplications, especially in the area of routing

    • Requirement – Tools for resource management in the context of

    multiple administration

    Advanced Computer Networks CS ZG52521

  • 8/19/2019 Networks Basics of BITS

    22/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    5. Host attachment cost forInternet

    • Costlier Stuff. Why? – All important functions are implemented at host – Benefit

    • Host engineering is easy compare to network engineering!

    – Harm

    • Bad implementation can hurt network as well as host!• Host misbehave becomes a bigger problem as Internet is

    growing

    Advanced Computer Networks CS ZG52522

  • 8/19/2019 Networks Basics of BITS

    23/38BITS Pilani, Pilani CampusFirst Sem 2015-16

    6. Is Internet Architecture iscost effective?

    • Overhead of packet headers (40 Bytes) – More significant for small size packets – Worst case: single character remote login packet

    • Retransmission of lost packets – Retransmitted packets cross the net twice – No mechanism to recover lost packets from network!

    • Inference – Reliability enhancement to be added to the network

    for loss sensitive applications

    Advanced Computer Networks CS ZG52523

  • 8/19/2019 Networks Basics of BITS

    24/38

    BITS Pilani, Pilani CampusFirst Sem 2015-1624

    Summary: Minimalist Approach

    • Dumb network – IP provide minimal functionalities to support connectivity

    • Addressing, forwarding, routing

    • Smart end system – Transport layer or application performs more sophisticated

    functionalities• Flow control, error control, congestion control

    • Advantages

    – Accommodate heterogeneous technologies (Ethernet,modem, satellite, wireless) – Support diverse applications (telnet, ftp, Web, X windows) – Decentralized network administration

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    25/38

    BITS Pilani, Pilani CampusFirst Sem 2015-1625

    IP Design Weaknesses-[1]

    • Greedy sources aren’t handled well

    • Weak accounting and pricing tools

    • Weak administration and management tools

    • Incremental deployment difficult at times – Result of no centralized control – No more “flag” days

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    26/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    IP Design Weaknesses-[2]

    • “

    Datagram”

    good for most important goals, butpoor for the rest of the goals.

    • Processing packets in isolation

    • Resource management, accountability all hard

    • Solution: – Anticipates flows and

    soft-state”

    for the future.

    – Are active networks the solution?

    Advanced Computer Networks CS ZG52526

  • 8/19/2019 Networks Basics of BITS

    27/38

    BITS Pilani, Pilani CampusFirst Sem 2015-1627

    Next …

    • Network functionalities – Reliable/sequenced delivery? – Addressing/routing?

    – Security? – Ethernet collision detection? – Multicast? – Real-time guarantees?

    • Question – What should be done at the end points, and what

    by the network?

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    28/38

    BITS Pilani, Pilani CampusFirst Sem 2015-1628

    End-to-End Argument

    • Deals with where to place functionality ( e.g. Errorrecovery, security using encryption, duplicatemessage suppression, recovery from system crashes,and delivery acknowledgement )

    – Inside the network (in switching elements) – At the edges (i.e. hosts)

    • Argument – There are functions that can only be correctly

    implemented by the endpoints – do not try to completelyimplement these elsewhere

    – It is a guideline not a law!

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    29/38

    BITS Pilani, Pilani CampusFirst Sem 2015-1629

    Example: Reliable File Transfer

    • At Host A the File Transfer program (FT) calls upon the File System to readthe file

    • Then, FT program asks the Data Communication system to transmit the file

    • Data Communication network moves the packets from A to B• At Host B, Data Communication program hands over the data to second

    part of the File Transfer program• At Host B, the FTprogram asks the File System to write the received data

    on the Disk

    OS

    Appl.

    OS

    Appl.

    Host A Host B

    OK

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    30/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    Threats Involved in File Transfer

    • File read may contain incorrect data due to hardwarefaults in the disk storage system

    • The File System, FT program, DC system might make

    a mistake in buffering and copying the data of thefile, either at A or B

    • The processor or its memory might have transienterror while doing buffering and copying

    • The communication system might drop/flip some bitsin a packet or drop a packet

    • Either of the host may crash

    Advanced Computer Networks CS ZG52530

  • 8/19/2019 Networks Basics of BITS

    31/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    How to cope with Threats…

    • Solution 1: make each step reliable, and thenconcatenate them – Duplicate copies, timeout retry, error detection,

    crash recovery

    • Solution 2: end-to-end check and retry – The FT program at host B reads the transferred file

    data from the disk and calculates the checksum,and sends this value back to the host A tocompare it with original value

    Advanced Computer Networks CS ZG52531

  • 8/19/2019 Networks Basics of BITS

    32/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    E2E Example: File Transfer

    • Even if network guaranteed reliable delivery – Need to provide end-to-end checks – e.g., network card may malfunction, transient errors at a

    gateway while copying data from input to an output buffer – The receiver has to do the check anyway!

    • Full functionality can only be entirely implemented atapplication layer; no need for reliability from lowerlayers

    • Does FTP look like E2E file transfer? – TCP provides reliability between kernels not between disks

    32Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    33/38

    BITS Pilani, Pilani CampusFirst Sem 2015-1633

    Discussion

    • Is there any need to implement reliability at lowerlayers? – Yes, but only to improve performance

    • If network is highly unreliable – Adding some level of reliability helps performance , notcorrectness

    – Don’t try to achieve perfect reliability!

    • Implementing a functionality at a lower level shouldhave minimum performance impact on theapplications that do not use the functionality

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    34/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    Other e2e Examples

    • Secure Transmission of Data• Duplicate Message Suppression

    •Delivery Guarantees

    • Guaranteeing FIFO Message Delivery• Transaction Management

    Advanced Computer Networks CS ZG52534

  • 8/19/2019 Networks Basics of BITS

    35/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    Secure Transmission of Data

    • If data transmission system performs encryption anddecryption, it must be trusted to manage securelythe keys used

    • Data passed into the node is in clear form hence itbecomes vulnerable

    • The authenticity of data must still be checked by theapplication

    Advanced Computer Networks CS ZG52535

  • 8/19/2019 Networks Basics of BITS

    36/38

    BITS Pilani, Pilani CampusFirst Sem 2015-16

    Duplicate Message Suppression

    • A duplicate message may be delivered due to - – Time out triggered failure detection and retry mechanisms

    • What is expected from the network? – Either it should detect and suppress such duplicate messages

    or deliver them as it is for the application to handle it.

    • What is the correct approach? – Should network does this or application does this?

    – Think about the duplicate messages originate by theapplication itself!!!

    – e.g. A remote system user may initiates a new login to a timesharing system

    Advanced Computer Networks CS ZG52536

  • 8/19/2019 Networks Basics of BITS

    37/38

    BITS Pilani, Pilani CampusFirst Sem 2015-1637

    Argue on the Following…

    • What should be done at the end points, andwhat by the network? – Reliable/sequenced delivery? – Addressing/routing? – Security? – What about Ethernet collision detection?

    – Multicast? – Real-time guarantees?

    Advanced Computer Networks CS ZG525

  • 8/19/2019 Networks Basics of BITS

    38/38

    Thank You!

    38