SIP (Session Initiation Protocol) signaling transmission and flow control method and device and computer equipment

By using traffic prediction model and differential update mechanism in SIP signaling transmission, the problems of redundant signaling transmission and network congestion in traditional SIP signaling interactions are solved, and more efficient signaling transmission and a more stable communication system are achieved.

CN119697126AActive Publication Date: 2025-03-25BEIJING ZHISHENG VISION TECH CO LTD

Patent Information

Application Number
CN202510206366.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-25
Publication Date
2025-03-25
Estimated Expiration
2045-02-25

AI Technical Summary

Technical Problem

There are redundant signaling transmission and network congestion problems in traditional SIP signaling interactions, resulting in increased system computing load, improved response delay and decreased communication quality.

Method used

The SIP signaling traffic prediction value is obtained through the traffic prediction model, and the traffic regulation strategy is triggered, including allocating traffic priority according to the signaling type, forwarding high-priority signaling first, and using a differential update mechanism to transmit only data packets with changing states.

Benefits of technology

Effectively alleviate network congestion, reduce network latency, improve the real-time and stability of communication systems, while reducing redundant data transmission, reducing network bandwidth usage and server processing burden.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119697126A_ABST
    Figure CN119697126A_ABST
Patent Text Reader

Abstract

The invention is suitable for the technical field of communication, and provides an SIP signaling transmission and flow control method and device and computer equipment, and the method comprises the steps: obtaining an SIP signaling flow prediction value in an SIP network through a flow prediction model, and triggering a flow adjustment strategy when the SIP signaling flow prediction value exceeds a threshold value; the SIP network comprises at least one SIP device and at least one SIP server, any SIP device monitors the state of itself in real time, if state change information needing to be synchronized appears, a difference data packet is generated according to the state change information, and the difference data packet is transmitted to the corresponding SIP server, so that the SIP server updates the stored state information of the SIP device according to the difference data packet; and otherwise, sending a heartbeat signaling to complete SIP periodic registration. On one hand, signaling accumulation and network congestion are effectively relieved through flow prediction and signaling priority distribution, and on the other hand, redundant data transmission is reduced through difference updating.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of communication technology, and in particular, relates to a SIP signaling transmission and flow control method, device and computer equipment. Background Art

[0002] With the rapid development of real-time communication technology, SIP (Session Initiation Protocol) has become the main technology for audio and video calls, instant messaging and multimedia communications. In the traditional SIP signaling interaction process, there are the following problems: First, in the traditional registration process, even if the device status has not changed, a complete REGISTER request needs to be sent periodically, and the redundant signaling transmission phenomenon is relatively serious; second, when the device scale is large or the instantaneous concurrency is high, the server needs to process a large amount of redundant signaling, which not only increases the computing load of the system, but also leads to increased response delays; in addition, SIP signaling traffic has obvious timing fluctuation characteristics, which is easy to cause network congestion during peak traffic periods, and delay-sensitive signaling (such as INVITE) cannot be processed in time, thus affecting the communication quality. Summary of the invention

[0003] The embodiments of the present application provide a SIP signaling transmission and flow control method, apparatus, and computer equipment, which can solve the problems of network congestion and redundant signaling transmission.

[0004] In a first aspect, an embodiment of the present application provides a SIP signaling transmission and flow control method, including: The traffic prediction model is used to obtain the predicted value of SIP signaling traffic in the SIP network. When the predicted value of SIP signaling traffic exceeds a threshold, a traffic regulation strategy is triggered. The traffic regulation strategy includes: allocating traffic priority to SIP signaling according to the type of SIP signaling, and forwarding high-priority signaling first; delay-sensitive signaling has a higher priority than other types of SIP signaling; The SIP network includes at least one SIP device and at least one SIP server. Any SIP device monitors its own status in real time. If there is status change information that needs to be synchronized, a difference data packet is generated according to the status change information, and the difference data packet is transmitted to the corresponding SIP server, so that the SIP server updates the status information of the SIP device stored therein according to the difference data packet; otherwise, a heartbeat signaling is sent according to a preset time period to complete the SIP periodic registration.

[0005] Exemplarily, the method further includes: The SIP devices in the above SIP network are grouped according to the target characteristics of the SIP devices, wherein the characteristic values ​​of the target characteristics of the SIP devices in each group are the same; and the time for each group of SIP devices to send a registration request is allocated according to the characteristic value of the target characteristics; When the SIP devices in the above SIP network are started, each group of SIP devices sends a registration request to the SIP server according to the allocated time for sending the registration request.

[0006] Exemplarily, the method further includes: The SIP server caches the static parameters of any SIP device according to the first registration request of the SIP device; After receiving the difference data packet from any SIP device, the SIP server performs parameter verification and status update according to the status change information in the difference data packet and the static parameters of the SIP device cached by itself.

[0007] Exemplarily, the method further includes: Any SIP device generates an INVITE message by filling in the required dynamic fields in a predefined INVITE template; the above INVITE template includes the INVITE message architecture and the static fields required by the INVITE message.

[0008] Exemplarily, the method further includes: For any SIP device, based on the historical session data with the peer device, predict the probability that the peer device will give a correct response within the preset response time. If the predicted probability is greater than the threshold, send an ACK message in advance; otherwise, wait for the peer device to respond normally before sending an ACK message.

[0009] Exemplarily, sending an ACK message includes: An ACK message is generated by filling in the required dynamic fields in a predefined ACK template; the above ACK template includes the ACK message architecture and the static fields required for the ACK message.

[0010] Exemplarily, obtaining a SIP signaling traffic prediction value in a SIP network through a traffic prediction model includes: The historical SIP signaling traffic time series is used as the input of the traffic prediction model to obtain the SIP signaling traffic prediction value output by the traffic prediction model; the above traffic prediction model is generated based on the training of the long short-term memory network LSTM model.

