Video surveillance systems currently are undergoing a transition where more and more traditional analog solutions are being replaced by digital solutions. Compared with an analog video surveillance system, a digital video surveillance offers much better flexibility in video content processing or data transmission. At the same time, it, also, have ability to implement advanced features such as motion detection, facial recognition and object tracking. Applying digital systems, makes the security system capable of transmitting video through the Internet, so we need to study the different methods of video streaming over the network. Streaming is the process of playing a file while it is still downloading. Streaming video is a sequence of “moving images” that are sent in compressed form in a way that it can start being proceed before it is completely received like video clips on a Web page.
Here, some of the network protocols used in video streaming are described. The focus is on the features of most important protocols in video surveillance including TCP, UDP and RTSP.
Protocols in streaming technology:
Protocols are the rules implemented for a particular technology, which in streaming technology are used to carry message packets, and communication takes place only through them. Some of the protocols used in streaming technology are described as follows:
SDP, standing for Session Description Protocol, used to describe multimedia sessions in a format understood by the participants over a network. The purpose of SDP is to convey information about media streams in multimedia sessions to help participants join or gather information of a particular session. In fact, SDP conveys information such as session name and purpose, times the session is active, codec format, media in ProstaStream the session, Information to receive those media (addresses, ports, formats and so on). A participant checks these information and takes the decision about joining a session.
SDP is aimed primarily for using in large WANs (Wide-Area Network) including the internet. However, SDP can also be utilized in proprietary LANs (Local Area Networks) and MANs (Metropolitan Area Networks).
Dynamic Host Configuration Protocol (DHCP) is a network protocol that enables a server to automatically assign a dynamic IP address to each device that connected to the network. By this assigning, a new device can be added to a network without the bother of manually assigning it a unique IP address. The introduction of DHCP eased the problems associated with manually assigning TCP/IP client addresses, resulting in flexibility and ease-of-use to network administrators.
DHCP is not a secure protocol, since no mechanism is built to allow clients and servers to authenticate each other. Both are vulnerable to deception, as one computer can pretend to be another.
Real-Time Transport Protocol (RTP) is an internet protocol standard to manage the real-time transmission of multimedia data over unicast or multicast network services. In other words, RTP defines a standard packet format to deliver real-time audio and video over IP networks. RTP does not guarantee real-time delivery of data, but it provides mechanisms for the sending and receiving applications to support streaming data. It is utilized in conjunction with Real-Time Transport Control Protocol (RTCP) to ensure that monitor data delivery for large multicast networks is provided and Quality of Service (QOS) can be maintained. Monitoring is used to detect any packet loss and to compensate any delay jitter.
RTP is used extensively in communication and applications which involve streaming media such as telephony or video teleconference applications. The recent application of RTP is the introduction of VoIP (Voice over Internet Protocol) systems which are becoming very popular as alternatives to regular telephony circuits.
Real-Time Control Protocol (RTCP) is the control protocol that works in conjunction with RTP to monitor data delivery on large multicast network. Providing feedback on the quality of service being provided by RTP, is the RTCP’s primary function.
RTCP control packets are periodically transmitted by each participant in an RTP session to all other participants. It is important to point out that RTCP carries statistical and control data, while RTP delivers the data. RTCP statistics contain sender or receiver reports such as the number of bytes sent, packets sent, lost packets and round trip delay between endpoints. RTCP provides a way to correlate and synchronize different media streams that have come from the same sender.
The main protocol in streaming is Real Time Streaming Protocol (RTSP), which used to transmit stored or live media data over the IP network. It provides client controls for random access to the stream content. This application layer protocol is used to establish and control either a single or several time-synchronized streams of continuous media such as video and audio. RTSP servers use the Transport RTP in conjunction with RTCP, so that RTP acts as the transport protocol and RTCP will be applied for QOS (Quality of Service) analysis and also synchronization between video and audio streams. Consequently, RTSP can both control and deliver real-time content. The RTP and RTCP are independent of the underlying transport and network layers. In fact, RTSP is considered more than a protocol and provides a simple set of basic commands to control the video stream.
RSTP is based on the bandwidth available between the client and server so that breaks the large data into packet sized data. This, applied to live data feeds as well as stored. So, client software can play one packet, while decompressing the second packet and downloading the third media files. This enables the real-time file to be heard or viewed by the user immediately without downloading the entire media file and also without feeling a break between the data files.