Various embodiments relate to a geoinformation server; further embodiments relate to a geomessaging server; further embodiments relate to a client; and further embodiments relate to corresponding methods. In particular, various embodiments relate to techniques of communicating messages between the geoinformation server, the geomessaging server, and the client, the messages comprising payload data. Further embodiments relate to setting an operation parameter of a media stream based on such payload data.
Techniques of aggregating geoinformation on certain of observables locally experienced by clients attached to a wireless network are known. The geoinformation provides spatially-dependent information for various geolocations. E.g., for aggregation of geoinformation, geoinformation servers can be employed which access databases configured to store the geoinformation.
Sometimes, the geoinformation may be specific to the wireless network, e.g., correspond to a quality of a radio link of the wireless network or to the another figure of merit of the wireless network.
Beyond this, geoinformation is conceivable which is not related to the wireless network, but relates to different spatially-dependent observables.
Therefore, a need exists to distribute such geoinformation from geoinformation servers to clients. In particular, need exists for an architecture for distributing the geoinformation which enables a lean and efficient distribution of the geoinformation.
This need is met by the features of the independent claims. The dependent claims define embodiments.
According to embodiments, a geomessaging server is provided. The geomessaging server comprises at least one interface. The at least one interface is configured to communicate a first message with the geoinformation server. The first message comprises first payload data. The first message further comprises an indicator indicating a given service associated with the first payload data. The first message further comprises an indicator indicating a geolocation associated with the first payload data. The at least one interface is further configured to communicate a second message with a given client. The given client is attached to a wireless network and is associated with a given service. The second message comprises second payload data. The second payload data corresponds to the first payload data. The geomessaging server further comprises at least one processor. The at least one processor is configured to convert between the first message and the second message.
According to embodiments, a geomessaging server is provided. The geomessaging server comprises a memory and at least one processor. The memory contains instructions executable by said at least one processor. The geomessaging server is operative of to communicate a first message with the geoinformation server. The first message comprises first payload data and an indicator indicating a given service associated with the first payload data. The first message further comprises an indicator indicating a geolocation associated with the first payload data. The geomessaging server is further operative to communicate a second message with a given client is attached to a wireless network. The given client is associated with a given service. The second message comprises second payload data. The second payload data corresponds to the first payload data. The geomessaging server is further operative of to convert between the first message and the second message.
According to various embodiments, a client is provided. The client comprises a radio transceiver. The radio transceiver is configured to communicate with a wireless network via a radio link. The client further comprises an interface. The interface is configured to receive, via the radio transceiver and from a geomessaging server, a message. The geomessaging server is attached to the wireless network. The message comprises payload data. The payload data indicates a service quality of at least one of a bearer through at least parts of the wireless network and a media stream through the wireless network. The client further comprises at least one processor. The at least one processor is configured to set an operation parameter of the media stream based on the indicated service quality.
According to various embodiments, a client is provided. The client comprises a memory and at least one processor. Said memory contains instructions executable by said at least one processor. The client is operative to communicate with a wireless network via a radio link; and receive, from a geomessaging server attached to the wireless network, a message comprising payload data. The payload data indicates a service quality of at least one of a bearer through at least parts of the wireless network and a media stream through the wireless network. The client is further operative to set an operation parameter of the media stream based on the indicated service quality.
According to various embodiments, a system is provided. The system comprises a geoinformation server and a geomessaging server. The geomessaging server comprises a memory and at least one processor. The memory contains instructions executable by said at least one processor. The geomessaging server is operative of to communicate a first message with a geoinformation server. The first message comprises first payload data and an indicator indicating a given service associated with the first payload data. The first message further comprises an indicator indicating a geolocation associated with the first payload data. The geomessaging server is further operative to communicate a second message with a given client is attached to a wireless network. The given client is associated with a given service. The second message comprises second payload data. The second payload data corresponds to the first payload data. The geomessaging server is further operative of to convert between the first message and the second message. The geoinformation server comprises a memory and at least one processor. Said memory contains instructions executable by said at least one processor. The geoinformation service is operative to communicate the first message with the geomessaging server. The geoinformation server is operative of to convert between the payload data and geoinformation stored in a database.
According to various embodiments, a system is provided. The system comprises a geomessaging server and a client. The geomessaging server comprises a memory and at least one processor. The memory contains instructions executable by said at least one processor. The geomessaging server is operative of to communicate a first message with a geoinformation server. The first message comprises first payload data and an indicator indicating a given service associated with the first payload data. The first message further comprises an indicator indicating a geolocation associated with the first payload data. The geomessaging server is further operative to communicate a second message with a given client is attached to a wireless network. The given client is associated with a given service.
The second message comprises second payload data. The second payload data corresponds to the first payload data. The geomessaging server is further operative of to convert between the first message and the second message. The client comprises a memory and at least one processor. Said memory contains instructions executable by said at least one processor. The client is operative to communicate with the wireless network via the radio link; and receive, from a geomessaging server attached to the wireless network, the second message comprising the second payload data. The second payload data indicates a service quality of at least one of a bearer through at least parts of the wireless network and a media stream through the wireless network. The client is further operative to set an operation parameter of the media stream based on the indicated service quality.
According various embodiments, a geoinformation server is provided. The geoinformation server comprises an interface. The interface is configured to communicate a message with a geomessaging server. The message comprises payload data. The message further comprises an indicator indicating a given service associated with the payload data. The message further comprises an indicator indicating a geolocation associated with the payload data. The geoinformation server further comprises at least one processor. The at least one processor is configured to convert between the payload data and geoinformation stored in a database.
According to various embodiments, a geoinformation server is provided. The geoinformation server comprises a memory and at least one processor. Said memory contains instructions executable by said at least one processor. The geoinformation service is operative to communicate a message with the geomessaging server. The message comprises payload data and an indicator indicating a given service associated with the payload data. The message further comprises an indicator indicating a geolocation associated with the payload data. The geoinformation server is operative of to convert between the payload data and geoinformation stored in a database.
According to various embodiments, a method is provided. The method comprises communicating a first message between a geomessaging server and a geoinformation server. The first message comprises first payload data. The first message further comprises an indicator indicating a given service associated with the first payload data. The first message further comprises an indicator indicating a geolocation associated with the first payload data. The method further comprises communicating a second message between the geomessaging server and a given client. The given client is attached to a wireless network and is associated with the given service. The second message comprises second payload data. The second payload data corresponds to the first payload data. The method further comprises converting between the first message and the second message.
According to various embodiments, a device is provided. The device comprises means for communicating a first message between a geomessaging server and a geoinformation server. The first message comprises first payload data. The first message further comprises an indicator indicating a given service associated with the first payload data. The first message further comprises an indicator indicating a geolocation associated with the first payload data. The device further comprises means for communicating a second message between the geomessaging server and a given client. The given client is attached to a wireless network and is associated with the given service. The second message comprises second payload data. The second payload data corresponds to the first payload data. The device further comprises means for converting between the first message and the second message.
According to various embodiments, a computer program product is provided. The computer program product comprises program code which can be executed by at least one processor. Executing the program code causes the at least one processor to perform a method. The method comprises communicating a first message between a geomessaging server and a geoinformation server. The first message comprises first payload data. The first message further comprises an indicator indicating a given service associated with the first payload data. The first message further comprises an indicator indicating a geolocation associated with the first payload data. The method further comprises communicating a second message between the geomessaging server and a given client. The given client is attached to a wireless network and is associated with the given service. The second message comprises second payload data. The second payload data corresponds to the first payload data. The method further comprises converting between the first message and the second message.
According to various embodiments, a computer readable storage medium, having stored thereon a computer program, is provided. Execution of the computer program by at least one processor causes the at least one processor to execute a method. The method comprises communicating a first message between a geomessaging server and a geoinformation server. The first message comprises first payload data. The first message further comprises an indicator indicating a given service associated with the first payload data. The first message further comprises an indicator indicating a geolocation associated with the first payload data. The method further comprises communicating a second message between the geomessaging server and a given client. The given client is attached to a wireless network and is associated with the given service. The second message comprises second payload data. The second payload data corresponds to the first payload data. The method further comprises converting between the first message and the second message.
According to various embodiments, a method is provided. The method comprises communicating with the wireless network via a radio link. The method further comprises receiving, from a geomessaging server attached to the wireless network, a message. The message comprises payload data. The payload data indicates a service quality of at least one of a bearer through at least parts of the wireless network and media stream through the wireless network. The method further comprises setting an operation parameter of the media stream based on the indicated service quality.
According to various embodiments, a device is provided. The device comprises means for communicating with the wireless network via a radio link. The device further comprises means for receiving, from a geomessaging server attached to the wireless network, a message. The message comprises payload data. The payload data indicates a service quality of at least one of a bearer through at least parts of the wireless network and media stream through the wireless network. The device further comprises means for setting an operation parameter of the media stream based on the indicated service quality.
According to various embodiments, a computer program product is provided. The computer program product comprises program code which can be executed by at least one processor. Executing the program code causes the at least one processor to perform a method. The method comprises communicating with the wireless network via a radio link. The method further comprises receiving, from a geomessaging server attached to the wireless network, a message. The message comprises payload data. The payload data indicates a service quality of at least one of a bearer through at least parts of the wireless network and media stream through the wireless network. The method further comprises setting an operation parameter of the media stream based on the indicated service quality.
According to various embodiments, a computer readable storage medium, having stored thereon a computer program, is provided. Execution of the computer program by at least one processor causes the at least one processor to execute a method. The method comprises communicating with the wireless network via a radio link. The method further comprises receiving, from a geomessaging server attached to the wireless network, a message. The message comprises payload data. The payload data indicates a service quality of at least one of a bearer through at least parts of the wireless network and media stream through the wireless network. The method further comprises setting an operation parameter of the media stream based on the indicated service quality.
According various embodiments, a method is provided. The method comprises communicating a message between a geoinformation server and a geomessaging server. The message comprises payload data. The message further comprises an indicator indicating a given service associated with the payload data. The message further comprises an indicator indicating a geolocation associated with the payload data. The method further comprises converting between the payload data and geoinformation stored in a database.
According various embodiments, a device is provided. The device comprises means for communicating a message between a geoinformation server and a geomessaging server. The message comprises payload data. The message further comprises an indicator indicating a given service associated with the payload data. The message further comprises an indicator indicating a geolocation associated with the payload data. The device further comprises means for converting between the payload data and geoinformation stored in a database.
According to various embodiments, a computer program product is provided. The computer program product comprises program code which can be executed by at least one processor. Executing the program code causes the at least one processor to perform a method. The method comprises communicating a message between a geoinformation server and a geomessaging server. The message comprises payload date. The message further comprises an indicator indicating a given service associated with the payload data. The message further comprises an indicator indicating a geolocation associated with the payload data. The method further comprises converting between the payload data and geoinformation stored in a database.
According to various embodiments, a computer readable storage medium, having stored thereon a computer program, is provided. Execution of the computer program by at least one processor causes the at least one processor to execute a method. The method comprises communicating a message between a geoinformation server and a geomessaging server. The message comprises payload date. The message further comprises an indicator indicating a given service associated with the payload data. The message further comprises an indicator indicating a geolocation associated with the payload data. The method further comprises converting between the payload data and geoinformation stored in a database.
Furthermore, a carrier comprising one or more of the program codes is provided, wherein the carrier is one of an electronic signal, optical signal, radio signal or computer readable storage medium.
It is to be understood that the features mentioned above and features yet to be explained below can be used not only in the respective combinations indicated, but also in other combinations or in isolation, without departing from the scope of the present invention. Features of the above-mentioned aspects and embodiments may be combined with each other in other embodiments.
The foregoing and additional features and effects of the invention will become apparent from the following detailed description when read in conjunction with the accompanying drawings, in which like reference numerals refer to like elements.
In the following, embodiments of the invention will be described in detail with reference to the accompanying drawings. It is to be understood that the following description of embodiments is not to be taken in a limiting sense. The scope of the invention is not intended to be limited by the embodiments described hereinafter or by the drawings, which are taken to be illustrative only.
The drawings are to be regarded as being schematic representations and elements illustrated in the drawings are not necessarily shown to scale. Rather, the various elements are represented such that their function and general purpose become apparent to a person skilled in the art. Any connection or coupling between functional blocks, devices, components, or other physical or functional units shown in the drawings or described herein may also be implemented by an indirect connection or coupling. A coupling between components may also be established over a wireless connection. Functional blocks may be implemented in hardware, firmware, software, or a combination thereof.
Hereinafter, various techniques with respect to sending and/or receiving (communicating) messages between at least some of a geoinformation server, a geomessaging server, a client, and a media server are disclosed. In different disclosed examples, the corresponding communication links between such entities are discussed. E.g., in some embodiments, various aspects with respect to the communication link between the geoinformation server and the geomessaging server are disclosed; in some further embodiments, various aspects with respect to the communication link between the geomessaging server and the client are disclosed; in still further embodiments, various aspects with respect to the communication link between the client and the media server are disclosed. Because messages communicated along the various communication links may differ, examples of converting between the various messages are given.
Such communication links can comprise at least one of a control signalling communication link configured to exchange control messages and a data plane communication link configured to exchange messages comprising payload data.
The communication links can implement packetized communication where messages are conveyed by data packets. Techniques of segmentation and/or aggregation can be employed for mapping messages to packets.
Such communication links can comprise bi-directional and/or uni-directional communication. In examples where the client is involved, the different directions of communicating are sometimes referred to as uplink (UL) communication and downlink (DL) communication. Here, example communication links may provide for at least one of UL communication and DL communication.
The client may be a terminal attached to a wireless network. E.g., the client may be attached to the wireless network via a radio link of the wireless network. Sometimes, the client may be referred to as user equipment (UE). The client may comprise at least one of a smartphone, a tablet, a laptop, a computer, a smart television, a loudspeaker, a cell phone, a mobile phone, a portable computer, a vehicle like for example a car, etc.
The geoinformation server and/or the geomessaging server may be attached to the wireless network. E.g., the geoinformation server and/or the geomessaging server may be attached to the wireless network via an access point node (AP node) configured to establish communication between a core of the wireless network and a packed data network (PDN) comprising the geoinformation server and/or the geomessaging server.
The media server may be attached to the wireless network. E.g., the media server may be attached to the wireless network via an AP node configured to establish communication between the core of the wireless network and a PDN comprising the media server.
The wireless network may be a cellular network comprising a plurality of base station transceivers configured to transceive on the radio link and referred to, hereinafter, as access nodes. The wireless network may operate according to various standards and protocols.
Hereinafter, examples are disclosed are primarily in the context of the Third Generation Partnership Project (3GPP) Long Term Evolution (LTE) Radio Access Technology (RAT) for illustrative purposes only, where the wireless network may be referred to as a cellular network. Similar techniques can be readily applied to various kinds of 3GPP-specified RATs, such as Global Systems for Mobile Communications (GSM), Wideband Code Division Multiplex (WCDMA), General Packet Radio Service (GPRS), Enhanced Data Rates for GSM Evolution (EDGE), Enhanced GPRS (EGPRS), Universal Mobile Telecommunications System (UMTS), and High Speed Packet Access (HSPA). However, operation of the radio links is not limited to the scenario of a cellular network or a 3GPP-specified network. E.g., at least parts of the radio link(s) of the wireless network could be operated according to the Wireless Local Area Network (WLAN or Wi-Fi) RAT, Bluetooth, Near Field Communication, or Satellite communication. It is even possible that different radio links of different cells of the wireless network being implemented by a cellular network are operated according to different RATs.
In some examples related to the communication links between the geoinformation server, the geomessaging server, and the client, respectively, a first message is communicated between the geoinformation server and the geomessaging server and a second message is communicated between the geomessaging server and the client. The first message and the second message comprise payload data which corresponds to each other, i.e., is the same, carries the same or comparable information, and/or can be derived from each other. The first message may differ at least partly from the second message. Thus, the geomessaging server may be configured to convert between the first message and the second message, i.e., from the first message to the second message and/or from the second message to the first message.
In the various examples disclosed herein, converting may comprise changing the data format. Said converting may comprise adding and/or removing information to and from a header of the converted message. Said converting may comprise determining new payload data for the converted message based on the payload data of the received unconverted message. Said converting may comprise determining one or more indicators for the converted message, e.g., based on one or more indicators of the received first or second message and/or based on associations stored, e.g., accessible to the geomessaging server. Said conversion may comprise converting between a client-unspecific first message not directed to one or more specific clients and a client-specific second message which is directed to one or more specific clients, or vice versa. As such, the geomessaging server may be transparent to the payload data and pass on respective information.
In some examples related to the communication link between the geomessaging server and the client, the client is configured to receive, from the geomessaging server, a message comprising payload data. The client may then use the payload data in various ways, e.g., depending on the information comprised in the message. In some examples, the message may indicate a service quality of at least one of a bearer through at least parts of the wireless network or of a media stream through the wireless network; then, the client may be configured to set an operation parameter of the media stream based on the indicated service quality.
In some examples related to the communication link between the geoinformation server and the geomessaging server, the geoinformation server is configured to communicate a message with the geomessaging server, the message comprising payload data. The geoinformation server may be configured to convert between the payload data and geoinformation stored in a database.
Based on examples disclosed herein, various effects may be achieved. Some examples may facilitate information exchange and distribution between the geoinformation server and clients, e.g., depending on geoareas associated with each one of the clients. Hereby, lean and efficient distribution of information may be achieved. In some examples, the distributed information may be used to tailor properties of a media stream or other applications implemented on the client; these properties may be dependent on a geoarea associated with the client.
The PDN 140 may be the Internet. In other scenarios, the PDN 140 may implement an IP Multimedia Subsystem (IMS) and may offer multimedia applications, comprising the media stream 151, to the client 130 via the bearer 150. Other PDNs can be subject to the techniques as described herein.
In the example of
E.g., the bearer 150 (illustrated by the dotted line in
The cellular network 113 may comprise an access node 112. The radio link 111 is established between the access node 112 and the client 130. The bearer 150 is implemented via the radio link 111.
The bearer 150 is between the client 130, the eNB 112, the EPC 113A, and further the PDN 140. Various sub-bearers 150 can connect these different instances.
The client 130 is attached to the cellular network 113 implementing the EPS and referred to as Home Public Land Mobile Network (HPLMN).
The reference point implemented by the radio link 111 (shown by a dotted line in
The access node 112 is connected to a gateway node implemented by for example a Serving Gateway (SGW) 117. As such, the SGW 117 may route and forward data packets of the data transmission 150 and acts as a mobility anchor of the user plane during handovers of the client 130 between different cells of the cellular network 113. The reference point between the access node 112 and the SGW 117 operates according to the S1-U protocol.
The SGW 117 is connected via a reference point operating according to the S5 protocol to a further gateway node implemented by, e.g., a Packet Data Network Gateway (PGW) 118. The PGW 118 serves as a point of exit and point of entry of the cellular network 113 for data packets of the data transmission 150 towards the PDN 140. As such, the PGW is connected with the AP node 141 of the PDN 140 via a reference point operating according to the SGi protocol. The APNs of the AP nodes 141, 146 are used by the client 130 to seek establishment of the bearer 150 towards the PDNs 140, 145.
Access functionalities of the client 130 to the PDNs 140, 145, e.g., access functionality to the bearer 150, may be controlled by a control node implemented by a Mobility Management Entity (MME) 116. The MME 116 is connected via a reference point operating according to the S1-MME protocol with the access node 112. Further, the MME 116 is connected via a reference point operating according to the S11 protocol with the SGW 117. E.g., the MME 116 checks whether the subscriber associated with the client 130 is authorized to establish the bearer 150 by accessing the AP node 141; for this, the APN may be checked. The same may apply for the AP node 146.
Policy and charging functionality of the bearer 150 is controlled by a control node 119 implemented for example by a Policy and Charging Rules Function (PCRF) 119. The PCRF 119 is connected via a reference point operating according to the Gx protocol with the PGW 118. The PGW 118 may implement a Policy and Charging Policy and Charging Enforcement Function (PCEF) which is controlled by Policy and Charging Control (PCC) rules provided by the PCRF 119 via the Gx protocol.
E.g., the bit rate 157 may be measured in bits per second. The bit rate 157 may correspond to a potentially time-averaged data throughput of the media data delivered by the media stream 151. The bit rate 157 may correspond to a sampling rate of the media data. Here, typically a higher (lower) bit rate 157 may correspond to a higher (lower) service quality of the media stream 151.
E.g., the media type may correspond to a data format with which the media data is delivered by the media stream. Different media types may correspond to different bit rates 157 and may require different data throughput. The media type may be selected from the group comprising: high definition (HD) video; Full HD video; small definition (SD) video; HD audio; SD audio; still image; and text, Hypertext Markup Language (HTML). E.g., it is possible that the media server offers certain predefined candidate media types which may be indicated by a stream control message communicated from the media server to the client via the bearer 150.
The service quality 155, 156 of the bearer 150 and the service quality 157 of the media stream 151 may be location-dependent, i.e., they may vary as the client 130 moves through a coverage area of the cellular network 113. They may, therefore, depend on a geoarea associated with the client 130. A geolocation of the client may be located inside the geoarea associated with the client 130; the geoarea may be registered with the geomessaging server. The geoarea may correspond to the precision with which the geolocation of a client 130 is known to the geomessaging server.
Additionally, various further observables encountered by the client 130 may depend on the geolocation of the client 130. Examples comprise: a roadside situation 158 such as traffic velocity, open/closed roads, wiper status; rain status; traffic density; black ice, aquaplaning, and a congestion level; a temperature 159; an air pressure; an emergency information such as a catastrophic warning; etc. E.g., the traffic density may be determined by accumulating “I am here” answers.
As such, the service quality 155-157 of the bearer 150 and the media stream 151 may be understood as a particular geolocation-dependent observables related to the cellular network 113. However, other geolocation-dependent observables may not relate to the cellular network 113.
Hereinafter, techniques will be disclosed which enable to provide, to the client 130, geoinformation relating to one or more of such geolocation-dependent observables. E.g., the geoinformation may provide prospective estimates of the geolocation-dependent observables. E.g., the geoinformation may be employed by the client 130 to set operation parameters, e.g., of communicating via the bearer 150, etc.
Such geoareas 222 known to the geomessaging server may enable to implement the communication link between the geomessaging server and the client 130, 131 employing geomessages. Geomessages enable to distribute payload data selectively to certain clients 130, 131 located in a given geoarea 222. E.g., a geomessage may be sent to all clients 130, 131 located in a certain geoarea 222. Sometimes, distribution of a geomessage may be further tailored based on subscription to certain services. Then, only if a given client is subscribed to a certain service and is located in a given geoarea 222, a geomessage may be delivered to that given client.
In some scenarios, the geoarea 222 may be defined at the granularity of the grid cell of the geogrid 290. In other scenarios, the geoarea associated with a client 130, 131 may be defined at a finer granularity, i.e., at a sub-grid cell accuracy. This is illustrated in
In
For a given service, the geoinformation server 601 communicates a first message 751 comprising certain service-specific first payload data 221—which is derived from the geoinformation—to the geomessaging server 602. The first message 601 further comprises: an indicator indicating a given service—e.g., the media stream 151—associated with the first payload data 221; an indicator indicating a geolocation 224 associated with the first payload data 221; and, optionally, an indicator indicating a temporal validity 225 of the first payload data 221.
E.g., the given service may relate to the roadside situation or the media stream 151 or any other geolocation-dependent service. The respective indicator may explicitly or implicitly indicate the service. The indicator may specify the service in terms of a pre-negotiated code or by means of a web address or otherwise. The indicator indicating the given service is, hereinafter, referred to as service indicator.
E.g., the service indicator can be an alpha-numeric series of characters, e.g., an octet string. It may be chosen arbitrarily for each service. In particular, the geoinformation server 601, the geomessaging server 602, as well as the client of 130, 131 may use the same service indicator; e.g., the service indicator space can be synchronized at deployment time. It is conceivable to centrally register service indicators in order to avoid duplicate use of the same service indicator. Conflicts of use may further be avoided if the service indicator comprises, e.g., an Internet domain name which is registered for the respective service or vendor.
The indicator indicating the geolocation 224 may enable to derive the geoarea 222, 223 for which the first payload data 221 is relevant. For this, certain inter-relationships between the indicated geolocation and the geoareas 222, 223 of relevance may be considered. The respective indicator may specify the geolocation in a geoinformation server-specific format or in any other format, e.g., latitude and longitude.
The temporal validity 225 may specify one or more points in time or a time period. The temporal validity may specify a future point in time or time period—e.g., where the geoinformation server prospectively provides first payload data 221 to the geomessaging server 602. The temporal validity may specify an estimated time during which the geoinformation underlying the first payload data 221 is expected to be valid and accurate. The respective indicator may specify the temporal validity explicitly or implicitly. The indicator may specify the temporal validity 225 in terms of a pre-negotiated code or by means of a certain time format.
The first message 751 may not be client-specific, i.e., it may not be addressed to a certain client 130, 131. This enables to implement the geoinformation server 601 to be unaware of which clients 130, 131 are actually subscribed to the service for which the first payload data 221 is provided and/or which clients 130, 131 are actually located in a geoarea 222, 223 to which the first payload data 221 is relevant. This can enable to implement the geoformation server 601 in a lean and efficient manner. Further, the geoinformation server 601 may be versatile and not be tied to certain clients.
Differently, the geomessaging server 602 may have knowledge about the clients 130, 131, i.e., may store associations between the clients 130, 131 and a plurality of services; where the associations may indicate whether a given client 130, 131 is subscribed to a given one of the plurality of services. As such, the associations may link or cross-reference clients 130, 131 and services. Then, the geomessaging server 602 may convert the first message 751 into a second message 752 based on such associations. Here, the first message 751 may be referred to as client unspecific, while the second message 752 may be referred to as client specific. Both, the first and second messages 751, 752 comprise payload data 221 which is indicative of the geoinformation. Because of this, the first and second messages 751, 752 are sometimes referred to as notification messages 751, 752 as they inform clients 130, 131 about geoinformation.
The geomessaging server 602 may also have knowledge about which client 130, 131 is associated with which geoarea 222, 223. Then, based on some inter-relationships between the geolocation 224 associated with the payload data 221 and the geoareas 222, 223 associated with the clients, the geomessaging server can convert between the first and second notification messages 751, 752.
Considering the examples of
Alternatively or additionally to taking into account the associations between the clients 130, 131 and the plurality of services, said converting between the first and second notification messages 751, 752 may take into account further factors.
E.g., it may be possible to convert based on associations between the clients 130, 131 and geoareas 222, 223 associated with the clients 130, 131 and further based on the geolocation 224 associated with the first payload data 221. In this regard, the second notification message 752 may be addressed selectively to certain clients 130, 131 where a given inter-relationship between the geoareas 222, 223 associated with the respective clients 130, 131 and the geolocation 224 associated with the first payload data 221 is fulfilled. Alternatively or additionally, a geoaddress corresponding to the given geoarea 222, 223 associated with the respective clients 130, 131 may be comprised in the second notification message 752. This geoaddress may be used for routing purposes, e.g., internally in the geomessaging server 602. Alternatively or additionally, the geoaddress may be used in order to specify the geoarea 222, 223 at a fine granularity and with a high resolution.
E.g., it may be possible to convert based on the temporal validity 225 associated with the first payload data 221. E.g., the conversion may correspond to delaying sending of the second notification message 752, e.g., until a point in time which is indicated as valid by the temporal validity 225. Alternatively or additionally, the conversion may correspond to comprising a respective indicator indicating the temporal validity 225 in the second notification message 752. Comprising the indicator indicating the temporal validity 225 in the second notification message 752 is optional.
By delaying sending of the second notification message 752, it can be ensured that the second message 752 is received by the respective clients 130, 131 when it is actually relevant. For delaying sending of the second notification message 752, the geomessaging server 602 may implement a respective buffer.
By comprising the respective indicator indicating the temporal validity 225 in the second message 752, the respective clients 130, 131 may handle processing of the second payload data 221a as deemed necessary.
Once the conversion has been completed, the second notification message 752 is communicated from the geomessaging server 602 to the client 130, i.e., sent from the geomessaging server 602 to the client 130. The second notification message 752 is communicated as a geomessage, i.e., selectively addressed to some of the clients. E.g., in the scenario of
Various kinds and types of inter-relationships between the target geoareas 222, 223 associated with the clients 130, 131 and the geolocation 224 associated with the first payload data 221 data can be considered when converting between the first and second notification messages 751, 752. Corresponding aspects are illustrated in
Various combinations of the scenarios illustrated by
Further, it should be understood that the geolocation 224 associated with the first payload data 221 can be provided at different levels of accuracy. E.g., the geolocation 224 can be a point-like location, as illustrated in
While with respect to
The geoinformation server 601 maintains a database 601A, e.g., a network storage or cloud database or a database integrated in the geomessaging server 601. The database 601A comprises geoinformation that may be, e.g., empirically surveyed or entered manually, etc. The geoinformation can correspond to a service quality of the bearer 150 and/or a service quality 157 of the media stream 151. The geoinformation could also correspond to non-network specific observables such as a roadside situation 158, a temperature 159, etc.
Hence, it may be possible to derive payload data 221 comprised in a first notification message 751 sent to the geomessaging server 602 by conversion of the geoinformation data stored in the database 601A.
E.g., the database 601A may have a specific coverage; e.g., the coverage may correspond to the coverage area of a certain HPLMN. The geoinformation server 601 does not trigger notification messages to individual clients 130, 131. Rather, the geoinformation server 601 computes (for example continuously, periodically or when changes occur) a spatially inclusive and comprehensive first notification messages 751 which are disseminated to clients via the geomessaging system formed by the geomessaging server 602 and respective geomessaging clients 605 implemented as functional entities by the clients 130, 131. E.g., dissemination of the first notification messages 751 may be achieved as a feed of service-specific geotargeted messages. An individual client 130, 131 is not required to be addressed by the geoinformation server 601.
The communication link 611 between the geoinformation server 601 and the geomessaging server 602 may implement a control plane and a data plane. The data plane may be implemented by a reference point Gnu. The control plane may be implemented by a reference point Gns.
The geomessaging server 602 is configured to use spatial addressing to certain geoareas 222, 223, i.e., to implement geomessaging. While the geoinformation server 601 may send, per time, a single first notification message 751 per geoarea 222, 223—which is identified by the respective geolocation 224—the geomessaging server 602, according to examples, may send a plurality of second notification messages 752 to all clients 130, 131 located in the respective geoarea 222, 223 which are subscribed to the associated service. In this respect, the geoinformation server 601 may provide as many first notification messages 751 to achieve spatial inclusiveness for the coverage area of the respective service; while the geomessaging server 602 may provide as many second notification messages 752 to achieve client inclusiveness for all clients 130, 131 associated with the respective service. Thus, generally, the number of first notification messages 751 may differ from the number of second notification messages 752.
In particular, as the geoinformation may be associated with the temporal validity 225, it is possible that the amount of geoinformation to be distributed via the first and second notification messages 751, 752 varies as a function of time. The geoinformation server 601 can be configured to determine the temporal validity 225, e.g., based on data stored in the database 601A which is associated by the respective geoinformation.
In one example, the geoinformation server 601 can provide the first notification message 751 to the geomessaging server 602 at a point in time where the corresponding geoinformation is actually valid (beaconing mode). In such a scenario, it may not be required to include an indicator indicating the temporal validity 225 in the first notification message 751. In particular, it is not required that the geomessaging server 602 is aware of a temporal validity 225 of geoinformation comprised in the payload 211 of the notification message 751. E.g., the geomessaging server 602 can be configured to forward the underlying geoinformation by converting from the first notification message 751 to the second notification message 752 and sending the second notification message 750 in a timely manner, i.e., without any artificially introduced delays. Alternatively or additionally, it is also possible that the notification messages 751 comprise the indicator indicating the temporal validity 225 of the payload data 221. In such a scenario, it is possible that the geomessaging server 602 delays sending of the second notification message 752 according to the temporal validity 225. A simple example of a geoinformation comprised in the payload data 221 of the first notification message 751 which is associated with a temporal validity 225 could correspond to: “low performance of the bearer 150 (less than a data rate of 1 megabit per second)” with an associated geolocation 224 corresponding to “New York city limits” and temporal validity 225 corresponding to “8 AM to 10 AM”.
The communication link 612 between the geomessaging server 602 and the client 130, 131 may implement a control plane and a data plane. The data plane may be implemented by a reference point Glu. The control plane may be implemented by a reference point Gls.
In some scenarios, that client 130, 131 implements functional entities 605, 606 which correspond to clients associated with the geoinformation server 601 and the geomessaging server 602, respectively. E.g., the geomessaging client 605 communicates with the geoinformation client 606 via a communication link 615 which may implement a control plane and a data plane. The data plane may be implemented by a reference point Gcu and the control plane may be implemented by a reference point Gcs.
E.g., the geoinformation server 601 may provide the first messages 751 as a feed. E.g., the feed may periodically cycle through certain geoinformation associated with the respective service. E.g., the feed may pro-actively provide the first messages 751 to the geomessaging server 602; a request message may not be required. In a manner comparable to the radio receivers tuning into a specific station by frequency, the geomessaging server 602 and/or the geoinformation client 606 can tune into the geoinformation server 601 by a specific service indicator. The entirety of all service indicators is the “spectrum” of the geomessaging system 602, 605. In other examples, the first notification messages 751 may be provided on-demand, e.g., following respective requests from the geomessaging client 605 and/or the geomessaging server 602.
In the scenario of
As illustrated in
Converting a second notification message 752 to a first notification message 751 may be used to populate the geoinformation database 601A of the geoinformation server 601. E.g., the second notification message 752 may comprise second payload data 221a which may indicate a measurement report of the respective client 130, 131. The measurement report may comprise location information of the respective client. Depending on the service associated with the second payload data 221a of the second notification message 752, the measurement report may indicate measured values of observables of relevance for the respective service. E.g., considering a service generally related to roadside information, the measurement report may indicate measured values of observables selected from the group comprising: velocity; temperature; air pressure; still images of a surrounding of the client; etc.
Converting from the second notification message 752 to the first notification message 751 may correspond to discarding any client-specific information and may, alternatively or additionally, rely on inverse inter-relationships as explained with respect to
The respective communication link 661 may implement a data plane reference point Gmu and a control plane reference point Gms. The client 130 may be configured to set an operation parameter of the media stream 151 based on the service quality indicated by the received second notification message 752. As explained above, various operation parameters may be set, comprising the data rate 157 and the media type 157A.
As can be seen from the discussion of
Instead, the client 130 can form the interface between the geoinformation domain 600 and the application domain 650. This may be achieved by the data plane interface Gpu and the control plane interface Gps on a communication link 616 between the geoinformation client 606 and the media stream client 655.
Now turning to
The geomessaging client 605 attaches to the geomessaging server 602 by sending a respective control message 701. The geomessaging server 602 responds by sending a respective acknowledgment control message 702.
Then, the geomessaging client 605 sends a location update control message 703 which is acknowledged by the geomessaging server 602 by a respective location answer control message 704. The location update control message 703 specifies a current geolocation of the client 130, 131, e.g., with respect to a geoarea 222, 223. It is possible that the geomessaging server 602 sets the respective associations 500 between the plurality of clients 130, 131 and the plurality of geoareas 222, 223 based on the location update control message 703.
From time to time, the geomessaging client 605 can send respective location update control messages 703 (not shown in
At this point, the geomessaging client 605 is attached to the geomessaging server 602. The geomessaging system 602, 605 is ready to implement transport layer-functionality for the geoinformation system 601, 606.
Next, the geoinformation server 601 is attached to the geomessaging server 602 using a dedicated service indicator; a respective control message 705 is used to establish a connection and optionally authenticate. The geomessaging server 602 responds with the acknowledgment control message 707. Various protocols may be used, e.g., based on HTTP/Transport Control Protocol (TCP). Reverse Asynchronous JavaScript and XML (AJAX) may be used.
Also, the geomessaging client 605 of the respective client 130, 131 enables registering the geoinformation client 606 at the geomessaging server 602 using the service indicator. Respective control messages 706, 708 are illustrated in
The geoinformation client 606 can now receive notification messages 751, 752, 753 from the geoinformation server 601 via the data plane reference point; this is achieved by converting a first notification message 751 received by the geomessaging server 602 into a second notification message 752 and sending on the second notification message 752 to the client 130, 131. The geomessaging client 605 can then optionally convert the second notification message 752 to a third notification message 753 which is provided to the geoinformation client 606. The second notification message 752 comprises the service indicator; thereby, the client 130, 131 can recognize the second message 752 as belonging to the respective subscription and then may execute appropriate actions—such as setting an operation parameter of the media stream 151. By means of the notification messages 751, 752, 753, the client 130, 131 regularly obtains updates on certain geoinformation associated with the subscribed service.
E.g., in scenarios where a higher accuracy is desired with respect to the geoarea 222, 223 than provided by a grid cell, it is possible that the second notification message 752 comprises a geoaddress specifying the geolocation 224. At the geomessaging server 602 the decision may be taken to either include geoarea 223 as a geoaddress in second message 752 if the geoarea 222 corresponding to a certain grid cell is not completely covered by geolocation 224, or to exclude it otherwise. In certain examples, no geoaddress needs to be added to second message 752 if a geoarea 222 corresponding to a grid cell is fully covered by geolocation 224. In such a scenario, it is possible that the geomessaging client 605 compares the geoaddress with the current location of the client 130, 131 and selectively executes respective settings depending on the comparison, e.g., selectively executes said setting of the operation parameter of the media stream 151 depending on said comparing. Said comparing can be based on inter-relationships as illustrated above with respect to
Next, turning to
Next, the client 130, 131 receives a stream control message 802, sometimes referred to as the SDP. The stream control message 802 indicates the SDP, e.g., a plurality of candidate operation parameters of the media stream 151. The client 130, 131 can then set the operation parameter of the media stream 151 by selecting the operation parameter from the indicated plurality of candidate operation parameters of the media stream 151.
For this, the media client 655 connects with the geoinformation client 606 by receiving a respective control message 803 which specifies the service indicator. The media client 655 then sends a control message 804 indicating the candidate operation parameters of the media stream 151, i.e., the SDP. The geoinformation client 606 responds with a control message 805 which instructs the media client 655 to initiate the media stream 151 based on certain operation parameter selected from the candidate operation parameters as indicated by the control message 804. This triggers sending of the play control message 806 from the media client 655 to the media server 651; in response to the play control message 806, media data 809 is streamed from the media server 651 to the media client 655, i.e., the media stream 151 is initialized.
It should be understood that the distribution of logic, in particular of the internal entities 655, 606 can vary for different scenarios. E.g., while in the scenario
A situation as illustrated with respect to
The media client 655 provides a first notification message 1001 comprising a measurement report indicating the service quality of the media stream 151 for a respective media playback to the geoinformation client 606, e.g., in a reoccurring manner or after a track has finished or when the geolocation of the client 130, 131 has changed significantly. Then, respective second and first notification messages 1002, 1003 are sent via the geomessaging system 602, 605 to the geoinformation server 601. The measurement report can comprise the respective geoarea 222, 223 associated with the client 130, 131 and/or the service indicator. In some examples, the measurement report may be sent anonymously such that sensitive data associated with a subscriber of the client 130, 131 may not be compromised.
In some scenarios, the program code may be provided on a readable storage medium such as an electronic memory like RAM, ROM, EEPROM, flash memory, magnetic tape, CD-ROM, DVD, Blueray, USB stick, etc.
A second notification message 752 is communicated at 1003. The second notification message 752 comprises second payload data 221a. Optionally, the second notification message 752 may comprise the indicator indicating the given service and/or an indicator indicating a geoarea 222, 223, i.e., a geoaddress, which may further comprise a validity time indicator.
At 1002, conversion between the first notification message 751 and the second notification message 752 takes place. The conversion can correspond to a change of the data format of the notification messages 751, 752, adding/removing of indicators, etc. In particular, as part of the conversion of 1002 associations 500 between the respective service associated with the first and second notification messages 751, 752 and clients 130, 131 can be considered, e.g., for routing. Further, as part of the conversion of 1002, associations 500 between the respective geoareas 222, 223 and clients 130, 131 can be considered, e.g., for routing.
In some examples, first, the first notification message 751 may be received at 1001 and then, second, the second notification message 752 may be sent at 1003. In other examples, first, the second notification message 752 may be received at 1003 and then, second, the first notification message 751 may be sent at 1001.
At 1011, the second notification message 752 is received. The second notification message 752 indicates a service quality of the bearer 150 and/or a service quality of the media stream 151.
Next, at 1012, the operation parameter of the media stream 151 is set based on the indicated service quality. E.g., at 1012, a media type and/or a bit rate of the media data provided by the media stream 151 may be set.
In some scenarios, 1012 may be executed while the media stream 151 is active, i.e., while media data is being streamed; while in further scenarios, 1012 may be executed for the media stream 151 which is not streaming media data, i.e., is inactive. This scenario may occur where the media stream 151 has not been set up yet.
E.g., at 1021, the first notification message 751 may be sent to the geomessaging server 602 and/or received from the geomessaging server 602.
At 1022, conversion between the payload data of the first notification message 751 and geoinformation stored in the database 601A is executed. Depending on whether the notification message 751 is sent or received, 1022 can be executed before or after 1021.
At 1034, the geomessaging server 602 converts from the first notification message 751 to the second notification message 752. Said conversion is based on the associations 500 between the plurality of clients 130, 131 and the plurality of services; as well as based on the associations 500 between the plurality of clients 130, 131 and the plurality of geoareas 222, 223. In particular, by converting at 1034, the client-unspecific first notification message 751 can be translated in one or more client-specific second notification messages 752.
Next, at 1035, the second notification message 752 is communicated from the geomessaging server 602 to the client 130, 131. Hence, as part of 1035, the second notification message 752 is sent by the geomessaging server 602 and received by the client 130, 131.
At 1036, candidate operation parameters of the media stream 151 between the media server 651 and the client 130, 131 are communicated; e.g., a respective stream control message 901, 905 may be received by the client 130, 131 from the media server 651. Then, at 1037, the client 130, 137 sets the operation parameter of the media stream 151 by selecting the operation parameter to be implemented from the candidate operation parameters indicated by the stream control message; this is based on the geoinformation indicated by the second notification message 752 received earlier.
At 1043, the second notification message 752 is converted to the first notification message 751 based on the associations 500 between the plurality of clients 130, 131 and the plurality of geoareas 222, 223 associated with the clients 130, 131. E.g., as part of 1043, a respective geolocation 224 may be determined and included in the first notification message 751. E.g., this may be the geolocation 224 where the client 130, 131 was moving while taking a corresponding measurement. In other scenarios, the geoarea 222, 223 associated with the second notification message 752 may explicitly indicate the geolocation 224; then no determination may be required.
Next, at 1044, the first notification message 751 is communicated from the geomessaging server 602 to the geoinformation server 601. I.e., as part of 1044, the geomessaging server 602 may send the first notification message 751 and the geoinformation server 601 may receive the first notification message 751. Then, the geoinformation server 601 converts the first notification message 751 to geoinformation, 1045, and writes the geoinformation to the database 601A. By this, the database 601A can be updated and populated in order to increase an accuracy of the geoinformation.
While the various techniques discussed above with respect to
Referring to
Referring to
Referring to
Summarizing, above techniques have been illustrated which enable lean and efficient distribution of geoinformation. In particular, an architecture has been disclosed which enables to implement the geoinformation server which provides client-unspecific notification messages; distribution of the geoinformation is medicated by a geomessaging system which acts as a transport layer for the client-unspecific notification messages.
According to some examples, the geoinformation may relate to a service quality of a bearer and/or a service quality of a media stream. Such information may be used in order to set an operation parameter of the media stream. E.g., a media server providing the media stream may be capable of sending a number of variants for the same media stream, e.g., different qualities of media data. Likewise, the client may be capable of receiving and playing back the different variants of the same media stream. By combining the geoinformation server with the geomessaging system, it becomes possible to distribute the service quality required to accurately set such operation parameters as the media type of the media stream in a lean and efficient manner.
Although the invention has been shown and described with respect to certain preferred embodiments, equivalents and modifications will occur to others skilled in the art upon the reading and understanding of the specification. The present invention comprises all such equivalents and modifications and is limited only by the scope of the appended claims.
E.g., while above various scenarios have been discussed with respect to the specific service regarding a media stream, various modifications are conceivable such that the respective techniques are applicable to different services. E.g., respective techniques may be applied to a service relating to roadside information, weather forecast, etc.
E.g., while above various scenarios have been discussed with respect to the geomessaging client and geoinformation client and media client as functional entities implemented by the clients, it should be understood that generally a different distribution of functions can be implemented by the clients. E.g., a single functional entity may perform the various tasks with respect to geomessaging and geoinformation handling and service handling, such as media stream playback.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2015/075909 | 11/6/2015 | WO | 00 |