Method, device and storage medium for enhancing media session management

By managing the SIP sessions of the UAV system in the SEAL architecture, the VAL server acquires and manages the list of SIP sessions between the VAL client and the NRM server, solving the problem of difficulty in managing multiple SIP sessions across multiple NRM servers in the prior art, and achieving efficient media session management and service continuity.

CN115643822BActive Publication Date: 2025-04-15TENCENT AMERICA LLC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202280004011.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2022-05-17
Filing Date
2022-05-18
Publication Date
2025-04-15
Estimated Expiration
2042-05-18

AI Technical Summary

Technical Problem

The prior art is difficult to effectively manage media sessions in unmanned aerial vehicle systems, especially when managing multiple SIP sessions across multiple network resource management servers, which may result in service interruptions.

Method used

In the Service Enabler Architecture Layer (SEAL) architecture, a SIP session information request is sent to a Network Resource Management (NRM) server using a Vertical Application Layer (VAL) server, obtains a list of SIP sessions established between the VAL client and the NRM server, and redirects SIP session traffic based on response messages or balances SIP connection requests to manage multiple SIP sessions across multiple NRM servers.

Benefits of technology

It realizes effective management of multiple SIP sessions in the drone system, avoids service interruption, and improves the service continuity and system stability of media sessions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115643822B_ABST
    Figure CN115643822B_ABST
Patent Text Reader

Abstract

In a method for Session Initiation Protocol (SIP) session management, a vertical application layer (VAL) server sends a SIP session information request to a network resource management (NRM) server to obtain a list of SIP sessions established between (i) a VAL client associated with the VAL server and (ii) an NRM server. A response message including SIP session information is received by the VAL server from the NRM server in response to the SIP session information request. The SIP session information includes a list of SIP sessions established between the VAL client and the NRM server. Multiple SIP sessions are managed across multiple NRM servers based on the response message, wherein the multiple NRM servers include the NRM server, and the multiple SIP sessions include a list of SIP sessions established between the VAL client and the NRM server.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-references

[0002] This application claims the benefit of priority to U.S. patent application No. 17 / 746,914, filed on May 17, 2022, entitled “METHOD AND APPARATUS OF ENHANCING MEDIA SESSION MANAGEMENT,” which claims the benefit of priority to U.S. Provisional Application No. 63 / 190,730, filed on May 19, 2021, entitled “METHOD AND APPARATUS OF ENHANCING MEDIA SESSION MANAGEMENT,” the entire contents of which are incorporated herein by reference. Technical Field

[0003] The present disclosure relates to media session management. Background Art

[0004] The background description provided herein is for the purpose of presenting the content of the present disclosure in general. The extent to which the work of the presently named inventors described in the background section and various aspects of this specification is performed does not indicate that it is prior art at the time of filing this application, and it is never explicitly or implicitly admitted that it is prior art of this application.

[0005] Unmanned Aerial Vehicles (UAVs) or unmanned aerial vehicles can include aircraft without any human pilots, crew, or passengers. Unmanned aerial vehicles are components of unmanned aircraft systems (UASs). UASs can also include ground-based controllers and systems that communicate with the UAVs. Communication systems that support the connectivity needs of unmanned aircraft systems are currently being developed. Summary of the invention

[0006] Aspects of the present disclosure provide methods and apparatus for Session Initiation Protocol (SIP) session management, for example in a Service Enabler Architecture Layer (SEAL) architecture. In some examples, the apparatus for SIP session management includes a receiving circuit and a processing circuit.

[0007] According to one aspect of the present disclosure, a method for Session Initiation Protocol (SIP) session management in a Service Enabler Architecture Layer (SEAL) architecture is provided. In the method, a Vertical Application Layer (VAL) server sends a SIP session information request to a Network Resource Management (NRM) server to obtain a list of SIP sessions established between (i) a VAL client associated with the VAL server and (ii) an NRM server. The VAL server receives a response message including SIP session information in response to the SIP session information request from the NRM server. The SIP session information may include a list of SIP sessions established between the VAL client and the NRM server. Multiple SIP sessions are managed across multiple NRM servers based on the response message, wherein the multiple NRM servers include an NRM server, and the multiple SIP sessions include a list of SIP sessions established between the VAL client and the NRM server.

[0008] In one embodiment, the SIP session information request may further include one of the following: an identification (ID) of the VAL client, and an ID of the VAL server.

[0009] In another embodiment, the SIP session information request may include an ID of a VAL group, wherein the VAL group may correspond to a VAL client and a VAL controller.

[0010] In some embodiments, the VAL server may include an unmanned aerial system application enabler (UAE) server, the VAL client may include an unmanned aerial vehicle (UAV), and the VAL controller may include a UAV controller.

