Private:progress-almowuena

From NMSL
Revision as of 18:22, 31 May 2012 by Salmowue (talk | contribs)

Summer 2012

  • Courses:
    • CMPT 899: Ph.D. Thesis
  • May 14 to May 24:
    • As I mentioned in a previous report, a proper video segmentation may help in solving the buffer violation caused by the hybrid video-on-demand streaming algorithm. Dr. Abdul suggested a possible solution in Here. Briefly, the suggested scheme divides each multimedia stream into a number of two-second segments in order to avoid generating any long patching stream. To measure its performance, I had done a comprehensive analysis of the proposed algorithm with regards to three metrics: the bandwidth usage, buffer requirements, and paly-out delay. Compared with our hybrid approach and periodic broadcasting, the new scheme succeeds in providing a full support for VCR functionalities, including fast forwarding and rewinding, without causing any additional overhead in the system. Moreover, the new scheme succeeds in reducing the buffer requirements significantly and preventing the occurrence of any buffer violation. However, a major drawback can be noticed in the new scheme with respective to its bandwidth usage. Different from our hybrid approach and periodic broadcasting, the bandwidth requirement of the new scheme is considerably high. In some scenarios as shown in the figure Here, the new scheme closely approaches the bandwidth requirement of the all-unicast method. It is important to keep in mind that the bandwidth usage computed here does not include the data required for signaling and other control communication, which should be large in the new algorithm due to its short segments.
  • Apr 23 to May 13:
    • To provide an energy-efficient video-on-demand streaming to mobile terminals, I modified our hybrid algorithm in a way that burst transmission is utilized in the multicast session instead of sending the multimedia stream in a continuous manner. To accomplish this objective, it is important to obtain a transmission schedule in which the number of bursts for each video stream in a frame as well as the start and end times for each burst are specified. Of course, this schedule should avoid the occurrence of any burst collision, which is usually happened if several bursts have intersected in the time. Moreover, In addition, the transmission schedule must ensure that there are no buffer violations on the client-side. A buffer violation occurs when the receiver has either no data in its buffer (in other words, buffer underflow) or has no space to store incoming data (i.e. buffer overflow). Obviously, this transmission schedule can be considered as an NP-complete optimization problem. To solve it, I introduced an approximation algorithm based on the concept of task sequencing with release times and deadlines.
    • After analyzing the modified version of the hybrid algorithm, I found that mobile receivers in many scenarios are suffering from the buffer overflow issue even though buffer violation is completely prevented in the burst transmission. This buffer overflow is caused by the patching streams (not from the multicast sessions). To overcome this matter, two solutions can be used. The first approach is based on the idea of adding any incoming request for a certain video-on-demand stream to a waiting list. This waiting list will be served once a predefined interval of time is ended. As it is clear, this approach has a trade-off between the play-out delay and the bandwidth usage. Increasing the play-out delay would result in reducing the bandwidth usage, and vice versa. Since I think it is necessary to maintain the zero service delay in the hybrid algorithm, I recommend utilizing the second solution in which each video stream is divided into a number of segments based on their popularity. These segments are multicasted through a number of communication channels rather than multicasting a single and long stream. Currently, Dr. Abdul and I are trying to analyze various methods of video segmentation. Once we agreed on a particular technique, I will send a complete report about the extended hybrid algorithm, including both burst transmission and video segmentation.


