Docstoc

p-Jigsaw-Talk-0412-2002

Document Sample
p-Jigsaw-Talk-0412-2002 Powered By Docstoc
					            p-Jigsaw:
   A Cluster-based Web Server
      with Cooperative Caching Supports

       Ge Chen, Cho-Li Wang, Francis C.M. Lau
              (Presented by Cho-Li Wang)
             The Systems Research Group
Department of Computer Science and Information Systems
              The University of Hong Kong
What’s a cluster ?
 A cluster is a type of
  parallel or distributed
  processing system, which
  consists of a collection of
  interconnected stand-
  alone/complete computers
  cooperatively working
  together as a single,
  integrated computing
  resource – IEEE TFCC.
                                2
Rich Man’s Cluster
 Computational Plant (C-Plant
  cluster)
 Rank: 30 at TOP500 (11/2001)
 1536 Compaq DS10L 1U servers
  (466 MHz Alpha 21264 (EV6)
  microprocessor, 256 MB ECC
  SDRAM)
 Each node contains a 64-bit, 33   48 cabinets, each of which
  MHz Myrinet network interface         contains 32 nodes

  card (1.28 Gbps/s) connected to         (48x32=1536)

  a 64-port Mesh64 switch.

                                                         3
Poor Man’s Cluster
   HKU Linux Cluster
   32 733 MHz Pentium III PCs,
    392MB Memory
   Hierarchical Ethernet-based
    network : four 24-port Fast
    Ethernet switches + one 8-port
    Gigabit Ethernet backbone
    switch)
   Additional 80-port Cisco
    Catalyst 2980G Fast Ethernet
    Switch


                                     4
Cluster Computer Architecture

   Programming                            Other Subsystems
                       Web Windows
    Environment                         (Database, Web server
                       User Interface
 (Java, C, MPI, HPF)                          OLTP, etc.)

         Single System Image Infrastructure
               Availability Infrastructure
   OS           OS       OS                            OS
  Node        Node      Node                          Node



  High-Speed LAN (Fast/Gigabit Ethernet, SCI, Myrinet)

                                                                6
Talk Outline
 Motivation -- The Need for Speed
 Cluster-based Solutions
 System Architecture of p-Jigsaw
 Performance Evaluation
 Conclusion and Future Work
 Other SRG Projects




                                     7
The Challenges
 Netscape Web site in November 1996: 120 million hits
  per day
 Microsoft Corp. Web site received more than 100 M
  hits per day. (1,200 hits per second)
 Olympic Winter Games 1998 (Japan): 634.7M (16 days),
  peak day 57M, peak minute 110K
 Winbledon July 1999, 942 M hits (14 days), peak day
  125M, peak minute 430K
 Olympic Games 2000 : peak day 502.6 M, peak minute
  600K hits. (10K hits per second)


                                                   8
The Need for Speed
   Internet user popularity is growing very fast
      According to United States Internet Council’s report, regular
      Internet user has increased from less then 9M in 1993 to more
      than 300M in the summer of 2000, and is still growing fast
   Broadband becomes popular
      According IDG’s report, 57% of the workers in U.S access
      Internet via broadband in office. The figure will be more than
      90% by 2005. Home broadband user will also increase from less
      than 9M now to over 55M by 2005
   HTTP requests account for larger portion of Internet
    traffic now
      One study shows that HTTP activity has grown to account for
      75%~80% of all Internet traffic
                                                                    9
The Need for Speed
 The Need for Speed
    Growing user number
    Faster last-mile connection speed
    Increasing portion of HTTP requests accounts for all
    Internet traffic
 Require a more powerful Web server architecture




                                                           11
Cluster-Based Solution
    Cluster -- A Low-cost yet
   efficient parallel computing
           architecture
    Dispatcher-based
A network component of the Web-server system acts as a dispatcher
which routes the requests to one of the Web servers to fulfill the load
balancing. Each Web server works individually.

   Layer 4 switching with level 2
    address translation :
                                                                       client
   One-IP, IBM eNetwork, WebMux,
     LVS in DR mode
 Layer 4 switching with level 3
                                                    Internet
  address translation : Cisco
  LocalDirector, Alteon ACEDirector,
  F5 Big/IP, LVS in NAT mode.
 Layer 7 switching (Content-                     Dispatcher
  based): LARD, IBM Web
  Accelerator, Zeus Load Balancer
  (ZLB)


                                                                  15
p-Jigsaw -- Goals
   High Efficiency:
      Explore aggregate power of cluster resources (CPU, memory,
      disk, network bandwidth).
      Explore in-memory Web caching on cluster-based Web servers
   High Scalability
      Maintain high cache hit rate and high throughput as cluster size
      grows
      Eliminate potential bottleneck in the overall design
   High Portability
      Multi-platform support
      Heterogeneous cluster


                                                                   17
Main Features of p-Jigsaw Web servers
 Global Object Space (GOS)
 Hot Objects Caching
 Cooperative Object Caching
 Distributed Cache Replacement Algorithms




                                             18
               Global Object Space
 (All Web objects in system are visible and accessible to every
                      node through GOS)
                      Global Object Space


                                                             Hot Object Cache




