The present invention relates to telecommunications, and more particularly to a method, a system, a network element, a user equipment, and a computer program product according to the preambles of the independent
In public communications systems, multi-user communication has traditionally been provided with a conference call service. A conference call is based on simultaneous individual telephone calls that are interconnected through a bridging facility, and allows users from several diverse locations to be connected for shared communication. Collecting a conference call by setting up the number of calls is a time-consuming task, and thus multi-user calls have not been widely used in public telecommunication. With the increasing and continually diverging usage of telecommunication, also the interest in instant group communication has recently risen remarkably.
A group is defined by a set of rules that identifies a collection of members. Group communication, as used herein, thus refers to a multipoint communication relationship that exists between the members of a group for the purpose of transferring data. Groups are created logically, which means that special group communication information maintained in the system associates a specific user with a particular group. One user may be a member in one or more groups, and the association can typically be dynamically created, modified and/or cancelled. Very often the members in a group belong to a specific organization, such as to a private company, a logistic fleet etc. One organization may have several individual groups, for example sets of groups, categorized according to their functional tasks. Also private persons may be associated to talk groups, such as hobby groups, sport groups, etc.
Conventionally, group communication has been available in trunked mobile communications systems, such as Professional Mobile Radio (PMR) systems. PMR systems are special radio systems primarily intended for professional and governmental users. In PMR systems, the group communication service functionality has mainly been inherently integrated into the switching and connection set-up or call control functionalities of the communications system. In a more recent approach, a public mobile communication system has been configured to provide the group communication service functionality as a packet-based user or application level service. In the solution, the underlying communications system provides the basic connections (e.g. IP connections) between the group communications applications in devices and the group communication service. An example of such solutions is Push-to-talk over Cellular (PoC), an overlay speech service provided by a communication server system.
One of the problems associated with the above arrangement relates to management of group communication, and especially to management of floor access in group communication. Floor access in this context relates to one member's access to the media delivery path. The operating situations where group communication is utilized comprise several instances where floor access of some members is critical for the ongoing action. It is very important that at all times some defined members of the group would be able to take the lead and get their message through to all other members as soon as possible and as frequently as necessary. Due to the dynamic nature of the operations and the related communication, the need for such diversified use may change dynamically. Thus preferably any applied control to the floor access should be dynamically adjustable.
Prior art solutions for floor access control propose use of queuing and priority. Priority herein refers to a value defined for a communicating unit, giving it a relative precedence to floor access. In European Telecommunications Standards Institute defined Terrestrial Trunked Radio (TETRA) systems, priorities are used to enable preferential access for defined call types (e.g. an emergency call) and/or for defined group members. In group communications, simultaneous speech item requests from different members are queued, and speech items are granted to queuing members by a procedure that takes into account the priorities of the members. Such priority based arrangement is also defined for PoC systems.
The problem is, however, that the actions necessary for getting to the queue and thus being part of the procedure where prioritizing may be applied also need to be accessed, and it generates traffic to the system. When several members try to get floor access and press their PTT-buttons, the communication gets congested and queuing and prioritizing members in queue may not work anymore. Congestion may concern only one particular group, for example an unexpected operational situation may drive a well operating group into communicational havoc, when everyone involved tries to get their observations and opinions overheard. Correspondingly, a general major incident may block the whole radio access system and important operational information gets drowned into the mass of chaotic communication. In the worst case, the traffic and attempts of access to a system may increase exponentially and the avalanche effect may collapse to whole system to be inoperable.
To prevent such severe situations, radio systems are typically arranged with technical means to control, limit or prevent the attempts of radio access by using priorities and broadcasted information on system access rules. For example, in a TETRA system the operator has an option to transmit from defined base stations at defined intervals an ACCESS-DEFINE packet data unit. The ACCESS-DEFINE packet data unit contains fairly slowly changing information about random access parameters for an access code, including the priority and mobile station binding. The binding of mobile stations defines a minimum valid priority for an access code. It may also restrict use of the access code to a set of subscriber classes, or to a group of mobile stations. The base station may dynamically optimize the system performance by varying the access code bindings with the other access parameters.
Another example of a radio interface level control mechanism is in the 3rd Generation Partnership Project (3GPP) specified GSM/EDGE radio access network (GERAN) system. In GERAN a base station may broadcast a PRIORITY_ACCESS_THR parameter indicating priorities that are allowed to attempt packet access in that particular cell. Packet access may thus be prevented in the whole cell or limited to a group of prioritized users, based on user priorities used by the terminal.
Consequently, there exists several arrangements to control the traffic load on radio layer. However, when considering end-to-end scenarios, and especially the dynamic nature of group communications, these mechanisms are not adequate. On radio access layer, different users are typically multiplexed to use a shared resource, and their priorities are adjusted applicable on the radio access system. However, their priorities on higher layers may greatly differ from that priority allocated on radio access layer. It may also be that there is no need to limit the access on radio layer, but detrimental congestion takes place on other layer or on a functional or logical group. For example, the load levels of the overall system may be low, but in certain particular communications group the communication may be overloaded. If there are tens of users in a group or conference and everyone tries to get access to floor, communication may not succeed as intended and in worst case the signaling channel related to floor control entity may end up being blocked.
Additionally, group members may reside in several different locations scattered around the whole coverage area. Mapping of a dynamic group level need to the physical configuration of the network is extremely complicated and performing appropriate control operations in a various number of cells is practically impossible. Furthermore, it is clear that while there may be several different and overlapping groups, a further mechanism would be needed to arbitrate between the needs of different groups.
An object of the present invention is thus to provide a method, a system, a network element, a user equipment, and a computer program product so as to enhance the control of floor access in a group communication. The objects of the invention are achieved by a method and an arrangement, which are characterized by what is stated in the independent claims. The preferred embodiments of the invention are disclosed in the dependent claims.
The invention is based on the idea of controlling the possibility to request floor access in a group session already before the requests end up congesting the system. A network element is arranged to monitor whether there exists a defined situation where enhanced floor access control for the session is necessary. When such situation is detected, the network element sends an indication to the user equipment of a defined member or defined members participating the session. After receiving the indication the user equipment checks the priority statement in the indication and compares it to its own priority. If its priority does not correspond with the priorities stated allowed in the priority statement, the user equipment refrains from sending floor access requests either until new and different information is received or for a defined period. The indication is valid for each group session separately.
An advantage of the invention is that improves group communication and optimizes use of network resources in systems that provide group communication.
In the following the invention will be described in greater detail by means of preferred embodiments with reference to the attached drawings, in which
The present invention is applicable to any digital communication system that provides group communication service. Group communication, as used herein, refers to a multipoint communication relationship between members in a group for the purpose of transferring data. Members in the group are defined with special group communication information that associates a specific user with the particular group. As an example of a system environment where the present invention may be applied, floor access in a mobile communication system with a Push-to-talk over Cellular (PoC) server system is described with reference to
As illustrated in
Push-to-talk over Cellular (PoC) is an overlay speech service in a mobile cellular network where a connection between two or more parties is typically established for a long period but the actual radio channels in the air interface are activated only when someone is talking. This corresponds to the usage of traditional radiotelephones where the radio frequency used is agreed between the parties (e.g. military/police radios, LA radios) or permanently set (walkie-talkie type of radios) and whenever someone wants to talk, she/he presses the tangent, which activates the radio transmission on the selected channel. The traditional radiotelephone services are, however, simplex by their nature so that only one party (the one who is pressing the tangent) can talk at a time.
More specifically, in voice communication with a “push to talk, release to listen” feature, a call is based on the use of a pressel/button (ptt, push to talk switch) in a telephone as a switch: by pressing a pressel/button the user indicates his/her desire to speak, and the user equipment sends a service request to the network. Alternatively, a voice activity detector (VAD) or any suitable means can be used instead of the manual switch. The network either rejects the request or allocates the requested resources on the basis of predetermined criteria, such as the availability of resources, priority of the requesting user, etc. At the same time, a connection is also established to a receiving user, or users in the case of group communication. After the voice connection has been established, the requesting user can talk and the other users can listen. When the user releases the button, or in the case of traffic inactivity, the event is detected in the network. The resources may be released and/or a talk item may be granted to another user.
In
Conceptually, a packet based media communication system is provided on top of the mobile network in order to provide media communication services to user equipment through the communication system. The media communication system may be embodied as a server system, and it is generally referred to as a media communication server herein. A media communication system may comprise a plurality of media communication servers 14,15.
A media communication server 14, 15 may comprise control-plane functions and user-plane functions that provide packet mode server applications communicating with the communication client application(s) in the user equipment over the IP connections provided by the communication system. This communication includes signaling packets and voice or data communication packets. Since both group and user specific requirements are needed, there may be two kinds of control-plane functions. Session Initiation Protocol (SIP) sessions for group communications are handled by a Group Control Plane Function (G-CPF). When a user connects to a group, the G-CPF takes care of the related SIP invitation transaction and performs the proper mapping settings between the user's recipient and the network entities responsible for the related traffic distribution. A User-Control Plane Function (U-CPF) is basically the control plane interface between the IP network and the user. By this network entity, the users log on to the system and negotiate their operational settings (scanning settings, selected group etc.). U-CPF handles the user's profile and manages his or her one-to-one calls. It should be appreciated that this is just a logical separation, and both kinds of Control Plane Functions can be situated in the same computer. However, this logical separation of G-CPF and U-CPF enables users to join groups handled by G-CPF in different intranets or in mobile networks of different operators and IP domain. The division also brings scalability by allowing, in practice, an infinite number of groups or users in the system.
In a functional PoC architecture, as shown in
In the functional PoC architecture, a PoC Server 24 represents a media communication server that is the end-point of SIP, Real-time Transport protocol (RTP) and Real-time Transport Control Protocol (RTCP) signaling, provides SIP session handling, policy control for access to groups, group session handling, access control, do-not-disturb functionality, floor control functionality, talker identification, participants information, quality feedback, charging reports and media distribution.
Herein group information relates to a defined information element that associates a specific user with one or more groups. Group information in PoC is structured into groups, contact lists and access lists. The operation of a Group and List Management Server (GLMS) 25 in PoC thus comprises management of groups 26, contact lists 27 and access lists 28 stored in the GLMS. Contact lists 27 are used for storing contact entries in the GLMS server, and act as address books for the PoC users in establishing an instant talk session with other PoC users or PoC groups. A PoC user may have one or more contact lists, and each contact list is uniquely identified by its SIP URI. The PoC user stores user contacts in lists of the type “user” and group contacts to lists of the type “group”. Entries within one list are of the same type. GLMS allows manipulation of contact lists, and manipulation of identities in a contact list. A user who creates a contact list will automatically become its owner, and basically only the owner is allowed to manipulate the list. The owner of the list may reliably create, store, modify, retrieve, and delete contact lists, as well as add and remove end user and group identities to/from the list and add and remove contact lists themselves. By specification, when the user stores or adds a new identity into the contact list, the GLMS validates that the given address [SIP Uniform Resource Identifier (SIP URI) or Telephone Uniform Resource Locator (TEL URL)] is syntactically valid, but does not validate that the identity represents an existing entity.
Access lists 28 are used to define who is allowed or is not allowed to reach the PoC user via PoC service. When the PoC Server 24 is requested to add a participant to a talk session, the access lists are matched against the identity of the initiator of the talk session request. An access list comprises definitions on who is or is not allowed to reach a specific user via the PoC service. A PoC user may have a list of blocked identities, also called a user reject list, and a list of granted identities, also called a user accept list. The access lists are activated or deactivated by setting an attribute “in use”. The GLMS allows the PoC user to manipulate identities and attributes of his/her own user accept lists and user reject lists.
Group lists 26 are used to define PoC specific groups. PoC users may store and retrieve groups located in the GLMS server as well as create and delete groups and change their attributes, including manipulation of lists that are part of a group definition. In creating the group, the GLMS validates that the given SIP URI or TEL URL is syntactically correct. A PoC user may have none or several groups defined.
For a person skilled in the art it is clear that the definitions in this context relate to the specific PoC embodiment of the present invention, and the invention should not be interpreted to be limited to the terms and definitions used herein. Group information that associates specific user with one or more groups may be structured arbitrarily according to the service utilizing group communication.
The invention is first illustrated in context of a pre-arranged group session setup, originated by an inviting PoC client 30. A pre-arranged PoC group is a group having a pre-defined group identity and member list. A prearranged PoC group session is initiated by one of the members, and when a pre-arranged PoC group session is initiated, all other group members are invited. The pre-arranged PoC group session is established by using the group identity in the invitation message.
An inviting PoC Client 30 is arranged to send all its requests to the SIP/IP Core of its own network, hereinafter denoted as CoreA 32. The inviting PoC Client 30 indicates in the request that it communicates using PoC so that it is possible for CoreA 32 to route the requests to the PoC Server of the inviting PoC Client PoCA 33. The request is delivered conventionally through SIP/IP core configuration to a PoC Server PoCB 34 of the invited client PoCB 31. When the network of the invited client PoCB 31 receives the request it performs any necessary terminating service control, and if the session establishment is determined to continue, the terminating PoC Server PoCB 34 routes the request to the terminating client via the SIP/IP Core of the invited client PoCB 31, hereinafter denoted as CoreB 35.
In general, a PoC Server implements the application level network functionality for the PoC service. The PoC server may have different roles, and the determination of the role of the PoC Server (Controlling PoC Function and Participating PoC Function) takes place during the PoC Session setup. The PoC server maintains the determined role for the duration of the whole PoC Session. In
PoCX performs the necessary terminating service control and thereafter invites the other members to the pre-arranged PoC session. In the case the PoC group session is already ongoing, the ClientA is added to the PoC Session. The INVITE request from PoCX to PoCB in step 4.3 carries at least the following information elements: PoC address of the PoC user at ClientA, media parameters of PoCx, a PoC service indication, PoC address of the PoC user at ClientB, PoCx assigned indication, proposal for talk burst control protocol, and pre-arranged group identity. The INVITE request from PoCB to ClientB in step 4.4 carries at least following information elements: a PoC service indication, PoC address of the PoC user at ClientB, media parameters of PoCB, manual answer request, proposal for talk burst control protocol, and prearranged group identity.
When the ClientB receives the INVITE request it sends back an ALERTING indication 4.5 that is transferred through PoCB to PoCx (step 4.6). When the ALERTING response is received PoCx sends a ringing response (4.7 and 4.8) towards ClientA. When ClientB receives the indication that the user accepts the PoC Session, ClientB sends OK response for the INVITE. The OK response is transferred through the PoC servers to ClientA (steps 4.9 to 4.12).
According to the invention, in step 4-13 the controlling PoC server checks a defined control condition to determine whether a need to control floor access exists or not. The control conditions and checking procedure is discussed in more detail below. When such need exists, PoCx sends a talk burst access right indication. In the embodiment of
For a person skilled in the art it is clear that the above embodiment merely illustrates one implementation of the invention, and does not limit the scope of protection to the system, elements and messages used in the description. For example, the setup does not have to relate to a pre-arranged group session, but the invented procedure may be applied to several other types of session setups. The talk burst access right indication may be given in the actual setup phase (SIP INVITE) of the session, as described below, or transmitted separately to a member that joins (SIP REFER) on ongoing session at the time of joining the session. In the latter case the talk burst access right indication may be included, for example, in a the response message of the session setup (SIP REFER), or in a separate message delivered directly after the session setup.
Another alternative possibility for delivering the talk burst access right indication is to include it in any control message delivered during an ongoing session.
For a person skilled in the art it is clear that in practical implementations there are several possible messages for delivering the floor access control indication. In the embodied system the message may be, for example, a separate SIP message or a separate floor control message comprising information for updating the access rights, or a readily specified floor control message embedded with new information on floor control access rights.
A need to control floor access may originate from several reasons, and the condition to be checked by the PoC server may be arranged in a number of ways according to any current application. One reason for controlling the talk burst requests may be congestion in group communication. When a group has several members and each one of them is trying to request a permission to send a talk burst, the communication in group gets congested from too many attempts. In such case the PoC server may be arranged to receive a congestion indication illustrating the congestion level of communication. When the PoC server determines that the congestion level exceeds a pre-defined level, it begins to include a talk burst access right indication to all new session setups, as described above.
The need for controlling floor access may also be based on operational strategies. A group that has many members may be allowed to operate without any additional controlling in normal conditions, but in urgent operating conditions it is important that only a higher rank group of members gets to talk, while the others only listen to the commands. Such dynamic control may be triggered manually or automatically, as described above. Naturally some groups may also be statically set to the allow talk burst requests only from defined members with appropriate priority levels.
The need for controlling floor access may also be based on the dynamic nature of the network usage. The system may comprise several groups that communicate independently. However, in case some major incident takes place, it is obvious that communication in all groups gets more frequent and the network begins to congest. In such case the network operator needs a toll to dynamically limit the communication for a defined number of prioritized users.
The indication may be automatic or manual. In an automatic indication the PoC server may, for example, be arranged with an application that monitors a parameter that corresponds with the congestion level of the communication. Such parameter may be, for example, the rate of talk burst requests in a predefined interval, or
In a manual indication the PoC server may, for example, be connected with a dispatcher application. A dispatcher that operates as a member of the group may monitor the group communication and based on his or her judgment send to the PoC server a congestion indication. Receiving of the congestion indication triggers inclusion of the talk burst access right indication in all new session setups, as discussed above.
According to the invention, when ClientA receives a talk burst access right indication from the PoC server, it adjusts its operation by refraining from sending of talk burst requests for a defined period. The period may be a predefined time interval, or the sending may be stopped until further instructions from the PoC server. The interpretation and further actions related to a received talk burst access right indication may be implemented according to the system. In the described PoC configuration, priorities are preferably used. Each PoC may be given a priority level. A user may have one priority that is valid for each group he or she is a member of, or separately set priorities for each group.
The format of the talk burst access right indication may be freely adjusted without deviating from the scope of protection. The usage of bandwidth is optimized when the indication is implemented as a reserved bit pattern, where the number of necessary bits is adjusted according to number of the priority levels. As an example, in a case of four priorities; Priority1 (P1), Priority2 (P2), Priority3 (P3) and Priority4 (P4) the corresponding bit pattern may be “XYZW” where X=P1, Y=P2, Z=P3 and W=P4. In this exemplary case, the bit patterns could be interpreted as follows:
“1000”=>Only Priority 1 members SHALL are able to request a Talk Burst (Floor)
“1001”=>Only Priority 1 and priority 4 members are be able to request the Talk Burst (Floor)
“1111”=>All members have rights to request a Talk Burst (Floor)
For a person skilled in the art it is clear that the actual indication may take different format. It could be as well a number presentation between 1 to 4 where e.g. number 2 would mean that Priority 2 and higher priorities (i.e. P1) have right to attempt access in the group.
The implementation of the described mechanisms in the user equipment is illustrated by referring to
It will be obvious to a person skilled in the art that, as the technology advances, the inventive concept can be implemented in various ways. The invention and its embodiments are not limited to the examples described above but may vary within the scope of the claims.
Number | Date | Country | Kind |
---|---|---|---|
20055345 | Jun 2005 | FI | national |