Spring 2012

  • Courses:
    • CMPT 899: Ph.D. Thesis
  • Mar 13 to Apr 22:
    • During the last week, I started working on extending the hybrid multicast/unicast streaming algorithm specifically proposed for LTE networks. In addition to the concept of burst transmission, I am trying to consider the following four points:
    • 1) In the MM submission, each late client joining an existing multicast session receives a patching stream. This patching stream follows a greedy principle in which a unicast connection is initiated regardless to the length of this stream. To enhance the bandwidth utilization in the proposed algorithm, it would be recommended to replace this greedy approach with a grace patching. In brief words, the grace patching technique generates a patch stream if the incoming request arrives within a predefined time window after the initiation of the multicast session. In other words, long patching connections are not allowed in the system.
    • 2) Another approach to reduce the bandwidth requirement is to initiate a multicast session for each patching stream if there is more than one user is asking for the same segment. To facilitate this feature and obtain additional bandwidth reduction, an optimal segmentation method to divide the video of interest is required.
    • 3) In both analysis and simulation, mobile terminals are assumed to have interest in starting their sessions from the beginning of the desired video. However, several studies show that significant fraction of video sessions start from arbitrary positions in the video file. Typically, this scenario becomes more noticeable in the cases when the multimedia file size is large. From my point of view, this issue can be addressed if interactive VCR functions are explicitly employed in our paper, which currently gives inefficient implementation for such features.
    • 4) Although we have failed in getting actual traces from a video-on-demand service provider, having a user behavior model, which can estimate the user arrival rates and their access pattern, is still necessary to develop a better multimedia streaming scheme. I found a number of papers from which we can extract our user behavior model since they give some aggregate statistics. For example, a study shows that around 53% of incoming users are leaving their sessions within less than 10 minutes, whereas 70% are ending their session in the first 20 minutes. Another study observes that mobile clients asking for an unpopular video have longer session length than those users requesting popular videos. Combining the results of these studies may help us in predicting the network traffic, which can be utilized in both analysis and simulation.
  • Mar 22 to Apr 12:
    • Submitting a paper entitled "A hybrid multicast-unicast video-on-demand streaming algorithm over mobile networks" to the ACM Multimedia conference.
  • Feb 27 to Mar 21:
    • Preparing and finalizing the first draft of the hybrid video-on-demand streaming algorithm designed specifically for LTE networks.
  • Jan 18 to Feb 26:
    • To evaluate the performance of the proposed video-on-demand streaming algorithm, I am trying to study a comprehensive streaming scenario utilizing LTE-Sim, which is an open-source framework designed specifically to simulate LTE networks. This simulator encompasses several aspects of LTE networks, including both the E-UTRAN and the EPS. In particular, it supports single-cell and multi-cell environments, quality-of-service (QoS) management, multiuser environments, user mobility, and handover procedures. Three kinds of network nodes are modeled: UE, eNB, and MME/GW. Several traffic generators at the application layer have been implemented, and the management of data radio bearer is supported. Finally, well-known scheduling strategies, the AMC scheme, CQI feedback, frequency reuse techniques, and models for the PHY layer have been developed.
    • During our simulation, three assumptions will be taken into account: a base station can serve 300 simultaneous channels, a content server possesses 100 multimedia files whose average length is 30 minutes, and the request arrival ratio follows a Zipf-like distribution. Furthermore, videos in the content server were given a popularity ranking based on their received requests. Once the program is executed, a constant number of requests are generated at discrete instants. Typically, only 43 multimedia files will be requested at each interval where 80% of these incoming requests are interested in approximately 20% of the available videos. Running the simulation for 100 instants of time period, the programming code receives requests from the interested mobile devices in the transmission range of a cellular base station. Then it computes the bandwidth usage at each time interval for the three methods: unicast, multicast and hybrid. To implement our proposed algorithm, the signaling overhead caused by the creation or extension of a multicasting session was equivalent to 100 kilobytes.
    • Our proposed video-on-demand streaming algorithm can be briefly summarized into the next steps: 1) Constrain the maximum capacity for multimedia streaming by allowing 60 percent of the total available downlink channels for video-on-demand services. This restriction will help in accommodating concurrent voice and data services. 2) When a base station receives an incoming request from a client within its transmission range demanding a particular multimedia file, it checks whether this video is popular or not. Here, only the top 20 highly requested multimedia files are considered popular in our simulation. 3) If the required video is not popular in this geographical region, the base station delivers the desired file to the mobile receiver through an individual unicast stream once it is retrieved from the content streaming server. Of course, the transmission date rate would be adjusted based on the received feedback about the current channel condition of the mobile client. 4) Otherwise, the client will join a multicasting session in order to get his desired video. Since the multicast systems choose modulation and coding scheme (MCS), and multicast transmission power based on the capacity of the poor receivers, the base station should adjust these parameters again if the new user has the worst channel conditions among the participants.
    • The recent report can be found Here.
  • Jan 5 to Jan 17:
    • To make our problem statement more specific, I suggest modifying our goal to design a hybrid multimedia streaming algorithm with an objective of increasing the energy saving on mobile devices. Such goal should be more achievable than our previous objective which is minimizing the overall mobile network load while maintaining reasonable power consumption on mobile receivers.
    • Our proposed video-on-demand streaming algorithm is as follows. When a base station receives an incoming request from a client within its transmission range demanding a particular multimedia file, it checks whether this video is popular or not. To determine whether a certain multimedia file is highly requested or not, the base station usually observes its arrival request rate and then concludes its popularity. If the required video is not popular in this geographical region, the base station delivers the desired file to the mobile receiver through an individual unicast stream once it is retrieved from the content streaming server. Otherwise, the client will join a multicasting session in order to get his desired video.
    • Implementing multimedia multicast in single-hop cellular networks is not a straightforward task. For instance, having a poor receiver in the transmission coverage eventually causes a dramatic degradation in the possible transmission rates, thereby preventing clients with good channel conditions to enjoy higher reception rates. An intuitive countermeasure in these scenarios would be applying the concept of scalable video coding in which a base layer is send with a low rate and enhancement layers are coded with higher rates. However, this solution may result in increasing the power consumption of mobile devices as a consequence of the additional processing needed by the complex decoders at the end-clients.
    • Since mobile clients nearby a particular base station are normally heterogeneous devices possessing diverse capabilities, we are proposing to create a multicasting session for each group of devices having similar capabilities. To illustrate, consider a scenario where a number of smartphones whose screen sizes as low as 320 * 240 pixels in addition to a set of tablets with superior resolution screen (1024 * 768 pixels) are existing in the same cell. If we stream a high definition video through a multicast session for these devices, the smartphone group will waste a significant amount of its battery power resources without gaining any benefit from the high resolution stream. Therefore, we suggest dividing the devices in this case into two classes: smartphones and tablets. Then two different multicasting sessions will be initiated where each session targets a certain group of users in the cell. In other words, we are proposing to implement a transcoder on each base station instead of applying complex decoders on the end-clients.
    • Since the bandwidth capacity is often not sufficient to support a large number of simultaneous multicasting streams, there is usually a chance to encounter situations in which many queues are waiting to be served. Based on this ground, a scheduling strategy should be exploited to overcome such problem. The impact of three different scheduling strategies was examined in Here. The first strategy simply serves incoming requests based on their arrival time, whereas the second approach basically prioritizes the queues with the largest number of waiting users. The third scheduling strategy is a combination of the two methods by following the first approach at the lightly loaded intervals and applying the second method during the peak time periods. Among the three approaches, the second scheduling strategy was found to provide the optimal performance with regards to bandwidth utilization and service delay. However, it usually suffers from the necessity for a complex implementation compared with the first strategy, which normally gives a very reasonable performance. Hence, we can use the first-come first-served policy during our implementation.


