Docstoc

Performance Analysis of Communication Networks _Computer Network

Document Sample
Performance Analysis of Communication Networks _Computer Network Powered By Docstoc
					    Performance Analysis of
   Communication Networks
(Computer Network Performance)
                 Thilo Kielmann
                     Fall 2010
          Vrije Universiteit, Amsterdam
                kielmann@cs.vu.nl

  (using some diagrams by Chase Cotton, U Delaware)

     http://obp.math.vu.nl/edu/perfeval/
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   1



                       Performance Analysis of
                      Communication Networks


• Mathematical modeling allows deep insights into the
  behavior of communication networks.

• A model is an abstraction of reality, a reduction of
  detail for the benefit of global insight.

• A model needs some input data from “the real world”;
  where do we get this from?
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   2



                                Outline for Today


• Impact factors for computer network performance

• The LogP performance model

• Performance characteristics

• Next lecture: measuring performance characteristics
  – getting data “food” for the models
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   3



                        Basic Network Elements


◦ Nodes: PCs, special hardware
  (Server, Switches, Router, . . . )
◦ Connections: twisted-pair, optical fiber, wireless links

 point-to-point                     (a)




                                    (b)                                          …
 multiple access
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   4



                               Switched Networks
◦ Switches connect multiple links
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   5



                                   Internetworking
◦ Boundary blurs between sub networks
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   6




                    http://www.caida.org/research/topology/as core network/
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   7
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   8
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   9
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   10



                                           Network:

◦ two or more nodes connected by a link, or
◦ two or more networks, connected by one or more nodes
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann        11



                               Network Switching


                  L1                                                                   R1


                  L2                                                                   R2

                               Switch 1                          Switch 2
                  L3                                                                   R3


◦ Several nodes are connected via switches/routers.
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   12



                                 Circuit Switching




◦ Good old telephone system
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   13



                                 Packet Switching




◦ Computer networks transmit individual packets.
◦ Telephone network has become packet-switched, too.
Performance Analysis of Communication Networks, ((51))      c 2002–2010, Thilo Kielmann   14



             Application View of the Network
                                            Host                         Host

                                                                         Application




                             Host
                                                         Channel
                              Application




                                            Host                         Host




◦ Pairs of processes communicate via streams/channels.
◦ This is the model provided by the TCP protocol.
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   15



                          Statistical Multiplexing
◦ Translates streams to packets:



                                                                   …




◦ Packet switching, “first come first served”
◦ Optimizes network utilization
◦ No guarantees: “best-effort delivery”
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann             16



                    Network Performance 1 × 1

◦ Bandwidth: Data transmission rate
                                                              1Mbps
                                                              (each bit 1 microseconds wide)
                        1 second



                                                              2 Mbps
                                                              (each bit 0.5 microseconds wide)
                        1 second


◦ Throughput: actually achieved bandwidth
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   17



              BTW: How much is a “Mega”?


◦               ˆ           ˆ
    Memory: ‘B’ = Byte, ‘b’ = Bit
◦   Bandwidth gets computed in Hz
◦   1Mbps = 106bps
◦   1Kbps = 103bps
◦   Memory gets computed in KB, MB, GB . . .
◦   1MB = 220B = 1048576B
◦   1KB = 210B = 1024B
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann              18



       Delay, one-way and round-trip (RTT)
                   1. bit
                                            last bit
                                                                                              B

                                                                                       time


                                                                                              A

                    transmit time                             roundtrip time
                                         latency            (empty message)

                            delay


◦ latency = signal propagation + queueing
◦ signal propagation = distance / speed of light
◦ transmit time = message size / bandwidth
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   19



           Bandwidth-bound vs. Delay-bound
Performance Analysis of Communication Networks, ((51))     c 2002–2010, Thilo Kielmann          20



                      Bandwidth-Delay Product
            bandwidth



                                                         delay




                                                                                         low
              bandwidth
                                                                                         high