Memory Cache         Memory Cache       Memory Cache             Memory Cache



 p-Jigsaw             p-Jigsaw              p-Jigsaw              p-Jigsaw
   JVM                  JVM                   JVM                   JVM
    OS                  OS                    OS                     OS
       Server Node            Server Node          Server Node            Server Node

                              High-Speed LAN                                      19
                                                                                                                                           HN     : Home Node
Incoming Request: http://p-Jigsaw.org/node4/dir2/pic1.jpg                                                                                  AGAC   : Approximated Global Access Counter
                                                                                                                                           CCNN   : Cache Copy Node Number
                                                                                                                                           LAC    : Local Access Counter



                                                                                        Global Object Table for Node 1
                                                                                                                                                              Redirect the request to node 4
                                          Search on GOT1 (Hashing)                        Object URL             HN         AGAC             CCNN
                                                                                                                                                              (Home node of the requested page)
                                                                                      /node4/dir2                 4
                                                         3
                                     6                                                         …                  …          …                    …
       1
                                                                                     /node1/dir12/fig121.bmp      1         11000             2-3-4


                                                 Miss!
                                                                                                                                                                                                4

                                                                                                                Global Object Table for Node 4
                    Local Object Table for Node 1                                                              Object URL                    HN         AGAC             CCNN
                Object URL               AGAC            LAC        HN
                                                                                                                  …                          …            …                …
           /node3/dir31/fig311.jpg       15000           100         3
                                                                                                       /node4/dir12/pic1.jpg                 4        15000             2-3-4
            /node1/dir12/fig121          11000           50          1

                       …                  …              …           …                                                                                              5
   2

                                Cached in node 1                              Cached copy is forwarded from node 2,3,
                                                                               or 4, depends on the server workload



       Hot Object Cache                                                                                                                                            Hot Object Cache

                                                               Hot Object Cache                                  Hot Object Cache
                    Hard disk




                                                                                                                                                                               Hard disk
                                                                         Hard disk




                                                                                                                               Hard disk


              Node 1                                                                                                                                                    Node 4
                                                                  Node 2                                              Node 3
                                                                                                                                                                                           23
Distributed Cache Replacement
   Two LFU-based Algorithms are Implemented:
      LFU-Aging: AGAC/ 2 ; every △ t
      Weighted-LFU: AGAC/ (file size)
      Global LRU (GLRU) is implemented for comparison


 Try to cache the “hottest objects” in global object space
 Cached object’s life time is set according to HTTP
  timestamp. Cache consistency is maintained by
  invalidation scheme.


                                                          24
      Update of Access Counters
                      GOT for Node 1                                               GOT for Node 3
       Object URL/Partial URL         AGAC         HN                    Object URL                = 245
                                                                                            45+200 AGAC    HN
        /node3/dir31/doc3.html                     3                /node3/dir31/doc3.html         50      3
                                                                                                   245
             /node4/dir41                          4                /node3/dir32/pic3.jpg          200     3
        /node1/dir11/doc1.html        105          1                         …                     …       …
                 …                     …           …

                   LOT for Node 1
        Object URL           LAC            AGAC        HN
   /node3/dir32/pic3.jpg         45
                                 0          200
                                           245          3          HOC            HOC              HOC          HOC
   /node1/dir11/doc1.html        24          105        1
                                                             GOS
            …                    …           …



LAC is periodically sent back to objects’                           1                 2              3               4
HN to maintain an approximate global
access counter for every cached object
                                                                                                                25
Experiment Setup
   32-node PC cluster. Each node
    consists of a 733MHz Pentium III PC
    running Linux 2.2.4.
   The nodes are connected with an
    80-port Cisco Catalyst 2980G Fast
    Ethernet Switch.
   A NFS server (2-way SMP) with
    Gigabit Ethernet link to the switch.
   16 nodes acts as clients, and the
    rest as Web servers.
   Each of the server nodes has
    392MB physical memory installed
                                           32-node PC cluster


                                                           27
Experiment Results
                      Effects of Scaling the Cluster Size

                                 Requests Throught ( With 64MB HOC at each node)


                    600
  Requests/Second




                    500                                                                  4.56
                    400
                    300
                    200
                    100
                     0                                                           2.02
                              2 Nodes            4 Nodes     8 Nodes         16 Nodes
                          Weighted-LFU with CC                 LFU-Aging with CC
                          GLRU with CC                         Weighted-LFU without CC
                          LFU-Aging without CC                 Without GOS Support



                                                                                                28
 Experiment Results
            Effects of Scaling the Cache Size
                        Requests Throughput (16 nodes)
                                                         Weighted-LFU
                                                         with CC
      600
      500                                                LFU-Aging
                                                         with CC
      400
      300                                                GLRU with CC
      200
      100                                                Weighted-LFU
                                                         without CC
        0
             1.8%      3.6%         7.2%        14.4%    LFU-Aging
                                                         without CC
                       Relative Cache Size

Aggregated Cache size for 16 nodes = 1.8% (8 MB per node), 3.6%, 7.2%, and
            14.4% (64 MB per node) of the size of the data set
                                                                        29
