CMPT 886 Presentation - PowerPoint PPT Presentation

1 / 53
About This Presentation
Title:

CMPT 886 Presentation

Description:

Queuing requests results in reneging. Broadcasting is not always possible ... Negligible difference between standard chaining of MFQ and FCFS queuing ... – PowerPoint PPT presentation

Number of Views:23
Avg rating:3.0/5.0
Slides: 54
Provided by: sav66
Category:

less

Transcript and Presenter's Notes

Title: CMPT 886 Presentation


1
CMPT 886 Presentation
  • From chaining to P2VoD using clients outbound
    bandwidth to distribute media
  • Savio Lau (saviol_at_cs.sfu.ca)
  • June 8, 2004

2
Outline
  • Introduction
  • Queuing policies
  • Chaining standard and extended
  • Chaining performance and issues
  • P2VoD
  • P2VoD performance and issues
  • Conclusion

3
Introduction
  • Network I/O bandwidth is VoDs main operational
    constraint
  • Queuing requests results in reneging
  • Broadcasting is not always possible
  • One solution is to use pipelining, by using
    client outgoing bandwidth to distribute media
  • Sheu, Hua and Tavanapong introduced a pipelining
    idea called Chaining in 97

4
Outline
  • Introduction
  • Queuing policies
  • Chaining standard and extended
  • Chaining performance and issues
  • P2VoD
  • P2VoD performance and issues
  • Conclusion

5
Queuing policies
  • FCFS (First Come First Serve)
  • Release video stream according to longest wait
    time
  • MQL (Maximum Queue Length First)
  • Choose first batch with largest number of clients

6
Queuing policies
  • FCFS-n
  • Reserve fraction of server capacity for n most
    popular videos
  • Other videos uses FCFS scheme
  • MFQ (Maximum Factored Queue Length First)
  • Stream released according to queue length
    weighted by best factor
  • Best factor (associated access freq)-1/2
  • MFQ is most fair amongst all schemes

7
Outline
  • Introduction
  • Queuing policies
  • Chaining standard and extended
  • Chaining performance and issues
  • P2VoD
  • P2VoD performance and issues
  • Conclusion

8
Chaining terminology
  • Video is divided into segments called R-blocks
  • Numbered 1 to n
  • v(i)i-th block of video v
  • Clients are denoted Dm and Dn, where client Dm
    and Dn are playing back v(i) and v(j)
  • Playback distance d(m,n) equals j-i, assuming jgti
  • bd is the buffer size of clients

9
Standard chaining
  • Chains are formed from the server to a client,
    then from this client to the next and so on,
    similar to a waterfall
  • A chain is closed when the first block is
    removed from buffer of the youngest child
  • New clients join an open chain if the one is
    available, where d(m,n)ltbd
  • Else new clients starts new chain, or enters
    queue if no bandwidth available

10
Standard chaining
11
Standard chaining
bd4 d(a,b)1 d(b,c)2
12
Standard chaining
bd4 d(a,b)1 d(b,c)2 d(c,d)1 d(d,e)6
13
Standard chaining
bd4 d(a,b)1 d(b,c)2 d(c,d)1 d(d,e)6 d(e,f)1
d(f,g)1
14
Extended chaining
  • Adds minimal wait time Wmin, time which each user
    has to wait
  • Additional wait time follows exponential
    distribution (not used in algorithm)
  • Uses Heuristic Extended Chaining (HEC) algorithm
    to determine when a client joins the chain
  • HEC prolongs time until chain closure
  • HEC is called for each new client arrival

15
HEC algorithm terminology
  • tnarrival time of nth client
  • Tcurrent time
  • keptnumber of clients retained
  • keptmaxmaximum number of clients retained

16
HEC algorithm
  • ttnWmin
  • if (t ? T) then return (kept0, tT)
  • kept1
  • while (kept lt n) and (kept lt keptmax)
  • t min (tn-kept Wmin, t - t(bd))
  • if (t ? T)
  • t tprev
  • return (kept, t) //end if
  • else kept kept 1
  • tprevt //end while
  • if kept n then kept kept 1
  • return (kept,t)

17
HEC algorithm
  • Case 1 ttnWmin ? T
  • All clients waited past Wmin, all released
  • Case 2 Some clients are kept
  • Up to a maximum of keptmax clients are kept
  • Increase kept until t ? T where tmin(tn-kept
    Wmin, t - t(bd))
  • New chain starts at 2nd to last steps tt(bd)