[0011] In a second aspect, an embodiment of the present application provides a SIP signaling transmission and flow control device, including: The flow control module is used to obtain the SIP signaling flow prediction value in the SIP network through the flow prediction model, and trigger the flow regulation strategy when the SIP signaling flow prediction value exceeds the threshold; the flow regulation strategy includes: allocating flow priority to SIP signaling according to the SIP signaling type, and forwarding high-priority signaling first; delay-sensitive signaling has a higher priority than other types of SIP signaling; the SIP network includes at least one SIP device and at least one SIP server; The signaling transmission module is used to control any SIP device to monitor its own status in real time. If there is status change information that needs to be synchronized, a difference data packet is generated according to the status change information, and the difference data packet is transmitted to the corresponding SIP server, so that the SIP server updates the status information of the SIP device stored therein according to the difference data packet; otherwise, a heartbeat signaling is sent according to a preset time period to complete the SIP periodic registration.

[0012] In a third aspect, an embodiment of the present application provides a computer device, including: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the method described in any one of the first aspects is implemented.

[0013] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements any one of the methods described in the first aspect.

[0014] In a fifth aspect, an embodiment of the present application provides a computer program product, which, when executed on a computer device, enables the computer device to execute any of the methods described in the first aspect above.

[0015] It can be understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant description of the first aspect mentioned above, and will not be repeated here.

[0016] Compared with the prior art, the embodiments of the present application have the following beneficial effects: the present application provides a SIP signaling transmission and flow control method, which uses a flow prediction model to obtain the signaling flow prediction value in the SIP network in real time, and triggers the flow regulation strategy to optimize signaling transmission when the flow exceeds the threshold; the SIP device monitors its own status in real time, generates a difference data packet when the status changes and transmits it to the server to update the status information, and only sends a heartbeat signaling to complete the periodic registration when the status does not change. On the one hand, the present application can dynamically optimize signaling transmission, reasonably allocate signaling priority, ensure that high-priority signaling is transmitted first during traffic peaks, effectively alleviate network congestion, reduce network delays, and improve the real-time and stability of the communication system; on the other hand, a difference update mechanism is adopted to only transmit difference data packets with state changes, which greatly reduces redundant data transmission, reduces network bandwidth occupancy and server processing burden, and improves the resource utilization efficiency and response speed of the system. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0018] Figure 1 This is a schematic diagram of a SIP registration process provided by an embodiment of the present application; Figure 2 This is a schematic diagram of a Digest authentication process provided by an embodiment of the present application; Figure 3 This is a schematic diagram of a process flow of a difference update mechanism, a group registration mechanism and a pre-caching mechanism working in collaboration provided by an embodiment of the present application; Figure 4 This is a schematic diagram of the use process of a quick invitation template provided in an embodiment of the present application; Figure 5 It is a flowchart of a pre-analysis ACK mechanism provided by an embodiment of the present application; Figure 6 It is a flow chart of a dynamic flow regulation strategy provided by an embodiment of the present application; Figure 7 It is a structural diagram of a SIP signaling transmission and flow control device provided in an embodiment of the present application; Figure 8 It is a structural diagram of a computer device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0019] In the following description, specific details such as specific system structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present application. However, it should be clear to those skilled in the art that the present application may also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present application.

[0020] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, wholes, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or combinations thereof.

[0021] It should also be understood that the term “and / or” used in the specification and appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0022] As used in the specification and appended claims of this application, the term "if" can be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]", depending on the context.

[0023] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.

[0024] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

[0025] The present application provides a SIP signaling transmission and flow control method, the method comprising: The traffic prediction model is used to obtain the predicted value of the SIP signaling traffic in the SIP network. When the predicted value of the SIP signaling traffic exceeds a threshold, a traffic regulation strategy is triggered. The traffic regulation strategy includes: allocating traffic priorities to SIP signaling according to the type of SIP signaling, and forwarding high-priority signaling first; delay-sensitive signaling has a higher priority than other types of SIP signaling; the SIP network includes at least one SIP device (or user agent) and at least one SIP server; Any SIP device monitors its own status in real time. If there is status change information that needs to be synchronized, a difference data packet is generated according to the status change information, and the difference data packet is transmitted to the corresponding SIP server, so that the SIP server updates the status information of the SIP device stored therein according to the difference data packet; otherwise, a heartbeat signaling is sent according to a preset time period to complete the SIP periodic registration.

[0026] Through the above method, on the one hand, the present application can dynamically optimize signaling transmission through traffic prediction and adjustment strategies, reasonably allocate signaling priorities, ensure that high-priority signaling is transmitted first during traffic peaks, effectively alleviate network congestion, reduce network latency, and improve the real-time and stability of the communication system; on the other hand, it adopts a differential update mechanism to only transmit differential data packets with changed status, greatly reducing redundant data transmission, reducing network bandwidth occupancy and server processing burden, and improving the system's resource utilization efficiency and response speed.

[0027] The technical solutions in the embodiments of the present application are described in detail below. It should be understood that the order of the sequence numbers of the steps in the embodiments described below does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0028] The technical solutions in the embodiments of the present application are described in detail below.

[0029] (1) Signaling transmission optimization In terms of signaling transmission, the present application embodiment has designed a SIP registration process in detail, which is described in detail below: (1.1) Registration process optimization (1.1.1) Differential update mechanism The traditional SIP registration process has the following problems: SIP devices need to periodically send REGISTER requests (registration requests) to update the registration information recorded by the server. Even if there is no state change, complete data must be transmitted. When multiple devices register at the same time, the signaling volume is large, which will increase the server load and communication delay. This patent adopts a differential update mechanism from the perspective of the registration process. It should be noted that REGISTER requests usually require users to prove the legitimacy of their identity to the server through an authentication mechanism (such as Digest authentication). The server will verify the user's identity information (such as user name, password, etc.) to ensure that only legitimate users can register.

