efficient video on demand

Upload: vani-baskaran

Post on 08-Apr-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/7/2019 efficient video on demand

    1/66

    1

  • 8/7/2019 efficient video on demand

    2/66

    CHAPTER 1

    INTRODUCTION

    T oday, fiber-to-the-X (FTTx) technologies such as 1 Gbps Ethernet passiveoptical networks (EPONs) and 2.488 Gbps gigabit Pans (GPONs) are being

    increasingly deployed in broadband access networks. Thus, true triple-play service

    with emphasis on video is becoming possible. Video-ondemand (VoD) service,

    which is in the deployment stage, is a frontrunner in video services.

    It is a very promising service as a revenue source, since VoD service has

    great potential to capture a significant fraction of the traditional 25 billion annual

    video rental market in the near future. To provide VoD service economically by

    reducing the costs to the service provider and user, quite a lot of research attention

    has been generated on efficient VoD network architectures and mechanisms, e.g.,

    content allocation and content delivery.

    Video streaming schemes, which include broadcasting, batching, patching,

    stream merging, and a hybrid approach, are well-known examples of efficient

    video-delivery mechanisms. Unlike unicast streaming, this provides a separate

    unicast video stream to each VoD request, these streaming schemes use multicast

    streaming and exploit user storage.

    Thus, they can save on video delivery cost by reducing the required network bandwidth while providing the same service quality to users. However, most

    previous research mainly focused on the improvement of the streaming scheme

    itself to save on network bandwidth, without considering other important factors.

    2

  • 8/7/2019 efficient video on demand

    3/66

    3

  • 8/7/2019 efficient video on demand

    4/66

    CHAPTER 2

    LITERATURE REVIEW

    2.1 A Hybrid Architecture for Cost-Effective On-Demand Media Streaming

    Author : Mohamed M. Hefeeda, Bharat K. Bhargava, and David K. Y. Yau

    We propose a new architecture for on-demand media streaming centered

    around the peer-to-peer (P2P) paradigm. The key idea of the architecture is that

    peers share some of their resources with the system. As peers contribute resources

    to the system, the overall system capacity increases and more clients can be served.

    The proposed architecture employs several novel techniques to: (1) use the often-underutilized peers resource, which makes the proposed architecture both

    deployable and cost-effective,

    (2) Aggregate contributions from multiple peers to serve a requesting peer so that

    supplying peers are not overloaded,

    (3) Make a good use of peer heterogeneity by assigning relatively more work to the

    powerful peers, and

    (4) Organize peers in a network-aware fashion, such that nearby peers are grouped

    into a logical entity called a cluster. The network-aware peer organization is

    validated by statistics collected and analyzed from real Internet data. The main

    benefit of the network-aware peer organization

    is that it allows to develop efficient searching (to locate nearby suppliers) and

    dispersion (to disseminate new files into the system) algorithms.

    We present network-aware searching and dispersion algorithms that result

    in:

    (i) fast dissemination of new media files,

    (ii) reduction of the load on the underlying network,

    4

  • 8/7/2019 efficient video on demand

    5/66

    (iii) Better streaming service.

    We demonstrate the potential of the proposed architecture for a large-scale

    on-demand media streaming service through an extensive simulation study onlarge, Internet-like, topologies. Starting with a limited streaming capacity (hence,

    low cost), the simulation shows that the capacity rapidly increases and many

    clients can be served. This occurs for all studied arrival patterns, including constant

    rate arrivals, flash crowd arrivals, and Poisson arrivals.

    Furthermore, the simulation shows that a reasonable client-side initial

    buffering of 10-20 seconds is sufficient to ensure full quality playback even in the

    presence of peer failures.

    2.2 Video-on-Demand Networks: Design Approaches and Future Challenges

    IP network-based deployments of Interactive Video-on-Demand (VoD)

    systems are today very limited in scope, but there is a strong belief among

    telecommunication companies that this market will expand exponentially in the

    next few years. In this paper, we outline the components of VoD architectures and

    survey the current approaches to their design.

    We strive to identify the research challenges that must be addressed in the

    development of design tools that can determine how to expand upon an existing

    network infrastructure in order to support Video-on-Demand.

    The long-tail of content and extensive usage growth are expected to have a

    major impact on the streaming and storage requirements of such systems. HybridVoD architectures that incorporate peer-to-peer exchange are an extremely

    promising paradigm, but there are many challenges in developing operational and

    economically-feasible peer-to peer systems.

    5

  • 8/7/2019 efficient video on demand

    6/66

    6

  • 8/7/2019 efficient video on demand

    7/66

    CHAPTER 3

    SYSTEM ANALYSIS

    3.1EXISTING SYSTEM:

    The algorithm used in the existing system is Video Playback Speed

    Streaming (VPSS).

    Unicast streaming is used.

    The problem is bandwidth saving, optimal usage in storage network.

    3.2 PROPOSED SYSTEM:

    To provide more efficient VoD streaming, three important factors should be

    considered:

    (1) An efficient streaming scheme for bandwidth savings,

    (2) Optimal use of deployed network bandwidth

    (3) Proactive use of user storage.

    Multicast streaming is used in proposed system. We exploit the patching

    scheme as an efficient bandwidth-saving streaming scheme and propose several

    novel approaches to include items. The prior patching scheme, where all thestreaming speed is playback speed, is called video playback speed streaming

    (VPSS). We compare the performance of our proposed schemes.

    7

  • 8/7/2019 efficient video on demand

    8/66

    8

  • 8/7/2019 efficient video on demand

    9/66

    CHAPTER 4

    REQUIREMENT SPECIFICATION

    4.1 Hardware Requirements:

    Processor : Intel P3 and above

    Processor Speed : 1 GHz

    RAM : 512 MB and above

    Hard Disk Capacity : 40 GB and above

    4.2 Software Requirements:

    Front-End : JSP

    Back-End : SQL Server

    Web Server : TomcatOperating System : Windows XP

    9

  • 8/7/2019 efficient video on demand

    10/66

    10

  • 8/7/2019 efficient video on demand

    11/66

    CHAPTER 5

    Software Description

    5.1 Front End

    Java Server Pages (JSP)

    Java Server Pages (JSP) technology enables Web developers and designers

    to rapidly develop and easily maintain, information-rich, dynamic Web pages that

    leverage existing business systems. As part of the Java technology family, JSP

    technology enables rapid development of Web-based applications that are platform

    independent. JSP technology separates the user interface from content generation,

    enabling designers to change the overall page layout without altering the

    underlying dynamic content.

    Benefits for Developers

    If you are a Web page developer or designer who is familiar with HTML,

    you can:

    Use JSP technology without having to learn the Java language :

    You can use JSP technology without learning how to write Java scrip lets.

    Although script lets are no longer required to generate dynamic content, they are

    still supported to provide backward compatibility.

    Extend the JSP language : Java tag library developers and designers

    can extend the JSP language with "simple tag handlers," which utilize a new, muchsimpler and cleaner, tag extension API. This spurs the growing number of

    pluggable, reusable tag libraries available, which in turn reduces the amount of

    code needed to write powerful Web applications.

    11

  • 8/7/2019 efficient video on demand

    12/66

    Easily write and maintain pages : The Java Server Pages Standard

    Tag Library (JSTL) expression language is now integrated into JSP technology and

    has been upgraded to support functions. The expression language can now be used

    instead of script let expressions.

    5.2 Back End

    SQL (Structured Query Language)

    This article is the first in an educational series offered by SQL AB aimed

    towards providing the reader with valuable insight into the SQL database server.

    Although future articles will delve into some of the more complicated topicssurrounding SQL, including replication, ODBC and optimization, it was thought to

    be prudent if the first tutorial started, well, at the beginning. Therefore the goal of

    this article is to thoroughly acquaint the reader with various topics surrounding the

    basic functioning of SQL.

    THE SQL SERVER

    Microsoft SQL Server is a relational database management system produced

    by Microsoft. It supports a superset of Structured Query Language SQL, the most

    common database language. It is commonly used by businesses for small to

    medium sized databases, but the past five years have seen greater adoption of the

    product for larger enterprise databases.

    Microsoft SQL Server uses a variant of SQL called T-SQL, or Transact-

    SQL , an implementation of SQL-92 (the ISO standard for SQL, certified in 1992)

    with some extensions. T-SQL mainly adds additional syntax for use in stored

    procedures , and affects the syntax of transaction support. (Note that SQL standards

    require Atomic, Consistent, Isolated, Durable or "ACID" transactions.) Microsoft

    12

    http://en.wikipedia.org/wiki/Transact-SQLhttp://en.wikipedia.org/wiki/Transact-SQLhttp://en.wikipedia.org/wiki/SQL-92http://en.wikipedia.org/wiki/International_Organization_for_Standardizationhttp://en.wikipedia.org/wiki/Standardizationhttp://en.wikipedia.org/wiki/Stored_procedurehttp://en.wikipedia.org/wiki/Stored_procedurehttp://en.wikipedia.org/wiki/Database_transactionhttp://en.wikipedia.org/wiki/ACIDhttp://en.wikipedia.org/wiki/Transact-SQLhttp://en.wikipedia.org/wiki/Transact-SQLhttp://en.wikipedia.org/wiki/SQL-92http://en.wikipedia.org/wiki/International_Organization_for_Standardizationhttp://en.wikipedia.org/wiki/Standardizationhttp://en.wikipedia.org/wiki/Stored_procedurehttp://en.wikipedia.org/wiki/Stored_procedurehttp://en.wikipedia.org/wiki/Database_transactionhttp://en.wikipedia.org/wiki/ACID
  • 8/7/2019 efficient video on demand

    13/66

    SQL Server and Sybase/ASE both communicate over networks using an

    application-level protocol called Tabular Data Stream (TDS). The TDS protocol

    has also been implemented by the Free TDS project in order to allow more kinds of

    client applications to communicate with Microsoft SQL Server and Sybasedatabases. Microsoft SQL Server also supports Open Database Connectivity

    (ODBC).

    13

    http://en.wikipedia.org/wiki/Tabular_Data_Streamhttp://en.wikipedia.org/wiki/FreeTDShttp://en.wikipedia.org/wiki/Open_Database_Connectivityhttp://en.wikipedia.org/wiki/Tabular_Data_Streamhttp://en.wikipedia.org/wiki/FreeTDShttp://en.wikipedia.org/wiki/Open_Database_Connectivity
  • 8/7/2019 efficient video on demand

    14/66

    14

  • 8/7/2019 efficient video on demand

    15/66

    CHAPTER 6

    SYSTEM DESIGN

    6.1 System Architecture:

    15

    Start

    Server Client

    Upload DeleteAudio Video

    Textfile

    Audio

    Video

    Textfile

    Audio

    Video

    Textfile

    View

    Download

    View

    Download

    View

    Download

  • 8/7/2019 efficient video on demand

    16/66

    6.2.Usecase Diagram :

    16

  • 8/7/2019 efficient video on demand

    17/66

    6.3.Class Diagram:

    17

  • 8/7/2019 efficient video on demand

    18/66

  • 8/7/2019 efficient video on demand

    19/66

  • 8/7/2019 efficient video on demand

    20/66

  • 8/7/2019 efficient video on demand

    21/66

    7.1 PROBLEM STATEMENT:

    Previous research on streaming schemes mainly focused on efficiencyenhancement (e.g., server bandwidth savings) of streaming technology. However,

    even though a streaming scheme itself may be optimal in the aspect of server

    bandwidth savings, it may not be an optimal solution in real VoD service

    environments to satisfy other constraints and objectives. For example, we may

    think that using the optimum patching window with playback-speed (i.e., lowest-

    speed) streaming can minimize the required server bandwidth. However, since the

    request rate or traffic is low during most of the day and very high during peak

    periods, we ask (1) does the streaming speed need to be uniform (i.e., playback

    speed) at all times, and (2) if the service provider designs the network to support

    the peak request rate, isnt it better to use the idle bandwidth in less-busy periods

    than to use constant-speed streaming? Suppose we use video playback-speed

    streaming (VPSS), which is defined as a patching scheme where all the streams,

    including multicast streams and patch streams, have the same playback speed. In

    the absence of capacity constraints or congestion, VPSS is ideal and can serve

    more users than other higher speed streaming, since it uses minimum total

    bandwidth for a group of requests. However, VPSS can become problematic when

    network bandwidth is congested, since each stream takes the bandwidth for a

    longer time. Thus, if a new request comes when all the bandwidth is fully used, the

    request will wait for a long time until the streaming for a previous request finishesand bandwidth for streaming the new video is available. Thus, the waiting time for

    a new request may increase significantly beyond what a customer may accept. This

    means customer dissatisfaction and revenue reduction for the service provider.

    21

  • 8/7/2019 efficient video on demand

    22/66

    7.2 ALGORITHM

    1) VAST (video adaptive streaming)

    2) VGAST (video greedy adaptive streaming)

    These two algorithms are implemented coding level.

    7.2.1 VAST Algorithm:

    Our VAST algorithm is summarized below:

    1) First request for each video title is served by a multicast stream, which has

    minimum speed, i.e., playback speed, so later requests can join the stream as

    quickly as possible.

    2) Later requests, which are in the patching window, are served by patch streams,

    the speed of which is inversely proportional to the current request rate and

    popularity.

    3) A later request, which is the first request outside the patching window, is served

    by a new multicast stream.

    22

  • 8/7/2019 efficient video on demand

    23/66

    4) Patching window for each video is changed in each time period by video

    popularity and current request rate.

    5) If a patch stream crosses over to the next patching window, its streaming speed

    is changed to that time periods streaming speed.

    7.2.2 VGAST Algorithm:

    The VAST algorithm uses the less-busy times bandwidth more and the

    busier times bandwidth less by changing the streaming speed inverse

    proportionately to the request rate. Thus, we can improve the efficiency of network

    bandwidth usage and reduce the user waiting time.

    In VGAST, the first request for each video is provided by a multicast stream

    with minimum speed, and later requests are served by this ongoing multicast

    stream and another patch stream. The difference between VAST and VGAST is

    that the speed of the patch stream in VGAST depends on the available bandwidth

    rather than the request rate. Therefore, each patch stream can use the available

    bandwidth more efficiently without leaving any unused bandwidth.

    23

  • 8/7/2019 efficient video on demand

    24/66

    CHAPTER 8

    MODULES

    24

  • 8/7/2019 efficient video on demand

    25/66

    8.1 Modules Description:

    Two main modules

    1. Server 2. Client

    Server module:

    1. Audio Upload

    2. Video Upload

    3. Document Upload4. Audio Delete

    5. Video Delete

    6. Document Delete

    Client Module:

    1. Audio Download

    2. Video Download

    3. Document Download

    8.2 Server Module:

    Audio Upload:

    25

  • 8/7/2019 efficient video on demand

    26/66

    In this module, we can upload any audio file using browse

    option and then want to convert that file into zip file.

    Video Upload:

    In this module, we can upload any video file using browse

    option and then want to convert that file into zip file.

    Document Upload:

    In this module, we can upload any text file using browse option

    and then want to convert that file into zip file.

    Audio Delete:

    In this module, we can delete any audio files that are uploaded

    already in the server.

    Video Delete:In this module, we can delete any video files that are uploaded

    already in the server.

    Document Delete:

    In this module, we can delete any text files that are uploaded

    already in the server.

    8.2.1 DATAFLOW DIAGRAM

    26

  • 8/7/2019 efficient video on demand

    27/66

    8.3 Client:

    27

  • 8/7/2019 efficient video on demand

    28/66

    Audio Download:

    In this module, any number of clients can download and view

    the audio files that are stored in the server.

    Video Download:

    In this module, any number of clients can download and view

    the video files that are stored in the server.

    Document Download:

    In this module, any number of clients can download the text

    files that are stored in the server.

    8.3.1 DATAFLOW DIAGRAM

    28

  • 8/7/2019 efficient video on demand

    29/66

    29

  • 8/7/2019 efficient video on demand

    30/66

    CHAPTER 9

    30

  • 8/7/2019 efficient video on demand

    31/66

    SYSTEM TESTING

    The purpose of testing is to discover errors. Testing is the process of trying to

    discover every conceivable fault or weakness in a work product. It provides a way

    to check the functionality of components, sub assemblies, assemblies and/or a

    finished product It is the process of exercising software with the intent of ensuring

    that the Software system meets its requirements and user expectations and does not

    fail in an unacceptable manner. There are various types of test. Each test type

    addresses a specific testing requirement.

    9.1 TYPES OF TESTS

    9.1.1 Unit testing

    Unit testing involves the design of test cases that validate that the internal

    program logic is functioning properly, and that program inputs produce valid

    outputs. All decision branches and internal code flow should be validated. It is the

    testing of individual software units of the application .it is done after the

    completion of an individual unit before integration. This is a structural testing, that

    relies on knowledge of its construction and is invasive. Unit tests perform basic

    tests at component level and test a specific business process, application, and/or

    system configuration. Unit tests ensure that each unique path of a business process

    performs accurately to the documented specifications and contains clearly defined

    inputs and expected results.

    9.1.2 Integration testing

    31

  • 8/7/2019 efficient video on demand

    32/66

    Integration tests are designed to test integrated software components to

    determine if they actually run as one program. Testing is event driven and is more

    concerned with the basic outcome of screens or fields. Integration tests

    demonstrate that although the components were individually satisfaction, as shownby successfully unit testing, the combination of components is correct and

    consistent. Integration testing is specifically aimed at exposing the problems that

    arise from the combination of components.

    9.1.3 Functional test

    Functional tests provide systematic demonstrations that functions tested are

    available as specified by the business and technical requirements, system

    documentation, and user manuals.

    Functional testing is centered on the following items:

    Valid Input : identified classes of valid input must be accepted.

    Invalid Input : identified classes of invalid input must be rejected.

    Functions : identified functions must be exercised.

    Output : identified classes of application outputs must be

    exercised.

    Systems/Procedures : interfacing systems or procedures must be

    invoked.

    Organization and preparation of functional tests is focused on requirements, key

    functions, or special test cases. In addition, systematic coverage pertaining to

    identify Business process flows; data fields, predefined processes, and successive

    32

  • 8/7/2019 efficient video on demand

    33/66

    processes must be considered for testing. Before functional testing is complete,

    additional tests are identified and the effective value of current tests is determined.

    9.1.4 System Test

    System testing ensures that the entire integrated software system meets

    requirements. It tests a configuration to ensure known and predictable results. An

    example of system testing is the configuration oriented system integration test.

    System testing is based on process descriptions and flows, emphasizing pre-driven

    process links and integration points.

    9.1.5 White Box Testing

    White Box Testing is a testing in which in which the software tester has

    knowledge of the inner workings, structure and language of the software, or at least

    its purpose. It is purpose. It is used to test areas that cannot be reached from a black

    box level.

    9.1.6 Black Box Testing

    Black Box Testing is testing the software without any knowledge of the inner

    workings, structure or language of the module being tested. Black box tests, as

    most other kinds of tests, must be written from a definitive source document, such

    as specification or requirements document, such as specification or requirements

    document. It is a testing in which the software under test is treated, as a black

    box .you cannot see into it. The test provides inputs and responds to outputs

    without considering how the software works.

    33

  • 8/7/2019 efficient video on demand

    34/66

  • 8/7/2019 efficient video on demand

    35/66

    35

  • 8/7/2019 efficient video on demand

    36/66

    CHAPTER 10

    SOURCE CODE

    INDEX.JSP

    Untitled Document

    36

  • 8/7/2019 efficient video on demand

    37/66

    &

    nbsp;&nb

    sp;

    &

    nbsp;&nb

    sp;

    Start V-O-D

    &

    nbsp;&nb

    sp;

    37

  • 8/7/2019 efficient video on demand

    38/66

    SERVERSIGNUPDATA.JSP

    New Page 1

  • 8/7/2019 efficient video on demand

    39/66

    try

    {

    String s="insert into serverdata

    values('"+s1+"','"+s2+"','"+s3+"','"+s4+"','"+s5+"','"+s6+"')";

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    Connection con=DriverManager.getConnection("Jdbc:Odbc:video");

    Statement stmt=con.createStatement();

    Boolean bo=stmt.execute(s);

    if(!bo)

    {

    response.sendRedirect("http://192.168.1.20/video/serverlogin.jsp");

    }

    }

    catch(Exception ex)

    {

    out.println(ex);

    }

    %>

    39

  • 8/7/2019 efficient video on demand

    40/66

    SERVERUPLOAD.JSP

    New Page 1

  • 8/7/2019 efficient video on demand

    41/66

    String s="insert into serverdata

    values('"+s1+"','"+s2+"','"+s3+"','"+s4+"','"+s5+"','"+s6+"')";

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    Connection con=DriverManager.getConnection("Jdbc:Odbc:video");

    Statement stmt=con.createStatement();

    Boolean bo=stmt.execute(s);

    if(!bo)

    {

    response.sendRedirect("http://192.168.1.20/video/serverlogin.jsp");

    }

    }

    catch(Exception ex)

    {

    out.println(ex);

    }

    %>

    41

  • 8/7/2019 efficient video on demand

    42/66

    SERVERVALIDATE.JSP

    New Page 1

  • 8/7/2019 efficient video on demand

    43/66

    String s="insert into serverdata

    values('"+s1+"','"+s2+"','"+s3+"','"+s4+"','"+s5+"','"+s6+"')";

    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    Connection con=DriverManager.getConnection("Jdbc:Odbc:video");

    Statement stmt=con.createStatement();

    Boolean bo=stmt.execute(s);

    if(!bo)

    {

    response.sendRedirect("http://192.168.1.20/video/serverlogin.jsp");

    }

    }

    catch(Exception ex)

    {

    out.println(ex);

    }

    %>

    43

  • 8/7/2019 efficient video on demand

    44/66

    SUCCESSAUDIOUPLOAD.JSP

    New Page 1

    44

  • 8/7/2019 efficient video on demand

    45/66

    Successfully Audio

    Uploaded.......................

    SUCCESSFILEUPLOAD.JSP

    New Page 1

    45

  • 8/7/2019 efficient video on demand

    46/66

    Successfully Audio

    Uploaded.......................

    46

  • 8/7/2019 efficient video on demand

    47/66

  • 8/7/2019 efficient video on demand

    48/66

    CHAPTER 11

    SCREEN SHOTS

    48

  • 8/7/2019 efficient video on demand

    49/66

    49

  • 8/7/2019 efficient video on demand

    50/66

    50

  • 8/7/2019 efficient video on demand

    51/66

    51

  • 8/7/2019 efficient video on demand

    52/66

    52

  • 8/7/2019 efficient video on demand

    53/66

    53

  • 8/7/2019 efficient video on demand

    54/66

    54

  • 8/7/2019 efficient video on demand

    55/66

    55

  • 8/7/2019 efficient video on demand

    56/66

  • 8/7/2019 efficient video on demand

    57/66

    57

  • 8/7/2019 efficient video on demand

    58/66

    58

  • 8/7/2019 efficient video on demand

    59/66

    59

  • 8/7/2019 efficient video on demand

    60/66

    60

  • 8/7/2019 efficient video on demand

    61/66

    CHAPTER 12

    CONCLUSION

    We have proposed efficient VoD streaming algorithms for a PON based onthree exploitable resources: an efficient streaming scheme for bandwidth savings,

    optimal use of deployed network bandwidth, and proactive use of user storage.

    These algorithms use a method that adaptively increases the streaming speed when

    the request rate is low and decreases the speed when the request rate is high by

    considering the patching scheme, video popularity, and VoD request model to

    maximize the use of available network bandwidth. The most efficient algorithm,

    VGAST-PB, exploits the user storage proactively in addition to the adaptive

    streaming strategy. We showed the efficiency of these algorithms by analyzing the

    user waiting time in broadband access networks. Numerical results show that,

    when the available network bandwidth is reduced below the required level due to

    background traffic, the algorithm can considerably reduce the average user waiting

    time and the number of waiting requests. This also means that the proposed

    schemes can dramatically reduce the required network bandwidth for the same

    service.

    61

  • 8/7/2019 efficient video on demand

    62/66

    62

  • 8/7/2019 efficient video on demand

    63/66

    CHAPTER 13

    FUTURE ENHANCEMENT

    To achieve more practical and user-centric algorithms, we need to consider user

    interaction behavior such as VCR functions for VoD service. Some of the previous

    research works such as analyzed the methods to support VCR function with

    multicast streaming, even though they did not consider the optimum streaming

    speed as we analyzed in this paper. Considering VCR functions increases the

    complexity and decreases the efficiency of multicast streaming schemes. Reference

    shows that multicast streaming schemes are not so efficient if they support

    interactive VCR functions, because contingency channels are required to support

    VCR functions. The number of contingency channels increases in proportion to the

    frequency of VCR actions, which significantly increases the system bandwidth.

    Therefore, one of the future research directions might be to find the optimum

    streaming speed when the efficient multicast Streaming schemes are applied with

    VCR functions.

    63

  • 8/7/2019 efficient video on demand

    64/66

    64

  • 8/7/2019 efficient video on demand

    65/66

    CHAPTER 14

    REFERENCES

    1. F. Thouin and M. Coates, Video-on-demand networks: design approaches andfuture challenges, IEEE Network , vol. 21, no. 2, pp. 4248, Mar./Apr. 2007.

    2. K. Couch, Raising the bar for triple play with VoD, Converge! Network

    Digest , Jan. 2005.

    3. B. Wang, S. Sen, M. Adler, and D. Towsley, Optimal proxy cache allocation

    for efficient streaming media distribution, IEEE Trans. Multimedia , vol. 6, no. 2,

    pp. 366374, Mar. 2004.

    4. M. M. Hefeeda, B. K. Bhargava, and D. K. Y. Yau, A hybrid architecture for

    cost-effective on-demand media streaming, Comput. Netw. , vol. 44, no. 3, pp.

    353382, Feb. 2004.

    5. K. A. Hua, M. A. Tantaoui, and W. Tavanapong, Video delivery technologies

    for large-scale deployment of multimedia applications, Proc. IEEE , vol. 92, no. 9,

    pp. 14391451, Sept. 2004.

    REFERENCE WEBSITE:

    http://ieeexplore.ieee.org

    http://searchnetworking.techtarget.com/tip

    65

    http://ieeexplore.ieee.org/http://searchnetworking.techtarget.com/tiphttp://ieeexplore.ieee.org/http://searchnetworking.techtarget.com/tip
  • 8/7/2019 efficient video on demand

    66/66