Performance Of Video Chat Applications Under Congestion Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Performance of video chat applications under congestion is about analyzing the performance of 4 popular video chat applications like Skype, windows live messenger, xlite, eyebeam. How these act under the change of available bandwidth, bit torrent traffic, http presence and packet loss.

In a high speed internet always the uplink speed will differ compared to downlink which is same in the different technologies used such as ASDL, cable and satellite as it will not cause problems for web browsing and video streaming. But in the case of video chat application the user needs to perform dual link where he needs to send and receive data simultaneously. So, both uplink and downlink needs to be performed continuously at same speeds such that video chat can be performed better. But presence of cross traffic creates congestion which effects uplink which in turn affects the video chat. To perform better, attention should be made on uplink.

Congestion happens when the bandwidth is shared among multiple competing flows and queues fill up quickly and at some point it will over flow. Different video chat applications acts differently when there is congestion either by increasing the congestion or by maintaining equal bandwidth. This can be analyzed by measuring http and bit torrent traffic competing with audio and video traffic.

There can be some random losses which may happen by their medium itself. These losses are not treated as the congestion losses but may happen by the wireless networks. So to detect the differences between them concentration should be made on the congestion loss.

Related work to this application:

There are many popular video streaming sites which have some controlled mechanisms to overcome these problems. YouTube, Netflix are some sites which come under this scenario. Video streaming over several heterogeneous environments is proposed for this. As streaming over TCP has some delays in it transmission over UDP is preferred. However congestion can be controlled by adjusting the transmission rate. When there is heavy transmission rate and due to some heavy traffic of bits scenarios like packet loss can be seen. When both the audio and the video streaming are compared audio calls streaming where cited to be more effective. Also using these video streaming sites on the operating systems with higher configurations there can be many chances of controlling these congestion in video chatting.

There can be seen two types of losses as in the random losses and the congestion losses. When there was a comparison made between these two there attained a lot of information like only the packet loss doesn't come due to congestion but also can happen due to loss of signals, co-channel interference…etc.

Though they both come under the same scenario, there can be cited a lot of difference like if there is a packet loss due to some loss of connection and the user thinks that this happens due to congestion hence he keeps sending this packets at a slower rate but still finds packet loss here. Hence even if there happens congestion there should be some immediate mechanisms to overcome these.

This situation can be slightly minimized by designing an algorithm for these where we can use this relative-one way trip time(ROTT) as this shows the actual differentiation for the occurrence of congestion whether it happened due to the loss of packets or may be due to the loss of connection.

Measurements using experiments:

Let us look at an example where we have a desktop PC and two Ethernet cards where we use this desktop PC as gateway and by running a dummy net application throughout. By running the whole application and also by checking the results of these we can analyze the flow of bits and also can attain the reason for this congestion.

These results can be achieves by comparing the IM's to cross traffic of messages and can also view the random congestion. A scenario of chatting by both voice and also video chat are considered in here for experimenting.

Change in the Bandwidth Experiment:

Let us now consider an example where we update the available bandwidth value and increase them sequentially for every step and this method is called as step by step method as we have an updation of bandwidths for every step. Let us now consider some sites like Skype, Xlite and Live beam and depending on congestion level we can see how the application changes the results.

The XLITE doesn't support streaming with this bandwidth and attains packet loss .For this it uses Forward Error Correction for rectifying this and working on audio options. By this we can see that though XLITE has a poor audio quality it doesn't undergo any congestion regularly.

The Eye beam uses FEC technique when it finds high congestion as it tries to keep the audio and video streams running to an acceptable level. But this can't support other congestions and moreover after the bandwidth keeps increasing still transmission rate can't able to reach its original level.

Whereas, Skype became popular compared to other IM clients because Skype changes its transmission rate according to the bandwidth available. As it uses RTT and JITTER

Which is more effective compared to other video chat applications.

The next popular application is Windows live messenger which drops its transmission rate when it sees its congestion and when it reaches lowest terms possible then it disables the video and tries to keep the audio active by using FEC technology. Compared to the skype once it starts reallocate its bandwidth .Windows live messenger will slowly increase its transmission rate and takes some time to reach its original state.

