Five-minute technical talk | A brief analysis of the stress testing method of the audio and video communication and signaling SIP protocol

Five-minute technical talk | A brief analysis of the stress testing method of the audio and video communication and signaling SIP protocol

Part 01

Audio and video communication process

Audio and video communication technology relies on core audio and video encoding and decoding, channel transmission, network scheduling and other capabilities to provide users with low-latency, high-quality audio and video content. The complete process of audio and video communication includes the following steps: pre- and post-processing, acquisition, encoding, transmission, decoding, buffering, rendering, etc.

Figure 1 Audio and video communication process

Part 02

Audio and video communication related protocols

The protocols involved in audio and video communication are: RTP, RTCP, RTMP, RTSP, HTTP, HLS, SRT, SIP. RTP and RTCP are transport layer protocols, which rely on the underlying UDP protocol and are often used in conjunction with RTS live broadcast; RTSP, RTMP, HLS, SRT are application layer media transmission protocols, which are often used for live broadcast, interactive live broadcast, on-demand, etc.; SIP is a signaling control protocol that relies on the underlying UDP protocol and is used for media session initiation, termination, and modification control.

Table 1 Details of audio and video communication related protocols

Computer networks use a hierarchical design method. Layers are connected through inter-layer interfaces. Each layer completes a function through a specific protocol. Multiple layers are superimposed to complete the sending and receiving of the entire information. The relationship between the media communication protocol and the OSI protocol architecture is as follows:

Figure 2 Relationship between media communication protocols and OSI protocol architecture

Part 03

Central signaling control service based on SIP

Cloud Desk SIP (Session Initiation Protocol) is an application layer session initiation protocol that can be used to initiate, terminate, and modify media sessions. It is an important protocol in NGN, the next generation network, and a multimedia communication protocol developed by IETF. Participants in a session can communicate through multicast, mesh unicast, or a mixture of the two. Signaling refers to control instructions in a communication system, such as status reporting, configuration parameter distribution, and network resource scheduling. It is an important part of achieving audio and video communication. To achieve audio and video communication, it is necessary to exchange information through a signaling server: media information, network information, and specific services (for example, streaming, pausing, joining a room, muting, etc.)

Figure 3 Signaling control service process

Media information: Before the two ends communicate, the SDP (Session Description Protocol) session description protocol is used to understand the capabilities of both parties. The SDP media information carries what the codec is, whether audio and video are supported, what the encoding method is, etc.

picture

picture

Figure 4 Key attributes in the SDP session description protocol

Network information: When A communicates with B, the network-related information is first transmitted to the signaling server. The server helps you exchange it to the other end. After the other end gets your information, if it is in the same LAN, it will be transmitted directly through P2P. If not, it will first perform P2P traversal to see if it can be connected. If it can be connected, it will be transmitted. If not, it will be transferred.

Part 04

SIPP Performance Test

Before the SIPP test process, let's first understand the SIP session creation/termination process:

1. The caller sends a SIP INVITE request message (with SDP) to the called party to request to establish a session

2. The called party returns a SIP 200 OK response message (with SDP) to accept the session establishment request

3. The calling party sends a SIP ACK request message to confirm the establishment of the session.

4. Either party in the session can send a SIP BYE request message to request to end the session;

5. The other party returns a SIP 200 OK response message to accept the session end request.

Figure 5 SIP session creation/termination process

SIPP can be used to test many real SIP devices, such as SIP proxy, B2BUAS, SIP server, SIP/X gateway, SIPPBX, etc. It can simulate tens of millions of SIP proxies calling your SIP system.

❖ Taking UAC simulation as an example, the test steps are:

1. User operation port equipment management and control functions, such as streaming, pausing, PTZ control, etc.

2.xshell connects to the server where the signaling is located and executes the packet capture command tcpdump -i any -s 0 -w xx.pcap

3. Use xftp to synchronize the captured packet xx.pcap file to the local computer and use wireshark to view it.

4. Write a sipp script based on the sip interaction message (as shown in Figure 1 on the right)

5. Place the uac script in the server directory where sipp is deployed and execute the following command:

6.sipp -i 172.xx.xx.86 -p 5xxx5 -sf uac3.xml -inf data.csv 172.xxx.xxx.38:5xx0 -r 1 -l 10 -m 20

Figure 6 SIPP performance test script writing

Part 05

Conclusion

With the rapid development of the new generation of information technology, we have entered a new era of intelligence. As a quality assurance department, we need to have a deep understanding of the technologies involved in the business, and explore quality assurance methods to safeguard the development of the home security ecosystem business.

<<:  Five-minute technical talk | A brief analysis of the generation strategy and application scenarios of distributed UUID

>>:  By 2027, global 5G IoT roaming connections will reach 142 million

Recommend

How to promote 5G packages in small and medium-sized cities

From the perspective of package value, the curren...

Choosing the right communication mode for your IoT project

Before you embark on a new IoT project, you shoul...

Understand how HTTPS works

HTTPS, also known as HTTP over TLS. The predecess...

What is Bluetooth Low Energy?

Bluetooth Low Energy is a new Bluetooth wireless ...

GTI releases 2.3GHz spectrum industry joint statement

As 5G accelerates globalization, it will unlock u...

Why does the TCP protocol have a sticky packet problem?

The TCP/IP protocol suite establishes a conceptua...

Do you know all the HTTP protocols?

[[390013]] 1. HTTP protocol HyperText Transfer Pr...

Borui Data: Service-accessible data chain DNA

Today, those born after 1995 have gradually becom...