L’invention appartient au domaine général des télécommunications.The invention belongs to the general field of telecommunications.
Elle concerne plus particulièrement un procédé et un système permettant d’optimiser la gestion des communications dans un environnement exploitant le concept de tranches réseau (ou « network slices » en anglais).It relates more particularly to a method and a system for optimizing the management of communications in an environment using the concept of network slices.
Un tel concept est typiquement envisagé aujourd’hui dans les infrastructures mobiles 5G (5èmegénération) telles que définies par plusieurs standards 3GPP. Toutefois, il peut être utilisé également dans d’autres contextes, comme par exemple dans le contexte d’une infrastructure réseau partagée entre plusieurs opérateurs, d’une architecture réseau s’appuyant sur une virtualisation des fonctions réseaux (ou NFV pour « Network Functions Virtualization » en anglais), ou encore d’une architecture SD-WAN (pour « Software-Defined Wide Area Network » en anglais), etc.Such a concept is typically considered today in 5G (5th generation) mobile infrastructures as defined by several 3GPP standards. However, it can also be used in other contexts, such as in the context of a network infrastructure shared between several operators, a network architecture based on network functions virtualization (NFV), or an SD-WAN architecture (for Software-Defined Wide Area Network), etc.
Une tranche réseau peut être définie comme un réseau privé virtuel (RPV ou VPN pour « Virtual Private Network » en anglais) déployé sur une infrastructure réseau fixe ou mobile ou les deux, et visant à assurer un ensemble de performances spécifiques. Elle peut être vue comme un réseau logique offrant une connectivité à ses utilisateurs et ayant ses propres caractéristiques en termes de capacité (bande passante), de qualité de service (latence, débit, temps de transit unidirectionnel, gigue (ou variation du délai inter-paquets, « inter-packet delay variation » en anglais, etc.) et de sécurité (par exemple, préservation de la confidentialité des informations transmises au sein d’un RPV moyennant l’utilisation de techniques de chiffrement).A network slice can be defined as a virtual private network (VPN) deployed on a fixed or mobile network infrastructure or both, and designed to provide a specific set of performances. It can be seen as a logical network providing connectivity to its users and having its own characteristics in terms of capacity (bandwidth), quality of service (latency, throughput, one-way transit time, jitter (or inter-packet delay variation, etc.) and security (for example, preserving the confidentiality of information transmitted within a VPN through the use of encryption techniques).
Le découpage en tranches réseau (ou « network slicing » en anglais) est en principe facilité par l’usage de techniques avancées de réseau défini par logiciel (ou SDN pour « Software-Defined Network » en anglais) et/ou de virtualisation de fonctions réseau (NFV), non décrites en détail ici. Il peut être appliqué à différents niveaux d’un réseau ; par exemple, pour un réseau 5G, au niveau du réseau d’accès radio pour une allocation dynamique des ressources radio, au niveau des ressources de calcul périphériques (ou MEC pour « Multi-access Edge Computing »), ou encore au niveau du cœur de réseau, notamment pour isoler le trafic et assurer la sécurité.Network slicing is typically facilitated by the use of advanced software-defined networking (SDN) and/or network function virtualization (NFV) techniques, not described in detail here. It can be applied at different levels of a network; for example, for a 5G network, at the radio access network level for dynamic allocation of radio resources, at the edge computing (MEC) level, or at the core network level, particularly to isolate traffic and ensure security.
Un tel découpage en tranches réseau permet avantageusement à diverses applications ou services réseau ayant des besoins spécifiques de coexister sur une même infrastructure réseau partagée, physique ou virtuelle. Chaque tranche réseau se voit ainsi allouer un ensemble de ressources (par ex. ressources de calcul, de stockage, ressources réseau, ou spectre de fréquences radio) pour satisfaire les besoins spécifiques d’un service ou d’un type de service auquel elle est associée. Le découpage en tranches réseau s’appuie à cet effet sur la définition d’un ensemble de politiques (qui peuvent prendre notamment la forme de règles de classification du trafic) et de mécanismes qui permettent d’identifier les flux de trafic associés à chaque tranche réseau.Such network slicing advantageously allows various network applications or services with specific needs to coexist on the same shared network infrastructure, whether physical or virtual. Each network slice is thus allocated a set of resources (e.g., computing resources, storage resources, network resources, or radio frequency spectrum) to meet the specific needs of a service or type of service with which it is associated. Network slicing is based on the definition of a set of policies (which may take the form of traffic classification rules, among other things) and mechanisms that make it possible to identify the traffic flows associated with each network slice.
Ainsi, par exemple, une tranche réseau peut être optimisée pour des applications de jeu ou de réalité virtuelle sensibles à la latence. Une autre tranche réseau peut être optimisée pour des applications requérant une large bande passante telles que des applications de diffusion vidéo ou d’informatique en nuage (ou « cloud computing » en anglais). A titre illustratif, le standard 3GPP TS 23.501 intitulé « Technical Specification Group Services and System Aspects ; System architecture for the 5G System (5GS) ; Stage 2 (Release 17) », v17.9.0, juin 2023, au paragraphe 5.15.2.2, définit plusieurs types de tranches réseau permettant de gérer différentes catégories de services, et associés respectivement à des valeurs SST (pour « Service/Slice Type » en anglais). Ainsi, ce standard 3GPP considère :
Ainsi, le choix de concevoir et de déployer un type de tranche particulier est conditionné par la nature du trafic caractéristique des applications utilisées ou des services souscrits par les utilisateurs du réseau. Par exemple, un service dit « immersif » qui exploite des techniques de réalité augmentée ou réalité virtuelle est généralement très exigeant en termes de latence et de fiabilité des échanges de données, de sorte qu’il est un client naturel pour une tranche de type URLLC.Thus, the choice to design and deploy a particular type of slice is conditioned by the nature of the traffic characteristic of the applications used or the services subscribed to by network users. For example, a so-called "immersive" service that uses augmented reality or virtual reality techniques is generally very demanding in terms of latency and reliability of data exchanges, so it is a natural client for a URLLC type slice.
Il convient de noter que les standards 3GPP actuels permettent à un équipement utilisateur (ou UE pour « User Equipment » en anglais) d’un réseau 5G de se connecter simultanément à 8 tranches réseau et donc d’accéder simultanément à autant de services requérant des besoins de connectivité distincts.It should be noted that current 3GPP standards allow a user equipment (or UE) of a 5G network to connect simultaneously to 8 network slices and therefore to simultaneously access as many services requiring distinct connectivity needs.
Comme évoqué précédemment, le routage du trafic associé à un UE vers telle ou telle tranche réseau autorisée pour l’UE s’appuie sur des règles de classification du trafic, appliquées au niveau de l’UE mais également du réseau. Dans l’exemple d’un réseau 5G, ces règles de classification du trafic, aussi connues sous le nom de règles URSP (pour « UE Route Selection Policy » en anglais) sont transmises à l’UE au niveau du plan de contrôle par la fonction de contrôle de politiques (ou PCF pour « Policy Control Function » en anglais) du réseau ou pré-configurées au niveau de l’UE. Les règles URSP indiquent pour un type de trafic donné, quelle(s) tranche(s) de réseau l’UE peut utiliser.As mentioned above, the routing of traffic associated with a UE to a particular network slice authorized for the UE is based on traffic classification rules, applied at the UE level but also at the network level. In the example of a 5G network, these traffic classification rules, also known as URSP rules (for "UE Route Selection Policy"), are transmitted to the UE at the control plane level by the network's Policy Control Function (PCF) or pre-configured at the UE level. URSP rules indicate for a given type of traffic, which network slice(s) the UE can use.
Les règles de classification du trafic peuvent être extrêmement complexes en raison des différents niveaux de granularité envisagés pour l’ingénierie et le déploiement des tranches réseau (par ex. une tranche réseau déployée pour acheminer le trafic à destination du réseau Internet ou une tranche réseau dédiée déployée pour acheminer le trafic applicatif échangé entre deux UE donnés). En outre, l’édiction et l’application de telles règles de classification du trafic sont susceptibles d’évoluer dans le temps, parfois avec une fréquence élevée, avec la diversité des trafics et leur changement, la dynamicité des besoins de l’UE, l’apparition de nouveaux services, les critères de sélection des tranches réseau appliqués et/ou les modes d’usage des tranches réseau, etc. Il en résulte également une difficulté de configuration de telles règles et un risque d’erreurs.Traffic classification rules can be extremely complex due to the different levels of granularity considered for the engineering and deployment of network slices (e.g. a network slice deployed to route traffic destined for the Internet network or a dedicated network slice deployed to route application traffic exchanged between two given UEs). In addition, the enactment and application of such traffic classification rules are likely to evolve over time, sometimes with high frequency, with the diversity of traffic and its change, the dynamic nature of the UE needs, the emergence of new services, the network slice selection criteria applied and/or the usage patterns of the network slices, etc. This also results in a difficulty in configuring such rules and a risk of errors.
Il existe donc un besoin d’un mécanisme qui permet d’optimiser l’accès à un service par un dispositif client (UE ou autre tel qu’un routeur, une passerelle résidentielle (ou CPE pour « Customer Premises Equipment » en anglais), un décodeur TV, etc.) via une ou plusieurs tranches réseau qui ne présente pas ces inconvénients.There is therefore a need for a mechanism that allows access to a service to be optimized by a client device (UE or other such as a router, a residential gateway (or CPE for “Customer Premises Equipment” in English), a TV decoder, etc.) via one or more network slices that does not have these drawbacks.
L’invention répond notamment à ce besoin en proposant un procédé de sélection de tranches réseau adaptées à un service et destinées à être utilisées lors d’une communication entre deux dispositifs via au moins un réseau, ce procédé étant mis en œuvre par un « proxy » se trouvant sur un chemin de données relatives au service et échangées entre les dispositifs impliqués dans la communication. Le procédé de sélection comprend :
Corrélativement, l’invention vise un proxy se trouvant sur un chemin de données relatives à un service et échangées via au moins un réseau lors d’une communication entre deux dispositifs impliqués dans une communication, ce proxy comprenant :
Par « au moins une tranche réseau utilisable lors de la communication », on entend que le dispositif doit utiliser l’une au moins des tranches réseau indiquées par le proxy durant la communication, dès lors qu’il a été informé de cette sélection (en d’autres termes, suite à la réception du message du proxy).By "at least one usable network slice during communication" we mean that the device must use at least one of the network slices indicated by the proxy during the communication, as soon as it has been informed of this selection (in other words, following receipt of the proxy message).
Aucune limitation n’est attachée à la nature du service dans le cadre duquel sont échangées des données dans le contexte de l’invention ni au nombre de dispositifs « terminaux » impliqués dans une communication. Il peut s’agir de tout type d’offre proposée par un fournisseur de services s’appuyant sur l’orchestration d’un ensemble de ressources d’un ou plusieurs réseaux (ressources réseau, de calcul, de stockage, etc.), comme par exemple un service de voix sur IP, un service de télémédecine, un service de diffusion de vidéos HD, un service de conférence, etc. Par ailleurs, aucune hypothèse n’est faite quant à la nature de chaque dispositif impliqué dans la communication. Il peut s’agir d’un terminal, tel qu’un téléphone intelligent, une tablette numérique, un ordinateur portable, mais également un routeur, un CPE, un décodeur TV, etc. Il peut être mono-interface ou multi-interface (ou MIF pour « Multi-InterFace » en anglais), c’est-à-dire capable d’activer et d’exploiter simultanément plusieurs interfaces logiques liées à une ou plusieurs interfaces physiques de connexion, telles que par exemple une interface de connexion à un réseau fixe, une interface de connexion à un réseau mobile ou encore une interface de connexion à un réseau local sans fil ou WLAN (pour « Wireless Local Area Network » en anglais). Cette caractéristique MIF présente de nombreux avantages pour l’UE, comme la possibilité d’agréger la bande passante de différents réseaux, une meilleure disponibilité de l’accès au(x) réseau(x), une répartition du trafic sur plusieurs liens de communication, etc. Il convient toutefois de noter que cette caractéristique MIF est volatile, car la capacité d’un dispositif à utiliser plusieurs interfaces (et ainsi à agréger plusieurs liens de communication c’est-à-dire à communiquer en empruntant des chemins multiples) dépend de différents facteurs, comme de ses conditions de raccordement au(x) réseau(x), de sa localisation, etc.No limitation is attached to the nature of the service in the context of which data are exchanged in the context of the invention nor to the number of “terminal” devices involved in a communication. It can be any type of offer proposed by a service provider based on the orchestration of a set of resources of one or more networks (network resources, computing resources, storage resources, etc.), such as for example a voice over IP service, a telemedicine service, an HD video streaming service, a conferencing service, etc. Furthermore, no assumption is made as to the nature of each device involved in the communication. It can be a terminal, such as a smartphone, a digital tablet, a laptop, but also a router, a CPE, a TV decoder, etc. It can be single-interface or multi-interface (or MIF for "Multi-InterFace" in English), that is to say capable of activating and simultaneously operating several logical interfaces linked to one or more physical connection interfaces, such as for example a connection interface to a fixed network, a connection interface to a mobile network or a connection interface to a wireless local area network or WLAN (for "Wireless Local Area Network" in English). This MIF characteristic has many advantages for the UE, such as the possibility of aggregating the bandwidth of different networks, better availability of access to the network(s), distribution of traffic over several communication links, etc. It should be noted, however, that this MIF characteristic is volatile, because the capacity of a device to use several interfaces (and thus to aggregate several communication links, i.e. to communicate using multiple paths) depends on various factors, such as its connection conditions to the network(s), its location, etc.
De même, les tranches réseau envisagées dans le contexte de l’invention peuvent être supportées par un ou plusieurs réseaux (on parle de tranches « multi-domaines » ou « stitched slices » en anglais), se situer à différents niveaux (par exemple au niveau d’un réseau d’accès, d’un réseau de collecte, du cœur de réseau, d’un réseau de transit ou d’un réseau de transport), être associées à d’autres tranches réseau, etc., et une même tranche réseau peut être utilisée pour transporter le trafic d’un ou plusieurs services.Similarly, the network slices envisaged in the context of the invention may be supported by one or more networks (we speak of “multi-domain” slices or “stitched slices” in English), be located at different levels (for example at the level of an access network, a collection network, the core network, a transit network or a transport network), be associated with other network slices, etc., and the same network slice may be used to transport the traffic of one or more services.
L’invention propose ainsi un mécanisme de sélection, par un proxy, de tranches réseau permettant d’optimiser, au regard de critères donnés (participant à la définition d’une « politique de sélection » au sens de l’invention), un service de bout-en-bout entre un dispositif émetteur et un dispositif récepteur. Il convient de noter qu’à cet effet, le procédé de sélection selon l’invention peut être mis en œuvre par un ou plusieurs proxies situés sur le chemin des données échangées dans le cadre du service entre le dispositif émetteur et le dispositif récepteur. En d’autres termes, les deux dispositifs envisagés dans le procédé de sélection peuvent être le dispositif émetteur et le dispositif récepteur, ou le dispositif émetteur et un proxy associé au dispositif récepteur, ou encore le dispositif récepteur et un proxy associé au dispositif émetteur.The invention thus proposes a mechanism for selecting, by a proxy, network slices making it possible to optimize, with regard to given criteria (participating in the definition of a “selection policy” within the meaning of the invention), an end-to-end service between a transmitting device and a receiving device. It should be noted that for this purpose, the selection method according to the invention can be implemented by one or more proxies located on the path of the data exchanged within the framework of the service between the transmitting device and the receiving device. In other words, the two devices envisaged in the selection method can be the transmitting device and the receiving device, or the transmitting device and a proxy associated with the receiving device, or the receiving device and a proxy associated with the transmitting device.
Le proxy selon l’invention dispose conformément à l’invention d’une visibilité sur les tranches réseau accessibles par les dispositifs « terminaux » en coupure de flux desquels il se trouve et a la capacité de communiquer avec un ou plusieurs contrôleurs réseau pour déclencher éventuellement (et si besoin négocier) le raccordement de ces dispositifs à d’autres tranches réseau si celles-ci s’avèrent pertinentes au regard de sa politique de sélection pour fournir le service de façon optimale aux dispositifs. Un tel raccordement peut être demandé par le proxy en amont de la sélection des tranches réseau pour les dispositifs (pour des tranches réseau susceptibles d’être sélectionnées par le proxy pour les dispositifs), ou après avoir sélectionné les tranches réseau (on peut alors se limiter à demander le raccordement des tranches réseau qui ont été sélectionnées et auxquelles ne sont pas déjà raccordés les dispositifs). Le proxy est par ce biais en mesure d’établir une correspondance entre un service et les tranches réseau permettant de fournir ce service de manière optimale, et est assisté à cette fin par le ou les réseaux supportant les tranches réseau en question.The proxy according to the invention has, in accordance with the invention, visibility over the network slices accessible by the "terminal" devices in the flow break of which it is located and has the capacity to communicate with one or more network controllers to possibly trigger (and if necessary negotiate) the connection of these devices to other network slices if these prove relevant with regard to its selection policy to provide the service optimally to the devices. Such a connection can be requested by the proxy upstream of the selection of the network slices for the devices (for network slices likely to be selected by the proxy for the devices), or after having selected the network slices (it is then possible to limit oneself to requesting the connection of the network slices which have been selected and to which the devices are not already connected). The proxy is thereby able to establish a correspondence between a service and the network slices allowing this service to be provided optimally, and is assisted to this end by the network(s) supporting the network slices in question.
Le proxy se trouvant dans le plan des données échangées entre les deux dispositifs, il peut avantageusement sélectionner des tranches réseau différentes pour chacun des dispositifs, y compris des tranches réseau supportées par des réseaux différents : sa position dans le plan de données lui permet d’être en mesure de réaliser l’interconnexion entre de telles tranches réseau différentes, et marquer en conséquence les paquets de données transitant par lui ou modifier leurs entêtes pour qu’ils soient orientés convenablement vers les tranches réseau adéquates.Since the proxy is located in the plane of the data exchanged between the two devices, it can advantageously select different network slices for each of the devices, including network slices supported by different networks: its position in the data plane allows it to be able to carry out the interconnection between such different network slices, and accordingly mark the data packets passing through it or modify their headers so that they are appropriately directed towards the appropriate network slices.
La politique de sélection appliquée par le proxy peut avantageusement tenir compte, outre la qualité du service, de contraintes imposées par le fournisseur de service, ou par l’opérateur ou les opérateurs du ou des réseaux sur lesquels s’appuient les tranches réseau, de l’habilitation (autorisation) des dispositifs à accéder à une ou plusieurs tranches réseau, d’une complexité de mise en œuvre, etc.The selection policy applied by the proxy can advantageously take into account, in addition to the quality of the service, constraints imposed by the service provider, or by the operator or operators of the network(s) on which the network slices are based, the authorization of the devices to access one or more network slices, the complexity of implementation, etc.
Par exemple, la politique de sélection applique au moins une règle parmi les règles suivantes :
Bien entendu, la politique de sélection appliquée par le proxy peut comprendre d’autres règles en plus ou en remplacement de tout ou partie des règles mentionnées ci-avant.Of course, the selection policy applied by the proxy may include other rules in addition to or replacing all or part of the rules mentioned above.
La première règle favorise la sélection de tranches réseau auxquelles sont déjà raccordés les dispositifs et qui sont compatibles entre elles, dès lors que ces tranches réseau sont adaptées au service. Ceci permet d’accélérer la fourniture du service et de limiter la complexité d’implémentation de l’invention. De plus, la présence du proxy et son implication dans l’établissement des communications permet de préserver un même niveau de service.The first rule favors the selection of network slices to which the devices are already connected and which are compatible with each other, as long as these network slices are adapted to the service. This makes it possible to accelerate the provision of the service and to limit the complexity of implementing the invention. In addition, the presence of the proxy and its involvement in establishing communications makes it possible to preserve the same level of service.
La deuxième règle peut être pertinente lorsque l’un des dispositifs ne supporte pas la procédure proposée par l’invention. Cette procédure est appelée dans la suite de la demande « SLALOM » en référence à la possibilité qu’elle offre de « slalomer » entre les tranches réseau offertes par un ou plusieurs réseaux lors d’une communication entre deux dispositifs.The second rule may be relevant when one of the devices does not support the procedure proposed by the invention. This procedure is called in the remainder of the application “SLALOM” in reference to the possibility it offers to “slalom” between the network slices offered by one or more networks during communication between two devices.
La troisième règle permet avantageusement de choisir les tranches réseau qui optimisent la qualité du service relatif aux données échangées entre les dispositifs. A cet effet, différents éléments peuvent être pris en compte comme le type de service envisagé, les paramètres de qualité déterminants pour ce service (la latence, le débit, etc.), les garanties offertes par les tranches réseau « visibles » du proxy (c’est-à-dire qui peuvent être sélectionnées par celui-ci), etc. On note qu’une telle troisième règle peut, dans certains cas, être une instanciation de la première règle.The third rule advantageously allows choosing the network slices that optimize the quality of service relating to the data exchanged between the devices. To this end, different elements can be taken into account such as the type of service envisaged, the determining quality parameters for this service (latency, throughput, etc.), the guarantees offered by the network slices "visible" to the proxy (i.e. which can be selected by it), etc. It should be noted that such a third rule can, in certain cases, be an instantiation of the first rule.
L’invention offre donc une plus grande granularité dans le choix des tranches réseau pouvant être utilisées pour satisfaire les besoins d’un service, des tranches réseau différentes pouvant être utilisées sur différents segments de la communication, et sur un même segment de communication, sur des chemins multiples mis en œuvre sur ce segment (autrement dit, sur différentes « sous-connexions » ou « sous-sessions » (« subflow », en anglais) selon les protocoles considérés). Elle permet en outre de tenir compte des tranches réseau ou des types de tranche réseau disponibles pour les deux dispositifs impliqués dans la communication, c’est-à-dire qu’ils sont habilités à utiliser.The invention therefore provides greater granularity in the choice of network slices that can be used to satisfy the needs of a service, different network slices can be used on different segments of the communication, and on the same communication segment, on multiple paths implemented on this segment (in other words, on different “sub-connections” or “sub-sessions” (“subflow”, in English) depending on the protocols considered). It also makes it possible to take into account the network slices or types of network slice available to the two devices involved in the communication, i.e. that they are authorized to use.
Au contraire, dans l’état de la technique évoqué précédemment, un UE ne dispose que de la connaissance des tranches réseau qui lui sont autorisées par le réseau pour sélectionner la tranche réseau qu’il va utiliser pour accéder à un service. Il n’a pas de visibilité sur les tranches réseau disponibles pour le dispositif distant avec lequel il établit une communication pour accéder au service. Chaque dispositif (UE ou dispositif distant) n’a qu’une visibilité réduite sur les tranches réseau susceptibles de satisfaire les besoins d’un service auquel il accède, et ne peut utiliser que les tranches réseau qui lui sont communiquées par le réseau auquel il est connecté. Il n’a pas de visibilité non plus sur d’autres tranches disponibles au sein d’un réseau pour fournir le service, et encore moins sur celles qui sont accessibles par l’autre dispositif, de sorte que quand il choisit au regard des règles URSP qui lui sont communiquées une tranche réseau pour accéder à un service, c’est cette même tranche réseau qui est utilisée de bout-en-bout jusqu’au dispositif distant.On the contrary, in the state of the art mentioned above, a UE only has knowledge of the network slices authorized to it by the network to select the network slice that it will use to access a service. It has no visibility of the network slices available to the remote device with which it establishes a communication to access the service. Each device (UE or remote device) has only limited visibility of the network slices likely to satisfy the needs of a service that it is accessing, and can only use the network slices communicated to it by the network to which it is connected. It also has no visibility of other slices available within a network to provide the service, and even less of those that are accessible by the other device, so that when it chooses a network slice to access a service based on the URSP rules communicated to it, it is this same network slice that is used from end-to-end to the remote device.
Par ailleurs, conformément à l’invention, le proxy est impliqué dans l’accès au service : il sélectionne pour un service donné les tranches réseau à utiliser par les dispositifs lors de la communication et les informe de cette sélection. Il en résulte une configuration dynamique (ajout, suppression, etc.) des règles de classification de trafic appliquées par les dispositifs, dès lors qu’ils peuvent être en mesure d’utiliser de nouvelles tranches réseau auxquelles ils n’étaient pas initialement raccordés. L’invention permet ainsi aux dispositifs de découvrir de façon automatique et sécurisée des tranches réseau déployées réservées à (ou optimisées pour) l’usage d’un service donné.Furthermore, in accordance with the invention, the proxy is involved in accessing the service: it selects for a given service the network slices to be used by the devices during communication and informs them of this selection. This results in a dynamic configuration (addition, deletion, etc.) of the traffic classification rules applied by the devices, as soon as they can use new network slices to which they were not initially connected. The invention thus allows the devices to automatically and securely discover deployed network slices reserved for (or optimized for) the use of a given service.
En outre, le proxy se trouvant sur les chemins des données relatives au service et échangées lors de la communication entre les dispositifs, on peut envisager de mettre en place au niveau du proxy un contrôle visant à s’assurer que les dispositifs lors de cette communication accèdent effectivement au service prétendu et utilisent les tranches de réseau qu’il a sélectionnées pour eux pour ce service. L’invention permet ainsi de se prémunir contre des procédures d’usurpation mises en œuvre par des applications malveillantes et visant à utiliser des privilèges non autorisés dans le réseau.Furthermore, since the proxy is located on the path of data relating to the service and exchanged during communication between the devices, it is possible to envisage implementing a control at the proxy level aimed at ensuring that the devices during this communication actually access the claimed service and use the network slices that it has selected for them for this service. The invention thus makes it possible to protect against spoofing procedures implemented by malicious applications and aimed at using unauthorized privileges in the network.
Dans un mode particulier de réalisation, le procédé de sélection comprend une étape d’obtention en provenance d’au moins un dit dispositif, d’au moins une information représentative d’au moins une tranche réseau à laquelle est raccordé ce dispositif.In a particular embodiment, the selection method comprises a step of obtaining from at least one said device, at least one piece of information representative of at least one network slice to which this device is connected.
Une telle information comprend par exemple au moins un élément parmi :
Elle permet notamment au proxy d’appliquer les règles de sélection évoquées précédemment dans sa politique de sélection.In particular, it allows the proxy to apply the selection rules mentioned previously in its selection policy.
En outre, dans un mode particulier de réalisation du procédé de sélection, l’étape d’envoi d’une demande de raccordement concerne une tranche réseau susceptible d’être sélectionnée pour ledit dispositif et est mise en œuvre avant l’étape de sélection.Furthermore, in a particular embodiment of the selection method, the step of sending a connection request relates to a network slice likely to be selected for said device and is implemented before the selection step.
Ce mode de réalisation permet une utilisation plus rapide de la ou des tranches sélectionnées pour le dispositif à compter de sa/leur sélection et ainsi de réduire le délai d’accès au service.This embodiment allows for faster use of the selected slice(s) for the device from the time of its/their selection and thus reduces the time taken to access the service.
Ainsi, le raccordement à d’autres tranches réseau pour un dispositif peut être demandé par le proxy avant ou après la sélection des tranches réseau adaptées à un service pour ce dispositif. Ceci offre une flexibilité en matière d’implémentation de l’invention.Thus, connection to other network slices for a device can be requested by the proxy before or after selecting the network slices suitable for a service for that device. This provides flexibility in implementing the invention.
Dans un mode particulier de réalisation, le procédé de sélection selon l’invention comprend en outre une étape d’envoi à au moins un dit dispositif d’au moins une information représentative d’au moins une tranche réseau à laquelle est raccordé le proxy.In a particular embodiment, the selection method according to the invention further comprises a step of sending to at least one said device at least one piece of information representative of at least one network slice to which the proxy is connected.
Ce mode de réalisation permet une découverte automatique par les dispositifs des proxies capables d’optimiser leurs communications de sorte à inclure ces « proxies » sur le chemin de ces communications. D’autres informations peuvent être acquises par les dispositifs, comme par exemple au moins un protocole de communication mis en œuvre par le proxy.This embodiment allows automatic discovery by devices of proxies capable of optimizing their communications so as to include these "proxies" on the path of these communications. Other information can be acquired by the devices, such as for example at least one communication protocol implemented by the proxy.
Le dispositif peut ainsi aisément inclure sur le chemin de sa communication avec un autre dispositif un proxy raccordé à une tranche réseau à laquelle lui-même est raccordé ou qui est accessible via cette tranche réseau.The device can thus easily include on the path of its communication with another device a proxy connected to a network slice to which it itself is connected or which is accessible via this network slice.
L’annonce du protocole de communication peut en outre permettre au dispositif de choisir un proxy mettant en œuvre un protocole supportant des extensions permettant d’établir des communications via des chemins multiples, un proxy pouvant jouer le rôle de concentrateur de chemins multiples ce qui peut s’avérer avantageux quand l’un des dispositifs ne connaît pas les capacités à cet égard de l’autre dispositif, ou un proxy qui permet d’utiliser des fonctions de transport avancées sans que de telles fonctions soient effectivement supportées par tous les dispositifs impliqués dans une communication. Un tel protocole de communication est par exemple le protocole de transport TCP (Transmission Control Protocol) et son option multi-chemins MPTCP (pour « Multipath TCP »), le protocole de transport QUIC et son extension multi-chemins MPQUIC (pour « Multipath QUIC ») ou encore le protocole de transport DCCP (pour « Datagram Congestion Control Protocol ») et son extension multi-chemins MPDCCP (pour « Multipath DCCP »), ou encore le protocole de conversion « 0-RTT Convert Protocol ».The communication protocol announcement may also allow the device to choose a proxy implementing a protocol supporting extensions for establishing communications via multiple paths, a proxy that can act as a multipath concentrator, which may be advantageous when one of the devices does not know the capabilities of the other device in this regard, or a proxy that allows advanced transport functions to be used without such functions being effectively supported by all the devices involved in a communication. Such a communication protocol is, for example, the TCP (Transmission Control Protocol) transport protocol and its multipath option MPTCP (for “Multipath TCP”), the QUIC transport protocol and its multipath extension MPQUIC (for “Multipath QUIC”), or the DCCP (for “Datagram Congestion Control Protocol”) transport protocol and its multipath extension MPDCCP (for “Multipath DCCP”), or the “0-RTT Convert Protocol” conversion protocol.
En outre, les différentes informations échangées entre dispositifs et proxy dans le cadre de l’invention peuvent l’être via des extensions de ces protocoles définies à cet effet.Furthermore, the various information exchanged between devices and proxies within the framework of the invention can be done via extensions of these protocols defined for this purpose.
Dans un mode particulier de réalisation, le procédé de sélection selon l’invention comprend, suite à l’étape d’envoi du message à chaque dispositif indiquant la ou les tranches de réseau sélectionnées pour lui, une étape de maintien du proxy sur au moins un dit chemin de données relatives audit service échangées entre lesdits dispositifs lors de ladite communication via au moins une tranche réseau sélectionnée pour lesdits dispositifs.In a particular embodiment, the selection method according to the invention comprises, following the step of sending the message to each device indicating the network slice(s) selected for it, a step of maintaining the proxy on at least one said data path relating to said service exchanged between said devices during said communication via at least one network slice selected for said devices.
En d’autres termes, le proxy reste impliqué dans la communication entre les deux dispositifs jusqu’à la fin de cette communication. Ce mode de réalisation présente un avantage lorsque tout ou partie des tranches réseau sélectionnées pour les deux dispositifs diffèrent, le proxy permettant de réaliser l’interconnexion entre des tranches réseau différentes utilisées par les deux dispositifs pour une même communication.In other words, the proxy remains involved in the communication between the two devices until the end of this communication. This embodiment has an advantage when all or part of the network slices selected for the two devices differ, the proxy allowing the interconnection between different network slices used by the two devices for the same communication.
Il convient de noter que ce mode de réalisation ne s’oppose pas à ce que les communications futures relatives au même service soient établies directement entre les deux dispositifs (sans l’intervention du proxy) via la ou les tranches sélectionnées par le proxy. Ceci permet de simplifier l’établissement des connexions entre les deux dispositifs.It should be noted that this embodiment does not prevent future communications relating to the same service from being established directly between the two devices (without the intervention of the proxy) via the slot(s) selected by the proxy. This makes it possible to simplify the establishment of connections between the two devices.
Dans un autre mode de réalisation, suite à l’étape d’envoi dudit message à chaque dispositif, une étape de retrait dudit proxy d’au moins un dit chemin de données relatives audit service échangées entre lesdits dispositifs lors de ladite communication via une même tranche réseau sélectionnée pour lesdits dispositifs.In another embodiment, following the step of sending said message to each device, a step of removing said proxy from at least one said data path relating to said service exchanged between said devices during said communication via the same network slice selected for said devices.
Comme il apparaît au regard de ce qui vient d’être décrit, l’invention s’appuie sur un proxy, mais également sur les dispositifs échangeant des données relatives à un service lors d’une communication, et sur le ou les contrôleurs réseau aptes à déclencher le raccordement d’un dispositif à une tranche réseau qu’ils gèrent sur demande du proxy.As appears from what has just been described, the invention relies on a proxy, but also on the devices exchanging data relating to a service during a communication, and on the network controller(s) capable of triggering the connection of a device to a network slice that they manage at the request of the proxy.
Ainsi, selon un deuxième aspect, l’invention vise un procédé de gestion d’au moins une tranche réseau par un contrôleur réseau d’un réseau, ledit procédé comprenant :
Corrélativement, l’invention vise également un contrôleur réseau d’un réseau comprenant :
Selon un troisième aspect, l’invention vise un procédé de communication par un premier dispositif avec un proxy se trouvant sur un chemin de données relatives à un service et échangées via au moins un réseau avec un deuxième dispositif lors d’une communication, ledit procédé comprenant une étape de réception, en provenance dudit proxy, d’un message indiquant au premier dispositif au moins une tranche réseau adaptée au service utilisable par ledit premier dispositif lors de la communication et sélectionnée par le proxy en fonction d’une politique de sélection donnée.According to a third aspect, the invention relates to a method of communication by a first device with a proxy located on a data path relating to a service and exchanged via at least one network with a second device during a communication, said method comprising a step of receiving, from said proxy, a message indicating to the first device at least one network slice adapted to the service usable by said first device during the communication and selected by the proxy according to a given selection policy.
Corrélativement, l’invention concerne un dispositif de communication, dit premier dispositif de communication, comprenant :
Le premier dispositif de communication selon l’invention et le contrôleur réseau, ainsi que les procédés de communication et de gestion mis en œuvre respectivement par ces équipements, bénéficient des mêmes avantages cités précédemment que le proxy et le procédé de sélection selon l’invention.The first communication device according to the invention and the network controller, as well as the communication and management methods implemented respectively by these devices, benefit from the same advantages cited previously as the proxy and the selection method according to the invention.
Dans un mode particulier de réalisation, le procédé de communication comprend en outre, préalablement à l’étape de réception, une étape d’envoi via ledit proxy d’une demande d’établissement d’une connexion avec le deuxième dispositif pour la communication, la demande d’établissement comprenant au moins une information représentative d’au moins une tranche réseau à laquelle est raccordé le premier dispositif.In a particular embodiment, the communication method further comprises, prior to the reception step, a step of sending via said proxy a request to establish a connection with the second device for communication, the establishment request comprising at least one piece of information representative of at least one network slice to which the first device is connected.
Dans un mode particulier de réalisation, le procédé de communication comprend en outre :
Ces modes de réalisation s’appuient sur des messages existants pour véhiculer diverses informations favorisant la mise en œuvre de l’invention. En outre, ils permettent d’impliquer le proxy dès la phase d’accès au service par les dispositifs.These embodiments rely on existing messages to convey various information promoting the implementation of the invention. In addition, they allow the proxy to be involved from the phase of access to the service by the devices.
Dans un autre mode de réalisation, le procédé de communication comprend, préalablement à l’étape d’envoi, une étape de découverte d’au moins un proxy raccordé à au moins une tranche réseau à laquelle est raccordé le premier dispositif et mettant en œuvre au moins un protocole de communication utilisé lors de la communication, le proxy étant sélectionné par le premier dispositif parmi ledit au moins un proxy découvert lors de l’étape de découverte.In another embodiment, the communication method comprises, prior to the sending step, a step of discovering at least one proxy connected to at least one network slice to which the first device is connected and implementing at least one communication protocol used during the communication, the proxy being selected by the first device from among said at least one proxy discovered during the discovery step.
Comme évoqué précédemment, ce mode de réalisation permet une découverte automatique par les dispositifs des proxies disponibles pour la mise en œuvre de l’invention.As mentioned previously, this embodiment allows automatic discovery by the devices of the proxies available for implementing the invention.
Dans un mode particulier de réalisation, les procédés de sélection, de gestion et de communication sont mis en œuvre par un ordinateur.In a particular embodiment, the selection, management and communication methods are implemented by a computer.
L’invention vise également un programme d’ordinateur sur un support d’enregistrement, ce programme étant susceptible d’être mis en œuvre dans un ordinateur ou plus généralement dans un proxy conforme à l’invention et comportant des instructions adaptées à la mise en œuvre d’un procédé de sélection tel que décrit ci-dessus.The invention also relates to a computer program on a recording medium, this program being capable of being implemented in a computer or more generally in a proxy conforming to the invention and comprising instructions adapted to the implementation of a selection method as described above.
L’invention vise également un programme d’ordinateur sur un support d’enregistrement, ce programme étant susceptible d’être mis en œuvre dans un ordinateur ou plus généralement dans un contrôleur réseau conforme à l’invention et comportant des instructions adaptées à la mise en œuvre d’un procédé de gestion tel que décrit ci-dessus.The invention also relates to a computer program on a recording medium, this program being capable of being implemented in a computer or more generally in a network controller in accordance with the invention and comprising instructions adapted to the implementation of a management method as described above.
L’invention vise aussi un programme d’ordinateur sur un support d’enregistrement, ce programme étant susceptible d’être mis en œuvre dans un ordinateur ou plus généralement dans un dispositif de communication conforme à l’invention et comportant des instructions adaptées à la mise en œuvre d’un procédé de communication tel que décrit ci-dessus.The invention also relates to a computer program on a recording medium, this program being capable of being implemented in a computer or more generally in a communication device in accordance with the invention and comprising instructions adapted to the implementation of a communication method as described above.
Chacun de ces programmes 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.Each of these programs may use any programming language, and may be in the form of source code, object code, or code intermediate between source code and object code, such as in a partially compiled form, or in any other desirable form.
L’invention vise aussi un support d'information ou un support d’enregistrement lisibles par un ordinateur, et comportant des instructions d’un programme d'ordinateur tel que mentionné ci-dessus.The invention also relates to an information medium or a recording medium readable by a computer, and comprising instructions of a computer program as mentioned above.
Le support d'information ou d’enregistrement peut être n'importe quelle entité ou dispositif capable de stocker les programmes. 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 un disque dur, ou une mémoire flash.The information or recording medium may be any entity or device capable of storing programs. For example, the medium may include a storage medium, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a magnetic recording medium, for example a hard disk, or a flash memory.
D'autre part, le support d'information ou d’enregistrement peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par lien radio, par lien optique sans fil ou par d'autres moyens.On the other hand, the information or recording 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 link, by wireless optical link or by other means.
Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet.The program according to the invention can in particular be downloaded from an Internet-type network.
Alternativement, le support d'information ou d’enregistrement peut être un circuit intégré dans lequel un programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution des procédés de sélection, de gestion, et de communication selon l’invention.Alternatively, the information or recording medium may be an integrated circuit in which a program is incorporated, the circuit being adapted to execute or to be used in the execution of the selection, management, and communication methods according to the invention.
Selon un quatrième aspect, l’invention vise également un système comprenant :
Les deux dispositifs de communication peuvent être le dispositif à l’origine de la communication et le dispositif distant avec lequel la communication est établie. En variante, l’un des dispositifs peut être un proxy conforme à l’invention.The two communication devices may be the device initiating the communication and the remote device with which the communication is established. Alternatively, one of the devices may be a proxy according to the invention.
On peut également envisager, dans d'autres modes de réalisation, que les procédés de sélection, de gestion et de communication, le proxy, le contrôleur réseau, les dispositifs de communication et le système selon l’invention présentent en combinaison tout ou partie des caractéristiques précitées.It may also be envisaged, in other embodiments, that the selection, management and communication methods, the proxy, the network controller, the communication devices and the system according to the invention present in combination all or part of the aforementioned characteristics.
D’autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins annexés qui en illustrent un exemple de réalisation dépourvu de tout caractère limitatif. Sur les figures :
Other characteristics and advantages of the present invention will emerge from the description given below, with reference to the appended drawings which illustrate an exemplary embodiment thereof without any limiting character. In the figures:
La
Aucune limitation n’est attachée à la nature des réseaux de communication NW1,…, NWN. Il peut s’agir par exemple de réseaux mobiles 5G, de réseaux SD-WAN, de réseaux mettant en œuvre une architecture SDN ou NFV, etc., et qui utilisent, de façon connue en soi, des plans de contrôle et de données séparés.There are no limitations on the nature of the NW1,…, NWN communication networks. These may be, for example, 5G mobile networks, SD-WAN networks, networks implementing an SDN or NFV architecture, etc., and which use, in a manner known per se, separate control and data planes.
Un même réseau NWn, n=1,…,N, peut être segmenté en plusieurs réseaux distincts (on parle également de « segments de réseau »), qui composent autant de domaines (non représentés sur la
Ainsi, une tranche réseau utilisée pour fournir un service via un réseau NWn, n=1,…,N peut s’étendre sur plusieurs domaines et être constituée de plusieurs tranches réseau « locales » déployées dans les différents domaines. La façon de concevoir et de déployer des tranches réseau pour offrir des services est connue en soi et n’est pas décrite en détail ici. A titre illustratif, le document de K.G. Szarkowicz intitulé “A Realization of IETF Network Slices for 5G Networks Using Current IP/MPLS Technologies”, draft-ietf-teas-5g-ns-ip-mpls, publié par l’IETF le 27 juin 2023, décrit une telle façon pour un réseau IP/MPLS (exemple de réseau de transport).Thus, a network slice used to provide a service via an NWn network, n=1,…,N can span multiple domains and consist of multiple “local” network slices deployed in the different domains. How to design and deploy network slices to provide services is known per se and is not described in detail here. As an illustration, the document by K.G. Szarkowicz entitled “A Realization of IETF Network Slices for 5G Networks Using Current IP/MPLS Technologies”, draft-ietf-teas-5g-ns-ip-mpls, published by the IETF on June 27, 2023, describes such a way for an IP/MPLS network (example of a transport network).
Une telle tranche réseau s’étendant sur plusieurs domaines est dite « multi-domaines » (ou « stitched slice » ou encore « hierarchical slice » en anglais). Des interfaces de raccordement (ou « Attachment circuits » en anglais) sont prévues entre les tranches réseau locales et gérées en utilisant par exemple des mécanismes tels que décrits dans le document de M. Boucadair et al. intitulé « YANG Data Models for ‘Attachment Circuits’-as-a-Service (ACaas) », draft-boro-opsawg-teas-attachment-circuit-07, publié le 10 juillet 2023 par l’IETF. L’association entre les tranches réseau locales déployées dans les différents domaines et une tranche réseau multi-domaines est typiquement réalisé dans le plan de contrôle, à la périphérie de chaque domaine.Such a network slice spanning several domains is called “multi-domain” (or “stitched slice” or “hierarchical slice” in English). Connection interfaces (or “Attachment circuits” in English) are provided between the local and managed network slices using, for example, mechanisms such as those described in the document by M. Boucadair et al. entitled “YANG Data Models for ‘Attachment Circuits’-as-a-Service (ACaas)”, draft-boro-opsawg-teas-attachment-circuit-07, published on July 10, 2023 by the IETF. The association between the local network slices deployed in the different domains and a multi-domain network slice is typically carried out in the control plane, at the edge of each domain.
Il convient de noter que les tranches réseau locales à chaque domaine ne s’appuient pas nécessairement sur les mêmes technologies. Par exemple :
En outre, chaque tranche réseau (locale ou multi-domaines) peut impliquer une ou plusieurs fonctions service (ou « Service Functions » en anglais) aussi appelées fonctions réseau (ou « Network Functions » en anglais) dans le contexte 3GPP. De telles fonctions service/réseau sont par exemple des fonctions stations de base ou gNB (pour « gNodeB » en anglais), des fonctions du plan utilisateur ou UPF (pour « User Plane Function » en anglais), des fonctions de marquage, de classification et d’ordonnancement du trafic, etc. Une même fonction service/réseau peut être fournie par une ou plusieurs instances de service (ou « Service Fonction Instances » en anglais) ou instances de fonctions réseau. Des chaînes de service ou SFC (pour « Service Function Chains » en anglais) peuvent être mises en place afin de faciliter l’acheminement de trafics de différentes natures et présentant des profils différents pour les besoins de la réalisation (c’est-à-dire conception et du déploiement) d’une tranche réseau ou au sein d’une tranche réseau.In addition, each network slice (local or multi-domain) may involve one or more service functions (or "Service Functions" in English) also called network functions (or "Network Functions" in English) in the 3GPP context. Such service/network functions are for example base station functions or gNB (for "gNodeB" in English), user plane functions or UPF (for "User Plane Function" in English), traffic marking, classification and scheduling functions, etc. The same service/network function may be provided by one or more service instances (or "Service Function Instances" in English) or network function instances. Service chains or SFCs (for "Service Function Chains" in English) may be set up to facilitate the routing of traffic of different natures and having different profiles for the needs of the realization (i.e. design and deployment) of a network slice or within a network slice.
Dans l’exemple de la
Conformément à l’invention, le système 1 comprend au moins deux dispositifs de communication UE1 et UE2, conformes à l’invention. Dans le mode de réalisation, ces deux dispositifs de communication UE1 et UE2 sont des équipements utilisateurs (ou UE) multi-interfaces, susceptibles d’être connectés à plusieurs réseaux d’accès comme par exemple un réseau WLAN et un réseau mobile cellulaire 5G. On suppose que les dispositifs de communication UE1 et UE2 utilisent le protocole de transport TCP et son option MPTCP pour la gestion de chemins multiples établis le cas échéant via leurs multiples interfaces. Les dispositifs de communication UE1 et UE2 peuvent être des téléphones intelligents (ou « smartphones » en anglais), des ordinateurs personnels, des serveurs, etc. Ils peuvent accéder, via les réseaux d’accès auxquels ils sont connectés, à un ou plusieurs fournisseurs SSP de services reposant sur des tranches réseau auprès desquels ils ont souscrit à un ou plusieurs services. Dans l’exemple envisagé dans la
Ces hypothèses ne sont pas toutefois limitatives en soi, et l’invention peut s’appliquer à d’autres dispositifs de communication, logiciels ou matériels, fixes ou mobiles, comme par exemple à une passerelle résidentielle ou CPE, à une instance de service, à un proxy, etc. Ces dispositifs de communication pouvant être mono ou multi-interfaces, utiliser d’autres protocoles de transport tels que QUIC et le cas échéant son extension MPQUIC, ou DCCP et le cas échéant son extension MPDCCP, etc. L’homme du métier n’aura aucune difficulté à transposer ce qui est décrit ci-après en référence à des segments TCP à d’autres types de paquets de données ou plus généralement à d’autres messages selon le protocole de transport envisagé.These assumptions are not, however, limiting in themselves, and the invention can be applied to other communication devices, software or hardware, fixed or mobile, such as for example a residential gateway or CPE, a service instance, a proxy, etc. These communication devices can be single or multi-interface, use other transport protocols such as QUIC and where appropriate its MPQUIC extension, or DCCP and where appropriate its MPDCCP extension, etc. Those skilled in the art will have no difficulty in transposing what is described below with reference to TCP segments to other types of data packets or more generally to other messages according to the transport protocol envisaged.
Dans le mode de réalisation, le système 1 comprend également au moins un proxy ou dispositif relais, P1, …, PM, M désignant un entier supérieur ou égal à 1, conformes à l’invention. Ces proxies P1,…,PM se trouvent typiquement dans les réseaux d’accès auxquels les dispositifs de communication UE1 et UE2 sont connectés ou sont joignables via de tels réseaux d’accès. En variante, ils peuvent être hébergés dans des infrastructures cloud publiques, privées ou hybrides, pouvant exploiter (ou pas) des ressources MEC (pour « Multi-access Edge Computing » en anglais) de réseaux de périphérie. Ils intègrent, dans l’exemple de la
Un tel concentrateur permet, de façon connue en soi, d’établir des communications simples ou à chemins multiples entre deux dispositifs de communication, y compris lorsque l’un et/ou l’autre de ces dispositifs de communication ne disposent pas de capacités MIF et/ou ne supportent pas de protocoles de transport à chemins multiples. L’utilisation du protocole Convert permet avantageusement l’établissement d’une connexion TCP qui permet d’échanger immédiatement des données utiles entre les deux dispositifs de communication via le concentrateur sans attendre le résultat de l’exécution du mécanisme « 3-way handshake » (3WHC) caractéristique du protocole TCP (c’est-à-dire que les dispositifs de communication peuvent échanger des données utiles dès l’échange d’un premier message visant à établir une connexion entre les dispositifs de communication) ; de façon connue en soi, dans le contexte du protocole TCP, l’établissement d’une connexion se fait au moyen du mécanisme 3WHC en trois étapes qui s’appuie sur l’échange de segments (c’est-à-dire de messages) TCP SYN, SYN+ACK et ACK.Such a concentrator makes it possible, in a manner known per se, to establish single or multi-path communications between two communication devices, including when one and/or the other of these communication devices do not have MIF capabilities and/or do not support multi-path transport protocols. The use of the Convert protocol advantageously allows the establishment of a TCP connection which makes it possible to immediately exchange useful data between the two communication devices via the concentrator without waiting for the result of the execution of the “3-way handshake” (3WHC) mechanism characteristic of the TCP protocol (i.e. the communication devices can exchange useful data as soon as a first message is exchanged to establish a connection between the communication devices); in a manner known per se, in the context of the TCP protocol, the establishment of a connection is done by means of the three-step 3WHC mechanism which is based on the exchange of TCP SYN, SYN+ACK and ACK segments (i.e. messages).
Il convient de noter que le protocole de conversion « 0-RTT Convert Protocol » est un protocole de conversion générique qui peut être appliqué pour d’autres protocoles de transport que le protocole TCP et son option MPTCP. L’utilisation de ce protocole est avantageuse ici car elle permet de véhiculer dans la charge utile des segments TCP des données applicatives et des données de contrôle. Bien entendu, ces différentes hypothèses ne sont pas limitatives en soi, et d’autres configurations du système 1 peuvent être envisagées. On peut envisager d’utiliser d’autres protocoles que le protocole Convert comme par exemple MASQUE (pour « Multiplexed Application Substrate over QUIC Encryption » en anglais) ou SOCKS, et/ou de véhiculer les données de contrôle relatives à l’invention dans un canal dédié. On peut également envisager un mode de réalisation dans lequel uniquement des communications simples (c’est-à-dire établies sur un seul chemin) sont mises en œuvre et/ou les proxies P1,…,PM n’agrègent pas plusieurs sous-connexions (chemins) d’un même dispositif ou ne les utilisent pas.It should be noted that the “0-RTT Convert Protocol” conversion protocol is a generic conversion protocol that can be applied for transport protocols other than the TCP protocol and its MPTCP option. The use of this protocol is advantageous here because it allows application data and control data to be carried in the payload of the TCP segments. Of course, these different hypotheses are not limiting in themselves, and other configurations of the system 1 can be envisaged. It is possible to envisage using protocols other than the Convert protocol, such as MASQUE (for “Multiplexed Application Substrate over QUIC Encryption”) or SOCKS, and/or to carry the control data relating to the invention in a dedicated channel. It is also possible to envisage an embodiment in which only simple communications (i.e. established on a single path) are implemented and/or the proxies P1,…,PM do not aggregate several sub-connections (paths) of the same device or do not use them.
Dans le mode de réalisation décrit ici, les dispositifs de communication UE1 et UE2, les proxies P1,…, PM et les contrôleurs réseau NSC1,…, NSCN ont chacun l’architecture matérielle d’un ordinateur 2 telle qu’illustrée à la
Ce programme, noté PROG-P lorsque l’architecture matérielle de l’ordinateur 2 est celle d’un proxy conforme à l’invention tel que les proxies P1,…, PM, est enregistré dans la mémoire non volatile NVM et comporte des instructions définissant les principales étapes d’un procédé de sélection selon l’invention tel qu’il est mis en œuvre par chaque proxy Pm, m=1,…,M. Il définit plus spécifiquement les modules fonctionnels de chacun des proxies Pm, m=1,…,M (représentés sur la
Dans le mode de réalisation décrit ici, le programme PROG-P définit également les modules fonctionnels suivants de chaque proxy Pm, m=1,…,M :
Le fonctionnement des modules 3A à 3E d’un proxy Pm, m=1,…,M est décrit plus en détail ultérieurement en référence aux étapes du procédé de sélection.The operation of modules 3A to 3E of a proxy Pm, m=1,…,M is described in more detail later with reference to the steps of the selection process.
Lorsque l’architecture matérielle de l’ordinateur 2 est celle d’un dispositif de communication conforme à l’invention (dans l’exemple envisagé, du dispositif UEi avec i=1 ou 2), le programme d’ordinateur stocké dans la mémoire NVM est un programme PROG-UE, comportant des instructions définissant les principales étapes d’un procédé de communication selon l’invention tel qu’il est mis en œuvre par le dispositif de communication en question. Il définit plus spécifiquement les modules fonctionnels du dispositif de communication, qui s’appuient et/ou commandent tout ou partie des éléments PROC, MEM, ROM, NVM, et COM de l’ordinateur 2 cités précédemment. Ces modules fonctionnels comprennent, dans le mode de réalisation décrit ici, pour le dispositif de communication considéré (par exemple UE1, respectivement UE2) :
Dans le mode de réalisation décrit ici, le programme PROG-UE définit également
Le fonctionnement des modules 3A à 3E d’un dispositif de communication selon l’invention est décrit plus en détail ultérieurement en référence aux étapes du procédé de communication.The operation of the modules 3A to 3E of a communication device according to the invention is described in more detail later with reference to the steps of the communication method.
Lorsque l’architecture matérielle de l’ordinateur 2 est celle d’un contrôleur réseau conforme à l’invention, par exemple un contrôleur NSCn, n=1,…,N du réseau NWn dans l’exemple envisagé ici, le programme d’ordinateur stocké dans la mémoire NVM est un programme PROG-NSC, comportant des instructions définissant les principales étapes d’un procédé de gestion selon l’invention tel qu’il est mis en œuvre par le contrôleur réseau NSCn en question. Il définit plus spécifiquement les modules fonctionnels du contrôleur réseau NSCn (représentés uniquement sur la
Le fonctionnement des modules 5A et 5B d’un contrôleur NSCn, n=1,…,N est décrit plus en détail ultérieurement en référence aux étapes du procédé de gestion.The operation of modules 5A and 5B of an NSCn controller, n=1,…,N is described in more detail later with reference to the steps of the management method.
Nous allons maintenant décrire, en référenceaux figures 3 à 5, les principales étapes des procédés mis en œuvre par chacun des dispositifs précités (dispositifs de communication, proxies et contrôleurs réseau) conformes à l’invention dans le mode de réalisation de l’invention.We will now describe, with referenceto figures 3 to 5 , the main steps of the methods implemented by each of the aforementioned devices (communication devices, proxies and network controllers) in accordance with the invention in the embodiment of the invention.
On se place à titre illustratif, pour décrire ce mode de réalisation, dans le contexte de la communication COM entre les dispositifs de communication UE1 et UE2, introduite précédemment, et au cours de laquelle des données applicatives relatives au service « S » fourni par le fournisseur de services SSP1 sont échangées entre les dispositifs de communication UE1 et UE2 impliqués dans la communication COM. Dans l’exemple envisagé ici où les dispositifs de communication UE1 et UE2 sont multi-interfaces et implémentent le protocole TCP et son option MPTCP, la communication COM peut s’appuyer sur une ou plusieurs connexions TCP « simples » entre les dispositifs de communication UE1 et UE2, empruntant un ou plusieurs chemins (ou liens) de communication. On parle d’agrégation de liens lorsque la communication COM résulte de l’agrégation de plusieurs connexions TCP simples ; la communication COM est alors dite à chemins multiples. On note que l’agrégation de liens peut en variante intervenir au niveau du concentrateur embarqué dans un proxy Pm, m=1,… M.For illustrative purposes, to describe this embodiment, we consider the context of the COM communication between the communication devices UE1 and UE2, introduced previously, and during which application data relating to the service “S” provided by the service provider SSP1 are exchanged between the communication devices UE1 and UE2 involved in the COM communication. In the example envisaged here where the communication devices UE1 and UE2 are multi-interface and implement the TCP protocol and its MPTCP option, the COM communication can rely on one or more “simple” TCP connections between the communication devices UE1 and UE2, using one or more communication paths (or links). We speak of link aggregation when the COM communication results from the aggregation of several simple TCP connections; the COM communication is then said to have multiple paths. It should be noted that the link aggregation can alternatively take place at the level of the concentrator embedded in a proxy Pm, m=1,… M.
Dans ce contexte, lesfigures 3A et 3Breprésentent les principales étapes du procédé de communication selon l’invention telles qu’elles sont mises en œuvre respectivement par les dispositifs de communication UE1 et UE2 ; la
En référence aux figures 3A et 3B, chaque dispositif de communication UE1, UE2 négocie avec chaque fournisseur de services SSP avec lequel il est connecté une liste de tranches réseau qu’il est susceptible d’utiliser pour envoyer ou recevoir du trafic (c’est-à-dire des données applicatives) lorsqu’il accède à un service donné (étape E10). Dans l’exemple envisagé ici, les dispositifs UE1 et UE2 négocient notamment avec le fournisseur de services SSP1, une liste de tranches réseau qu’ils peuvent utiliser pour accéder aux services auxquels ils ont souscrit auprès du fournisseur de services SSP1, et en particulier au service S, et leur raccordement à ces tranches réseau. Cette liste identifie les tranches réseau en question ainsi que les types de ces tranches réseau. Par exemple, on considère ici les types de tranches réseau correspondant aux valeurs SST définies dans le document 3GPP TS 23.501 cité précédemment. On désigne par LIST1 et LIST2 les listes de tranches réseau obtenues respectivement par les dispositifs de communication UE1 et UE2.With reference to Figures 3A and 3B, each communication device UE1, UE2 negotiates with each service provider SSP with which it is connected a list of network slices that it is likely to use to send or receive traffic (i.e. application data) when it accesses a given service (step E10). In the example envisaged here, the devices UE1 and UE2 negotiate in particular with the service provider SSP1, a list of network slices that they can use to access the services to which they have subscribed with the service provider SSP1, and in particular to the service S, and their connection to these network slices. This list identifies the network slices in question as well as the types of these network slices. For example, we consider here the types of network slices corresponding to the SST values defined in the 3GPP TS 23.501 document cited above. We designate LIST1 and LIST2 the lists of network slices obtained respectively by the communication devices UE1 and UE2.
En variante, ces listes peuvent être communiquées aux dispositifs de communication UE1 et UE2 par les réseaux auprès desquels les dispositifs de communication UE1 et UE2 sont enregistrés. Selon une autre variante encore, si l’un de dispositifs de communication UE1 ou UE2 est un décodeur TV ou une « set-top box », une telle liste peut être obtenue auprès d’une plateforme gérant le décodeur ou la set-top-box, connectée au réseau, et exploitée par le fournisseur du service (par ex. un service IPTV ou VoD pour « Video on Demand »).Alternatively, these lists may be communicated to the communication devices UE1 and UE2 by the networks with which the communication devices UE1 and UE2 are registered. According to yet another variant, if one of the communication devices UE1 or UE2 is a TV decoder or a set-top box, such a list may be obtained from a platform managing the decoder or the set-top box, connected to the network, and operated by the service provider (e.g. an IPTV or VoD service for “Video on Demand”).
Puis, dans le mode de réalisation décrit ici, chaque dispositif de communication UE1, UE2 découvre, par l’intermédiaire de son module 4C de découverte, les proxies conformes à l’invention se trouvant dans un réseau auquel il est connecté ou joignables via un tel réseau et raccordés à au moins une tranche réseau à laquelle est raccordé le dispositif de communication UE1, UE2 (étape E20).Then, in the embodiment described here, each communication device UE1, UE2 discovers, via its discovery module 4C, the proxies conforming to the invention located in a network to which it is connected or reachable via such a network and connected to at least one network slice to which the communication device UE1, UE2 is connected (step E20).
On suppose, dans le mode de réalisation décrit ici, que les proxies Pm, m=1,…,M sont configurés (ou déclarés) au niveau de chaque dispositif de communication UE1, UE2 explicitement par l’utilisateur du dispositif de communication UE1, UE2 ou par l’opérateur d’un réseau d’accès auquel le dispositif de communication UE1, UE2 est connecté. Chaque dispositif de communication UE1, UE2 obtient alors la liste des tranches réseau auxquelles est raccordé chaque proxy Pm, m=1,…,M en établissant une connexion avec lui, via une tranche réseau définie par défaut.It is assumed, in the embodiment described here, that the proxies Pm, m=1,…,M are configured (or declared) at each communication device UE1, UE2 explicitly by the user of the communication device UE1, UE2 or by the operator of an access network to which the communication device UE1, UE2 is connected. Each communication device UE1, UE2 then obtains the list of network slices to which each proxy Pm, m=1,…,M is connected by establishing a connection with it, via a network slice defined by default.
A cet effet, dans le mode de réalisation décrit ici, le dispositif de communication UE1, UE2 (et plus particulièrement son module 4C de découverte) utilise pour communiquer avec le proxy Pm le protocole Convert complété par deux nouvelles extensions définies pour les besoins de l’invention permettant d’échanger entre les dispositifs de communication UE1, UE2 et le proxy Pm diverses informations (et plus particulièrement ici, diverses informations de contrôle, c’est-à-dire des données caractéristiques d’un échange qui se situe dans le plan de contrôle telles qu’une route empruntant une tranche réseau). Plus spécifiquement, une première extension, appelée ici PC-SC (pour « Proxy Control Slalom Capable » en anglais) permet de signaler la capacité d’un dispositif (dispositif de communication UE1, UE2 ou proxy Pm) à supporter la procédure SLALOM ; une deuxième extension, appelée ici PC-SS (pour « Proxy Control Slice Set » en anglais), permet de signaler les tranches réseau auxquelles le dispositif en question est raccordé. Conformément au protocole Convert, ces extensions prennent ici la forme de messages au format TLV. Dans la suite, les messages de contrôle Convert sont désignés indifféremment par « TLV », « message TLV », ou encore « message au format TLV ». A noter qu’un ou plusieurs messages TLV Convert peuvent être inclus dans un même message TLV.To this end, in the embodiment described here, the communication device UE1, UE2 (and more particularly its discovery module 4C) uses to communicate with the proxy Pm the Convert protocol supplemented by two new extensions defined for the needs of the invention making it possible to exchange between the communication devices UE1, UE2 and the proxy Pm various information (and more particularly here, various control information, i.e. data characteristic of an exchange which is located in the control plane such as a route using a network slice). More specifically, a first extension, called here PC-SC (for “Proxy Control Slalom Capable” in English) makes it possible to signal the capacity of a device (communication device UE1, UE2 or proxy Pm) to support the SLALOM procedure; a second extension, called here PC-SS (for “Proxy Control Slice Set” in English), makes it possible to signal the network slices to which the device in question is connected. In accordance with the Convert protocol, these extensions take the form of messages in TLV format. In the following, Convert control messages are referred to interchangeably as "TLVs", "TLV messages", or "TLV format messages". Note that one or more Convert TLV messages can be included in a single TLV message.
La figure 6A illustre un exemple de message TLV PC-SC. Dans l’exemple illustré par la figure 6A, le champ « Value » du TLV PC-SC est valorisé à « 0 », toutefois toute autre valeur peut être envisagée en variante. La présence du TLV PC-SC dans un message envoyé par le dispositif considéré est suffisant en soi pour indiquer la capacité du dispositif à supporter la procédure SLALOM.Figure 6A illustrates an example of a PC-SC TLV message. In the example illustrated by Figure 6A, the “Value” field of the PC-SC TLV is set to “0”, however any other value can be considered as an alternative. The presence of the PC-SC TLV in a message sent by the device in question is sufficient in itself to indicate the device’s ability to support the SLALOM procedure.
La figure 6Breprésente un exemple de message TLV PC-SS pouvant être inséré dans un message envoyé par un dispositif de communication UE1, UE2 à un proxy Pm (m=1,..,M) en vue d’obtenir des informations représentatives des tranches réseau auxquelles le proxy Pm est raccordé. La partie « Value » du message est alors valorisée à « 0 » (ou à toute autre valeur prédéfinie).Figure 6Brepresents an example of a PC-SS TLV message that can be inserted into a message sent by a communication device UE1, UE2 to a proxy Pm (m=1,..,M) in order to obtain information representative of the network slices to which the proxy Pm is connected. The “Value” part of the message is then set to “0” (or any other predefined value).
La figure 6Creprésente un exemple de message TLV PC-SS pouvant être inséré dans un message envoyé en réponse au dispositif de communication par le proxy Pm (par son module 3D d’annonce par exemple), suite à la réception du TLV PC-SS de la figure 6B. Sur la figure 6C, la première ligne L1 fournit le type de TLV (PC-SS), sa longueur, et le nombre d’ensembles de tranches réseau fournies (« Slice Set Count ») dans le TLV PC-SS, chaque ensemble correspondant à un type de tranches réseau (« Slice Type »). La deuxième ligne L2 indique le début du premier ensemble, « SID Count » désignant le nombre de tranches réseau dans le premier ensemble, et « Slice Type » le type des tranches réseau du premier ensemble. Les lignes suivantes référencées par SID#1, …, SID#n, … fournissent les informations relatives aux tranches réseau du premier ensemble, identifiées respectivement par les identifiants de tranches réseau ou SID (pour « Slice IDentifier » en anglais). La ligne L3 indique le début d’un second ensemble de tranches réseau, dont les informations sont fournies dans les lignes succédant à la ligne L3, identifiées par les identifiants SID#1, …, SID#m, ….Figure 6Crepresents an example of a PC-SS TLV message that can be inserted into a message sent in response to the communication device by the proxy Pm (by its 3D announcement module for example), following receipt of the PC-SS TLV of Figure 6B. In Figure 6C, the first line L1 provides the type of TLV (PC-SS), its length, and the number of sets of network slices provided (“Slice Set Count”) in the PC-SS TLV, each set corresponding to a type of network slices (“Slice Type”). The second line L2 indicates the start of the first set, “SID Count” designating the number of network slices in the first set, and “Slice Type” the type of network slices in the first set. The following lines referenced by SID#1, …, SID#n, … provide the information relating to the network slices of the first set, identified respectively by the network slice identifiers or SID (for “Slice IDentifier” in English). Line L3 indicates the start of a second set of network slices, information about which is provided in the lines following line L3, identified by the identifiers SID#1, …, SID#m, ….
On peut bien entendu envisager d’autres protocoles que le protocole Convert pour véhiculer les informations illustrées par les figures 6A à 6C.We can of course consider other protocols than the Convert protocol to convey the information illustrated by figures 6A to 6C.
Lesfigures 7A et 7Billustrent des exemples d’utilisation des messages au format TLV PC-SC et TLV PC-SS s’appuyant sur le protocole TCP. Dans ces exemples, les TLV PC-SC et PC-SS sont insérés dans la charge utile de segments TCP, et plus particulièrement de segments SYN, SYN+ACK et ACK échangés lors de l’établissement d’une connexion. Ce ne sont toutefois que des exemples illustratifs et non limitatifs en soi.Figures 7A and 7B illustrate examples of using PC-SC TLV and PC-SS TLV messages based on the TCP protocol. In these examples, the PC-SC and PC-SS TLVs are inserted into the payload of TCP segments, and more specifically SYN, SYN+ACK and ACK segments exchanged during connection establishment. However, these are only illustrative examples and are not limiting in themselves.
Ainsi, sur lafigure 7A, le TLV PC-SC est inséré dans un segment TCP SYN envoyé au proxy Pm par le dispositif de communication UE1, UE2 pour établir une connexion avec lui et lui signaler qu’il supporte la procédure SLALOM. Dans un mode de réalisation particulier, le dispositif de communication UE1, UE2 peut également signaler à cette occasion au proxy Pm, via l’option MPTCP MP_CAPABLE, qu’il supporte les communications à chemins multiples. Si le proxy Pm supporte également la procédure SLALOM, il répond au dispositif de communication UE1, UE2 en insérant un TLV PC-SC dans un segment TCP SYN+ACK. S’ensuit un segment ACK envoyé par le dispositif de communication UE1, UE2 au proxy Pm accusant réception du segment SYN+ACK (et du TLV PC-SC) envoyé par le proxy Pm. Si le proxy Pm ne supporte pas la procédure SLALOM, il n’insère pas de TLV PC-SC dans son segment SYN+ACK. Suite à l’établissement de la connexion entre le dispositif de communication UE1, UE2 et le proxy Pm, le dispositif de communication UE1,UE2 envoie au proxy Pm dans un segment TCP (noté généralement TCP-PKT) un TLV PC-SS tel que représenté par la figure 6B avec le champ Value valorisée à « 0 » (noté PC-SS(0) sur la figure 7A), demandant au proxy Pm les tranches réseau auxquelles il est raccordé. Le proxy Pm répond en insérant un TLV PC-SS tel que représenté à la figure 6C et identifiant les différentes tranches réseau auxquelles il est raccordé (noté PC-SS(Pm) sur la figure 7A), dans un segment TCP. Puis le dispositif UE1, UE2 clôture la connexion.So, on theFigure 7A, the PC-SC TLV is inserted into a TCP SYN segment sent to the proxy Pm by the communication device UE1, UE2 to establish a connection with it and to signal to it that it supports the SLALOM procedure. In a particular embodiment, the communication device UE1, UE2 can also signal on this occasion to the proxy Pm, via the MPTCP option MP_CAPABLE, that it supports multipath communications. If the proxy Pm also supports the SLALOM procedure, it responds to the communication device UE1, UE2 by inserting a PC-SC TLV into a TCP SYN+ACK segment. This is followed by an ACK segment sent by the communication device UE1, UE2 to the proxy Pm acknowledging receipt of the SYN+ACK segment (and the PC-SC TLV) sent by the proxy Pm. If the proxy Pm does not support the SLALOM procedure, it does not insert a PC-SC TLV into its SYN+ACK segment. Following the establishment of the connection between the communication device UE1, UE2 and the proxy Pm, the communication device UE1, UE2 sends to the proxy Pm in a TCP segment (generally denoted TCP-PKT) a PC-SS TLV as represented by figure 6B with the Value field set to “0” (denoted PC-SS(0) in figure 7A), asking the proxy Pm for the network slices to which it is connected. The proxy Pm responds by inserting a PC-SS TLV as represented in figure 6C and identifying the different network slices to which it is connected (denoted PC-SS(Pm) in figure 7A), in a TCP segment. Then the device UE1, UE2 closes the connection.
Lafigure 7B illustre une variante de réalisation dans laquelle le proxy Pm envoie au dispositif de communication UE1, UE2 un TLV PC-SS identifiant les tranches réseau auxquelles il est raccordé (c’est-à-dire tel que représenté à la figure 6C), dans le segment SYN+ACK qu’il envoie au dispositif de communication UE1, UE2 lors de l’établissement de la connexion. La présence d’un tel TLV PC-SS indique implicitement que le proxy Pm supporte la procédure SLALOM. Puis le dispositif UE1, UE2 clôture la connexion.Figure 7B illustrates an alternative embodiment in which the proxy Pm sends to the communication device UE1, UE2 a PC-SS TLV identifying the network slices to which it is connected (i.e. as shown in Figure 6C), in the SYN+ACK segment that it sends to the communication device UE1, UE2 when establishing the connection. The presence of such a PC-SS TLV implicitly indicates that the proxy Pm supports the SLALOM procedure. Then the device UE1, UE2 closes the connection.
Dans une variante de réalisation, les messages PC-SC et PC-SS peuvent être échangés entre le module 4C de découverte du dispositif de communication UE1, UE2 et le module 3D d’annonce du proxy Pm dans d’autres segments TCP que les segments SYN et SYN+ACK, ou en utilisant un autre protocole de transport que TCP. Dans une autre variante encore, les informations de contrôle relatives au support de la procédure SLALOM et aux tranches réseau auxquelles le proxy Pm est raccordé peuvent être échangés entre chaque dispositif de communication UE1, UE2 et le proxy Pm par l’intermédiaire d’un canal de contrôle dédié.In an alternative embodiment, the PC-SC and PC-SS messages can be exchanged between the 4C discovery module of the communication device UE1, UE2 and the 3D announcement module of the proxy Pm in other TCP segments than the SYN and SYN+ACK segments, or using a transport protocol other than TCP. In yet another alternative, the control information relating to the support of the SLALOM procedure and to the network slices to which the proxy Pm is connected can be exchanged between each communication device UE1, UE2 and the proxy Pm via a dedicated control channel.
Dans un autre mode de réalisation, la découverte des proxies par les dispositifs de communication UE1, UE2 est réalisée en utilisant le mécanisme DNS SVCB décrit dans le document de B. Schwartz et al. édité par l’IETF, intitulé « Service binding and parameter specification via the DNS », draft-ietf-dnsop-svcb-https-12, 11 mars 2023, . Ce mécanisme définit un type d’enregistrement SVCB RR (pour « Resource Record SVBC » en anglais) au niveau des serveurs de noms utilisés lors de la résolution de noms (aussi appelés plus communément serveurs DNS pour « Domain Name System » en anglais) offrant la possibilité à un dispositif client d’obtenir, lorsqu’il interroge un serveur DNS, diverses informations permettant de faciliter l’accès à un service, et notamment des informations de configuration du protocole de transport à utiliser pour accéder à ce service (cette information est typiquement indiquée dans le paramètre de service « ALPN » d’un enregistrement SVBC RR). On peut envisager d’introduire un nouveau champ SvcParam dans l’enregistrement SCVB RR d’un proxy Pm, m=1,…,M, appelé par exemple ici, à titre illustratif, « slicehint », et défini pour les besoins de l’invention, dans lequel est annoncée la liste des tranches réseau auxquelles le proxy Pm est raccordé. Cette liste peut comprendre par exemple les identifiants et/ou les types de ces tranches réseau.In another embodiment, the discovery of proxies by the communication devices UE1, UE2 is carried out using the DNS SVCB mechanism described in the document by B. Schwartz et al. published by the IETF, entitled “Service binding and parameter specification via the DNS”, draft-ietf-dnsop-svcb-https-12, March 11, 2023. This mechanism defines a type of SVCB RR record (for “Resource Record SVBC” in English) at the level of the name servers used during name resolution (also more commonly called DNS servers for “Domain Name System” in English) offering the possibility to a client device to obtain, when it queries a DNS server, various information making it possible to facilitate access to a service, and in particular configuration information of the transport protocol to be used to access this service (this information is typically indicated in the “ALPN” service parameter of an SVBC RR record). It is possible to consider introducing a new SvcParam field in the SCVB RR record of a proxy Pm, m=1,…,M, called for example here, for illustration purposes, “slicehint”, and defined for the purposes of the invention, in which the list of network slices to which the proxy Pm is connected is announced. This list may include for example the identifiers and/or the types of these network slices.
Il convient de noter que les dispositifs de communication UE1 et UE2 peuvent découvrir lors de l’étape E20 les mêmes proxies ou des proxies différents. Par souci de simplification ici, on suppose que les mêmes proxies Pm, m=1,…,M sont découverts par les deux dispositifs de communication.It should be noted that the communication devices UE1 and UE2 can discover the same proxies or different proxies during step E20. For the sake of simplification here, it is assumed that the same proxies Pm, m=1,…,M are discovered by both communication devices.
Une fois les proxies Pm, m=1,…,M et les tranches réseau auxquels ils sont raccordés découverts par le dispositif de communication UE1, UE2, celui-ci (via par exemple son module 4C de découverte) mémorise les informations obtenues dans un cache, et effectue un filtrage parmi les proxies découverts pour ne retenir que celui ou ceux qui mettent en œuvre un protocole de communication PROT donné utilisé par le dispositif de communication UE1, UE2, et qui sont raccordés à une tranche réseau à laquelle lui-même est raccordé.Once the proxies Pm, m=1,…,M and the network slices to which they are connected have been discovered by the communication device UE1, UE2, the latter (via for example its discovery module 4C) stores the information obtained in a cache, and performs a filtering among the discovered proxies to retain only the one or ones which implement a given PROT communication protocol used by the communication device UE1, UE2, and which are connected to a network slice to which it is itself connected.
Par exemple ici, le protocole de communication PROT est un protocole de transport déterminé, à savoir le protocole TCP et son option MPTCP, supporté par le dispositif de communication UE1, UE2. Mais comme évoqué précédemment, d’autres protocoles de transport, applicatifs ou œuvrant au niveau de la couche IP peuvent être envisagés en variante moyennant la définition d’extensions appropriées pour la mise en œuvre de l’invention. De telles extensions peuvent prendre différentes formes selon le protocole considéré. Par exemple, pour le protocole TCP/MPTCP elles peuvent prendre la forme de nouvelles options ou nouveaux « flags » TCP. Pour le protocole QUIC/MPQUIC, elles peuvent prendre la forme d’un nouveau paramètre de transport, d’une nouvelle trame QUIC, d’un message d’erreur, etc. Lorsque le protocole Convert est considéré en plus du protocole TCP, de nouveaux messages au format TLV peuvent être définis. L’homme du métier transposera aisément les extensions décrites ici pour la mise en œuvre de l’invention dans l’exemple particulier des protocoles Convert, TCP et de son option MPTCP, à d’autres protocoles de communication en tenant compte de leurs spécificités.For example, here, the PROT communication protocol is a specific transport protocol, namely the TCP protocol and its MPTCP option, supported by the communication device UE1, UE2. But as mentioned previously, other transport protocols, applications or those working at the IP layer level can be considered as a variant by defining appropriate extensions for implementing the invention. Such extensions can take different forms depending on the protocol considered. For example, for the TCP/MPTCP protocol they can take the form of new TCP options or new “flags”. For the QUIC/MPQUIC protocol, they can take the form of a new transport parameter, a new QUIC frame, an error message, etc. When the Convert protocol is considered in addition to the TCP protocol, new messages in TLV format can be defined. Those skilled in the art will easily transpose the extensions described here for the implementation of the invention in the particular example of the Convert, TCP protocols and its MPTCP option, to other communication protocols, taking into account their specificities.
Le filtrage opéré par le dispositif de communication UE1, UE2 peut être réalisé globalement, ou pour chaque communication, ou encore pour chaque service, le protocole PROT pouvant différer à chaque filtrage. En outre, le dispositif de communication UE1, UE2 peut maintenir des listes de proxies découverts par protocole (par exemple une liste de proxies pour le protocole de transport TCP/MPTCP, une pour le protocole de transport QUIC/MPQUIC) et sélectionner pour une communication un protocole PROT de transport donné et la liste de proxies correspondante.The filtering operated by the communication device UE1, UE2 can be carried out globally, or for each communication, or even for each service, the PROT protocol being able to differ for each filtering. In addition, the communication device UE1, UE2 can maintain lists of proxies discovered per protocol (for example a list of proxies for the TCP/MPTCP transport protocol, one for the QUIC/MPQUIC transport protocol) and select for a communication a given transport PROT protocol and the corresponding list of proxies.
On suppose maintenant que le dispositif de communication UE1 souhaite échanger des données applicatives lors d’une communication COM avec le dispositif de communication UE2 dans le cadre du service « S » (« données relatives au service « S » » au sens de l’invention), en utilisant le protocole PROT (PROT = TCP/MPTCP ici) et en s’appuyant sur la procédure SLALOM.It is now assumed that the communication device UE1 wishes to exchange application data during a COM communication with the communication device UE2 within the framework of the service “S” (“data relating to the service “S”” within the meaning of the invention), using the PROT protocol (PROT = TCP/MPTCP here) and relying on the SLALOM procedure.
Dans le mode de réalisation décrit ici, la procédure SLALOM est avantageusement déclenchée concomitamment à l’établissement de la connexion entre les dispositifs de communication UE1 et UE2, et certaines informations utiles à cette mise en œuvre sont véhiculées dans les messages échangés lors de cet établissement. Typiquement dans l’exemple du protocole TCP, de telles informations peuvent être véhiculées dans les segments TCP SYN, SYN+ACK et ACK échangés lors de la procédure en trois étapes « 3WHS » évoquée précédemment permettant d’établir une connexion, comme illustré dans un exemple parla
En référence à la figure 3A, le dispositif de communication UE1 sélectionne un proxy parmi les proxies découverts et filtrés lors de l’étape E20 supportant le protocole PROT, par exemple le proxy Pm0 (étape E30), puis envoie, via le proxy Pm0 sélectionné, une demande M1 d’établissement de connexion conformément au protocole PROT au dispositif de communication UE2 (étape E40). Ainsi, le proxy Pm0 se trouve sur le chemin des données applicatives relatives au service S (c’est-à-dire le plan de données) échangées lors de la communication COM entre les dispositifs de communication UE1 et UE2 impliqués dans la communication COM (il convient de noter que la demande M1 d’établissement de connexion peut, éventuellement déjà véhiculer des données applicatives relatives au service « S »).With reference to FIG. 3A, the communication device UE1 selects a proxy from among the proxies discovered and filtered during step E20 supporting the PROT protocol, for example the proxy Pm0 (step E30), then sends, via the selected proxy Pm0, a connection establishment request M1 in accordance with the PROT protocol to the communication device UE2 (step E40). Thus, the proxy Pm0 is on the path of the application data relating to the service S (i.e. the data plane) exchanged during the COM communication between the communication devices UE1 and UE2 involved in the COM communication (it should be noted that the connection establishment request M1 may, possibly already, convey application data relating to the service “S”).
La demande M1 de connexion est envoyée par le dispositif de communication UE1, par l’intermédiaire de son module 4D d’envoi, en utilisant une tranche réseau à laquelle le proxy Pm0 et le dispositif de communication UE1 sont tous les deux raccordés, et qui est adaptée au service « S » auquel le dispositif de communication UE1 souhaite accéder (le dispositif de communication UE1 sélectionne cette tranche réseau en fonction par exemple de son type et des contraintes associées au service « S », de façon connue en soi). Elle prend la forme ici d’un segment TCP comprenant l’option MPTCP supportée par le dispositif de communication UE1, et incluant dans sa charge utile, conformément au protocole Convert, un message au format TLV Connect de demande d’établissement d’une connexion avec le proxy Pm0. Le message Connect véhicule un TLV PC-SS tel qu’illustré par la figure 6C, référencé sur les figures par PC-SS(UE1), indiquant au proxy Pm0 les tranches réseau auxquelles le dispositif de communication UE1 est raccordé. Tout ou partie des éléments relatifs aux tranches réseau, indiqués dans le TLV PC-SS(UE1) peuvent avoir été fournis au dispositif de communication UE2 lors de l’étape E10, par exemple dans la liste LIST1.The connection request M1 is sent by the communication device UE1, via its sending module 4D, using a network slice to which the proxy Pm0 and the communication device UE1 are both connected, and which is adapted to the service “S” to which the communication device UE1 wishes to access (the communication device UE1 selects this network slice based, for example, on its type and the constraints associated with the service “S”, in a manner known per se). It takes the form here of a TCP segment comprising the MPTCP option supported by the communication device UE1, and including in its payload, in accordance with the Convert protocol, a message in the Connect TLV format requesting establishment of a connection with the proxy Pm0. The Connect message carries a PC-SS TLV as illustrated in FIG. 6C, referenced in the figures by PC-SS(UE1), indicating to the proxy Pm0 the network slices to which the communication device UE1 is connected. All or part of the elements relating to the network slices, indicated in the PC-SS(UE1) TLV may have been provided to the communication device UE2 during step E10, for example in the list LIST1.
Par ailleurs, dans le mode de réalisation décrit ici, le message TLV Connect comprend également les informations complémentaires suivantes pour chaque tranche réseau indiquée dans le TLV PC-SS(UE1) :
A titre illustratif sur la
On note que lors de l’étape de découverte des proxies, dans le mode de réalisation décrit ici, le dispositif de communication UE1 et le proxy Pm0 se sont déjà signalés leur support respectif de la procédure SLALOM via le TLV PC-SC. Néanmoins, si ce n’est pas le cas, par exemple parce que la découverte des proxies s’est appuyée sur le mécanisme DNS SVCB, on peut envisager un tel échange avant que le dispositif de communication UE1 envoie au proxy Pm0 le TLV PC-SS(UE1) identifiant les tranches réseau auxquelles il est raccordé.It is noted that during the proxy discovery step, in the embodiment described here, the communication device UE1 and the proxy Pm0 have already signaled their respective support of the SLALOM procedure via the PC-SC TLV. However, if this is not the case, for example because the proxy discovery relied on the SVCB DNS mechanism, such an exchange can be considered before the communication device UE1 sends to the proxy Pm0 the PC-SS(UE1) TLV identifying the network slices to which it is connected.
En référence à la
Puis le proxy Pm0 relaye vers le dispositif de communication UE2 la demande d’établissement de connexion du dispositif de communication UE1 (étape F30). Il enrichit auparavant cette demande avec diverses informations, et plus particulièrement, dans le mode de réalisation décrit ici avec un attribut SC (pour « Slalom Capable »), traduisant le fait qu’il supporte la procédure SLALOM (et est donc un proxy conforme à l’invention). Cet attribut prend la forme par exemple d’une nouvelle extension du protocole PROT définie pour les besoins de l’invention. Ainsi, dans le mode de réalisation décrit ici, il s’agit d’une nouvelle option TCP. Toutefois, en variante, d’autres formes sont possibles en fonction du protocole considéré.Then the proxy Pm0 relays to the communication device UE2 the connection establishment request from the communication device UE1 (step F30). It first enriches this request with various information, and more particularly, in the embodiment described here with an SC attribute (for “Slalom Capable”), reflecting the fact that it supports the SLALOM procedure (and is therefore a proxy conforming to the invention). This attribute takes the form, for example, of a new extension of the PROT protocol defined for the needs of the invention. Thus, in the embodiment described here, it is a new TCP option. However, as a variant, other forms are possible depending on the protocol considered.
Par ailleurs, le proxy Pm0 peut enrichir la demande d’établissement de connexion avec d’autres informations, comme par exemple l’option MPTCP MP_CAPABLE traduisant le cas échéant sa capacité à supporter des communications TCP à chemins multiples.Furthermore, the Pm0 proxy can enrich the connection establishment request with other information, such as the MPTCP MP_CAPABLE option, which, if applicable, reflects its ability to support multi-path TCP communications.
La demande d’établissement de connexion enrichie est désignée par M1’. Elle est envoyée par le proxy Pm0 au dispositif de communication UE2 en utilisant comme adresse de transport source (celle-ci comprenant une adresse IP et un numéro de port sources), l’adresse de transport du proxy Pm0 (étape F30). A titre illustratif sur la
Sur réception de la demande M1’ d’établissement d’une connexion (étape E30’, figure 3B), si le dispositif de communication UE2 supporte la procédure SLALOM (et donc est un dispositif de communication conforme à l’invention), il répond au proxy Pm0 en insérant dans son message M2 de réponse (par l’intermédiaire de son module 4D d’envoi), des informations relatives aux tranches réseau auxquelles le dispositif de communication UE2 est raccordé, c’est-à-dire aux tranches réseau de la liste LIST2 fournie par le fournisseur de services SSP1 à l’étape E10) (étape E40’). Ces informations sont incluses, dans le mode de réalisation décrit ici, dans un attribut SS (pour « Slice Set ») référencé par SS(UE2). A titre illustratif sur la
L’attribut SS comprend ici, pour chaque tranche réseau :
L’attribut SS peut en outre comprendre, pour chaque tranche réseau, d’autres informations comme par exemple un identifiant de réseau NID auquel est associée la tranche réseau (pour permettre typiquement de distinguer deux tranches réseau portant le même identifiant mais rattachées à des réseaux différents), et/ou un ou plusieurs identifiants AddressID d’adresses IP allouées au dispositif de communication UE2 pour cette tranche réseau, pouvant être utilisés notamment en présence d’un dispositif NAT (pour « Network Address Translation » en anglais) entre le dispositif de communication UE2 et le proxy Pm0, de façon connue en soi.The SS attribute may further comprise, for each network slice, other information such as for example a network identifier NID with which the network slice is associated (to typically make it possible to distinguish two network slices bearing the same identifier but attached to different networks), and/or one or more AddressID identifiers of IP addresses allocated to the communication device UE2 for this network slice, which may be used in particular in the presence of a NAT (Network Address Translation) device between the communication device UE2 and the proxy Pm0, in a manner known per se.
Tout ou partie des informations ST, SID et NID peuvent avoir été fournies au dispositif de communication UE2 lors de l’étape E10, par exemple dans la liste LIST2, quand le dispositif de communication UE2 s’est connecté au fournisseur de services SSP1, ou peuvent avoir été configurés au niveau du dispositif de communication UE2. Les identifiants AddressID sont générés par le dispositif de communication UE2, par exemple selon le même mécanisme que celui utilisé pour l’option MPTCP ADD_ADDR.All or part of the ST, SID and NID information may have been provided to the communication device UE2 during step E10, for example in the list LIST2, when the communication device UE2 connected to the service provider SSP1, or may have been configured at the level of the communication device UE2. The AddressID identifiers are generated by the communication device UE2, for example according to the same mechanism as that used for the MPTCP option ADD_ADDR.
Sur réception du message de réponse M2 par son module 3E de réception (étape F40,
Puis le proxy Pm0, par l’intermédiaire de son module 3A de sélection, sélectionne pour chaque dispositif de communication UE1, UE2, en fonction de la politique POL de sélection stockée localement dans sa mémoire NVM, au moins une tranche réseau adaptée au service « S » utilisable par le dispositif de communication UE1,UE2 pour la communication COM (étape F60). Dans la suite de la description, on désigne par SL(UE1) la ou les tranches réseau sélectionnées pour le dispositif de communication UE1 et par SL(UE2), la ou les tranches réseau sélectionnées pour le dispositif de communication UE2.Then the proxy Pm0, via its selection module 3A, selects for each communication device UE1, UE2, according to the selection policy POL stored locally in its NVM memory, at least one network slice adapted to the service “S” usable by the communication device UE1, UE2 for the COM communication (step F60). In the remainder of the description, SL(UE1) denotes the network slice(s) selected for the communication device UE1 and SL(UE2) denotes the network slice(s) selected for the communication device UE2.
Dans l’exemple envisagé ici, la politique POL de sélection comprend plusieurs règles de sélection, qui sont hiérarchisées entre elles, c’est-à-dire destinées à être appliquées dans un certain ordre :In the example considered here, the POL selection policy includes several selection rules, which are hierarchical among themselves, i.e. intended to be applied in a certain order:
- une première règle R1 dite de compatibilité selon laquelle lorsqu’une condition de compatibilité est vérifiée selon laquelle les dispositifs de communication UE1 et UE2 sont raccordés à au moins une tranche réseau d’un même type qui est adaptée au service « S », ladite au moins une tranche réseau d’un même type est sélectionnée pour ces dispositifs de communication pour être utilisée lors de la communication COM ;- a first rule R1 called compatibility rule according to which when a compatibility condition is verified according to which the communication devices UE1 and UE2 are connected to at least one network slice of the same type which is adapted to the service “S”, said at least one network slice of the same type is selected for these communication devices to be used during the COM communication;
- une deuxième règle R2 selon laquelle au moins une tranche réseau sélectionnée pour au moins un dit dispositif correspond à une tranche réseau à laquelle est déjà raccordé ce dispositif. On peut, lors de l’application de cette deuxième règle R2, privilégier l’un des deux dispositifs. Par exemple, on sélectionne une tranche réseau à laquelle est déjà raccordé le dispositif de communication UE2 ; ceci peut s’avérer pertinent par exemple si le dispositif de communication UE2 ne supporte pas la procédure SLALOM. En variante, on peut privilégier le dispositif de communication qui est raccordé à la tranche réseau qui optimise la qualité du service « S », au regard d’un critère déterminé qui dépend du service « S » ou du type du service « S » (par ex. la latence, le débit, le taux d’erreur, le temps d’établissement des connexions de la communication ou la bande passante) ; et- a second rule R2 according to which at least one network slice selected for at least one said device corresponds to a network slice to which this device is already connected. When applying this second rule R2, one of the two devices may be favored. For example, a network slice is selected to which the communication device UE2 is already connected; this may be relevant, for example, if the communication device UE2 does not support the SLALOM procedure. Alternatively, the communication device connected to the network slice that optimizes the quality of the service “S” may be favored, with regard to a determined criterion that depends on the service “S” or the type of service “S” (e.g., latency, throughput, error rate, communication connection setup time, or bandwidth); and
- une troisième règle R3 selon laquelle les tranches réseau sélectionnées pour les dispositifs de communication UE1 et UE2 optimisent la qualité du service « S », par exemple au regard d’un critère donné qui dépend du service « S » ou du type du service « S » (latence, débit, taux d’erreur, temps d’établissement des connexions de la communication, bande passante, etc.). Il convient de noter que cette règle R3 peut être appliquée globalement de sorte à optimiser la qualité globale du service « S » entre les deux dispositifs de communication UE1 et UE2 sur les deux tranches réseau, ou par segment de communication, le critère étant appliqué une première fois pour sélectionner la tranche SL(UE1) de sorte à optimiser la qualité du service « S » entre le dispositif de communication UE1 et le proxy Pm0, et une deuxième fois pour sélectionner la tranche SL(UE2) de sorte à optimiser la qualité du service « S » entre le dispositif de communication UE2 et le proxy Pm0.- a third rule R3 according to which the network slices selected for the communication devices UE1 and UE2 optimize the quality of the service “S”, for example with regard to a given criterion which depends on the service “S” or the type of the service “S” (latency, throughput, error rate, connection establishment time of the communication, bandwidth, etc.). It should be noted that this rule R3 can be applied globally so as to optimize the overall quality of the service “S” between the two communication devices UE1 and UE2 on the two network slices, or per communication segment, the criterion being applied a first time to select the slice SL(UE1) so as to optimize the quality of the service “S” between the communication device UE1 and the proxy Pm0, and a second time to select the slice SL(UE2) so as to optimize the quality of the service “S” between the communication device UE2 and the proxy Pm0.
Comme mentionné précédemment, ces règles sont hiérarchisées au sein de la politique POL de sélection, c’est-à-dire appliquées dans un certain ordre. Par exemple ici, les première, deuxième et troisième règles sont hiérarchisées de la façon suivante :As mentioned earlier, these rules are prioritized within the POL selection policy, i.e., applied in a certain order. For example, here, the first, second, and third rules are prioritized as follows:
- on teste en premier lieu si la condition de compatibilité de la première règle R1 est vérifiée. Le cas échéant, les tranches réseau compatibles sont sélectionnées, et si plusieurs tranches réseau vérifient cette condition, on utilise la troisième règle R3 pour opérer une sélection parmi les tranches réseau compatibles ; et- first, we test whether the compatibility condition of the first rule R1 is verified. If so, the compatible network slices are selected, and if several network slices verify this condition, we use the third rule R3 to make a selection among the compatible network slices; and
- si la condition de compatibilité n’est pas vérifiée, la deuxième règle R2 est appliquée, en privilégiant une tranche réseau à laquelle le dispositif de communication UE2 est déjà raccordé. Si plusieurs tranches réseau vérifient cette condition, la troisième règle R3 est utilisée pour procéder à la sélection finale.- if the compatibility condition is not met, the second rule R2 is applied, favoring a network slice to which the UE2 communication device is already connected. If several network slices meet this condition, the third rule R3 is used to make the final selection.
On note que pour identifier les tranches réseau adaptées au service « S » dans chacune des règles, le proxy Pm0 peut utiliser les objectifs de niveau de service ou SLO (pour « Service Level Objectives » en anglais) connus pour ces tranches réseau, qu’il compare aux exigences du service « S ». Il peut à cet effet être configuré avec ces SLO (par exemple par type de tranche) ou les obtenir auprès des contrôleurs NSC1,…, NSCN gérant les tranches réseau en question. Par ailleurs, l’application de la troisième règle R3 peut utiliser un ou plusieurs critères de qualité disponibles dans les SLO.Note that to identify the network slices suitable for the service "S" in each of the rules, the proxy Pm0 can use the service level objectives or SLOs known for these network slices, which it compares to the requirements of the service "S". For this purpose, it can be configured with these SLOs (for example by slice type) or obtain them from the controllers NSC1, ..., NSCN managing the network slices in question. Furthermore, the application of the third rule R3 can use one or more quality criteria available in the SLOs.
Bien entendu, d’autres politiques de sélection peuvent être envisagées, hiérarchisant de façon différente les règles énoncées ci-dessus, ou contenant une règle ou plus parmi les règles ci-dessus, et/ou contenant d’autres règles. Par exemple, on peut envisager une quatrième règle consistant à sélectionner pour au moins l’un des dispositifs de communication, une tranche réseau adaptée au service à laquelle est raccordé le proxy Pm0, ou encore une cinquième règle portant sur des paramètres autres que la qualité de service comme notamment un niveau de sécurité.Of course, other selection policies can be envisaged, prioritizing the rules stated above in a different way, or containing one or more rules among the rules above, and/or containing other rules. For example, one can envisage a fourth rule consisting of selecting for at least one of the communication devices, a network slice adapted to the service to which the proxy Pm0 is connected, or even a fifth rule relating to parameters other than the quality of service such as in particular a security level.
Ainsi, conformément à la politique POL de sélection, le proxy Pm0 examine tout d’abord si, parmi les tranches réseau auxquelles sont raccordées les dispositifs de communication UE1 et UE2, il existe des tranches réseau compatibles, c’est-à-dire identiques ou de même type, qui sont adaptées au service « S ». Il peut à cet effet comparer les informations PC-SS(UE1) relatives aux différentes tranches réseau auxquelles est raccordé le dispositif de communication UE1 avec les informations SS(UE2) relatives aux différentes tranches réseau auxquelles est raccordé le dispositif de communication UE2 dont il dispose dans sa mémoire non volatile NVM, et le cas échéant, vérifier que les tranches réseau compatibles sont adaptées au service « S » en considérant leurs SLO respectifs (l’ordre dans lequel procède le proxy Pm0 est sans importance).Thus, in accordance with the selection policy POL, the proxy Pm0 first examines whether, among the network slices to which the communication devices UE1 and UE2 are connected, there are compatible network slices, i.e. identical or of the same type, which are suitable for the service “S”. To this end, it can compare the PC-SS(UE1) information relating to the different network slices to which the communication device UE1 is connected with the SS(UE2) information relating to the different network slices to which the communication device UE2 is connected, which it has in its non-volatile memory NVM, and if necessary, verify that the compatible network slices are suitable for the service “S” by considering their respective SLOs (the order in which the proxy Pm0 proceeds is irrelevant).
En variante, lorsqu’il identifie des tranches réseau compatibles, le proxy Pm0 peut comparer, s’il dispose de telles informations, les identifiants SID des tranches réseau combinés aux identifiants NID des réseaux auxquelles sont rattachés les tranches réseau. En effet, on peut envisager qu’un dispositif de communication UE1, UE2 annoncent des identifiants SID de tranches réseau distincts par réseau. Dans ce cas, l’association entre un identifiant SID d’une tranche réseau et un type de tranche réseau dépend de l’identifiant NID correspondant à cette tranche réseau.Alternatively, when identifying compatible network slices, the proxy Pm0 can compare, if it has such information, the SID identifiers of the network slices combined with the NID identifiers of the networks to which the network slices are attached. Indeed, it is possible to envisage that a communication device UE1, UE2 announces distinct network slice SID identifiers per network. In this case, the association between a network slice SID identifier and a network slice type depends on the NID identifier corresponding to this network slice.
Si le proxy Pm0 identifie au moins deux tranches réseau compatibles parmi les tranches réseau auxquelles les dispositifs de communication UE1 et UE2 sont raccordés, il sélectionne pour les dispositifs de communication UE1 et UE2 les tranches réseau SL(UE1) et SL(UE2) correspondantes (application de la première règle R1).If the proxy Pm0 identifies at least two compatible network slices among the network slices to which the communication devices UE1 and UE2 are connected, it selects for the communication devices UE1 and UE2 the corresponding network slices SL(UE1) and SL(UE2) (application of the first rule R1).
Dans l’hypothèse où plusieurs paires de tranches réseau compatibles deux à deux sont identifiés par le proxy Pm0, il peut, selon sa configuration, sélectionner tout ou partie de ces paires pour les dispositifs de communication UE1 et UE2. Par exemple, il peut sélectionner une unique paire correspondant aux tranches réseau SL(UE1) et SL(UE2) qui optimisent (ou dont les types optimisent) la qualité du service « S » au regard du ou des critères considérés dans la troisième règle R3 (en d’autres termes, la sélection opérée par le proxy Pm0 résulte de l’application de la première règle R1 puis de la troisième règle R3). Si c’est le type de tranches réseau qui est considéré, le proxy Pm0 sélectionne ensuite, parmi les paires de tranches réseau compatibles, une paire de tranches réseau SL(UE1) et SL(UE2) de ce type.In the event that several pairs of two-by-two compatible network slices are identified by the proxy Pm0, it can, depending on its configuration, select all or part of these pairs for the communication devices UE1 and UE2. For example, it can select a single pair corresponding to the network slices SL(UE1) and SL(UE2) which optimize (or whose types optimize) the quality of service “S” with regard to the criterion(s) considered in the third rule R3 (in other words, the selection made by the proxy Pm0 results from the application of the first rule R1 then of the third rule R3). If it is the type of network slices which is considered, the proxy Pm0 then selects, from among the pairs of compatible network slices, a pair of network slices SL(UE1) and SL(UE2) of this type.
S’il n’existe aucune compatibilité entre les tranches réseau auxquelles sont raccordés les dispositifs de communication UE1 et UE2, alors, dans l’exemple envisagé ici, conformément à la deuxième règle R2, le proxy Pm0 sélectionne pour le dispositif de communication UE2, au moins une tranche réseau SL(UE2) à laquelle le dispositif de communication UE2 est déjà raccordé et qui est adaptée au service « S ». Si plusieurs tranches réseau sont possibles, le proxy Pm0 peut sélectionner tout ou partie de ces tranches. Par exemple, il sélectionne la tranche réseau SL(UE2) qui optimise la qualité du service « S » entre le proxy Pm0 et le dispositif de communication UE2 au regard du ou des critères considérés dans la troisième règle R3. On note que des tranches réseau différentes ou de types différents peuvent être sélectionnées pour des réseaux d’accès distincts. Puis le proxy Pm0 sélectionne pour le dispositif de communication UE1 au moins une tranche réseau SL(UE1) adaptée au service S qui optimise la qualité du service S au regard du ou des critères considérés dans la troisième règle R3.If there is no compatibility between the network slices to which the communication devices UE1 and UE2 are connected, then, in the example envisaged here, in accordance with the second rule R2, the proxy Pm0 selects for the communication device UE2, at least one network slice SL(UE2) to which the communication device UE2 is already connected and which is adapted to the service “S”. If several network slices are possible, the proxy Pm0 can select all or part of these slices. For example, it selects the network slice SL(UE2) which optimizes the quality of the service “S” between the proxy Pm0 and the communication device UE2 with regard to the criterion(s) considered in the third rule R3. It should be noted that different network slices or those of different types can be selected for distinct access networks. Then the proxy Pm0 selects for the communication device UE1 at least one network slice SL(UE1) adapted to the service S which optimizes the quality of the service S with regard to the criterion(s) considered in the third rule R3.
A cet effet, le proxy Pm0 peut avoir été configuré au préalable (ou de façon dynamique) avec l’ensemble des tranches réseau disponibles supportées par les réseaux NW1,…, NWN, ainsi qu’avec des informations lui permettant d’identifier et de contacter les contrôleurs NSC1,…, NSCN gérant ces tranches réseau. Il peut par ailleurs avoir été configuré avec les SLO associés à ces tranches réseau, ou les obtenir en interrogeant les contrôleurs NSC1,…, NSCN.For this purpose, the Pm0 proxy may have been configured in advance (or dynamically) with all the available network slices supported by the NW1,…, NWN networks, as well as with information allowing it to identify and contact the NSC1,…, NSCN controllers managing these network slices. It may also have been configured with the SLOs associated with these network slices, or obtain them by querying the NSC1,…, NSCN controllers.
Il convient de noter que, selon la politique POL de sélection appliquée, les tranches réseau SL(UE1) et SL(UE2) sélectionnées pour les dispositifs de communication UE1, UE2 pour la communication COM peuvent être identiques ou de même type, ou au contraire, être différentes ou de types différents. Il est ainsi possible au proxy Pm0 de sélectionner des tranches réseau qui optimisent la communication COM sur chaque segment de la connexion supportant cette communication. Le proxy Pm0 n’est pas nécessairement contraint de sélectionner une même tranche réseau (ou un même type de tranche réseau) de bout en bout.It should be noted that, depending on the POL selection policy applied, the network slices SL(UE1) and SL(UE2) selected for the communication devices UE1, UE2 for COM communication can be identical or of the same type, or on the contrary, be different or of different types. It is thus possible for the Pm0 proxy to select network slices that optimize the COM communication on each segment of the connection supporting this communication. The Pm0 proxy is not necessarily constrained to select the same network slice (or the same type of network slice) from end to end.
Par souci de simplification, on suppose dans la suite qu’une seule tranche réseau est sélectionnée pour chaque dispositif de communication UE1, UE2. Si plusieurs tranches réseau sont sélectionnées pour un dispositif de communication UE1, U2, le proxy Pm0 procède de façon identique ou similaire à ce qui est décrit ci-après pour chaque tranche réseau sélectionnée.For the sake of simplification, it is assumed in the following that only one network slice is selected for each communication device UE1, UE2. If several network slices are selected for a communication device UE1, U2, the proxy Pm0 proceeds in the same or similar way as described below for each selected network slice.
Suite à la sélection de la tranche réseau SL(UE1), le proxy Pm0 examine si le dispositif de communication UE1 est déjà raccordé à cette tranche réseau en utilisant les informations PC-SS(UE1) stockées dans sa mémoire non volatile NVM (étape test F70).Following the selection of the network slice SL(UE1), the proxy Pm0 examines whether the communication device UE1 is already connected to this network slice using the information PC-SS(UE1) stored in its non-volatile memory NVM (test step F70).
Si ce n’est pas le cas (réponse non à l’étape test F70), il envoie au contrôleur NSC gérant la tranche réseau SL(UE1), par l’intermédiaire de son module 3B de communication, une demande M3 de raccordement du dispositif de communication UE1 à cette tranche réseau SL(UE1) (étape F80). On suppose ici que c’est le contrôleur NSCn0 (n0 étant un entier parmi 1,…,N) qui gère la tranche réseau SL(UE1).If this is not the case (no response to test step F70), it sends to the NSC controller managing the network slice SL(UE1), via its communication module 3B, a request M3 for connection of the communication device UE1 to this network slice SL(UE1) (step F80). It is assumed here that it is the NSCn0 controller (n0 being an integer among 1,…,N) which manages the network slice SL(UE1).
En référence à la
Si ce n’est pas le cas (réponse non à l’étape test G20), la demande de raccordement est rejetée (étape G30).If this is not the case (no response to test step G20), the connection request is rejected (step G30).
Si le dispositif de communication UE1 est habilité à utiliser la tranche réseau SL(UE1) (réponse « oui » à l’étape test G20), le contrôleur NSCn0 déclenche le raccordement demandé par l’intermédiaire de son module 5B de déclenchement (étape G40), et envoie un message M4 de confirmation de ce raccordement au proxy Pm0 (étape G50). En référence à la
Le contrôleur NSCn0 peut communiquer directement avec le dispositif de communication UE1 en vue de son raccordement à la tranche réseau SL(UE1), ou une autre entité du réseau NWn0 peut s’en charger, par exemple un centre de support client. L’utilisateur du dispositif de communication UE1 peut par ailleurs être informé de ce raccordement, par exemple via un message de notification de type SMS (pour « Short Message Service » en anglais) éventuellement assorti d’informations descriptives de la nouvelle tranche réseau SL(UE1) à laquelle le dispositif de communication UE1 est raccordé, telles que la qualité de la connexion attendue via cette tranche réseau SL(UE1), etc.The NSCn0 controller can communicate directly with the communication device UE1 for its connection to the network slice SL(UE1), or another entity of the NWn0 network can take care of this, for example a customer support center. The user of the communication device UE1 can also be informed of this connection, for example via an SMS (Short Message Service) notification message possibly accompanied by descriptive information of the new network slice SL(UE1) to which the communication device UE1 is connected, such as the quality of the connection expected via this network slice SL(UE1), etc.
Il convient de noter que si le proxy Pm0 n’est pas raccordé à l’une et/ou l’autre des tranches réseau SL(UE1) et SL(UE2), il peut demander de façon similaire son propre raccordement aux contrôleurs NSC gérant ces tranches réseau.It should be noted that if the Pm0 proxy is not connected to one and/or the other of the network slices SL(UE1) and SL(UE2), it can similarly request its own connection to the NSC controllers managing these network slices.
Par ailleurs, dans le mode de réalisation, le raccordement du dispositif de communication UE1 à la tranche réseau SL(UE1) est demandé au contrôleur NSCn0 suite à la sélection de la tranche réseau SL(UE1) pour le dispositif de communication SL(UE1). En variante, on peut envisager que le proxy Pm0 demande ce raccordement pour les tranches réseau susceptibles d’être sélectionnées pour la communication COM avant l’étape de sélection F50, c’est-à-dire avant même d’appliquer la politique POL de sélection. De telles tranches réseau peuvent être identifiées par le proxy Pm0 en fonction des caractéristiques du service « S » (déterminé par exemple à partir de l’adresse de destination ou autres identifiants de service indiqués dans les messages d’accès au service S envoyés par les dispositifs de communication UE1, UE2), des capacités des dispositifs de communication UE1, UE1, etc. De cette sorte, la politique POL de sélection est appliquée sur des tranches réseau auxquelles les dispositifs de communication UE1, UE2 sont raccordés.Furthermore, in the embodiment, the connection of the communication device UE1 to the network slice SL(UE1) is requested from the controller NSCn0 following the selection of the network slice SL(UE1) for the communication device SL(UE1). Alternatively, it may be envisaged that the proxy Pm0 requests this connection for the network slices likely to be selected for the COM communication before the selection step F50, i.e. even before applying the POL selection policy. Such network slices may be identified by the proxy Pm0 according to the characteristics of the service “S” (determined for example from the destination address or other service identifiers indicated in the access messages to the service S sent by the communication devices UE1, UE2), the capabilities of the communication devices UE1, UE1, etc. In this way, the POL selection policy is applied to network slices to which the communication devices UE1, UE2 are connected.
En référence à la figure 3A, suite au raccordement du dispositif de communication UE1 à la tranche réseau SL(UE1) (réponse « oui » à l’étape test E50), le dispositif de communication UE1 envoie, par l’intermédiaire de son module 4D d’envoi, un message M5 au proxy Pm0 lui indiquant la nouvelle tranche réseau SL(UE1) à laquelle il est raccordé (étape E60). Le message M5 est par exemple un segment TCP incluant dans sa charge utile, dans un TLV PC-SS référencé par PC-SS(UE1)’, l’ensemble des tranches réseau auxquelles le dispositif de communication UE1 est raccordé. Le TLV PC-SS(UE1)’ est donc une mise à jour du TLV PC-SS(UE1) précédemment envoyé par le dispositif de communication UE1 au proxy Pm0, qui inclut d’une part les tranches réseau identifiées dans la liste LIST1 reçue du fournisseur de services SSP1 à l’étape E10, et d’autre part, la nouvelle tranche réseau SL(UE1). En variante, le message M5 peut ne contenir que la nouvelle tranche réseau SL(UE1). Par exemple, la nouvelle tranche réseau SL(UE1) peut être incluse dans une nouvelle extension du protocole Convert, appelée ici TLV PC-SS-UPD, apte à indiquer au proxy Pm0 que son contenu est une mise à jour des informations précédemment transmises dans le message PC-SS(UE1).With reference to Figure 3A, following the connection of the communication device UE1 to the network slice SL(UE1) (response “yes” to the test step E50), the communication device UE1 sends, via its sending module 4D, a message M5 to the proxy Pm0 indicating to it the new network slice SL(UE1) to which it is connected (step E60). The message M5 is for example a TCP segment including in its payload, in a PC-SS TLV referenced by PC-SS(UE1)’, all of the network slices to which the communication device UE1 is connected. The PC-SS(UE1) TLV is therefore an update of the PC-SS(UE1) TLV previously sent by the communication device UE1 to the proxy Pm0, which includes on the one hand the network slices identified in the list LIST1 received from the service provider SSP1 in step E10, and on the other hand, the new network slice SL(UE1). Alternatively, the message M5 may contain only the new network slice SL(UE1). For example, the new network slice SL(UE1) may be included in a new extension of the Convert protocol, here called PC-SS-UPD TLV, capable of indicating to the proxy Pm0 that its content is an update of the information previously transmitted in the PC-SS(UE1) message.
En référence à la
Si lors de l’étape test F70, le proxy Pm0 détermine que le dispositif de communication UE1 est déjà raccordé à la tranche réseau SL(UE1) sélectionnée pour le dispositif de communication UE1 (réponse « oui » à l’étape test E70), ou à l’issue de l’étape F110, le proxy Pm0 envoie, par l’intermédiaire de son module 3C d’envoi, un message M6, M7 à chaque dispositif de communication UE1, UE2 pour lui indiquer ladite au moins une tranche SL(UE1), SL(UE2) sélectionnée pour lui par le proxy Pm0 et utilisable par le dispositif de communication UE1, UE2 lors de la communication COM (étape F120). Ces tranches réseau peuvent être indiquées respectivement dans les messages M6 et M7 dans un TLV PC-SS (noté PC-SS(UE1)’’’) et un attribut SS (noté SS(UE2)’) respectivement. Ces tranches réseau permettent d’optimiser la qualité du service « S » lors de la communication COM. En référence aux figures 3A et 3B, sur réception par son module 4A de réception de ce message M6 (étape E70), M7 (étape E50’), chaque dispositif de communication UE1, UE2 bascule la communication COM vers au moins une des tranches réseau SL(UE1), SL(UE2) indiquées si elle(s) est/sont différente(s) de celle(s) qu’il utilise (étapes E80, E60’). Lorsque plusieurs tranches réseau sont indiquées, un algorithme de répartition de charge (par ex. ECMP pour « Equal-Cost Multi-Path » en anglais) peut être utilisé entre les tranches réseau. Les différentes tranches réseau indiquées par le proxy Pm0 peuvent également être associées à des réseaux distincts, de sorte que le dispositif de communication UE1, UE2 peut basculer la communication vers la ou les tranches réseau associées au réseau via lequel il a décidé d’envoyer des données relatives au service « S ». En tout état de cause, le dispositif de communication UE1, UE2 doit utiliser lors de la communication COM l’une au moins des tranches réseau qui lui a été indiquée par le proxy Pm0.If during the test step F70, the proxy Pm0 determines that the communication device UE1 is already connected to the network slice SL(UE1) selected for the communication device UE1 (response “yes” to the test step E70), or at the end of the step F110, the proxy Pm0 sends, via its sending module 3C, a message M6, M7 to each communication device UE1, UE2 to indicate to it said at least one slice SL(UE1), SL(UE2) selected for it by the proxy Pm0 and usable by the communication device UE1, UE2 during the COM communication (step F120). These network slices can be indicated respectively in the messages M6 and M7 in a PC-SS TLV (denoted PC-SS(UE1)’’’) and an SS attribute (denoted SS(UE2)’) respectively. These network slices make it possible to optimize the quality of the service “S” during the COM communication. With reference to Figures 3A and 3B, upon receipt by its reception module 4A of this message M6 (step E70), M7 (step E50’), each communication device UE1, UE2 switches the COM communication to at least one of the network slices SL(UE1), SL(UE2) indicated if it is/are different from the one(s) it uses (steps E80, E60’). When several network slices are indicated, a load distribution algorithm (e.g. ECMP for “Equal-Cost Multi-Path”) can be used between the network slices. The different network slices indicated by the proxy Pm0 can also be associated with distinct networks, so that the communication device UE1, UE2 can switch the communication to the network slice(s) associated with the network via which it has decided to send data relating to the service “S”. In any case, the communication device UE1, UE2 must use at least one of the network slices indicated to it by the proxy Pm0 during COM communication.
Les dispositifs de communication UE1 et UE2, par l’intermédiaire de leurs modules 4B d’application respectif, sont maintenant configurés pour utiliser la ou les tranches de réseau SL(UE1), SL(UE2) lors de la communication COM : ils associent le trafic sortant lié à la communication COM avec les tranches SL(UE1) et SL(UE2), et le marquage du trafic est celui associé aux tranches SL(UE1) et SL(UE2).The communication devices UE1 and UE2, through their respective application modules 4B, are now configured to use the network slice(s) SL(UE1), SL(UE2) during COM communication: they associate the outgoing traffic related to COM communication with the slices SL(UE1) and SL(UE2), and the marking of the traffic is that associated with the slices SL(UE1) and SL(UE2).
A titre illustratif sur la
Selon cet exemple, si le proxy Pm0 détermine lors de l’étape test F70 que le dispositif de communication UE1 n’est pas raccordé à la tranche réseau SL(UE1), il lui envoie un segment SYN+ACK(PC-SS(UE1)’’) où le TLV PC-SS(UE1)’’ contient la tranche réseau, notée SL0, utilisée par le dispositif de communication UE1 pour envoyer le message M1 au proxy Pm0. Le dispositif de communication UE1 répond en envoyant un segment ACK(PC-SS(UE1)’’)).According to this example, if the proxy Pm0 determines during the test step F70 that the communication device UE1 is not connected to the network slice SL(UE1), it sends it a segment SYN+ACK(PC-SS(UE1)’’) where the TLV PC-SS(UE1)’’ contains the network slice, denoted SL0, used by the communication device UE1 to send the message M1 to the proxy Pm0. The communication device UE1 responds by sending an ACK(PC-SS(UE1)’’) segment.
Suite au raccordement du dispositif de communication UE1 à la tranche réseau SL(UE1), le message M5 envoyé par le dispositif de communication UE1 au proxy Pm0 prend la forme d’un segment ACK(PC-SS(UE1)’). Comme introduit précédemment, le TLV PC-SS(UE1)’ identifie toutes les tranches réseau auxquelles sont raccordées le dispositif de communication UE1, incluant la tranche réseau SL(UE1). Le message M6 alors envoyé par le proxy Pm0 prend la forme d’un segment ACK(PC-SS(UE1)’’’) contenant la tranche réseau SL(UE1) sélectionnée par le proxy Pm0 pour la communication COM pour le dispositif de communication UE1.Following the connection of the communication device UE1 to the network slice SL(UE1), the M5 message sent by the communication device UE1 to the proxy Pm0 takes the form of an ACK(PC-SS(UE1)’) segment. As introduced previously, the PC-SS(UE1)’ TLV identifies all the network slices to which the communication device UE1 is connected, including the network slice SL(UE1). The M6 message then sent by the proxy Pm0 takes the form of an ACK(PC-SS(UE1)’’’) segment containing the network slice SL(UE1) selected by the proxy Pm0 for the COM communication for the communication device UE1.
De même, le message M7 envoyé par le proxy Pm0 au dispositif de communication UE2 prend la forme d’un segment ACK(SS(UE2)’’), dans lequel l’attribut SS(UE2)’’ contient la tranche réseau SL(UE2) sélectionnée par le proxy Pm0 et utilisable pour la communication COM par le dispositif de communication UE2.Similarly, the M7 message sent by the proxy Pm0 to the communication device UE2 takes the form of an ACK(SS(UE2)’’) segment, in which the SS(UE2)’’ attribute contains the network slice SL(UE2) selected by the proxy Pm0 and usable for COM communication by the communication device UE2.
Il convient de noter que d’autres implémentations que celles représentée sur la
Suite au basculement de la communication sur les tranches réseau SL(UE1) et SL(UE2), le proxy Pm0 peut, selon le contexte, rester ou non impliqué dans l’échange de données entre les dispositifs de communication UE1 et UE2, c’est-à-dire rester ou non sur le chemin des données échangées entre les dispositifs de communication UE1 et UE2 et assurer sa fonction de relais des données entre les dispositifs de communication UE1 et UE2.Following the switchover of communication on the network slices SL(UE1) and SL(UE2), the proxy Pm0 may, depending on the context, remain or not involved in the exchange of data between the communication devices UE1 and UE2, i.e. remain or not on the path of the data exchanged between the communication devices UE1 and UE2 and ensure its function of relaying the data between the communication devices UE1 and UE2.
Plus particulièrement, si les tranches réseau SL(UE1) et SL(UE2) utilisées respectivement par les dispositifs de communication UE1 et UE2 sont identiques, le proxy Pm0 peut décider de se retirer du chemin des données échangées entre les dispositifs de communication UE1 et UE2 et laisser les dispositifs de communication UE1 et UE2 gérer la communication COM de bout en bout. A cet effet, le proxy Pm0 envoie par exemple un message de retrait à chaque dispositif de communication UE1, UE2 ; ce message de retrait utilise par exemple l’option MPTCP REMOVE_ADDR véhiculant l’adresse du proxy Pm0 et l’extension PC-SS ou SS véhiculant la tranche réseau pour laquelle le proxy Pm0 se retire. Les dispositifs de communication UE1 et UE2 se signalent respectivement leurs adresses, par exemple au moyen de l’option MPTCP ADD_ADDR ou de l’option MP_JOIN. On note que le proxy Pm0 peut décider de se retirer pour certaines tranches réseau seulement et de rester actif pour d’autres. Cette décision dépend le cas échéant d’instructions fournies au proxy par un opérateur.More specifically, if the network slices SL(UE1) and SL(UE2) used respectively by the communication devices UE1 and UE2 are identical, the proxy Pm0 can decide to withdraw from the path of the data exchanged between the communication devices UE1 and UE2 and let the communication devices UE1 and UE2 manage the end-to-end COM communication. To this end, the proxy Pm0 sends for example a withdrawal message to each communication device UE1, UE2; this withdrawal message uses for example the MPTCP REMOVE_ADDR option conveying the address of the proxy Pm0 and the PC-SS or SS extension conveying the network slice for which the proxy Pm0 is withdrawing. The communication devices UE1 and UE2 respectively signal their addresses, for example by means of the MPTCP ADD_ADDR option or the MP_JOIN option. Note that the proxy Pm0 can decide to withdraw for certain network slices only and to remain active for others. This decision depends on instructions provided to the proxy by an operator, if applicable.
Le proxy Pm0 peut à l’inverse rester impliqué dans la communication COM, notamment quand les tranches réseau SL(UE1) et SL(UE2) diffèrent. Il réalise alors l’interconnexion entre les tranches réseau SL(UE1) et SL(UE2), et sa position dans le plan des données échangées entre les dispositifs de communication UE1 et UE2 lui permet d’accéder au marquage des paquets de données ou aux informations contenues dans leurs entêtes qu’il peut alors modifier pour pouvoir les adapter à des tranches réseau SL(UE1) et SL(UE2) différentes et orienter correctement les paquets de données vers les bonnes tranches réseau. Par exemple, le proxy peut modifier le marquage des tranches conformément aux tranches sélectionnées pour une communication.The proxy Pm0 can conversely remain involved in the COM communication, in particular when the network slices SL(UE1) and SL(UE2) differ. It then performs the interconnection between the network slices SL(UE1) and SL(UE2), and its position in the plane of the data exchanged between the communication devices UE1 and UE2 allows it to access the marking of the data packets or the information contained in their headers which it can then modify to be able to adapt them to different network slices SL(UE1) and SL(UE2) and correctly direct the data packets to the right network slices. For example, the proxy can modify the marking of the slices according to the slices selected for a communication.
Par ailleurs, les dispositifs de communication UE1 et UE2 peuvent mémoriser les tranches réseau SL(UE1) et SL(UE2) sélectionnées pour eux pour le service « S », et lors d’un futur accès au service « S », utiliser directement ces tranches réseau sans solliciter le proxy Pm0.Furthermore, the communication devices UE1 and UE2 can memorize the network slices SL(UE1) and SL(UE2) selected for them for the service “S”, and during a future access to the service “S”, directly use these network slices without requesting the proxy Pm0.
Dans le mode de réalisation décrit ici, la procédure SLALOM est déclenchée par le dispositif de communication UE1 lors de l’établissement de la connexion avec le dispositif de communication UE2. On peut envisager en variante, qu’elle soit déclenchée par le dispositif de communication UE2. Son déroulement est alors identique à celui qui vient d’être décrit pour le dispositif de communication UE1.In the embodiment described here, the SLALOM procedure is triggered by the communication device UE1 when establishing the connection with the communication device UE2. Alternatively, it may be considered that it is triggered by the communication device UE2. Its sequence is then identical to that which has just been described for the communication device UE1.
Dans un autre mode de réalisation, on peut également envisager que chaque dispositif de communication UE1, UE2 utilise un proxy différent, chacun de ces proxies se trouvant sur le chemin de tout ou partie des données échangées lors de la communication COM entre les deux dispositifs de communication UE1 et UE2. La
Par ailleurs, dans ce qui vient d’être décrit, les dispositifs de communication UE1 et UE2 communiquent directement avec les proxies. On peut envisager, dans un autre mode de réalisation, que les dispositifs de communication UE1 et/ou UE2 soient connectés à un équipement tel qu’une passerelle résidentielle ou CPE. Dans ce cas, la passerelle résidentielle est un dispositif de communication conforme à l’invention et la procédure SLALOM s’applique de façon similaire ou identique à ce qui vient d’être décrit entre la passerelle résidentielle et le dispositif de communication distant ou la passerelle résidentielle à laquelle ce dispositif de communication distant est connecté le cas échéant. Chaque dispositif de communication UE1, UE2 se trouvant le cas échéant derrière une passerelle résidentielle communique avec elle pour obtenir les informations relatives aux tranches réseau à laquelle la passerelle est connectée (typiquement les informations transmises par la passerelle au proxy dans les messages/attributs PC-SS ou SS) et lui envoie les règles de classification de trafic pour associer les flux sortants avec une ou plusieurs tranches réseau idoines correspondant aux tranches réseau auxquelles la passerelle est raccordée. Le dispositif de communication UE1, UE2 peut à cette fin utiliser de nouvelles options ou messages défini(e)s pour les besoins de l’invention en fonction du protocole utilisé pour communiquer ces éléments. Par exemple, on peut envisager d’utiliser les protocoles PCP (pour « Port Control Protocol » en anglais), DHCP (pour « Dynamic Host Configuration Protocol » en anglais), ou un message RA (pour « Router Advertisement » en anglais), etc.
Furthermore, in what has just been described, the communication devices UE1 and UE2 communicate directly with the proxies. It is possible, in another embodiment, for the communication devices UE1 and/or UE2 to be connected to equipment such as a residential gateway or CPE. In this case, the residential gateway is a communication device according to the invention and the SLALOM procedure applies in a similar or identical manner to what has just been described between the residential gateway and the remote communication device or the residential gateway to which this remote communication device is connected, where appropriate. Each communication device UE1, UE2, where appropriate, located behind a residential gateway, communicates with it to obtain information relating to the network slices to which the gateway is connected (typically the information transmitted by the gateway to the proxy in the PC-SS or SS messages/attributes) and sends it the traffic classification rules to associate the outgoing flows with one or more suitable network slices corresponding to the network slices to which the gateway is connected. The communication device UE1, UE2 can for this purpose use new options or messages defined for the needs of the invention depending on the protocol used to communicate these elements. For example, it is possible to consider using the PCP (for “Port Control Protocol” in English), DHCP (for “Dynamic Host Configuration Protocol” in English), or an RA (for “Router Advertisement” in English) message, etc.
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2310967AFR3154270A1 (en) | 2023-10-12 | 2023-10-12 | Methods for selecting network slices suitable for a service, managing at least one network slice and communicating, and entities configured to implement these methods |
| PCT/EP2024/078675WO2025078594A1 (en) | 2023-10-12 | 2024-10-11 | Selection method for selecting network slices suitable for a service, management method for managing at least one network slice and comunication method, and entities configured to implement these methods |
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR2310967AFR3154270A1 (en) | 2023-10-12 | 2023-10-12 | Methods for selecting network slices suitable for a service, managing at least one network slice and communicating, and entities configured to implement these methods |
| FR2310967 | 2023-10-12 |
| Publication Number | Publication Date |
|---|---|
| FR3154270A1true FR3154270A1 (en) | 2025-04-18 |
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR2310967APendingFR3154270A1 (en) | 2023-10-12 | 2023-10-12 | Methods for selecting network slices suitable for a service, managing at least one network slice and communicating, and entities configured to implement these methods |
| Country | Link |
|---|---|
| FR (1) | FR3154270A1 (en) |
| WO (1) | WO2025078594A1 (en) |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200275358A1 (en)* | 2019-02-22 | 2020-08-27 | Vmware, Inc. | Stateful network slice selection using slice selector as connection termination proxy |
| US20200374181A1 (en)* | 2018-02-02 | 2020-11-26 | Nokia Solutions And Networks Oy | Using self-operation cases to identify and resolve issues causing network slice reselection |
| EP3840464A1 (en)* | 2016-05-12 | 2021-06-23 | Convida Wireless, LLC | Connecting to virtualized mobile core networks |
| US20230217363A1 (en)* | 2020-06-29 | 2023-07-06 | Zte Corporation | Method for switching a Network slice, terminal, storage medium and electronic device |
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP3840464A1 (en)* | 2016-05-12 | 2021-06-23 | Convida Wireless, LLC | Connecting to virtualized mobile core networks |
| US20200374181A1 (en)* | 2018-02-02 | 2020-11-26 | Nokia Solutions And Networks Oy | Using self-operation cases to identify and resolve issues causing network slice reselection |
| US20200275358A1 (en)* | 2019-02-22 | 2020-08-27 | Vmware, Inc. | Stateful network slice selection using slice selector as connection termination proxy |
| US20230217363A1 (en)* | 2020-06-29 | 2023-07-06 | Zte Corporation | Method for switching a Network slice, terminal, storage medium and electronic device |
| Title |
|---|
| "Technical Specification Group Services and System Aspects ; System architecture for the 5G System (5GS) ; Stage 2 (Release 17", 3GPP TS 23.501, June 2023 (2023-06-01) |
| B. SCHWARTZ ET AL., SERVICE BINDING AND PARAMETER SPECIFICATION VIA THE DNS, 11 March 2023 (2023-03-11) |
| K.G. SZARKOWICZ, A REA-LIZATION OF IETF NETWORK SLICES FOR 5G NETWORKS USING CURRENT IP/MPLS TECHNOLOGIES, 27 June 2023 (2023-06-27) |
| M. BOUCADAIR ET AL., YANG DATA MODELS FOR 'ATTACHMENT CIRCUITS'-AS-A-SERVICE (ACAAS, 10 July 2023 (2023-07-10) |
| Publication number | Publication date |
|---|---|
| WO2025078594A1 (en) | 2025-04-17 |
| Publication | Publication Date | Title |
|---|---|---|
| EP3476096B1 (en) | Udp communication method between two terminals via multiple paths | |
| FR3067550A1 (en) | METHOD OF COMMUNICATING QUIC VIA MULTIPLE ROADS | |
| EP3318023B1 (en) | Method of optimizing the loading of a network connections hub | |
| EP3284224B1 (en) | Method for emulating a multipath connection | |
| FR3053197A1 (en) | METHOD FOR UDP COMMUNICATION VIA MULTIPLE PATHS BETWEEN TWO TERMINALS | |
| WO2016128644A1 (en) | Method for selecting network connection hubs | |
| EP3991391A1 (en) | Method for managing communication between terminals in a communication network, and devices for implementing the method | |
| EP3682601B1 (en) | Data routing in a customer premises equipment using link aggregation | |
| EP4222994A1 (en) | Methods for configuring a user apparatus, negotiating with a network entity, and managing a connection, and associated devices | |
| EP3682600B1 (en) | Management of connection with other residential gateways of a residential gateway implementing link aggregation | |
| FR3154270A1 (en) | Methods for selecting network slices suitable for a service, managing at least one network slice and communicating, and entities configured to implement these methods | |
| FR3131153A1 (en) | Mechanisms of communication with a service accessible via a telecommunications network taking into account the mobility of services, users and equipment | |
| FR3154893A1 (en) | Methods and devices for configuring and using a network supporting network slices | |
| WO2025133029A1 (en) | Method for accessing a service by way of a communication device via at least one communication network | |
| WO2025003097A1 (en) | Methods for accessing a service, method for providing services, control method, management method, and corresponding terminal, service function instance, controller, border node and computer programs | |
| WO2025061515A1 (en) | Methods, devices and system for controlling communication in a network | |
| WO2025078597A1 (en) | Methods for routing data, for configuring, for allocating identifiers and for accessing a service in a communication network implementing network slices, and corresponding entities and computer program | |
| FR3150669A1 (en) | Methods of accessing a service and providing services, terminal, service instance, and corresponding computer programs. | |
| FR3154268A1 (en) | Methods for verifying, managing, controlling, and performing a verification of the accessibility of equipment, equipment, control server, network controller, relay entity, and corresponding computer program. |
| Date | Code | Title | Description |
|---|---|---|---|
| PLFP | Fee payment | Year of fee payment:2 | |
| PLSC | Publication of the preliminary search report | Effective date:20250418 | |
| PLFP | Fee payment | Year of fee payment:3 |