By analyzing the performance of these 4 video chat applications Skype and Windows live messenger will decrease its video rate and overall quality by creating still images and no packet loss during congestion and whereas the XLITE and Eyebeam tries to keep its high rates and high quality. But by the end user experience the first two process Skype and Windows live messenger will be more effective as it decreases its transmission rate according to its bandwidth and increase when available and where as the second process will be less effective as it cannot increase its transmission rate when the bandwidth is available and there would be more packet loss.

Finally the video chat applications should keep their video codec's low as possible to run audio to satisfactory level. And Video codec's should adapt the changes according to it bandwidth by supporting any requested bit rate. Both Skype and windows live messenger performs well as it can increase its transmission rates when the bandwidth is available and whereas the XLITE and eyebeam performs poor as they will not increase its transmission rate when the bandwidth is available.

HTTP as cross traffic

Now let's try to analyze the performance of the video chat applications under cross traffic which tries to compete with audio and video traffic in the available bandwidth.

As usually XLITE and eyebeam shows a poor performance as it will not increase its transmission rate when the bandwidth is available and tries to keep its same value before the congestion starts. As a result it undergoes packet loss. Skype tries to keep its transmission rate low according to its bandwidth and increases its transmission when the bandwidth is available. By this way Skype will always face low bandwidths in the HTTP traffic. Live messenger will act similar to the eyebeam and XLITE by not lowering its transmission which in turn causes higher packet loss.

Bit Torrent as cross traffic

Now, Let us try the experiment as how different video chat applications respond by introducing bit torrent as its cross traffic during a video chat.

Eye beam and XLITE respond the same way in the HTTP as cross traffic by not lowering its transmission rate which in turn makes a high packet loss. And whereas Skype lowers its transmission rate and will allow the bit torrent use the maximum bandwidth which will make Skype to lose its video and audio traffic. As soon as the bit torrent finishes its job Skype will regain its transmission rate quickly. Skype lowers its transmission rate because Bit Torrent opens many concurrent TCP connections.

Live messenger will act differently compared to the HTTP case by lowering its transmission rate drastically leaving more bandwidth to the Bit torrent as because cross traffic is higher compared to the HTTP and in turn it faces more packet loss and once the cross traffic is cleared it takes more time regain the transmission speed.

Random loss

Packet loss will effect the quality of the video chat and this is would be more significant when codec's like H.264 is used due the correlation of frames. Therefore a bandwidth adaptation algorithm needs to be implemented which reduces the packet loss. Always congestions are not the only loss happens there would be also wireless network loss which may create the congestion. Lowering the transmission rate will not resolve the problem. Some techniques like FEC needs to be implemented. To lower the congestion the differentiation needs to be done between random loss and congestion loss.

Let us analyze how different video chat applications can differentiate between random loss and congestion loss by introducing a dummy net with a random packet loss in two probable cases. One case is by introducing the loss at starting of the chat session and other in the middle of the chat session.

Both Eyebeam and XLITE will act same by not changing their rates and where as the Skype introduces FEC technique and increasing the transmission rate by 20 %.Skype became popular video chat application because it can monitor the packet delay and in turn easily detect both the losses.

Future work

we would like to improve the video chat application with more quality by introducing high speed internet and integrated webcams such that both audio and video can streamed continuously without any disturbances. And introduce a new algorithm which can allocate higher bandwidth during the video chat session and not allowing bandwidth to allocate for the other purpose until the video chat is streaming. When there are any losses occur during the time of video chat session by introducing different techniques like FEC such that it can reduce the packet loss and random loss.


In order to analyze the performance of the video chat applications, we introduced a test bed in order to know how they react to it and also introduced HTTP and Bit torrent traffic as how they compete with it.

The experiments showed that Skype will make its transmission rate either increase or decrease according to the bandwidth available. Also Skype uses different technologies such as RTT, Jitter and FEC to make its application more effective. Live messenger will drop its transmission rate when there is congestion and when the bandwidth is opened it takes long time to regain its original position. Eyebeam and XLITE will not lower it transmission rate whether or not the bandwidth is available which causes a heavy packet loss and low quality.