18
HEC algorithm example
Wmin4 t(bd)2
19
Extended Chaining
20
Batching, standard and extended chaining
  • Number of I-gtQ transitions relates to server
    stress
  • Extended chaining has least number of I-gtQ
    transitions

Standard chaining
Batching
Extended chaining
21
Outline
  • Introduction
  • Queuing policies
  • Chaining standard and extended
  • Chaining performance and issues
  • P2VoD
  • P2VoD performance and issues
  • Conclusion

22
Chaining performance
  • 2 Performance studies examined effects of
  • FCFS and MFQ queuing with and without standard
    chaining
  • MFQ queuing with extended chaining retaining 1 or
    2 clients
  • Standard chaining with no queuing
  • Network has 1 server and 220 clients connected
    as a 20-dimensional hypercube

23
Chaining performance
  • Negligible difference between standard chaining
    of MFQ and FCFS queuing
  • Negligible difference between Extended chaining
    retaining 1 or 2 clients
  • Extended chaining performs better than standard
    chaining
  • Chaining with queuing performs better than
    without queuing

24
Chaining performance
  • Throughput (gt means higher throughput)
  • extended chaining (MFQ)gt standard chaining (MFQ)
    gt chaining (no queuing) ? MFQ gt FCFS
  • Fairness (gt means more fair)
  • At high bandwidth extended chaining (MFQ)gt
    chaining (no queuing) or standard chaining (MFQ)
    gt FCFS
  • At low bandwidth chaining techniques is least
    fair, even worst than MFQ

25
Chaining performance
  • Latency (lt means less latency)
  • Extended chaining (MFQ) lt standard chaining (MFQ)
    lt MFQ lt FCFS
  • Skew factor
  • Chaining performance increases as the popularity
    of videos becomes more skewed

26
Effects of communication bandwidth
27
Effects of communication bandwidth
28
Effects of communication bandwidth
29
Effects of communication bandwidth
30
Effects of storage I/O bandwidth
31
Effects of storage I/O bandwidth
32
Effects of storage I/O bandwidth
33
Effects of request rate
34
Effects of request rate
35
Effects of request rate
36
Effects of client storage size
37
Effects of client storage size
38
Effects of client storage size
39
Effects of skew factor
40
Issues with Chaining
  • Not fault-tolerant
  • Clients quitting the chain cause chain to be
    broken
  • No recovery mechanism
  • Affects extended chaining more than standard
    chaining
  • P2VoD (Do, Hua and Tantaoui) addresses these
    issues 7 years later

41
Outline
  • Introduction
  • Queuing policies
  • Chaining standard and extended
  • Chaining performance and issues
  • P2VoD
  • P2VoD performance and issues
  • Conclusion

42
P2VoD
  • Similar to chaining where media stream is
    pipelined
  • Introduces the concept of Generations
  • Each client from chaining techniques becomes a
    group of clients, forming a video session
  • Clients from each generation holds the same
    oldest R-block
  • Provides joining, recovery and control

43
P2VoD terminology
  • MBmaximum cache in R-blocks for each client
  • abXactual storage buffer used by client X
  • tjXJoining time of client X
  • addXIP address of client X
  • G(X)generation client X belongs to

44
P2VoD generations
  • Clients in generation G(X)g will have the same
    oldest R-block in their cache
  • Not all clients use the full size of the cache
  • Client cache usage is determined by the time
    difference between the arrival time of client Y
    and the arrival time of client X which is the
    oldest member in a generation
  • abXabY tjYtjX
  • First generation G(X)1 has at most K members

45
P2VoD generations
46
P2VoD control protocol
  • Each client
  • Keeps IP address list of siblings
  • Sends IP address of self and siblings to child on
    connection
  • Sends IP address of self to parent
  • Sends addX, G(X), texp to server upon joining

47
P2VoD joining
  • Case 1 No open video session
  • Starts new video session if server has bandwidth
    available
  • Rejected otherwise

