Video Streaming Over WLan
Academic Open Internet Journal
Page 1 of 9
www.acadjournal.com
Volume 14, 2005
MEDIA STREAMING OVER WLAN USING STREAM CONTROL TRANSMISSION PROTOCOL V.Mariappan P.Narayanasamy (
[email protected]) (
[email protected]) Department of Computer Science & Engineering Anna University, Chennai, INDIA – 600 025. Abstract Robust Media Streaming over 802.11 Wireless Local Area Network (WLAN) with Quality of Service is a very challenging task due to time-varying characteristics of wireless channel and limited resources. It has been done traditionally using Transmission Control Protocol (TCP) or User Datagram Protocol (UDP). UDP is preferred for media applications for timely delivery but it is not reliable. TCP is not effective enough for streaming applications because its window based congestion control doesn’t provide instant rate adaptation and it has the use of byte stream and single connection by the peer ends. This paper proposes the use of Stream Control Transmission Protocol (SCTP) for video streaming over wireless LAN. The benefit of using Stream Control Transmission Protocol (SCTP) in WLAN is its potential for its increased productivity within the scope of new data services. We use SCTP for transmission of audiovisual data since it is a reliable transport protocol operating on top of a potentially unreliable connectionless packet service such as IP. Its design includes appropriate congestion avoidance behavior and resistance to flooding and masquerade attacks. Keywords: WLAN, IEEE802.11b, Media streaming, SCTP 1. Introduction The use of IEEE 802.11 WLANs as an extension to the existing wired infrastructure, offering the convenience of mobility and portability in the enterprise environment, is growing at a rapid pace. The falling cost of WLAN products has also led to their increased use in consumer homes. Although currently WLANs are predominantly used for data transfer, the higher bandwidth provided by new WLAN technologies such as IEEE 802.11a and IEEE 802.11g will ultimately lead to their increasing use for multimedia transmissions. However, to achieve a high level of acceptability and proliferation of wireless multimedia, in particular wireless video, several key requirements need to be satisfied in order to provide a reliable and efficient transmission Video Transmission over wireless LAN poses many challenges, including coping with bandwidth variations, data losses and heterogeneity of the receivers. Currently, each network layer provides a separate solution to these challenges by providing its own optimized adaptation and protection mechanisms. However this layered strategy does not always result
http://www.acadjournal.com/2005/V14/part6/p3/
05-Dec-07
Video Streaming Over WLan
Page 2 of 9
in an optimal overall performance for the transmission of video. Traditional TCP does not provide the exact functionality needed by the application or provides more functionality than is needed. In the first case, the application needs to do extra work to be able to use TCP, while in the latter; the extra functionality of TCP might be an overhead. For instance, many applications need reliable message delivery, but TCP is a byte stream oriented protocol. Message-oriented applications achieve their required functionality by delineating the TCP stream into messages. Additionally, TCP provides both strict ordering and reliability, but many applications may not need both. In this case, the applications will incur an overhead in using TCP. It is clear that, there is a need for a protocol that would allow both strict ordering and the partial ordering of data as required by the application along with message oriented transmission, all of these and some more desirable features are presented by SCTP and it serves to solve the above-defined problem The rest of this paper is structured as follows: Section 2 gives brief information about SCTP, Section 3 talks about the System design for media streaming in WLAN, Section 4 deals with Implementation of the design given in the previous section, Section 5 is about the Conclusion and future extension of the paper. 2. Stream Control Transmission Protocol (SCTP) SCTP [8,9,10,11,15,16] can be used as the transport protocol for applications where monitoring and detection of loss of session is required. For such applications, the SCTP path/session failure detection mechanisms, especially the heartbeat, will actively monitor the connectivity of the session. SCTP distinguishes different streams of messages within one SCTP association. This enables a delivery scheme where only the sequence of messages needs to be maintained per stream (partial in-sequence delivery), which reduces unnecessary head-of-line blocking between independent streams of messages. SCTP operates on two levels: z
Within an association the reliable transfer of datagrams is assured by using a checksum, a sequence number and a selective retransmission mechanism. Without taking the initial sequence into account, every correctly received data chunk is delivered to a second, independent level.
The second level realizes a flexible delivery mechanism, which is based on the notion of several independent streams of datagrams within an association. Chunks belonging to one or several streams may be bundled and transmitted in one SCTP packet provided they are not longer than the current path MTU. Detection of loss and duplication of data chunks is enabled by numbering all data chunks in the sender with the so-called Transport Sequence Number (TSN). The acknowledgements sent from the receiver to the sender are based on these sequence numbers. Retransmissions are timer-controlled. The timer duration is derived from continuous measurements of the round trip delay. Whenever such a retransmission timer expires, (and congestion control allows transmissions) all non-acknowledged data chunks are retransmitted and the timer is started again doubling its initial duration (like in TCP). When the receiver detects one or more gaps in the sequence of data chunks, each received SCTP packet is acknowledged by sending a Selective Acknowledgement (SACK), z
http://www.acadjournal.com/2005/V14/part6/p3/
05-Dec-07
Video Streaming Over WLan
Page 3 of 9
which reports all gaps. The SACK is contained in a specific control chunk. Whenever the sender receives four consecutive SACKs reporting the same data chunk missing, this data chunk is immediately retransmitted (fast retransmit). Some of the key advantages of using SCTP are given below. ¾ Flow Control ¾ Selective Acknowledgement ¾ Congestion Control ¾ Multihoming SCTP Packets The protocol data units (PDU) of SCTP are called SCTP packets. SCTP runs over IP, an SCTP packet forms the payload of an IP packet. An SCTP packet is composed of a common header and chunks. Multiple chunks may be multiplexed into one packet up to the Path-MTU size. A chunk may contain either control information or user data. SCTP States The initialization of an association is completed on both sides after the exchange of four messages. The passive side (let's call it server) does not allocate resources until the third of these messages has arrived and been validated. That is to ensure that the association setup request really does originate from the right peer (without the possibility of blind spoofing). SCTP streams SCTP separates the reliable transfer of datagrams from the delivery mechanism. This makes it possible to adapt protocol usage to the specific needs of the applications using SCTP. Some applications may only need partial ordering of datagrams while others might even be satisfied with a reliable transfer that does not guarantee any in-sequence maintenance at all. SCTP distinguishes different streams of messages within one SCTP association. This enables a delivery scheme where only the sequence of messages needs to be maintained per stream (partial in-sequence delivery), which reduces unnecessary head-of-line blocking between independent streams of messages. Furthermore, SCTP provides a mechanism for bypassing the sequenced delivery service, so that messages are delivered to the user of SCTP as soon as they are completely received (order-of-arrival delivery). Flow control and congestion control in SCTP have been designed in a way which assures that SCTP traffic behaves in the network in the same way as TCP traffic does. This enables a seamless introduction of SCTP services into existing IP networks. 3. Design The proposed architectural design is shown in Figure 1. The transmission in SCTP was done by means of transfer of SCTP packets. The protocol data units (PDU) of SCTP are called SCTP packets. SCTP runs over IP and SCTP packet forms the payload of an IP packet. An SCTP packet is composed of a common header and chunks as shown in Figure 2. Multiple chunks may be multiplexed into one packet up to the Path-Maximum Transmission Unit (MTU) size. A chunk may contain either control information or user data. The structure of network packets as sent by an SCTP endpoint, as well as the different types of data that could be sent are shown in the diagram. The SCTP message format naturally allows support of
http://www.acadjournal.com/2005/V14/part6/p3/
05-Dec-07
Video Streaming Over WLan
Page 4 of 9
bundling of multiple DATA and control chunks in a single message, to improve transport efficiency. Use of bundling is controllable by the application, so that bundling of initial transmission can be prohibited. Bundling will naturally occur on retransmission of DATA chunks, to further reduce any chance of congestion.
Figure 1. Architectural Design
Instead of the three-phase connection setup for TCP, the initialization of an association is completed after the exchange of four messages. The passive side of the as-association does not allocate resources for the association until the third of these messages has arrived and been validated. The Association is established between the Client and the Server. During the course of the Association the Server and Client take various different states. The state transition diagrams of the Server and the Client are shown in Figure 3 and Figure 4 respectively.
Figure 2. SCTP Packet Format
http://www.acadjournal.com/2005/V14/part6/p3/
05-Dec-07
Video Streaming Over WLan
Page 5 of 9
Figure 3 State Transition Diagram of the Server
4. Implementation The implementation was done in IEEE 802.11a WLAN using VC++ 6.0. The media data can be captured using real time digital camera and from the database for on demand delivery. The media data along with the audio is mixed and is streamed in the wireless network as an SCTP packet. Since SCTP runs over IP, an SCTP packet forms the payload of an IP Packet. An SCTP packet is composed of a common header and chunks. Multiple chunks may be multiplexed into one packet up to the path-MTU size. A chunk may contain either control information or user data. Hence we multiplex the visual, audio and control information chunks into an SCTP packet up to the said Path-
http://www.acadjournal.com/2005/V14/part6/p3/
05-Dec-07
Video Streaming Over WLan
Page 6 of 9
Figure 4 State Transition Diagram of the Client
MTU size. Hence the allowed hosts associated with the Access Points (APs) can receive the SCTP packets. The advantage here from the users perspective is that as soon as the SCTP packets are being received, the media playback starts using media player, since a packet contains all the information for the playback to start. The client host need not wait for the completion of the reception of the entire media information to have a playback. As the playback continues the other packets transmitted from the server gets received, allowing a continuous playback. Distribution of packets did not create any problem. Figure 5 shows a sample output of a video clip using SCTP transmission.
http://www.acadjournal.com/2005/V14/part6/p3/
05-Dec-07
Video Streaming Over WLan
Page 7 of 9
Figure 5 Sample Output
5. Conclusion This paper presents the concept of using SCTP to develop a framework for media streaming over wireless LAN. The issue of media streaming over WLAN has been taken care by using SCTP and proof of concept implementation has been done. This work overcomes delay experienced by end-hosts otherwise. Also this implementation overcomes flow control and congestion control problems. In order to use the system for other applications security issues must be addressed. The usefulness of SCTP can further be exploited by using it in high loss environment and can be used in vulnerable environment to experience the security features of the SCTP against Masquerade Attack. References: [1]
Armando L. Caro Jr., “SCTP: A New Internet Transport 1. Layer Protocol”, University of Delaware URL: http://star.millersville.edu/symposium/spring2003/SCTPTutorial.pdf
[2]
Armando L. Caro Jr., Keyur Shah, Janardhan R. Iyengar, Paul D. Amer “Congestion Control: SCTP vs TCP “, Protocol Engineering Lab, Computer and Information Sciences, University of Delaware
[3]
A. Jungmaier, E.P Rathgeb, M. Schopp, M. Tüxen, “SCTP - A multi-link end-to-end protocol for IP-based networks,”AEÜ - International Journal of Electronics and Communications, 55 (2001) No.1, pp. 46-54.
[4]
James Noonan, Philip Perry & John Murphy “A Study of SCTP Services in a MobileIP Network”, Performance Engineering Laboratory, Dublin City University
http://www.acadjournal.com/2005/V14/part6/p3/
05-Dec-07
Video Streaming Over WLan
Page 8 of 9
[5]
Susie J. Wee and John G. Apostolopoulos, “Secure Scalable Video Streaming for wireless networks,” IEEE International Conference on Acoustics, Speech and Signal Processing, May 2001.
[6]
Gamze Seckin and Roger Brooks, “Challenges of Wireless Media Streaming,” Member IEEE respectively.
[7]
Qian Zhang, Wenwu Zhu, and Ya-Qin Zhang, “Network-Adaptive Scalable Video Streaming Over 3G Wireless Network,” Microsoft Research, China.
[8]
Steven M. Bellovin, “ IPsec Issues for SCTP,” AT&T Labs Research
[9]
Ivan Arias Rodriguez, “Stream Control Transmission Protocol - The Design of a New Reliable Transport Protocol for IP Networks”.
[10]
R. Stewart, Q. Xie et. al, “SCTP -- The Stream Control Transmission Protocol, RFC 2960.
[11]
Jungmaier A. “SCTP for Beginners”, Computer Networking Technology Group, 2001 URL: http://tdrwww.exp-math.uni-essen.de /inhalt/forschung/sctp_fb/
[12]
Rajesh Rajamani, Sumit Kumar, Nikhil Gupta “ SCTP versus TCP: Comparing the Performance of Transport “, Protocols for Web Traffic, Computer Sciences Department, University of Wisconsin-Madison
[13]
Randal Stewart and Chris Metz, “SCTP-A New Transport Protocol for TCP/IP”, IEEE Internet Computing, Nov.-Dec 2001 URL: http://mmlab.snu.ac.kr/~kafle/sctp.pdf
[14]
Rob Brennan1 and Thomas Curran2,” SCTP Congestion Control: Initial Simulation Studies“, Teltec DCU, Dublin 9, Ireland
[15]
SCTP overview” URL:http://www.sctp.org/sctpoverview.html
[16]
“SCTP tutorial” URL: http://www.iec.org/online/tutorials/sctp/
[17]
Shaojian Fu Mohammed Atiquzzaman “Effect of Delay Spike on SCTP, TCP Reno, and Eife in a Wireless Mobile Environment” School of Computer Science University of Oklahoma, Norman
[18]
Shaojian Fu and Mohammed Atiquzzaman “Improving End-to-End Throughput of Mobile IP using SCTP “, Telecommunications and Networks Research Lab, School of Computer Science, University of Oklahoma, Norman, OK 73019-6151, USA.
[19]
Stewart et. al. “Stream Contol Transmission
http://www.acadjournal.com/2005/V14/part6/p3/
Protocol RFC-2960”, Network Working
05-Dec-07
Video Streaming Over WLan
Group, October 2000
Page 9 of 9
URL: http://www.ietf.org/rfc/rfc2960.txt
[20]
Thomas Ravier, Rob Brennan and Thomas Curran “‘Experimental studies of SCTP multi-homing“ Teltec DCU, Dublin 9, Ireland
[21]
Wei Xing, Holger Karl, Adam Wolisz “M-SCTP: Design and Protypical implementation of an end-to-end mobilty concept” University Berlin, Telecommunication Technical Networks Group, Einsteinufer 25, 10587 Berlin, Germany
Technical College - Bourgas, All rights reserved, © March, 2000
http://www.acadjournal.com/2005/V14/part6/p3/
05-Dec-07