[0030] To address the above issues, the embodiment of the present application reduces the amount of redundant data by transmitting the device status change field only when the device status changes when requesting periodic registration in REGISTER. If there is no status change, only the heartbeat signaling needs to be sent to maintain the registration status without sending a complete REGISTER message. Figure 1 A schematic diagram of a SIP registration process provided by an embodiment of the present application is shown. Figure 1 As shown in the figure, the process specifically includes: S101, device status change detection.

[0031] In this step, the SIP device detects its own status in real time. Exemplarily, the status information (or fields) of the SIP device include: device identification, IP address, port number, authentication information (key or verification information of the device) and device operation status. When any status information of the SIP device is detected to have changed, the specific changes are recorded. For example, if the IP address of the SIP device changes from 192.168.0.10 to 192.168.0.11, and the communication port changes from 5060 to 5062, the above two status information changes are detected and the specific changes are recorded.

[0032] S102, generating a difference data packet.

[0033] In this step, the SIP device generates a difference data packet according to the detected state change information that needs to be synchronized.

[0034] Exemplarily, the difference data packet may only contain information different from the initial state information of the SIP device. For example, the difference data packet format may be {"IP":"192.168.0.11","Port":"5062"}, that is, only containing the changed IP address and communication port number.

[0035] If the SIP device status information has not changed, it is only necessary to periodically send simple heartbeat signaling to the SIP server to maintain the registration status without generating differential data packets.

[0036] S103, transmitting a difference data packet.

[0037] In this step, the SIP device transmits the difference data packet to the SIP server through the REGISTER request to avoid repeated transmission of the complete registration information. The following is an example of the difference data packet transmission: When registering for the first time, the SIP device sends a complete REGISTER request to the SIP server, including all necessary fields: REGISTER sip: example.com SIP / 2.0 Via: SIP / 2.0 / UDP 192.168.0.10:5060;branch=z9hG4bK001 Contact:<sip:user1@192.168.0.10:5060> Expires: 3600 Call-ID: abc123@example.com CSeq: 1 REGISTER The REGISTER request contains the target domain of the registration request, the SIP protocol version used, the path information of the request (Via), the branch identifier (BRANCH_ID), the SIP device address information (Contact), the validity period of the registration information (Expires), the session identifier (CALL_ID), and the sequence number (CSeq).

[0038] When the SIP device status changes, the SIP device only sends differential data packets to the SIP server based on the changed status information: REGISTER sip: example.com SIP / 2.0 Call-ID: abc123@example.com CSeq:2 REGISTER Status-Change: { "IP": "192.168.0.11", "Port": "5062"} The REGISTER request contains the target domain of the registration request, the SIP protocol version used, the session identifier (CALL_ID), the sequence number (CSeq), and the changed state information (IP address and communication port number).

[0039] By comparing the data packet sent during the first registration with the difference data packet, it can be seen that the difference data packet in the embodiment of the present application effectively reduces the amount of data that needs to be transmitted to the SIP server when the SIP device state changes.

[0040] S104, status update processing.

[0041] Exemplarily, in this step, after receiving the difference data packet from the SIP device, the SIP server verifies the integrity and legitimacy of the difference data (such as through authentication information verification), and updates the state information of the SIP device stored therein according to the content thereof, such as updating the IP address and communication port number of the SIP device.

[0042] In one embodiment, the SIP protocol may use the Digest authentication method. Figure 2 An example of a Digest authentication process is shown below. Figure 2 As shown, the certification process includes: S201, the SIP device sends a REGISTER request to the SIP server for the first time without an Authorization header.

[0043] S202: The SIP server returns a 401 Unauthorized response with a WWW-Authenticate header.

[0044] Exemplarily, the response returned by the SIP server is as follows: SIP / 2.0 401 Unauthorized WWW-Authenticate: Digest realm="example.com", nonce="xyz123", algorithm=MD5, qop="auth" S203, the SIP device resends the REGISTER request with an Authorization header.

[0045] Exemplarily, the REGISTER request resent by the SIP device is as follows: REGISTER sip: example.com SIP / 2.0 Call-ID: abc123@example.com CSeq:2 REGISTER Authorization: Digest username="device1", realm="example.com", nonce="xyz123", response="abcd5678" S204, the SIP server verifies whether the response is correct and whether the same nonce is used.

[0046] All difference data packets need to be authenticated, and the Authorization header needs to be extracted to ensure that the legitimate device updates its own information. However, heartbeat signaling does not require authentication information and is only used to maintain online status.

[0047] (1.1.2) Group registration mechanism This application also proposes an optimization mechanism for large-scale SIP device registration, which reduces the instantaneous load of the server and improves registration efficiency through technical means such as group registration, pre-caching and differential update.

[0048] In order to avoid excessive instantaneous load on the server caused by large-scale simultaneous registration of devices, the embodiment of the present application proposes a batch registration method based on group management. The grouping strategy can be dynamically adjusted according to factors such as the geographical location of the device, IP address segment, device priority or network status. Exemplarily, the SIP devices in the SIP network can be grouped according to the target characteristics of the SIP devices, and the characteristic values ​​of the target characteristics of the SIP devices in each group are the same; the time for each group of SIP devices to send a registration request is allocated according to the characteristic value of the target characteristic; when the SIP devices in the SIP network are started, each group of SIP devices sends a registration request to the SIP server according to the allocated time for sending the registration request.

[0049] The following is an example of grouping based on IP address segments: Device Group A (priority registration): 192.168.1.0 / 24, used in high-priority areas, which are generally core communication nodes in large cities, such as Beijing and Shanghai; Device Group B (delayed registration): 192.168.2.0 / 24, used in ordinary areas. When the device starts, the device selects the appropriate time to send the registration request according to the grouping strategy. For example, the device group A sends the registration time: t=0 seconds, and the device group B sends the registration time: t=5 seconds. The SIP server gradually receives device registrations to avoid sudden traffic.