Fall 2011

  • Courses:
    • CMPT 726: Machine Learning
    • CMPT 771: Internet Architecture and Protocols
  • Dec 16 to Dec 20:
    • To evaluate the performance of the proposed video-on-demand scheduling algorithm Here, a Java program simulating some simplified scenarios given the channel conditions and other required parameters was implemented. In this program, two video-on-demand algorithms were examined: 1) a conventional approach in which incoming requests for a certain multimedia file are served through separate unicast streams; and 2) our hybrid technique in which interested users are either joining a multicasting session with patching streams or receiving an individual unicast connection, depending on which option generates the most energy-efficient solution.
    • During the simulation, three assumptions were taken into account: a base station can serve 300 simultaneous channels, a content server possesses 100 multimedia files whose average length is 15 minutes, and the request arrival ratio follows a Zipf-like distribution. Furthermore, videos in the content server were given a popularity ranking based on their received requests. Once the program is executed, a constant number of requests are generated at discrete instants. Running the simulation for 100 instants of time period, our programming code receives requests from the interested mobile devices in the transmission range of a cellular base station. Then it computes the bandwidth usage at each time interval for the two methods: unicast and hybrid. To implement our proposed algorithm, the signaling overhead caused by the creation or extension of a multicasting session was equivalent to 100 kilobytes. If we assume all mobile devices, in a cell, share the same channel condition, we can find that our hybrid algorithm minimize the bandwidth usage in all unicast approach by more than 50 percent.
    • Currently, I am trying to avoid this assumption by considering diverse channel rates. Also, I am trying to extend our simulation to measure the power consumption given a predefined energy model. However, this most likely necessitates an advance network simulation platform such as OPNET and NS-2.
  • Nov 26 to Dec 15:
    • Two sections were added to the report of the hybrid streaming problem over mobile networks Here. The first one illustrates the system architecture of a video-on-demand streaming service, whereas the other section explains the proposed patching algorithm.
  • Nov 22 to Nov 25:
    • In the last meeting, we started our discussion by talking about an allocation algorithm for the next generation mobile networks. That algorithm was basically based on the concept of hierarchical video patching with a consideration to the feedback of signal-to-noise ratios reported by the mobile clients. Since several concerns were raised about how to improve the performance of the proposed algorithm, I would like to summarize these points in order to take them into account during our research:
      • a) How can we quantify the additional overhead caused by a multicast operation?
      • b) Is there an existing model for the power consumption in WiMAX and LTE technologies?
      • c) What is the impact of decreasing the number of OFDM symbols on the power consumption of a mobile client? What is the effect of applying the sleep mode (i.e. turning off the transceiver interface of a user if he is idle) on the power consumption of a mobile client? Of the two approaches, which way will provide us with the most energy-efficient solution?
      • d) How can we create a multicasting session in 4G? Here, it is important to indicate a practical implementation, and then discuss its level of difficulty.
      • e) In the scenarios when we have a multimedia file with few viewers, which mechanism can be utilized in order to determine the cost of creating a multicast session and the cost of initiating a unicast stream for each user and then select the choice with the minimum cost?
  • Nov 7 to Nov 21:
    • In the last two weeks, I had to do two midterms, submit three assignments, and present a survey topic; consequently, I was busy with the course load. I know that the deadline for the conference is approaching, and I know how important is to present our work in such conferences. However, I am still concerned whether our idea is mature enough to be submitted within one week.
  • Oct 24 to Nov 6:
    • Regarding the ICME submission, I already committed the first three sections (introduction, related work, and system architecture) into the SVN repository. Also, I started writing a draft for the fourth section in which three questions will be answered: 1) which video streams are chosen to be multicasted?; 2) how many communication channels are assigned for each multicast session?; and 3) which video streams are chosen to be unicasted? Till this moment, I have answered the first and the last questions, but I am still working on finding an appropriate approach for the second issue.
    • Regarding the simulation part, I need to modify some major components in our current implementation in order to fit the new modifications in the proposed algorithm.
  • Oct 11 to Oct 24:
    • Mainly, I had to focus on my coursework since some assignments and proposals were due in this week.
    • Regarding the hybrid multimedia streaming problem, the simulator can be divided into four components: an event generation, a unicast streamer, a multicast streamer, and a hybrid streamer. At this moment, the first two components are almost completed. Thus, I need only to complete the remaining two parts.
  • Sep 27 to Oct 10:
    • Assuming the arrival of the requests for a set of multimedia files is following a Poisson distribution, I started implementing a Java programming code in order to simulate our proposed hybrid multimedia streaming scheme. This code will also provide a performance comparison with both Patching and unicasting algorithms. Hopefully, the code will be completed within the next two weeks.
  • Sep 20 to Sep 26:
    • During this week, I continued exploring the energy consumption issue in the IEEE 802.16 standard. As I previously explained, I found that most researchers are following an identical approach in order to deal with this issue: they start with reducing the energy consumption of a Mobile Subscriber Station (MSS) by controlling the transition between its wake and sleep modes, and then they conclude with giving an analytical model for the energy consumption of their proposed scheme. However, we cannot follow this technique because it significantly increases the packet delay, which is not acceptable in the multimedia streaming scenarios.
    • Therefore, I am still trying to find an alternative approach in order to reach an analytical model for the energy consumption of both unicast and multicast multimedia streaming over WiMAX.
  • Sep 12 to Sep 19:
    • In order to measure the energy consumption of both unicast and multicast multimedia streaming over WiMAX, it would be easier to rely on a software based simulation tool such as OPNET or NS2. So far, it seems that the OPNET WiMAX modeler does not help our goal since it does not provide any energy measurement. This was my understanding from some papers as well as their official brochure Here. Moreover, we cannot take an advantage of the GENI-WiMAX project to accomplish our energy measurement because it is only accessible through an external control API that allows the programmability of only layers 2 and 3. However, I will continue investigating how people usually compute such consumption.
    • Since, to the best of my knowledge, no one has addressed the energy issue of multimedia streaming in WiMAX, I started reviewing the literature of energy modeling in the IEEE 802.16 standard in general. Actually, I found several papers discussing the energy saving mechanism of the IEEE 802.16e standard and also giving analytical models for its sleep-mode scheme. Even though these topics are out of our research scope at this moment, I believe studying them can help us in developing our analytical model for the problem on hand.
  • Sep 05 to Sep 11:
    • Reviewing the status of the hybrid multimedia streaming project.