◦ memory capacity of a link
◦ makes connections inert
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   21



    What determines network performance?


• The network itself (lines, switches, routers)

• The amount of computation taken by the end
  computer(s)
       time spent in sending and receiving data
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   22



         Protocol Stacks: Abstraction Layers


                               Application programs

                         Process-to-process channels

                           Host-to-host connectivity

                                            Hardware
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann            23



             Interfaces: Protocols vs. Services
                             Host 1                                                    Host 2



                                                   Service
                  High-level                                                High-level
                                                  interface
                    object                                                    object




                    Protocol                                                 Protocol
                                                Peer-to-peer
                                                 interface


             Protocols: horizontal                             Services: vertical
Performance Analysis of Communication Networks, ((51))                  c 2002–2010, Thilo Kielmann                24



        The OSI Reference Model (7 Layers)
                        Layer                                                                       Name of unit
                                                                                                     exchanged
                                                     Application protocol
                          7      Application                                            Application     APDU

                        Interface
                                                    Presentation protocol
                          6     Presentation                                           Presentation     PPDU

                        Interface
                                                         Session protocol
                          5         Session                                             Session         SPDU



                                                      Transport protocol
                          4      Transport                                              Transport       TPDU
                                               Communication subnet boundary
                                                           Internal subnet protocol

                          3      Network       Network                 Network          Network         Packet



                          2      Data link     Data link               Data link        Data link       Frame



                          1      Physical      Physical                Physical         Physical        Bit
                                    Host A      Router                  Router           Host B

                                                Network layer host-router protocol
                                                Data link layer host-router protocol
                                                Physical layer host-router protocol
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   25



                                             Framing




◦ Creating units of transmission (“frames”, “packets”)
◦ Generation of checksums (for error detection)
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   26



                                 Framing Example



  HDLC:

◦ Every network has (its own) maximum frame size
◦ Framing thus is required by all digital networks
Performance Analysis of Communication Networks, ((51))    c 2002–2010, Thilo Kielmann   27



                          Effects of Frame Sizes
    Time Message as Message as Message as Message as
          1 packet   2 packets  5 packets 10 packets
          H          H          H          H
                     D
                                D
                                 1
                                            1
                                           H H
                                                              ◦ Ratio of header vs.
     ?
                      1         H H         2 1
                                D D        H H H
          D          H H
                                 2 1
                                H H H
                                            3 2 1
                                           H H H
                                                              data sent
                                D D D       4 3 2
                     D D
                      2 1
                                 3 2 1
                                H H H
                                D D D
                                           H H H
                                            5 4 3
                                           H H H
                                                              ◦ Smoothness of data
             H                   4 3 2      6 5 4
                         H H    H H H
                                D D D
                                 5 4 3
                                           H H H
                                            7 6 5
                                           H H H
                                                              “flow”
                         D D        H H     8 7 6
             D
                         2 1
                            H
                                    D D
                                    5 4
                                       H
                                           H H H
                                            9 8 7
                                           H H H
                                                              ◦ Ethernet: 1536 bytes
                                       D   10 9 8
                            D
                            2
                                       5       H H
                                              10 9            ◦ Jumbo frames: 9 KB
                H              S R1 R2 R          H

                    S R1 R 2 R
                                                 10
                                          S R 1 R2 R
                                                              ◦ ATM: 53 bytes
                 D        S: Sender   R1 , R2 : Routers
                          R: Receiver
                          H: Header   D: Data
          S R 1 R2 R
