WO2017109437A1 - Procédé de détermination d'une application génératrice d'un flux ip - Google Patents

Procédé de détermination d'une application génératrice d'un flux ip Download PDF

Info

Publication number
WO2017109437A1
WO2017109437A1 PCT/FR2016/053664 FR2016053664W WO2017109437A1 WO 2017109437 A1 WO2017109437 A1 WO 2017109437A1 FR 2016053664 W FR2016053664 W FR 2016053664W WO 2017109437 A1 WO2017109437 A1 WO 2017109437A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal
stream
determination method
application
packet
Prior art date
Application number
PCT/FR2016/053664
Other languages
English (en)
Inventor
Abdesselem Kortebi
Zied AOUINI
Original Assignee
Orange
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Orange filed Critical Orange
Publication of WO2017109437A1 publication Critical patent/WO2017109437A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2408Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service

Definitions

  • the invention is in the field of Internet traffic management via a gateway between two networks, and more particularly the differentiated processing of Internet Protocol (IP) packet flows according to the application or type of application that generated the stream.
  • IP Internet Protocol
  • a gateway between two networks When packet flows go through a gateway between two networks, for example a local network and a network such as the Internet, it is desirable to manage these flows in a differentiated way because they do not all have the same importance for their end users .
  • This differentiated management makes it possible, for example, to guarantee an acceptable level of quality when the bandwidth is limited in one or the other of the networks. It also allows you to apply a parental control policy, to establish statistics, or to detect an anomaly. For the purposes of this differentiated management, what best distinguishes flows between them is the application that generated them.
  • a gateway between two networks generally does not have access to the identity of the flow-generating application because it is a device that does not have access to all layers of the OSI stack.
  • a gateway such as an ADSL or FTTH home gateway, for example, generally processes the packets at the network and transport layers of the OSI stack and can consult the packet headers of these layers only.
  • One way for a gateway between two networks to obtain information relating to the generating application is to use a statistical prediction technique, which may be based on supervised learning on known streams.
  • a statistical prediction technique which may be based on supervised learning on known streams.
  • Such a technique consists, during a preliminary learning phase, of measuring certain characteristic parameters of the behavior of the packets for each of the types of known flows, then, during a recognition phase during which an observed flow is not known, to measure these same parameters and to attribute to the observed flow a type of application, the one that is closest to it, based on distance or probability calculations.
  • the parameters used in such techniques are for example the minimum, average or maximum size of the packets, the minimum, average or maximum interval between two consecutive packets, etc.
  • One of the aims of the invention is to overcome these disadvantages of the state of the art.
  • the invention improves the situation by means of a method for determining an application class generating a packet stream transmitted or received by a terminal, the stream being identified on the basis of a consultation of a header of a packet of the flux at at least one of the layers less than or equal to the OSI layer 4, the method comprising the following steps: Obtaining information relating to the type of said terminal, called terminal information,
  • a stream is a set of packets having the same values in certain invariant fields of the header. These fields can be for example the IP addresses of origin and destination, the port numbers of the IPv4 transport protocol, or the "flow label" field in IPv6. This information is included in the header at layers 3 and 4 OSI. A stream can be identified by these values in association with a period of inactivity (timeout); a flow ends when no packet is observed during this idle interval.
  • the application class generating a stream is determined by devices that do not have easy access to the higher OSI layers of the streams of the stream, that is, the layers 5 to 7, relating to the connection, the session or the application.
  • DPI Deep Packet Inspection
  • the type of terminal transmitting or receiving a stream which, without being personal data, was not used as a feature to determine the application.
  • the terminals are more and more powerful, it is expected that they allow their user to benefit from any type of application.
  • the choice of the type of terminal depends mainly on the quality of experience felt by the user for a given application, on a given type of terminal. It is therefore not only a choice on the part of the user, but a subjective choice, in addition.
  • Substituting or associating such information, which is subjective in nature, with metrics related to the objective behavior of the packets of the stream, is an approach going against the prejudices of the skilled person, because nothing seems to indicate that the type of terminal is a discriminating characteristic for the determination of an application. Contrary to these prejudices, the method according to the invention uses information relating to the type of terminal.
  • application class can be interpreted at different levels of granularity. It can be an application class according to the OSI model, such as http, SSH, DNS, RTP, etc. It can be an application class of the social network type, file download, video streaming, peer-to-peer, etc. It can be a class related to the application layer of the OSI stack, such as Facebook, Viper, Instagram, WhatsApp, etc. In the latter case the granularity is the finest, and "application class" is equivalent to "application”.
  • the determination method comprises a step of obtaining an IP address of the terminal from a header of a packet of the stream, and where the terminal information is obtained by consultation of a table of correspondence between IP addresses and types of terminals.
  • An IP address of the terminal, to identify it, is included in the network layer header of each packet of the stream, the terminal is source or recipient of the stream.
  • this equipment may have recorded the correspondence between this IP address and information on the type of the terminal, obtained by the equipment when the device is connected. terminal connection.
  • This is the case, for example, of a so-called home gateway, between a local network, or LAN (Local Access Network, or a local access network, in English) and a broadband access network giving access to the Internet, for example an ADSL, FTTH or other network.
  • the gateway generally maintains a list of the terminals connected to it, in order to allow the management of the local network by the user who is subscribed to the broadband access service. This list indicates for each terminal a type, which may have been entered manually by the subscriber, or automatically by the gateway.
  • the determination method comprises a step of obtaining a MAC address of the terminal from a header of a packet of the stream, and where the terminal information is obtained by consultation of a table of correspondence between MAC addresses and types of terminals.
  • One way to determine the type of terminal is using the MAC address of the terminal. Some terminal manufacturers make available on the Internet MAC address ranges corresponding to the different terminal models they manufacture.
  • the determination method comprises a step of obtaining a DHCP request trace sent by the terminal, and where the terminal information is obtained by consulting a correspondence table between traces of DHCP requests and terminal types.
  • DHCP Dynamic Host Configuration Protocol
  • the terminal may have to issue a so-called Dynamic Host Configuration Protocol (DHCP) request to be assigned an IP address when connecting to a network through the gateway.
  • DHCP Dynamic Host Configuration Protocol
  • This DHCP request can use different options depending on the type of OS (operating system) installed on the terminal, thus constituting a trace of the request to identify the specific OS.
  • OS operating system
  • the OSs installed on the terminals are specific to the types of terminals, it is thus possible to identify at least one type for the terminal, according to its DHCP request trace.
  • Other information from the DHCP request trace can also be used to determine the type of terminal, such as the name of the terminal (host name) that is either given by the manufacturer or modified by the user.
  • the determination method comprises a step of obtaining the content of a "User Agent” field of an HTTP request sent by the terminal, and where the terminal information is obtained by consultation of a lookup table between "User Agent” field contents of HTTP requests and types of terminals.
  • One more way to determine the type of terminal is using the http header of a packet of an http request issued by the terminal. If the terminal has issued a request Hypertext Transfer Protocol (http), it is possible to determine for example the OS installed on the terminal, by examining the chap "User Agent" of the request. Depending on the OS, as well as for the trace of the DHCP request, it is thus possible to identify at least one type for the terminal.
  • http Hypertext Transfer Protocol
  • the determining method further comprises a step of obtaining characteristics relating to packets of the stream, called transport characteristics, and wherein the step of determining the class of application is performed in function of terminal information and transport characteristics.
  • the terminal information may not be sufficient to determine with certainty the class of application. In this case, adding packet-related features improves the efficiency of the determination step.
  • the transport characteristics are obtained on the basis of a predetermined number of consecutive packets of the stream.
  • the determination method may need to be applied during the flow, or it may wait for the flow to complete.
  • the transport characteristics comprise at least one value of a field of a header of at least one of the layers less than or equal to the OSI layer 4.
  • the packet headers of the first 4 OSI layers contain useful information for identifying the application class, such as the size of a packet.
  • the transport characteristics comprise at least one delay measurement between two packets.
  • the temporal characteristics of the packets of a stream such as the delay between two packets, whether in the same direction or in opposite directions, constitute useful information for the identification of the class of application.
  • the transport characteristics comprise the number of packets or the time elapsed between the first and the last packet of the stream.
  • the characteristics relating to the stream itself such as the total number of packets, or the total duration of the stream, are useful information for identifying the class of application. However, getting them requires waiting for the flow to complete.
  • the determining step uses a statistical model established in advance and based on a learning application classes.
  • a statistical model is established in advance, by equipment that may be different from that implementing the determination method.
  • This model is established by an apprenticeship, supervised or not, which consists of modeling, for each class of known application, probabilities of observation of certain parameter values, on the basis of samples of values for which the class application is known.
  • These parameters are the terminal information and, if appropriate, the transport characteristics.
  • Statistical models are the basis of different classification techniques, depending on whether the learning is supervised or not. If the learning is supervised, known techniques are the decision tree, the Bayesian na ⁇ ve classification, the neural network, the k nearest neighbors method, or the support vector machine.
  • the most important parameter (s) of the statistical model are used at the root of the tree, then we navigate in the branches of the tree according to the values of the tree. less and less discriminating parameters, until reaching a leaf of the tree, which gives the most likely application class for the values of the parameters obtained. The determination is thus very fast.
  • pattern based clustering Another statistical technique that does not require supervised learning, known in English as "pattern based clustering", consists in automatically grouping previously available samples in groups of samples, which are not previously determined, according to the similarity of the samples. their characteristics, and to assign one of the groups thus formed to a new sample.
  • the determination method according to the invention can be encompassed in a flow processing method, further comprising a step of applying to the flow of a selected processing rule according to the determined application class.
  • this treatment may for example be a higher or lower priority of the flow relative to others.
  • the invention also relates to a device for determining an application class generating a packet stream transmitted or received by a terminal, the stream being identified on the basis of a consultation of a header of a packet of the packet.
  • flux at least one of the layers less than or equal to the OSI layer 4, the method comprising a processor adapted to and configured to:
  • terminal information information relating to the type of said terminal, called terminal information, • determine the class of application at least according to the terminal information.
  • Such a device implements the steps of the determination method such as that just described, in all its embodiments.
  • the invention also relates to a home gateway comprising a determination device such as that just described.
  • the invention can be implemented in a home gateway. Indeed, such a gateway has more easily access to certain information to obtain the type of terminals that are connected to its local network, compared to equipment located further upstream in the network.
  • the invention also relates to a computer program comprising instructions for implementing the steps of the determination method which has just been described, when this program is executed by a processor.
  • 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 other form desirable shape.
  • the invention finally relates to an information carrier readable by a home gateway, and comprising instructions of a computer program as mentioned above.
  • the information carrier may be any entity or device capable of storing the program.
  • the medium may comprise storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a magnetic recording medium, for example a floppy disk or a disk. hard. 4. Presentation of the figures
  • FIG. 1 shows an exemplary implementation of the steps of the method of determining an application class according to a particular embodiment of the invention
  • FIG. 2 shows an exemplary structure of a device for determining an application class, according to one aspect of the invention.
  • the determination method is implemented by a home gateway.
  • the role of the process is to determine an application class that generated a stream from an observation of this stream when it crosses the residential gateway.
  • the information class can then be used for the management of this stream by the gateway.
  • the gateway allows the establishment of communication sessions between one side, one or more terminals of a LAN supervised by the gateway, and secondly one or more network terminal elements, such as servers and servers. application on the Internet, or terminals of other local networks.
  • Other intermediate networks may be between the gateway and the Internet or these other local networks, such as a broadband access network for example, but for the purposes of the invention they are seen as constituting a single network with the Internet or other local networks.
  • a stream traversing the gateway in one way or the other, is identified by virtue of the following information obtained at the level of the network headers and transport of each of the packets of the stream: source IP address, destination IP address, protocol, source port number, destination port number.
  • the gateway sequentially performs this identification for all the packets passing through it, in order to clearly distinguish the flows between them.
  • This stream identification step is performed for all packets traversing the gateway.
  • the direction of crossing of the gateway is recognized using the same information. Indeed, the packets of each of the two directions of the same stream can also be mixed. It may be desirable to identify the flow generating application classes separately for each of the two directions, to the terminal, or from the terminal, since the flow management by the gateway may be different depending on the direction of these flows. From a bidirectional flow, that is to say whose two directions are not distinguished, it is easy to identify each direction using the addresses or ports source and destination, which are simply permuted according to meaning. In this case, the gateway flow table has a separate entry for each observed direction of the same stream.
  • terminal information information relating to the type of terminal having generated the identified flow, or to which is intended the identified flow, according to the direction of the flow, information called "terminal information", is obtained from a terminal table stored on the home gateway.
  • This table contains the correspondence between the IP address of the terminal and its type, for example according to 5 types: "PC”, “tablet”, “smartphone”, “TV decoder”, and “other”.
  • This table can be filled when the terminal obtains its IP address via the DHCP server embedded on the home gateway using a technique known as DHCP "finger printing" (DHCP request traces), which allows to enter the type in the DHCP options.
  • transport characteristics characteristics relating to packets of the stream, called transport characteristics, are obtained as follows: when a new stream is detected, that is to say when in the identification step E1 or E2, the flow is still absent from the flow table, additional parameters are measured or read, recorded, and associated with the identified flow, as transport characteristics.
  • these measurements can be performed on the first 4 packets of the stream only: packet size ("Total Length" field of the IPv4 header, or "Payload Length” of the IPv6 header ), delays between packets in the same direction, delays between packets in all directions, destination port number, and protocol, these last 2 parameters remaining identical for the 4 packets and also being part of the quintuplet used for the identification of the stream.
  • first 4 packets are only one possibility of implementation of the invention among others
  • the first packet or packets of a stream are often so-called signaling packets, containing no so-called “useful” data or "applications.” It may be interesting to take into account more than 4 packets, and / or to ignore the first or the first 2 or 3 packets.
  • a classifier that is to say say terminal information, and if step E4 has been performed, the transport characteristics.
  • This classifier for example embedded on the home gateway, carries out the course of a decision tree in order to determine the class of application corresponding best to the information obtained. For example, at the root of the tree, the terminal type is examined. If it's "PC", one of the top-level branches is selected. In this branch, it is the size of the first packet that is examined. If it is greater than 1000 bytes, one of the second-level branches is selected, where the delay between the first two packets is examined. If this time is less than 100ms, there is no third-level branch and it is a leaf of the tree that is selected, indicating that the most likely application class is "streaming video”.
  • Such a decision tree is entirely shaped by the data that was used during a learning process. This process is carried out beforehand and independently of the determination method, and independently of the gateway.
  • a known learning algorithm such as C5 (see http://rulequest.com/see5- info.html) is based on a list of flows whose application class is known, with their parameters corresponding to those used by the determination method, ie the type of terminal and the transport characteristics.
  • the decision tree thus generated will be all the more precise as the training data are numerous and recent. It is therefore advisable to update the learning process regularly to take account of changing traffic patterns.
  • a particular treatment is applied to the stream by the gateway, specially adapted to the class of application.
  • a parental control policy local to the gateway and predetermined, is applied, where the time of day is checked, and the flow allowed only during the time slot between 8:00 and 20:00 for example, the flow being blocked by the gateway outside this time slot.
  • the routing device 100 implements the determination method of which various embodiments have just been described.
  • Such a device 100 can be implemented for example in a home gateway capable of passing packets between a local network and the Internet.
  • the device 100 comprises a processing unit 130, equipped for example with a microprocessor ⁇ , and driven by a computer program 1 10, stored in a memory 120 and implementing the determination method according to the invention .
  • the code instructions of the computer program 1 10 are for example loaded into a RAM memory, before being executed by the processor of the processing unit 130.
  • Such a device 100 comprises:
  • a obtaining module 131 able to obtain information relating to the type of said terminal, called terminal information,
  • a flow table 132 able to store current stream identifiers
  • a determination module 133 able to determine the class of application at least as a function of the terminal information.
  • such a device 100 may also include:
  • a terminal table 134 able to store correspondences between IP addresses and types of terminals
  • a obtaining module 135, capable of obtaining a MAC address of the terminal, and remotely consulting a correspondence table between MAC address and terminal types,
  • a obtaining module 136 able to obtain a DHCP request trace sent by the terminal, and to remotely consult a correspondence table between DHCP request traces and terminal types,
  • a obtaining module 137 able to obtain a content of a "User Agent” field of an HTTP request sent by the terminal, and to remotely consult a table of correspondence between contents of a "User Agent” field and types of terminals,
  • a obtaining module 138 able to obtain characteristics relating to packets of the stream, called transport characteristics.
  • the modules described in connection with FIG. 2 may be hardware or software modules.
  • FIG. 2 illustrates only one particular way, among several possible, of carrying out the method detailed above, in relation with FIG. 1. Indeed, the technique of the invention is carried out indifferently on a reprogrammable calculation machine (a PC computer, a DSP processor or a microcontroller) executing a program comprising a sequence of instructions, or on a dedicated computing machine (for example a set of logical gates such as an FPGA or an ASIC, or any other hardware module).
  • a reprogrammable calculation machine a PC computer, a DSP processor or a microcontroller
  • a program comprising a sequence of instructions
  • a dedicated computing machine for example a set of logical gates such as an FPGA or an ASIC, or any other hardware module.
  • the corresponding program (that is to say the sequence of instructions) can be stored in a removable storage medium (such as for example a diskette, a CD-ROM, a DVD-ROM or a USB key, SD or micro SD) or not, this storage medium is readable partially or completely by a computer or a processor.
  • a removable storage medium such as for example a diskette, a CD-ROM, a DVD-ROM or a USB key, SD or micro SD

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

L'invention concerne un procédé de détermination d'une classe d'application génératrice d'un flux de paquets émis ou reçu par un terminal, le flux étant identifié sur la base d'une consultation d'un entête d'un paquet du flux au niveau d'au moins une des couches inférieures ou égales à la couche 4 OSI, le procédé comprenant les étapes suivantes : obtention d'une information relative au type dudit terminal, dite information terminal, détermination de la classe d'application au moins en fonction de l'information terminal.

Description

Procédé de détermination d'une application génératrice d'un flux IP
1. Domaine de l'invention La demande d'invention se situe dans le domaine de la gestion du trafic Internet par une passerelle entre deux réseaux, et plus particulièrement le traitement différencié de flux de paquets IP (Internet Protocol, ou protocole Internet) selon l'application ou le type d'application ayant généré le flux. 2. Etat de la technique antérieure
Lorsque des flux de paquets passent par une passerelle entre deux réseaux, par exemple un réseau local et un réseau tel qu'Internet, il est souhaitable de gérer ces flux de façon différenciée car ils n'ont pas tous la même importance pour leurs utilisateurs finaux. Cette gestion différenciée permet, par exemple, de garantir un niveau de qualité acceptable lorsque la bande passante est limitée dans l'un ou l'autre des réseaux. Elle permet aussi d'appliquer une politique de contrôle parental, d'établir des statistiques, ou de détecter une anomalie. Pour les besoins de cette gestion différenciée, ce qui distingue le mieux les flux entre eux est l'application qui les a générés. Une passerelle entre deux réseaux n'a en général pas accès à l'identité de l'application génératrice de flux, car c'est un équipement qui n'a pas accès à toutes les couches de la pile OSI.
En effet, une passerelle telle qu'une passerelle domestique ADSL ou FTTH par exemple, traite généralement les paquets au niveau des couches réseau et transport de la pile OSI et peut consulter les entêtes de paquets de ces couches uniquement.
Une manière pour une passerelle entre deux réseaux d'obtenir une information relative à l'application génératrice est d'utiliser une technique de prédiction statistique, qui peut être basée sur un apprentissage supervisé sur des flux connus. Une telle technique consiste, lors d'une phase préalable d'apprentissage, à mesurer certains paramètres caractéristiques du comportement des paquets pour chacun des types de flux connus, puis, lors d'une phase de reconnaissance lors de laquelle un flux observé n'est pas connu, de mesurer ces mêmes paramètres et d'attribuer au flux observé un type d'application, celui qui lui est le plus proche, sur la base de calculs de distance ou de probabilités.
Les paramètres utilisés dans de telles techniques sont par exemple la taille minimale, moyenne ou maximale des paquets, l'intervalle minimal, moyen ou maximal entre deux paquets consécutifs, etc.
Moore et al., dans leur publication de 2005 "Discriminators for use in flow-based classification", Queen Mary and Westfield Collège, Dept. of Computer Science, ont établi une liste de 249 paramètres caractérisant un flux de paquets, sachant qu'un flux est identifié par le biais des 5 paramètres classiques présents dans chaque paquet, que sont : le protocole utilisé, l'adresse IP source, l'adresse IP destination, le port source et le port destination.
L'efficacité de cette technique, incertaine car basée sur des probabilités, est proportionnelle à la qualité du corpus de données d'apprentissage utilisées lors de la phase d'apprentissage.
Les applications générant le trafic de paquets IP entre clients et serveurs sur les réseaux sont de plus en plus nombreuses et variées et il est devenu difficile de garantir l'efficacité de cette technique d'apprentissage supervisé.
Un des buts de l'invention est de remédier à ces inconvénients de l'état de la technique.
3. Exposé de l'invention
L'invention vient améliorer la situation à l'aide d'un procédé de détermination d'une classe d'application génératrice d'un flux de paquets émis ou reçu par un terminal, le flux étant identifié sur la base d'une consultation d'un entête d'un paquet du flux au niveau d'au moins une des couches inférieures ou égales à la couche 4 OSI, le procédé comprenant les étapes suivantes : • obtention d'une information relative au type dudit terminal, dite information terminal,
• détermination de la classe d'application au moins en fonction de l'information terminal.
Dans le cadre de la présente invention, un flux est un ensemble de paquets ayant les mêmes valeurs dans certains champs invariants de l'entête. Ces champs peuvent être par exemple les adresses IP d'origine et de destination, les numéros de ports du protocole de transport en IPv4, ou le champ "flow label" en IPv6. Ces informations sont comprises dans l'entête au niveau des couches 3 et 4 OSI. Un flux peut être identifié par ces valeurs en association avec une durée d'inactivité (temporisation) ; un flux se termine lorsqu'aucun paquet n'est observé pendant cet intervalle d'inactivité.
Selon les techniques antérieures d'apprentissage supervisé, la classe d'application génératrice d'un flux est déterminée par des équipements n'ayant pas facilement accès aux couches OSI supérieures des paquets du flux, c'est-à-dire les couches 5 à 7, relatives à la connexion, la session ou l'application. Seule la technique de DPI (Deep Packet Inspection, inspection approfondie de paquet, en anglais) permettrait d'accéder à des informations relatives à ces couches, et pourrait faciliter la détermination de la classe d'application ayant généré le flux, mais dans la plupart des cas cet accès n'est pas permis, pour des raisons soit techniques, soit légales et relatives à la protection des données personnelles.
Il existe une information, le type de terminal émettant ou recevant un flux, qui, sans être une donnée personnelle, n'a pas été utilisée comme caractéristique pour déterminer l'application. Les terminaux étant de plus en plus puissants, il est attendu qu'ils permettent à leur utilisateur de bénéficier de n'importe quelle type d'application. De plus, le choix du type de terminal dépend principalement de la qualité d'expérience ressentie par l'utilisateur pour une application donnée, sur un type de terminal donné. C'est donc non seulement un choix de la part de l'utilisateur, mais un choix subjectif, de surcroit. Substituer ou associer une telle information, qui est de nature subjective, à des métriques liées au comportement objectif des paquets du flux, est une approche allant à rencontre des préjugés de l'homme de métier, car rien ne semble indiquer que le type de terminal est une caractéristique discriminante pour la détermination d'une application. Contrairement à ces préjugés, le procédé selon l'invention utilise une information relative au type de terminal.
Dans la suite de ce document, le terme "classe d'application" peut être interprété à différents niveaux de granularité. Ce peut être une classe d'application selon le modèle OSI, comme http, SSH, DNS, RTP, etc. Ce peut être une classe d'application du type réseau social, téléchargement de fichier, streaming vidéo, peer- to-peer, etc. Ce peut être une classe liée à la couche application de la pile OSI, comme Facebook, Viper, Instagram, WhatsApp, etc. Dans ce dernier cas la granularité est la plus fine, et "classe d'application" est équivalent à "application".
De même, différent niveaux de granularité peuvent s'appliquer au terme "type de terminal". Par exemple, différents types de terminaux sont : terminal mobile ("smartphone" ou tablette), ordinateur fixe ("desktop"), console de jeux, décodeur TV ("STB"), TV connectée, etc., le niveau le plus fin étant atteint si la marque et le modèle de terminal est précisé (par exemple "iPhone 5s"). Selon un aspect de l'invention, le procédé de détermination comprend une étape d'obtention d'une adresse IP du terminal à partir d'un entête d'un paquet du flux, et où l'information terminal est obtenue par consultation d'une table de correspondance entre des adresses IP et des types de terminaux.
Une adresse IP du terminal, permettant de l'identifier, est comprise dans l'entête de couche réseau de chacun des paquets du flux, que le terminal soit source ou destinataire du flux. Lorsque le procédé de détermination est mis en œuvre par un équipement de réseau auquel s'est connecté le terminal, cet équipement peut avoir enregistré la correspondance entre cette adresse IP et une information relative au type du terminal, obtenue par l'équipement lors de la connexion du terminal. C'est le cas par exemple d'une passerelle dite domestique, entre un réseau local, ou LAN (Local Access Network, ou réseau d'accès local, en anglais) et un réseau d'accès large bande donnant accès à l'Internet, par exemple un réseau ADSL, FTTH ou autre. La passerelle tient généralement à jour une liste des terminaux qui lui sont connectés, afin de permettre la gestion du réseau local par l'utilisateur qui est abonné au service d'accès large bande. Cette liste indique pour chaque terminal un type, qui peut avoir été renseigné manuellement par l'abonné, ou automatiquement par la passerelle.
Selon un aspect de l'invention, le procédé de détermination comprend une étape d'obtention d'une adresse MAC du terminal à partir d'un entête d'un paquet du flux, et où l'information terminal est obtenue par consultation d'une table de correspondance entre des adresses MAC et des types de terminaux.
Une façon de déterminer le type de terminal est à l'aide de l'adresse MAC du terminal. Certains fabricants de terminaux rendent disponibles sur Internet des plages d'adresses MAC correspondant aux différents modèles de terminaux qu'ils fabriquent.
Selon un aspect de l'invention, le procédé de détermination comprend une étape d'obtention d'une trace de requête DHCP émise par le terminal, et où l'information terminal est obtenue par consultation d'une table de correspondance entre des traces de requêtes DHCP et des types de terminaux.
Une autre façon de déterminer le type de terminal est à l'aide de la trace de la requête DHCP (DHCP finger printing, en anglais, voir http://www.fingerbank.org/). Le terminal peut avoir à émettre une requête dite DHCP (Dynamic Host Configuration Protocol, ou protocole de configuration dynamique de machine hôte, en anglais) pour se voir attribuer une adresse IP lors de sa connexion à un réseau au travers de la passerelle. Cette requête DHCP peut utiliser différentes options selon le type d'OS (Operating System, ou système d'opération, en anglais) installé sur le terminal, constituant ainsi une trace de la requête permettant d'identifier précisément l'OS. Comme les OS installés sur les terminaux sont spécifiques aux types de terminaux, il est ainsi possible d'identifier au moins un type pour le terminal, en fonction de sa trace de requête DHCP. D'autres informations de la trace de la requête DHCP peuvent aussi être utilisées pour déterminer le type de terminal, telles que le nom du terminal (host name, en anglais) qui est soit donné par le fabricant, soit modifié par l'utilisateur.
Selon un aspect de l'invention, le procédé de détermination comprend une étape d'obtention du contenu d'un champ "User Agent" d'une requête HTTP émise par le terminal, et où l'information terminal est obtenue par consultation d'une table de correspondance entre des contenus de champ "User Agent" de requêtes HTTP et des types de terminaux.
Encore une façon de déterminer le type de terminal est à l'aide de l'entête http d'un paquet d'une requête http émise par le terminal. Si le terminal a émis une requête http (Hypertext Transfer Protocol, ou protocole de transfert hypertexte, en anglais), il est possible de déterminer par exemple l'OS installé sur le terminal, en examinant le chap "User Agent" de la requête. En fonction de l'OS, de même que pour la trace de la requête DHCP, il est ainsi possible d'identifier au moins un type pour le terminal.
Selon un aspect de l'invention, le procédé de détermination comprend en outre une étape d'obtention de caractéristiques relatives à des paquets du flux, dites caractéristiques de transport, et où l'étape de détermination de la classe d'application est effectuée en fonction de l'information terminal et des caractéristiques de transport.
L'information terminal peut ne pas être suffisante pour déterminer avec certitude la classe d'application. Dans ce cas, y ajouter des caractéristiques relatives aux paquets améliore l'efficacité de l'étape de détermination.
Selon un aspect de l'invention, les caractéristiques de transport sont obtenues sur la base d'un nombre prédéterminé de paquets consécutifs du flux.
Selon le traitement final auquel est destinée l'information relative à la classe d'application, le procédé de détermination peut devoir être appliqué en cours de flux, ou il peut attendre que le flux soit terminé.
Lorsqu'il est appliqué en cours de flux, il est utile d'obtenir les caractéristiques de transport sur un nombre limité de paquets, parmi les premiers du flux de préférence, afin de pouvoir déterminer le plus rapidement possible la classe d'application pour le flux.
Selon un aspect de l'invention, les caractéristiques de transport comprennent au moins une valeur d'un champ d'un entête d'au moins une des couches inférieures ou égale à la couche 4 OSI.
Les entêtes de paquet des 4 premières couches OSI contiennent des informations utiles pour l'identification de la classe d'application, telle que la taille d'un paquet.
Selon un aspect de l'invention, les caractéristiques de transport comprennent au moins une mesure de délai entre deux paquets.
Les caractéristiques temporelles des paquets d'un flux, telles que le délai entre deux paquets, qu'ils soient dans une même direction ou dans des directions opposées, constituent des informations utiles pour l'identification de la classe d'application.
Selon un aspect de l'invention, les caractéristiques de transport comprennent le nombre de paquets ou la durée écoulée entre le premier et le dernier paquet du flux.
Les caractéristiques relatives au flux lui-même, telles que le nombre total de paquets, ou la durée totale du flux, constituent des informations utiles pour l'identification de la classe d'application. Les obtenir requiert cependant d'attendre que le flux se termine.
Selon un aspect de l'invention, l'étape de détermination utilise un modèle statistique établi à l'avance et basé sur un apprentissage des classes d'application.
Un modèle statistique est établi à l'avance, par un équipement qui peut être différent de celui mettant en œuvre le procédé de détermination. Ce modèle est établi par un apprentissage, supervisé ou non, qui consiste à modéliser, pour chaque classe d'application connue, des probabilités d'observation de certaines valeurs de paramètres, sur la base d'échantillons de valeurs pour lesquelles la classe d'application est connue. Ces paramètres, en l'occurrence, sont l'information terminal, et, le cas échéant, les caractéristiques de transport.
Les modèles statistiques sont à la base de différentes techniques de classification, selon que l'apprentissage est supervisé ou non. Si l'apprentissage est supervisé, des techniques connues sont l'arbre de décisions, la classification naïve Bayesienne, le réseau de neurones, la méthode des k plus proches voisins, ou la machine à vecteur de support.
En prenant, par exemple, la technique de l'arbre de décision, le ou les paramètres les plus déterminants du modèle statistique sont utilisés à la racine de l'arbre, puis on navigue dans les branches de l'arbre en fonction des valeurs de paramètres de moins en moins discriminants, jusqu'à atteindre une feuille de l'arbre, qui donne la classe d'application la plus probable pour les valeurs des paramètres obtenus. La détermination est ainsi très rapide.
Une autre technique statistique ne nécessitant pas d'apprentissage supervisé, connue en anglais sous l'appellation "pattern based clustering", consiste à regrouper automatiquement des échantillons préalablement disponibles dans des groupes d'échantillons, non préalablement déterminés, en fonction de la similarité de leurs caractéristiques, et à attribuer un des groupes ainsi formés à un nouvel échantillon. Le procédé de détermination selon l'invention peut être englobé dans un procédé de traitement du flux, comprenant en outre une étape d'application au flux d'une règle de traitement sélectionnée en fonction de la classe d'application déterminée.
Si la classe doit être déterminée en cours de flux, de préférence à son début, ce traitement peut par exemple être une priorisation plus ou moins élevée du flux par rapport à d'autres.
Si la classe peut être déterminée à la fin du flux, ce traitement peut par exemple être une mémorisation de données particulières relatives au flux, pour un usage ultérieur, par exemple une facturation. Les différents aspects du procédé de détermination qui viennent d'être décrits peuvent être mis en œuvre indépendamment les uns des autres, ou en combinaison les uns avec les autres. L'invention concerne aussi un dispositif de détermination d'une classe d'application génératrice d'un flux de paquets émis ou reçu par un terminal, le flux étant identifié sur la base d'une consultation d'un entête d'un paquet du flux au niveau d'au moins une des couches inférieures ou égales à la couche 4 OSI, le procédé comprenant un processeur apte à et configuré pour :
· obtenir une information relative au type dudit terminal, dite information terminal, • déterminer la classe d'application au moins en fonction de l'information terminal.
Un tel dispositif met en œuvre les étapes du procédé de détermination tel que celui qui vient d'être décrit, dans tous ses modes de réalisation. L'invention concerne encore une passerelle domestique comprenant un dispositif de détermination tel que celui qui vient d'être décrit.
Avantageusement, l'invention peut être mise en œuvre dans une passerelle domestique. En effet, une telle passerelle a plus facilement accès à certaines informations permettant d'obtenir le type des terminaux qui sont connectés à son réseau local, comparativement à des équipements situés plus en amont dans le réseau.
L'invention concerne aussi un programme d'ordinateur comprenant des instructions pour la mise en œuvre des étapes du procédé de détermination qui vient d'être décrit, lorsque ce programme est exécuté par un processeur.
Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de 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 enfin un support d'informations lisible par une passerelle domestique, et comportant des instructions d'un programme d'ordinateur tel que mentionné ci-dessus.
Le 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 (floppy dise) ou un disque dur. 4. Présentation des figures
D'autre avantages et caractéristiques de l'invention apparaîtront plus clairement à la lecture de la description suivante de modes de réalisation particuliers de l'invention, donnés à titre de simples exemples illustratifs et non limitatifs, et des dessins annexés, parmi lesquels :
- la figure 1 présente un exemple de mise en œuvre des étapes du procédé de détermination d'une classe d'application selon un mode de réalisation particulier de l'invention,
- la figure 2 présente un exemple de structure d'un dispositif de détermination d'une classe d'application, selon un aspect de l'invention.
5. Description détaillée d'au moins un mode de réalisation de l'invention
Dans la suite de la description, on présente un exemple de mode de réalisation de l'invention se basant sur une passerelle domestique, sur des traces de requêtes DHCP et sur un arbre de décision, mais l'invention s'applique également à d'autres configurations.
Selon un mode de réalisation particulier de l'invention, le procédé de détermination est mis en œuvre par une passerelle domestique. Le rôle du procédé, rappelons-le, est de déterminer une classe d'application ayant généré un flux à partir d'une observation de ce flux lorsqu'il traverse la passerelle résidentielle. La classe d'information peut ensuite être utilisée pour la gestion de ce flux par la passerelle.
La passerelle permet l'établissement de sessions de communication entre d'un côté, un ou plusieurs terminaux d'un réseau local supervisé par la passerelle, et d'autre part, un ou plusieurs éléments terminaux de réseau, tel que des serveurs d'application sur Internet, ou des terminaux d'autres réseaux locaux. D'autres réseaux intermédiaires peuvent se trouver entre la passerelle et l'Internet ou ces autres réseau locaux, tel qu'un réseau d'accès large-bande par exemple, mais pour les besoins de l'invention ils sont vus comme constituant un seul réseau avec le réseau Internet ou les autres réseaux locaux.
Lors d'une étape E1 d'identification, un flux traversant la passerelle, dans un sens ou dans l'autre, est identifié grâce aux informations suivantes obtenues au niveau des entêtes réseau et transport de chacun des paquets du flux : adresse IP source, adresse IP destination, protocole, numéro de port source, numéro de port destination. Comme les paquets de plusieurs flux peuvent être mélangés, la passerelle effectue séquentiellement cette identification pour tous les paquets la traversant, afin de bien distinguer les flux entre eux. Cette étape d'identification de flux est effectuée pour tous les paquets traversant la passerelle. Lorsqu'un nouveau flux est détecté, sur la base du quintuplet ci-dessus, une entrée est créée dans une table de flux par la passerelle.
Lors d'une autre étape E2 d'identification, optionnelle, le sens de traversée de la passerelle est reconnu à l'aide des mêmes informations. En effet, les paquets de chacun des deux sens d'un même flux peuvent aussi être mélangés. Il peut être souhaitable d'identifier les classes d'application génératrice de flux séparément pour chacun des deux sens, vers le terminal, ou depuis le terminal, car la gestion des flux par la passerelle peut être différente selon le sens de ces flux. A partir d'un flux bidirectionnel, c'est-à-dire dont les deux sens ne sont pas distingués, il est aisé d'identifier chaque sens à l'aide des adresses ou des ports source et destination, qui sont simplement permutés selon le sens. La table de flux de la passerelle a donc dans ce cas une entrée distincte pour chaque sens observé d'un même flux. Lors d'une étape E3 d'obtention, une information relative au type de terminal ayant généré le flux identifié, ou auquel est destiné le flux identifié, selon le sens du flux, information dite "information terminal", est obtenue à partir d'une table de terminaux stockée sur la passerelle domestique. Cette table contient la correspondance entre l'adresse IP du terminal et son type, par exemple selon 5 types : "PC", "tablette", "smartphone", "décodeur TV", et "autre". Cette table peut être remplie au moment où le terminal obtient son adresse IP via le serveur DHCP embarqué sur la passerelle domestique grâce à une technique connue sous le nom de DHCP "finger printing" (traces de requêtes DHCP), qui permet de renseigner le type de terminal dans les options DHCP.
Lors d'une autre étape E4 d'obtention, optionnelle, des caractéristiques relatives à des paquets du flux, dites caractéristiques de transport, sont obtenues de la manière suivante : lorsqu'un nouveau flux est détecté, c'est-à-dire lorsqu'à l'étape E1 ou E2 d'identification, le flux est encore absent de la table de flux, des paramètres additionnels sont mesurés ou lus, enregistrés, et associés au flux identifié, en tant que caractéristiques de transport. Par exemple, ces mesures, ou lectures de champs selon le cas, peuvent être effectuées sur les 4 premiers paquets du flux uniquement : taille des paquets (champ "Total Length" de l'entête IPv4, ou "Payload Length de l'entête IPv6), délais entre paquets dans un même sens, délais entre paquets tous sens confondus, numéro de port destination, et protocole, ces 2 derniers paramètres restant identiques pour les 4 paquets et faisant également partie du quintuplet utilisé pour l'identification du flux. Ce choix des 4 premiers paquets n'est qu'une possibilité d'implémentation de l'invention parmi d'autres. Le ou les premiers paquets d'un flux sont souvent des paquets dits de signalisation, ne contenant pas de données dites "utiles" ou "applicatives". Il peut donc être intéressant de prendre en compte plus de 4 paquets, et/ou d'ignorer le premier ou les 2 ou 3 premiers paquets.
Lors d'une étape E5 de détermination, effectuée dès que l'étape E3 est terminée, et le cas échéant, dès que l'étape E4 est terminée, les informations obtenues sont fournies en entrée d'un classificateur, c'est-à-dire l'information terminal, et, si l'étape E4 a été effectuée, les caractéristiques de transport. Ce classificateur, embarqué par exemple sur la passerelle domestique, effectue le parcours d'un arbre de décision afin de déterminer la classe d'application correspondant le mieux aux informations obtenues. Par exemple, à la racine de l'arbre, le type de terminal est examiné. Si c'est "PC", une des branches de premier niveau est sélectionnée. Dans cette branche, c'est la taille du premier paquet qui est examinée. Si elle est supérieure à 1000 octets, une des branches de deuxième niveau est sélectionnée, où c'est le délai entre les deux premiers paquets qui est examiné. Si ce délai est inférieur à 100ms, il n'y a pas de branche de troisième niveau et c'est une feuille de l'arbre qui est sélectionnée, indiquant que la classe d'application la plus probable est "streaming vidéo".
Un tel arbre de décision est entièrement façonné pas les données qui ont été utilisée lors d'un processus d'apprentissage. Ce processus est effectué préalablement et indépendamment du procédé de détermination, et indépendamment de la passerelle. Un algorithme d'apprentissage connu tel que C5 (voir http://rulequest.com/see5- info.html) est basée sur une liste de flux dont la classe d'application est connue, avec leurs paramètres correspondant à ceux utilisés par le procédé de détermination, c'est- à-dire le type de terminal et les caractéristiques de transport. L'arbre de décision ainsi généré sera d'autant plus précis que les données d'apprentissage sont nombreuses, et récentes. Il est donc judicieux de mettre à jour le processus d'apprentissage régulièrement afin de tenir compte de l'évolution du trafic.
Enfin, lors d'une étape E6 de gestion de flux, un traitement particulier est appliqué au flux par la passerelle, spécialement adapté à la classe d'application. Par exemple, dans le cas "streaming vidéo", une politique de contrôle parental, locale à la passerelle et prédéterminée, est appliquée, où l'heure de la journée est vérifiée, et le flux autorisé uniquement pendant la plage horaire entre 8:00 et 20:00 par exemple, le flux étant bloqué par la passerelle en dehors de cette plage horaire.
En relation avec la figure 2, on présente maintenant un exemple de structure d'un dispositif de détermination, selon un aspect de l'invention.
Le dispositif 100 de routage met en œuvre le procédé de détermination dont différents modes de réalisation viennent d'être décrits.
Un tel dispositif 100 peut être mis en œuvre par exemple dans une passerelle domestique apte à faire transiter des paquets entre un réseau local et l'Internet.
Par exemple, le dispositif 100 comprend une unité de traitement 130, équipée par exemple d'un microprocesseur μΡ, et pilotée par un programme d'ordinateur 1 10, stocké dans une mémoire 120 et mettant en œuvre le procédé de détermination selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur 1 10 sont par exemple chargées dans une mémoire RAM, avant d'être exécutées par le processeur de l'unité de traitement 130.
Un tel dispositif 100 comprend :
• un module d'obtention 131 , apte à obtenir une information relative au type dudit terminal, dite information terminal,
• une table de flux 132, apte à stocker des identifiants de flux en cours,
• un module de détermination 133, apte à déterminer la classe d'application au moins en fonction de l'information terminal.
Optionnellement, un tel dispositif 100 peut aussi comprendre :
• une table de terminaux 134, apte à stocker des correspondances entre des adresses IP et des types de terminaux,
• un module d'obtention 135, apte à obtenir une adresse MAC du terminal, et à consulter à distance une table de correspondance entre adresse MAC et types de terminaux,
• un module d'obtention 136, apte à obtenir une trace de requête DHCP émise par le terminal, et à consulter à distance une table de correspondance entre traces de requête DHCP et types de terminaux,
· un module d'obtention 137, apte à obtenir un contenu d'un champ "User Agent" d'une requête HTTP émise par le terminal, et à consulter à distance une table de correspondance entre contenus d'un champ "User Agent" et types de terminaux,
• un module d'obtention 138, apte à obtenir des caractéristiques relatives à des paquets du flux, dites caractéristiques de transport. Les modules décrits en relation avec la figure 2 peuvent être des modules matériels ou logiciels.
Cette figure 2 illustre seulement une manière particulière, parmi plusieurs possibles, de réaliser le procédé détaillé ci-dessus, en relation avec la figure 1 . En effet, la technique de l'invention se réalise indifféremment sur une machine de calcul reprogrammable (un ordinateur PC, un processeur DSP ou un microcontrôleur) exécutant un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel).
Dans le cas où l'invention est implantée sur une machine de calcul reprogrammable, le programme correspondant (c'est-à-dire la séquence d'instructions) pourra être stocké dans un médium de stockage amovible (tel que par exemple une disquette, un CD-ROM, un DVD-ROM ou une clé USB, SD ou micro SD) ou non, ce médium de stockage étant lisible partiellement ou totalement par un ordinateur ou un processeur.

Claims

REVENDICATIONS
1. Procédé de détermination d'une classe d'application génératrice d'un flux de paquets émis ou reçu par un terminal, le flux étant identifié sur la base d'une consultation d'un entête d'un paquet du flux au niveau d'au moins une des couches inférieures ou égales à la couche 4 OSI, le procédé comprenant les étapes suivantes :
• obtention d'une information relative au type dudit terminal, dite information terminal,
• détermination de la classe d'application au moins en fonction de l'information terminal.
2. Procédé de détermination selon la revendication 1 , comprenant une étape d'obtention d'une adresse IP du terminal à partir d'un entête d'un paquet du flux, et où l'information terminal est obtenue par consultation d'une table de correspondance entre des adresses IP et des types de terminaux.
3. Procédé de détermination selon la revendication 1 , comprenant une étape d'obtention d'une adresse MAC du terminal à partir d'un entête d'un paquet du flux, et où l'information terminal est obtenue par consultation d'une table de correspondance entre des adresses MAC et des types de terminaux.
4. Procédé de détermination selon la revendication 1 , comprenant une étape d'obtention d'une trace de requête DHCP émise par le terminal, et où l'information terminal est obtenue par consultation d'une table de correspondance entre des traces de requêtes DHCP et des types de terminaux.
5. Procédé de détermination selon la revendication 1 , comprenant une étape d'obtention du contenu d'un champ "User Agent" d'une requête HTTP émise par le terminal, et où l'information terminal est obtenue par consultation d'une table de correspondance entre des contenus de champ "User Agent" de requêtes HTTP et des types de terminaux.
6. Procédé de détermination selon l'une des revendications précédentes, comprenant en outre une étape d'obtention de caractéristiques relatives à des paquets du flux, dites caractéristiques de transport, et où l'étape de détermination de la classe d'application est effectuée en fonction de l'information terminal et des caractéristiques de transport.
7. Procédé de détermination selon la revendication 6, où les caractéristiques de transport sont obtenues sur la base d'un nombre prédéterminé de paquets consécutifs du flux.
8. Procédé de détermination selon l'une des revendications 6 à 7, où les caractéristiques de transport comprennent au moins une valeur d'un champ d'un entête d'au moins une des couches inférieures ou égale à la couche 4 OSI.
9. Procédé de détermination selon l'une des revendications 6 à 8, où les caractéristiques de transport comprennent au moins une mesure de délai entre deux paquets.
10. Procédé de détermination selon l'une des revendications 6 à 9, où les caractéristiques de transport comprennent le nombre de paquets ou la durée écoulée entre le premier et le dernier paquet du flux.
11. Procédé de détermination selon l'une des revendications précédentes, où l'étape de détermination utilise un modèle statistique établi à l'avance et basé sur un apprentissage des classes d'application.
12. Dispositif de détermination d'une classe d'application génératrice d'un flux de paquets émis ou reçu par un terminal, le flux étant identifié sur la base d'une consultation d'un entête d'un paquet du flux au niveau d'au moins une des couches inférieures ou égales à la couche 4 OSI, le procédé comprenant un processeur apte à et configuré pour :
• obtenir une information relative au type dudit terminal, dite information terminal, · déterminer la classe d'application au moins en fonction de l'information terminal.
13. Passerelle domestique comprenant un dispositif de détermination conforme à la revendication 12.
14. Programme d'ordinateur, caractérisé en ce qu'il comprend des instructions pour la mise en œuvre des étapes du procédé de détermination selon la revendication 1 , lorsque ce procédé est exécuté par un processeur.
15. Support d'enregistrement lisible par une passerelle domestique, sur lequel est enregistré le programme selon la revendication 14.
PCT/FR2016/053664 2015-12-24 2016-12-23 Procédé de détermination d'une application génératrice d'un flux ip WO2017109437A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1563301 2015-12-24
FR1563301 2015-12-24

Publications (1)

Publication Number Publication Date
WO2017109437A1 true WO2017109437A1 (fr) 2017-06-29

Family

ID=55650474

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2016/053664 WO2017109437A1 (fr) 2015-12-24 2016-12-23 Procédé de détermination d'une application génératrice d'un flux ip

Country Status (1)

Country Link
WO (1) WO2017109437A1 (fr)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7317693B1 (en) * 2003-05-12 2008-01-08 Sourcefire, Inc. Systems and methods for determining the network topology of a network
US20090182864A1 (en) * 2008-01-15 2009-07-16 Faud Khan Method and apparatus for fingerprinting systems and operating systems in a network
EP2372954A2 (fr) * 2003-11-28 2011-10-05 Insightix Ltd Procédé et système pour collecter d'informations rélatives à un réseau de communication
EP2797291A1 (fr) * 2013-04-22 2014-10-29 Telefonaktiebolaget L M Ericsson (publ) Analyse de trafic pour mappage de catégorie de dispositif à base d'agent d'utilisateur HTTP

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7317693B1 (en) * 2003-05-12 2008-01-08 Sourcefire, Inc. Systems and methods for determining the network topology of a network
EP2372954A2 (fr) * 2003-11-28 2011-10-05 Insightix Ltd Procédé et système pour collecter d'informations rélatives à un réseau de communication
US20090182864A1 (en) * 2008-01-15 2009-07-16 Faud Khan Method and apparatus for fingerprinting systems and operating systems in a network
EP2797291A1 (fr) * 2013-04-22 2014-10-29 Telefonaktiebolaget L M Ericsson (publ) Analyse de trafic pour mappage de catégorie de dispositif à base d'agent d'utilisateur HTTP

Similar Documents

Publication Publication Date Title
EP3556130B1 (fr) Procédé de surveillance d'un réseau de télécommunications mis en oeuvre par un point d'accès
EP3603024B1 (fr) Procédé de recommandation d'une pile de communication
Mongkolluksamee et al. Enhancing the performance of mobile traffic identification with communication patterns
US11838212B2 (en) Method and system for managing, optimizing, and routing internet traffic from a local area network (LAN) to internet based servers
US7996520B2 (en) Behavioral classification of communication sessions using active session initiation
WO2011114060A2 (fr) Procédé d'identification d'un protocole à l'origine d'un flux de données
FR3020734A1 (fr) Procede de traitement d'un paquet de donnees relatif a un service
EP2767060B1 (fr) Passerelle, et procédé, programme d'ordinateur et moyens de stockage correspondants
EP3105889A1 (fr) Notification d'une information de consommation de bande passante à un fournisseur de service dans un réseau de télécommunications
WO2017109437A1 (fr) Procédé de détermination d'une application génératrice d'un flux ip
EP2550776B1 (fr) Procede de gestion des enregistrements dans un reseau ims et serveur s-cscf mettant en oeuvre ce procede
WO2020221779A1 (fr) Procedes et dispositifs de mesure de reputation dans un reseau de communication
FR3116917A1 (fr) Procédé de détermination de classifieurs pour la détection d’attaques dans un réseau de communication, dispositif de détermination associé
EP3375143B1 (fr) Analyse asynchrone d'un flux de données
EP2266279A1 (fr) Partage de contenu multi supports a partir d'une communication audio-video
EP3818676A1 (fr) Identification de protocole d'un flux de données
FR2915044A1 (fr) Procede de determination de la dynamique d'un reseau logique
FR3030167A1 (fr) Procede d'echanges de donnees entre deux navigateurs internet, equipement de routage, terminal, programme d'ordinateur et support d'informations correspondants
WO2016151311A1 (fr) Procédés et appareil de traitement de données dans un réseau
WO2018114823A1 (fr) Procede de securisation de l'acheminement d'un courrier electronique et serveur de courrier electronique associe
FR3000857A1 (fr) Procede, boitier et systeme d'acces a un service informatique au travers d'un reseau de communication
Anfar et al. Developing an AI-based Web Audio and Vidoe Task Classifier for Context Aware Networks
FR3091391A1 (fr) Procédé d’identification autonome d’une application génératrice d’un flux IP
WO2020193902A1 (fr) Procédé de sécurisation de la transmission d'au moins un paquet de données le long d'un chemin de données d'un réseau de télécommunications, produit programme d'ordinateur et dispositif correspondants
WO2011151589A1 (fr) Procede de determination d'un profil d'acces d'un couple utilisateur/service applicatif a des donnees relatives au fonctionnement d'un reseau de communication

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16829423

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16829423

Country of ref document: EP

Kind code of ref document: A1