[0050] The grouping policy can be configured to SIP devices in a variety of ways, such as dynamic server distribution, manual configuration, etc. For example, the grouping policy can be dynamically distributed to each device by the SIP server after the SIP device is started. Common SIP devices (such as access control, cameras) support active pull and server push functions. The distribution of grouping policies can refer to the following process: 1) After the SIP device is started, it sends device information (IP address, MAC address, device ID, etc.) to the SIP server; 2) The SIP server returns the corresponding grouping policy based on the device information; 3) The SIP device periodically queries the SIP server for new grouping policies.

[0051] In some embodiments, the group registration mechanism is used to alleviate the problem of excessive instantaneous server load that may occur when large-scale devices register at the same time. The group registration mechanism is applicable to the initial registration and periodic registration. The group information can remain unchanged or be dynamically adjusted during the initial registration and periodic registration process. The device group information is stored in the server during the initial registration, and the cached data can be directly compared for quick verification during subsequent registrations. Whether the subsequent group information can be changed depends on specific business needs.

[0052] (1.1.3) Pre-caching mechanism When an existing SIP device registers each time, the server usually needs to verify the complete parameters (such as user authentication, device configuration, etc.), which increases the computing burden of the server. The embodiment of the present application provides a pre-caching mechanism, which reduces repeated verification of information by caching the static parameters of the device in the SIP proxy server. The specific implementation logic is as follows: the SIP server caches the static parameters of the SIP device (such as device ID, authentication information) according to the first registration request of any SIP device; after receiving the difference data packet of any SIP device, the SIP server performs parameter verification and status update according to the status change information in the difference data packet and the static parameters of the SIP device cached by itself.

[0053] To facilitate understanding of the pre-caching mechanism provided in the embodiment of the present application, the following is an explanation with reference to examples: Device registration for the first time (full authentication): 1) The SIP device sends a registration request containing device information to the SIP server (including device ID, authentication information such as key or signature, IP address, network port, etc.); 2) The SIP server verifies the device key or signature and records the device information; 3) The server stores static data in the cache (Redis, Memcached, etc.); 4) After the server successfully authenticates the device, it returns an authentication Token to the SIP device for subsequent quick verification.

[0054] Subsequent device registration (quick verification): 1) The SIP device sends a registration request (including device ID, IP address, network port, authentication token) to the SIP server; 2) The SIP server reads the static data of the device (device ID, key, etc.) from the cache; 3) The SIP server only compares the dynamic data (IP address, network port, authentication token). If the authentication token is valid, the authentication is passed directly. Otherwise, a complete re-authentication is required; 4) If the SIP server successfully authenticates the SIP device, it returns the latest policy or heartbeat confirmation.

[0055] It should be noted that the various mechanisms provided in the embodiments of the present application can be used separately or in combination. Figure 3The following is a schematic diagram showing a process flow of the difference update mechanism, the group registration mechanism and the pre-caching mechanism working together. Figure 3 As shown, in the first step, during the device initialization phase, the SIP device determines the registration time according to the grouping strategy and constantly checks its own status. In the second step, during the difference update phase, when the SIP device detects a change in its own status, it generates a difference data packet, which only contains the status change field, and transmits the difference data packet to the server through a REGISTER request. In the third step, during the group registration phase, SIP devices register in batches according to groups to avoid excessive instantaneous traffic. At the same time, the REGISTER request for each batch of registration is based on the difference update mechanism and only transmits necessary data. In the fourth step, during the server processing phase, for the first registration request, the SIP server stores the device static fields in the cache; for subsequent registration requests, the SIP server verifies the difference fields based on the cached data and the authentication token to quickly complete the status update.

[0056] Through the collaborative work of the difference update mechanism, the group registration mechanism and the pre-caching mechanism, this application realizes the efficiency of the SIP device registration process. The difference update mechanism reduces redundant data transmission; the group registration mechanism smoothes the instantaneous load of the server; and the pre-caching mechanism further improves the verification efficiency.

[0057] (1.2) Session invitation optimization: In the process of establishing a SIP session, the interaction between the INVITE message and its response is prone to generate redundant content, which affects efficiency. This application proposes an optimized design for this problem, focusing on fast invitation templates and pre-analysis ACK mechanism.

[0058] (1.2.1) Quick Invitation Template Traditional INVITE messages contain a large number of repeated fields (such as Via, Call-ID, etc.). A complete INVITE message needs to be generated each time a session is established, which places a heavy burden on message generation and transmission. The following is an example of a traditional INVITE message: INVITE sip: user2@example.com SIP / 2.0 Via: SIP / 2.0 / UDP 192.168.1.10;branch=z9hG4bK776asdhds Max-Forwards: 70 From:<sip:user1@example.com> ;tag=1928301774 To:<sip:user2@example.com> Call-ID: asd88asd77a@192.168.1.10 CSeq: 1 INVITE Contact: <sip:user1@192.168.1.10> Content-Type: application / sdp Content-Length: 150 <SDP information omitted> This application reduces unnecessary field generation and transmission by enabling any SIP device to generate an INVITE message by filling in the required dynamic fields in a predefined INVITE template, which includes the INVITE message schema and the static fields required for the INVITE message. Figure 4 An exemplary schematic diagram of the usage process of a fast invitation template is shown as Figure 4 shown, and the process specifically includes: S401, establishment and distribution of a predefined INVITE template.

