Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Design of Cooperative Load Distribution for Addressing Flash Crowds Using P2P File Sharing Network

Design of Cooperative Load Distribution for Addressing Flash Crowds Using P2P File Sharing Network

Design of Cooperative Load Distribution
for Addressing Flash Crowds
Using P2P File Sharing Network

MATSUMOTO Ryosuke

July 23, 2013
Tweet

More Decks by MATSUMOTO Ryosuke

Other Decks in Technology

Transcript

  1. Design of Cooperative Load Distribution
    for Addressing Flash Crowds
    Using P2P File Sharing Network
    Network Media Group
    Department of Intelligence Science and Technology
    Graduate School of Informatics, Kyoto University
    Hiroki OKAMOTO, Ryosuke MATSUMOTO, Yasuo OKABE
    1

    View full-size slide

  2. Flash Crowd
    Website A
    Server
    Features • The duration is relatively short
    • The traffic will be 10 to 100 times bigger than normal
    • It will be occurred by links from popular website, TV, etc
    Website A is
    Good !!
    Website A is
    introduced by
    a TV show
    Concentration of
    accesses on
    Website A Website A is
    Temporarily unavailable
    2
    A problem that a website will be temporarily unavailable
    by suddenly high loads
    1
    2
    3

    View full-size slide

  3. Estimates loads and prepare
    appropriate infrastructures
    Problems of Conventional Method
    3
    Additional administrative
    and operational effort
    Costs for new
    Infrastructures
    Possibility to waste resources
    Additional
    Infrastructure
    Additional
    Infrastructure


    In conventional methods…
    Non-for-profit organizations and persons
    cannot address flash crowds
    For addressing flash crowd,
    we need to prepare appropriate infrastructures flexibly

    View full-size slide

  4. A solution using cooperation
    4
    Help!
    When a server suffers flash crowd
    Other servers has idle resources
    Website A
    Server
    ♪ ♪
    • To address flash crowds as a small website…
    Website B
    Server
    Website C
    Server
    Servers have other’s data
    each other
    • Problem
    2 servers 5 servers
    The numbers of servers increases
    The number of replicas will be huge
    We need to increase the number of replicas
    according to demands
    Cooperate with other web servers

    View full-size slide

  5. Peer to Peer (P2P)
    • Peer to Peer
    o One of the architecture of communication between some computers
    o A client has a role of both server and client
    o High scalability and fault tolerance
    • P2P File Sharing Network
    o Exchange files between peers without servers using P2P
    5
    Client-Server
    Peer to Peer
    • Download from a Server
    • Loads concentrate on the server
    • Download from peers
    • Increase replicas according to demands
    • Distribute loads to many peers

    View full-size slide

  6. Proposed Method
    • Cooperative load distribution for addressing flash crowds
    6
    Web servers automatically
    lend idle resources
    each other
    Load distribution and
    Data dissemination to Clients
    using
    P2P File Sharing Network
    P2P Usable
    Client
    P2P Unusable
    Client
    P2P File Sharing
    Network
    Web Server
    P2P Usable Client
    P2P Unusable Client

    View full-size slide

  7. Related Works
    1. Load distribution to clients by proxy servers [Yokota et al. 2011]
    o Place a reverse proxy in front of web servers
    o Detect flash crowds by reverse proxies and route requests to a client
    2. Load distribution to proxy network [C.Pan et al. 2006]
    o Load Distribution to an overlay network that constructed by proxy servers
    o The overlay network will be constructed dynamically when a flash crowd occurs
    o Web server handles ordering and controlling to construct the overlay network
    7
    Web server
    Proxy server
    Flash crowd
    Client that has
    replicas
    Overlay network
    constructed by
    proxy servers
    Web Server
    Flash crowd

    View full-size slide

  8. Conceptual Diagram of Proposed Method
    8
    P2P Usable
    Client
    P2P Unusable
    Client
    P2P File Sharing
    Network
    P2P Usable Clients
    P2P Unusable Clients
    ① P2P Usable Client and P2P Unusable Client
    ② Web servers call for help from other servers
    when flash crowd occurs
    ③ The other server downloads the data from P2P
    ④ The other server provide the data instead of original server
    Help!
    1
    2
    3
    4
    OK!
    1
    Other
    Web Server
    Original
    Web Server

    View full-size slide

  9. Details of Proposed Method
    9
    • Cooperation with other servers
    Redirect requests to cooperative servers when flash crowd occurs
    P2P File Sharing
    Network
    P2P Usable Clients
    P2P Unusable Clients
    Help!
    Cooperative
    Server
    Original Server
    HTTP Redirect
    Download from P2P
    Provide the data instead of
    original server
    Cooperative
    Server

    View full-size slide

  10. Details of Proposed Method
    10
    By web servers joining to P2P file sharing network...
    The number of replicas increases automatically
    according to demands
    Original Server
    P2P Usable Clients
    • Join to P2P File Sharing Network
    Accesses via
    P2P Network
    Accesses via
    P2P Network
    Spreading replicas to
    some clients
    Cooperative
    Server
    Cooperative
    Server

    View full-size slide

  11. Details of Proposed Method
    11
    P2P File Sharing
    Network
    P2P Unusable Client
    P2P Usable Client
    Help!
    Original Server
    Download via
    P2P File Sharing Network
    Flash crowd
    Need not to download from
    a crowded server
    If all servers downed
    clients can download
    from other clients
    • Join to P2P File Sharing Network
    1
    2
    2
    3
    Cooperative
    Server
    Cooperative
    Server

    View full-size slide

  12. Features of Proposed Method
    • Cooperation with other servers
    o Create cooperative relationship with other servers
    o Cooperative relationship is a relationship to give each other help
    o Cooperative server must be a reputable server
    • P2P File Sharing Network
    o Publish websites to P2P file sharing network
    Exchange data with other servers via P2P file sharing network
    o We use BitTorrent because the overhead by joining a P2P network is low
    o We can use other P2P file sharing network as same role
    12
    Your Server Other Server

    View full-size slide

  13. Design of Proposed System
    - Overall structure -
    • Components of our system
    ① Original Server
    ② Cooperative Server
    ③ DNS
    13
    Cooperative
    Server
    P2P Unusable Clients
    ④ Clients
    ⑤ BitTorrent Tracker
    Original Server
    DNS
    BitTorrent
    Tracker
    P2P Usable Clients
    Administrate
    BitTorrent Network
    1
    2
    3
    5
    4 4
    Name resolving and
    DNS round robin
    Cooperative
    Server
    2

    View full-size slide

  14. • Detecting flash crowds
    o Properties inside
    Web servers
    o Server state
    o Mutual periodically health checking
    • State transition of web server
    o Idle state
    o Flash crowd state
    o Rescue state
    • Distribution of requests
    o HTTP Redirect
    o DNS Round Robin
    14
    • The number of clients
    • The number of processes and threads
    • The number of connections in backlog
    • CPU utilization
    • Memory usage
    Web servers automatically
    lend idle resources
    each other
    Design of Proposed System
    - Cooperation -

    View full-size slide

  15. • Example of guiding to Bittorrent
    15
    Original
    Server
    Cooperative
    Server
    P2P usable client that
    has the data
    P2P usable Client
    HTTP Request
    HTTP Redirect
    HTTP Request
    Return .torent file (HTTP response)
    BitTorrent Download
    BitTorrent Upload
    Help!
    Design of Proposed System
    - P2P Usable Client-

    View full-size slide

  16. • Example of guiding to Bittorrent
    16
    Original
    Server
    Cooperative
    Server
    P2P usable client that
    has the data
    P2P Unusable
    Client
    HTTP Request
    HTTP Redirect
    HTTP Request
    Return contens data (HTTP response)
    BitTorrent Download
    BitTorrent Upload
    Help!
    Design of Proposed System
    - P2P Unusable Client-

    View full-size slide

  17. • An example how our system works
    17
    Flash crowd state + Access via HTTP + Original Server is not down
    Original
    Server
    Server C
    Server A Server B Server D Sever E
    Cooperative Server
    DNS



    www IN A Server C
    Zone file
    Cooperative Server
    BitTorrent
    Tracker
    Server C
    Client B
    Peer List
    P2P Unusable Client
    that
    came to the new
    2. HTTP
    3.
    Redirect
    7. Add record
    6. Send data
    P2P Usable Client that
    has the data
    5. Download the data
    4. Acquire Peer List
    1. Name resolving
    Design of Proposed System
    - P2P Unusable Client -

    View full-size slide

  18. Summary
    • Summary
    o Considered problems of conventional methods as a method for addressing flash
    crowds
    o Proposed a load distribution method for addressing flash crowd by cooperation
    with other servers and P2P file sharing network
    o Designed a system using proposed method
    • Future work
    o Implement the system and evaluate the performance
    o Consider how to handle contents using server side programs
    o Consider how to delete contents that is disseminated on some clients by P2P
    file sharing network
    If you have a detailed question,
    Please send mail to first author, Hiroki OKAMOTO
    [email protected]
    18

    View full-size slide