Apparatus, method, and computer program
The solution addresses the challenge of inconsistent application delivery in 5G networks by determining subscriber-specific addresses for IMS data channels, ensuring efficient and tailored application provisioning based on user equipment attributes, thereby enhancing user experience.
Patent Information
- Application Number
- JP2025528705
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2022-11-18
- Publication Date
- 2026-01-06
AI Technical Summary
Existing communication systems face challenges in identifying and providing a subscriber-specific bootstrap entry page for an IP Multimedia Subsystem (IMS) data channel, particularly in 5G networks, due to inconsistencies in identifying user-specific applications across different vendor implementations of Data Channel Server Function (DCSF) and Data Channel Media Function (DCMF).
An apparatus and method for determining a subscriber-specific address based on user equipment attributes to establish a bootstrap data channel, using a Data Channel Server (DCS) to provide a tailored application or application list, involving a Data Channel Server Function (DCSF) and Data Channel Media Function (DCMF) to manage and route user-specific data channels.
Enables efficient and consistent delivery of subscriber-specific applications over IMS data channels, enhancing user experience by providing tailored application lists based on device capabilities and subscription information, without the need for pre-installation.
Smart Images

Figure 2026500097000001_ABST
Abstract
Description
[Technical Field]
[0001] The present application relates to methods, apparatus, systems, and computer programs, and particularly, but not exclusively, to methods for identifying a subscriber bootstrap entry page for an IP Multimedia Subsystem (IMS) data channel. [Background technology]
[0002] A communication system can be viewed as a facility that enables communication sessions between two or more entities, such as user terminals, base stations, and / or other nodes, by providing carriers between the various entities involved in the communication paths. A communication system may be provided, for example, by a communication network and one or more compatible communication devices. A communication session may include, for example, communication of data to carry communications such as voice, video, electronic mail (email), text messages, multimedia, and / or content data. Non-limiting examples of services provided include two-way or multi-way calls, data communication or multimedia services, and access to a data network system such as the Internet.
[0003] In a wireless communication system, at least a portion of a communication session between at least two stations is conducted over a wireless link. Examples of wireless systems include public land mobile networks (PLMNs), satellite-based communication systems, and various wireless local networks, e.g., wireless local area networks (WLANs). Some wireless systems can be divided into cells and are therefore often referred to as cellular systems.
[0004] A user can access a communication system by means of a suitable communication device or terminal. A user's communication device may be referred to as user equipment (UE) or user device. The communication device is provided with suitable signal transmission / reception equipment to enable communication, e.g., to enable access to a communication network or direct communication with other users. The communication device can access a carrier provided by a station, e.g., a base station of a cell, and transmit and / or receive communications on that carrier.
[0005] Communication systems and associated devices typically operate according to a given standard or specification that defines what various entities associated with the system are permitted to do and how it should be realized. Typically, the communication protocols and / or parameters used for connection are also defined. An example of a communication system is UTRAN (3G radio). Other examples of communication systems are the Long Term Evolution (LTE) of the Universal Mobile Telecommunications System (UMTS) radio access technology, and so-called 5G or New Radio (NR) networks. NR is standardized by the 3rd Generation Partnership Project (3GPP). Summary of the Invention [Means for solving the problem]
[0006] In a first aspect, there is provided an apparatus comprising means for the apparatus including: means for receiving a request from user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; means for determining, based on the attributes, an address indicating a resource associated with at least one application or application list for the user equipment; and means for providing, using the address, the at least one application or application list to the user equipment via the bootstrap data channel.
[0007] The apparatus may comprise means for receiving a request from a user equipment via an application server.
[0008] The apparatus may comprise means for providing the address to the user equipment.
[0009] The apparatus may comprise means for providing an address to the user equipment via the application server.
[0010] The address may be provided to the user equipment in a Session Description Protocol message.
[0011] The apparatus may comprise means for determining, based on the attribute, a further address indicating a resource associated with at least one application or application list for the terminating device, and means for providing the address to the terminating device.
[0012] The apparatus may comprise means for providing an address to a data channel media function.
[0013] A request for at least one application or list of applications may be sent from the user equipment to the address by a data channel media function.
[0014] The request for at least one application or list of applications may include a pre-configured address.
[0015] The apparatus may comprise means for receiving, from the data channel media function, an identifier associated with the bootstrap data channel, and means for associating the identifier with an address.
[0016] The apparatus may comprise means for receiving a request for the address from the data channel media function, the request including the identifier.
[0017] The apparatus may comprise means for providing an address to the data channel media function based on the identifier.
[0018] A request for at least one application or list of applications may be sent from the user equipment to the address by a data channel media function.
[0019] The apparatus may comprise means for receiving a request for at least one application or application list from user equipment via a data channel media function, the request including an identifier, and means for sending the request to an address based on the identifier.
[0020] The device may comprise a data channel application repository or a data channel signaling function or a web server.
[0021] The address may include a uniform resource locator.
[0022] In a second aspect, an apparatus is provided comprising: means for providing to a network function a request from a user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; means for receiving, in response to the request, an address indicating resources associated with at least one application or application list to be provided over the bootstrap channel to the user equipment, the address determined based on the attributes; and means for providing from the user equipment the request for the at least one application or application list to the received address.
[0023] The apparatus may comprise means for providing a request from the user equipment via the application server to establish a bootstrap data channel.
[0024] The apparatus may comprise means for receiving an address at the user equipment via the application server.
[0025] The apparatus may comprise means for receiving an address at a user equipment in a Session Description Protocol message.
[0026] The network function may comprise a data channel application repository or a data channel signaling function or a web server.
[0027] The address may include a uniform resource locator.
[0028] In a third aspect, receiving a request from a user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; determining, based on the attributes, an address indicating a resource associated with at least one application or application list for the user equipment; and providing, using the address, the at least one application or application list to the user equipment via the bootstrap data channel; An apparatus is provided comprising means for the apparatus including:
[0029] The method may include receiving a request from a user equipment via an application server.
[0030] The method may include providing the address to the user equipment.
[0031] The method can include providing an address to a user equipment via an application server.
[0032] The address may be provided to the user equipment in a Session Description Protocol message.
[0033] The method may include determining, based on the attribute, a further address indicating a resource associated with at least one application or application list for the terminating device, and providing the address to the terminating device.
[0034] The method can include providing an address to a data channel media function.
[0035] A request for at least one application or list of applications may be sent from the user equipment to the address by a data channel media function.
[0036] The request for at least one application or list of applications may include a pre-configured address.
[0037] The method may include receiving an identifier associated with the bootstrap data channel from the data channel media function, and associating the identifier with an address.
[0038] The method can include receiving a request for the address from a data channel media function, the request including the identifier.
[0039] The method may include providing an address to a data channel media function based on the identifier.
[0040] A request for at least one application or list of applications may be sent from the user equipment to the address by a data channel media function.
[0041] The method may include receiving a request for at least one application or application list from user equipment via a data channel media function, the request including an identifier, and sending the request to an address based on the identifier.
[0042] The device may comprise a data channel application repository or a data channel signaling function or a web server.
[0043] The address may include a uniform resource locator.
[0044] In a fourth aspect, a method is provided that includes providing a request from a user equipment to a network function to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; receiving, in response to the request, an address indicating resources associated with at least one application or application list to be provided via the bootstrap channel to the user equipment, the address determined based on the attributes; and providing a request from the user equipment for the at least one application or application list to the received address.
[0045] The method can include providing a request from the user equipment via an application server to establish a bootstrap data channel.
[0046] The method may include receiving the address at the user equipment via the application server.
[0047] The method may include receiving an address at a user equipment in a Session Description Protocol message.
[0048] The network function may comprise a data channel application repository or a data channel signaling function or a web server.
[0049] The address may include a uniform resource locator.
[0050] In a fifth aspect, there is provided an apparatus comprising at least one processor and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to at least: receive a request from a user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; determine, based on the attributes, an address indicating a resource associated with at least one application or application list for the user equipment; and provide, using the address, the at least one application or application list to the user equipment via the bootstrap data channel.
[0051] The apparatus may be adapted to receive a request from a user equipment via an application server.
[0052] The device may be adapted to provide an address to a user equipment.
[0053] The device may be adapted to provide an address to the user equipment via an application server.
[0054] The address may be provided to the user equipment in a Session Description Protocol message.
[0055] The apparatus may be configured to determine, based on the attribute, a further address indicating a resource associated with at least one application or application list for the end device, and to provide the address to the end device.
[0056] The device may be adapted to provide an address to a data channel media function.
[0057] A request for at least one application or list of applications may be sent from the user equipment to the address by a data channel media function.
[0058] The request for at least one application or list of applications may include a pre-configured address.
[0059] The device may be adapted to receive an identifier associated with the bootstrap data channel from the data channel media function and associate the identifier with the address.
[0060] The device may be adapted to receive a request for the address from the data channel media function, the request including the identifier.
[0061] The device may be adapted to provide an address to a data channel media function based on the identifier.
[0062] A request for at least one application or list of applications may be sent from the user equipment to the address by a data channel media function.
[0063] The device may be configured to receive a request for at least one application or application list from user equipment via a data channel media function, the request including an identifier, and to send the request to an address based on the identifier.
[0064] The device may comprise a data channel application repository or a data channel signaling function or a web server.
[0065] The address may include a uniform resource locator.
[0066] In a sixth aspect, there is provided an apparatus comprising at least one processor and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to at least: provide a request from a user equipment to a network function to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; receive, in response to the request, an address indicating resources associated with at least one application or application list to be provided via the bootstrap channel to the user equipment, the address being determined based on the attributes; and provide a request from the user equipment for the at least one application or application list to the received address.
[0067] The apparatus may be adapted to provide a request to establish a bootstrap data channel from the user equipment via the application server.
[0068] The device may be adapted to receive the address at the user equipment via the application server.
[0069] The apparatus may be adapted to receive an address at the user equipment in a Session Description Protocol message.
[0070] The network function may comprise a data channel application repository or a data channel signaling function or a web server.
[0071] The address may include a uniform resource locator.
[0072] In a seventh aspect, there is provided a computer readable medium containing instructions that, when executed by an apparatus, cause the apparatus to perform at least the following: receiving a request from user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; determining, based on the attributes, an address indicating a resource associated with at least one application or application list for the user equipment; and providing, using the address, the at least one application or application list to the user equipment via the bootstrap data channel.
[0073] The apparatus may be adapted to perform receiving a request from a user equipment via an application server.
[0074] The device may be adapted to perform providing an address to a user equipment.
[0075] The device may be adapted to implement providing an address to a user equipment via an application server.
[0076] The address may be provided to the user equipment in a Session Description Protocol message.
[0077] The apparatus may be configured to determine, based on the attribute, a further address indicating a resource associated with at least one application or application list for the end device, and provide the address to the end device.
[0078] The device may be adapted to implement providing an address to a data channel media function.
[0079] A request for at least one application or list of applications may be sent from the user equipment to the address by a data channel media function.
[0080] The request for at least one application or list of applications may include a pre-configured address.
[0081] The apparatus may be adapted to receive, from the data channel media function, an identifier associated with the bootstrap data channel, and to associate the identifier with the address.
[0082] The device may be adapted to receive a request for an address from a data channel media function, the request including an identifier.
[0083] The device may be adapted to implement providing an address to a data channel media function based on the identifier.
[0084] A request for at least one application or list of applications may be sent from the user equipment to the address by a data channel media function.
[0085] The device may be configured to receive a request for at least one application or application list from a user equipment via a data channel media function, the request including an identifier, and to send the request to an address based on the identifier.
[0086] The device may comprise a data channel application repository or a data channel signaling function or a web server.
[0087] The address may include a uniform resource locator.
[0088] In an eighth aspect, there is provided a computer readable medium containing instructions that, when executed by an apparatus, cause the apparatus to perform at least the following: providing a request from the user equipment to the network function to establish a bootstrap data channel with the data channel server, the request including attributes associated with the user equipment; receiving, in response to the request, an address indicating resources associated with at least one application or application list to be provided via the bootstrap channel to the user equipment, the address being determined based on the attributes; and providing the request from the user equipment for the at least one application or application list to the received address.
[0089] The apparatus may be adapted to implement providing a request from a user equipment via an application server to establish a bootstrap data channel.
[0090] The apparatus may be adapted to perform receiving the address at the user equipment via the application server.
[0091] The apparatus may be adapted to implement receiving an address at the user equipment within a Session Description Protocol message.
[0092] The network function may comprise a data channel application repository or a data channel signaling function or a web server.
[0093] The address may include a uniform resource locator.
[0094] In a ninth aspect, there is provided a non-transitory computer readable medium comprising program instructions for causing an apparatus to perform a method according to at least the third or fourth aspect.
[0095] A number of different embodiments have been described above, and it should be understood that further embodiments may be provided by combining any two or more of the above-described embodiments.
[0096] Embodiments will now be described, by way of example only, with reference to the accompanying drawings, in which: [Brief explanation of the drawings]
[0097] [Figure 1] FIG. 1 is a schematic diagram of an exemplary 5GS communication system. [Figure 2] 1 is a schematic diagram of an exemplary mobile communication device. [Figure 3] FIG. 2 is a schematic diagram of an exemplary control device. [Figure 4] 1 is a flowchart of a method according to an example embodiment. [Figure 5] 1 is a flowchart of a method according to an example embodiment. [Figure 6] FIG. 1 illustrates a signaling flow according to an exemplary embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0098] Before describing the examples in detail, some general principles of wireless communication systems and mobile communication devices will be briefly described with reference to FIGS. 1-3 to aid in understanding the technology underlying the described examples.
[0099] An example of a suitable communication system is the 5G or NR concept. The network architecture in NR may be similar to that of LTE-advanced. Base stations in NR systems are sometimes known as next-generation Node Bs (gNBs). Changes to the network architecture may vary depending on the need for support of various radio technologies and more granular QoS support, as well as on-demand requirements, such as quality of service (QoS) levels to support user quality of experience (QoE). Network-enabled services and applications, as well as service- and application-enabled networks, may also result in changes to the architecture. These are related to information-centric network (ICN) and user-centric content delivery network (UC-CDN) approaches. NR may use multiple-input, multiple-output (MIMO) antennas, more base stations or nodes than LTE (the so-called small cell concept), include macro sites operating in cooperation with smaller base stations, and, in some cases, employ various radio technologies for improved coverage and enhanced data rates.
[0100] Future networks may utilize network function virtualization (NFV), a network architecture concept that proposes virtualizing network node functions into "building blocks" or entities that can be operatively connected or linked to each other to provide services. A virtualized network function (VNF) may comprise one or more virtual machines that run computer program code using standard or generic types of servers rather than customized hardware. Cloud computing or data storage may also be utilized. In wireless communications, this may mean that node operations may be performed at least in part on a server, host, or node operatively coupled to a remote radio head. It is also possible that node operations may be distributed across multiple servers, nodes, or hosts. It should also be understood that the division of labor between core network operations and base station operations may be different from or even nonexistent as in LTE.
[0101] 1 shows a schematic diagram of a 5G system (5GS) 100. The 5GS may comprise a user equipment (UE) 102 (sometimes referred to as a communication device or terminal), a 5G radio access network (5GRAN) 104, a 5G core network (5GCN) 106, one or more application functions (AFs) 108, and one or more data networks (DNs) 110.
[0102] An exemplary 5G Core Network (CN) comprises functional entities. The 5GCN 106 may include one or more Access and Mobility Management Functions (AMFs) 112, one or more Session Management Functions (SMFs) 114, an Authentication Server Function (AUSF) 116, a Unified Data Management (UDM) 118, one or more User Plane Functions (UPFs) 120, a Unified Data Repository (UDR) 122, and / or a Network Publishing Function (NEF) 124. The UPF is controlled by the SMF (Session Management Function), which receives policies from the PCF (Policy Control Function).
[0103] The CN is connected to the UE via a Radio Access Network (RAN). The RAN may comprise one or more gNodeB (GNB) distributed unit functions connected to one or more gNodeB (GNB) centralized unit functions. The RAN may comprise one or more access nodes.
[0104] A User Plane Function (UPF), called a PDU Session Anchor (PSA), may be responsible for forwarding frames between the DN and the tunnel established over 5G to the UE that exchanges traffic with the DN.
[0105] Possible mobile communication devices will now be described in more detail with reference to FIG. 2 , which illustrates a schematic, partial cross-sectional view of a communication device 200. Such communication devices are often referred to as user equipment (UE) or terminals. Suitable mobile communication devices may be provided by any device capable of transmitting and receiving wireless signals. Non-limiting examples include mobile devices such as mobile stations (MS) or cellular phones or so-called “smartphones,” computers with wireless interface cards or other wireless interface capabilities (such as USB dongles), personal data assistants (PDAs) or tablets with wireless communication capabilities, voice-over-IP (VoIP) phones, portable computers, desktop computers, image capture terminal devices such as digital cameras, gaming terminal devices, music storage and playback equipment, in-vehicle wireless terminal devices, wireless endpoints, mobile stations, laptop embedded equipment (LEE), laptop mounted equipment (LME), smart devices, wireless customer premises equipment (CPE), or any combination thereof. Mobile communication devices may provide communication of data to carry communications such as voice, electronic mail (email), text messages, multimedia, and the like. Thus, users may be offered and provided with many services via their communication devices. Non-limiting examples of these services include two-way or multi-way calls, data communications or multimedia services, or simply access to a data communications network system such as the Internet. Users may also be provided with broadcast or multicast data. Non-limiting examples of content include downloads, television and radio programs, videos, advertisements, various alerts, and other information.
[0106] A mobile device is typically provided with at least one data processing entity 201, at least one memory 202, and possible other components 203 used in software- and hardware-assisted execution of the tasks the mobile device is designed to perform, including controlling access to and communication with access systems and other communication devices. Data processing, storage, and other related controls may be provided on a suitable circuit board and / or in a chipset. This feature is indicated by reference numeral 204. A user may control the operation of the mobile device by a suitable user interface, such as a keypad 205, voice commands, a touch-sensitive screen or pad, or a combination thereof. A display 208, a speaker, and a microphone may also be provided. Additionally, the mobile communication device may include suitable connectors (wired or wireless) for connecting with other devices and / or external accessories, such as, for example, hands-free equipment.
[0107] The mobile device 200 can receive signals via an air or wireless interface 207 by means of suitable receiving equipment and can transmit signals via suitable wireless signal transmitting equipment. In Figure 2, a transceiver unit is shown diagrammatically by block 206. The transceiver unit 206 can be provided, for example, by a radio unit and an associated antenna arrangement. The antenna arrangement can be located either internally or externally to the mobile device.
[0108] FIG. 3 illustrates an example of a controller 300 for a communications system, coupled to and / or controlling, for example, a RAN node (e.g., a base station, eNB, or gNB), a relay node, or a core network node such as an MME, S-GW, or P-GW, or a core network function such as an AMF / SMF, or a station of an access system such as a server or host. The method can be implemented in a single controller or across multiple controllers. The controller may be integrated into or external to a node or module of the core network or RAN. In some embodiments, a base station comprises a separate controller unit or module. In other embodiments, the controller may be another network element such as a radio network controller or spectrum controller. In some embodiments, each base station has such a controller, and a controller may also be provided within a radio network controller. The controller 300 may be configured to provide control over communications within a coverage area of the system. The controller 300 comprises at least one memory 301, at least one data processing unit 302, 303, and an input / output interface 304. Via an interface, the controller may be coupled to a receiver and a transmitter of the base station, which may be implemented as a radio front end or a remote radio head.
[0109] The IP Multimedia Subsystem (IMS) has been widely deployed to provide voice communication services. To enable the IMS to handle interactive calls in addition to voice communications, the IMS Data Channel (DC) has been defined. The IMS DC uses the Session Initiation Protocol (SIP) / Session Description Protocol (SDP) to perform IMS DC SDP negotiation between an endpoint and a Data Channel Server (DCS). The DCS may consist of a DCSF (DC signaling function) and a DCMF (DC media function). Based on the result of the SDP negotiation, the endpoint may establish a bootstrap data channel with the DCS and retrieve at least one of an application list and a single application from the DCS using HTTP / SCTP / DTLS / UDP protocols. The bootstrap DC is a data channel through which the UE can download applications (i.e., download HTML pages with embedded JavaScript files, images, and style sheets). The bootstrap DC uses a specific stream ID (less than 1000) other than the application DC.
[0110] An IMS data channel can enable one or more application data channels for applications in addition to voice (e.g., interactive chat). The IMS data channel allows data applications to be created and proposed to users without the need to pre-install the applications on the user's device. Each subscriber can use different DC applications based on subscription and other conditions, such as the called number or, more generally, the terminating party identity. Device capabilities (e.g., rendering capabilities), if known to the network, can be an important input when creating an application list for the subscriber using the device. Thus, the network can propose to the user a specific DC application or application list that is tailored to the needs and capabilities of the user and device.
[0111] In this context, an application or application list is an HTML page with embedded JavaScript and possibly other objects such as stylesheets and images. The user can select any application from the application list. When the user wants to launch an application, an application data channel is established through SDP negotiation. Once the application data channel is established, the endpoints can exchange application data within the application data channel.
[0112] The specification defines the bootstrap data channel as using HTTP (without encapsulating HTTP in Transmission Control Protocol (TCP)). This is represented by the following example SDP "a=dcmap" line, which is therefore present in the data channel media description in the SDP offer from a DC-enabled Multimedia Telephony Services for IMS (DCMTSI) client at the terminal: a=dcmap:0 subprotocol=”http”
[0113] Data channel stream IDs below 1000 are reserved for retrieving HTML web pages containing JavaScript and optionally images and stylesheets (hereafter referred to as "data channel applications") using the HTTP protocol (hereafter referred to as "bootstrap data channels"). Data channel applications (accessible at the HTTP root (" / ") URL through the bootstrap data channel) describe the graphical user interface and logic needed to handle any further data channel usage beyond the bootstrap data channel itself. The meaning of the "authority" (host) portion of the URL, and therefore the "Host" HTTP header, is undefined and is ignored on receipt and set to an empty value by the DCMTSI client at the terminal.
[0114] Since a data channel is linked to one user, the DCS can maintain a mapping between the data channel information identified by the stream-id in the "dcmap" attribute in the SDP during data channel establishment and the user information. The stream ID is unique within the media description. The DCS queries the application repository based on the user information to obtain the application list and generates the related html and JavaScript content.
[0115] Assuming that the DCSF and DCMF are separated, both the DCSF and DCMF should maintain data channel user information, or the DCMF should query this information from the DCSF to find correlated user information and create a specific user URL that allows the UE to download an application or application list.
[0116] When a DCMTSI client in a terminal attempts to obtain a bootstrap application list, one option is for the DCS to link a user identifier (e.g., IMS IMPU) with a DC bootstrap channel (e.g., IP address, port number, stream ID, other information) to create a user-specific list. However, this solution is implementation-specific, and it is unclear how a DC bootstrap channel can be uniquely identified across different implementations, e.g., a DCSF implemented by vendor A and a DCMF implemented by vendor B.
[0117] 4 shows a flowchart of a method according to an exemplary embodiment. The method can be performed in a network function such as DCSF or DCAR or a web server.
[0118] At S1, the method includes receiving a request from a user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment.
[0119] At S2, the method includes determining, based on the attribute, an address indicating a resource associated with at least one application or application list for the user equipment.
[0120] At S3, the method includes providing at least one application or application list to the user equipment via a bootstrap data channel using the address.
[0121] FIG. 5 shows a flowchart of a method according to an exemplary embodiment.
[0122] At T1, the method includes providing a request from a user equipment to a network node to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment.
[0123] At T2, the method includes receiving, in response to the request, an address indicating resources associated with at least one application or application list to be provided via a bootstrap channel to the user equipment, the address being determined based on the attribute.
[0124] At T3, the method includes providing a request from the user equipment for at least one application or application list to the received address.
[0125] The address may include a URL.
[0126] The attributes may include at least one of the following: device capabilities, subscription information, or terminating side information.
[0127] A request to establish a bootstrap data channel may be provided from the user equipment to a network function via an application server, e.g., an IMS AS. The data channel server (DCS) consists of a DCMF and a DCSF. The bootstrap channel may be established between the UE and the DCMF. Signaling to establish this channel may proceed from the UE to the IMS AS and then to the DCSF.
[0128] The method may include providing an address to the user equipment. The address may be provided to the user equipment via an application server, for example, an IMS AS. The method may include determining, based on the attribute, a further address indicating resources associated with at least one application or application list for the terminating device, and providing the further address to the terminating device.
[0129] In an exemplary embodiment, the DCSF receives data extracted from the SDP offer from the DCMTSI client in the terminal, and allocates a specific URL to a bootstrap application dedicated to the user based on the user's subscription, called party identity, other relevant data, and operator policies.
[0130] In one example embodiment, the DCSF provides this URL to the IMS AS, which includes it in the "request-target" parameter of the "dcsa" attribute of the SDP answer. See the example in Table 1 below.
[0131] [Table 1]
[0132] In one exemplary embodiment, when establishing the bootstrap data channel, a parameter called "request-target" is included in the SDP, for example as part of the "dcsa" attribute. The SDP attribute may contain a URL from which the UE can download an application or a list of allowed possible applications dedicated to that subscriber. The DCMTSI client at the terminal uses this URL in an HTTP message sent over the bootstrap data channel to retrieve the bootstrap application or application list.
[0133] For example, a DCMTSI client at a terminal uses this request-target URL in an HTTP request message over the established bootstrap data channel to retrieve a bootstrap application or application list. See the example in Table 2 below.
[0134] [Table 2]
[0135] In an exemplary embodiment, when DCMF receives such an HTTP request message over the bootstrap data channel, it forwards the HTTP request message to DCSF, DCAR, or any other web server indicated in the request-target of the HTTP request message.
[0136] In an exemplary embodiment, when the DCMF receives an HTTP response to a request, the DCMF forwards the response to the UE over the bootstrap data channel as shown in Table 3 below.
[0137] [Table 3]
[0138] The method may include providing an address to the DCMF. The DCMF may route a request from the user equipment for the at least one application or application list to the address. The request from the user equipment for the at least one application or application list may include a pre-configured address, for example, a root URL or a “ / ” URL.
[0139] In one exemplary embodiment, the DCSF, optionally with the assistance of DCAR or another function, creates a URL for a DC application or application list for this UE during DC bootstrap establishment and provides that URL to the DCMF. Once the bootstrap channel is established and the UE sends an HTTP request message to the " / " URL, the DCMF can redirect the request to the URL created by the DCSF, where the application or list can be downloaded.
[0140] The method may include receiving an identifier associated with the bootstrap data channel from the data channel management media function and associating the identifier with an address (URL). The method may include receiving a request for the address from the data channel management media function, the request including the identifier. The method may include providing the address to the data channel management media function based on the identifier. The DCMF may then send a request from the user equipment for at least one application or application list to the address. The request from the user equipment for the at least one application or application list may include a preset address, for example, a root URL or a " / " URL.
[0141] In one exemplary embodiment, the DCMF allocates a unique ID (either a new ID or a combination of existing IDs such as IP address, port number, stream ID, etc.) that identifies the bootstrap data channel to be established at the DCMF for a particular UE and sends this ID to the DCSF. The DCSF, optionally with the help of DCAR or another function, creates a URL for the DC application or application list for this UE and stores the URL together with the bootstrap channel ID.
[0142] Once the bootstrap channel is established and the UE sends an HTTP request message to the " / " URL, the DCMF requests the previously created URL from the DCSF by providing the bootstrap channel ID, and redirects the HTTP request from the UE to the URL provided by the DCSF.
[0143] Alternatively, the method may include receiving a request for at least one application or application list from a user equipment via the DCMF, the request including an identifier, and sending the request to an address based on the identifier. In this example embodiment, the DCMF may forward the HTTP request message from the UE directly to the DCSF, which redirects the request to the stored URL.
[0144] FIG. 6 illustrates a signaling flow according to an example embodiment.
[0145] At 1, the UE sends a SIP INVITE containing SDP to establish a bootstrap data channel.
[0146] At 2, the IMS AS performs DC routing decision and DCSF discovery.
[0147] At 3, SIP attributes such as user identity and SDP attributes are extracted by the IMS AS and forwarded to the DCSF.
[0148] At 4, based on the subscription and other information, the DCSF or DCAR (DC Application Repository) creates a URL (URL1) and a further URL (URL2) pointing to a resource of the DC application or application list (this could be an HTML page for example). The DCAR is a web server where the applications, i.e. HTML pages, are stored and retrieved.
[0149] At 5, the DCSF provides the URL along with other data to the IMS AS.
[0150] At 6, the IMS AS performs DCMF or extended MRF discovery.
[0151] At 7, the DCSF contacts the DCMF to establish media resources for the bootstrap channel.
[0152] The SDP negotiation of the bootstrap data channel is completed. As part of the SDP negotiation, the IMS AS sends the URL and other related data (e.g., the endpoint of the DCMF media resource) to the UE.
[0153] At 24, a bootstrap data channel is established between UE#1 and DCMF through signaling between the UE, IMS AS, and DCSF. UE#1 sends an HTTP request message including the received URL1 to DCMF via the bootstrap DC.
[0154] When DCMF receives the HTTP request message, it sends the HTTP message to DCAR, DCSF, or any other web server indicated by URL1 to download the application or application list to the UE.
[0155] The UE receives the application or application list via the bootstrap DC in response to the HTTP request message.
[0156] Similarly, at 25, a bootstrap data channel is established between the terminating network / UE#2 and the DCMF through signaling between the UE, the IMS AS, and the DCSF. The terminating network / UE#2 sends an HTTP request message including the received URL3 to the DCMF via the bootstrap DC.
[0157] When DCMF receives the HTTP request message, it sends the HTTP message to DCAR, DCSF, or any other web server indicated by URL2 to download the application or application list to the terminating network / UE#2.
[0158] The terminating network / UE#2 receives the application or application list via the bootstrap DC in response to the HTTP request message.
[0159] The apparatus may comprise means for receiving a request from user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; means for determining, based on the attributes, an address indicating a resource associated with at least one application or application list for the user equipment; and means for providing, using the address, the at least one application or application list to the user equipment via the bootstrap data channel.
[0160] The device may comprise, be, or be included in a network function, or may be a chipset for performing at least some actions of / for the network function. The network function may be a DCSF, a DCAR, or a web server.
[0161] Alternatively, the apparatus may comprise means for providing to a network function a request from user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; means for receiving, in response to the request, an address indicating resources associated with at least one application or application list to be provided via the bootstrap channel to the user equipment, the address determined based on the attributes; and means for providing the request from the user equipment for the at least one application or application list to the received address.
[0162] The apparatus may comprise, be, or be included in user equipment such as a mobile phone, or may be a chipset for performing at least some actions of / for the user equipment.
[0163] It is to be understood that the apparatus may comprise or be coupled to other units or modules, such as a radio section or radio head, used in or for transmitting and / or receiving. Although the apparatus has been described as one entity, the different modules and memories may be implemented in one or more physical or logical entities.
[0164] It should be noted that although some embodiments have been described in the context of 5G networks, similar principles may be applied in the context of other networks and communication systems. Thus, although certain embodiments have been described above by way of example with reference to particular exemplary architectures relating to wireless networks, technologies, and standards, the embodiments may also be applied to any other suitable form of communication system other than those shown and described herein.
[0165] It should also be noted that although exemplary embodiments are described hereinabove, there are several variations and modifications that can be made to the disclosed solutions without departing from the scope of the present invention.
[0166] As used herein, "at least one of: " and "at least one of " and similar phrases where a list of two or more elements is joined by "and" or "or" mean at least any one of the elements, or at least any two or more of the elements, or at least all of the elements.
[0167] In general, various embodiments may be implemented in hardware or special purpose circuitry, software, logic, or any combination thereof. Some aspects of the present disclosure may be implemented in hardware, while other aspects may be implemented in firmware or software that may be executed by a controller, microprocessor, or other computing device, although the present disclosure is not limited thereto. While various aspects of the present disclosure may be illustrated and described using block diagrams, flowcharts, or some other graphical representations, it will be well understood that these blocks, apparatus, systems, techniques, or methods described herein may be implemented in, by way of non-limiting example, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller, or other computing device, or some combination thereof.
[0168] As used in this application, the term "circuitry" may refer to one or more or all of the following: (a) hardware-only circuit implementations (e.g., implementations using only analog and / or digital circuitry); and (b) A combination of hardware circuitry and software, such as (where applicable): (i) a combination of analog and / or digital hardware circuitry and software / firmware; and (ii) any portion of a hardware processor with software (including a digital signal processor), software, and memory that cooperate to cause a device, such as a mobile phone or a server, to perform various functions; and (c) A hardware circuit and / or processor, e.g., a microprocessor or portion of a microprocessor, that requires software (e.g., firmware) to operate (although the software may not be present if not required for operation).
[0169] This definition of circuitry applies to all uses of the term in this application, including any claims. As a further example, as used in this application, the term circuitry also covers implementations of only a hardware circuit or processor(s), or implementations of portions of a hardware circuit or processor and its associated software and / or firmware. The term circuitry also covers, for example, baseband or processor integrated circuits for mobile devices, or similar integrated circuits in servers, cellular network devices, or other computing or network devices, if applicable to particular claim elements.
[0170] Embodiments of the present disclosure may be implemented by computer software executable by, for example, a data processor of a mobile device in a processor entity, or by hardware, or by a combination of software and hardware. Computer software or programs (also called program products), including software routines, applets, and / or macros, can be stored on any device-readable data storage medium and include program instructions for performing specific tasks. A computer program product may comprise one or more computer-executable components configured to perform embodiments when the program is executed. The one or more computer-executable components may be at least one software code or portion thereof.
[0171] Further, in this regard, it should be noted that any block of a logic flow, such as in the figures, may represent a program step, or interconnected logic circuits, blocks, and functions, or a combination of program steps and logic circuits, blocks, and functions. Software can be stored on physical media, such as memory chips or memory blocks implemented within a processor, magnetic media, such as hard disks or floppy disks, and optical media, such as DVDs and their data variations, CDs, and the like. Physical media are non-transitory media. As used herein, the term "non-transitory" is not a limitation on the permanence of data storage (e.g., RAM vs. ROM), but rather a limitation of the medium itself (i.e., tangible, not a signal).
[0172] The memory may be of any type suitable for the local technology environment and may be implemented using any suitable data storage technology, such as semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory, and removable memory. The data processor may be of any type suitable for the local technology environment and may include, by way of non-limiting examples, one or more of a general-purpose computer, a special-purpose computer, a microprocessor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), an FPGA, a gate-level circuit, and a processor based on a multi-core processor architecture.
[0173] Embodiments of the present disclosure may be implemented in a variety of components, such as integrated circuit modules. The design of integrated circuits is generally a highly automated process. Complex and powerful software tools are available for converting logic-level designs into semiconductor circuit designs ready to be etched onto semiconductor substrates.
[0174] The scope of protection sought for various embodiments of the present disclosure is defined by the independent claims. If any embodiments and features described herein do not fall within the scope of the independent claims, they should be interpreted as examples useful for understanding various embodiments of the present disclosure.
[0175] The foregoing description provides a complete and informative description of exemplary embodiments of the present disclosure, by way of non-limiting example. However, various modifications and adaptations will become apparent to those skilled in the art in light of the above description when read in conjunction with the accompanying drawings and the appended claims. However, all such and similar modifications of the teachings of this disclosure are within the scope of the present invention, as defined by the appended claims. Indeed, further embodiments exist that involve combinations of one or more of the embodiments with any of the other embodiments previously discussed.
Claims
1. 1. An apparatus comprising: means for receiving a request from a user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; means for determining an address indicating a resource associated with at least one application or application list for the user equipment based on the attribute; means for providing at least one application or a list of applications to the user equipment via a bootstrap data channel using the address; An apparatus comprising:
2. The apparatus of claim 1 , comprising: means for receiving a request from a user equipment via an application server.
3. 3. Apparatus according to claim 1 or 2, comprising means for providing an address to a user equipment.
4. The apparatus of claim 3 , comprising: means for providing an address to a user equipment via an application server.
5. The apparatus of claim 4 , wherein the address is provided to the user equipment in a Session Description Protocol message.
6. The apparatus according to claim 1 , further comprising: means for determining a further address indicating a resource associated with at least one application or application list for the terminating device based on the attribute; and means for providing the further address to the terminating device.
7. 10. The apparatus of claim 1, comprising: means for providing an address to a data channel media function.
8. 8. The apparatus of claim 7, wherein the request for at least one application or list of applications is sent from the user equipment to the address by a data channel media function.
9. The apparatus of claim 8 , wherein the request for at least one application or list of applications includes a pre-configured address.
10. 10. The apparatus of claim 1, comprising: means for receiving an identifier associated with a bootstrap data channel from a data channel media function; and means for associating the identifier with an address.
11. 11. The apparatus of claim 10, comprising means for receiving a request for an address from a data channel media function, the request including an identifier.
12. 12. The apparatus of claim 11, comprising means for providing an address to a data channel media function based on the identifier.
13. 13. The apparatus of claim 12, wherein the request for at least one application or list of applications is sent from the user equipment to the address by a data channel media function.
14. 11. The apparatus of claim 10, comprising: means for receiving a request for at least one application or application list from user equipment via a data channel media function, the request including an identifier; and means for sending the request to an address based on the identifier.
15. 15. Apparatus according to any preceding claim, wherein the apparatus comprises a data channel application repository or a data channel signalling function or a web server.
16. 16. Apparatus according to any preceding claim, wherein the address comprises a uniform resource locator.
17. 1. An apparatus comprising: means for providing a request from a user equipment to a network function to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; means for receiving, in response to the request, an address indicating a resource associated with at least one application or application list to be provided via a bootstrap channel to the user equipment, the address being determined based on the attribute; and means for providing a request from the user equipment for at least one application or a list of applications to the received address; An apparatus comprising:
18. 20. The apparatus of claim 17, comprising means for providing a request from a user equipment via an application server to establish a bootstrap data channel.
19. 19. Apparatus according to claim 17 or 18, comprising means for receiving an address at a user equipment via an application server.
20. 20. The apparatus of claim 19, comprising means for receiving an address at a user equipment in a Session Description Protocol message.
21. 21. Apparatus according to any of claims 17 to 20, wherein the network function comprises a data channel application repository or a data channel signalling function or a web server.
22. 22. Apparatus according to any of claims 17 to 21, wherein the address comprises a uniform resource locator.
23. 1. A method comprising: receiving a request from a user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; determining an address indicating a resource associated with at least one application or application list for the user equipment based on the attribute; providing at least one application or application list to the user equipment via a bootstrap data channel using the address; A method comprising:
24. 1. A method comprising: providing a request from the user equipment to the network function to establish a bootstrap data channel with the data channel server, the request including attributes associated with the user equipment; receiving, in response to the request, an address indicating a resource associated with at least one application or application list to be provided via a bootstrap channel to the user equipment, the address being determined based on the attribute; providing a request from the user equipment for at least one application or a list of applications to the received address; A method comprising:
25. 1. An apparatus comprising at least one processor and at least one memory that stores instructions, the instructions, when executed by the at least one processor, causing the apparatus to perform at least: receiving a request from a user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; determining an address indicating a resource associated with at least one application or application list for the user equipment based on the attribute; providing at least one application or application list to the user equipment via a bootstrap data channel using the address; An apparatus for carrying out the above.
26. 1. An apparatus comprising at least one processor and at least one memory that stores instructions, the instructions, when executed by the at least one processor, causing the apparatus to perform at least: providing a request from the user equipment to the network function to establish a bootstrap data channel with the data channel server, the request including attributes associated with the user equipment; receiving, in response to the request, an address indicating a resource associated with at least one application or application list to be provided via a bootstrap channel to the user equipment, the address being determined based on the attribute; providing a request from the user equipment for at least one application or a list of applications to the received address; An apparatus for carrying out the above.
27. A computer-readable medium containing instructions that, when executed by an apparatus, cause the apparatus to at least: receiving a request from a user equipment to establish a bootstrap data channel with a data channel server, the request including attributes associated with the user equipment; determining an address indicating a resource associated with at least one application or application list for the user equipment based on the attribute; providing at least one application or application list to the user equipment via a bootstrap data channel using the address; A computer-readable medium for implementing the above.
28. A computer-readable medium containing instructions that, when executed by an apparatus, cause the apparatus to at least: providing a request from the user equipment to the network function to establish a bootstrap data channel with the data channel server, the request including attributes associated with the user equipment; receiving, in response to the request, an address indicating a resource associated with at least one application or application list to be provided via a bootstrap channel to the user equipment, the address being determined based on the attribute; providing a request from the user equipment for at least one application or a list of applications to the received address; A computer-readable medium for implementing the above.
Citation Information
Patent Citations
How to switch between MBMS download and HTTP-based delivery of DASH-formatted content on an IMS network.
JP2014525699A
Discovering, validating, and configuring hardware-inventory components
US20140101467A1