[0059] During the device production stage, the template file is written into the device storage through a configuration tool, and the template version information (such as Template_v1.0) is recorded in the device firmware. When the device registers, the server verifies the template version. If the device template version is lower than the server version, the server distributes the latest template to the device through a PUBLISH message. The template includes static fields (such as protocol type, basic field structure) and dynamic fields (such as target address, device IP) An example template is as follows: INVITE sip:[TARGET] SIP / 2.0 Via: SIP / 2.0 / UDP [DEVICE_IP];branch=[BRANCH_ID] Max-Forwards: [MAX_FORWARDS] From: <sip:[USER_FROM]>;tag=[TAG] To: <sip:[TARGET]> Call-ID: [CALL_ID] CSeq: 1 INVITE Contact: <sip:[USER_CONTACT]> Content-Type: application / sdp Content-Length: [CONTENT_LENGTH] <SDP information omitted> S402, dynamic field collection and filling.

[0060] The device collects dynamic field values ​​in real time when the session is started, including the target address ([TARGET]), device IP ([DEVICE_IP]), session identifier ([CALL_ID]), etc. There may be multiple implementations for the collection of dynamic fields. For example, the device collects dynamic field values ​​in real time when the session is started, including: the target address ([TARGET]) is obtained from the user's device configuration; the device IP ([DEVICE_IP]): dynamically read from the network stack; the session identifier ([CALL_ID]): generated based on the device timestamp and unique identifier; other fields (such as [TAG], [BRANCH_ID], etc.): obtained from the device status or internal random generator.

[0061] After the collection is completed, the dynamic fields are filled according to the placeholder positions in the template. For example: [TARGET] -> sip: user2@example.com [DEVICE_IP] -> 192.168.1.10 [CALL_ID] -> asd88asd77a@192.168.1.10 S403, INVITE message generation and transmission.

[0062] The SIP device quickly generates the final INVITE message based on the INVITE template and dynamic field filling results. The static fields do not need to be generated repeatedly, and the dynamic fields are assembled through real-time filling and finally sent to the SIP server.

[0063] S404, server receives and processes.

[0064] After receiving the INVITE message, the server parses the dynamic fields according to the predefined template and verifies the legitimacy of the field content (such as whether the address matches the authenticated user and whether the message structure complies with the protocol standard). If it complies with the standard, a response message is generated according to the session.

[0065] Through the quick invitation template provided by this application, static fields (such as protocol type, device IP format, message structure, etc.) have been defined in the template and do not need to be generated repeatedly, which can effectively reduce the generation of redundant information; at the same time, since the device side only needs to fill in dynamic fields (such as target address, user information), the calculation time of signaling generation and the amount of transmitted data are reduced, effectively improving the transmission efficiency.

[0066] (1.2.2) Pre-analysis ACK mechanism In the traditional INVITE process, the ACK message needs to be generated and sent after receiving the 200 OK response, which can easily cause interaction delays. The embodiment of the present application generates possible ACK responses in advance through pre-analysis technology. For example, for any SIP device, based on the historical session data with the peer device, the probability of the peer device giving a correct response within the preset response time is predicted. If the predicted probability is greater than the threshold, the ACK message is sent in advance; otherwise, the ACK message is sent after waiting for the normal response of the peer device, thereby effectively shortening the sending time of the ACK message. Figure 5 A schematic diagram of a pre-analysis ACK mechanism is shown as an example. Figure 5 As shown in the figure, the specific implementation of this process is as follows: S501, collecting historical conversations.

[0067] This step extracts the response mode of the peer device of the SIP device by analyzing the historical session logs to provide basic data for pre-analysis. Exemplarily, collecting historical sessions includes: collecting the communication record logs of the device, recording the session response information after each INVITE request, including the peer IP address, port number, response type (such as 200 OK) and response time (the time interval from sending the INVITE to receiving the response).

[0068] S502, data preprocessing.

[0069] Parse the collected data into a unified format. For example: [ { "Peer IP": "192.168.1.15", "Response Type": "200 OK", "Response Delay": 2, "To: tag": "123456"}, { "Peer IP": "192.168.1.15", "Response Type": "200 OK", "Response Delay": 1, "To: tag": "123457"}, { "Peer IP": "192.168.1.15", "Response Type": "200 OK", "Response Delay": 3, "To: tag": "123458"}, { "Peer IP": "192.168.1.20", "Response Type": "486 Busy Here", "Response Delay": 4, "To: tag": "123459"}] S503: extract the response mode of the peer device.

[0070] Perform statistical analysis on the preprocessed data to extract the response pattern of the peer device and provide a basis for generating prediction rules.

[0071] For example, first determine the conditions and targets. For example, condition A is peer IP == 192.168.1.15 and response type == 200 OK, and target B is response delay ≤ 2 milliseconds. Calculate the number of times condition A is met and the number of times A and B are met at the same time, and then calculate the conditional probability P(B|A).

[0072] S504, generate an ACK prediction rule and send an ACK message according to the rule.

[0073] The following rules are generated based on the statistical results of S503: If P(B|A) ≥ threshold (such as 90%), send ACK in advance, otherwise wait for normal response.

[0074] In one embodiment, in order to reduce the computational burden of generating ACK messages in real time, the present application also provides a pre-generated ACK template mechanism. The mechanism includes: generating a possible ACK message template (i.e., ACK message architecture) in advance according to the SIP protocol standard, wherein the template contains static fields (i.e., common fields) and dynamic fields, wherein the dynamic fields include the target address [TARGET], the peer tag [REMOTE_TAG], the sequence number [SEQ_NUMBER], etc., and the SIP device dynamically fills the specific field content into the corresponding position in the ACK template.

[0075] The following is an example of an ACK template: ACK sip:[TARGET] SIP / 2.0 Via: SIP / 2.0 / UDP [DEVICE_IP];branch=[BRANCH_ID] From:<sip:[USER_FROM]> ;tag=[TAG] To:<sip:[TARGET]> ;tag=[REMOTE_TAG] Call-ID: [CALL_ID] CSeq: [SEQ_NUMBER] ACK Content-Length: 0 Exemplarily, when generating an ACK message, the ACK pre-generated template file can be loaded when the SIP device is started and stored in the memory. When sending the INVITE message, an ACK message with pre-filled static fields is generated according to the ACK template according to the above steps. When the session is established, the filling function is called to fill the actual value of the dynamic field into the placeholder in the template (i.e., the corresponding position), and the peer tag (such as the To: tag field carried in the 200 OK response) is dynamically updated according to the actual session.

