Is SOAP used by ONVIF too heavy for IP security devices?
One argument against SOAP used by ONVIF is that SOAP messages are too heavy and complex. Let us take a look at ONVIF messages in the network traffic scenario.
Firstly, ONVIF is usually used for initial setup. Once video streaming is started, ONVIF is completely out of the picture unless some control actions are needed.
Secondly, let us take a look at the network traffic volume of IP devices (e.g. IP cameras). With the popularizing of HD IP cameras, the typical IP camera network traffic volume has been steadily increasing. For the sake this discussion, let us look at the scenario of low definition VGA cameras with H.264 (the best) compression. In other words, we are looking at the low end of the traffic volume. The I-frames in this case are about 30KB each, and inter-frames (P-frames and B-frames) are about 1 KB (very low end). Suppose an I-frame is sent every 2 seconds, and the frame rate is only 5 fps. This means the traffic volume is about 20KB/second. An ONVIF SOAP message of relative Pan/Tile move is about 1.3KB. Suppose we send such command twice per second (unusually frequent). This represents no more than 15% of the traffic volume. In real life, the camera definition and frame rate are usually much higher. PTZ commands are rarely sent more than once per second because we are dealing with a mechanical component and the video stream usually has some latency in giving the feedback for PTZ adjustment.
Looking at these numbers, SOAP messages do not seem to be a significant burden on either the client or the server.
Does SOAP message parsing consume a lot of power. The complexity of SOAP messages is not even remotely close to that of video compression or decompression. To be fair, video codec is often handled by a GPU saving the CPU from doing it. However parsing a 1KB xml document that is assumed to be well formed cannot be a computationally intensive task unless the code is poorly constructed.
Though I do not believe SOAP is the best choice for ONVIF, and I personally prefer Json-based messages, but I do not believe SOAP is too much for modern IP security devices or computing devices running ONVIF conformant clients.