[0011] In the method, the response message may indicate a session identification (ID) and a session state associated with a SIP session in the SIP session list, wherein each SIP session is associated with a respective session ID and a respective session state.

[0012] In some embodiments, in order to manage multiple SIP sessions across multiple NRM servers, SIP session traffic of the multiple SIP sessions may be redirected by the VAL server based on the response message.

[0013] In some embodiments, in order to manage multiple SIP sessions across multiple NRM servers, SIP connection requests may be balanced by the VAL server based on response messages.

[0014] In some embodiments, the SIP sessions in the SIP session list are initiated by the NRM client to the NRM server before the SIP session information request is sent by the UAE server.

[0015] According to another aspect of the present disclosure, a device is provided, wherein the device has a processing circuit, and the processing circuit can be configured to execute any one of the above methods.

[0016] Aspects of the present disclosure also provide a non-transitory computer-readable medium storing instructions, which, when executed by a computer, causes the computer to perform any one of the above methods. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Other features, properties and various advantages of the disclosed subject matter will become more apparent from the following detailed description and the accompanying drawings, in which:

[0018] Figure 1 is a schematic diagram of a drone system (100) according to one embodiment.

[0019] Figure 2 A networking functional model (200) for a Service Enabler Architecture Layer (SEAL) according to one embodiment.

[0020] Figure 3 A process (300) for Session Initiation Protocol (SIP) session management is shown according to one embodiment.

[0021] Figure 4 A flow chart outlining the process of SIP session management according to some embodiments of the present disclosure is shown.

[0022] Figure 5 is a schematic diagram of a computer system according to one embodiment. DETAILED DESCRIPTION

[0023] Reference below Figure 1, an unmanned aerial system (UAS) (100) may include an unmanned aerial vehicle (UAV) (101) and a controller (102). The controller (102) may transmit control commands from the controller (102) to the UAV (101) using a data link (103). The controller (102) may include at least one communication circuit configured to communicate via the data link (103), via very high frequency (VHF), and / or ultra high frequency (UHF), and / or other wireless communication technologies capable of analog and / or digital radio communications. The controller (102) may control the power level of a propulsion unit (114) of a control surface of the UAV (101) and / or a model aircraft (not depicted), the propulsion unit (114) being, for example, one or more motors and / or engines. More abstract commands similar to those of a helicopter and / or aircraft may also be used, such as pitch, yaw, and roll. An experienced pilot may operate the UAV (101) using basic controls without relying on advanced onboard processing of control signals within the UAV (101). The UAV (101) may be in the form of a helicopter and / or any other aerial vehicle.

[0024] Advances in onboard electronic design allow certain tasks to be offloaded from a human operator (or user) 113 to the UAV (101) itself. Many UAVs, such as UAV (101), may include sensors (104) coupled to onboard control circuitry (105) for sensing the attitude and acceleration of the UAV (101). The onboard control circuitry (105) may be a computer system with a scaled-down and / or non-existent user interface. In addition to control inputs received via a data link (103) from the controller (102), information obtained by the sensors (104) allows the UAV (101) to remain stable unless positive control inputs are received from the controller (102).

[0025] The UAV (101) may include a receiver (106) for one of the Global Navigation Satellite Systems (GNSS), such as the Global Positioning System (GPS) operated by the United States. Figure 1A single satellite (108) is shown that can provide a communication signal (107) to represent a GNSS. However, a receiver (106) of the UAV (101) can receive communications from a GNSS that includes three or more line-of-sight satellites, typically four or more line-of-sight satellites, to triangulate the position of the UAV (101) in space. A GNSS receiver, such as receiver (106), can determine the position of the UAV (101) in space and time with considerable accuracy. In the UAV (101), in many cases, the GNSS is augmented by additional sensors (e.g., ultrasonic and / or lidar sensors) of the UAV (101) in the most critical vertical axis (e.g., the Z axis) to enable a soft landing (not depicted). The UAV (101) including GNSS functionality can provide a user with "return-to-home" and "auto-landing" capabilities. Thus, upon receipt of a simple command from the controller (102) (e.g., pressing a single button), or in the event that the data link (103) from the controller is lost, or other meaningful control input times out, the drone (101) can fly to a location defined as the starting position.

[0026] The UAV (101) may also include one or more cameras (109). In some cases, the UAV (101) may include a gimbal-mounted camera as one of the cameras (109). The gimbal-mounted camera may be used to record pictures and / or videos of sufficient quality for use by a user (113) of the UAV (101), for example, at high-definition television resolution. The UAV (101) may include other cameras (110) for covering some or all axes of motion. Onboard signal processing based on signals from the other cameras (110) may be used to prevent the UAV (101) from colliding with fixed and moving objects.