[0076] Exemplarily, the dynamic fields can be obtained in real time when the ACK message is generated, wherein the target address ([TARGET]) is extracted from the target field of the INVITE message, the device IP address ([DEVICE_IP]) is queried in real time through the network interface of the device, the branch identifier ([BRANCH_ID]) is dynamically generated by a random generator, the initiating user information ([USER_FROM] and [TAG]) is read from the device configuration file, the peer tag ([REMOTE_TAG]) is extracted from the received 200 OK response, the session identifier ([CALL_ID]) is inherited from the INVITE message, and the sequence number ([SEQ_NUMBER]) is incremented by session.

[0077] Exemplarily, a partial ACK can be sent in advance. For example, after receiving a partial response (such as 180 Ringing), a partial ACK message is sent in advance to reduce waiting time. If the parameters of the subsequent confirmation of the other end change (such as different tags), the final ACK is resent to cover the previous message. The parameters of the dynamic fields in the ACK template may change.

[0078] In one embodiment, the present application also provides a conflict detection and fallback mechanism. If the 200 OK response received by the SIP device does not match the expected one (such as a different label or target address), the system will immediately fallback and resend the matching ACK message. The fallback operation will force the current session to be interrupted, and the matching ACK message will be regenerated and sent to restore the session to the correct state.

[0079] (2) Dynamic flow control The goal of dynamic flow control is to reduce network congestion and avoid signaling accumulation or packet loss in overload conditions through dynamic adjustment. This application uses a traffic prediction model based on LSTM (Long Short-Term Memory) to monitor network traffic regularly and adjust the signaling forwarding strategy in advance. At the same time, the DiffServ (Differentiated Services) mechanism is used to assign different QoS labels to SIP traffic to ensure priority processing of delay-sensitive signaling (such as INVITE).

[0080] (2.1) LSTM-based SIP signaling traffic prediction model SIP signaling is sensitive to delay in real-time communication, especially key signaling such as INVITE requires a quick response. SIP signaling traffic in the network usually exhibits a time series characteristic of alternating peaks and valleys. By introducing the LSTM model to predict traffic trends, traffic peaks can be perceived in advance, and traffic priorities and forwarding strategies can be adjusted dynamically, thereby improving signaling processing efficiency. The establishment of the model specifically includes the following steps: (2.1.1) Data collection and preprocessing Data collection: For example, real-time traffic statistics at each time interval (Δt, in seconds) are collected from network devices (switches or routers), and the data types include different SIP signaling such as INVITE, REGISTER, BYE, etc.

[0081] Feature construction: construct the traffic of each type of signaling into a time series

[0082] In each time interval (for example, 10 seconds), the system will count the number of INVITE, REGISTER, BYE and other signaling, and organize these statistical results into time series in chronological order as the input data of the model. For example: Time point 1: INVITE=120, REGISTER=90, BYE=30 Time point 2: INVITE=140, REGISTER=85, BYE=25 By constructing such a time series, we can clearly observe that the INVITE traffic is gradually increasing and may be about to reach a peak, while the REGISTER and BYE traffic are relatively stable.

[0083] As a deep learning model for processing time series data, the LSTM model can effectively capture the timing characteristics of signaling traffic. Its input features are the signaling traffic values ​​at the past N time points, and its output is the predicted value of future traffic. For example, if the input is [120, 90, 30], [140, 85, 25], then the output may be [150, 87, 28]. This shows that the model predicts that the INVITE traffic will reach 150 at the next time point, showing a trend of traffic peak.

[0084] Structuring the traffic data of each type of signaling into a time series can more effectively capture the dynamic change characteristics of signaling traffic. For example: Time point 1: [INVITE=120, REGISTER=90, BYE=30] Time point 2: [INVITE=140, REGISTER=85, BYE=25] Data normalization: M is performed on the traffic of each type of signaling. in -M ax Normalization eliminates the numerical differences between different signaling flows and prevents a certain type of signaling data from dominating the model training. The normalized time series is as follows: t These are all normalized data:

[0085] For example, the normalized time series may be time series = [ [0.6, 0.4, 0.2], [0.7, 0.38, 0.17], ... ] (2.1.2) LSTM model design (2.1.2.1) Define input and output.

[0086] The SIP signaling traffic time series of the past N time points is taken as input, and the output is the predicted SIP signaling traffic at one or more time points in the future.

[0087] (2.1.2.2) Design model structure.

[0088] The interior of the LSTM model consists of multiple modules, including the forget gate, input gate and candidate memory unit, update memory unit and output gate and hidden state. The model structure design of LSTM specifically includes: 1) Design a forget gate.

[0089] Forget Gate Controls whether the model needs to forget information from past time points, such as whether certain signaling traffic in history (such as outdated INVITE peaks) is still meaningful for current predictions. (t-1) and the current input x t , calculate a ratio in the range [0, 1]. Values ​​close to 1 indicate that historical information is retained, and values ​​close to 0 indicate that historical information is forgotten. The calculation formula is as follows:

[0090] 2) Design input gates and candidate memory cells.

[0091] Input Gate Controls whether the new information at the current time point needs to be written into the memory unit. Candidate memory unit Generate the potential memory value at the current time point to update the memory unit. The specific formula is as follows:

[0092] 3) Update the memory unit.

[0093] The output of the forget gate and the input gate are combined to dynamically update the memory unit. Status. Use the following formula to calculate. Combine historical memory and current SIP signaling data, forget some historical information, and add some new information at the current time point. The specific formula is as follows:

[0094] 4) Output gate and hidden state.