Summer 2011

  • Courses:
    • CMPT 899: Ph.D. Thesis
  • July 18 to July 24:
    • I contacted a telecommunication company in Saudi Arabia to inquire the possibility of obtaining real statistical information about the multimedia streaming usage within their LTE and WiMAX networks. In that letter, I explained our objectives, mentioned their benefits, and requested anonymous information to avoid any privacy concerns. Until today, I had not received any response. However, I am expecting some delay since the majority of employees in Saudi Arabia prefer to take their vacations at this time of the year. Hopefully, we will hear a positive response soon.
    • Also, I am still convinced that we need a test-bed (or at least a simulation tool) which can provide us a space of flexibility during our research. That is why I focused in the past few days on exploring the GENI-WiMAX project Here. At this moment, I am trying to run few simple scenarios. I will post a brief report as soon as I found some interesting results.
  • June 15 to July 17:
    • A simple algorithm for the hybrid multimedia streaming problem is proposed Here. As it is described, a multicasting session is initiated if the energy consumption caused by receiving a unicasting stream is greater than the consumption resulted from both patching stream as well as enrolling into a multicasting session.
    • At this moment, I am trying to study and simulate two scenarios based on the proposed scheme: 1) the multimedia file is sent and multicasted with high data rate in a short period of time (i.e. send a burst of data), which logically reduce the energy consumption; and 2) the desired content is streamed with low data rate, which enhances the possibility of late clients to join the multicasting session and then reduces the amount of unicast streams in the system. In my point of view, finding the optimal trade-off between both two scenarios can be an interesting objective.
  • June 3 to July 14:
    • Since Dr. Cheng-Hsin Hsu pointed out that both problem statement as well as our proposed algorithm needs additional clarification, we agreed on limiting the problem statement to be more specific as follows: in a mobile network whose clients possess battery-powered devices with low computational resources, find an energy-efficient multimedia streaming scheme with an objective of maximizing the number of concurrent users. The proposed algorithm should handle an asynchronous request by either initiating a unicast streaming or extending an existing multicasting session. Assuming a desired multimedia content is properly delivered to the target base station without encountering any bottlenecks, the service delay required must be lower than a predefined threshold. Given a buffer size of B kb, the proposed scheme should ensure the absence of any buffer violation in the entire system. A buffer violation occurs when a receiver has no space to store the data received during a burst transmission (buffer overflow).
    • I extended the related work section by including six additional resources. Currently, both introduction and related work sections are completed, so they can be accessed Here.
    • Meanwhile, I am also aiming on doing some simulation, so I am still trying to implement the three algorithms presented in Here. I chose this paper because it seems a good candidate to be compared with our proposed scheme.
  • June 13 to July 2:
    • I prepared a brief review about four streaming algorithms which seems very close to our proposed method Here. Clearly, most researchers had not considered the energy consumption in their works, so an important contribution of our proposed scheme is taking this point into account.
    • Since mobile networks share many common aspects with wireless sensor and ad hoc networks, I also investigated the current solutions proposed for the multicast-unicast problem in these two configurations Here. Since these techniques take advantages of multipath routing and neighbouring buffers, these approaches cannot be useful for the cellular network due to the absence of intermediate nodes in its infrastructure.
    • Four main questions can be asked in the hybrid multimedia streaming problem: 1) How can we multicast or unicast a required multimedia file? 2) What is the cost of changing the mode from unicast to multicast and vice versa? 3) How can we schedule a number of simultaneous requests belonging to different streaming contents? and 4) What is the impact of handover on the performance of the proposed algorithm? Next week, I will try to answer the first two questions.
  • May 21 to June 12:
    • A simple algorithm for the hybrid multimedia streaming problem is proposed. In this algorithm, a base station usually responds for an incoming request by unicasting the desired video directly to the mobile client. Nevertheless, it can also decide to start a multicasting session for a number of simultaneous users. Such decision is basically based on a combination of two parameters: the length of the required video file as well as its popularity in the current geographical location.
    • This algorithm should be evaluated using four metrics: the playback delay, the bandwidth usage, the power consumption, and the buffer requirements for both base station and mobile clients. Therefore, I am still working on obtaining the mathematical formulas for these four metrics taking into account the frequent occurrence of handover. In my opinion, considering this point will distinguish our algorithm from any other method proposed for wireless networks.
  • May 7 to May 20:
    • In the report written by Som, many equations were given based on the assumption that video signals have a fixed date rate. Unfortunately, this is not always the case. For instance, video files generated using MPEG compression schemes are utilizing variable bit rates. Therefore, I am working on reformulating the equations for both bandwidth requirements and power consumption in order to take the variable bit rates into consideration.
    • In the same report, the video length was taken into account in order to determine the selection between unicasting and multicasting. Besides that, I am trying to consider the popularity of the wanted video. In a simple manner, requests for popular videos will be combined together to initiate a multicasting stream, whereas requests for videos with low-demand will be unicasted to their audiences. Determining the popularity of a particular video is typically an easy process since many websites include such information in the video details. However, we can make the base stations in mobile networks monitor the activities of their local users. Enabling this feature will eventually increase the overall performance of the system because the requests of certain videos are usually affected by the geographical regions. For example, people sitting near a hockey stadium are more likely to be interested in sport video than those who are sitting by the ocean or a natural park.
    • I am also working on another idea relying on the popularity concept. People often are looking to watch certain clips from a popular video. In other words, a long interview whose length is more than 60 minutes usually features several topics. In most cases, users are not interested in watching the entire interview; they are looking for specific parts of the interview. If you determine the popular parts, it would be easy to optimally divide the entire video into a number of segments, leading to obtain an efficient multicasting scheme. Even though this idea seems a little bit complex, it will be worthwhile to investigate more in order to propose efficient hybrid streaming algorithm.
    • Although researchers are usually focusing on a true video-on-demand, it can be acceptable for many free video-on-demand services to add short advertisement clips, especially when these ads are highly related to the required videos. If we stream advertisement clips with different lengths, we can combine all incoming request and then initiate a new multicasting steam. To illustrate, the fist requests will be given an ad with an acceptable length and the second requests will be given shorter ads, and so on. Ensuring all these advertisement clips are finishing at the same time, starting a new multicasting stream will be possible. I am trying to avoid applying this idea in our proposed algorithm, but it can be an option if we try to earn some time before initiating a new multicasting stream.
  • Apr 25 to May 6:
    • Refocusing on the multicast-unicast multimedia streaming problem in mobile networks.
    • Trying to understand the simulator implemented by Somsubhra Sharangi.