[0027] In some cases, the UAV (101) may include a "main" camera as one of the cameras (109). The signal from the "main" camera may be transmitted in real time to a human user (e.g., user (113)) via a data link (111) and displayed on a display device (112) included in the controller (102), on a display device (112) attached to the controller (102), and / or on a display device (112) separate from the controller (102). The data link (111) may be the same as or different from the data link (103). Thus, the UAV (101) may successfully fly out of the line of sight of a human pilot using a technique known as "First Person View" (FPV).

[0028] Thanks to technological developments, flying drones such as UAVs (101) has become considerably easier, which in turn has made drones popular not only with professional UAV pilots and determined and wealthy hobbyists, but also with the general public. As a result, millions of drones are now sold each year, compared to only a few thousand multi-model helicopters sold about 15 years ago. At the same time, the knowledge, proficiency and participation of the user community has declined on average.

[0029] The Service Enabler Architecture Layer (SEAL) can support vertical applications (e.g., UAV and vehicle to everything (V2X)). The SEAL functional entities on the user equipment (UE) and the server can be divided into SEAL clients and SEAL servers, respectively. SEAL can include a set of common services (e.g., group management, location management) and reference points. SEAL can provide its services to the Vertical Application Layer (VAL). VAL can include a VAL client (e.g., UAV) and a VAL server.

[0030] Figure 2 An exemplary networking functional model (200) for a service enabler architecture layer (SEAL) is shown. The model (200) can be used for network resource management and includes a vertical application layer (VAL) (206) and SEAL (207) on a 3GPP wireless network, such as a 3GPP network system (213) to support vertical applications (e.g., UAV and vehicle-to-everything (V2X) applications). The model (200) is shown as a functional architecture including common application plane and signaling plane entities. A set of common services (e.g., group management, configuration management, location management) of the model (200) can be shared between vertical applications.

[0031] like Figure 2 As shown, VAL (206) may include a VAL client (201) and a VAL server (203). SEAL (207) may include a SEAL client (202) and a SEAL server (204). VAL client (201) and SEAL client (202) may be coupled to each other in communication to form a user device (212). Figure 2 The SEAL functional architecture shown can consider common functions that support mission-critical and other vertical applications.

[0032] refer to Figure 2 , the VAL client (201) can communicate with the VAL server (203) via the VAL-UU (205) reference point. The VAL-UU (205) can support both unicast transmission mode and multicast transmission mode.

[0033] The SEAL functional entities on the user device (212) and the server can be grouped into SEAL client (202) and SEAL server (204), respectively. SEAL (207) can include a set of public services (e.g., group management, location management) and reference points. SEAL (207) can provide services for VAL (206).

[0034] The SEAL client (202) may communicate with the SEAL server (204) via the SEAL-UU (209) reference point. The SEAL-UU (209) may support both unicast transmission mode and multicast transmission mode. The SEAL client (202) may provide service enabler layer support functions to the VAL client (201) via the SEAL-C reference point (208). The VAL server (203) may communicate with the SEAL server (204) via the SEAL-S (211) reference point. The SEAL server (204) may communicate with the underlying 3GPP network system (e.g., 3GPP network system (213)) using a corresponding 3GPP interface (e.g., 210) specified by the 3GPP network system.

[0035] A specific SEAL client (202) and SEAL server (204) as well as their specific SEAL-UU (209) reference points and specific network interface (210) of the 3GPP network system (213) may be provided in a corresponding networking functional model for each SEAL service.

[0036] The VAL client (201) may provide client-side functions corresponding to vertical applications (eg, UAV, V2X client). The VAL client (201) may support interaction with the SEAL client (202).

[0037] The VAL server (203) may provide server-side functionality corresponding to vertical applications (eg, UAV, V2X application server).

[0038] The SEAL client (202) may provide client functions corresponding to specific SEAL services, such as location management, group management, configuration management, identity management, key management, and network resource management. The SEAL client may support interaction with the VAL client (201). The SEAL client may also support interaction with corresponding SEAL clients between two UEs. For example, a first SEAL client (e.g., SEAL client (202)) of a first UE (e.g., UE (212)) may interact with a second SEAL client (not shown) of a second UE (not shown).

[0039] The SEAL server (204) can provide server-side functions corresponding to specific SEAL services, such as location management, group management, configuration management, identity management, key management, and network resource management. The SEAL server (204) can support interaction with the VAL server (203).

[0040] In an exemplary 3GPP 5G wireless architecture, SEAL (e.g., SEAL (207)) can provide procedures, information flows, and application program interfaces (APIs) to support vertical applications on a 3GPP system (e.g., 213) to ensure efficient use and deployment of vertical applications on the 3GPP system.