[0095] Output Gate Controls which information in the memory unit needs to be output to predict the SIP signaling traffic at the next time point. Hidden state It is a bridge for information transmission between LSTM units. At each time step, the hidden state will pass the information of the current time step to the next time step. The specific formula is as follows:

[0096] (2.1.2.3) Model training and optimization Loss function: Calculate the mean square error (MSE) based on the actual traffic and predicted traffic of SIP signaling:

[0097] Training environment: Based on the deep learning framework PyTorch, the model training is completed using historical traffic data; the Adam optimizer is used for gradient update, and the initial learning rate α is set to 0.001.

[0098] Real-time prediction: Deploy the trained model and predict the current traffic at fixed intervals (such as 5 seconds). By predicting the SIP traffic peak, adjust the QoS policy in advance, such as assigning a high priority tag to the predicted peak INVITE traffic (such as setting the DSCP value to EF46).

[0099] (2.2) Configuration of the Differentiated Services (DiffServ) mechanism DiffServ is a quality of service (QoS) management mechanism that uses different labels to prioritize traffic. By adding corresponding QoS labels to different types of traffic, critical traffic is given priority, ensuring fast forwarding of delay-sensitive signaling.

[0100] This application targets the SIP protocol and first classifies traffic into three levels: 1) high priority: delay-sensitive signaling, such as INVITE; 2) medium priority: ordinary signaling, such as REGISTER; 3) low priority: such as non-critical business traffic. Then configure DSCP (Differentiated Services Code Point) and use the DSCP field in the IP header to assign priorities to different traffic: EF (Expedited Forwarding, value 46): high priority traffic; AF31 (Assured Forwarding, value 26): medium priority traffic; BE (Best Effort, value 0): low priority traffic. Then configure QoS policies on routers or switches to mark traffic and apply policies to interfaces.

[0101] Finally, configure a priority-based queue scheduling mechanism. The high-priority queue (EF) is allocated more bandwidth, and the medium and low-priority queues (AF31, BE) are allocated bandwidth on demand.

[0102] (2.3) Dynamic traffic regulation strategy The embodiment of the present application provides a dynamic traffic regulation strategy, which monitors network traffic in real time and predicts traffic peaks in combination with the LSTM model, dynamically adjusts the priority and forwarding strategy of signaling, and avoids network congestion. When the predicted traffic exceeds the threshold, the system can give priority to delay-sensitive signaling (such as SIP INVITE) and reduce the forwarding rate of low-priority traffic. By dynamically adjusting the transmission rate of signaling, efficient traffic management can be achieved, ensuring that delay-sensitive traffic is forwarded first, and improving the stability and reliability of the network.

[0103] To facilitate understanding of the dynamic flow regulation strategy provided by this application, Figure 6 Provide explanation.

[0104] When the LSTM predicts that the future traffic value exceeds the set threshold (such as bandwidth usage reaching 80%), the system triggers the traffic regulation strategy. The traffic regulation strategy example is as follows: High-priority signaling guarantee: Prioritize the forwarding of high-priority signaling (such as SIP INVITE) and ensure its real-time performance through the reserved bandwidth mechanism; Low-priority traffic rate limit: impose rate limits on low-priority traffic (such as BE) or drop some packets; Adjust bandwidth allocation: Dynamically adjust the bandwidth allocation ratio of each priority traffic based on real-time traffic forecasts.

[0105] During the LSTM model training process of this application, three SIP signalings, INVITE, REGISTER and BYE, are used as examples. These signalings cover common scenarios such as session establishment, device registration and session termination, and are highly representative. However, this is only a reference example, and this application is not limited to the above three signaling types. Those skilled in the art can extend the LSTM model of this application to other types of SIP signaling (such as OPTIONS, ACK, etc.) according to actual needs to meet the dynamic traffic management requirements of specific business scenarios.

[0106] Corresponding to the SIP signaling transmission and flow control method described in the above embodiment, Figure 7 A structural block diagram of a SIP signaling transmission and flow control device provided in an embodiment of the present application is shown. For ease of explanation, only the parts related to the embodiment of the present application are shown.

[0107] Reference Figure 7 , the device comprises: The flow control module 701 is used to obtain the SIP signaling flow prediction value in the SIP network through the flow prediction model, and trigger the flow regulation strategy when the SIP signaling flow prediction value exceeds the threshold; the flow regulation strategy includes: allocating flow priority to SIP signaling according to the SIP signaling type, and forwarding high-priority signaling first; delay-sensitive signaling has a higher priority than other types of SIP signaling; the SIP network includes at least one SIP device and at least one SIP server; The signaling transmission module 702 is used to control any SIP device to monitor its own status in real time. If there is status change information that needs to be synchronized, a difference data packet is generated according to the status change information, and the difference data packet is transmitted to the corresponding SIP server, so that the SIP server updates the status information of the SIP device stored therein according to the difference data packet; otherwise, a heartbeat signaling is sent according to a preset time period to complete the SIP periodic registration.

[0108] It should be noted that the information interaction, execution process and other contents between the above-mentioned modules are based on the same concept as the method embodiment of the present application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.

[0109] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0110] An embodiment of the present application also provides a computer device, which includes: at least one processor, a memory, and a computer program stored in the memory and executable on the at least one processor, wherein the processor implements the steps of any of the above-mentioned method embodiments when executing the computer program.

[0111] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in the above-mentioned method embodiments can be implemented.

[0112] An embodiment of the present application provides a computer program product. When the computer program product runs on a mobile terminal, the mobile terminal can implement the steps in the above-mentioned method embodiments when executing the computer program product.

[0113] Figure 8 This is a schematic diagram of the structure of a computer device provided in one embodiment of the present application. Figure 8 As shown, the computer device of this embodiment includes: at least one processor 80 ( Figure 8 Only one is shown in the figure), a memory 81, and a computer program 82 stored in the memory 81 and executable on the at least one processor 80, wherein when the processor 80 executes the computer program 82, the steps in any of the above-mentioned visual programming method embodiments are implemented.