Analysis of Requests Handle Patterns
   Local Cache Object (in local memory)
      The server that receives the request has the requested object in
      its local hot object cache.
   Peer Node Cache Object (in remote memory)
      The server that receives the request does not have the
      requested object in its local hot object cache. The object is
      fetched from either the home node or a or other peer nodes.
   Disk Object (local or remote disk)
      The requested object is not in the global object space, and has
      to be fetched from the file server. This has the longest serving
      time.


                                                                      31
    Analysis of Requests Handle Patterns
                                Weighted-LFU with CC
                            (64MB HOC Size at Each Node)


                1

              0.8
                                                                       ~60%
              0.6

              0.4

              0.2

                0
                        4 Nodes           8 Nodes           16 Nodes

                Local Cache Object      Peer Node Object       Disk Object


LFU-based algorithms show high local cache hit rates. With 64 MB cache per node, the local
          cache hit rate is around 60% for both Weighted-LFU and LFU-Aging,
                                                                                   32
   Analysis of Requests Handle Patterns
                               Weighted-LFU with CC
                            (8MB HOC Size at Each Node)


               1

             0.8

             0.6          ~50%
                                                          ~35.2%
             0.4

             0.2       ~6.7%                                         ~25%
               0
                       4 Nodes          8 Nodes           16 Nodes
              Local Cache Object     Peer Node Object     Disk Object

With small cache size (8MB), the cooperative cache can improve the global cache hit
rate and reduce the costly file server disk access, which is a common bottleneck for a
                                        website.                             33
Conclusions
 Use of cluster wide physical memory as object
  cache can lead to improved performance and
  scalability of Web server systems
 With relatively small amount of memory dedicated
  for object content caching, we are able to achieve a
  high hit rate with the cooperative caching
 Favor replicating more hot objects rather than
  squeezing more different objects into the global
  object space.


                                                   36
    Future Work

   The HKU “Hub2World” Project
      Build a giant proxy cache server on
      a large PC cluster with HKU’s 300-
      node Gideon cluster based on p-
      Jigsaw
      Cache hot objects on 150 GB in-
      memory cache (0.5GB x 300) + 12
      Terabytes disk space (40GB x 300)
      Design of new caching algorithms



                                            37
Other SRG Projects
     Welcome to download our software
   packages and test them on your clusters.
       URL: http://www.srg.csis.hku.hk/
Current SRG Clusters




                       39
JESSICA2 – A Distributed JVM
                    A Multithreaded
                    Java Program




                Thread Migration




   JVM   JVM      JVM      JVM        JVM   JVM



               Global Object Space

                                                  40
JUMP Software DSM
   Allows programmers to assume a globally shared virtual
    memory, even they execute program on nodes that do not
    physically share memory
   The DSM system will maintain the memory consistency among
    different machines. Data faulting, location, and movement are
    handled by the DSM.

          Proc 1    Proc 2              Proc N-1    Proc N



          Mem 1     Mem 2               Mem N-1     Mem N


                              Network


                   Globally Shared Virtual Memory
                                                              41
                HKU DP-II on Gigabit Ethernet
        Single-trip Latency Test                                                                 Bandwidth Test
              (Min: 16.3 µs)                                                                     (Max: 79.5 MB/s)
                         DP-II, back to back on Gigabit Ethernet                                       DP-II               TCP/IP
                         DP-II, through switch on Gigabit Ethernet




                                                                     Bandw idth (MB/s)
                                                                                  80
                         TCP/IP Latency
                                                                                  60
Latency (us)




               200
                                                                                  40
               150
               100                                                                20
                50                                                                       0
                 0                                                                           1       480             992                 1504
                     4     256    512   768 1024 1280 1500                                          Me ssage siz e (Byte )
                               M essage (Bytes)


         RWCP GigaE PM : 48.3 us round-trip latency and 56.7 MB/s on Essential Gigabit
         Ethernet NIC Pentium II 400 MHz.

         RWCP GigaE PM II : 44.6 us round trip time. 98.2 MB/s bandwidth on Packet
         Engines G-NIC II for connecting Compaq XP-1000 (Alpha 21264 at 500 MHz.),.
                                                                                                                                    42
SPARKLE Project
   A Dynamic Software Architecture for Pervasive
    Computing – “Computing in Small”

                              Facets
     Application


                     Won’t Fit




Applications distributed as            Our component-based solution
    monolithic blocks
                                                             43
SPARKLE Project
                                                     Service
                                                    Providers


                                                  Facet
                                                 Servers
 Intelligent              Facet Retrieval
   proxies                                            Execution
                                                       Servers

  Co-operative
    Caching
 (User Mobility)   Facet Query
                                                     Computational
                                      Delegation/        Grid
                                      Mobiie code
                                              Clients (Linux + JVM)
                   Peer-to-Peer Interaction
         Overview of the proposed software architecture               44
ClusterProbe : Cluster Monitoring Tool




                                    45
Q&A
      For more information, please visit
       http://www.csis.hku.hk/~clwang

				
DOCUMENT INFO