[0041] The SEAL Group Manager (GM) can enable group management operations for upper application layers.

[0042] A SEAL Network Resource Manager (NRM) server (eg, a SEALNRM server) may support unicast network resource management and multicast network resource management at an upper application layer.

[0043] 5G wireless technology can support three C2 (Command and Control) communication modes: direct C2, network-assisted C2, and UAS Traffic Management (UTM) navigation C2 communication.

[0044] Direct C2 can establish a direct C2 link between the UAV controller and the UAV to communicate with each other. Both the UAV controller and the UAV can register to a wireless network, such as a 5G network (e.g., wireless network system 213), which uses radio resources configured and scheduled by the wireless network for direct C2 communication.

[0045] In network-assisted C2 communication, the UAV controller and the UAV can register and establish their respective unicast C2 communication links to a wireless network, such as a 5G network, and communicate with each other through the network.

[0046] In UTM navigation C2 communications, a predetermined flight plan can be provided to the UAV, and the UTM can maintain a C2 communication link with the drone to regularly determine the flight status of the UAV, verify the flight status with the latest dynamic constraints, provide route updates, and navigate the UAV when necessary.

[0047] In the present disclosure, information flows and data points may be provided for Session Initiation Protocol (SIP) session management in a SEAL architecture.

[0048] SIP can be a signaling protocol for initiating, maintaining, and terminating real-time sessions, which can include voice, video, and / or messaging applications. SIP can be used in Internet telephony applications for voice and video calls, dedicated Internet Protocol (IP) phone systems, instant messaging over Internet Protocol (IP) networks, and mobile phone calls over LTE (VoLTE) to send and control multimedia communication sessions.

[0049] A SIP session, sometimes informally referred to as a "call" and more formally as a dialog, is created via an invitation from one user agent (User Agent Client (UAC)) to another (User Agent Server (UAS)). For example, a SIP session can be initiated and established by an NRM client to an NRM server. This invitation transaction is basically a three-way handshake between the UAC and the UAS, including or consisting of the following items: an initial invitation (INVITE) message sent by the UAC to the UAS, one or more provisional responses sent by the UAS to the UAC, a final response sent by the UAS to the UAC, and a confirmation message sent by the UAC to the UAS. These SIP messages may include a description of the media capabilities of each UAC using the Session Description Protocol (SDP). Based on these session descriptions, a set of common parameters can be negotiated during call setup, and these parameters can then be used to send media from one UA to another UA, whether the media is audio, video, text, etc.

[0050] In the SDP specification, a multimedia session (or SIP session) is a set of multimedia senders and receivers and data flows from senders to receivers. A session can be defined by the address element in the source field, the SDP user name, the session ID, the network type, and the address type. A session can have multiple Real-time Transport Protocol (RTP) sessions corresponding to the User Datagram Protocol (UDP) ports defined in the SDP line.

[0051] 3GPP can enable UAV clients to request media sessions, such as SIP session establishment with NRM servers. These SIP sessions need to be managed to ensure service continuity for media services such as video streaming. Currently, the UAE server does not know how many SIP sessions are established between the UAV client and the NRM server. When the number of SIP session requests exceeds the number that the NRM server can handle, service interruption may occur.

[0052] By enabling a VAL server (e.g., a UAE server) to view an existing SIP session between a UAV client and an NRM server, the VAL server can view the SIP session and manage the SIP session across multiple NRM servers. For example, the VAL server can manage the SIP session by redirecting SIP session traffic and / or balancing SIP connection requests.

[0053] refer to Figure 2 , SEAL architecture (200) provides network resource management. Network Resource Management (NRM) client (202) can be a functional entity of SEAL (207) and interacts with VAL client (or VAL application) (201) to manage network resources. NRM client (202) can interact with NRM server (204).

[0054] The NRM server (204) may be a functional entity of the SEAL (207) for managing 3GPP system network resources (eg, unicast, multicast) to support the VAL application (201).

[0055] The NRM-UU reference point (209) may support interactions related to network resource management functions between the NRM client (202) and the NRM server (204).

[0056] The NRM-S reference point (211) may support interactions related to network resource management functions between the VAL server (203) and the NRM server (204). It should be noted that the UAE server may act as a VAL server and the NRM server may act as a Figure 2 The SEAL server (204) in the NRM client can be used as Figure 2 The SEAL client (202) in.

[0057] For media session management, SDP used in SIP packets can carry important information about media parameters. SDP is a format for describing multimedia communication sessions for announcements and invitations. The main use of SDP is to support streaming applications such as Voice over IP (VoIP) and video conferencing. SDP itself does not provide any media streams, but is used between endpoints to negotiate network metrics, media types, and other related properties. This set of properties and parameters is called a session profile.