[0114] The computer device may include, but is not limited to, a processor 80 and a memory 81. Those skilled in the art will appreciate that Figure 8 It is only an example of a computer device and does not constitute a limitation of the computer device. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, it may also include input and output devices, network access devices, etc.

[0115] The processor 80 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0116] In some embodiments, the memory 81 may be an internal storage unit of the computer device, such as a hard disk or memory of the computer device. In other embodiments, the memory 81 may also be an external storage device of the computer device, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the computer device. Further, the memory 81 may also include both an internal storage unit of the computer device and an external storage device. The memory 81 is used to store an operating system, an application program, a boot loader (BootLoader), data, and other programs, such as the program code of the computer program. The memory 81 may also be used to temporarily store data that has been output or is to be output.

[0117] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, which can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a computer-readable storage medium. When the computer program is executed by the processor, the steps of the above-mentioned various method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may at least include: any entity or device that can carry the computer program code to the device / computer device, recording medium, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), electric carrier signal, telecommunication signal and software distribution medium. For example, a USB flash drive, a mobile hard disk, a magnetic disk or an optical disk. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electric carrier signals and telecommunication signals.

[0118] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0119] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0120] In the embodiments provided in the present application, it should be understood that the disclosed apparatus / computer equipment and methods can be implemented in other ways. For example, the apparatus / computer equipment embodiments described above are merely schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of the apparatus or unit, which can be electrical, mechanical or other forms.

[0121] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0122] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A SIP signaling transmission and flow control method, characterized in that: include: The traffic prediction model is used to obtain the predicted value of SIP signaling traffic in the SIP network. When the predicted value of SIP signaling traffic exceeds the threshold, the traffic regulation strategy is triggered. The traffic regulation strategy includes: allocating traffic priority to SIP signaling according to the SIP signaling type, and forwarding high-priority signaling first; delay-sensitive signaling has a higher priority than other types of SIP signaling; the SIP network includes at least one SIP device and at least one SIP server; Any SIP device monitors its own status in real time. If there is status change information that needs to be synchronized, a difference data packet is generated according to the status change information, and the difference data packet is transmitted to the corresponding SIP server, so that the SIP server updates the status information of the SIP device stored therein according to the difference data packet; otherwise, a heartbeat signaling is sent according to a preset time period to complete the SIP periodic registration.

2. The method according to claim 1, characterized in that The method further comprises: The SIP devices in the SIP network are grouped according to target characteristics of the SIP devices, wherein the characteristic values ​​of the target characteristics of the SIP devices in each group are the same; and the time for each group of SIP devices to send a registration request is allocated according to the characteristic value of the target characteristics; When the SIP devices in the SIP network are started, each group of SIP devices sends a registration request to the SIP server according to the allocated time for sending the registration request.

3. The method according to claim 2, characterized in that The method further comprises: The SIP server caches the static parameters of any SIP device according to the first registration request of the SIP device; After receiving the difference data packet of any SIP device, the SIP server performs parameter verification and status update according to the status change information in the difference data packet and the static parameters of the SIP device cached by itself.

4. The method according to claim 1, characterized in that The method further comprises: Any SIP device generates an INVITE message by filling in the required dynamic fields in a predefined INVITE template; the INVITE template includes the INVITE message architecture and the static fields required by the INVITE message.

5. The method according to claim 1, characterized in that The method further comprises: For any SIP device, based on the historical session data with the peer device, predict the probability that the peer device will give a correct response within the preset response time. If the predicted probability is greater than the threshold, send an ACK message in advance; otherwise, wait for the peer device to respond normally before sending an ACK message.

6. The method according to claim 5, characterized in that The sending of the ACK message comprises: An ACK message is generated by filling in the required dynamic fields in a predefined ACK template; the ACK template includes the ACK message architecture and the static fields required for the ACK message.

7. The method according to claim 1, characterized in that The method of obtaining a SIP signaling traffic prediction value in the SIP network by using a traffic prediction model includes: The historical SIP signaling traffic time series is used as the traffic prediction model input to obtain the SIP signaling traffic prediction value output by the traffic prediction model; the traffic prediction model is generated based on the training of the long short-term memory network LSTM model.

8. A SIP signaling transmission and flow control device, characterized in that: include: A flow control module is used to obtain a SIP signaling flow prediction value in a SIP network through a flow prediction model, and trigger a flow regulation strategy when the SIP signaling flow prediction value exceeds a threshold; The traffic regulation strategy includes: allocating traffic priority to SIP signaling according to the SIP signaling type, and forwarding high-priority signaling first; delay-sensitive signaling has a higher priority than other types of SIP signaling; the SIP network includes at least one SIP device and at least one SIP server; The signaling transmission module is used to control any SIP device to monitor its own status in real time. If there is status change information that needs to be synchronized, a difference data packet is generated according to the status change information, and the difference data packet is transmitted to the corresponding SIP server, so that the SIP server updates the status information of the SIP device stored therein according to the difference data packet; otherwise, a heartbeat signaling is sent according to a preset time period to complete the SIP periodic registration.

9. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 7 is implemented.

10. A computer program product, characterized in that When the computer program product is executed on a computer device, the computer device is caused to execute the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Real-time data synchronization method and system between main and standby nodes

    CN105610566A

  • Performance monitoring and load balancing method based on SIP signaling server cluster

    CN115242755A

  • Data flow limiting method and device, electronic equipment and storage medium

    CN115733803A

  • Data updating method and device, equipment, medium and program product

    CN115913944A

  • Data flow scheduling method and device for power grid edge computing system

    CN116095175A

Cited By

  • Signaling congestion control method and device based on neural network, equipment and storage medium

    CN120825455A