48
P2VoD joining
  • Case 2 at least 1 open session
  • 1. Contacts a random member of youngest
    generation GY to obtain list of GYs super
    generation GX
  • 2. If GXs texp gt tjC then 3, otherwise 4
  • 3. If possible, selects parent from GX, conform
    to cache rule of GY and receive stream
  • 4. Form new generation below GY and select parent
    from GY if possible, otherwise try other video
    session. If failed-gtcase 1

49
P2VoD joining
  • Parent selection
  • Round robin
  • Smallest delay selection
  • Smallest distance selection

50
P2VoD joining
51
P2VoD joining
52
P2VoD joining
53
P2VoD failure recovery
  • Detect failure through heartbeat
  • Recovery starts oldest orphaned client
  • 1. Orphan client contacts sibling of parents and
    if one has bandwidth available switchover to that
    parent. Failed-gt2
  • 2. Orphan client contacts server and connect
    directly to server if bandwidth exists.
    Otherwise session terminated.
  • Repeat for each orphaned client

54
P2VoD failure recovery
55
P2VoD failure recovery
56
Outline
  • Introduction
  • Queuing policies
  • Chaining standard and extended
  • Chaining performance and issues
  • P2VoD
  • P2VoD performance and issues
  • Conclusion

57
P2VoD performance
58
P2VoD performance
59
P2VoD performance
60
P2VoD issues
  • Does parent selection methods affect failure
    recovery and joining performance?
  • Only G(X)1 is limited by K
  • If bandwidth of clients are gtgt b, then tree width
    increases for each generation
  • Failure of one parent can imply many orphans
  • Each successive generation will need to contact
    larger number of parents for failure recovery

61
P2VoD issues
62
P2VoD issues
  • Possible solution bandwidth reservation for
    failure recovery
  • Allow as most J members per generation such that
    clients of any generation G(X) never exhausts all
    bandwidth
  • How would J affect rejection probability? Or
    failure overhead?

63
Outline
  • Introduction
  • Queuing policies
  • Chaining standard and extended
  • Chaining performance and issues
  • P2VoD
  • P2VoD performance and issues
  • Conclusion

64
Conclusion
  • Extended chaining with queuing uses bandwidth
    most efficiently than other batching or chaining
    techniques
  • A kept value of 1 is sufficient
  • Additional retained clients has little
    performance gain
  • Queuing method for chaining has negligible
    effects
  • Chaining methodology is prone to failure

65
Conclusion
  • P2VoD addresses chaining issues about fault
    tolerance with the use of the concept of
    generations
  • More extensive investigation is needed to examine
    the performance of P2VoD

66
References
  • S. Sheu, Kien A. Hua, and W. Tavanapong,
    "Chaining A generalized batching technique for
    video-on- demand," in Proc. of the IEEE Int'l
    Conf. on Multimedia computing and System, June
    1997, pp. 110-117.
  • S. Sheu, K. A. Hua, and T. Hu, Virtual Batching
    A New Scheduling Technique for Video-On-Demand
    Servers, In Proc. Of Intl Conf. On Database
    Systems for Advanced Applications (DASFAA97),
    Melbourne, Australia, April 1997.
  • Tai Do, Kien A. Hua, and Mounir Tantaoui, P2VoD
    Providing Fault Tolerant Video-on-Demand
    Streaming in Peer-to-Peer Environment to appear
    in the Proc. of the IEEE International Conference
    on Communications (ICC 2004), June 20-24 2004,
    Paris, France

67
References
  • A. Dan, D. Sitaram, and P. Shahabuddin, Dynamic
    batching policies for an on-demand video server,
    Multimedia Systems, Nov 1994. Vol 4. pp.112-121
  • C.C. Aggarwal, J.L. Wolf, and P.S. Yu, On
    optimal batching policies for video-on-demand
    storage servers, in Proc. Of IEEE Intl Conf on
    Multimedia computing and System, Japan, June
    1996.
  • Y. Guo, K. Suh, J. Kurose, D. Towsley, P2Cast
    P2P Patching Scheme for VoD Service, in WWW
    2003.
  • V. Padmanabhan, H.Wang, P. Chou, Distributing
    Streaming Media Content Using Cooperative
    Networking, in NOSSDAV 2002.
  • D. Tran, K. Hua, T. Do, A Peer-to-Peer
    Architecture for Media Streaming, in IEEE JSAC
    2003.

68
Questions?
Write a Comment
User Comments (0)
About PowerShow.com