Spring 2011

  • Courses:
    • CMPT 705: Design and Analysis of Algorithms
    • CMPT 820: Multimedia Systems
  • Apr 01 to Apr 22:
    • Focusing on my coursework; finalizing some assignments and projects as well as preparing for a final exam.
  • Feb 07 to Feb 21:
    • Reviewing the current solutions proposed for the multicast-unicast multimedia streaming problem in wireless sensor and ad hoc networks, and writing a brief report about this issue.
    • Reading about the multimedia broadcast and multicast services in 3G mobile networks and their standards.
  • Jan 31 to Feb 06:
    • Understanding the concept of three important methods in the field of internet multimedia streaming: Batching, Patching, and Periodic Broadcasting.
    • Analyzing the problem of hybrid multimedia streaming over wireless networks.
    • Exploring different techniques for hybrid multimedia streaming in wireless and ad hoc networks.
  • Jan 24 to Jan 30:
    • Preparing for a midterm in addition to completing two assignments related to my coursework.
    • Surveying the main methods in the field of content based 3D shape retrieval.
  • Jan 17 to Jan 23:
    • Trying to comprehend the basic digital video coding standards, including JPEG and MPEG.
    • Reading brief introduction about 3D technology, focusing on its current coding algorithms.
    • Exploring the main security concerns in cloud computing, particularly the concept of homomorphic encryption.