[0058] Exemplary SDP information may be provided as follows:

[0059] v=0

[0060] o=Client1 2398026505 2307593197IN IP4 100.200.130.140

[0061] s=Client1 Audio Session

[0062] b=AS:64

[0063] b=RS:800

[0064] b=RR:2400

[0065] c=IN IP4 10.11.12.13

[0066] t=0 0

[0067] m=audio 15010RTP / AVP 0 101

[0068] a=rtpmap:0PCMU / 8000

[0069] a=rtpmap:101telephone-event / 8000

[0070] a=sendrecv

[0071] "v" may indicate a protocol version. "o" may indicate an owner / creator and session identifier. "s" may indicate a session name. "b" may indicate bandwidth information. "c" may indicate connection information. "t" may indicate the start time and end time of the session. "m" may represent a list of media port transport formats. "a" may represent zero or more session attribute rows.

[0072] SDP information, such as the above SDP information, may be sent from the VAL server (203) to the NRM server (204).

[0073] An important parameter in the SDP information is bandwidth information, which can indicate the maximum bandwidth limited for successfully establishing a media session.

[0074] In the SDP information, b=as:bitrate may indicate the maximum bit rate allowed for the media session. For example, b=as:64 may indicate that a bandwidth of 64 kb / s is allowed.

[0075] After establishing a SIP session, the UAE server should be able to know what the existing SIP session is. One benefit of enabling the UAE server to see existing SIP sessions is that the UAE server can manage SIP sessions across multiple NRM servers by redirecting SIP session traffic and load balancing SIP connection requests, or a combination thereof.

[0076] exist Figure 3 An exemplary SIP session management (300) is shown in the figure, which can enable a VAL server (e.g., a UAE server (301)) to be aware of an existing SIP session established with a VAL client (e.g., a UAV or UAV-C) and an NRM server (302). In some embodiments, a SIP session can be established between an NRM-C reference point and an NRM-S reference point. The NRM-C reference point can support interactions related to network resource management functions between a network resource management client within a VAL UE (e.g., UE (212)) and the VAL client. The NRM-S reference point can support interactions related to network resource management functions between a VAL server and a network resource management server. The NRM-S reference point can be an instance of a CAPIF-2 reference point.

[0077] like Figure 3 The UAE server (301) may send a session information request, such as a SIP session information request, to the NRM server (302). The media session information request may include data points as shown in Table 1 below.

[0078] Table 1: Data points for media session information request

[0079]

[0080] It should be noted that in Table 1, "M" stands for "mandatory" and "O" stands for "optional." Therefore, the media session information request may not include the VAL user ID and / or the VAL group ID.

[0081] As shown in Table 1, the data point may include a requester identification (ID), which may be the ID of a VAL server, such as a UAE server (301), that sends a request to the NRM server (302). The data point may include the ID of a VAL user or a VAL UE. A VAL user may be an authorized user that may participate in one or more VAL services using a VAL UE. An exemplary VAL user may be Figure 1 A VAL UE may be a user device that can be used to participate in one or more VAL services. An exemplary VAL UE may be Figure 1 UAV (101) in.

[0082] The VAL user ID is a unique identifier representing a VAL user in a VAL service. For example, the VAL user ID may be a URI. The VAL user ID is used for authentication and authorization purposes so that the VAL service is provided to the VAL user through the VAL UE. The VAL user ID also indicates the VAL service provider with which the VAL user has signed a VAL service agreement. The VAL user may sign a VAL service agreement with multiple VAL service providers, and therefore will obtain a unique VAL user ID for each VAL service provider. The VAL user ID can be used to access any SEAL service. In some embodiments, based on the service agreement, the VAL user ID can be mapped to the VAL UE ID.

[0083] The VAL UE ID is a unique identifier representing the VAL UE in the VAL service. For example, the VAL UE ID of the V2X service can be mapped to a station ID, such as the identifier of an Intelligent Transport System Station (ITS-S). The VAL UE ID is used to address the VAL UE in order to send a VAL message or access a SEAL service. In some embodiments, based on the service protocol, a Generic Public Subscription Identifier (GPSI) can be used as the VAL UE identifier.

[0084] Still referring to Table 1, the data points in Table 1 may include a VAL group ID, which is the ID of a VAL group. The VAL group ID is a unique identifier within a VAL service (e.g., a UAV service or a V2X service) that represents a group of VAL users or VAL UEs according to the VAL service. The group of VAL users may belong to the same or different VAL service providers. The VAL group ID indicates the VAL application server that defines the group. An exemplary VAL group may be Figure 1 UAV (101) and UAV-C (102) in it.

