WO2012116881A1 - Methods, apparatuses, related computer program product for managing sessions - Google Patents
Methods, apparatuses, related computer program product for managing sessions Download PDFInfo
- Publication number
- WO2012116881A1 WO2012116881A1 PCT/EP2012/052185 EP2012052185W WO2012116881A1 WO 2012116881 A1 WO2012116881 A1 WO 2012116881A1 EP 2012052185 W EP2012052185 W EP 2012052185W WO 2012116881 A1 WO2012116881 A1 WO 2012116881A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- message
- session
- sending
- time period
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
- H04L65/1086—In-session procedures session scope modification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/752—Media network packet handling adapting media to network capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/147—Signalling methods or messages providing extensions to protocols defined by standardisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
- H04L65/1104—Session initiation protocol [SIP]
Definitions
- the present invention relates to managing sessions in communication networks. More specifically, the present invention relates to methods, apparatuses, related computer program product for managing sessions in communication networks.
- RTP Real-time Transport Protocol
- I ETF Internet Engineering Task Force
- UDP User Datagram Protocol
- RTCP RTP Control Protocol
- QoS quality of service
- Packet loss feedback In this mechanism, RTP packets are sequence numbered that allows the media receiver to recognize a packet loss and report to the media source using RTCP protocol. Based on such feedback, the media source may decide to send data in a redundant manner. The redundant data may be sent using original or reduced bit rate. Reduced bit rate may help avoiding high transmission volumes that can result in congestion.
- Congestion feedback A method called "Explicit Congestion Notification (ECN) for RTP over UDP" relies on congestion detection capability of transmission elements. The transmission elements insert a Congestion Notification (ECN-CN) data to the RTP flow if congestion is experienced. These collected data can be sent back to the media source RTCP protocol for further consideration such as reducing the bit rate etc.
- ECN Congestion Notification
- the present invention provides methods, apparatus, and a related computer program product for congestion and packet loss detection and handling in communication networks.
- a method comprising: sending a signaling message in an ongoing session; determining if a response to the signaling message is received within a first predefined time period from sending the signaling message; and modifying the ongoing session if the result of the determination is negative.
- the method may further comprise determining if the response to the message is received within a second predefined time period from sending the message, when the response is received within the first predefined time period, wherein the second predefined time period is shorter than the first predefined time period, and modifying the ongoing session if the result of the determination is negative.
- the signaling message may comprise a SI P signaling message that does not change state of the session. Further, the signaling message may comprise a signaling message that requires a response.
- the signaling message may comprise any one of SI P signaling messages OPTIONS, I NFO, UPDATE and PUBLISH.
- the modifying the session may comprise changing at least one parameter relating to media transmission, such as a changing of any one of encoding of the media transmission, bandwidth efficiency and redundancy.
- the first predefined time period and/or second predefined time period may be variable.
- the method of the first embodiment may further comprise repeating at least once the sending, determining and modifying steps. Such repeating may be performed at random or regular time intervals. Further, the repeating may be performed, if the response was received within the first and/or second predefined time period. Such repeating may also be performed after modifying the session.
- an apparatus comprising: means for sending a signaling message in an ongoing session; means for receiving a response for the signaling message; means for determining if the response for the signaling message is received within a first predefined time period from sending the signaling message; and means for modifying the ongoing session if the result of the determination is negative.
- the apparatus may further comprise means for determining if a response for the signaling message is received within a second predefined time period from sending the signaling message when the response is received within the first predefined time period, wherein the second predefined time period is shorter than the first predefined time period, and means for modifying the ongoing session if the result of such determination is negative.
- the means for sending may be configured to repeat sending of signaling messages at regular or random time intervals.
- a computer program product comprising code means for performing method steps according to the first embodiment of the present invention, when run on a processing means or module.
- Embodiments of the present invention may have one or more of following advantages:
- the invention provides a feedback mechanism about the media transmission when RTCP-based feedback mechanisms do not work. Further, the invention is applicable in situations wherein the active device monitoring the quality of RTP traffic transmission is not involved in the traffic itself, as for example in the case of a call mediation node (CMN).
- CMS call mediation node
- the invention also can be used in sessions of traffic types which do not use RTP (therefore not using RTCP).
- the procedures of the invention can be used for statistical analysis of a given media transmission path. Such statistical analysis can be used as a basis for network redesign. Furthermore it can be used for dynamic call routing and call admission control purposes. The procedures of the invention can also be employed without having an actual media transmission ongoing, so that to check the quality of a path.
- Figs. 1-2 show examples of network set ups, wherein procedures of the present invention for indirect measurement of media transmission may be performed;
- Fig. 3 shows the generic indirect measurement procedure that enables detection of congestion or packet and the possible actions thereof, according to some aspects of the invention.
- Figs. 4 (a-e) and 5 (a-e) show procedures, according to examples of the present invention, involving indirect measurement of media transmission, detection of congestion and packet loss and mitigation action, in networks with and without a media gateway respectively.
- Fig. 6 shows an apparatus, according to some aspects of the invention, for performing indirect measurement of media transmission, detection of congestion and packet loss and mitigation action in a network.
- This invention utilizes indirect mechanisms to detect packet loss and congestion, instead of direct measures and feedback mechanisms.
- the indirect mechanisms described herein are more likely to be applicable as generic support than the direct measures and feedback mechanisms, since there are situations where RTCP and ECN may not be applicable due to missing end-to-end support or Call Mediation Node (CMN) device, which is not RTCP aware.
- CCN Call Mediation Node
- the invention works on the principle that call related signaling messages are not blocked by any device on the signaling path, since otherwise call setup would fail.
- Signaling path measurements may reflect media path slowdown or blockage, if transmission path of signaling and media are identical or almost matching. Thus, measuring the delay and/or loss of response for signaling messages can indicate media path slowdown and/ or blockage.
- Figures 1 -2 illustrate network architectures, where indirect measurements on signaling path could be used to detect media path slowdown or media path blockage.
- FIG. 1 shows a possible mobile network set up 100, wherein an user equipment UE 101 may access services.
- the user equipment may be a mobile phone that includes a user agent (UA) 101 A and basic firewall (FW) 101 B.
- the user agent 101 A may be a session initiation protocol (SI P) user agent, which may be a SI P device actively handling sessions.
- the firewall 101 B may be a TCP/IP handling software component that protects a host environment from unauthorized IP traffic.
- the user equipment 101 may connect to the mobile network 100 via an enhanced node-B (eNB) 102, which is a network device that may handle radio connections.
- eNB enhanced node-B
- the enhanced node-B 102 may connect to an evolved packet core (EPC) that may comprise a serving/packet data network (PDN) gateway (GW) 103.
- EPC evolved packet core
- PDN serving/packet data network gateway
- the various functions of the serving/PDN gateway 103 may include, among others, providing connectivity from the UE 101 to external packet data networks by being the point of exit and entry of traffic for the user equipment 101 , routing and forwarding data packets etc.
- the network set up 100 may further include a session border controller (SBC) 104 to streamline flow of media across network boundaries.
- the session border controller 104 may also act as a firewall that is SIP, RTP and RTCP aware and may not block valid RTCP traffic.
- the connections between the UE 101 , eNB 102, serving/PDN GW 103 and SBC 104 may be common signaling (1010) and media (1020) path.
- the session border controller 104 may connect to a call session control function (CSCF) 105 in a signaling only path 1010, for example using SI P signaling.
- the CSCF 105 may be SI P servers or proxies that may be used to process SI P signaling messages in an Internet Protocol (I P) multimedia subsystem (IMS).
- I P Internet Protocol
- the CSCF 105 may connect to a SI P application server (AS) 106 and/or to a media gateway control function (MGCF) 106.
- the application server (AS) 106 may provide services for a SI P session.
- the media gateway control function (MGCF) 106 may be a SI P endpoint that may control the media resources in a media gateway (MGW) 107 across an H .248 interface (1030).
- a media gateway 107 may be present in a media plane that can receive, process and send RTP/RTCP packets.
- the connection from the MGW 107 to the SBC 104 may be a media only path (1020).
- FIG. 2 shows a possible network set up 200 that uses a call mediation node 206, wherein a client box 201 may access services.
- the client box 201 may include a user agent (UA) 201 A and a basic firewall (FW) 201 B.
- the user agent 201 A may be a SI P user agent, which may be a SIP device actively handling sessions.
- the firewall 201 B may be a TCP/I P handling software component that protects a host environment from unauthorized I P traffic.
- the client box 201 may be able to connect to an intranet 202, through which it can be connect to an internet 204.
- An enterprise network address translator (NAT) 203 may also be present in the path between the intranet 202 and internet 204.
- NAT enterprise network address translator
- the enterprise NAT 203 may be a firewall that may hide the internal elements of the environment it protects. For example, from the internet 204, NAT 203 may appear to be the source and destination of IP traffic and the elements in the intranet 202 and client box 201 are hidden.
- the network set up 200 may further include a session border controller (SBC) 205 to streamline flow of media across network boundaries.
- SBC session border controller
- the session border controller 205 may also act as a firewall that is SIP, RTP and RTCP aware and may not block valid RTCP traffic. It may be noted that the connections between the client box 201 , intranet 202, enterprise NAT 203, internet 204 and SBC 205 may be common signaling (2010) and media (2020) paths.
- the session border controller 205 may connect to a call mediation node (CMN) 206 in a signaling only path (2010), for example using SI P signaling.
- the call mediation node 206 may be active on the signaling path, but may not receive user plane traffic.
- User plane traffic may flow between the session border controller 205 and another session border controller 207 in another network in a media path (2020).
- the CMN 206 may connect to the SBC 207 in a signaling only path 2010.
- Figure 3 shows the generic measurement procedures that may be applied to any network to determine if there is a packet loss or congestion. According to an aspect of the invention, the measurement procedure may be performed during an ongoing session, i.e. , after a successful session set up, to indirectly measure a media transmission. Media here can mean, but not restricted to, voice, data, video or various possible combinations of these.
- optional steps of the embodiments of the present invention are shown with dotted lines.
- the measurements may be started by sending a signaling message 301 during on ongoing session, i.e. , after a session is set up. It is desirable that the sent signaling message is such that it does not change the state of the session and generates a response from the receiving end. Examples of such messages may be SI P messages OPTIONS, I NFO, NOTI FY, UPDATE, PUBLISH etc.
- the receiving end for example, can be a user agent (e.g., 101 A or 201 A in figures 1 or 2 respectively). It may be noted that the signaling message may be routed through several network elements in the network before reaching the receiving end.
- a response is received within a first predefined time period from sending of the signaling message.
- the first predefined time period can be a few hundred milliseconds. If no response was received within a first predefined time period, this may indicate occurrence of possible packet losses in media transmission, and a modification of the session 303 or an ending of the session may be performed.
- Such a modification of the session 303 may be done by changing the session parameters. For example, encoding of the media may be changed e.g. , to lower bitrate encodings, to overcome congestion or packet loss. Alternatively, bandwidth efficiency may be changed by sending larger packets but less frequently, thus reducing the transmission overhead. Another possibility may be to increase redundancy. That may be done using forward error correction (FEC) schemes.
- FEC forward error correction
- the session may be continued (304) without any modification. Further optional steps, according to an aspect of the invention shown in figure 5 are described hereinafter.
- a response is received within the first predefined time period (corresponding to Y in step 302), in a second determining step 305, it may be determined if the response was received within a second predefined time period from the sending of the signaling message. It may be noted that the second predefined time period is shorter than the first predefined time period. For example, if the first predefined time period is 500 milliseconds, the second predefined time period may be 250 milliseconds.
- a modification of the ongoing session 303 or an ending of the session may be performed.
- Such a modification of the session may be done by changing the session parameters. For example, encoding of the media may be changed e.g. , to lower bitrate encodings, to overcome congestion or packet loss. Alternatively, bandwidth efficiency may be changed by sending larger packets but less frequently, thus reducing the transmission overhead.
- FEC forward error correction
- the session may be continued 304 without any modification.
- the measurement procedure may be repeated 306 at regular or random time intervals. This may help determine if there is no congestion or packet loss in the media transmission at a later point in time. If the result of either first determining or second determining is negative, after the modification of the session 303, the measurement procedure may be repeated 306 at regular or random time intervals.
- the first and/or second predefined time period may be variable, as for example, by an operator, depending on existing network conditions. For example, an operator may choose to define a longer first and/or second time period during conditions of higher traffic load and a shorter first and/or second time period during conditions of lesser traffic load. Also, operator may choose to define a longer first and/or second time period when performing the measurements after a modification of an ongoing session due to reasons of congestion or packet loss. Such operator actions could also be automated by programming an apparatus capable of performing the procedures described above.
- SI P is a signaling type which typically generates responses, either positive or negative ones. Therefore, it can be advantageously used for indirect measurement of media transmission.
- SI P messages which can be used for this purpose are OPTIONS, I NFO, UPDATE and PUBLISH . It is desirable that the SI P message gets delivered to the end of the signaling path and also that it causes as little transmission and processing overhead as possible.
- FIGS 4 (a-e) illustrate a sequence of indirect measurement of media transmission, decision making process and action by a media gateway control function (MGCF). The procedure may be considered to involve several command sequences, each represented by a command sequence number (CSeq). In figure 4 (a-e), five such command sequences are shown.
- CSeq command sequence number
- the measurements may be started during an ongoing session, i.e. , after a session is set up.
- a user agent (UA) 401 may send an I NVITE message 41 1 to an I P router 402.
- I P router 402 may be a Proxy Call Session Control Function (P-CSCF) in an Internet Protocol (IP) Multimedia Subsystem (IMS) network, a session border controller (SBC) and a border gateway control function (BGCF).
- P-CSCF Proxy Call Session Control Function
- IP Internet Protocol
- IMS Internet Multimedia Subsystem
- SBC session border controller
- BGCF border gateway control function
- the I NVITE message 41 1 may comprise a description of the session, for example, using Session Description Protocol (SDP).
- SDP Session Description Protocol
- the session description using SDP may comprise possible encodings for a multimedia session.
- both low and high bitrate encoding are represented in the SDP of the I NVITE message 41 1.
- the I NVITE message may be forwarded, as shown by message 412, by the I P router 402 to a Media Gateway Control Function (MGCF) 403.
- the MGCF 403 may further forward the I NVITE message to a destination and this is not shown in figure 4a.
- the SDP answer in the response message 413 sent by MGCF 403 includes high bitrate encoding.
- MGCF 403 may just forward a response message 200 OK received from a destination, which is not shown in the figure.
- the I P router 402 may acknowledge (in message 414) the receipt of the response message (200 OK) 413 as shown in the figure. Additionally, the I P router 402 may forward (as in message 415) the response message (200 OK) 413 to the UA 401.
- the UA 401 may further send an acknowledgement 416 to the I P router 402, which may complete the call set up.
- the OPTIONS message 421 may be forwarded (as in message 422) by the I P router 402 to the UA 401.
- the MGCF 403 may be programmed to perform the indirect measurements at regular time intervals, until the end of a session or detection of a congestion or packet loss, whichever is earlier. In the latter case, a modification of the session or a session ending may be performed, as described below.
- the IP router 402 may acknowledge (as in message 444) the receipt of the response as well as forward (as in message 445) the response to the MGCF 403, which in turn acknowledges (as in message 446) the receipt of the response to the IP router 402.
- the modified session may thus be established.
- the MGCF 403 initiates the measurement towards the user agent UA 401 , it is possible that it may initiate measurements using message sequences similar to those in figures 4b, 4c or 4e towards a destination. Such measurement procedures are not illustrated in these figures.
- the session may be ended instead of performing a modification of the session as in figure 4d.
- Such an ending of the session may be performed by sending a BYE message, as described in RFC3261. This is not illustrated in figures 4a-e.
- Figures 5a-e show an example of the present invention illustrating indirect measurement of media transmission in a network using a call mediation node (CMN) 503.
- This INVITE message 51 1 may be forwarded (as in messages 512 and 513) by the intermediate network elements such as an I P router 502 and a call mediation node (CMN) 503 to the destination user agent UA#2 504.
- the destination user agent UA#2 504 may send a response 514 using 200 OK message comprising an SDP offer.
- the response message 514 may be forwarded (as in messages 516 and 518) by the CMN 503 and I P router 502 to UA#1 501 .
- acknowledgement messages 515, 515 and 519 indicating the receipt of response message (514, 516 and 518) by CMN 503, I P router 502 and UA#1 501 respectively.
- the OPTIONS message 521 may be forwarded (as in message 522) by the I P router
- the response message 523 (200 OK) may be forwarded (as in message 524) by the I P router 502 to the CMN 503. If the CMN
- the CM N 503 may be programmed to perform the indirect measurements at regular time intervals, until the end of a session or detection of a congestion or packet loss, whichever is earlier. In the latter case, a modification of the session or a session ending may be performed, as described below.
- the I P router 502 may not succeed in forwarding (message 532) the OPTIONS message 531 to UA#1 501 and thus no response to the OPTIONS message 531 may be received by CMN 503 within a specified time period from its sending the OPTIONS message 531.
- the IP router may successfully forward (message 532) the OPTIONS message 531 to UA#1 501 , but a response message from UA#1 501 may not be received by CMN 503.
- the CMN 503 may conclude that the media transmission is not normal and there are possible packet losses.
- a modification of the session with changes in parameters of media transmission, such as changes in encoding may be performed. This may be accomplished by the steps illustrated in figure 5d.
- UA#1 501 may include a SDP offer that comprises possible encodings.
- the possible encodings include both high and low bitrate encodings.
- the response message 543 may be forwarded (message 544) by the IP router 502 to CMN 503. Part of the session modification towards UA#1 501 may be completed with this procedure.
- the CMN 503 may perform a SDP filtering before sending an INVITE 545 to UA#2 504.
- SDP filtering An example of such SDP filtering is shown below.
- CMN 503 may send an INVITE 545 towards UA#2 504 without any SDP filtering.
- a new command sequence for indirect measurement of the media transmission may be started, as illustrated in figure 5e.
- procedures similar to those in figures 5b or 5c are performed and CMN 503 may conclude that the transmission is normal.
- the CMN 503 receives the response with a delay, then this occurrence might indicate congestion in the media transmission. Such a scenario is not shown in figures 5b, 5c or 5e.
- Figures 5b, 5c and 5e illustrate measurement procedures wherein the CMN 503 initiates the measurement towards the user agent UA#1. It may be appreciated that it is possible that the CMN 503 may initiate measurements towards UA#2 504 as well. 55
- the session may be ended instead of performing a modification of the session as illustrated in figure 5d. Such an ending of the session may be performed by sending a BYE message, as described in RFC3261.
- Figure 6 illustrates an apparatus (e.g., MGCF or CMN) for capable of performing indirect measurement of media transmission in accordance with the present invention.
- apparatus e.g., MGCF or CMN
- the apparatus in accordance with the present invention may comprise a Central Processing Unit (CPU or a core functionality) 601 , a memory 602, a means for sending Sx 603, a means for determining Dx 604, a means for receiving Rx 605, and a means for modifying Mx 606.
- CPU Central Processing Unit
- memory 602 a means for storing Sx 603, a means for determining Dx 604, a means for receiving Rx 605, and a means for modifying Mx 606.
- the means for sending 603, the means for determining 604, the means for receiving 605, and means for modifying 606 of the apparatus 600 may be functionalities running on the CPU 601 of the apparatus, or may alternatively be separate functional entities or means.
- the means for determining 604 and/or means for modifying 606 of the apparatus 600 may be, e.g., i) a functionality residing in the means for receiving 605 of the apparatus, (ii) a functionality residing in the means for sending 603 of the apparatus, or iii) may be a separate functionality of the apparatus.
- the means for determining 604 may interface with the means for sending 603 to obtain timings of sending of messages by the means for sending 603.
- the means for determining 604 may interface with the means for receiving 605 to obtain timings of receiving of messages by the means for receiving 605.
- the means for determining 604 being a separate functionality of the apparatus, it may interface with the means for sending 603 and the means for receiving 605 to obtain timings of sending and receiving of messages by the means for sending 603 and the means for receiving 605 respectively.
- the means for modifying 606 may interface with the latter to modify an ongoing session.
- the means for modifying 606 may be integrated with the means for determining 604 or may be a separate functionality. In case of the means for modifying 606 being separate from the means for determining 604, it may interface with the latter to obtain the results of determinations.
- the CPU 601 may be configured to process various data inputs and to control the functions of the memory 602, the means for sending 603, the means for determining 604, and the means for receiving 605.
- the dotted lines show optional configurations while solid lines show the core configuration according to the present invention.
- the memory 1021 may serve e.g. for storing code means for carrying out e.g. the methods according to the examples of the present invention, when run e.g. on the CPU 601 .
- the memory may store policies or rules related to a communication system.
- the means for sending 603 and the means for receiving 605 may alternatively be provided as integral transceivers.
- the means for sending 603 and the means for receiving 605 may be implemented i) as physical transmitters/receivers for transceiving e.g. via the air interface, ii) as routing entities e.g. for sending/receiving data packets e.g. in a PS (packet switched) network, or, iii) as any suitable combination of i) and ii).
- the means for sending 603, for example, may perform sending any of the messages relating to session set up, session modification and indirect measurement procedures of the present invention. Examples of such messages are:
- the exemplary means for sending 603 of the present invention may perform sending a signaling message that is not related to session set up, e.g. , OPTIONS message, I NFO message and UPDATE message, to start an indirect measurement of media transmission. These messages may comprise a message sequence number to identify a particular session set up, session modification or measurement cycle.
- the means for sending 603 may further be programmed to send messages at regular periodic time intervals or at random time intervals to start an indirect measurement of media transmission. Further, the means for sending 603 may provide information about sent messages to the means for determining 604, if the means for determining 604 is not part of the means for sending 603.
- Such information may include a time of sending the messages, a message sequence number and also an indication if the message is related to session set up or indirect measurements.
- the means for sending 603 may only provide information about messages related to indirect measurements and not about messages related to session set up.
- the means for receiving 605, for example, may perform receiving any of the messages relating to session set up and indirect measurement procedures of the present invention. Examples of such messages are:
- Such messages may comprise a command sequence number to identify a particular session set up or measurement cycle.
- the means for receiving 605 may provide information about receiving of messages to the means for determining 604, if the means for determining 604 is not part of the means for receiving 605. Such information may include a time of receiving the messages, a message sequence number and also an indication if the message is related to session set up or indirect measurements. Alternatively, the means for receiving 605 may only provide information about messages related to indirect measurements and not about messages related to session set up.
- the means for determining 604 may perform the following functions:
- the means for determining 604 may perform a second determination if the result of the first determination is positive, wherein it may be determined if the response received for a sent message within a predefined second time period from sending of the message by the means for sending 603; and provide the result of the determination to the means for modifying 606.
- the means for modifying 606 may perform the functions of:
- the means for modifying 606 may interface with the means for sending 603 to modify an ongoing session.
- the means for sending 603 may be programmed to send signaling messages at regular periodic time intervals or at random time intervals to repeatedly carry out indirect measurements of media transmission. Such programming may be such that sending of messages may only happen when the results of determinations by the means for determining 604 are positive and no modifications to an ongoing session are performed by the means for modifying 606.
- the means for sending 603 may not send signaling messages repeatedly to carry out indirect measurements of media transmission, until modifying procedure of the ongoing session is complete.
- the present invention further relates to a computer program product.
- the computer program product may comprise code means for performing methods for indirect measurement of media transmission described herein, when run on a processing means or module.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Methods, apparatuses and related computer program for managing sessions are disclosed. The method comprises sending a signaling message in an ongoing session, determining if a response to the signaling message is received within a first predefined time period from sending the signaling message, and modifying the ongoing session if the result of the determination is negative.
Description
DESCRI PTION
TITLE OF THE I NVENTION METHODS, APPARATUSES, RELATED COMPUTER PROGRAM PRODUCT FOR MANAGI NG SESSIONS
FI ELD OF THE I NVENTION The present invention relates to managing sessions in communication networks. More specifically, the present invention relates to methods, apparatuses, related computer program product for managing sessions in communication networks.
BACKGROUND
The Real-time Transport Protocol (RTP), specified by Internet Engineering Task Force (I ETF), is used extensively in telecommunication systems for real-time transmission of audio and video data over packet switched networks. Most often RTP implementations are built on the User Datagram Protocol (UDP) in the transport layer. Such implementations result in non-reliable, best-effort transmission methods. The common problems encountered are delay due to network congestion or weak wireless network coverage and packet loss, both of which affect the user experience. Unfortunately neither UDP nor RTP is designed to provide feedback mechanism on packet loss or network congestion. To overcome such deficiencies, RTP is usually used in conjunction with RTP Control Protocol (RTCP). RTCP is used to monitor transmission statistics and quality of service (QoS) information. Some examples of existing solutions to address the problems of congestion and packet loss, standardized by IETF and used by other bodies such as 3rd Generation Partnership Project (3GPP) are: Packet loss feedback: In this mechanism, RTP packets are sequence numbered that allows the media receiver to recognize a packet loss and report to the media source using RTCP protocol. Based on such feedback, the media source may decide to send data in a redundant manner. The redundant data may be sent using original or reduced bit rate. Reduced bit rate may help avoiding high transmission volumes that can result in congestion.
Congestion feedback: A method called "Explicit Congestion Notification (ECN) for RTP over UDP" relies on congestion detection capability of transmission elements. The transmission elements insert a Congestion Notification (ECN-CN) data to the RTP flow if congestion is experienced. These collected data can be sent back to the media source RTCP protocol for further consideration such as reducing the bit rate etc.
However, the solutions described above may not work in all situations. For example, several products do not support RTCP protocol at all and thus a feedback about congestion or packet loss cannot be sent to the media source. RTCP reports are often sent irregularly, thus leading to low reliability. Firewalls often block incoming RTCP traffic, as there is no matching outbound connection. To overcome this, NAT (Network Address Translator) firewalls often assign TCP/I P (Transmission Control Protocol/Internet Protocol) ports to RTCP traffic. However, this does not meet the numbering requirements specified by I ETF Request For Comments (RFC) RFC3550. ECN mechanism needs end-to-end support by each RTP-aware nodes, including terminals. Not all nodes in a network may provide such support and any upgradation of the nodes to provide such support may need huge investments by the network operator.
Thus, there is a need for procedures by which congestion or packet loss can be reliably detected and can be mitigated, without upgradation of network nodes.
SUMMARY
In consideration of the above, it is an object of examples of the present invention to overcome one or more of the above drawbacks. In particular, the present invention provides methods, apparatus, and a related computer program product for congestion and packet loss detection and handling in communication networks.
According to a first embodiment of the present invention, there is provided a method comprising: sending a signaling message in an ongoing session; determining if a response to the signaling message is received within a first predefined time period from sending the signaling message; and modifying the ongoing session if the result of the determination is negative.
The method may further comprise determining if the response to the message is received within a second predefined time period from sending the message, when the response is received within the first predefined time period, wherein the second predefined time period
is shorter than the first predefined time period, and modifying the ongoing session if the result of the determination is negative.
The signaling message may comprise a SI P signaling message that does not change state of the session. Further, the signaling message may comprise a signaling message that requires a response. The signaling message may comprise any one of SI P signaling messages OPTIONS, I NFO, UPDATE and PUBLISH.
The modifying the session may comprise changing at least one parameter relating to media transmission, such as a changing of any one of encoding of the media transmission, bandwidth efficiency and redundancy. The first predefined time period and/or second predefined time period may be variable.
The method of the first embodiment may further comprise repeating at least once the sending, determining and modifying steps. Such repeating may be performed at random or regular time intervals. Further, the repeating may be performed, if the response was received within the first and/or second predefined time period. Such repeating may also be performed after modifying the session.
According to a second embodiment of the present invention, there is provided an apparatus comprising: means for sending a signaling message in an ongoing session; means for receiving a response for the signaling message; means for determining if the response for the signaling message is received within a first predefined time period from sending the signaling message; and means for modifying the ongoing session if the result of the determination is negative.
The apparatus may further comprise means for determining if a response for the signaling message is received within a second predefined time period from sending the signaling message when the response is received within the first predefined time period, wherein the second predefined time period is shorter than the first predefined time period, and means for modifying the ongoing session if the result of such determination is negative.
The means for sending may be configured to repeat sending of signaling messages at regular or random time intervals. According to a third embodiment of the present invention, there is provided a computer program product comprising code means for performing method steps according to the first embodiment of the present invention, when run on a processing means or module.
Embodiments of the present invention may have one or more of following advantages:
The invention provides a feedback mechanism about the media transmission when RTCP-based feedback mechanisms do not work. Further, the invention is applicable in situations wherein the active device monitoring the quality of RTP traffic transmission is not involved in the traffic itself, as for example in the case of a call mediation node (CMN). The invention also can be used in sessions of traffic types which do not use RTP (therefore not using RTCP). The procedures of the invention can be used for statistical analysis of a given media transmission path. Such statistical analysis can be used as a basis for network redesign. Furthermore it can be used for dynamic call routing and call admission control purposes. The procedures of the invention can also be employed without having an actual media transmission ongoing, so that to check the quality of a path.
BRI EF DESCRIPTION OF THE DRAWI NGS
Figs. 1-2 show examples of network set ups, wherein procedures of the present invention for indirect measurement of media transmission may be performed;
Fig. 3 shows the generic indirect measurement procedure that enables detection of congestion or packet and the possible actions thereof, according to some aspects of the invention. Figs. 4 (a-e) and 5 (a-e) show procedures, according to examples of the present invention, involving indirect measurement of media transmission, detection of congestion and packet loss and mitigation action, in networks with and without a media gateway respectively. Fig. 6 shows an apparatus, according to some aspects of the invention, for performing indirect measurement of media transmission, detection of congestion and packet loss and mitigation action in a network.
DETAILED DESCRI PTION OF THE PRESENT I NVENTION
Examples of the present invention are described herein below by way of example with reference to the accompanying drawings.
This invention utilizes indirect mechanisms to detect packet loss and congestion, instead of direct measures and feedback mechanisms. The indirect mechanisms described herein are more likely to be applicable as generic support than the direct measures and feedback mechanisms, since there are situations where RTCP and ECN may not be applicable due to missing end-to-end support or Call Mediation Node (CMN) device, which is not RTCP aware.
The invention works on the principle that call related signaling messages are not blocked by any device on the signaling path, since otherwise call setup would fail. Signaling path measurements may reflect media path slowdown or blockage, if transmission path of signaling and media are identical or almost matching. Thus, measuring the delay and/or loss of response for signaling messages can indicate media path slowdown and/ or blockage.
Figures 1 -2 illustrate network architectures, where indirect measurements on signaling path could be used to detect media path slowdown or media path blockage.
Figure 1 shows a possible mobile network set up 100, wherein an user equipment UE 101 may access services. The user equipment may be a mobile phone that includes a user agent (UA) 101 A and basic firewall (FW) 101 B. The user agent 101 A may be a session initiation protocol (SI P) user agent, which may be a SI P device actively handling sessions. The firewall 101 B may be a TCP/IP handling software component that protects a host environment from unauthorized IP traffic. The user equipment 101 may connect to the mobile network 100 via an enhanced node-B (eNB) 102, which is a network device that may handle radio connections. The enhanced node-B 102 may connect to an evolved packet core (EPC) that may comprise a serving/packet data network (PDN) gateway (GW) 103. The various functions of the serving/PDN gateway 103 may include, among others, providing connectivity from the UE 101 to external packet data networks by being the point of exit and entry of traffic for the user equipment 101 , routing and forwarding data packets etc. The network set up 100 may further include a session border controller (SBC) 104 to streamline flow of media across network boundaries. The session border controller 104 may also act as a firewall that is SIP, RTP and RTCP aware and may not block valid RTCP traffic. It may be noted that the connections between the UE 101 , eNB 102, serving/PDN GW 103 and SBC 104 may be common signaling (1010) and media (1020) path. The session border controller 104 may connect to a call session control function (CSCF) 105 in a signaling only path 1010, for example using SI P signaling. The
CSCF 105 may be SI P servers or proxies that may be used to process SI P signaling messages in an Internet Protocol (I P) multimedia subsystem (IMS). The CSCF 105 may connect to a SI P application server (AS) 106 and/or to a media gateway control function (MGCF) 106. The application server (AS) 106 may provide services for a SI P session. The media gateway control function (MGCF) 106 may be a SI P endpoint that may control the media resources in a media gateway (MGW) 107 across an H .248 interface (1030). A media gateway 107 may be present in a media plane that can receive, process and send RTP/RTCP packets. The connection from the MGW 107 to the SBC 104 may be a media only path (1020).
Figure 2 shows a possible network set up 200 that uses a call mediation node 206, wherein a client box 201 may access services. The client box 201 may include a user agent (UA) 201 A and a basic firewall (FW) 201 B. The user agent 201 A may be a SI P user agent, which may be a SIP device actively handling sessions. The firewall 201 B may be a TCP/I P handling software component that protects a host environment from unauthorized I P traffic. The client box 201 may be able to connect to an intranet 202, through which it can be connect to an internet 204. An enterprise network address translator (NAT) 203 may also be present in the path between the intranet 202 and internet 204. The enterprise NAT 203 may be a firewall that may hide the internal elements of the environment it protects. For example, from the internet 204, NAT 203 may appear to be the source and destination of IP traffic and the elements in the intranet 202 and client box 201 are hidden. The network set up 200 may further include a session border controller (SBC) 205 to streamline flow of media across network boundaries. The session border controller 205 may also act as a firewall that is SIP, RTP and RTCP aware and may not block valid RTCP traffic. It may be noted that the connections between the client box 201 , intranet 202, enterprise NAT 203, internet 204 and SBC 205 may be common signaling (2010) and media (2020) paths. The session border controller 205 may connect to a call mediation node (CMN) 206 in a signaling only path (2010), for example using SI P signaling. The call mediation node 206 may be active on the signaling path, but may not receive user plane traffic. User plane traffic may flow between the session border controller 205 and another session border controller 207 in another network in a media path (2020). The CMN 206 may connect to the SBC 207 in a signaling only path 2010. Figure 3 shows the generic measurement procedures that may be applied to any network to determine if there is a packet loss or congestion. According to an aspect of the
invention, the measurement procedure may be performed during an ongoing session, i.e. , after a successful session set up, to indirectly measure a media transmission. Media here can mean, but not restricted to, voice, data, video or various possible combinations of these. In figure 3, optional steps of the embodiments of the present invention are shown with dotted lines.
According to an aspect of the invention, the measurements may be started by sending a signaling message 301 during on ongoing session, i.e. , after a session is set up. It is desirable that the sent signaling message is such that it does not change the state of the session and generates a response from the receiving end. Examples of such messages may be SI P messages OPTIONS, I NFO, NOTI FY, UPDATE, PUBLISH etc. The receiving end, for example, can be a user agent (e.g., 101 A or 201 A in figures 1 or 2 respectively). It may be noted that the signaling message may be routed through several network elements in the network before reaching the receiving end. In a first determining step 302, it may be verified if a response is received within a first predefined time period from sending of the signaling message. The first predefined time period can be a few hundred milliseconds. If no response was received within a first predefined time period, this may indicate occurrence of possible packet losses in media transmission, and a modification of the session 303 or an ending of the session may be performed. Such a modification of the session 303 may be done by changing the session parameters. For example, encoding of the media may be changed e.g. , to lower bitrate encodings, to overcome congestion or packet loss. Alternatively, bandwidth efficiency may be changed by sending larger packets but less frequently, thus reducing the transmission overhead. Another possibility may be to increase redundancy. That may be done using forward error correction (FEC) schemes.
If the response is received within the first predefined time period, the session may be continued (304) without any modification. Further optional steps, according to an aspect of the invention shown in figure 5 are described hereinafter. If a response is received within the first predefined time period (corresponding to Y in step 302), in a second determining step 305, it may be determined if the response was received within a second predefined time period from the sending of the signaling message. It may be noted that the second predefined time period is shorter than the first predefined time period. For example, if the first predefined time period is 500 milliseconds, the second predefined time period may be 250 milliseconds. If the result of the second determining is negative (corresponding to N in step 305), that is if the
response was received after the second predefined time period, this may indicate occurrence of possible congestion in media transmission, and. a modification of the ongoing session 303 or an ending of the session may be performed. Such a modification of the session may be done by changing the session parameters. For example, encoding of the media may be changed e.g. , to lower bitrate encodings, to overcome congestion or packet loss. Alternatively, bandwidth efficiency may be changed by sending larger packets but less frequently, thus reducing the transmission overhead. Another possibility may be to increase redundancy. That may be done using forward error correction (FEC) schemes.
If the result of the second determining is positive (corresponding to Y in step 305), that is if a response is received within the second predefined time period, the session may be continued 304 without any modification. In case of an ongoing session wherein the measurement is performed, if the results of first and/or second determining are positive, the measurement procedure may be repeated 306 at regular or random time intervals. This may help determine if there is no congestion or packet loss in the media transmission at a later point in time. If the result of either first determining or second determining is negative, after the modification of the session 303, the measurement procedure may be repeated 306 at regular or random time intervals.
According to an aspect of the invention, the first and/or second predefined time period may be variable, as for example, by an operator, depending on existing network conditions. For example, an operator may choose to define a longer first and/or second time period during conditions of higher traffic load and a shorter first and/or second time period during conditions of lesser traffic load. Also, operator may choose to define a longer first and/or second time period when performing the measurements after a modification of an ongoing session due to reasons of congestion or packet loss. Such operator actions could also be automated by programming an apparatus capable of performing the procedures described above.
Examples of procedures according to the invention are shown in figures 4 (a-e) and 5 (a- e), wherein use of SIP signaling is illustrated. SI P is a signaling type which typically generates responses, either positive or negative ones. Therefore, it can be advantageously used for indirect measurement of media transmission. Examples of SI P messages which can be used for this purpose are OPTIONS, I NFO, UPDATE and
PUBLISH . It is desirable that the SI P message gets delivered to the end of the signaling path and also that it causes as little transmission and processing overhead as possible.
While it is typical, as defined in RFC3261 , to retransmit a SI P message if no response is received within a time interval, such retransmission mechanism is not desirable, since such retransmission mechanism may distort the measurement. Instead, a periodic transmission of requests may be preferred; the period can be, for example, a few seconds. Figures 4 (a-e) illustrate a sequence of indirect measurement of media transmission, decision making process and action by a media gateway control function (MGCF). The procedure may be considered to involve several command sequences, each represented by a command sequence number (CSeq). In figure 4 (a-e), five such command sequences are shown.
The measurements may be started during an ongoing session, i.e. , after a session is set up. Figure 4a illustrates command sequence CSeq = 1 , wherein an initial call/session set up procedure may be performed using the basic SI P call set up procedures, as described in RFC3261. In order to initiate a session, a user agent (UA) 401 may send an I NVITE message 41 1 to an I P router 402. Examples of I P router 402 may be a Proxy Call Session Control Function (P-CSCF) in an Internet Protocol (IP) Multimedia Subsystem (IMS) network, a session border controller (SBC) and a border gateway control function (BGCF). The I NVITE message 41 1 may comprise a description of the session, for example, using Session Description Protocol (SDP). The session description using SDP may comprise possible encodings for a multimedia session. In the example shown, both low and high bitrate encoding are represented in the SDP of the I NVITE message 41 1. The I NVITE message may be forwarded, as shown by message 412, by the I P router 402 to a Media Gateway Control Function (MGCF) 403. The MGCF 403 may further forward the I NVITE message to a destination and this is not shown in figure 4a. The MGCF 403 may send a response message 413, for example using a 200 OK, to the I P router 402, which message may include the command sequence number (CSeq = 1 in this example) and an SDP answer by MGCF 403. In the example, the SDP answer in the response message 413 sent by MGCF 403 includes high bitrate encoding. It may be noted that MGCF 403 may just forward a response message 200 OK received from a destination, which is not shown in the figure. The I P router 402 may acknowledge (in message 414) the receipt of the response message (200 OK) 413 as shown in the figure. Additionally, the I P router 402 may forward (as in message 415) the response message (200 OK) 413
to the UA 401. The UA 401 may further send an acknowledgement 416 to the I P router 402, which may complete the call set up.
Figure 4b shows a command sequence CSeq = 2, wherein an indirect measurement of quality of media transmission and detection of any congestion or packet loss may be performed, in accordance with an aspect of the invention. This may be initiated by the MGCF 403 by sending a SIP message 421 , e.g. , OPTIONS which may include a command sequence number CSeq = 2. The OPTIONS message 421 may be forwarded (as in message 422) by the I P router 402 to the UA 401. The UA 401 may send a response message 423, for example using a 200 OK message, which may include the CSeq = 2 to identify that the response 423 is for the OPTIONS message 421 with CSeq = 2. The response message (200 OK) 423 may be forwarded (as in message 424) by the IP router 402 to the MGCF 403. If the MGCF 403 determines that the time delay between its sending the OPTIONS (CSeq = 2) message 421 and receiving the response 200 OK (CSeq = 2) message 424 is normal, it may conclude that the media transmission is normal.
The MGCF 403 may be programmed to perform the indirect measurements at regular time intervals, until the end of a session or detection of a congestion or packet loss, whichever is earlier. In the latter case, a modification of the session or a session ending may be performed, as described below.
Figure 4c shows a command sequence CSeq = 3, wherein an additional measurement of quality of media transmission may be performed. After some time in the session, the MGCF 403 may send another OPTIONS message 431 , identified with CSeq = 3, which message may be forwarded (as in message 432) by the I P router 402 to the UA 401. As shown in figure 4c, UA 401 may send a response 200 OK (CSeq = 3) message 433, which may be forwarded (as in message 434) by the I P router 402 to the MGCF 403. If the MGCF 403 determines that the time delay between its sending the OPTIONS (CSeq = 3) message 431 and receiving the response 200 OK (CSeq = 3) message 434 is not normal and is characterized by a huge time gap, it may conclude that the media transmission is not normal and there is a transmission slow down. In this case, the MGCF 403 may decide to modify the session by changing the encoding to a lower bitrate. This may be accomplished by the steps in command sequence CSeq = 4 (figure 4d).
Referring to figure 4d, the MGCF 403 may send an I NVITE message 441 with a CSeq = 4, including a session description using SDP indicating a lower bitrate. This I NVITE
message 441 may be forwarded (as in message 442) by the IP router 402 to the UA 401 , which may respond with a 200 OK message 443, with a CSeq = 4. The IP router 402 may acknowledge (as in message 444) the receipt of the response as well as forward (as in message 445) the response to the MGCF 403, which in turn acknowledges (as in message 446) the receipt of the response to the IP router 402. The modified session may thus be established.
Sometime afterwards, a new command sequence for indirect measurement of the media transmission may be started with CSeq = 5, as illustrated in figure 4e. In this sequence, procedures similar to CSeq = 2 or 3 (figures 4b or 4c) are performed and MGCF 403 may conclude that the transmission is normal.
If in a command sequence similar to CSeq = 2, 3, or 5 (figures 4b, 4c, or 4e), the MGCF 403 does not receive any response until a specified time interval, then this occurrence might indicate a packet loss due to possible failure of a network element. Such a scenario is not shown in figures 4b, 4c or 4e.
While in the examples shown in figures 4b, 4c and 4e, the MGCF 403 initiates the measurement towards the user agent UA 401 , it is possible that it may initiate measurements using message sequences similar to those in figures 4b, 4c or 4e towards a destination. Such measurement procedures are not illustrated in these figures.
When an indirect measurement indicates a possible congestion or packet loss, as for example in figure 4c, the session may be ended instead of performing a modification of the session as in figure 4d. Such an ending of the session may be performed by sending a BYE message, as described in RFC3261. This is not illustrated in figures 4a-e.
It may further be noted that there may be a number of intermediate network elements between the UA 401 , IP router 402 and MGCF 403, which may forward the messages received from either direction to the other side. These intermediate network elements are not shown in figures 4a-e for sake of simplicity.
Figures 5a-e show an example of the present invention illustrating indirect measurement of media transmission in a network using a call mediation node (CMN) 503. Figure 5a illustrates a command sequence, CSeq = 1 , wherein a call set up between two user agents UA#1 501 and UA#2 504 may be performed, using procedures similar to the ones described in connection with figure 6a. In this case, in command sequence CSeq = 1 , the
user agent UA#1 501 may send an INVITE message 51 1 to initiate a session, with the possible encodings indicated in the SDP of the INVITE message. This INVITE message 51 1 may be forwarded (as in messages 512 and 513) by the intermediate network elements such as an I P router 502 and a call mediation node (CMN) 503 to the destination user agent UA#2 504. The destination user agent UA#2 504 may send a response 514 using 200 OK message comprising an SDP offer. The response message 514 may be forwarded (as in messages 516 and 518) by the CMN 503 and I P router 502 to UA#1 501 . Also shown in figure 5a are acknowledgement messages 515, 515 and 519 indicating the receipt of response message (514, 516 and 518) by CMN 503, I P router 502 and UA#1 501 respectively.
Figure 5b shows a command sequence, CSeq = 2, wherein an indirect measurement of quality of media transmission and detection of any congestion or packet loss may be performed. This may be initiated by the call mediation node (CMN) 503 by sending a SI P message 521 , e.g. , OPTIONS which may include the command sequence number CSeq = 2. The OPTIONS message 521 may be forwarded (as in message 522) by the I P router
502 to UA#1 501 . The UA#1 501 may send a response message 523, for example using a 200 OK message, which may include the CSeq = 2 to identify that the response 523 is for the OPTIONS message 521 with CSeq = 2. The response message 523 (200 OK) may be forwarded (as in message 524) by the I P router 502 to the CMN 503. If the CMN
503 determines that the time delay between its sending the OPTIONS (CSeq = 2) message 521 and receiving the response 200 OK (CSeq = 2) message 524 is normal, it may conclude that the media transmission is normal. The CM N 503 may be programmed to perform the indirect measurements at regular time intervals, until the end of a session or detection of a congestion or packet loss, whichever is earlier. In the latter case, a modification of the session or a session ending may be performed, as described below. Figure 5c illustrates an additional measurement of quality of media transmission. After some time in the session, the CMN 503 may send another OPTIONS message 531 , identified with CSeq = 3, which the I P router 502 may try to forward (message 532) to UA#1 501. As shown in figure 5c, however, the I P router 502 may not succeed in forwarding (message 532) the OPTIONS message 531 to UA#1 501 and thus no response to the OPTIONS message 531 may be received by CMN 503 within a specified time period from its sending the OPTIONS message 531. Alternatively, the IP router may successfully forward (message 532) the OPTIONS message 531 to UA#1 501 , but a
response message from UA#1 501 may not be received by CMN 503. Thus the CMN 503 may conclude that the media transmission is not normal and there are possible packet losses. In this case, a modification of the session with changes in parameters of media transmission, such as changes in encoding may be performed. This may be accomplished by the steps illustrated in figure 5d.
Referring to figure 5d, the CMN 503 may send an INVITE message 541 with a CSeq = 4, which may not include a session description using SDP, since CMN 503 may initiate encoding change by applying 3rd party call control (3PCC) techniques, for example as described in IETF RFC 3525. This INVITE message 541 may be forwarded (message 542) by the IP router 502 to UA#1 501 , which may respond with a 200 OK message 543, with a CSeq = 4. It may be noted that there may be slowdowns and retransmissions during this session modification. In the response message 543 (200 OK), UA#1 501 may include a SDP offer that comprises possible encodings. In the example shown in figure 5d, the possible encodings include both high and low bitrate encodings. The response message 543 may be forwarded (message 544) by the IP router 502 to CMN 503. Part of the session modification towards UA#1 501 may be completed with this procedure.
Following this, CMN 503 may perform a session modification towards UA#2 504, using a separate command sequence CSeq = 2 towards UA#2 504. The CMN 503 may perform a SDP filtering before sending an INVITE 545 to UA#2 504. An example of such SDP filtering is shown below.
SDP filtering example:
Incoming:
v=0
o=- 123 12345678 IN IP6 1 :2:3:4:5:6:7:8
s=Multimedia call
c=IN IP6 1 :2:3:4:5:6:7:8
m=audio 12345 RTP/AVP 96 97 98 99 100 3 8
b=AS:96
a=sendrecv
a=rtpmap:96 AMR-WB/16000
a=fmtp:96 mode-set=0, 1 ,2,4; mode-change-neighbor=1 ; mode-change-period=2 a=rtpmap:97 G7291/16000
a=fmtp:97 maxbitrate=32000; dtx=1
a=rtpmap:98 PCMA-WB/16000
a=fmtp:98 mode-set=4
a=rtpmap:99 X-PROPRIETARY-WIDEBAND/16000
a=rtpmap: 100 AMR/8000
a=fmtp: 100 mode-change-capability=2
a=rtpmap:3 GSM/8000
a=rtpmap:8 PCMA/8000
m=video 23456 RTP/AVP 110 1 11 34
a=rtpmap: 1 10 H263-2000/90000
a=rtpmap:111 MP4V-ES/90000
a=rtpmap:34 H263/90000
Filtered:
v=0
o=- 123 12345678 IN IP6 1 :2:3:4:5:6:7:8
s=Reduced bandwidth call
c=IN IP6 1 :2:3:4:5:6:7:8
m=audio 12345 RTP/AVP 100 3
b=AS:6
a=sendrecv
a=rtpmap:100 AMR/8000
a=fmtp:100 mode-set=0; mode-change-capability=2
a=rtpmap:3 GSM/8000
m=video 0 RTP/AVP 1 10 11 1 34
a=rtpmap:110 H263-2000/90000
a=rtpmap:111 MP4V-ES/90000
a=rtpmap:34 H263/90000
In this example, high bandwidth and unknown encodings got removed. AMR codec got restricted to the lowest possible mode and video media got deleted. Alternatively, CMN 503 may send an INVITE 545 towards UA#2 504 without any SDP filtering.
UA#2 504 may send a response 200 OK message 546 to CMN 503. Subsequently, CMN 503 may send an acknowledge message ACK 545 towards UA#2 504 to complete the session modification. Additionally, CMN 503 may send an acknowledge message ACK 548 for the response message 544 towards IP router 502 with CSeq = 4 and the IP router 502 may send a acknowledge message ACK 549 towards UA#1 501 with CSeq = 4.
Sometime afterwards, a new command sequence for indirect measurement of the media transmission may be started, as illustrated in figure 5e. In this sequence, procedures similar to those in figures 5b or 5c are performed and CMN 503 may conclude that the transmission is normal.
If in measurements illustrated in figures 5b, 5c or 5e, the CMN 503 receives the response with a delay, then this occurrence might indicate congestion in the media transmission. Such a scenario is not shown in figures 5b, 5c or 5e.
Figures 5b, 5c and 5e illustrate measurement procedures wherein the CMN 503 initiates the measurement towards the user agent UA#1. It may be appreciated that it is possible that the CMN 503 may initiate measurements towards UA#2 504 as well. 55
When an indirect measurement indicates a possible congestion or packet loss, as illustrated in figure 5c, the session may be ended instead of performing a modification of the session as illustrated in figure 5d. Such an ending of the session may be performed by sending a BYE message, as described in RFC3261.
It may be noted that there may be a number of intermediate network elements between the UA#1 501 or UA#2 504, IP router 502 and CMN 503, which may forward the messages received from either direction to the other side. These intermediate network elements are not shown in figures 5a-e for sake of simplicity.
Figure 6 illustrates an apparatus (e.g., MGCF or CMN) for capable of performing indirect measurement of media transmission in accordance with the present invention. For sake of simplicity, only the main functions of the apparatus relevant for the present invention are illustrated in the figure.
The apparatus in accordance with the present invention (e.g. , MGCF/CMN 600) may comprise a Central Processing Unit (CPU or a core functionality) 601 , a memory 602, a means for sending Sx 603, a means for determining Dx 604, a means for receiving Rx 605, and a means for modifying Mx 606.
It may be noted that the means for sending 603, the means for determining 604, the means for receiving 605, and means for modifying 606 of the apparatus 600 may be functionalities running on the CPU 601 of the apparatus, or may alternatively be separate functional entities or means. Furthermore, the means for determining 604 and/or means for modifying 606 of the apparatus 600 may be, e.g., i) a functionality residing in the means for receiving 605 of the apparatus, (ii) a functionality residing in the means for sending 603 of the apparatus, or iii) may be a separate functionality of the apparatus. In case of the means for determining 604 being part of the means for receiving 605, the means for determining 604 may interface with the means for sending 603 to obtain timings of sending of messages by the means for sending 603. In case of the means for determining 604 being part of the means for sending 603, the means for determining 604 may interface with the means for receiving 605 to obtain timings of receiving of messages by the means for receiving 605. In case of the means for determining 604 being a separate functionality of the apparatus, it may interface with the means for sending 603 and the means for receiving 605 to obtain timings of sending and receiving of messages by the means for sending 603 and the means for receiving 605 respectively.
In case of the means for modifying 606 being separate from the means for sending 603, it may interface with the latter to modify an ongoing session. The means for modifying 606 may be integrated with the means for determining 604 or may be a separate functionality. In case of the means for modifying 606 being separate from the means for determining 604, it may interface with the latter to obtain the results of determinations.
The CPU 601 may be configured to process various data inputs and to control the functions of the memory 602, the means for sending 603, the means for determining 604, and the means for receiving 605. In figure 6, the dotted lines show optional configurations while solid lines show the core configuration according to the present invention. The memory 1021 may serve e.g. for storing code means for carrying out e.g. the methods according to the examples of the present invention, when run e.g. on the CPU 601 . For example, the memory may store policies or rules related to a communication system. It is to be noted that the means for sending 603 and the means for receiving 605 may alternatively be provided as integral transceivers. It is further to be noted that the means for sending 603 and the means for receiving 605 may be implemented i) as physical transmitters/receivers for transceiving e.g. via the air interface, ii) as routing entities e.g. for sending/receiving data packets e.g. in a PS (packet switched) network, or, iii) as any suitable combination of i) and ii).
The means for sending 603, for example, may perform sending any of the messages relating to session set up, session modification and indirect measurement procedures of the present invention. Examples of such messages are:
- INVITE message;
- 200 OK message;
- ACK message;
- OPTIONS message;
- INFO message;
- UPDATE message;
- PUBLISH message;
- BYE message. The exemplary means for sending 603 of the present invention may perform sending a signaling message that is not related to session set up, e.g. , OPTIONS message, I NFO message and UPDATE message, to start an indirect measurement of media transmission.
These messages may comprise a message sequence number to identify a particular session set up, session modification or measurement cycle. The means for sending 603 may further be programmed to send messages at regular periodic time intervals or at random time intervals to start an indirect measurement of media transmission. Further, the means for sending 603 may provide information about sent messages to the means for determining 604, if the means for determining 604 is not part of the means for sending 603. Such information may include a time of sending the messages, a message sequence number and also an indication if the message is related to session set up or indirect measurements. Alternatively, the means for sending 603 may only provide information about messages related to indirect measurements and not about messages related to session set up.
The means for receiving 605, for example, may perform receiving any of the messages relating to session set up and indirect measurement procedures of the present invention. Examples of such messages are:
- INVITE message;
- 200 OK message; and
- ACK message;
Such messages may comprise a command sequence number to identify a particular session set up or measurement cycle. Further, the means for receiving 605 may provide information about receiving of messages to the means for determining 604, if the means for determining 604 is not part of the means for receiving 605. Such information may include a time of receiving the messages, a message sequence number and also an indication if the message is related to session set up or indirect measurements. Alternatively, the means for receiving 605 may only provide information about messages related to indirect measurements and not about messages related to session set up. The means for determining 604, for example, may perform the following functions:
• obtain information about sending of messages by the means for sending 603, if the means for determining 604 is not part of the means for sending 603; such information may comprise a time of sending the message, a sequence number of the message and an indication if the message is related to indirect measurements;
• obtain information about receiving of messages by the means for receiving 605, if the means for determining 604 is not part of the means for receiving 605; such information may comprise a time of receiving the message, a sequence number of the message and an indication if the message is related to indirect measurements;
• determine in a first determining step if a response is received for a sent message within a predefined first time period from sending of the message by the means for sending 603. ; and · provide the results of the determination to the means for modifying 606.
Optionally, the means for determining 604 may perform a second determination if the result of the first determination is positive, wherein it may be determined if the response received for a sent message within a predefined second time period from sending of the message by the means for sending 603; and provide the result of the determination to the means for modifying 606.
The means for modifying 606 may perform the functions of:
obtaining the results of determinations by the means for determining, and modifying an ongoing session if the result of the determination is negative.
The means for modifying 606 may interface with the means for sending 603 to modify an ongoing session. As noted earlier, the means for sending 603 may be programmed to send signaling messages at regular periodic time intervals or at random time intervals to repeatedly carry out indirect measurements of media transmission. Such programming may be such that sending of messages may only happen when the results of determinations by the means for determining 604 are positive and no modifications to an ongoing session are performed by the means for modifying 606. In the case of modifying an ongoing session, the means for sending 603 may not send signaling messages repeatedly to carry out indirect measurements of media transmission, until modifying procedure of the ongoing session is complete. The present invention further relates to a computer program product. The computer program product may comprise code means for performing methods for indirect
measurement of media transmission described herein, when run on a processing means or module.
Although the present invention has been described herein before with reference to particular embodiments thereof, the present invention is not limited thereto and various modifications can be made thereto. For example, the examples presented here utilize SIP signaling procedures for determining media transmission quality. However, the procedures of the invention described herein can be extended to any other signaling procedure.
Claims
1. A method comprising: sending (301) a signaling message (421 , 431 , 451 , 521 , 531 , 551) (1010, 2010) in an ongoing session; determining (302) if a response to the signaling message is received within a first predefined time period from sending the signaling message; and modifying the ongoing session (303) if the result of the determination (302) is negative.
2. The method of claim 1 , further comprising: determining (305) if the response to the message is received within a second predefined time period from sending the message, when the response is received within the first predefined time period, wherein the second predefined time period is shorter than the first predefined time period, and modifying the ongoing session (303) if the result of the determination is negative.
3. The method of any of preceding claims, wherein the signaling message comprises a session initiation protocol (SIP) signaling message.
4. The method of any of preceding claims, wherein the signaling message comprises a signaling message that requires a response.
5. The method of any of preceding claims, wherein the signaling message comprises a SIP signaling message that does not change state of the session.
6. The method of any of preceding claims, wherein the signaling message comprises any one of SIP signaling messages OPTIONS, INFO, UPDATE and PUBLISH.
7. The method of any of the preceding claims, wherein the modifying the session comprises changing at least one parameter relating to media transmission.
8. The method of claim 7, wherein the changing the at least one parameter comprises a changing of any one of encoding of the media transmission, bandwidth efficiency and redundancy.
9. The method of any of preceding claims, wherein the first predefined time period and/or second predefined time period is variable.
10. The method of any of preceding claims, further comprising: repeating (306) at least once the sending, determining and modifying of claim 1 and/or 2.
1 1. Method of claim 10 wherein the repeating is performed at random or regular time intervals.
12. Method of claim 10 or 1 1 wherein the repeating is performed:
- if the result of the determination of claim 1 and/or claim 2 is that the response was received within the first and/or second predefined time period, and/or,
- after modifying the session
13. An apparatus (600) comprising: means for sending (603) a signaling message (301) in an ongoing session; means for receiving (605) a response for the signaling message; means for determining (604) if the response for the signaling message is received within a first predefined time period from sending the signaling message; and means for modifying (606) the ongoing session (303) if the result of the determination is negative.
14. The apparatus of claim 13, further comprising: means for determining (604) if a response for the signaling message is received within a second predefined time period from sending the signaling message when the response is received within the first predefined time period, wherein the second predefined time period is shorter than the first predefined time period, and means for modifying (606) the ongoing session (303) if the result of the determination is negative.
15. The apparatus of claims 13-14, wherein means for sending (603) is configured to repeat sending of signaling messages at regular or random time intervals.
16. A computer program product comprising code means for performing method steps according to any one of claims 1 to 12, when run on a processing means or module.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EPPCT/EP2011/052874 | 2011-02-28 | ||
| EP2011052874 | 2011-02-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2012116881A1 true WO2012116881A1 (en) | 2012-09-07 |
Family
ID=45592382
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2012/052185 Ceased WO2012116881A1 (en) | 2011-02-28 | 2012-02-09 | Methods, apparatuses, related computer program product for managing sessions |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2012116881A1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3113468A4 (en) * | 2014-02-28 | 2017-03-22 | Panasonic Intellectual Property Corporation of America | Voice communication terminal, intermediate node, processing device, connection method, and program |
| EP4050931A4 (en) * | 2019-09-27 | 2023-09-06 | ZTE Corporation | Media stream delivery quality notification method and session border controller entity |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070115848A1 (en) * | 2005-11-18 | 2007-05-24 | Kevin Chean | Adaptive application sensitive rate control system for packetized networks |
| US20100118704A1 (en) * | 2006-10-09 | 2010-05-13 | Gergely Pongracz | Method and Apparatus for use in a communications network |
| WO2010112074A1 (en) * | 2009-04-02 | 2010-10-07 | Nokia Siemens Networks Oy | Method and device for data processing in a communication network |
-
2012
- 2012-02-09 WO PCT/EP2012/052185 patent/WO2012116881A1/en not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070115848A1 (en) * | 2005-11-18 | 2007-05-24 | Kevin Chean | Adaptive application sensitive rate control system for packetized networks |
| US20100118704A1 (en) * | 2006-10-09 | 2010-05-13 | Gergely Pongracz | Method and Apparatus for use in a communications network |
| WO2010112074A1 (en) * | 2009-04-02 | 2010-10-07 | Nokia Siemens Networks Oy | Method and device for data processing in a communication network |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3113468A4 (en) * | 2014-02-28 | 2017-03-22 | Panasonic Intellectual Property Corporation of America | Voice communication terminal, intermediate node, processing device, connection method, and program |
| US10594744B2 (en) | 2014-02-28 | 2020-03-17 | Panasonic Intellectual Property Corporation Of America | Speech communication terminal, intermediate node, processing device, connection method, and non-transitory computer-readable recording medium |
| EP4050931A4 (en) * | 2019-09-27 | 2023-09-06 | ZTE Corporation | Media stream delivery quality notification method and session border controller entity |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8619592B2 (en) | Method and apparatus for increased internet protocol (IP) headers compression performance by reporting cause of missing packets | |
| US8358583B2 (en) | Controlling QoS in a wireless apparatus | |
| US20100223492A1 (en) | Node failure detection system and method for sip sessions in communication networks | |
| US9282133B2 (en) | Communicating control information within a real-time stream | |
| US9742728B2 (en) | Determining expiration time of bindings for network address translation devices | |
| US10069558B2 (en) | Reducing call setup delay in geomobile satellite networks | |
| US7944880B2 (en) | Method and arrangement for establishing a communication session for multimedia | |
| CA2952269C (en) | Method, system and apparatus for monitoring error correction data in media sessions | |
| US10958549B2 (en) | Method and system for analyzing protocol message sequence communicated over a network | |
| EP3008949A1 (en) | Ip media rate adaptation | |
| US7447211B1 (en) | Method and apparatus of establishing a communication channel using protected network resources | |
| CN102932319B (en) | A kind of for keeping the method and apparatus conversed | |
| WO2012116881A1 (en) | Methods, apparatuses, related computer program product for managing sessions | |
| US9071669B2 (en) | Method and network node for monitoring a quality of media transfer in a session initiation protocol based voice over internet protocol communications network | |
| US9742587B2 (en) | Negative acknowledgment of tunneled encapsulated media | |
| KR20110092966A (en) | Method and apparatus for minimizing session establishment latency in network | |
| De La Oliva et al. | Performance analysis of the reachability protocol for ipv6 multihoming | |
| US20100128613A1 (en) | Detection of bearer loss in an IP-based multimedia session | |
| EP2335389B1 (en) | Detection of bearer loss in an ip-based multimedia session | |
| CN103238293B (en) | Method for monitoring a communication system | |
| Aranda et al. | RFC 8802 The Quality for service (Q4S) protocol | |
| EP4588230A1 (en) | Higher-layer control of tcp-layer processing based on reporting of tcp-error count | |
| Salvachua et al. | Internet Draft Intended status: Informational JJ Garcia Aranda Expires: June 2019 Nokia M. Cortes | |
| EP1755304A1 (en) | Method and apparatus for a fast installation of an IP user connection over a 3GPP Nb interface under application of the BICC "Delayed Backward Bearer Establishment" and avoidance of failure | |
| Sayed et al. | New signaling solution for heterogeneous access networks |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 12703788 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 12703788 Country of ref document: EP Kind code of ref document: A1 |