Brevet FR2865595A1 — publié le 20050729

PROCEDE DE FILTRAGE DE PAQUETS DE FLUX MEDIA IP ECHANGES DANS UN RESEAU DE TELECOMMUNICATION DESCRIPTION DOMAINE TECHNIQUE L'invention se situe dans le domaine des télécommunications et concerne plus spécifiquement un procédé de filtrage de paquets de flux média IP échangés dans un réseau de télécommunication entre une terminaison source et une terminaison destinataire au cours d'une session conversationnelle décrite par le protocole de description de session SDP (pour Session Description Protocol en anglais) et signalée par le protocole d'ouverture de session SIP (pour Session Initialisation protocol en anglais). L'invention concerne également un dispositif destiné à mettre en oeuvre ce procédé. Rappelons que SIP est un protocole destiné à gérer la signalisation des appels dans un réseau IP et à établir des communications interactives multimédias entre deux terminaux reliés au réseau IP, et que SDP est un protocole textuel destiné à décrire des sessions multimédias en vue, par exemple, d'annoncer ces sessions, d'inviter à ces sessions ou de décrire tout autre opération visant à fournir à un usager les ressources nécessaires pour lui permettre d'avoir accès à des services de télécommunication. ÉTAT DE LA TECHNIQUE ANTÉRIEURE Lorsqu'un premier terminal se connecte à un 30 deuxième terminal au cours d'une session conversationnelle via un réseau IP, les paquets de données échangés entre les deux terminaux doivent être identifiés afin de réaliser des traitements sélectifs sur les flux média échangés. Généralement, ces paquets contiennent les en-têtes qui sont analysés par un élément réseau intermédiaire désigné dans la suite par l'expression ERI (Middlebox en anglais) et qui effectue notamment un filtrage des paquets échangés en fonction des paramètres suivants: - Adresse IPsource: représentant l'adresse IP de la terminaison source du flux média, Adresse I Pdestination: représentant l'adresse IP de la terminaison destinataire dudit flux, - Protocole: représentant le protocole de transport utilisé pour véhiculer le flux média, généralement ce protocole est l'UDP (Pour User Datagramm Protocol en anglais). - Portsource, destination: est un numéro associé à un service ou une application réseau. L'ERI (Middlebox) coopère avec le serveur d'une application logicielle ALG (Application Layer Gateway en anglais) destinée à examiner le trafic et à assister l'ERI dans la réalisation des filtres de contrôle du flux par exemple ou pour réaliser toute opération permettant à l'ERI de remplir sa fonction, notamment la modification des données du flux, le filtrage des flux etc... On connaît une première méthode de l'art antérieur pour permettre à une Middlebox de filtrer les paquets IP du flux médias lorsque ce flux média est signalé par les protocoles SIP/SDP pour (Session Initialisation protocol/ Session Description Protocol, en anglais). Cette méthode consiste à étendre le protocole SDP pour permettre à l'installation cliente de signaler le couple (Adresse IPsource, POrtsource) desdits paquets. Un exemple d'extension du protocole SDP rendant possible la mise en oeuvre de cette méthode est défini dans http://www.ietf.org/internetdrafts/draft-ietf-mmusic-sdp-srcfilter-02.txt. Une deuxième méthode connue consiste à étendre le protocole SDP ou le protocole SIP et le protocole permettant de transporter les flux médias, exemple RTP (pour Real Time Transport Protocol en anglais), de façon à ce que les installations clientes puissent inclure un jeton dans la signalisation d'appel. L'ALG transmet ce jeton à l'ERI devant recevoir les flux médias, ce dernier inclut dans ses critères de filtrage la vérification du jeton reçu. Un exemple de mise en oeuvre de cette méthode est décrit dans http://wwwietf.orq/rfc/rfc3313.txt. Un inconvénient des méthodes décrites ci-dessus provient du fait qu'elles sont limitées uniquement aux installations clientes supportant une extension du protocole SDP. Une troisième méthode de l'art antérieur pour permettre à une Middlebox de filtrer les paquets IP du flux médias consiste effectuer un filtrage en deux phases: Dans la première phase, l'ALG positionne dans la Middlebox des filtres constitués par les 2865595 4 informations (Adresse IPdestinationr Portdestinationr Protocole) qui sont présentes dans le corps SDP d'un message SIP. Ces filtres correspondent aux adresses de réception des flux médias indiquées dans le corps SDP du message SIP reçu par l'ERI. Dans la deuxième phase, lorsque l'ERI (Middlebox) détecte les premiers paquets correspondant à un filtre positionné, elle complète ce filtre avec les informations (Adresse IPsource, Portsource) présentées par les paquets reçus. Un inconvénient de cette méthode provient du fait qu'elle est susceptible de présenter des dysfonctionnements ou des risques de détournement de service si les premiers paquets correspondant au filtre positionné par l'ALG dans la Middlebox sont envoyés depuis une autre adresse IP que celle utilisée par l'installation cliente devant émettre les flux médias. Le but de l'invention est de pallier les inconvénients de l'art antérieur décrits ci-dessus. EXPOSÉ DE L'INVENTION L'invention préconise un procédé de filtrage de paquets de flux média IP échangés entre une terminaison source et une terminaison destinataire au cours d'une session conversationnelle décrite par le protocole de description de session SDP (pour Session Description Protocol) et signalée par le protocole d'ouverture de session SIP (pour Session Initialisation protocol) comportant les étapes suivantes: construire un filtre logique paramétrable 30 par des informations identifiant la terminaison source et la terminaison destinataire impliquées dans ladite session, - mémoriser ledit filtre logique, - et au cours de la phase d'initialisation de ladite session, compléter le filtre mémorisé par des paramètres échangés par lesdites terminaisons via la signalisation SIP. L'invention permet ainsi de limiter l'accès aux traitements spécifiques (exemple qualité de service (QoS) spécifique) offerts par un réseau uniquement aux flux de paquets IP échangés entre les points de terminaison de la session conversationnelle SIP/SDP. Préférentiellement, ledit filtre est paramétré par des données comprises dans une réponse SDP envoyée par la terminaison destinataire du flux média à la terminaison source dudit flux en réponse à une offre SDP envoyée par ladite terminaison source à ladite terminaison destinataire. Dans un mode préféré de réalisation de l'invention, les données de paramétrage du filtres logique comportent l'adresses IP de la source des paquets de flux, l'adresse IP destination, le port destination et le protocole de transport utilisé au cours de la phase d'initialisation de la session SIP. Selon le mode préféré de réalisation, ledit filtre logique est mémorisée dans un élément réseau intermédiaire de manière à bloquer la transmission du flux média entre la terminaison source à la terminaison destinataire si ledit filtre logique n'est pas paramétré avec l'adresses IP de la terminaison source, l'adresse IP de la terminaison destination, le port destination et le protocole de transport utilisé. L'invention concerne également un dispositif de filtrage de paquets de flux média IP échangés entre une terminaison source et une terminaison destinataire au cours d'une session conversationnelle décrite par le protocole de description de session SDP (pour Session Description Protocol) et signalée par le protocole d'ouverture de session SIP (pour Session Initialisation protocol). Ce dispositif comporte: - des moyens pour construire un filtre logique paramétrable par des informations identifiant les points de terminaison impliqués dans ladite session, - un élément réseau intermédiaire agencé entre ladite terminaison source à ladite terminaison destinataire destiné à mémoriser ledit filtre logique au cours de la phase d'initialisation de ladite session, - des moyens pour compléter le filtre mémorisé par des paramètres échangés par lesdites terminaisons via la signalisation SIP. BRÈVE DESCRIPTION DES DESSINS D'autres caractéristiques et avantages de l'invention ressortiront de la description qui va suivre, prise à titre d'exemple non limitatif, en référence aux figures annexées dans lesquelles: - la figure 1 illustre schématiquement le dispositif et les étapes de construction d'un filtre logique pour la terminaison source d'une offre SDP selon l'invention. - la figure 2 illustre schématiquement le dispositif et les étapes de construction d'un filtre logique pour la terminaison destinataire d'une offre SDP selon l'invention. EXPOSÉ DÉTAILLÉ DE MODES DE RÉALISATION PARTICULIERS La description qui suit concerne la mise en oeuvre du procédé selon l'invention au cours d'une session conversationnelle entre une terminaison source 2 et une terminaison destinataire 4 pour échanger un flux média à travers le réseau Internet 6 au cours d'une session de visiophonie par exemple. Un serveur intermédiaire 8 désigné par ALG pour (Application Level Gateways en anglais), héberge une application logicielle destinée à examiner et éventuellement modifier les paquets du flux média échangés entre la terminaison source 2 et la terminaison destinataire 4. Un élément réseau intermédiaire ERI 10, (appelé Middlebox en anglais), agencé également entre la terminaison source 2 et la terminaison destinataire 4, est destiné à identifier de façon univoque les paquets IP constituant les flux média. Le principe du procédé selon l'invention consiste à construire un filtre contenant les informations (Adresse IPsource Adresse IPdestinationr POrtdestinationr Protocole) lors de chaque échange d'offre/réponse SDP au cours d'une session SIP. L'information Adresse IPsource est déterminée à partir de la réponse SDP correspondant respectivement à l'offre 2865595 8 SDP à laquelle correspond le filtre (Adresse IPdestination r Portdestinationr Protocole). Ce filtre étant positionné dans l'ERI 10 par l'ALG 8. Lorsque l'ALG 8 reçoit les premiers paquets correspondant au filtre mémorisé, elle le complète avec le Portsource indiqué par les paquets reçus. Dans l'exemple de réalisation illustré par la figure 1, on désignera par ICA la terminaison source 2 et par ICB la terminaison destinataire 4. Dans ce cas, la terminaison émettrice de l'offre SDP est aussi réceptrice de la réponse SDP correspondante. A l'étape 12, ICA envoie un message SIP contenant une offre SDP. Pour chaque flux média n proposé dans l'offre SDP l'ALG 8 calcule à partir des informations figurant dans cette offre un filtre logique contenant les informations: (Adresse IPsource=*, Portsource=*, Adresse IPdestination=@IPICA r Portdestination = Port (ICA,Média n), Protocole = Protocole (ICA, Média n) A l'étape 14, l'ALG 8 émet le message SIP reçu vers ICB via le réseau Internet 6. A l'étape 16, ICB reçoit l'offre SDP et prépare une réponse SDP correspondante. A l'étape 18, ICB émet vers ICA un message SIP contenant la réponse SDP à l'offre émise par ICA. A l'étape 20 l'ALG 8 reçoit la réponse SDP destinée à ICA et complète les filtres calculés à l'étape 12 avec l'adresse de réception des flux médias de ICB contenus dans la réponse SDP. a. les filtres logiques correspondant aux 30 paquets IP devant être reçus par ICA sont calculés comme suit: (Adresse IPsource=@IPICB, Portsource=*, Adresse 2865595 9 IPdestination=@ IPICAr POrtdestination=POrt (ICAr Média n) r Protocole= Protocole(ICA,Média n)) b. Les filtres correspondant aux paquets IP devant être émis par ICA sont calculés comme suit: (Adresse IPsource=@IPICA, Portsource:, Adresse IPdestination=@IPICBr POrtdestination=POrt (ICB,Média n), Protocole = Protocole (ICB, Média n) ) A l'étape 22, l'ALG 8 positionne dans la l'ERI 10 les filtres calculés à l'étape 20 et, émet, à l'étape 24, la réponse SDP vers ICA. Une fois les filtres logiques complétés, ICB commence à émettre les paquets constituant les flux médias signalés par la session SIP en cours (étape 26), et lorsque l'ERI 10 reçoit les paquets émis par ICB (étape 28), elle applique les filtres en cours à ces paquets. Ainsi tant que l'étape 22 n'a pas eu lieu les paquets sont bloqués, une fois que l'étape 22 a eu lieu les paquets sont émis vers ICA (étape 30). A l'étape 32, ICA commence à émettre les paquets constituant les flux médias signalés par la session SIP en cours. L'ERI 10 reçoit les paquets émis par ICA et applique les filtres en cours à ces paquets. Ainsi tant que l'étape 22 n'a pas eu lieu les paquets sont bloqués, et une fois que l'étape 22 a eu lieu les paquets sont émis vers ICB (étape 34). A l'étape 36, ICB reçoit les paquets émis par ICA. La figure 2 illustre le cas de construction des filtres pour le récepteur d'une offre SDP. A l'étape 40, ICB envoie un message SIP contenant une offre SDP. Pour chaque flux média n 2865595 10 proposé dans l'offre SDP l'ALG 8 calcule à partir des informations figurant dans cette offre un filtre logique contenant les informations: (Adresse IPsource=*, Portsource=*, Adresse IPdestination=@IPICB r Portdestination=Port(ICB,Média n), Protocole=Protocole(ICB, Média n)) A l'étape 42, l'ALG 8 émet le message SIP reçu vers ICA. A l'étape 44, ICA émet un message SIP contenant la réponse SDP à l'offre émise par ICB. A réception de cette réponse, L'ALG 8 complète les filtres calculés à l'étape 42 avec l'adresse de réception des flux médias de ICA contenu dans la réponse SDP. a. les filtres logiques correspondant aux 15 paquets IP devant être reçus par ICB sont calculés comme suit: (Adresse IPsource=@IPICA, Portsource=*r Adresse IPdestination=@IPICBr Portdestination=POrt (ICBr Média n) r Protocole=Protocole (ICB,Média n)) b. Les filtres correspondant aux paquets IP devant être émis par ICB sont calculés comme suit: - (Adresse IPsource=@IPICBr Portsource=*, Adresse IPdestination=@IPICBr Portdestination=Port (ICB,Média n), Protocole=Protocole (ICA, Média n) ) A l'étape 46, l'ALG 8 positionne dans la l'ERI 10 les filtres calculés à l'étape 42 et, émet, à l'étape 48, la réponse SDP vers ICB. Une fois les filtres logiques complétés, ICA commence à émettre les paquets constituant les flux médias signalés par la session SIP en cours (étape 50), et lorsque l'ERI 10 reçoit les paquets émis par ICB, elle applique les filtres en cours à ces paquets. Ainsi tant que l'étape 46 n'a pas eu lieu les paquets sont bloqués, et une fois que l'étape 46 a eu lieu les paquets sont émis vers ICB (étape 30). A l'étape 52, ICB commence à émettre les paquets constituant les flux médias signalés par la session SIP en cours. L'ERI 10 reçoit les paquets émis par ICB et applique les filtres en cours à ces paquets. Ainsi tant que l'étape 46 n'a pas eu lieu les paquets sont bloqués, et une fois que l'étape 46 a eu lieu les paquets sont émis vers ICA (étape 56). REVENDICATIONS 1. Procédé de filtrage de paquets de flux média IP échangés dans un réseau de télécommunication (6) entre une terminaison source (2) et une terminaison destinataire (4) au cours d'une session conversationnelle décrite par le protocole de description de session SDP (pour Session Description Protocol) et signalée par le protocole d'ouverture de session SIP (pour Session Initialisation protocol), procédé caractérisé en ce qu'il comporte les étapes suivantes: - construire un filtre logique paramétrable par des informations identifiant la terminaison source (2) et la terminaison destinataire (4) impliquées dans ladite session, mémoriser ledit filtre logique, - et au cours de la phase d'initialisation de ladite session, compléter le filtre mémorisé par des paramètres échangés par lesdites terminaisons (2, 4) via la signalisation SIP. 2. Procédé selon la revendication 1, caractérisé en ce que ledit filtre est paramétré par des données comprises dans une réponse SDP envoyée par la terminaison destinataire (4) du flux média à la terminaison source (2) dudit flux en réponse à une offre SDP envoyée par ladite terminaison source (2) à ladite terminaison destinataire (4). 3. Procédé selon la revendication 2, caractérisé en ce que ledit filtre logique est mémorisée dans un élément réseau intermédiaire (10) de manière à bloquer la transmission du flux média de la terminaison source (2) vers la terminaison destinataire (4) si ledit filtre logique n'est pas paramétré avec l'adresses IP de la terminaison source, l'adresse IP de la terminaison destination, le port destination et le protocole de transport utilisé 4. Procédé selon la revendication 3, caractérisé en ce que les données de paramétrage du filtre logique comportent l'adresses IP de la source des paquets de flux, l'adresse IP destination, le port destination et le protocole de transport utilisé. 5. Dispositif de filtrage de paquets de flux média IP échangés entre une terminaison source (2) et une terminaison destinataire (4) au cours d'une session conversationnelle décrite par le protocole de description de session SDP (pour Session Description Protocol) et signalée par le protocole d'ouverture de session SIP (pour Session Initialisation protocol), dispositif caractérisé en ce qu'il comporte: - des moyens pour construire un filtre logique paramétrable par des informations identifiant les points de terminaison impliqués dans ladite session, - un élément réseau intermédiaire (10) agencé entre ladite terminaison source et ladite terminaison destinataire destiné à mémoriser ledit filtre logique au cours de la phase d'initialisation de ladite session, -, des moyens pour compléter le filtre mémorisé par des paramètres échangés par lesdites terminaisons via la signalisation SIP.