Performance Analysis of Communication Networks, ((51))         c 2002–2010, Thilo Kielmann                 28



          Network Software: Protocol Stacks
             Layer
                                                       Layer 5 protocol
              5                      M                                               M


                                                       Layer 4 protocol
              4                 H4       M                                      H4       M

                                                          Layer 3
                                                          protocol
              3      H3 H4 M1                H3 M2                        H3 H4 M1             H3 M2

                                                          Layer 2
                                                          protocol
              2 H2 H3 H4 M1 T2           H2 H3 M2 T2                 H2 H3 H4 M1 T2          H2 H3 M2 T2



              1




                            Source machine                                    Destination machine
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann    29



                             The TCP/IP Model

                                                                             HTTP FTP




                                                                             TCP UDP

                                                                              IP ICMP
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann            30



                 The TCP/IP Protocol Family
                     (Hourglass Model)
         FTP            HTTP               DNS           TFTP                           HTTP
                                                                                       FTP
                                                                                         DNS
                         TCP               UDP
                                                                                         IP
                                   IP
                                                                                       NET1
                                                                                         NET2
             NET1               NET2                NETn                                NETn
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   31



              Implementing Network Software

◦ TCP/IP Socket Interface (API):
  − connect, connection establishment, active (Client)
  − accept, connection establishment, passive (Server)
  − send, transmit
  − recv, receive
  − close, connection close-down
◦ process oriented (on program execution)
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   32



   Processes Implementing Protocol Stacks




  application process vs. operating system kernel/process
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   33



                                              Upcalls

                                                 TCP


               send(IP, message)                          deliver(TCP, message)


                                                   IP


Receiving:
◦ deliver instead of recv avoids process switch
◦ except on topmost level (signal to application process)
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann             34



                      Communication between CPU and
                          Network Interface (NI)
       Host I/O bus




                                                                                  Network link
                                       Bus                        Link
                                    interface                   interface


                                Adaptor
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann     35



                                 Programmed I/O


                                                                           CPU

                        Memory




                               Adaptor                                  Memory


                                                                                  Host


◦ CPU actively copies data to/from NI adaptor
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   36



                Direct Memory Access (DMA)
                 vs. Programmed I/O (PIO)


◦ using DMA, the NI copies the messages itself
◦ using PIO, the CPU copies between memory and NI
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   37



                                  Message Buffers

                                                         Application process



◦ Copying is overhead
◦ Protocol headers
                                                          send()
                                                                      deliver()




                                                          Topmost protocol
Performance Analysis of Communication Networks, ((51))         c 2002–2010, Thilo Kielmann                 38



                     Reminder: Protocol Stacks
             Layer
                                                       Layer 5 protocol
              5                      M                                               M


                                                       Layer 4 protocol
              4                 H4       M                                      H4       M

                                                          Layer 3
                                                          protocol
              3      H3 H4 M1                H3 M2                        H3 H4 M1             H3 M2

                                                          Layer 2
                                                          protocol
              2 H2 H3 H4 M1 T2           H2 H3 M2 T2                 H2 H3 H4 M1 T2          H2 H3 M2 T2



              1




                            Source machine                                    Destination machine
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann        39



                              Memory Bottleneck
                                                                                  I/O bus
                                           114 MBps
                                                                  Main
                                                                 memory
                                    560 MBps
                     CPU                                                    100 MBps
                                2000 MBps
                                                      L2
                                                     cache
                                       L1
                                                                 Crossbar
                                      cache



Every message copy up/down the protocol stack halves
the throughput!
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   40



                 DMA: Buffer Descriptor Lists
                   Help Avoiding Copies
                                                  Memory buffers
                                  100

                                1400

                                1500

                                1500
                                …




                                1500

                               Buffer
                               descriptor
                               list
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   41



    Factors Impacting Network Performance
                  (Summary)

• Physical network properties (bandwidth, delay)

• Queueing time (packets waiting) in routers

• Protocol overhead (header size / data size)
  all protocol layers add up

• Packet handling time at sending/receiving node
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   42



  Excursion: The LogP Performance Model


• Culler, Karp, Patterson, Sahay, Schauser, Santos,
  Subramonian, and von Eicken, 1993

• realistic model for communication in parallel programs

• distinguishes the time spent on the network from the
  time spent on the computers
