FR2979505A1 - Method for inserting intermediate equipment in communication channel connecting e.g. smartphones, of voice over Internet protocol communication system, involves transmitting modified response message to user terminal - Google Patents
Method for inserting intermediate equipment in communication channel connecting e.g. smartphones, of voice over Internet protocol communication system, involves transmitting modified response message to user terminal Download PDFInfo
- Publication number
- FR2979505A1 FR2979505A1 FR1157677A FR1157677A FR2979505A1 FR 2979505 A1 FR2979505 A1 FR 2979505A1 FR 1157677 A FR1157677 A FR 1157677A FR 1157677 A FR1157677 A FR 1157677A FR 2979505 A1 FR2979505 A1 FR 2979505A1
- Authority
- FR
- France
- Prior art keywords
- terminal
- application server
- message
- communication
- intermediate equipment
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 109
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000003780 insertion Methods 0.000 claims abstract description 15
- 230000037431 insertion Effects 0.000 claims abstract description 15
- 101150060298 add2 gene Proteins 0.000 claims abstract description 14
- 238000004590 computer program Methods 0.000 claims abstract description 4
- 230000011664 signaling Effects 0.000 claims description 25
- 230000005540 biological transmission Effects 0.000 claims description 20
- 238000012966 insertion method Methods 0.000 claims description 12
- 101100490488 Mus musculus Add3 gene Proteins 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 4
- 101100108191 Vibrio parahaemolyticus serotype O3:K6 (strain RIMD 2210633) add gene Proteins 0.000 abstract description 4
- 239000000284 extract Substances 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/0016—Arrangements providing connection between exchanges
- H04Q3/0025—Provisions for signalling
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Procédé d'insertion d'un équipement intermédiaire permettant le contrôle à distance de la qualité d'une communication L'invention concerne le contrôle de la qualité d'une communication entre plusieurs terminaux d'un système de télécommunications, en particulier dans le cadre d'une communication de type voix sur IP. Dans les systèmes actuels de communication, les éléments spécifiques du réseau servant habituellement à gérer la signalisation entre les terminaux des utilisateurs ne sont pas nécessairement placés sur le chemin de communication reliant ces terminaux. En d'autres termes, les paquets de données échangés entre les terminaux utilisateurs, notamment ceux concernant les données multimédias telles que les données audio ou vidéo, ne transitent pas par les éléments du réseau gérant la signalisation, qui ne peuvent donc pas déduire des informations sur la qualité de la communication et exploiter de telles informations. Ceci est en particulier le cas dans un réseau de communication de type voix sur IP (VolP en anglais) utilisant le protocole SIP (pour Session Initiation Protocol en anglais) de signalisation pour initier les sessions de communication entre terminaux, tel qu'illustré sur la figure 1. Dans un tel réseau, un serveur d'application AS est en général inséré dans le chemin de signalisation reliant les terminaux A et B. Un tel serveur d'application AS sert habituellement à délivrer différents services tels que la redirection d'appel ou l'interdiction d'appel, et peut également générer des informations de facturation, entre autres. Cependant, comme illustré à la figure 1, ce serveur d'application AS n'est présent que dans le chemin de signalisation reliant les terminaux A et B, et non dans le chemin « média » reliant également ces terminaux, sur lequel transitent les paquets de données échangés entre ces terminaux lors d'une session de communication. Le serveur d'application ne dispose donc que des informations échangées lors de l'établissement et de la terminaison de la session de communication. Les informations échangées sur le chemin « média » lui restent inconnues. En règle générale, les paquets de données (telles que des données audio, vidéo, etc.) échangés entre les terminaux A et B sur le chemin « média » sont transmis en utilisant les protocoles RTP et RTCP, ce dernier permettant de contrôler et d'échanger des informations statistiques sur la qualité des échanges RTP. Au sein des paquets de données RTCP ainsi échangés, il est possible d'évaluer la qualité de la communication à partir de certains paquets spécifiques correspondant aux rapports d'émission ou de réception (« Sender Report » et « Receiver Report »). Les paquets ne transitant pas par le serveur d'application AS, ce dernier ne peut évaluer la qualité d'une communication entre les terminaux A et B à partir de ces paquets, et ne peut donc pas exploiter cette information en relation avec les services que ce serveur d'application AS gère. La présente invention a pour objet de remédier aux inconvénients précités, en permettant à un élément de gestion de signalisation de pouvoir disposer d'informations sur la qualité d'une communication entre terminaux bien que cet élément ne soit pas placé sur le chemin d'échange des paquets de données transportant les médias temps réels. La présente invention propose un procédé d'insertion, par un serveur d'application, d'un équipement intermédiaire dans un chemin de communication reliant au moins un premier terminal et un deuxième terminal, ce procédé comprenant les étapes consistant à : suite à la réception d'un premier message comprenant une requête d'insertion de l'équipement intermédiaire émis par le premier terminal, transmettre au deuxième terminal un premier message modifié dans lequel est insérée une première adresse relative à l'équipement intermédiaire et destinée à être utilisée par le deuxième terminal lors de l'envoi de paquets de données vers le premier terminal ; et suite à la réception d'un deuxième message de réponse au premier message modifié provenant du deuxième terminal, transmettre un deuxième message de réponse modifié dans lequel est insérée une deuxième adresse relative à l'équipement intermédiaire et destinée à être utilisée par le premier terminal lors de l'envoi de paquets de données vers le deuxième terminal. The invention relates to the control of the quality of a communication between several terminals of a telecommunications system, in particular within the framework of a communication system. a voice over IP communication. In the present communication systems, the specific elements of the network usually used to manage the signaling between the terminals of the users are not necessarily placed on the communication path connecting these terminals. In other words, the data packets exchanged between the user terminals, in particular those concerning the multimedia data such as audio or video data, do not pass through the elements of the network managing the signaling, which can not therefore derive information. on the quality of communication and exploit such information. This is particularly the case in a voice-over-IP (VoIP) type of communication network using signaling session signaling protocol (SIP) for initiating communication sessions between terminals, as illustrated in FIG. In such a network, an application server AS is generally inserted in the signaling path connecting the terminals A and B. Such an application server AS is usually used to deliver various services such as call forwarding. or call barring, and may also generate billing information, among others. However, as illustrated in FIG. 1, this application server AS is present only in the signaling path connecting the terminals A and B, and not in the "media" path also connecting these terminals, on which the packets transit. of data exchanged between these terminals during a communication session. The application server therefore only has information exchanged during the establishment and termination of the communication session. The information exchanged on the "media" path remains unknown to him. As a general rule, data packets (such as audio, video, etc.) exchanged between terminals A and B on the "media" path are transmitted using the RTP and RTCP protocols, the latter allowing for control and communication. exchange statistical information on the quality of RTP exchanges. Within the RTCP data packets thus exchanged, it is possible to evaluate the quality of the communication from certain specific packets corresponding to the transmission or reception reports ("Sender Report" and "Receiver Report"). Since the packets do not pass through the application server AS, the latter can not evaluate the quality of a communication between the terminals A and B from these packets, and therefore can not exploit this information in relation to the services that this application server AS manages. The object of the present invention is to remedy the aforementioned drawbacks by enabling a signaling management element to be able to obtain information on the quality of a communication between terminals even though this element is not placed on the exchange path. data packets carrying real-time media. The present invention proposes a method of insertion, by an application server, of an intermediate device in a communication path connecting at least a first terminal and a second terminal, this method comprising the steps of: following reception a first message comprising a request for insertion of the intermediate equipment transmitted by the first terminal, transmitting to the second terminal a first modified message in which is inserted a first address relating to the intermediate equipment and intended to be used by the second terminal when sending data packets to the first terminal; and following the receipt of a second response message to the first modified message from the second terminal, transmitting a second modified response message in which is inserted a second address relating to the intermediate equipment and intended to be used by the first terminal when sending data packets to the second terminal.
Selon un premier mode de réalisation, le premier message est un message de requête d'établissement de session et le deuxième message est un message de réponse d'établissement de session. Selon un autre mode de réalisation, le premier message est un message de réponse d'établissement de session et le deuxième message est un message d'accusé de réception. Avantageusement, les messages sont formulés selon le protocole de signalisation SIP. Le premier message et/ou le deuxième message est alors avantageusement un message comprenant des données comprenant un champ SDP relatif à l'un de ces terminaux. La présente invention propose en outre un procédé de contrôle à distance, par un serveur d'application, de la qualité d'une communication entre au moins un premier terminal et un deuxième terminal, ce procédé comprenant les étapes consistant à : insérer un équipement intermédiaire dans un chemin de communication reliant les premier et deuxième terminaux en mettant en oeuvre le procédé d'insertion ci-avant ; extraire, au niveau de l'équipement de contrôle intermédiaire, au moins un paramètre relatif à la qualité de communication d'au moins un paquet de données transmis par le chemin de communication entre les premier et deuxième terminaux; et transmettre le au moins un paramètre relatif à la qualité de communication au serveur d'application. Selon un mode de réalisation, la transmission du au moins un paramètre relatif à la qualité de communication au serveur d'application est réalisée lorsqu'au moins un desdits paramètres dépasse une valeur seuil. Selon un autre mode de réalisation, la transmission du au moins un paramètre relatif à la qualité de communication au serveur d'application est réalisée suite à une requête en transmission reçue du serveur d'application. According to a first embodiment, the first message is a session establishment request message and the second message is a session establishment response message. In another embodiment, the first message is a session establishment response message and the second message is an acknowledgment message. Advantageously, the messages are formulated according to the SIP signaling protocol. The first message and / or the second message is then advantageously a message comprising data comprising an SDP field relating to one of these terminals. The present invention further provides a method of remotely controlling, by an application server, the quality of a communication between at least a first terminal and a second terminal, the method comprising the steps of: inserting an intermediate device in a communication path connecting the first and second terminals by implementing the insertion method above; extracting, at the level of the intermediate control equipment, at least one parameter relating to the communication quality of at least one data packet transmitted by the communication path between the first and second terminals; and transmitting the at least one parameter relating to the quality of communication to the application server. According to one embodiment, the transmission of the at least one parameter relating to the quality of communication to the application server is performed when at least one of said parameters exceeds a threshold value. According to another embodiment, the transmission of the at least one parameter relating to the quality of communication to the application server is performed following a transmission request received from the application server.
Dans un mode de réalisation avantageux dans lequel les premier et deuxième terminaux disposent respectivement d'une première et d'une deuxième adresse initiale, le procédé comprend : la transmission dudit paquet de données sur le chemin de communication au moyen de l'une desdites adresses initiales, ledit paquet de données étant un paquet de données multimédias ; et la transmission d'au moins un paquet de données de contrôle comprenant des données portant sur ledit paramètre relatif à la qualité de la transmission du paquets de données multimédias au moyen de l'une des adresses transmises lors de l'insertion de l'équipement intermédiaire. Dans ce mode de réalisation, le au moins un paquet de données échangé entre les premier et deuxième terminaux est avantageusement transmis au moyen du protocole RTP ou RTCP. En particulier, le au moins un paquet de données échangé entre les premier et deuxième terminaux est un paquet de rapport d'émission ou de rapport de réception transmis au moyen du protocole RTCP. La présente invention propose également un programme d'ordinateur comprenant des instructions de code pour la mise en oeuvre du procédé ci-avant, lorsque ce programme est exécuté par l'unité de traitement d'un serveur d'application. Un tel programme doit être considéré comme un produit dans le cadre de la protection qui est recherchée par la présente demande de brevet. La présente invention propose en outre un serveur d'application, apte à être connecté par un chemin de signalisation à au moins un premier et un deuxième terminal connectés en outre par un chemin de communication ne transitant pas par le serveur d'application, le serveur d'application étant apte à mettre en oeuvre le procédé d'insertion ci-avant, afin d'insérer un équipement intermédiaire dans ledit chemin de communication. Ce serveur d'application est en outre apte à mettre en oeuvre le procédé de contrôle à distance ci-avant, afin de contrôler la qualité d'une communication entre le premier terminal et le deuxième terminal. In an advantageous embodiment in which the first and second terminals respectively have a first and a second initial address, the method comprises: transmitting said data packet on the communication path by means of one of said addresses initials, said data packet being a multimedia data packet; and transmitting at least one control data packet comprising data relating to said parameter relating to the quality of transmission of the multimedia data packets by means of one of the addresses transmitted during the insertion of the equipment intermediate. In this embodiment, the at least one data packet exchanged between the first and second terminals is advantageously transmitted by means of the RTP or RTCP protocol. In particular, the at least one data packet exchanged between the first and second terminals is a transmission report or reception report packet transmitted by means of the RTCP protocol. The present invention also provides a computer program comprising code instructions for the implementation of the above method, when this program is executed by the processing unit of an application server. Such a program must be considered as a product within the framework of the protection sought by the present patent application. The present invention further proposes an application server, able to be connected by a signaling path to at least a first and a second terminal furthermore connected by a communication path not passing through the application server, the server application being able to implement the insertion method above, to insert an intermediate equipment in said communication path. This application server is also able to implement the remote control method above, in order to control the quality of a communication between the first terminal and the second terminal.
Enfin, la présente invention propose un système de communication comprenant au moins un premier et un deuxième terminal, et le serveur d'application ci-avant, les premier et deuxième terminal étant connectés au serveur d'application par un chemin de signalisation, lesdits premier et deuxième terminal étant en outre connectés entre eux par un chemin de communication ne transitant pas par le serveur d'application, le serveur d'application étant apte à insérer un équipement intermédiaire dans ledit chemin de communication en mettant en oeuvre le procédé ci-avant. Finally, the present invention proposes a communication system comprising at least a first and a second terminal, and the application server above, the first and second terminals being connected to the application server by a signaling path, said first and second terminal being further connected to each other by a communication path not passing through the application server, the application server being able to insert an intermediate device in said communication path by implementing the method above .
Les procédés d'insertion et de contrôle à distance, le programme d'ordinateur, le serveur d'application ainsi que le système de communication mettant en oeuvre ces procédés, objets de l'invention, seront mieux compris à la lecture de la description et à l'observation des dessins ci-après dans lesquels, outre la figure 1 relative à l'art antérieur : - la figure 2 est un schéma synoptique illustrant un système de communication selon l'invention ; - la figure 3 est un diagramme illustrant un procédé d'insertion, par un serveur d'application, d'un élément intermédiaire entre un premier et un deuxième terminal selon la présente invention. - les figures 3A et 3B illustrent respectivement un premier et un deuxième mode de réalisation du procédé d'insertion d'un élément intermédiaire selon la présente invention ; et - la figure 4 illustre un procédé de contrôle, par un serveur d'application, de la qualité d'une communication entre un premier terminal et un deuxième terminal selon la présente invention. On se réfère tout d'abord à la figure 2 sur laquelle est illustré un système de communication selon l'invention. The insertion and remote control methods, the computer program, the application server as well as the communication system implementing these methods, objects of the invention, will be better understood on reading the description and to the observation of the following drawings in which, in addition to Figure 1 relating to the prior art: - Figure 2 is a block diagram illustrating a communication system according to the invention; FIG. 3 is a diagram illustrating a method of insertion, by an application server, of an intermediate element between a first and a second terminal according to the present invention. FIGS. 3A and 3B respectively illustrate a first and a second embodiment of the method for inserting an intermediate element according to the present invention; and FIG. 4 illustrates a method for controlling, by an application server, the quality of a communication between a first terminal and a second terminal according to the present invention. Referring first to Figure 2 which shows a communication system according to the invention.
Sur cette figure 2, de manière similaire à la figure 1 afin de faciliter la comparaison avec l'art antérieur, est représenté un système de communication comprenant deux terminaux d'utilisateurs A et B, ainsi qu'un serveur d'application AS présent sur le chemin de signalisation reliant les deux terminaux A et B. On entend ici par « terminal utilisateur » tout équipement terminal pouvant être utilisé par un utilisateur afin de communiquer avec un autre utilisateur, comme par exemple un ordinateur personnel, un téléphone portable, un smartphone, etc. L'idée de la présente invention est d'insérer, dans le chemin de communication (ou chemin « média ») reliant les deux terminaux, un équipement intermédiaire INT connecté au serveur d'application AS, afin que cet équipement intermédiaire INT puisse intercepter certains paquets de données échangés entre les deux terminaux (ici, des paquets transmis selon le protocole RTCP à titre illustratif), en tirer des informations sur la qualité de la communication et transmettre ces informations au serveur d'application AS afin que ce dernier puisse utiliser ces informations conjointement avec les services qu'il propose. In this FIG. 2, similarly to FIG. 1, in order to facilitate the comparison with the prior art, there is shown a communication system comprising two user terminals A and B, as well as an application server AS present on the signaling path connecting the two terminals A and B. Here, the term "user terminal" means any terminal equipment that can be used by a user to communicate with another user, such as a personal computer, a mobile phone or a smartphone. etc. The idea of the present invention is to insert, in the communication path (or "media" path) connecting the two terminals, an intermediate equipment INT connected to the application server AS, so that this intermediate equipment INT can intercept certain data packets exchanged between the two terminals (here, packets transmitted according to the RTCP protocol for illustrative purposes), derive information on the quality of the communication and transmit this information to the application server AS so that the latter can use these in conjunction with the services it offers.
On entend ici par « équipement intermédiaire » tout équipement de réseau capable de recevoir des paquets de données aussi bien du terminal A que du terminal B, et de transmettre les paquets de données à l'autre terminal, afin de garantir un échange de données entre ces deux terminaux équivalent à ce qu'il serait en l'absence de cet équipement intermédiaire. Un tel équipement intermédiaire peut consister typiquement en un serveur informatique, par exemple un serveur d'application ou de gestion de trafic de paquets, un contrôleur de session périphérique (Session Border Controller en anglais), etc. Par ailleurs, cet équipement intermédiaire est configuré pour pouvoir intercepter certains des paquets de données échangés entre les terminaux A et B, afin d'en tirer un ou plusieurs paramètre(s) ParQ permettant d'évaluer la qualité de la communication sur le chemin « média ». Cet équipement intermédiaire est configuré en outre pour transmettre ce(s) paramètre(s) relatif(s) à la qualité de cette communication au serveur d'application AS, où ce(s) paramètre(s) ParQ est analysé. On se réfère maintenant à la figure 3 qui présente un diagramme illustrant un procédé d'insertion, par un serveur d'application, d'un tel équipement intermédiaire dans un chemin de communication reliant un premier et un deuxième terminal selon la présente invention. Un tel procédé d'insertion peut être typiquement mis en oeuvre au cours d'un processus d'établissement de session, lors de l'ouverture d'un canal de communication entre un terminal A et un terminal B. Dans ce procédé d'insertion 100, un premier message REQ comprenant une requête d'insertion de l'équipement intermédiaire INT est émis par le premier terminal (ici, le terminal A, à titre d'exemple) à destination du serveur d'application AS (étape 110). Lorsque le serveur d'application AS reçoit ce premier message REQ, il procède à la modification de ce premier message afin d'obtenir un premier message modifié REQ* dans lequel est inséré une première adresse addl relative à l'équipement intermédiaire INT. Cette première adresse add1, désignant l'équipement intermédiaire INT, est destinée à être utilisée par le deuxième terminal B lors de l'envoi de paquets de données vers le premier terminal A, qui sont donc ainsi redirigés vers l'équipement intermédiaire INT plutôt que directement vers le premier terminal A. Dans un mode de réalisation où l'ensemble du trafic de données entre les terminaux A et B est redirigé vers l'équipement intermédiaire INT, cette première adresse addl peut être utilisée par le deuxième terminal B lors de l'envoi de tous les paquets de données à destination du terminal A. Cependant, dans un mode de réalisation où un seul certain type de paquets de données sont susceptibles de fournir des informations relatives à la qualité de la transmission entre les terminaux A et B, cette première adresse addl peut n'être utilisée que pour la transmission de ce type de paquets de données, les autres paquets de données étant transmis de manière habituelle, par le chemin «média ». Ainsi, dans le cas du protocole RTP/RTCP, la première adresse addl n'est utilisée que pour l'envoi des paquets de contrôle émis selon le protocole RTCP, tandis que les autres paquets de données multimédias (voix, vidéo) ne sont pas transmis au moyen d'une telle adresse, mais de façon classique au moyen de l'adresse du terminal A initialement disponible au niveau du terminal B, ce qui permet de ne pas dérouter l'ensemble du trafic de données vers l'équipement intermédiaire, et donc d'alléger ainsi la charge de travail de cet équipement intermédiaire. By "intermediate equipment" is meant here any network equipment capable of receiving data packets from both the terminal A and the terminal B, and transmitting the data packets to the other terminal, in order to guarantee a data exchange between these two terminals are equivalent to what it would be in the absence of this intermediate equipment. Such intermediate equipment may typically consist of a computer server, for example an application server or packet traffic management, a session controller controller (Session Border Controller), and so on. Furthermore, this intermediate equipment is configured to be able to intercept some of the data packets exchanged between the terminals A and B, in order to derive one or more ParQ parameter (s) making it possible to evaluate the quality of the communication on the path " media ". This intermediate equipment is further configured to transmit this parameter (s) relating to the quality of this communication to the application server AS, where this parameter (s) ParQ is analyzed. Referring now to Figure 3 which shows a diagram illustrating a method of insertion, by an application server, such an intermediate equipment in a communication path connecting a first and a second terminal according to the present invention. Such an insertion method can be typically implemented during a session establishment process, when opening a communication channel between a terminal A and a terminal B. In this insertion method 100, a first REQ message comprising a request for insertion of the intermediate equipment INT is sent by the first terminal (here, the terminal A, for example) to the application server AS (step 110). When the application server AS receives this first message REQ, it proceeds to the modification of this first message to obtain a first modified message REQ * in which is inserted a first address addl relative to the intermediate equipment INT. This first address add1, designating the intermediate equipment INT, is intended to be used by the second terminal B when sending data packets to the first terminal A, which are thus redirected to the intermediate equipment INT rather than directly to the first terminal A. In an embodiment where all of the data traffic between the terminals A and B is redirected to the intermediate equipment INT, this first address addl can be used by the second terminal B when the sending all the data packets to the terminal A. However, in an embodiment where only one certain type of data packets are capable of providing information relating to the quality of the transmission between the terminals A and B, this first address addl can only be used for the transmission of this type of data packets, the other data packets being transmitted in a manner usual, by the way "media". Thus, in the case of the RTP / RTCP protocol, the first addl address is used only for sending the control packets transmitted according to the RTCP protocol, whereas the other multimedia data packets (voice, video) are not transmitted by means of such an address, but in a conventional manner by means of the address of the terminal A initially available at the terminal B, which makes it possible not to confuse all the data traffic to the intermediate equipment, and thus to lighten the workload of this intermediate equipment.
Une telle première adresse addl peut être connue d'avance par le serveur d'application, mais est avantageusement obtenue (étape 120), après réception du premier message REQ, par le serveur d'application AS auprès de l'équipement intermédiaire INT afin d'offrir une certaine flexibilité de re-routage. Pour ce faire, le serveur d'application AS peut requérir auprès de l'équipement intermédiaire INT cette adresse add1, qui peut par exemple être un port d'entrée disponible de cet équipement intermédiaire INT (étape 121). Si une telle adresse est disponible, l'équipement intermédiaire INT transmet un message de réponse contenant cette adresse addl au serveur d'application AS (étape 123) afin que celui-ci l'insère dans le premier message modifié REQ*. Such a first address addl may be known in advance by the application server, but is advantageously obtained (step 120), after reception of the first message REQ, by the application server AS from the intermediate equipment INT in order to provide some flexibility for re-routing. To do this, the application server AS may request from the intermediate equipment INT this address add1, which may for example be an available input port of this intermediate equipment INT (step 121). If such an address is available, the intermediate equipment INT transmits a response message containing this addl address to the application server AS (step 123) so that it inserts it into the first modified message REQ *.
Une fois le premier message modifié REQ* obtenu par l'insertion de l'adresse addl relative à l'équipement intermédiaire INT, ce premier message modifié REQ* est transmis par le serveur d'application AS au deuxième terminal B (étape 130). Le deuxième terminal B extrait de ce premier message modifié REQ* l'adresse addl qu'il associe au premier terminal A pour l'envoi des paquets de données destinés à ce terminal A. Les paquets de données envoyés du terminal B au terminal A sont ainsi redirigés, de manière transparente pour le terminal B, vers l'équipement intermédiaire INT. Once the first modified message REQ * has been obtained by inserting the addl address relating to the intermediate equipment INT, this first modified message REQ * is transmitted by the application server AS to the second terminal B (step 130). The second terminal B extracts from this first modified message REQ * the addl address that it associates with the first terminal A for sending the data packets intended for this terminal A. The data packets sent from the terminal B to the terminal A are thus redirected, transparently for the terminal B, to the intermediate equipment INT.
Suite à la réception de ce premier message modifié REQ*, le deuxième terminal B envoie à son tour un deuxième message de réponse REP vers le serveur d'application AS (étape 140) afin d'indiquer que le processus est accepté. Lorsque le serveur d'application AS reçoit ce deuxième message de réponse REP, il procède à la modification de ce deuxième message (à l'instar de ce qui est effectué pour le premier message) afin d'obtenir un deuxième message de réponse modifié REP* dans lequel est inséré une deuxième adresse add2 relative à l'équipement intermédiaire INT. Similairement à ce qui a été dit au sujet de la première adresse add1 , cette deuxième adresse add2 peut être utilisée, dans un mode de réalisation où l'ensemble du trafic de données entre les terminaux A et B est redirigé vers l'équipement intermédiaire INT, par le premier terminal A lors de l'envoi de paquets de données à destination du terminal B. Cependant, dans un mode de réalisation où un seul certain type de paquets de données sont susceptibles de fournir des informations relatives à la qualité de la transmission entre les terminaux A et B, cette deuxième adresse add2 peut n'être utilisée que pour la transmission de ce type de paquets de données, les autres paquets de données étant transmis de manière habituelle, par le chemin «média ». Ainsi, dans le cas du protocole RTP/RTCP, la deuxième adresse add2 n'est utilisée que pour l'envoi des paquets de contrôle émis selon le protocole RTCP, tandis que les autres paquets de données multimédias (voix, vidéo) ne sont pas transmis au moyen d'une telle adresse, mais de façon classique au moyen de l'adresse du terminal B initialement disponible au niveau du terminal A, ce qui permet encore une fois de ne pas dérouter l'ensemble du trafic de données vers l'équipement intermédiaire, et donc d'alléger la charge de travail de cet équipement intermédiaire. Ici aussi, cette deuxième adresse add2 peut être connue d'avance par le serveur d'application, mais est avantageusement obtenue (étape 150), après réception du deuxième message de réponse REP, par le serveur d'application AS 2 9 79505 9 auprès de l'équipement intermédiaire INT, toujours afin d'offrir une certaine flexibilité de re-routage. Pour ce faire, le serveur d'application AS peut requérir auprès de l'équipement intermédiaire INT cette deuxième adresse add2, qui peut par 5 exemple être un port d'entrée disponible, différent du port d'entrée indiqué par la première adresse, de cet équipement intermédiaire INT (étape 151). Si une telle adresse add2 est disponible, l'équipement intermédiaire INT transmet un message de réponse contenant cette adresse add2 au serveur d'application AS (étape 153) afin que celui-ci l'insère dans le deuxième message de réponse modifié REP*. 10 Une fois le deuxième message de réponse modifié REP* obtenu par l'insertion de l'adresse add2 relative à l'équipement intermédiaire INT, ce deuxième message de réponse modifié REP est alors transmis par le serveur d'application AS au premier terminal A (étape 160), lequel peut avantageusement répondre par un accusé de réception (étape 170) visant à prouver la bonne 15 acceptation du processus, cet accusé de réception étant transmis vers le serveur d'application AS (étape 171) qui relaie cette accusé de réception vers le deuxième terminal B (étape 173). Le premier terminal A extrait alors du deuxième message de réponse modifié REP* l'adresse add2 qu'il associe au deuxième terminal B pour l'envoi des 20 paquets de données destinés à ce terminal B. Les paquets de données envoyés du terminal A au terminal B sont ainsi redirigés, de manière transparente pour le terminal A, vers l'équipement intermédiaire INT. A partir de ce stade, tout paquet de données échangé lors d'une communication entre les terminaux A et B va donc transiter par l'équipement 25 intermédiaire INT (étape 180), lequel pourra en tirer des informations quant à la qualité de cette communication et transmettre de telles informations au serveur d'application AS. 30 On se réfère maintenant à la figure 3A qui illustre un premier mode de réalisation du procédé d'insertion d'un élément intermédiaire selon la présente invention. Dans ce mode de réalisation, le premier message est un message de requête d'établissement de session de communication et le deuxième message est un message de réponse d'établissement de session, de communication, définis par exemple selon les protocoles SIP et SDP. Selon un mode de réalisation où le protocole de signalisation SIP est employé, un premier message de requête d'établissement de session de type « INVITE » est ainsi émis par le premier terminal A à destination du serveur d'application AS (étape 210). Avantageusement, toujours dans le contexte d'un protocole de signalisation de type SIP, ce message peut contenir une offre SDP relative au terminal A (désignée par « SDP_A »), c'est-à-dire un champ contenant des informations relatives au terminal A sous la forme d'un attribut a décrit selon la syntaxe SDP suivante : a=rtcp:[RTCP Collector port 1] IN IP4 [adresse IP RTCP Collector 1] où : - "RTCP Collector port 1" est l'adresse d'un premier port de l'équipement intermédiaire INT ; et - "adresse IP RTCP Collector 1" est la première adresse addl de l'équipement intermédiaire INT Lorsque le serveur d'application AS reçoit ce premier message INVITE et détecte qu'une offre SDP y est insérée, il lance un processus d'obtention d'une première adresse relative à l'équipement intermédiaire INT et destinée à être insérée dans le premier message INVITE (étape 220). Pour ce faire, le serveur d'application AS demande à l'équipement intermédiaire INT d'ouvrir un nouveau port (par exemple un port UDP). L'équipement intermédiaire INT retourne alors au serveur d'application AS une première adresse (Add IP1) ainsi que le numéro de port associé (port 1). Following receipt of this first modified message REQ *, the second terminal B in turn sends a second response message REP to the application server AS (step 140) to indicate that the process is accepted. When the application server AS receives this second response message REP, it modifies this second message (as is done for the first message) in order to obtain a second modified response message REP * in which is inserted a second address add2 relating to the intermediate equipment INT. Similar to what has been said about the first address add1, this second address add2 can be used, in one embodiment where all the data traffic between the terminals A and B is redirected to the intermediate equipment INT by the first terminal A when sending data packets to the terminal B. However, in an embodiment where only a certain type of data packets are capable of providing information relating to the quality of the transmission between the terminals A and B, this second address add2 can be used only for the transmission of this type of data packets, the other data packets being transmitted in the usual way, by the "media" path. Thus, in the case of the RTP / RTCP protocol, the second address add2 is only used for sending the control packets transmitted according to the RTCP protocol, whereas the other multimedia data packets (voice, video) are not transmitted by means of such an address, but in a conventional manner by means of the address of the terminal B initially available at the terminal A, which again allows not to confuse all the data traffic to the intermediate equipment, and thus to lighten the workload of this intermediate equipment. Here too, this second address add2 may be known in advance by the application server, but is advantageously obtained (step 150), after receiving the second response message REP, from the application server AS 2 9 79505 9 from Intermediate equipment INT, always in order to offer some flexibility of re-routing. To do this, the application server AS can request from the intermediate equipment INT this second address add2, which may for example be an available input port, different from the input port indicated by the first address, of this intermediate equipment INT (step 151). If such an address add2 is available, the intermediate equipment INT transmits a response message containing this address add2 to the application server AS (step 153) so that it inserts it into the second modified response message REP *. Once the second modified response message REP * has been obtained by inserting the address add2 relating to the intermediate equipment INT, this second modified response message REP is then transmitted by the application server AS to the first terminal A. (step 160), which can advantageously respond with an acknowledgment (step 170) to prove the good acceptance of the process, this acknowledgment being transmitted to the application server AS (step 171) which relays this acknowledgment of receiving to the second terminal B (step 173). The first terminal A then extracts from the second modified response message REP * the address add2 which it associates with the second terminal B for sending the data packets intended for this terminal B. The data packets sent from the terminal A to the terminal B terminal B are thus redirected, transparently for the terminal A, to the intermediate equipment INT. From this point onwards, any data packet exchanged during a communication between the terminals A and B will therefore pass through the intermediate equipment INT (step 180), which will be able to derive information as to the quality of this communication. and transmit such information to the AS application server. Referring now to FIG. 3A which illustrates a first embodiment of the method of inserting an intermediate element according to the present invention. In this embodiment, the first message is a communication session establishment request message and the second message is a session establishment response communication message, defined for example according to the SIP and SDP protocols. According to an embodiment where the SIP signaling protocol is used, a first "INVITE" session establishment request message is thus sent by the first terminal A to the application server AS (step 210). Advantageously, always in the context of a SIP-type signaling protocol, this message may contain a SDP offer relating to the terminal A (denoted by "SDP_A"), that is to say a field containing information relating to the terminal. A in the form of an attribute described according to the following SDP syntax: a = rtcp: [RTCP Collector port 1] IN IP4 [IP address RTCP Collector 1] where: - "RTCP Collector port 1" is the address of a first port of the intermediate equipment INT; and - "IP address RTCP Collector 1" is the first addl address of the intermediate device INT When the application server AS receives this first message INVITE and detects that an SDP offer is inserted there, it starts a process of obtaining a first address relating to the intermediate equipment INT and intended to be inserted in the first INVITE message (step 220). To do this, the application server AS requests the intermediate equipment INT to open a new port (for example a UDP port). The intermediate equipment INT then returns to the application server AS a first address (Add IP1) and the associated port number (port 1).
Une fois muni de cette première adresse et du numéro de port associé, le serveur d'application AS modifie le premier message INVITE afin d'obtenir un première message modifié dans lequel sont insérés cette première adresse et ce numéro de port associé, ce qui est illustré par le message suivant sur la figure 3A: INVITE (SDP_A + (Add IP1 ; port 1)) Ce message modifié de requête d'établissement de session est alors transmis au terminal B (étape 230) qui en extrait l'adresse add IP1 de l'équipement intermédiaire et le numéro de port « port 1 » associé. Le terminal B émet alors, en réponse, un message de réponse d'établissement de session à destination du serveur d'application (étape 240). Selon un mode de réalisation où le protocole de signalisation SIP est employé, ce message de réponse d'établissement de session peut être de type « 200 OK » pouvant contenir une offre SDP relative au terminal B (désignée par « SDP_B »), c'est-à-dire un champ contenant des informations relatives au terminal B sous la forme d'un attribut décrit selon la syntaxe SDP suivante : b=rtcp:[RTCP Collector port 2] IN IP4 [adresse IP RTCP Collector 2] où : - "RTCP Collector port 2" est l'adresse d'un deuxième port de l'équipement intermédiaire INT ; et - "adresse IP RTCP Collector 2" est la deuxième adresse add2 de l'équipement intermédiaire INT Lorsque le serveur d'application AS reçoit ce message de réponse « 200 OK (SDP_B) » et détecte qu'une offre SDP y est insérée, il lance un processus d'obtention d'une deuxième adresse relative à l'équipement intermédiaire INT et destinée à être insérée dans ce message de réponse (étape 250). Pour ce faire, le serveur d'application AS demande à l'équipement intermédiaire INT d'ouvrir un nouveau port (par exemple un port UDP). L'équipement intermédiaire INT retourne alors au serveur d'application AS une deuxième adresse (add IP2) ainsi que le numéro du nouveau port associé (port 2). Once provided with this first address and the associated port number, the application server AS modifies the first INVITE message to obtain a first modified message in which are inserted this first address and this associated port number, which is illustrated by the following message in FIG. 3A: INVITE (SDP_A + (Add IP1, port 1)) This modified session establishment request message is then transmitted to the terminal B (step 230) which extracts the add IP1 address intermediate equipment and the associated "port 1" port number. The terminal B then transmits, in response, a session establishment response message to the application server (step 240). According to an embodiment where the SIP signaling protocol is used, this session establishment response message may be of the "200 OK" type which may contain an SDP offer relating to the terminal B (designated by "SDP_B"). that is, a field containing information about the terminal B in the form of an attribute described according to the following SDP syntax: b = rtcp: [RTCP Collector port 2] IN IP4 [IP address RTCP Collector 2] where: - "RTCP Collector port 2" is the address of a second port of the intermediate equipment INT; and - "IP address RTCP Collector 2" is the second address add2 of the intermediate equipment INT When the application server AS receives this response message "200 OK (SDP_B)" and detects that an SDP offer is inserted therein, it initiates a process for obtaining a second address relating to the intermediate equipment INT and intended to be inserted in this response message (step 250). To do this, the application server AS requests the intermediate equipment INT to open a new port (for example a UDP port). The intermediate equipment INT then returns to the application server AS a second address (add IP2) and the number of the new associated port (port 2).
Une fois muni de cette deuxième adresse et du numéro de port associé, le serveur d'application AS modifie le message de réponse « 200 OK (SDP_B) » afin d'obtenir un deuxième message de réponse d'établissement de session modifié dans lequel sont insérés cette deuxième adresse et ce numéro de port associé, ce qui est illustré par le message suivant sur la figure 3A: OK 200 (SDP_B + (add IP2 ; port 2)) Ce message modifié de réponse de requête d'établissement de session est alors transmis au terminal A (étape 260) qui en extrait l'adresse « add IP2 » de l'équipement intermédiaire INT et le numéro de port associé, avant de lancer un processus d'accusé de réception (étape 270). A partir de ce stade, le terminal A envoie tous les paquets de données destinés au terminal B vers le port 2 de l'adresse « add IP2 » correspondant à l'équipement intermédiaire INT. Réciproquement, le terminal B envoie tous les paquets de données destinés au terminal A vers le port 1 de l'adresse « add IP1 » correspondant également à l'équipement intermédiaire INT terminal. Tout paquet échangé lors d'une communication entre les terminaux A et B transite par l'équipement intermédiaire INT (étape 280), lequel peut en tirer des informations quant à la qualité de cette communication et transmettre de telles informations au serveur d'application AS. On se réfère maintenant à la figure 3B qui illustre un deuxième mode de réalisation du procédé d'insertion d'un élément intermédiaire selon la présente invention. Dans cet autre mode de réalisation, le premier message REQ est un message de réponse d'établissement de session et le deuxième message est un message d'accusé de réception. Once provided with this second address and the associated port number, the application server AS modifies the response message "200 OK (SDP_B)" to obtain a second modified session establishment response message in which inserted this second address and this associated port number, which is illustrated by the following message in Figure 3A: OK 200 (SDP_B + (add IP2; port 2)) This modified session establishment request response message is then transmitted to the terminal A (step 260) which extracts the "add IP2" address of the intermediate equipment INT and the associated port number, before starting an acknowledgment process (step 270). From this point, the terminal A sends all the data packets intended for the terminal B to the port 2 of the "add IP2" address corresponding to the intermediate equipment INT. Conversely, the terminal B sends all the data packets intended for the terminal A to the port 1 of the "add IP1" address corresponding also to the terminal intermediate equipment INT. Any packet exchanged during a communication between the terminals A and B passes through the intermediate equipment INT (step 280), which can derive information as to the quality of this communication and transmit such information to the application server AS . Referring now to FIG. 3B which illustrates a second embodiment of the method of inserting an intermediate element according to the present invention. In this other embodiment, the first REQ message is a session setup response message and the second message is an acknowledgment message.
Ici, le procédé 300 est initié par l'envoi d'un message de requête d'établissement de session (par exemple un message « INVITE » selon le protocole SIP) du premier terminal A au serveur d'application AS (étape 301), lequel transmet ce message inchangé au deuxième terminal B selon un processus classique (étape 303). Here, the method 300 is initiated by sending a session establishment request message (for example an "INVITE" message according to the SIP protocol) from the first terminal A to the application server AS (step 301). which transmits this message unchanged to the second terminal B according to a conventional process (step 303).
Suite à la réception de ce message de requête d'établissement de session, le deuxième terminal B génère un message de réponse d'établissement de session et transmet ce message au serveur d'application AS (étape 310). Ici, lorsque le protocole de signalisation SIP est employé, ce message de réponse d'établissement de session est de type « 200 OK ». Avantageusement, ce message contient une offre SDP relative au terminal B (désignée par « SDP_B ») comme décrite précédemment, ce qui est illustré par le message suivant sur la figure 3B : « 200 OK (SDP_B) ». Lorsque le serveur d'application AS reçoit ce message de réponse d'établissement de session et détecte qu'une offre SDP y est inséré, il lance un processus d'obtention d'une première adresse relative à l'équipement intermédiaire INT et destinée à être insérée dans ce message de réponse d'établissement de session (étape 320), similairement à ce qui est décrit en relation avec l'étape 220 de la figure 3A. ro Une fois muni d'une première adresse et du numéro de port associé reçus de l'équipement intermédiaire INT, le serveur d'application AS modifie le message de réponse d'établissement de session afin d'obtenir un message de réponse d'établissement de session modifié dans lequel est inséré cette première adresse et ce numéro de port associé, ce qui est illustré par le message suivant sur la 15 figure 3B: « 200 OK (SDP_B + (add IP1 ; port 1)) ». Ce message modifié de réponse d'établissement de session est alors transmis au terminal A (étape 330) qui en extrait l'adresse « add IP1 » de l'équipement intermédiaire INT et le numéro de port associé. Le terminal A émet alors, en réponse, un message d'accusé de réception à 20 destination du serveur d'application (étape 340). Dans un mode de réalisation où le protocole de signalisation SIP est employé, ce message de réponse d'établissement de session est avantageusement de type « ACK ». Avantageusement, toujours dans le cas d'un protocole de signalisation de type SIP, ce message d'accusé de réception contient une offre SDP relative au 25 terminal A (désignée par « SDP_A ») comme décrite précédemment, ce qui est illustré par le message suivant sur la figure 3B : « ACK (SDP_A) ». Lorsque le serveur d'application AS reçoit ce message d'accusé de réception « ACK (SDP_A) » et détecte qu'une offre SDP y est insérée, il lance un processus d'obtention d'une deuxième adresse relative à l'équipement intermédiaire INT et 30 destinée à être insérée dans ce message de réponse (étape 350), similairement à ce qui est décrit en relation avec l'étape 250 de la figure 3A. Une fois muni de cette deuxième adresse et du numéro de port associé, le serveur d'application AS modifie le message d'accusé de réception « ACK (SDP_A) » afin d'obtenir un message d'accusé de réception dans lequel sont insérés cette deuxième adresse et ce numéro de port associé, ce qui est illustré par le message suivant sur la figure 3B: « ACK (SDP_A + (add IP2 ; port 2))». Ce message modifié d'accusé de réception est alors transmis au terminal B (étape 360) qui en extrait l'adresse « add IP2 » de l'équipement intermédiaire INT et le numéro de port associé. A partir de ce stade, le terminal A envoie tous les paquets de données destinés au terminal B vers le port 2 de l'adresse « add IP2 » correspondant à l'équipement intermédiaire INT. Réciproquement, le terminal B envoie tous les paquets de données destinés au terminal A vers le port 1 de l'adresse « add IP1 » correspondant également à l'équipement intermédiaire INT terminal. Tout paquet échangé lors d'une communication entre les terminaux A et B transite par l'équipement intermédiaire INT (étape 380), lequel peut en tirer des informations quant à la qualité de cette communication et transmettre de telles informations au serveur d'application AS. L'équipement intermédiaire INT, inséré dans le chemin de communication entre les terminaux A et B au moyen de l'un des procédés d'insertion décrit précédemment, peut alors être utilisé pour surveiller la qualité de la communication sur ce chemin de communication et transmettre des informations sur cette qualité au serveur d'application AS. Ce serveur d'application AS peut ainsi contrôler, grâce à l'insertion de l'équipement intermédiaire INT, la qualité de la communication entre les terminaux A et B, afin d'en tirer des conclusions et le cas échéant d'adapter les services qu'il fournit en fonction de la qualité mesurée. On se réfère maintenant à la figure 4 qui illustre les étapes d'un procédé de contrôle par un serveur d'application, de la qualité d'une communication entre au moins deux terminaux selon la présente invention. Upon receipt of this session establishment request message, the second terminal B generates a session establishment response message and transmits this message to the application server AS (step 310). Here, when the SIP signaling protocol is employed, this session establishment response message is of type "200 OK". Advantageously, this message contains a SDP offer relating to the terminal B (designated by "SDP_B") as previously described, which is illustrated by the following message in FIG. 3B: "200 OK (SDP_B)". When the application server AS receives this session establishment response message and detects that an SDP offer is inserted therein, it initiates a process of obtaining a first address relating to the intermediate equipment INT and intended to to be inserted in this session establishment response message (step 320), similarly to what is described in connection with step 220 of FIG. 3A. When provided with a first address and the associated port number received from the intermediate equipment INT, the application server AS modifies the session establishment response message in order to obtain an establishment response message. The modified session session in which this first address and this associated port number is inserted, which is illustrated by the following message in FIG. 3B: "200 OK (SDP_B + (add IP1, port 1))". This modified session establishment response message is then transmitted to the terminal A (step 330) which extracts the "add IP1" address of the intermediate equipment INT and the associated port number. The terminal A then transmits, in response, an acknowledgment message to the application server (step 340). In an embodiment where the SIP signaling protocol is employed, this session establishment response message is preferably of the "ACK" type. Advantageously, again in the case of a SIP-type signaling protocol, this acknowledgment message contains an SDP offer relating to the terminal A (denoted by "SDP_A") as previously described, which is illustrated by the message next in Figure 3B: "ACK (SDP_A)". When the application server AS receives this acknowledgment message "ACK (SDP_A)" and detects that an SDP offer is inserted therein, it initiates a process for obtaining a second address relating to the intermediate equipment. INT and 30 to be inserted in this response message (step 350), similarly to what is described in connection with step 250 of FIG. 3A. Once provided with this second address and the associated port number, the application server AS modifies the acknowledgment message "ACK (SDP_A)" in order to obtain an acknowledgment message in which this message is inserted. second address and this associated port number, which is illustrated by the following message in Figure 3B: "ACK (SDP_A + (add IP2, port 2))". This modified acknowledgment message is then transmitted to the terminal B (step 360) which extracts the "add IP2" address of the intermediate equipment INT and the associated port number. From this point, the terminal A sends all the data packets intended for the terminal B to the port 2 of the "add IP2" address corresponding to the intermediate equipment INT. Conversely, the terminal B sends all the data packets intended for the terminal A to the port 1 of the "add IP1" address corresponding also to the terminal intermediate equipment INT. Any packet exchanged during a communication between the terminals A and B passes through the intermediate equipment INT (step 380), which can draw information about the quality of this communication and transmit such information to the application server AS . The intermediate equipment INT, inserted in the communication path between the terminals A and B by means of one of the insertion methods described above, can then be used to monitor the quality of the communication on this communication path and transmit information about this quality to the AS application server. This application server AS can thus control, thanks to the insertion of the intermediate equipment INT, the quality of the communication between the terminals A and B, in order to draw conclusions and if necessary to adapt the services that it provides based on the quality measured. Referring now to Figure 4 which illustrates the steps of a method of control by an application server, the quality of a communication between at least two terminals according to the present invention.
Ce procédé démarre avec l'insertion (étape 410) de l'équipement intermédiaire INT dans le chemin de communication reliant les premier et deuxième terminaux A et B, en mettant en oeuvre le procédé d'insertion tel que décrit ci-avant. This process starts with the insertion (step 410) of the intermediate equipment INT in the communication path connecting the first and second terminals A and B, by implementing the insertion method as described above.
Une fois l'équipement intermédiaire INT inséré, les paquets de données échangés entre les terminaux A et B transitent ainsi par cet équipement intermédiaire INT (étape 415). Un (ou plusieurs) paramètre relatif à la qualité de la communication (désigné par PARQ) est alors extrait d'un ou plusieurs paquet(s) de données transmis par le chemin de communication entre les premier et deuxième terminaux A et B (étape 420). Des paquets spécifiques de données peuvent être interceptés pour réaliser l'extraction de ce paramètre PARQ relatif à la qualité de la communication. Once the intermediate equipment INT is inserted, the data packets exchanged between the terminals A and B thus pass through this intermediate equipment INT (step 415). One (or more) parameter relating to the quality of the communication (designated by PARQ) is then extracted from one or more packet (s) of data transmitted by the communication path between the first and second terminals A and B (step 420 ). Specific data packets can be intercepted to extract this parameter PARQ relating to the quality of the communication.
Ainsi, dans le cas d'un chemin de communication utilisant les protocoles RTP/RTCP, il est avantageux d'intercepter les paquets de rapport d'émission (« Sender Report ») et/ou de rapport de réception (« Receiver Report »), lesquels contiennent des données d'informations liées à la qualité de la communication, comme par exemple des données concernant les variations des intervalles d'arrivée des paquets, le nombre cumulé de paquets perdus ou la fraction de pertes, entre autres. Une fois obtenu, le (ou les) paramètre PARQ relatif à la qualité de communication est transmis par l'équipement intermédiaire INT au serveur d'application AS (étape 430). Thus, in the case of a communication path using the RTP / RTCP protocols, it is advantageous to intercept the transmission report ("Sender Report") and / or reception report ("Receiver Report") packets. which contain information data related to the quality of the communication, such as, for example, data concerning the variations of the arrival intervals of the packets, the cumulative number of packets lost or the fraction of losses, among others. Once obtained, the parameter (s) PARQ relating to the quality of communication is transmitted by the intermediate equipment INT to the application server AS (step 430).
Selon un mode de réalisation dit « push », cet envoi du ou des paramètre(s) relatif à la qualité de communication au serveur d'application AS est réalisé par l'équipement intermédiaire INT lorsqu'au moins un de ces paramètres dépasse une certaine valeur seuil, paramétrée dans l'équipement intermédiaire INT. A titre d'exemple, l'équipement intermédiaire INT peut surveiller le taux de paquets perdus indiqué dans les paquets « Receiver Report » ou « Sender Report » transmis selon le protocole RTCP. Si ce taux dépasse un seuil de 5%, ce taux est transmis au serveur d'application AS afin que celui-ci puisse effectuer une action particulière, par exemple renégocier la tarification puisque la qualité s'est dégradée, renégocier la bande passante et/ou les codecs utilisées. According to a so-called "push" embodiment, this sending of the parameter (s) relating to the quality of communication to the application server AS is carried out by the intermediate equipment INT when at least one of these parameters exceeds a certain threshold value, parameterized in the intermediate equipment INT. By way of example, the intermediate equipment INT can monitor the lost packet rate indicated in the "Receiver Report" or "Sender Report" packets transmitted according to the RTCP protocol. If this rate exceeds a threshold of 5%, this rate is transmitted to the application server AS so that it can perform a particular action, for example renegotiate the pricing since the quality has deteriorated, renegotiate the bandwidth and / or or the codecs used.
Selon un autre mode de réalisation dit « sur demande », ou « pull », cet envoi du ou des paramètre(s) relatif à la qualité de communication au serveur d'application AS est réalisé suite à la réception, par l'équipement intermédiaire INT, d'une requête en transmission émise par le serveur d'application AS. Dans ce mode de réalisation, le serveur d'application AS demande explicitement les informations qu'il souhaite en fonction de certains critères. A titre d'exemple, lorsque le serveur d'application AS souhaite moduler une tarification, il peut requérir l'envoi d'informations sur le taux de paquets perdus, tel qu'indiqué dans les paquets « Receiver Report » ou « Sender Report » transmis selon le protocole RTCP, auprès de l'équipement intermédiaire. Selon un autre mode de réalisation dit « publication/souscription », le serveur d'application AS peut s'abonner à des informations particulières au sein des différentes informations disponibles sur les paquets de données échangées, par exemple seulement au taux de perte de paquets. According to another embodiment known as "on demand" or "pull", this sending of the parameter (s) relating to the quality of communication to the application server AS is carried out following the reception by the intermediate equipment. INT, of a transmission request sent by the application server AS. In this embodiment, the application server AS explicitly requests the information it wishes according to certain criteria. For example, when the application server AS wishes to modulate a tariff, it may require the sending of information on the lost packet rate, as indicated in the "Receiver Report" or "Sender Report" packets. transmitted according to the RTCP protocol, to the intermediate equipment. According to another embodiment known as "publication / subscription", the application server AS can subscribe to particular information within the various information available on the data packets exchanged, for example only at the packet loss rate.
Ces informations peuvent être mises à disposition en fonction de seuils fixés lors de la souscription. Elles peuvent même être agrégées ou subir un premier traitement statistique au niveau de l'équipement intermédiaire INT. Le paramètre PARQ peut, entre autres, être obtenu par l'équipement intermédiaire en corrélant une information relative à la qualité de la communication avec le numéro du terminal appelant et/ou appelé avant de transmettre ce paramètre au serveur d'application AS. Une fois en possession du ou des paramètre(s) PARQ relatif à la qualité de communication, le serveur d'application AS est en mesure d'évaluer la qualité de la communication sur le chemin de communication entre les terminaux A et B, bien qu'il ne soit pas situé sur ce chemin. En particulier, le serveur d'application AS peut exploiter les informations fournies par ce(s) paramètre(s) PARQ dans différentes situations, afin d'effectuer certaines actions correctrices dépendant de la qualité évaluée de cette communication. This information can be made available according to the thresholds set during the subscription. They can even be aggregated or undergo a first statistical processing at the level of the intermediate equipment INT. The parameter PARQ can, among other things, be obtained by the intermediate equipment by correlating information relating to the quality of the communication with the number of the calling and / or called terminal before transmitting this parameter to the application server AS. Once in possession of the PARQ parameter (s) relating to the quality of communication, the application server AS is able to evaluate the quality of the communication on the communication path between the terminals A and B, although it is not located on this path. In particular, the application server AS can use the information provided by this PARQ parameter (s) in different situations, in order to perform certain corrective actions depending on the evaluated quality of this communication.
Ainsi, le serveur d'application AS peut requérir aux terminaux de renégocier un paramètre propre à la communication, de façon dynamique, c'est-à-dire en cours de communication, s'il estime que la qualité de communication mesurée l'exige. Selon un autre mode de réalisation où le serveur d'application gère une fonctionnalité de facturation du système de communication, le serveur d'application AS peut adapter le tarif appliqué à la communication entre les terminaux A et B en fonction du ou de(s) paramètre(s) PARQ reçu(s) de l'équipement intermédiaire INT. Cela peut être le cas si un (ou plusieurs) paramètre PARQ reçu de l'équipement intermédiaire INT indique que la qualité de cette communication s'est dégradée (par exemple, si la valeur d'un des paramètre(s) PARQ est mesurée comme étant inférieure à un premier seuil prédéfini). Enfin, si le serveur d'application AS estime que la qualité de la communication est trop mauvaise (par exemple, si la valeur d'un des paramètre(s) PARQ est mesurée comme étant inférieure à un deuxième seuil prédéfini), le serveur d'application AS peut instruire d'interrompre la communication, en envoyant des messages de signalisation requérant cette interruption aux terminaux A et B. Thus, the application server AS may require the terminals to renegotiate a parameter specific to the communication, dynamically, that is to say during communication, if it considers that the measured quality of communication requires it . According to another embodiment where the application server manages a billing functionality of the communication system, the application server AS can adapt the tariff applied to the communication between the terminals A and B depending on the or (s) PARQ parameter (s) received from the intermediate equipment INT. This may be the case if one (or more) parameter PARQ received from the intermediate equipment INT indicates that the quality of this communication has deteriorated (for example, if the value of one of the PARQ parameter (s) is measured as being less than a first predefined threshold). Finally, if the application server AS estimates that the quality of the communication is too bad (for example, if the value of one parameter PARQ is measured as being less than a second predefined threshold), the server of AS application can instruct to interrupt the communication, by sending signaling messages requiring this interruption to terminals A and B.
Selon une implémentation préférée, les différentes étapes des procédé d'insertion et de contrôle à distance selon l'invention sont mises en oeuvre par un programme, susceptible d'être exécuté par une unité de traitement d'un serveur d'application (implémentée par exemple sous la forme d'un ordinateur ou d'un processeur de données), ce programme comportant des instructions pour commander l'exécution des étapes d'un procédé tel que mentionné ci-dessus. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme d'un code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable. L'invention vise aussi un support d'informations lisible par un ordinateur ou processeur de données, et comportant des instructions d'un programme tel que mentionné ci-dessus. Ce support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD-ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette ou un disque dur. D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet. Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. According to a preferred implementation, the various steps of the insertion and remote control methods according to the invention are implemented by a program, which can be executed by a processing unit of an application server (implemented by example in the form of a computer or a data processor), this program including instructions for controlling the execution of the steps of a method as mentioned above. This program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any form what other form is desirable. The invention also relates to a data carrier readable by a computer or data processor, and comprising instructions of a program as mentioned above. This information carrier can be any entity or device capable of storing the program. For example, the medium may comprise storage means, such as a ROM, for example a CD-ROM or a microelectronic circuit ROM, or a magnetic recording means, for example a diskette or a hard disk. On the other hand, the information medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed via an electrical or optical cable, by radio or by other means. The program according to the invention can be downloaded in particular on an Internet type network. Alternatively, the information carrier may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
Bien entendu, l'invention n'est pas limitée aux exemples de réalisation ci- dessus décrits et représentés, à partir desquels on pourra prévoir d'autres modes et d'autres formes de réalisation, sans pour autant sortir du cadre de l'invention. Ainsi, on comprendra que l'invention ne se limite pas à l'insertion d'un équipement intermédiaire, chargé d'intercepter des paquets de données sur un chemin de communication afin d'en extraire des informations sur la qualité de la communication à destination d'un serveur d'application distant, entre seulement deux terminaux, mais peut concerner un nombre quelconque de terminaux relié par un chemin de communication présentant au moins un tronçon commun, dans lequel cet équipement intermédiaire peut alors être inséré. Par ailleurs, les exemples de réalisation spécifiques présentés ci-avant concernent un système de communication dans lequel le protocole SIP est utilisé sur le chemin de signalisation entre le serveur d'application AS et les terminaux A,B, tandis que le protocole RTP/RTCP est utilisé pour l'échange de paquets de données sur le chemin de communication. Cependant, la présente invention ne se limite à de tels protocoles et peut s'étendre à tout système de communication dans lequel un serveur d'application est situé sur un chemin de signalisation reliant plusieurs terminaux, et utilise un protocole de signalisation pour communiquer avec ces terminaux, sans être situé sur le chemin d'échange de paquets de données reliant ces terminaux, sur lequel un autre protocole de contrôle d'échange peut être employé. Ainsi, le protocole de signalisation H. 323 peut être utilisé, au lieu du protocole SIP, conjointement avec la présente invention. La présente invention trouve avantageusement une application dans le domaine de la communication de type voix sur IP, ce type de communication étant plus sensible au trafic réseau qu'une communication classique utilisant un réseau à commutation de circuit, ce qui fait qu'une congestion du réseau peut entraîner la dégradation de la qualité sonore ressentie par les participants dans ce type de communication de type voix sur IP. Of course, the invention is not limited to the embodiments described above and shown, from which we can provide other modes and other embodiments, without departing from the scope of the invention. . Thus, it will be understood that the invention is not limited to the insertion of an intermediate device, responsible for intercepting data packets on a communication path in order to extract information on the quality of the communication at destination. a remote application server, between only two terminals, but may relate to any number of terminals connected by a communication path having at least one common section, wherein this intermediate equipment can then be inserted. Furthermore, the specific exemplary embodiments presented above concern a communication system in which the SIP protocol is used on the signaling path between the application server AS and the terminals A, B while the RTP / RTCP protocol. is used for the exchange of data packets on the communication path. However, the present invention is not limited to such protocols and can extend to any communication system in which an application server is located on a signaling path connecting multiple terminals, and uses a signaling protocol to communicate with these terminals, without being located on the data packet exchange path connecting these terminals, on which another exchange control protocol may be employed. Thus, the H. 323 signaling protocol may be used, instead of the SIP protocol, in conjunction with the present invention. The present invention advantageously has an application in the field of voice-over-IP type communication, this type of communication being more sensitive to network traffic than a conventional communication using a circuit-switched network, so that a congestion of network may lead to the degradation of the sound quality felt by the participants in this type of voice-over-IP
Elle trouve aussi une application intéressante à l'adaptation de la facturation de la communication à la qualité mesurée, lorsque l'élément du réseau en charge de la facturation n'a pas d'accès direct au chemin de communication reliant les terminaux et ne peut donc pas évaluer lui-même la qualité de la communication. It also finds an interesting application to the adaptation of the billing of the communication to the measured quality, when the element of the network in charge of the billing does not have direct access to the communication path connecting the terminals and can not therefore not evaluate the quality of the communication itself.
Claims (15)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1157677A FR2979505A1 (en) | 2011-08-31 | 2011-08-31 | Method for inserting intermediate equipment in communication channel connecting e.g. smartphones, of voice over Internet protocol communication system, involves transmitting modified response message to user terminal |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR1157677A FR2979505A1 (en) | 2011-08-31 | 2011-08-31 | Method for inserting intermediate equipment in communication channel connecting e.g. smartphones, of voice over Internet protocol communication system, involves transmitting modified response message to user terminal |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| FR2979505A1 true FR2979505A1 (en) | 2013-03-01 |
Family
ID=45563170
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR1157677A Pending FR2979505A1 (en) | 2011-08-31 | 2011-08-31 | Method for inserting intermediate equipment in communication channel connecting e.g. smartphones, of voice over Internet protocol communication system, involves transmitting modified response message to user terminal |
Country Status (1)
| Country | Link |
|---|---|
| FR (1) | FR2979505A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107749874A (en) * | 2017-10-10 | 2018-03-02 | 杭州嘉楠耘智信息科技股份有限公司 | A kind of message treatment method and system |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040066753A1 (en) * | 2002-10-04 | 2004-04-08 | Grovenburg William Grant | System and method to monitor RTP streams using RTCP SR/RR packet information |
| WO2006095262A2 (en) * | 2005-03-11 | 2006-09-14 | Santera Systems, Inc. | System and method for determining network quality for voip calls |
| US7310334B1 (en) * | 2002-04-30 | 2007-12-18 | Cisco Technology, Inc. | Method and apparatus for media stream monitoring |
-
2011
- 2011-08-31 FR FR1157677A patent/FR2979505A1/en active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7310334B1 (en) * | 2002-04-30 | 2007-12-18 | Cisco Technology, Inc. | Method and apparatus for media stream monitoring |
| US20040066753A1 (en) * | 2002-10-04 | 2004-04-08 | Grovenburg William Grant | System and method to monitor RTP streams using RTCP SR/RR packet information |
| WO2006095262A2 (en) * | 2005-03-11 | 2006-09-14 | Santera Systems, Inc. | System and method for determining network quality for voip calls |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107749874A (en) * | 2017-10-10 | 2018-03-02 | 杭州嘉楠耘智信息科技股份有限公司 | A kind of message treatment method and system |
| CN107749874B (en) * | 2017-10-10 | 2024-03-15 | 上海嘉楠捷思信息技术有限公司 | Message processing method and system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3053303B1 (en) | Method for subscribing to streams coming from multicast clients | |
| EP2044797B1 (en) | Switching of multimedia sessions of a mobile terminal to an equipment of a local home network | |
| EP3603024B1 (en) | Method for recommending a communication stack | |
| EP2793443B1 (en) | Method, device and system for detecting quality-of-service problems | |
| EP2882161B1 (en) | Method and device for establishing communication | |
| EP3105889A1 (en) | Notification of bandwidth consumption information to a service provider in a telecommunications network | |
| EP3162026B1 (en) | Method for authorising the establishment of a peer-to-peer stream in a mobile telecommunications network | |
| FR3062013A1 (en) | METHODS AND DEVICES FOR VERIFYING THE VALIDITY OF A DIFFUSION DELEGATION OF CONTENTS DIGITS | |
| EP3430777B1 (en) | Method and system for dynamically managing communication pathways between routers depending on application requirement | |
| FR2979505A1 (en) | Method for inserting intermediate equipment in communication channel connecting e.g. smartphones, of voice over Internet protocol communication system, involves transmitting modified response message to user terminal | |
| WO2019102117A1 (en) | Method for propagating information relating to the bandwidth allocated to a user of an ip network | |
| EP3235217B1 (en) | Method for data exchange between web browsers, and routing device, terminal, computer program and storage medium therefor | |
| EP3646578B1 (en) | Method of media state synchronization | |
| FR3062765A1 (en) | MEDIA FLOW MANAGEMENT SYSTEM | |
| EP3050275B1 (en) | Enhanced protocol conversion in a telecommunications network for providing services having improved quality of service | |
| EP3391615B1 (en) | Method of communication between a calling terminal and a plurality of called terminals | |
| EP1437867B1 (en) | Signalling in controlled activ networks | |
| WO2004100492A1 (en) | Method and device for synchronisation of data streams | |
| WO2018002469A1 (en) | Method and device for managing a session for transmitting a video stream | |
| EP2801178B1 (en) | Dynamic method for determining a list of services in an sip network | |
| FR2968153A1 (en) | METHOD FOR FORMING LOOPS IN CALL RETURNS | |
| WO2009080989A1 (en) | Method of communication for managing communication sessions at the level of a domestic gateway |