[0085] The data points in Table 1 may also include SIP session information. The SIP session information may be a command or request information to request a list of existing SIP sessions from the NRM server (302).

[0086] In addition, a precondition may be applied to the process (300) of SIP session management. For example, the precondition may be that the NRM client has initiated and established a SIP session with the NRM server. The VAL client may further interact with the NRM server via the NRM-C reference point. Thus, a SIP session may be established between the VAL client (e.g., UAV) and the NRM server (e.g., NRM server (302).

[0087] Still reference Figure 3 , the process (300) may proceed to step (S304, where the NRM server (302) may send a response message to the UAE server (301). In some embodiments, the exemplary data in Table 2 may be provided in the response message.

[0088] Table 2: Response data of SIP session management

[0089]

[0090] As shown in Table 2, the response message may include a result indicating a list of session IDs associated with a SIP session list established between a VAL client (e.g., UAV) and an NRM server (e.g., NRM server (302)). The result may also indicate a current session state of the SIP session list. It should be noted that when a VAL user, UE, or group ID is sent with a media session information request, the NRM server (302) may return a list of SIP sessions associated with the corresponding VAL user, UE, or VAL group. Therefore, when multiple VAL user IDs, or UE IDs, or VAL group IDs are sent to the NRM server (302), the NRM server (302) may return a corresponding list of SIP session IDs to a corresponding one of the VAL user, VAL UE, or VAL group.

[0091] In some embodiments, the session status of the SIP session list may include progress, acceptance, rejection, failure, connection, cancellation, etc. In some embodiments, the session status may include temporary responses (e.g., trying, ringing, and call forwarding), success responses (e.g., OK and accepted), redirection responses (e.g., multiple selections and temporary move), client failure responses (e.g., bad request, unauthorized, forbidden, not found, request timed out, temporarily unavailable, and currently busy), server failure responses (e.g., server timed out), and global failure responses (e.g., global busy, rejection, and not acceptable).

[0092] Figure 4 The process (400) of SIP session management in a SEAL architecture is shown, for example. Figure 4 As shown, the process (400) may start from (S401) and proceed to (S410). At (S410), a SIP session information request may be sent by a vertical application layer (VAL) server to a network resource management (NRM) server to obtain a list of SIP sessions established between (i) a VAL client associated with the VAL server and (ii) the NRM server.

[0093] At (S420), the VAL server may receive a response message including SIP session information in response to the SIP session information request from the NRM server. The SIP session information may include a list of SIP sessions established between the VAL client and the NRM server.

[0094] At (S430), a plurality of SIP sessions may be managed across a plurality of NRM servers based on the response message, wherein the plurality of NRM servers include an NRM server, and the plurality of SIP sessions include a list of SIP sessions established between the VAL client and the NRM server.

[0095] In one embodiment, the SIP session information request may further include one of the following: an identification (ID) of the VAL client and an ID of the VAL server.

[0096] In another embodiment, the SIP session information request may include an ID of a VAL group, where the VAL group may correspond to a VAL client and a VAL controller.

[0097] In some embodiments, the VAL server may include an unmanned aerial system application enablement (UAE) server, the VAL client may include an unmanned aerial vehicle (UAV), and the VAL controller may include a UAV controller.

[0098] In process (400), the response message may indicate a session ID and a session state associated with the SIP sessions in the SIP session list, wherein each SIP session may be associated with a respective session ID and a respective session state.

[0099] In some embodiments, in order to manage multiple SIP sessions across multiple NRM servers, SIP session traffic of the multiple SIP sessions may be redirected by the VAL server based on the response message.

[0100] In some embodiments, in order to manage multiple SIP sessions across multiple NRM servers, SIP connection requests may be balanced by the VAL server based on the response messages.

[0101] In some embodiments, the NRM client may initiate a SIP session in the SIP session list to the NRM server before the UAE server sends the SIP session information request.

[0102] As described above, various aspects of UAV system communications may be implemented in the controller and the UAV as computer software using computer-readable instructions and physically stored in one or more computer-readable media, such as one or more non-transitory computer-readable storage media. Figure 5A computer system 600 suitable for implementing some embodiments of the disclosed subject matter is shown.

[0103] Computer software may be encoded using any suitable machine code or computer language, which may be subjected to assembly, compilation, linking or similar mechanisms to create code comprising instructions that may be executed directly or through interpretation, microcode execution, or by processing circuitry such as a computer central processing unit (CPU), graphics processing unit (GPU), or the like.

[0104] The instructions may be executed on various types of computers or components thereof, including, for example, personal computers, tablet computers, servers, smartphones, gaming devices, IoT devices, etc.

[0105] Figure 5 The components of the computer system (600) shown are exemplary in nature and are not intended to impose any limitation on the scope of use or functionality of computer software implementing embodiments of the present application. The configuration of the components should not be interpreted as having any dependency or requirement related to any one or combination of components shown in the exemplary embodiment of the computer system (600).

[0106] The computer system (600) may include certain human-machine interface input devices. Such human-machine interface input devices may respond to input from one or more human users through, for example, tactile input (e.g., keystrokes, swipes, data glove movements), audio input (e.g., voice, clapping), visual input (e.g., gestures), olfactory input (not depicted). The human-machine interface device may also be used to capture certain media that are not necessarily directly related to human conscious input, such as audio (e.g., voice, music, ambient sound), images (e.g., scanned images, photographic images obtained from a still image camera), video (e.g., two-dimensional video, three-dimensional video including stereoscopic video), etc.

[0107] The input human-machine interface device may include one or more of the following (only one of each is shown): keyboard (601), mouse (602), touchpad (603), touch screen (610), data gloves (not shown), joystick (605), microphone (606), scanner (607), camera (608).

[0108] The computer system (600) may also include certain human-machine interface output devices. Such human-machine interface output devices may stimulate one or more human user senses, for example, through tactile output, sound, light, and smell / taste. Such human-machine interface output devices may include tactile output devices (e.g., tactile feedback of a touch screen (610), a data glove (not shown), or a joystick (605), but may also be a tactile feedback device that is not an input device), an audio output device (e.g., a speaker (609), headphones (not shown)), a visual output device (e.g., a screen (610) including a CRT screen, an LCD screen, a plasma screen, an OLED screen, each with or without touch screen input capabilities, each with or without tactile feedback capabilities, some of which are capable of outputting two-dimensional visual output or output beyond three dimensions through devices such as stereoscopic image output, virtual reality glasses (not depicted), holographic displays and smoke boxes (not depicted), and printers (not depicted).

[0109] The computer system (600) may also include human-accessible storage devices and their associated media: for example, optical media including CD / DVDROM / RW (620) with CD / DVD and other media (621), thumb drives (622), removable hard drives or solid-state drives (623), traditional magnetic media such as tapes and floppy disks (not shown), dedicated ROM / ASIC / PLD-based devices such as security software dogs (not shown), etc.

[0110] Those skilled in the art should also understand that the term "computer-readable media" used in connection with the presently disclosed subject matter does not encompass transmission media, carrier waves, or other transitory signals.

[0111] The computer system (600) may also include an interface (654) to one or more communication networks (655). The network may be, for example, a wireless network, a wired network, an optical network. The network may further be a local network, a wide area network, a metropolitan area network, a vehicle and industrial network, a real-time network, a delay-tolerant network, etc. Examples of networks include local area networks such as Ethernet, wireless LANs, cellular networks including GSM, 3G, 4G, 5G, LTE, etc., television wired or wireless wide area digital networks including cable television, satellite television, and terrestrial broadcast television, vehicle and industrial television including CANBus, etc. Some networks typically require an external network interface adapter connected to some common data port or peripheral bus (649) (e.g., a USB port of the computer system (600)); as described below, other network interfaces are typically integrated into the kernel of the computer system (600) by connecting to the system bus (e.g., connecting to an Ethernet interface in a PC computer system or connecting to a cellular network interface in a smartphone computer system). The computer system (600) can use any of these networks to communicate with other entities. Such communications may be one-way receive only (e.g., broadcast television), one-way send only (e.g., a CANbus connected to certain CANbus devices), or bidirectional, for example, using a LAN or WAN digital network to connect to other computer systems. As described above, certain protocols and protocol stacks may be used on each of those networks and network interfaces.

[0112] A human interface device, a human-accessible storage device, and a network interface may be attached to the kernel (640) of the computer system (600).

[0113] The core (640) may include one or more central processing units (CPUs) (641), graphics processing units (GPUs) (642), dedicated programmable processing units in the form of field programmable gate arrays (FPGAs) (643), hardware accelerators (644) for certain tasks, graphics adapters (650), etc. These devices, as well as read-only memory (ROM) (645), random access memory (646), internal mass storage (647) such as internal non-user accessible hard drives, SSDs, etc., may be connected via a system bus (648). In some computer systems, the system bus (648) may be accessed in the form of one or more physical plugs to enable expansion by additional CPUs, GPUs, etc. Peripheral devices may be connected directly to the core's system bus (648) or to the core's system bus (648) via a peripheral bus (649). In an example, a touch screen (610) may be connected to a graphics adapter (650). The architecture of the peripheral bus includes PCI, USB, etc.

[0114] The CPU (641), GPU (642), FPGA (643) and accelerator (644) can execute certain instructions, which can be combined to form the above-mentioned computer code. The computer code can be stored in ROM (645) or RAM (646). Transition data can also be stored in RAM (646), while permanent data can be stored, for example, in internal mass storage (647). Fast storage and retrieval to any storage device can be performed by using a cache, which can be closely associated with the following: one or more CPUs (641), GPUs (642), mass storage (647), ROM (645), RAM (646), etc.

[0115] The computer readable medium may have thereon computer codes for performing various computer-implemented operations. The medium and computer codes may be those specially designed and constructed for the purposes of the present disclosure, or the medium and computer codes may be of a type well known and available to those skilled in the art of computer software.

[0116] As a non-limiting example, a computer system having an architecture (600), particularly a kernel (640), can provide functionality due to one or more processors (including CPUs, GPUs, FPGAs, accelerators, etc.) executing software included in one or more tangible computer-readable media. Such computer-readable media can be media associated with user-accessible mass storage as described above, as well as memories of certain non-temporary kernels (640), such as kernel internal mass storage (647) or ROM (645). Software implementing various embodiments of the present application can be stored in such devices and executed by the kernel (640). Depending on specific needs, the computer-readable medium may include one or more storage devices or chips. The software can cause the kernel (640), particularly the processors therein (including CPUs, GPUs, FPGAs, etc.), to perform specific processes or specific parts of specific processes described herein, including defining data structures stored in RAM (646) and modifying such data structures according to processes defined by the software. Additionally or alternatively, the computer system may provide functionality due to logic hardwired or otherwise embodied in circuitry (e.g., accelerator (644)) that may replace software or operate in conjunction with software to perform specific processes or specific portions of specific processes described herein. Where appropriate, references to portions of software may include logic and vice versa. Where appropriate, references to portions of computer-readable media may include circuitry (e.g., integrated circuits (ICs)) storing software for execution, circuitry embodying logic for execution, or both. The present disclosure includes any suitable combination of hardware and software.

[0117] Although the present disclosure has described a number of exemplary embodiments, there are modifications, permutations, and various replacement equivalents that fall within the scope of the present disclosure. Therefore, it should be understood that those skilled in the art will be able to design many systems and methods that, although not explicitly shown or described herein, embody the principles of the present disclosure and therefore fall within the spirit and scope of the present disclosure.

Claims

1. A method for managing a Session Initiation Protocol (SIP) session in a Service Enabler Architecture Layer (SEAL) architecture, characterized in that: The method comprises: A vertical application layer (VAL) server sends a SIP session information request to a network resource management (NRM) server to obtain a list of SIP sessions established between (i) a VAL client associated with the VAL server and (ii) the NRM server; The VAL server receives a response message including SIP session information in response to the SIP session information request from the NRM server, wherein the SIP session information includes the SIP session list established between the VAL client and the NRM server; and A plurality of SIP sessions are managed across a plurality of NRM servers based on the response message, wherein the plurality of NRM servers include the NRM server, and the plurality of SIP sessions include the SIP session list established between the VAL client and the NRM server.

2. The method according to claim 1, characterized in that The SIP session information request also includes: The identification (ID) of the VAL client, and The ID of the VAL server.

3. The method according to claim 2, characterized in that The SIP session information request also includes: an identifier of a VAL group, the VAL group corresponding to the VAL client, and a VAL controller.

4. The method according to claim 3, characterized in that The VAL server includes an unmanned aerial system application enabler (UAE) server, The VAL client includes an unmanned aerial vehicle (UAV), and The VAL controller includes a UAV controller.

5. The method according to claim 1, characterized in that The response message indicates a session identification (ID) and a session state associated with the SIP sessions in the SIP session list, each of the SIP sessions being associated with a respective session ID and a respective session state.

6. The method according to claim 1, characterized in that Said management also includes: The VAL server redirects SIP session traffic of the plurality of SIP sessions based on the response message.

7. The method according to claim 1, characterized in that Said management also includes: The VAL server balances SIP connection requests based on the response messages.

8. The method according to claim 1, characterized in that The SIP sessions in the SIP session list are initiated by the NRM client to the NRM server before sending the SIP session information request.

9. A session management device, characterized in that: The device comprises: Memory, used to store instructions, A processor, configured to call the instructions stored in the memory to implement the method according to any one of claims 1 to 8.

10. A non-transitory computer-readable storage medium storing instructions, which, when executed by at least one processor of a vertical application layer (VAL) server, cause the at least one processor to perform the method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • System for controlling multimedia function and service of telephone based on SIP and its improving method

    CN101273342A

  • Secure beacon and reader system for remote drone and pilot identification

    WO2019032162A2