Performance Analysis of Communication Networks, ((51))       c 2002–2010, Thilo Kielmann   43



                Parameterized LogP (P-LogP)
                   g(m)
                                                   sender



                  os(m)                              time
                               or(m)

                                                  receiver

                          L    g(m)
                              m = message size
 L latency           transit time for single bit
 os send overhead    time, sender is busy with msg
 or receive overhead time, receiver is busy with msg
 g gap               time a msg “occupies” a link
 P processors        (subscripts l and w for LAN and WAN)
Performance Analysis of Communication Networks, ((51))                           c 2002–2010, Thilo Kielmann                          44



Send Overhead and Gap on LAN and WAN
                                    MPI_Isend (LAN)                                                   MPI_Isend (VU -> UvA)
                10000
                                      gap                                          1e+06                 gap
                            send overhead                                                      send overhead
                                                                                  100000
 microseconds




                                                                  microseconds
                1000
                                                                                   10000

                 100                                                                1000

                                                                                     100
                  10
                                                                                      10
                        1     10     100    1000   10000 100000                            1     10      100    1000   10000 100000
                                   message size (bytes)                                                message size (bytes)



Observation: osw                                          gw and gl                    gw
Performance Analysis of Communication Networks, ((51))     c 2002–2010, Thilo Kielmann                 45



                     Measurement Terminology
                                                                        describes        Network
                                Characteristic
                                                                                          Entity


                                           measures

                                Measurement              is result of
                                Methodology                                          Observation


                 implements



             Tool
                                      Singleton                  Sample                  Statistical
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   46



                                       Observations
• Singleton
  Individual measurement (e.g., timing of a single packet)

• Sample
  A group of singletons together,
  annotated with timestamps and/or sampling rate

• Statistical
  A statistical property derived from a sample
  (average, median, . . . )
Performance Analysis of Communication Networks, ((51))    c 2002–2010, Thilo Kielmann          47



                                  Network Entities
                                                    Network
                                                     Entity



                                                                      endpoint
              Network Path                                                              Node
                                                                   {ordered} 2
                                      Autonomous
                                        System
                   Host−to−host
                       path
                                          Virtual
                                          Node
                                                                     Internal
                        Hop                                           Node
                                          Router

                                                                                        Host
                                          Switch


                                          Proxy
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   48



            On Which Level do you Measure?
• What is the appropriate level for measuring?
  ftp file transfer time?
  TCP bandwidth between endhosts?
  IP packets hop-by-hop?
  raw Ethernet frames?

• Each level that is of interest to you!
  Measure “the-right-thing”
  (and report what/how you did it).
  (OK, some characteristics can not be measured at all.)
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   49



               Network Paths are asymmetric!

• The paths from A to B and B to A behave differently:
       Internet routing takes different paths.
       Traffic from other users is different in both directions.
       Even if there is only a single, dedicated link, then we
       need in both endnodes
       - identical hardware
       - identical software
       to achieve symmetrical performance.
Performance Analysis of Communication Networks, ((51))     c 2002–2010, Thilo Kielmann         50



                                     Characteristics
                                                Characteristic

                                        Queue             Bandwidth
                       Discipline
                                                                 Capacity       Utilized

                        Capacity        Length
                                                                 Available     Achievable

                      MTBF            Availability
                                                            Delay            Round−trip
                    Avail. Pattern      Hoplist
                                                                 One−way           Jitter
                                     Forwarding
                     Forwarding                              Loss               Loss Pattern
                       Policy

                                                             Round−trip        One−way
                     Forwarding      Forwarding
                        Table          Weight
                                                           Packet                Reordering
                                      Closeness          Reordering               Pattern
Performance Analysis of Communication Networks, ((51))   c 2002–2010, Thilo Kielmann   51



                                           Summary


• Impact factors for computer network performance

• The LogP performance model

• Performance characteristics

• Next lecture:
       Measurement techniques and tools
       Homework assignment

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:9
posted:2/1/2012
language:English
pages:52
jianghongl jianghongl http://
About