FR3061397B1 - METHOD AND SYSTEM FOR EXCHANGING DATA - Google Patents

METHOD AND SYSTEM FOR EXCHANGING DATA Download PDF

Info

Publication number
FR3061397B1
FR3061397B1 FR1601868A FR1601868A FR3061397B1 FR 3061397 B1 FR3061397 B1 FR 3061397B1 FR 1601868 A FR1601868 A FR 1601868A FR 1601868 A FR1601868 A FR 1601868A FR 3061397 B1 FR3061397 B1 FR 3061397B1
Authority
FR
France
Prior art keywords
terminal
terminals
content
central controller
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
FR1601868A
Other languages
French (fr)
Other versions
FR3061397A1 (en
Inventor
Farid Benbadis
Marcelo Dias De Amorim
Vania Conan
Serge Fdida
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Centre National de la Recherche Scientifique CNRS
Thales SA
Universite Pierre et Marie Curie Paris 6
Original Assignee
Centre National de la Recherche Scientifique CNRS
Thales SA
Universite Pierre et Marie Curie Paris 6
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Centre National de la Recherche Scientifique CNRS, Thales SA, Universite Pierre et Marie Curie Paris 6 filed Critical Centre National de la Recherche Scientifique CNRS
Priority to FR1601868A priority Critical patent/FR3061397B1/en
Priority to EP17823121.3A priority patent/EP3563593B1/en
Priority to ES17823121T priority patent/ES2863312T3/en
Priority to PL17823121T priority patent/PL3563593T3/en
Priority to PCT/EP2017/083852 priority patent/WO2018122069A1/en
Publication of FR3061397A1 publication Critical patent/FR3061397A1/en
Application granted granted Critical
Publication of FR3061397B1 publication Critical patent/FR3061397B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • H04W64/006Locating users or terminals or network equipment for network management purposes, e.g. mobility management with additional information processing, e.g. for direction or speed determination

Abstract

L'invention concerne un procédé et un système pour gérer les échanges de données dans un réseau de communication, comportant une entité centralisée (3) qui possède au moins la connaissance des besoins d'échange de données entre les terminaux Mi et leur localisation dans le réseau pour piloter les échanges de messages entre les terminaux.The invention relates to a method and a system for managing the data exchange in a communication network, comprising a centralized entity (3) which has at least knowledge of the data exchange requirements between the terminals Mi and their location in the network. network to control the exchange of messages between the terminals.

Description

PROCEDE ET SYSTEME D’ECHANGES DE DONNEES

Domaine technique de l’invention L’invention concerne un procédé et un système d’échanges de données dans un réseau de communication, utilisant les communications directes entre terminaux mobiles (sans passer par une infrastructure de base en fonctionnement normal). L’invention s’applique, par exemple, dans le domaine des réseaux cellulaires, par exemple le GSM, la 3G, la 4G, et tous les standards issus du 3GPP. Les terminaux mobiles concernés sont, par exemple, des smartphones, des ordinateurs portables, des tablettes connectées et/ou des véhicules connectés, ces terminaux ayant des moyens adaptés pour communiquer directement entre eux, sans passer par une infrastructure fixe, le plus souvent par des liens radios.

Discussion sur l’art antérieur

Il existe plusieurs types de communications directes entre terminaux, par exemple la liaison USB, le standard Bluetooth, Wi-Fi ad hoc, Wi-Fi direct, etc. Chacune de ces communications possède ses propres caractéristiques (rappelées en fin de description), par exemple, un débit correct, une large couverture, ainsi qu’un certain nombre de limitations technologiques liées à des opérations telles que le pairage et la découverte du voisinage.

Les problèmes à résoudre pour l’exploitation des technologies dispositif-à-dispositif connues sous l’abréviation D2D sont notamment de deux ordres.

Le premier concerne la conception des techniques qui permettent d’effectuer les communications radio sans fil directes entre les terminaux. Ceci est fourni par les technologies, telles que le Bluetooth, le Wi-Fi direct et le LTE ProSe. D’autres techniques peuvent être envisagées, par exemple la technique ultra large bande ou UWB (Ultra WideBand).

Le deuxième problème consiste à exploiter de manière efficace et opportune le lien direct de communication entre les terminaux mobiles lorsque ce dernier existe et est disponible. Il faut alors décider à quel moment ce lien D2D va être exploité et quelles données faire transiter sur ce lien. Dans ce cadre, les connexions directes entre terminaux sont de courte durée et, dans l’état actuel des choses, les terminaux mobiles doivent perpétuellement scanner leur voisinage pour découvrir les autres terminaux qui se trouvent à proximité. Une fois qu’un nouveau terminal mobile voisin est découvert, les deux terminaux s’échangent leurs listes de contenus disponibles et, s’il y a un intérêt, l’échange de données effectif se met en place. L’un des inconvénients de ce procédé est que la batterie est sollicitée pour la découverte de voisinage qui doit s’effectuer de façon continue, et une partie du lien radio disponible lorsque deux terminaux sont à proximité l’un de l’autre est utilisée comme canal de contrôle pour l’échange des listes de contenus plutôt que pour un échange effectif des données. On note donc un gaspillage des ressources. L’art antérieur décrit deux grandes familles de techniques qui permettent l’échange de données entre des terminaux mobiles : les solutions purement réparties qui n’exigent pas de coordination par une entité centrale et, au contraire, les solutions qui sont assistées par l’infrastructure et qui s’appuient ainsi sur une coordination centrale.

Dans une solution répartie du type purement D2D, l’idée est de permettre la transmission de données entre terminaux mobiles en mouvement sans le support d’aucune infrastructure centralisée. Comme l’existence de liens de communication entre nœuds dépend, entre autres, de la mobilité des nœuds, ces réseaux sont souvent appelés « réseaux opportunistes ». La principale caractéristique des réseaux opportunistes est Γintermittence de la connectivité. En effet, dans les réseaux opportunistes, la connectivité de bout en bout n'est pas assurée à tout instant, comme il est décrit dans le document de K. Fall, intitulé “A delay-tolerant network architecture for challenged internets”, ACM Sigcomm, pages 27-34, Karlsruhe, Germany, 2003.

Les solutions de dissémination réparties purement D2D peuvent être structurées en cinq catégories principales : dissémination par inondation simple, dissémination probabiliste, dissémination géographique, dissémination à connaissance du voisinage et dissémination par codage réseau. Le principal objectif de ces solutions est d’obtenir un taux de dissémination important tout en minimisant le nombre de transmissions dans le réseau. Ceci est possible au travers d’un choix très précis des noeuds relais. Néanmoins, ces solutions ne font appel qu’à une connaissance locale des contacts ou des contenus à échanger, ce qui limite souvent l’efficacité des décisions prises.

Pour pallier au problème de capacité finie d’un contact, plusieurs travaux se sont attaqués à la question de la fragmentation des données pour améliorer le taux de succès lors d’une transmission (sachant que la plupart des contacts dans le monde réel sont très courts). Plusieurs stratégies de fragmentation ont été proposées.

La deuxième grande famille de techniques qui permettent l’échange de données entre terminaux mobiles s’appuie sur l’existence d’un lien entre les terminaux mobiles et l’infrastructure, en complément des liens directs entre les terminaux.

Un premier cas est fourni par les techniques de dispositif-à-dispositif D2D dans les versions avancées du LTE (ProSe). Dans cette approche, les communications directes entre les terminaux sont gérées par la station de base (eNodeB) en réutilisant des ressources de la voie montante (uplink channel). Ainsi, les communications directes restent sous le contrôle de l’infrastructure cellulaire de l’opérateur, et opèrent dans une bande réservée.

Le point difficile dans ce cadre est la gestion des interférences. En effet, il ne faut pas que ces émissions directes viennent perturber des émissions sur la voie montante d’autres utilisateurs. Une solution proposée est de limiter la puissance des communications directes. D’autres travaux optimisent l’allocation de ressources entre les communications avec l’eNodeB et entre terminaux. Avec cette approche, on ne gère que les communications directes entre terminaux d’un même opérateur et l’apport additionnel de technologies telles que le Wi-Fi ou le Bluetooth qui opèrent dans d’autres bandes de fréquences n’est pas considérée.

Un deuxième type d’approche s’attaque plus directement à la façon d’échanger du contenu en exploitant les communications directes entre terminaux pour soulager l’infrastructure cellulaire. Ces approches s’inspirent des techniques de pair-à-pair; on commence par découper le contenu en blocs, puis on diffuse chaque bloc à différents terminaux mobiles dans la cellule, les blocs sont ensuite distribués aux autres terminaux mobiles par des communications directes.

La question centrale est de savoir quels terminaux mobiles ou, quel nombre de terminaux mobiles il faut utiliser pour échanger le contenu. Si on arrive à limiter le nombre d’utilisateurs UE diffusant le contenu, on économise le nombre de transmissions cellulaires (dont on augmente le taux de délestage du réseau cellulaire) et on économise l’utilisation des batteries des terminaux. On peut utiliser ces techniques notamment pour les données temps réel (streaming d’un même contenu à plusieurs utilisateurs dans une cellule).

Un premier ensemble de techniques se limite au cas du contenu multimédia (image ou vidéo) pour une diffusion en temps réel. Ainsi, Kang et al. ont développé une technique « CHUM » qui s’applique à du contenu multimédia temps réel et qui diffuse le contenu en Wi-Fi aux autres terminaux mobiles. Cette technique est décrite dans le document de S.-S. Kang et M. W. Mutka, “A mobile peer-to-peer approach for multimedia content sharing using 3G/WLAN dual mode channels,” Wireless Communications and Mobile Computing, vol. 5, no. 6, pp. 633-645, 2005.

Une approche similaire, décrite dans le document de M.-F. Leung et S.-H. Chan, “Broadcast-based peer-to-peer collaborative video streaming among mobiles,” IEEE Transactions on Broadcasting, vol. 53, no. 1, pp. 350-361, March 2007, est utilisée pour relier des flux vidéo temps réel : le nombre de relais diffusant est choisi pour éviter les collisions sur le canal radio et la redondance de données.

Il est aussi possible d’utiliser ces techniques pour distribuer du contenu sans contrainte temps réel qui intéresse un groupe d’utilisateurs dans un voisinage. On dispose d’un paramètre supplémentaire (par rapport au streaming) qui est la durée de validité du contenu qui peut être plus longue (et se compter en minutes, voir en heures). On peut ainsi aussi utiliser la mobilité physique des utilisateurs pour créer de nouvelles opportunités de diffusion du contenu et, ainsi, en améliorer la diffusion. Ces approches (dites de délestage de trafic) s’appuient sur des techniques antérieures issues des approches de réseau tolérant aux délais (delay-tolerant networking ou DTN) tel qu’il est décrit dans le document de L. Pelusi, A. Passarella et M. Conti, “Opportunistic networking data forwarding in disconnected mobile ad hoc networks,” IEEE Communications Magazine, vol. 44, no. 11, pp. 134-141, 2006.

Dans les approches de délestage de trafic, on commence par envoyer (par le réseau cellulaire) un petit nombre de copies du contenu à des terminaux mobiles sources qui diffusent ensuite aux autres terminaux mobiles au gré de leurs contacts. Ces techniques fonctionnent en boucle ouverte car elles visent à déterminer les nœuds sources sans traiter la question du choix des échanges directs entre terminaux. Dans ce contexte, le problème principal est de choisir les nœuds sources afin de minimiser les communications cellulaires ou l’énergie utilisée par les terminaux mobiles.

Pour optimiser les stratégies de sélection de terminaux mobiles sources ou de relais dans la cellule, toutes ces techniques s’appuient sur une connaissance fine des interactions entre terminaux mobiles et font des hypothèses fortes de stationnarité, soit en termes de nombre de nœuds et de leur répartition dans la cellule, soit en termes de leur mobilité dans la cellule. Toutes ces approches font une analyse des données hors ligne pour aboutir à des solutions qui fonctionnent en moyenne et ne sont pas forcément optimales à chaque instant, car elles ne prennent en compte qu’un comportement moyen et non instantané.

Une approche complémentaire consiste à travailler en boucle fermée comme la solution proposée par Whitbeck, dans le document de J. Whitbeck, Y. Lopez, J. Leguay, V. Conan et M. D. de Amorim, “Push-and-track: Saving infrastructure bandwidth through opportunistic forwarding,” Pervasive and Mobile Computing, vol. 8, no. 5, pp. 682-697, Oct. 2012 et dans le brevet US8862125.

Pour chaque contenu diffusé par le serveur, les terminaux mobiles acquittent la réception de ce contenu, ce qui permet au serveur de suivre la progression de la diffusion en D2D. Le serveur détecte ainsi les cas de blocages et réinjecte des copies du contenu à certains terminaux mobiles pour relancer la diffusion. Cette technique fonctionne en boucle fermée et son but principal est de définir une stratégie de réinjection qui permette la transmission de contenu à un groupe dans le but de tenir un délai de livraison maximum.

Les techniques données par l’art antérieur présentent, malgré leurs avantages, plusieurs inconvénients.

Pour les méthodes distribuées : • La découverte de voisin nécessite une consommation continue d’énergie, même à intervalles réguliers et peut s’avérer inutile si aucun autre terminal n’est proche ou ne dispose de contenu devant être échangé, • Une fois la communication établie et les listes de contenus disponibles et/ou souhaités échangés, il se peut qu’aucun échange n’ait lieu suite à une divergence d’intérêts, • Le temps de contact restant, après échange des données de signalisation, peut être insuffisant par rapport au temps requis pour l’échange de données.

Ainsi, les solutions distribuées sont peu efficaces car elles exigent des échanges d’informations de contrôle avant tout échange de données : entre autres, il faut que les terminaux identifient les contenus qu’ils possèdent déjà (stockage dans une base de données ou une mémoire), qu’ils décident les contenus qui sont prioritaires et éventuellement qu’ils compilent des informations supplémentaires sur l’état actuel des buffers des terminaux qui sont dans le voisinage. Ces opérations consomment de la bande passante utile qui n’est plus disponible pour la transmission des données. Dans le cas de communications sur de courtes durées, il ne reste alors plus de place pour la transmission des données.

Les solutions centralisées se sont intéressées à améliorer la mise en communication des terminaux mobiles et non le choix des données à transmettre. Ainsi, ces solutions ne distinguent pas les contenus de tailles différentes, de popularités (locale ou globale) différentes. Elles sont aveugles aux contenus à échanger, aux demandes ou aux besoins des utilisateurs.

Les solutions connues de l’art antérieur ne traitent pas du problème du choix des données à transmettre sur des liens D2D. L’idée mise en œuvre dans la présente invention utilise notamment une entité centralisée dans l’infrastructure qui possède au moins la connaissance des besoins d’échange de données entre les terminaux et leur localisation dans le réseau pour piloter les échanges de messages entre les terminaux.

Dans la suite de la description, l’expression « en portée radio » bien connue de l’homme du métier sera utilisée pour désigner deux terminaux suffisamment proches pour s’échanger des données, la distance étant notamment fonction du protocole de communication utilisé.

De même, la notion de graphe est bien connue de l’homme du métier et ne sera pas détaillée. La description fait appel à un graphe d’intérêts (G/, dirigé) et à un graphe de proximité (GP, non dirigé). Dans le graphe d’intérêts, un lien dirigé estampillé Ck partant du terminal mobile /'vers le terminal mobile j indique que i possède le contenu Ck et que ce contenu devrait être envoyé au nœud j. Ainsi, il y a autant de liens au niveau du graphe entre deux terminaux mobiles que de nombre de contenus à échanger entre ces deux terminaux mobiles. Il y a au moins un graphe d’intérêts par application, alors que le graphe de proximité peut être unique. Résumé de l’invention

La description utilise indifféremment le mot nœud, le mot terminal pour désigner un même objet, un terminal pouvant être un terminal utilisateur. L’invention concerne un procédé d’échange de données dans un réseau de communication D2D, terminal-à-terminal, comprenant au moins un serveur de contenus, un contrôleur central comprenant un module de signalisation et plusieurs terminaux utilisateurs mobiles i, j, caractérisé en ce qu’il comporte au moins les étapes suivantes :

Au niveau du contrôleur central : • Déterminer un graphe d’intérêts (G/, dirigé) à partir d’une liste d’utilisateurs et de leurs contenus transmis par le serveur de contenus, • Calculer une fréquence f(i,j) de remontée des positions des terminaux définie en fonction d’au moins la mobilité des terminaux, • Etablir un lien de communication entre au moins deux terminaux i, j, en exécutant les étapes suivantes : • Pour chaque terminal j G M(i), où M(i) est l’ensemble des terminaux j différents du terminal i qui ont au moins un contenu à échanger avec le terminal i, calculer la distance estimée dest(i,y) entre le terminal i et le terminal j en utilisant la valeur de la dernière position pj^(i) du terminal i et la valeur de la dernière position pü^(y) du terminal j connues par le contrôleur central, • Pour chaque terminal j G M(ï), prédire la distance dpred(i,y) entre le terminal i et le terminal j en utilisant dest(i,y), la vitesse relative entre le terminal i et le terminal j et la fréquence de remontée des positions fÇi.j'), • Pour chaque terminal j e M (i) définir dans le graphe d’intérêts un paramètre g(i.,f) qui est mis à la valeur 1 lorsque la distance estimée dest(i,j) ou la distance prédite dest(i,f) sont inférieures à une distance seuil dseuil1 et à zéro dans le cas contraire, • Lorsque g(i,j) = 1, le contrôleur central envoie une instruction au terminal i disposant du contenu à transmettre au terminal j, pour établir une communication D2D entre un terminal i et un terminal j et pour transmettre le contenu requis, • Le terminal j émet un accusé réception ACK du contenu vers le contrôleur central, ledit contrôleur central émet une instruction de mise à jour de la base des contenus vers le serveur de contenus.

La fréquence de mise à jour f(i,j) de la position des terminaux est, par exemple, déterminée en fonction du gradient de la distance dest(i,y).

Selon un autre mode de réalisation, la fréquence de mise à jour f(i,/) de la position d’un terminal est déterminée en définissant plusieurs zones entre un premier terminal i et un terminal j : • Une Zone ΖΊ, dans laquelle les terminaux communiquent et dans laquelle la fréquence de mise à jour est une fréquence maximale définie en fonction de l’application fmax, • Une Zone Z4 dans laquelle les terminaux ont une faible chance de communiquer pour laquelle la fréquence de mise à jour est une fréquence minimale fmin, • Une ou plusieurs zones intermédiaires dans laquelle ou lesquelles la fréquence de mise à jour est comprise entre fmin et fmax. A l’instant où le terminal i remonte sa position courante, le contrôleur central calcule la distance estimée à cet instant entre les terminaux i et j et une prochaine distance prédite en fonction de la fréquence actuelle et de la vitesse relative entre les terminaux :

où £ {/min,/med</max}· et en transmettant une instruction à i et à j d’adapter la fréquence si fpred(i,j) * /(i,y) ·

Selon une variante de réalisation, un niveau de priorité est associé à un contenu et le contrôleur central sur réception de plusieurs contenus tient compte de ce niveau de priorité pour choisir une interface de communication à activer.

Le procédé peut être mis en œuvre dans un système utilisant une des technologies de communication suivantes : Bluetooth , Wi-Fi-direct, Wi-Fi ad hoc , LTE ProSe, BLE, LTE D2D.

Lorsque le protocole utilisé est le protocole Bluetooth, le procédé détermine la taille des zones de la manière suivante :

la vitesse relative des deux terminaux. L’invention concerne aussi un système pour gérer des échanges de données dans un réseau de communication comprenant un module de communication D2D (205) comportant un serveur de contenus, un contrôleur central et plusieurs terminaux i, j, caractérisé en ce qu’il comporte au moins les éléments suivants :

Un contrôleur central adapté à exécuter les étapes du procédé selon l’invention et comportant au moins : • un module de gestion de contenu, • un module SLA contenant une information de service requise pour un contenu en fonction des utilisateurs, un module (203) pour la construction d’un graphe d’intérêts, G/, un module (204) pour la construction d’un graphe de proximité GP, • un module de signalisation,

Un serveur de contenus comportant au moins :

• un module SLA contenant une information de service requise par chacun des terminaux utilisateurs, • une mémoire contenant les contenus disponibles pour les terminaux, Un terminal mobile comprend au moins : • un module contenant les informations de position, • un gestionnaire des interfaces de communication adapté à recevoir un signal d’activation de la part du contrôleur central pour la communication entre au moins deux terminaux, • un module de gestion de la communication D2D, • une mémoire de stockage des contenus demandés par un terminal, • un module de réception et exécution des instructions transmises par le contrôleur central, • un module de communication.

Le système comporte par exemple un ou plusieurs modules de communication choisis parmi la liste suivante : un module de communication cellulaire, un module de communication Bluetooth, un module de communication Wi-Fi, un module de communication sans fil un module de communication LTE, un module de communication BLE, un module de communication LTE D2D.

Brève description des figures D’autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description d’exemples de réalisation annexée des figures qui représentent : • Figure 1, un exemple d’architecture générale du système, • Figure 2, un détail des modules permettant la mise en œuvre du procédé selon l’invention par les terminaux et le contrôleur central, • Figure 3A, une illustration des étapes du procédé et figure 3B des zones dites de contrôle et • Figure 4, une illustration des étapes du procédé selon l’invention.

Description détaillée d’un ou de plusieurs modes de réalisation

Le système selon l’invention sert notamment d’intermédiaire entre un serveur de contenus et plusieurs terminaux mobiles qui souhaitent s’échanger des données relatives à ce service.

La figure 1 illustre un exemple de système 1 selon l’invention comportant un serveur de contenus 2, plusieurs terminaux mobiles qui souhaitent s’échanger des données relatives à un service, et un contrôleur central 3 ayant notamment pour fonction de décharger les terminaux de la partie contrôle de la communication en fonctionnement normal. Dans ce contrôleur central sont répertoriées les positions des terminaux ainsi que les données à échanger. Les terminaux s’échangent des données Do en utilisant une signalisation efficace car adaptée aux besoins d’échange entre les deux terminaux. La signalisation permet, en adaptant la fréquence de remontée de position (fréquence de mise à jour des informations), d’assurer un mécanisme de découverte ou « beaconing » plus efficace. De plus, ces terminaux ne procèdent plus de façon continue à la phase de découverte des terminaux voisins, préservant ainsi leur batterie. Le terminal mobile utilisera son temps de contact principalement pour un échange de données utiles.

Le serveur de contenus 2 transmet des métadonnées et la liste des contenus que chaque terminal est censé recevoir 101 vers le contrôleur central 3 qui crée et maintient le graphe d’intérêts G, et le graphe de proximité GP. Le contrôleur central 3 envoie des instructions 102.vers les terminaux mobiles Mi et reçoit la position et des informations relatives au transfert du contenu 103 de la part des terminaux mobiles, selon des étapes détaillées ci-après. Le contrôleur central 3 envoie des mises à jour régulières au serveur de contenus concernant les nœuds ayant reçu les contenus demandés 104. Un canal de Backup 105 peut être utilisé en cas de besoin entre le serveur de contenus et les terminaux mobiles.

Le contrôleur central a une vue globale du réseau. Il présente notamment les fonctionnalités suivantes : • Le contrôleur central sait à tout moment quelles sont les positions géographiques des différents terminaux mobiles, de quelles technologies de communication directe ils disposent et quelles données ils ont comme contenu à échanger avec un ou plusieurs autres terminaux. Il peut également avoir des informations supplémentaires telles que le niveau de la batterie, la quantité de données cellulaires consommées (ou restant à consommer) par un terminal, etc. ; • En fonction des positions des terminaux mobiles, des technologies de communications directes dont ils disposent et des données qu’ils ont et qu’ils attendent (et éventuellement en fonction d’autres informations telles que le niveau de batterie), le serveur central est capable de calculer, pour un instant t, les terminaux qui doivent communiquer avec quels autres terminaux et quelles données ils doivent échanger ; • Le contrôleur central envoie des instructions d’activation et de désactivation des interfaces de communications directes seulement quand un échange est possible, évitant ainsi aux terminaux d’activer inutilement l’interface de communication directe ; • Le contrôleur central envoie les instructions d’échange aux terminaux. Ces instructions contiennent, par exemple, l’identifiant du terminal source IDS, l’identifiant du terminal destination IDd et les données (contenus) devant être échangées ; • Lorsque les terminaux reçoivent un nouveau contenu, ils en informent le contrôleur central qui met à jour sa base de données indiquant les couples (terminal, contenu des données dont dispose le terminal).

La figure 2 représente de manière détaillée un exemple de modules équipant les terminaux mobiles ainsi que le contrôleur central selon l’invention.

Le contrôleur central 20 comporte un module de gestion de contenus 201, un module SLA, 202, contenant la qualité de service requise pour un contenu en fonction des utilisateurs, un module 203, pour la construction de graphes d’intérêts, G,, un module 204 pour la construction de proximité GP_ les graphes sont construits à partir des informations transmises par les terminaux utilisateurs, un module 205 « calcul des communications D2D » qui va recevoir les informations sur le graphe d’intérêts et le graphe de proximité, calculer les échanges de contenus qui doivent être effectués et transmettre les instructions au module de signalisation 206. Le module de signalisation génère les messages d’instruction, notamment l’activation/désactivation des interfaces des terminaux utilisateurs ainsi que les instructions d’échange de contenu.

Un terminal 21 comporte une couche application 211, une interface de programmation applicative ou API 212, un module de gestion de la communication D2D, 213. Ce module de gestion 213 comporte une mémoire de stockage des contenus 214 demandés par un terminal, un « module » 215 comprenant les informations relatives au terminal, informations GPS, niveau de la batterie, etc., un module 216 de réception et exécution des instructions transmises par le contrôleur central, un module de routage 217, un gestionnaire des interfaces 218, différents modes de communication: cellulaire, 219, Bluetooth, 220, Wi-Fi 221. Il est aussi possible d’utiliser tout autre module de communication sans fil.

Le module 216 de réception et d’exécution des instructions va notamment activer et désactiver les interfaces de communication des terminaux mobiles.

Un serveur de contenus 22 comprend un module SLA 223 contenant l’information d’abonnement de chacun des utilisateurs, information qu’il transmet au contrôleur central, et une mémoire 222 contenant les contenus disponibles pour les terminaux.

Les échanges d’information et d’instruction entre le contrôleur central, les terminaux et un serveur de contenus se font au moyen de technologies de communication connues de l’homme du métier et qui ne seront pas détaillées car n’étant pas l’objet de l’invention.

La figure 3A illustre une succession d’étapes mises en oeuvre par le contrôleur central. Le procédé mis en œuvre par l’invention consiste notamment à rapprocher les dimensions « données » et « proximité géographique », c’est-à-dire que deux terminaux mobiles à proximité n’établissent une connexion que s'ils ont des données à échanger.

Cette décision prise conjointement par le module de calcul des interactions D2D 205 et le module de signalisation 206 s’articule en deux prises de décisions liées : • Une instruction qui vise à indiquer à un terminal mobile d’enclencher le mécanisme D2D de découverte connu sous le terme anglo-saxon beaconing, d’établissement de canal D2D et d’échange de contenus, • Une instruction indiquant à chaque terminal à quelle fréquence remonter ses positions vers le contrôleur central.

Le graphe d’intérêts Gj est non dirigé, car il se peut qu’un terminal i ait quelque chose à envoyer au terminal j mais pas le contraire. Un lien dirigé estampillé ck partant d’un terminal mobile i vers un terminal mobile y indique que i possède le contenu ck et que ce contenu devrait être envoyé au terminal y. Ainsi, il y a autant de liens entre deux terminaux mobiles que de nombre de contenus à échanger entre ces deux terminaux mobiles. Le graphe de proximité GP est, par contre, non dirigé, et chaque arc est étiqueté par la valeur estimée de la distance entre le terminal mobile i et le terminal mobile j. Il y a au moins un graphe d’intérêts par application, alors que le graphe de proximité peut être unique.

Pour que le module de calcul des interactions 205 décide si deux terminaux mobiles i et y doivent établir une connexion, deux conditions doivent être respectées. Tout d’abord, les terminaux mobiles doivent avoir au moins un contenu ck à échanger. Ensuite, les terminaux mobiles doivent être suffisamment près l’un de l’autre pour qu’une connexion puisse être établie (terminaux en portée radio par exemple).

La première condition est vérifiée par le serveur de contenus 22 qui envoie au contrôleur central 20 la liste des terminaux mobiles abonnés et les contenus devant leur être confiés. Le module de construction de « graphe d’intérêt » 203 crée et maintient le graphe d’intérêts G, à partir de cette liste.

Afin que le contrôleur central décide si deux terminaux mobiles sont suffisamment près l’un de l’autre (deuxième condition, échange du contenu), il doit disposer de la localisation géographique (position) de ces terminaux mobiles ; ceci permet de vérifier que les terminaux sont par exemple en portée radio ou suffisamment proches l’un de l’autre pour établir une communication. Avoir la position des terminaux mobiles en continue peut s’avérer extrêmement coûteux en termes de consommation énergétique. Le procédé utilise un algorithme intelligent exécuté par le contrôleur central pour la remontée de positions et de contenus échangés entre terminaux selon une succession d’étapes dont un exemple détaillé est donné ci-après.

Soit N la liste de tous les nœuds authentifiés auprès du contrôleur central et C(ij) l’ensemble des liens dans le graphe d’intérêts allant de i vers j (c’est-à-dire, la liste des contenus que le noeud i possède et que le noeud j demande). Noter que C(i,y) C(j,ï). Notons M(ï) l’ensemble de tous les nœuds j Φ i pour lesquels [C(i,y) u C(j, i)] Ψ {} (c.-à-d., i et j ont au moins un contenu à échanger). L’ensemble M(i) définit également les voisins du nœud i dans le graphe de proximité.

Pour chaque nœud i e N, le contrôleur central 20 conserve les dernière et avant-dernière positions géographiques connues de i, et transmises par le noeud i, notées respectivement pj^(i) et p^^(i), 301. Ces deux positions servent à estimer la vitesse de déplacement de i, notée v(t). Ces valeurs de positions correspondent aux dernières positions mises à jour à la fréquence de remontée des informations définie ci-après. À partir de la vitesse de déplacement û(i) et de la vitesse de déplacement du nœud j, v(j), le contrôleur central détermine la vitesse relative v(i,y) entre les deux nœuds i et j.

Pour chaque nœud j e M(i), le contrôleur central calcule, 302, dest(i,y'), la distance estimée entre i et j qui estampille le lien entre ces deux nœuds dans le graphe de proximité. Cette distance est obtenue à partir de la valeur de la position du nœud i et de la valeur de la position pf^(j) du nœud j. La distance estimée dest(i,y) - dest(j,i). Si j ¢. M(i), il n’est pas nécessaire d’estimer la distance entre i et j car de toute façon aucune connexion radio ne sera établie entre ces deux nœuds ou la probabilité d’une connexion radio tend vers zéro. Cette économie de calcul est potentiellement très importante, principalement dans les cas où la densité du graphe d’intérêts est faible. À l’instant où le nœud i remonte sa position courante pî^(i), le contrôleur central non seulement calcule la distance estimée à cet instant entre les nœuds i et j, mais prédit également la prochaine distance les séparant en fonction de la fréquence de remontée de positions et de la vitesse relative entre les nœuds :

où /(i,;) est la fréquence à laquelle les nœuds sont censés remonter leurs positions géographiques. Cette fréquence de mise à jour ou de remontée des informations de position dépend notamment de la mobilité des nœuds et de la distance séparant les nœuds ; son calcul sera décrit plus tard dans le document.

Pour chaque noeud j e M(Q, le contrôleur central va définir dans le graphe d’intérêts un paramètre g(i,f), qui vaut 1 si la découverte entre i et j est activée, 304, et qui vaut 0 sinon, avec g(i,j) = g(j,ï)· La découverte entre i et j est activée lorsque dest(i,y) < dseuül, 303. dseuül est la distance en-deçà de laquelle on estime que les nœuds sont suffisamment proches pour pouvoir établir une communication du type dispositif-à-dispositif (D2D).

Le contrôleur central exécute deux processus en parallèle. Le premier est en charge de déterminer le moment exact auquel les nœuds doivent essayer de communiquer. Le second correspond aux mises à jour de la fréquence à laquelle un nœud doit faire remonter sa position. D’une façon succincte (détaillée par la suite), lorsque g(i,j) = 1, le contrôleur central envoie une instruction START , 305, aux nœuds i et j en précisant que, dès l’établissement du lien D2D, i est censé envoyer à j les contenus spécifiés par C(i,y) dans le graphe d’intérêts, 306. Le cas de transmission du contenu du nœud j vers le nœud i serait traité de façon analogue.

Différentes stratégies pour choisir les contenus prioritaires sont possibles en fonction d’informations complémentaires sur la durée de connexion possible, la taille des contenus, et leur popularité, par exemple. À chaque remontée d’une nouvelle position par chacun des nœuds i e N, le contrôleur central suit la procédure décrite dans l’algorithme suivant :

ALGORITHME

Le contrôleur central reçoit la dernière position connue du nœud i, piast(i), 301, cette position est mise à jour à la fréquence de remontée choisie,

DEBUT POUR jeM(i)

Calculer dest(i,j), 3 02 Calculer v(i,j)

Calculer dpred(i,j) SI ((dest(i,j)< dseui11) ou (dpred(i,j)< dseui11)),

303, ALORS g(i,j)=l, 304, START(i,j,C(i,j ), C(j , i) ) /* Beaconing puis transférer contenus */, 305, 306

SINON SI g(i,j)=1 ALORS g(i,j)=0 STOP(i,j) /* Arrêter la tentative de communiquer */, 309

FINSI

FINSI

FINPOUR

FIN

Lorsque le contrôleur central observe la transition de g(î,j) à 1, il envoie aux nœuds i et j un message contenant l’instruction d’entamer une phase de découverte (beaconing) pour que i et j se découvrent. Le cas échéant, i et j établissent un lien D2D, selon un processus connu de l’homme du métier.

Le contrôleur central envoie aux nœuds i et j une liste des contenus à échanger (qui peuvent être un sous ensemble des listes c(i,j) et c(/,0). En ayant ces listes par avance, les deux nœuds peuvent immédiatement échanger des contenus sans aucune perte de temps et de capacité, 306. Le nœud ayant reçu le contenu transmet au contrôleur central un accusé réception, ACK, 307. Le contrôleur central demande au serveur de contenus de mettre à jour ses données, (terminal, contenu possédé par un terminal), 308.

La fonction START, 305, consiste à envoyer aux nœuds i et j l’instruction de commencer le « beaconing », établir un canal de communication D2D, si les conditions d’établissement de la communication sont réunies, et d’échanger les contenus spécifiés dans le message d’instruction. La fonction STOP, 309, indique que les deux nœuds doivent arrêter d’essayer de communiquer car, soit ils se sont trop éloignés, soit parce qu’ils n’ont plus rien à échanger.

Les nœuds étant potentiellement mobiles et les listes de contenus à échanger variables dans le temps, le contrôleur central va exécuter une méthode de rafraîchissement des données, en particulier des positions de chacun des nœuds, à une fréquence adaptée aux besoins du système : • la liste C(i,y) est mise à jour par les acquittements renvoyés par j vers le contrôleur central (pour les contenus reçus) et par le serveur de contenus (des nouveaux contenus peuvent être demandés, par exemple). Si j reçoit un contenu spécifié dans C(i,y) d’un nœud k Ψ i, ceci entraîne une mise à jour de C(i,j), 308, • La position pïZst(0 est mise à jour régulièrement à une fréquence /(i,y), 310, la manière de déterminer la fréquence étant détaillée ci-après, • La distance estimée dest(i,y) est mise à jour à chaque fois que la position d’un des deux terminaux ρΰΠ(ί) et/ou PÎZitC/) est mise à jour, il en est de même pour la distance prédite dpred(i,y), • La vitesse v(i,y) est mise à jour aussi à chaque fois que pü^(i) et/ou PÏZ^G') sont mises à jour.

La figure 3B illustre l’approche adoptée par le procédé selon l’invention pour déterminer une valeur de fréquence /(i,y) e {/min,/med,/max) de remontée de positions géographiques en fonction notamment de la mobilité des nœuds et de la distance qui sépare les nœuds ayant des contenus à échanger. Le principe est le suivant : lorsque i et j sont suffisamment éloignés, il n’est pas la peine d’avoir une fréquence de remontée des informations de position trop élevée. La fréquence de mise à jour des informations de localisation transmises au contrôleur central doit au contraire augmenter lorsque les nœuds se rapprochent, car la probabilité que les nœuds se découvrent augmente également. Le problème est que les nœuds i et j ne connaissent pas la distance les séparant (seul le contrôleur central la connaît), et à chaque fois que la fréquence de remontée des positions change, le contrôleur central doit envoyer un message au nœud en question pour qu’il adapte la valeur de la fréquence. Un taux important de changement de fréquence impliquerait une surcharge de signalisation trop élevée. Ceci n’est pas acceptable. L’idée mise en œuvre par le procédé consiste à contrôler ce processus par le bais d’un partage de l’espace en « zones de contrôle » centrées autour de chaque terminal, un terminal pouvant avoir plusieurs voisins en même temps. Pour expliquer le fonctionnement de l’approche, le schéma de la figure 3B montrant trois valeurs seuils dseuül rfseuih ^seuils définissant trois zones est utilisé: • Zone 1, Zi, zone de contact, à l’intérieur du rayon dseuili. Il s’agit de la zone dans laquelle les nœuds sont censés communiquer, car elle est définie par le rayon maximum de communication espéré pour la technologie utilisée. Cette zone exige une fréquence élevée /max pour la remontée des positions, car les nœuds ont de forte chance d’être en portée radio et de pouvoir ainsi échanger des contenus ; • Zone 2, Z2, zone de rapprochement, entre les rayons dseuUl et dseui'2. Cette zone sert à pallier aux variations non prévues de la vitesse relative entre les nœuds. La fréquence maximale est également utilisée dans cette zone, car les nœuds se trouvent encore suffisamment proches pour avoir une chance de se découvrir ; • Zone 3, Z3, zone d’attention, entre les rayons dseui‘2 et dseui‘3. Il s’agit d’une zone intermédiaire dans laquelle les nœuds remontent leurs positions à un taux moyen. Cette zone est définie pour permettre une variation de fréquence de mise à jour des positions progressive. Elle sert aussi à pallier aux incertitudes dans les déplacements des terminaux mobiles ; • Zone 4, Z4, (zone éloignée, au-delà du rayon dseuÜ3). Dans cette zone, il y a peu de chance que les nœuds se rencontrent dans un futur proche, i.e. puissent se rapprocher pour échanger des contenus. La fréquence pour la remontée des positions dans cette zone peut être arbitrairement faible. L’exemple de structuration de l’axe reliant les nœuds i et j en quatre zones décrites ci-dessus et illustrées à la figure 3B n’est qu’un exemple. Sans sortir du cadre de l’invention, il est possible de définir plus de quatre zones comme il est illustré sur la figure et la procédure décrite précédemment fonctionnerait de façon analogue. À l’instant où le nœud i remonte sa position courante plast’(i), le contrôleur central non seulement calcule les distances dest(Z,y) et dpred(i,y), mais prédit également /'pred(i,y), qui indique la fréquence correspondant à la zone lorsque les nœuds se trouvent à une distance dpred(i,y).

Le test suivant s’impose :

SI ypred^y) φ ALORS /(i,7) = /Pred(i,j)

Envoyer instruction à i et à y d'adaptation de fréquence

FINSI

Lorsqu’un nœud i cherche à communiquer avec plusieurs autres nœuds dans le réseau, la fréquence de remontée des informations de position la plus élevée parmi toutes celles calculées sera retenue.

La taille des zones dépendra notamment de la technologie de communication utilisée. La valeur de dseuil1 dépend de la technologie. Par exemple, une dizaine de mètres pour Bluetooth, une quarantaine de mètres pour IEEE 802.11ac, où même jusqu’à un demi kilomètre pour le LTE Direct. Pour calculer la taille des autres zones, nous considérons que, pendant la traversée de la zone en question, le nœud devrait pouvoir envoyer au moins deux fois sa position. Ainsi :

Valeurs des fréquences {fmin, fmedJmax} : L’efficacité du système est directement liée à la fréquence à laquelle les nœuds remontent leurs positions. Les valeurs de {/min»/med»/max} peuvent être déterminées comme suit :

• /min : ®st la fréquence minimale qui sert essentiellement à signaler la présence du nœud dans le réseau. • fmax : dépend à la fois de la technologie de la couche liaison, de la vitesse relative entre les nœuds et de l’objectif de détection. À titre d’illustration, supposons : o Technologie Bluetooth : portée d’une dizaine de mètres, o Nœuds piétons : vitesse de déplacement de l’ordre du mètre par seconde. o Objectif de détection : par exemple, le nœud doit être détecté au moins 80% du temps de présence. Cela veut dire que la première remontée de position ne doit pas se faire après 20% du temps total où les nœuds seront en contact.

Ainsi, deux nœuds piétons se croisant à la vitesse relative de 2m/s (chacun à 1m/s) ne se trouvent à portée de communication que pendant 10s (2x rayon de communication / vitesse relative). Pour respecter l’objectif de 80%, il faut que la fréquence ne soit pas inférieure à /max = l/2s. • Zmed : Cette fréquence peut être obtenue de plusieurs façons, par exemple il est possible de choisir /med = /max/2.

Le choix des valeurs de fréquence minimale, maximale et intermédiaire, pour la remontée des informations de position, résultera d’un compromis entre la précision souhaitée pour les positions des terminaux, de la technologie de communication utilisée, du contexte de l’application.

Lorsque plusieurs applications et contenus coexistent, et, lors d’un contact, plusieurs contenus respectent les trois conditions, le contrôleur central va mettre en place un système de priorités entre les contenus. Dans ce contexte, plusieurs solutions peuvent être envisagées. À titre d’illustration, une solution possible consiste à donner une plus grande probabilité de choix aux contenus les plus volumineux. Un contenu de données possède une information de priorité dans un champ de données consacré. Le contrôleur central va donc vérifier la priorité de chacun des contenus à échanger et indiquer au terminal mobile, en même temps que le signal d’activation de son interface de communication, le contenu prioritaire à transmettre en premier. Dans le cas de plusieurs contenus, il est possible d’envisager que le contrôleur central transmette une liste de contenus avec un ordre de transmission.

La figure 4 illustre d’une autre façon un exemple d’étapes mises en oeuvre par le procédé selon l’invention. E1 - Etape 1 optionnelle - Chaque terminal utilisateur s’enregistre au préalable au service de distribution de contenu auprès du serveur de contenus. Cette étape ne nécessite pas de terminal mobile. Les terminaux s’authentifient en tant que terminaux auprès du serveur de contenus en utilisant un couple, par exemple contenant un nom d’utilisateur et un mot de passe utilisés lors de l’enregistrement. Le serveur de contenus renvoi à l’utilisateur un identifiant (par exemple un token) dont la validité est temporaire, selon des principes connus de l’homme du métier ; E2 - Etape 2 - chaque terminal ouvre une session auprès du contrôleur central et envoie des informations contenant sa localisation actuelle, par exemple sa position GPS, la topologie du réseau, éventuellement le voisinage (présence de nœuds dans son voisinage au sens par exemple du voisinage radio connu de l’homme du métier), etc. Ceci peut être réalisé grâce à un token communiqué à l’étape préalable ou bien à partir d’informations mémorisées ; E3 - Etape 3 - Le serveur de contenu communique au contrôleur central la liste des terminaux ainsi que la liste des contenus que chacun des terminaux doit recevoir. Chaque contenu est communiqué avec un certain nombre d’informations (identifiant du contenu, délai maximum de réception, temps maximal de réception, taille du contenu) ; E4 - Etape 4 E4A - le contrôleur central calcule un graphe de proximité Gp et un graphe d’intérêts G/. Le contrôleur central sait à tout moment quels nœuds sont dans le voisinage de quels autres nœuds et quels contenus sont à disposition de quels nœuds. E4B - Le contrôleur central calcule périodiquement la fréquence à laquelle les terminaux doivent remonter leurs positions et informe les terminaux quand cette fréquence doit être mise à jour ; E4C - Si le contenu ck doit être distribué aux trois terminaux mobiles représentés dans la figure ci-dessus, alors le contrôleur central choisit, selon un algorithme décrit précédemment, un des trois terminaux mobiles (dans cet exemple, il choisit le terminal UE3) et lui envoie l’instruction de télécharger le contenu directement depuis le serveur de contenus en utilisant sa connexion cellulaire ; E5 - Etape 5 - Le terminal UE3 télécharge le contenu depuis le serveur de contenus ; E6 - Etape 6 - Le terminal UE3 informe le contrôleur central qu’il dispose maintenant du contenu ck ; E7 - Etape 7 - le contrôleur central envoie aux trois terminaux l’instruction d’activer leur interface de communications directes et d’envoyer le contenu ck aux terminaux UE1 et UE2 ; E8 - Etape 8 - le contrôleur central envoie l’instruction au terminal UE3 d’envoyer le contenu ck aux terminaux UE1 et UE2 ; E9 - Etape 9 - le terminal UE3 envoie le contenu ck aux terminaux UE1 et UE2 qui le stocke en local ; E10 - Etape 10 - les terminaux UE1 et UE2 informent le contrôleur central qu’ils disposent maintenant du contenu ck ; E11 - Etape 11 - les terminaux mobiles remontent, quand cela est nécessaire, leurs informations de localisation afin de permettre au contrôleur central de disposer d’un graphe de proximité à jour.

Champ d’application L’invention peut être implémenté dans tout système de communications mettant en œuvre une ou plusieurs des technologies de communication suivantes : • Bluetooth : permet des communications entre terminaux se trouvant dans un rayon d’une dizaine de mètres, nécessite un pairage préalable et disponible sur la plupart des terminaux, • Wi-Fi-direct : permet des communications entre terminaux se trouvant dans un rayon d’une cinquantaine à une centaine de mètres, nécessite un pairage préalable, disponible sur la plupart des terminaux, • Wi-Fi ad hoc : permet des communications entre terminaux se trouvant dans un rayon d’une cinquantaine à une centaine de mètres, ne nécessite aucun pairage préalable et n’a pas de limitations, • LTE ProSe : Cette fonctionnalité est disponible dans le standard LTE, et elle permet la mise en relation directe entre terminaux LTE dans les bandes LTE.

Avantages

Le procédé et le système selon l’invention proposent une solution qui décharge les terminaux de la partie de contrôle et de la communication et dédie le temps de rencontre entre les terminaux à l’échange du contenu de données effectif. La solution proposée bénéficie des multiples interfaces radio des dispositifs pour augmenter l’efficacité des communications et garantir la qualité des échanges de données entre terminaux. L’invention offre les avantages suivants : • Gestion efficace des transmissions de contenu sur les liens de communication D2D (grâce à une connaissance globale de la situation). • Prise de décision centralisée qui permet un arbitrage entre différentes priorités, et mise à jour en temps réel de la décision (avec la mise à jour des informations de contexte). • Intégration aisée dans la chaîne de valeur (entre terminaux et les serveurs de contenus).

METHOD AND SYSTEM FOR EXCHANGING DATA

TECHNICAL FIELD OF THE INVENTION The invention relates to a method and a system for exchanging data in a communication network, using direct communications between mobile terminals (without going through a basic infrastructure in normal operation). The invention applies, for example, in the field of cellular networks, for example GSM, 3G, 4G, and all standards from 3GPP. The mobile terminals concerned are, for example, smartphones, laptops, connected tablets and / or connected vehicles, these terminals having means adapted to communicate directly with each other, without going through a fixed infrastructure, most often through radio links.

Discussion on prior art

There are several types of direct communication between terminals, such as USB connection, Bluetooth standard, ad-hoc Wi-Fi, Wi-Fi direct, etc. Each of these communications has its own characteristics (recalled at the end of the description), for example, correct throughput, wide coverage, as well as a number of technological limitations related to operations such as pairing and discovering the neighborhood.

The problems to be solved for the exploitation of the device-to-device technologies known under the abbreviation D2D are in particular of two kinds.

The first concerns the design of techniques that allow direct wireless radio communication between terminals. This is provided by technologies such as Bluetooth, Wi-Fi Direct and LTE ProSe. Other techniques can be envisaged, for example ultra-wideband or UWB (Ultra Wideband) technique.

The second problem is to efficiently and effectively exploit the direct link of communication between the mobile terminals when the latter exists and is available. It is then necessary to decide when this link D2D will be exploited and what data to transit on this link. In this context, the direct connections between terminals are short and, in the current state of things, the mobile terminals must perpetually scan their neighborhood to discover the other terminals that are nearby. Once a new mobile terminal is discovered, the two terminals exchange their lists of available content and, if there is interest, the actual data exchange takes place. One of the drawbacks of this method is that the battery is requested for the neighborhood discovery which must be carried out continuously, and part of the radio link available when two terminals are close to one another is used. as a control channel for the exchange of content lists rather than for an effective exchange of data. There is therefore a waste of resources. The prior art describes two major families of techniques that allow the exchange of data between mobile terminals: the purely distributed solutions that do not require coordination by a central entity and, on the contrary, the solutions that are assisted by the infrastructure and thus rely on central coordination.

In a distributed solution of the purely D2D type, the idea is to allow the transmission of data between moving mobile terminals without the support of any centralized infrastructure. Since the existence of communication links between nodes depends, among other things, on the mobility of the nodes, these networks are often called "opportunistic networks". The main characteristic of opportunistic networks is the intermittency of connectivity. Indeed, in opportunistic networks, end-to-end connectivity is not assured at all times, as described in K. Fall's paper, entitled "A delay-tolerant network architecture for challenged internets", ACM Sigcomm. , pages 27-34, Karlsruhe, Germany, 2003.

D2D distributed dissemination solutions can be structured into five main categories: simple flood dissemination, probabilistic dissemination, geographic dissemination, knowledge-based dissemination, and network-based dissemination. The main objective of these solutions is to obtain a high dissemination rate while minimizing the number of transmissions in the network. This is possible through a very precise choice of relay nodes. However, these solutions only require local knowledge of the contacts or content to be exchanged, which often limits the effectiveness of the decisions made.

To overcome the problem of finite capacity of a contact, several works have addressed the issue of data fragmentation to improve the success rate of a transmission (knowing that most real-world contacts are very short ). Several fragmentation strategies have been proposed.

The second major family of techniques that allow the exchange of data between mobile terminals relies on the existence of a link between the mobile terminals and the infrastructure, in addition to the direct links between the terminals.

A first case is provided by device-to-device D2D techniques in the advanced versions of LTE (ProSe). In this approach, direct communication between terminals is managed by the base station (eNodeB) by reusing uplink channel resources. Thus, the direct communications remain under the control of the cellular infrastructure of the operator, and operate in a reserved band.

The difficult point in this context is the management of interference. Indeed, these direct emissions must not interfere with emissions on the uplink of other users. One proposed solution is to limit the power of direct communications. Other work optimizes the allocation of resources between communications with eNodeB and between terminals. With this approach, we only manage the direct communications between terminals of the same operator and the additional contribution of technologies such as Wi-Fi or Bluetooth that operate in other frequency bands is not considered.

A second type of approach addresses more directly the way of exchanging content by leveraging direct terminal-to-cell communications to ease the cellular infrastructure. These approaches are inspired by peer-to-peer techniques; we first cut the contents into blocks, then we broadcast each block to different mobile terminals in the cell, the blocks are then distributed to other mobile terminals by direct communications.

The central question is which mobile terminals or which number of mobile terminals to use to exchange the content. If we manage to limit the number of UE users broadcasting content, we save the number of cellular transmissions (which increases the rate of load shedding of the cellular network) and we save the use of terminal batteries. These techniques can be used in particular for real-time data (streaming of the same content to several users in a cell).

A first set of techniques is limited to the case of multimedia content (image or video) for a real-time broadcast. Thus, Kang et al. have developed a "CHUM" technique that applies to real-time multimedia content and broadcasts Wi-Fi content to other mobile devices. This technique is described in the document S.-S. Kang and MW Mutka, "A mobile peer-to-peer approach for multimedia content sharing using 3G / WLAN dual mode channels," Wireless Communications and Mobile Computing, Vol. 5, no. 6, pp. 633-645, 2005.

A similar approach, described in the paper by M.-F. Leung and S.-H. Chan, "Broadcast-Based Peer-to-Peer Collaborative Video Streaming Among Mobile," IEEE Transactions on Broadcasting, vol. 53, no. 1, pp. 350-361, March 2007, is used to connect real-time video streams: the number of broadcast relays is chosen to avoid collisions on the radio channel and data redundancy.

It is also possible to use these techniques to distribute content without real-time constraints that interest a group of users in a neighborhood. We have an additional parameter (compared to streaming) which is the validity period of the content that can be longer (and count in minutes, see hours). It is also possible to use the physical mobility of users to create new opportunities for distributing content and thereby improve its dissemination. These approaches (called traffic shedding) are based on previous techniques derived from delay-tolerant networking (DTN) approaches as described in the document by L. Pelusi, A. Passarella and Conti, "Opportunistic networking data forwarding in mobile disconnected ad hoc networks," IEEE Communications Magazine, vol. 44, no. 11, pp. 134-141, 2006.

In the traffic offload approaches, one begins by sending (via the cellular network) a small number of copies of the content to source mobile terminals which then broadcast to other mobile terminals as their contacts make contact. These techniques work in open loop because they aim to determine the source nodes without dealing with the question of the choice of direct exchanges between terminals. In this context, the main problem is to choose the source nodes in order to minimize the cellular communications or the energy used by the mobile terminals.

To optimize the strategies of selection of source mobile terminals or relays in the cell, all these techniques rely on a fine knowledge of the interactions between mobile terminals and make strong assumptions of stationarity, in terms of the number of nodes and their distribution in the cell, either in terms of their mobility in the cell. All these approaches make an analysis of the data offline to arrive at solutions which work on average and are not necessarily optimal at any moment, because they take into account only average and not instantaneous behavior.

A complementary approach is to work in closed loop as the solution proposed by Whitbeck, in the paper by J. Whitbeck, Y. Lopez, J. Leguay, V. Conan and MD of Amorim, "Push-and-track: Saving infrastructure bandwidth through opportunistic forwarding, "Pervasive and Mobile Computing, vol. 8, no. 5, pp. 682-697, Oct. 2012 and in the patent US8862125.

For each content broadcast by the server, the mobile terminals acknowledge the reception of this content, which allows the server to track the progress of the broadcast in D2D. The server thus detects the cases of blockages and reinjects copies of the content to certain mobile terminals to restart the broadcast. This technique works in a closed loop and its main purpose is to define a reinjection strategy that allows the transmission of content to a group in order to keep a maximum delivery time.

The techniques given by the prior art have, despite their advantages, several disadvantages.

For distributed methods: • Neighbor discovery requires continuous power consumption, even at regular intervals and may be useless if no other terminal is nearby or has content to be exchanged, • Once communication is complete established and the lists of available and / or desired contents exchanged, it is possible that no exchange takes place following a divergence of interests, • The remaining contact time, after exchange of the signaling data, may be insufficient by compared to the time required for data exchange.

Thus, the distributed solutions are not very effective because they require exchanges of control information before any data exchange: among other things, the terminals must identify the contents they already have (storage in a database or a memory ), that they decide the contents which have priority and possibly that they compile additional information on the current state of the buffers of the terminals which are in the neighborhood. These operations consume valuable bandwidth that is no longer available for data transmission. In the case of short-term communications, there is no more room for data transmission.

Centralized solutions have focused on improving the communication of mobile terminals and not on the choice of data to be transmitted. Thus, these solutions do not distinguish the contents of different sizes, of different (local or global) popularity. They are blind to the content to be exchanged, the requests or the needs of the users.

The solutions known from the prior art do not deal with the problem of choosing the data to be transmitted over D2D links. The idea implemented in the present invention uses in particular a centralized entity in the infrastructure that has at least knowledge of the data exchange requirements between the terminals and their location in the network to control the exchange of messages between the terminals. .

In the remainder of the description, the term "radio range" well known to those skilled in the art will be used to designate two terminals close enough to exchange data, the distance being in particular a function of the communication protocol used.

Similarly, the notion of graph is well known to those skilled in the art and will not be detailed. The description uses an interest graph (G /, directed) and a proximity graph (GP, not directed). In the interest graph, a directed link marked Ck from the mobile terminal / 'to the mobile terminal j indicates that i has the content Ck and that this content should be sent to the node j. Thus, there are as many links at the level of the graph between two mobile terminals as the number of contents to be exchanged between these two mobile terminals. There is at least one interest graph per application, while the proximity graph can be unique. Summary of the invention

The description indifferently uses the word node, the terminal word to designate the same object, a terminal can be a user terminal. The invention relates to a method for data exchange in a terminal-to-terminal D2D communication network comprising at least one content server, a central controller comprising a signaling module and a plurality of mobile user terminals i, j, characterized in that it comprises at least the following steps:

At the level of the central controller: • Determine an interest graph (G /, directed) from a list of users and their contents transmitted by the content server, • Calculate a frequency f (i, j) of recovery of the positions of the terminals defined according to at least the mobility of the terminals, • Establish a communication link between at least two terminals i, j, by performing the following steps: • For each terminal j GM (i), where M (i) is the set of terminals j different from the terminal i which have at least one content to be exchanged with the terminal i, calculating the estimated distance dest (i, y) between the terminal i and the terminal j by using the value of the last position pj ^ (i) of the terminal i and the value of the last position pü ^ (y) of the terminal j known by the central controller, • For each terminal j GM (ï), predict the distance dpred (i, y ) between the terminal i and the terminal j using dest (i, y), the relative speed between the terminal i and the terminal j and the frequency of rise of the positions fci.j '), • For each terminal I M (i) define in the graph of interest a parameter g (i., f) which is set to the value 1 when the estimated distance dest (i, j) or the predicted distance dest (i, f) are less than a threshold distance dseuil1 and zero in the opposite case, • When g (i, j) = 1, the central controller sends a instruction to the terminal i having the content to be transmitted to the terminal j, to establish a D2D communication between a terminal i and a terminal j and to transmit the required content, • the terminal j acknowledges ACK the content to the central controller, said central controller issues an instruction to update the content base to the content server.

The updating frequency f (i, j) of the position of the terminals is, for example, determined as a function of the gradient of the distance dest (i, y).

According to another embodiment, the update frequency f (i, /) of the position of a terminal is determined by defining several zones between a first terminal i and a terminal j: • A zone ΖΊ, in which the terminals communicate and in which the updating frequency is a maximum frequency defined according to the application fmax, • A zone Z4 in which the terminals have a weak chance of communicating for which the update frequency is a minimum frequency fmin, • One or more intermediate zones in which the update frequency is between fmin and fmax. At the instant when the terminal i goes back to its current position, the central controller calculates the estimated distance at this instant between the terminals i and j and a next predicted distance as a function of the current frequency and the relative speed between the terminals:

where £ {/ min, / med </ max} · and by passing an instruction to i and j to adapt the frequency if fpred (i, j) * / (i, y) ·

According to an alternative embodiment, a priority level is associated with a content and the central controller on reception of several contents takes into account this level of priority to choose a communication interface to activate.

The method can be implemented in a system using one of the following communication technologies: Bluetooth, Wi-Fi-Direct, Ad-hoc Wi-Fi, LTE ProSe, BLE, LTE D2D.

When the protocol used is the Bluetooth protocol, the method determines the size of the zones as follows:

the relative speed of the two terminals. The invention also relates to a system for managing data exchanges in a communication network comprising a communication module D2D (205) comprising a content server, a central controller and several terminals i, j, characterized in that it comprises at least the following:

A central controller adapted to perform the steps of the method according to the invention and comprising at least: • a content management module, • an SLA module containing a service information required for a content according to the users, a module (203) for the construction of a graph of interest, G /, a module (204) for the construction of a GP proximity graph, • a signaling module,

A content server with at least:

An SLA module containing service information required by each of the user terminals, a memory containing the contents available for the terminals, A mobile terminal comprises at least: a module containing the position information, a communication interface manager adapted to receive an activation signal from the central controller for communication between at least two terminals, • a management module for the D2D communication, • a memory for storing the contents requested by a terminal, • a reception module and execution of instructions transmitted by the central controller, • a communication module.

The system comprises for example one or more communication modules chosen from the following list: a cellular communication module, a Bluetooth communication module, a Wi-Fi communication module, a wireless communication module, an LTE communication module, a communication module BLE communication module, an LTE communication module D2D.

BRIEF DESCRIPTION OF THE FIGURES Other features and advantages of the present invention will become more apparent upon reading the description of appended exemplary embodiments of the figures which represent: FIG. 1, an example of a general architecture of the system, FIG. a detail of the modules allowing the implementation of the method according to the invention by the terminals and the central controller, • Figure 3A, an illustration of the steps of the method and Figure 3B so-called control zones and • Figure 4, an illustration of the steps of the process according to the invention.

Detailed description of one or more embodiments

The system according to the invention serves in particular as an intermediary between a content server and several mobile terminals that wish to exchange data relating to this service.

FIG. 1 illustrates an example of a system 1 according to the invention comprising a content server 2, a plurality of mobile terminals wishing to exchange data relating to a service, and a central controller 3 whose particular function is to unload the terminals of the part control of communication in normal operation. In this central controller are listed the positions of the terminals and the data to be exchanged. The terminals exchange Do data using efficient signaling as adapted to the exchange requirements between the two terminals. The signaling makes it possible, by adapting the frequency of rise of position (frequency of update of the information), to ensure a mechanism of discovery or "beaconing" more effective. In addition, these terminals no longer proceed continuously to the discovery phase of neighboring terminals, thus preserving their battery. The mobile terminal will use its contact time mainly for a useful data exchange.

The content server 2 transmits metadata and the list of contents that each terminal is supposed to receive 101 to the central controller 3 which creates and maintains the interest graph G, and the proximity graph GP. The central controller 3 sends instructions 102.to the mobile terminals Mi and receives the position and information relating to the transfer of the content 103 from the mobile terminals, according to steps detailed below. The central controller 3 sends regular updates to the content server concerning the nodes having received the requested contents 104. A backup channel 105 can be used if necessary between the content server and the mobile terminals.

The central controller has a global view of the network. In particular, it presents the following functionalities: • The central controller knows at all times what the geographical positions of the different mobile terminals are, what direct communication technologies they have and what data they have as content to exchange with one or more other terminals. It can also have additional information such as the level of the battery, the amount of cellular data consumed (or remaining to be consumed) by a terminal, etc. ; • Depending on the positions of the mobile terminals, the direct communications technologies they have and the data they have and expect (and possibly based on other information such as the battery level), the central server is capable of calculating, for a time t, the terminals which must communicate with which other terminals and which data they must exchange; • The central controller sends activation and deactivation instructions for the direct communications interfaces only when an exchange is possible, thus preventing the terminals from unnecessarily activating the direct communication interface; • The central controller sends the exchange instructions to the terminals. These instructions contain, for example, the identifier of the source terminal IDS, the identifier of the destination terminal IDd and the data (contents) to be exchanged; • When the terminals receive new content, they inform the central controller that updates its database indicating the couples (terminal, data content available to the terminal).

FIG. 2 represents in detail an example of modules equipping the mobile terminals as well as the central controller according to the invention.

The central controller 20 includes a content management module 201, an SLA module, 202, containing the quality of service required for a content according to the users, a module 203, for the construction of graphs of interest, G ,, a module 204 for proximity construction GP_ the graphs are constructed from the information transmitted by the user terminals, a module 205 "calculation of D2D communications" which will receive the information on the interest graph and the proximity graph, calculate the exchanging content that must be carried out and transmitting the instructions to the signaling module 206. The signaling module generates the instruction messages, in particular the activation / deactivation of the interfaces of the user terminals as well as the content exchange instructions.

A terminal 21 comprises an application layer 211, an application programming interface or API 212, a communication management module D2D, 213. This management module 213 includes a storage memory of the contents 214 requested by a terminal, a "module 215 comprising the information relating to the terminal, GPS information, battery level, etc., a module 216 for receiving and executing the instructions transmitted by the central controller, a routing module 217, an interface manager 218, different modes of operation. communication: cellular, 219, Bluetooth, 220, Wi-Fi 221. It is also possible to use any other wireless communication module.

The module 216 for receiving and executing the instructions will notably activate and deactivate the communication interfaces of the mobile terminals.

A content server 22 comprises an SLA module 223 containing the subscription information of each of the users, information that it transmits to the central controller, and a memory 222 containing the contents available for the terminals.

The exchanges of information and instruction between the central controller, the terminals and a content server are made using communication technologies known to those skilled in the art and which will not be detailed because not being the object of the invention.

FIG. 3A illustrates a succession of steps implemented by the central controller. The method implemented by the invention consists in particular in bringing the "data" and "geographical proximity" dimensions closer together, that is to say that two mobile terminals nearby only establish a connection if they have data at their disposal. exchange.

This decision, taken jointly by the D2D interaction calculation module 205 and the signaling module 206, is divided into two decisions taken related to: • An instruction that aims to indicate to a mobile terminal to trigger the D2D discovery mechanism known as the English term beaconing, D2D channel establishment and content exchange, • An instruction telling each terminal how often to go back to the central controller.

The interest graph Gj is not directed, because it may be that a terminal i has something to send to the terminal j but not the opposite. A directed link stamped ck from a mobile terminal i to a mobile terminal indicates that i has the content ck and that this content should be sent to the terminal y. Thus, there are as many links between two mobile terminals as the number of contents to be exchanged between these two mobile terminals. On the other hand, the proximity graph GP is not directed, and each arc is labeled by the estimated value of the distance between the mobile terminal i and the mobile terminal j. There is at least one interest graph per application, while the proximity graph can be unique.

In order for the interaction calculation module 205 to decide whether two mobile terminals i and y must establish a connection, two conditions must be respected. First, the mobile terminals must have at least one content ck to exchange. Then, the mobile terminals must be close enough to each other for a connection to be established (terminals in radio range for example).

The first condition is verified by the content server 22 which sends to the central controller 20 the list of subscribed mobile terminals and the contents to be entrusted to them. The "interest graph" construction module 203 creates and maintains the interest graph G, from this list.

So that the central controller decides if two mobile terminals are close enough to each other (second condition, exchange of content), it must have the geographical location (position) of these mobile terminals; this makes it possible to verify that the terminals are for example in radio range or sufficiently close to one another to establish a communication. Having the position of mobile terminals continuously can be extremely expensive in terms of energy consumption. The method uses an intelligent algorithm executed by the central controller for the recovery of positions and contents exchanged between terminals in a succession of steps, a detailed example is given below.

Let N be the list of all the nodes authenticated with the central controller and C (ij) the set of links in the interest graph going from i to j (that is to say, the list of contents that the node i owns and the node j asks). Note that C (i, y) C (j, ï). Let M (ï) be the set of all nodes j Φ i for which [C (i, y) u C (j, i)] Ψ {} (ie, i and j have at least content to be exchanged). The set M (i) also defines the neighbors of the node i in the proximity graph.

For each node ie N, the central controller 20 retains the last and penultimate known geographical positions of i, and transmitted by the node i, noted respectively pj ^ (i) and p ^^ (i), 301. These two positions are used to estimate the movement speed of i, denoted v (t). These position values correspond to the last positions updated to the information feedback frequency defined below. From the displacement velocity û (i) and the displacement speed of the node j, v (j), the central controller determines the relative velocity v (i, y) between the two nodes i and j.

For each node I M (i), the central controller calculates, 302, dest (i, y '), the estimated distance between i and j which is the link between these two nodes in the proximity graph. This distance is obtained from the value of the position of the node i and the value of the position pf ^ (j) of the node j. The estimated distance dest (i, y) - dest (j, i). If j. M (i), it is not necessary to estimate the distance between i and j because in any case no radio connection will be established between these two nodes or the probability of a radio connection tends to zero. This calculation saving is potentially very important, mainly in cases where the density of the interest graph is low. At the instant when the node i goes back to its current position p1 ^ (i), the central controller not only calculates the estimated distance at this instant between the nodes i and j, but also predicts the next distance separating them as a function of the frequency of rising positions and relative speed between nodes:

where / (i ,;) is the frequency at which the nodes are supposed to go up their geographical positions. This frequency of updating or raising position information depends in particular on the mobility of the nodes and the distance separating the nodes; his calculation will be described later in the document.

For each node I M (Q, the central controller will define in the interest graph a parameter g (i, f), which is 1 if the discovery between i and j is activated, 304, and which is equal to 0 otherwise, with g (i, j) = g (j, i) · Discovery between i and j is enabled when dest (i, y) <dseuül, 303. dseuül is the distance below which it is estimated that the nodes are close enough to be able to establish device-to-device (D2D) communication.

The central controller runs two processes in parallel. The first is in charge of determining the exact moment at which the nodes must try to communicate. The second is updates to the frequency at which a node must move up. Briefly (detailed later), when g (i, j) = 1, the central controller sends a START instruction, 305, to the nodes i and j stating that, as soon as the link D2D is established, i is supposed to send to j the contents specified by C (i, y) in the graph of interests, 306. The case of transmission of the contents of the node j to the node i would be treated analogously.

Different strategies for choosing priority content are possible depending on additional information on the possible connection time, the size of the content, and their popularity, for example. At each rise of a new position by each of the nodes N, the central controller follows the procedure described in the following algorithm:

ALGORITHM

The central controller receives the last known position of the node i, piast (i), 301, this position is updated at the selected ascent frequency,

BEGINNING FOR jeM (i)

Calculate dest (i, j), 30 Calculate v (i, j)

Calculate dpred (i, j) IF ((dest (i, j) <dseui11) or (dpred (i, j) <dseui11)),

303, THEN g (i, j) = 1, 304, START (i, j, C (i, j), C (j, i)) / * Beaconing then transfer contents * /, 305, 306

IF NOT g (i, j) = 1 THEN g (i, j) = 0 STOP (i, j) / * Stop the attempt to communicate * /, 309

END IF

END IF

endfor

END

When the central controller observes the transition from g (1, j) to 1, it sends to the nodes i and j a message containing the instruction to start a phase of discovery (beaconing) so that i and j are discovered. Where appropriate, i and j establish a D2D link, according to a process known to those skilled in the art.

The central controller sends to the nodes i and j a list of the contents to be exchanged (which can be a subset of the lists c (i, j) and c (/, 0). By having these lists in advance, the two nodes can immediately exchange content without any loss of time and capacity, 306. The node having received the content transmits to the central controller an acknowledgment, ACK, 307. The central controller requests the content server to update its data, (terminal, content owned by a terminal), 308.

The function START, 305, consists in sending the nodes i and j the instruction to start the "beaconing", establish a communication channel D2D, if the communication establishment conditions are met, and exchange the specified contents. in the instruction message. The STOP function, 309, indicates that the two nodes must stop trying to communicate because either they are too far away or because they have nothing to exchange.

The nodes being potentially mobile and the lists of contents to be exchanged variable in time, the central controller will execute a method of refreshing the data, in particular the positions of each of the nodes, at a frequency adapted to the needs of the system: • the list C (i, y) is updated by the acknowledgments sent by j to the central controller (for received contents) and by the content server (new contents may be requested, for example). If j receives a specified content in C (i, y) of a node k Ψ i, this results in an update of C (i, j), 308, • The position p1Zst (0 is updated regularly at a frequency / (i, y), 310, the manner of determining the frequency being detailed below, • The estimated distance dest (i, y) is updated each time the position of one of the two terminals ρΰΠ ( ί) and / or PÎZitC /) is updated, the same is true for the predicted distance dpred (i, y), • The speed v (i, y) is updated every time pü ^ ( i) and / or P1Z ^ G ') are updated.

FIG. 3B illustrates the approach adopted by the method according to the invention for determining a value of frequency of / (i, y) e {/ min, / med, / max) of the rise of geographical positions as a function, in particular, of the mobility of the nodes and the distance that separates the nodes having contents to be exchanged. The principle is as follows: when i and j are sufficiently far apart, there is no need to have a frequency of raising the position information too high. The update frequency of the location information transmitted to the central controller must instead increase as the nodes approach, because the probability that the nodes are discovered increases as well. The problem is that the nodes i and j do not know the distance separating them (only the central controller knows it), and each time the frequency of rise of the positions changes, the central controller must send a message to the node in question for that he adapts the value of the frequency. A significant rate of frequency change would imply a signal overload too high. This is not acceptable. The idea implemented by the method consists in controlling this process by means of a sharing of space in "control zones" centered around each terminal, a terminal being able to have several neighbors at the same time. To explain the operation of the approach, the diagram of FIG. 3B showing three threshold values of three thresholds defining three zones is used: Zone 1, Z 1, zone of contact, within the radius of the grid. This is the area in which the nodes are supposed to communicate because it is defined by the maximum communication radius expected for the technology used. This zone requires a high / maximum frequency for the recovery of positions, because the nodes have a good chance of being in radio range and thus being able to exchange contents; • Zone 2, Z2, approach zone, between the rays of the second and the second. This zone serves to compensate for unanticipated variations in the relative velocity between the nodes. The maximum frequency is also used in this zone because the nodes are still close enough to have a chance to discover themselves; • Zone 3, Z3, attention zone, between the rays of 2 and 3 rd. This is an intermediate zone in which the nodes go back to their positions at an average rate. This zone is defined to allow a progressive change of frequency of the positions update. It also serves to mitigate the uncertainties in the movements of mobile terminals; • Zone 4, Z4, (remote area, beyond radius of 3). In this zone, there is little chance that the nodes will meet in the near future, ie they can get closer to exchange contents. The frequency for raising positions in this area may be arbitrarily low. The example of structuring the axis connecting the nodes i and j in four zones described above and illustrated in FIG. 3B is only one example. Without departing from the scope of the invention, it is possible to define more than four zones as illustrated in the figure and the procedure described above would work in a similar manner. At the moment when node i goes back to its current position plast '(i), the central controller not only calculates the distances dest (Z, y) and dpred (i, y), but also predicts /' pred (i, y ), which indicates the frequency corresponding to the zone when the nodes are at a distance dpred (i, y).

The following test is required:

IF ypred ^ y) φ THEN / (i, 7) = / Pred (i, j)

Send instruction to frequency adaptation i and y

END IF

When a node i seeks to communicate with several other nodes in the network, the highest rate of reporting of the position information among all those calculated will be retained.

The size of the zones will depend in particular on the communication technology used. The threshold value depends on the technology. For example, ten meters for Bluetooth, forty meters for IEEE 802.11ac, or even up to half a kilometer for LTE Direct. To calculate the size of the other zones, we consider that, during the crossing of the zone in question, the node should be able to send at least twice its position. So :

Frequency Values {fmin, fmedJmax}: The efficiency of the system is directly related to the frequency with which the nodes go back to their positions. The values of {/ min »/ med» / max} can be determined as follows:

• / min: ®st the minimum frequency that is used primarily to signal the presence of the node in the network. • fmax: depends on both the link layer technology, the relative speed between the nodes and the detection objective. As an illustration, suppose: o Bluetooth technology: range of about ten meters, o Pedestrian nodes: movement speed of the order of one meter per second. o Detection objective: for example, the node must be detected at least 80% of the time of presence. This means that the first lift of position must not be done after 20% of the total time where the nodes will be in contact.

Thus, two pedestrian nodes crossing at the relative speed of 2m / s (each at 1m / s) are only within range of communication for 10s (2x communication radius / relative speed). To meet the 80% target, the frequency must not be less than / max = 1 / 2s. • Zmed: This frequency can be obtained in several ways, for example it is possible to choose / med = / max / 2.

The choice of the minimum, maximum and intermediate frequency values for the feedback of the position information will result from a compromise between the desired accuracy for the positions of the terminals, the communication technology used, the context of the application.

When several applications and contents coexist, and, during a contact, several contents respect the three conditions, the central controller will set up a system of priorities between the contents. In this context, several solutions can be envisaged. As an illustration, one possible solution is to give a greater probability of choice to the largest content. Data content has priority information in a dedicated data field. The central controller will therefore check the priority of each of the contents to be exchanged and indicate to the mobile terminal, at the same time as the activation signal of its communication interface, the priority content to be transmitted first. In the case of several contents, it is possible to envisage that the central controller transmits a list of contents with a transmission order.

FIG. 4 illustrates in another way an example of steps implemented by the method according to the invention. E1 - Optional Step 1 - Each user terminal first registers with the content distribution service at the content server. This step does not require a mobile terminal. Terminals authenticate as endpoints to the content server using a pair, for example, containing a username and password used during registration. The content server sends the user an identifier (for example a token) whose validity is temporary, according to principles known to those skilled in the art; E2 - Step 2 - each terminal opens a session with the central controller and sends information containing its current location, for example its GPS position, the topology of the network, possibly the neighborhood (presence of nodes in its neighborhood in the sense, for example, of the neighborhood radio known to those skilled in the art), etc. This can be achieved through a token communicated at the previous stage or from stored information; E3 - Step 3 - The content server communicates to the central controller the list of terminals and the list of contents that each of the terminals must receive. Each content is communicated with a certain amount of information (identifier of the content, maximum reception time, maximum reception time, size of the content); E4 - Step 4 E4A - the central controller calculates a proximity graph Gp and a graph of interests G /. The central controller knows at any time which nodes are in the vicinity of which other nodes and which contents are available from which nodes. E4B - The central controller periodically calculates the frequency at which the terminals must go back to their positions and informs the terminals when this frequency needs to be updated; E4C - If the content ck is to be distributed to the three mobile terminals represented in the figure above, then the central controller chooses, according to an algorithm described above, one of the three mobile terminals (in this example, it chooses the terminal UE3) and instructs him to download the content directly from the content server using his cellular connection; E5 - Step 5 - The UE3 terminal downloads the content from the content server; E6 - Step 6 - The terminal UE3 informs the central controller that it now has the content ck; E7 - Step 7 - the central controller sends the three terminals the instruction to activate their direct communications interface and to send the content ck to the terminals UE1 and UE2; E8 - Step 8 - the central controller sends the instruction to the terminal UE3 to send the content ck to the terminals UE1 and UE2; E9 - Step 9 - the terminal UE3 sends the content ck to the terminals UE1 and UE2 which stores it locally; E10 - Step 10 - the terminals UE1 and UE2 inform the central controller that they now have the content ck; E11 - Step 11 - the mobile terminals go back, when necessary, their location information to allow the central controller to have an up-to-date proximity graph.

Scope The invention can be implemented in any communications system implementing one or more of the following communication technologies: • Bluetooth: allows communications between terminals within a radius of about ten meters, requires pairing prerequisite and available on most terminals, • Wi-Fi-direct: allows communications between terminals within a radius of fifty to a hundred meters, requires prior pairing, available on most terminals, • Wi -Ad hoc: allows communication between terminals within a range of 50 to 100 meters, requires no prior pairing and has no limitations, • LTE ProSe: This feature is available in the LTE standard , and it allows the direct connection between LTE terminals in the LTE bands.

Advantages

The method and system according to the invention propose a solution that discharges the terminals of the control part and the communication and dedicates the meeting time between the terminals to the exchange of the actual data content. The proposed solution benefits from the multiple radio interfaces of the devices to increase the efficiency of the communications and to guarantee the quality of the data exchanges between terminals. The invention offers the following advantages: • Efficient management of content transmissions on D2D communication links (thanks to a global knowledge of the situation). • Centralized decision making that allows for arbitration between different priorities, and real-time updating of the decision (with the update of context information). • Easy integration into the value chain (between terminals and content servers).

Claims (9)

REVENDICATIONS 1 - Procédé d’échange de données dans un réseau de communication D2D, terminal-à-terminal, comprenant au moins un serveur de contenus (22) , un contrôleur central (20) comprenant un module de signalisation (206) et plusieurs terminaux utilisateurs mobiles i, j, caractérisé en ce qu’il comporte au moins tes étapes suivantes : Au niveau du contrôleur central (20) : ® Déterminer un graphe d’intérêts dirigé G/, à partir d’une liste d’utilisateurs et de leurs contenus transmis par le serveur de contenus, ® Calculer une fréquence de remontée des positions des terminaux définie en fonction au moins de la mobilité des terminaux, « Etablir un lien de communication entre au moins deux terminaux i, j, en exécutant les étapes suivantes : ® Pour chaque terminal j e M(i), où M(Q est l’ensemble des terminaux j différents du terminal i qui ont au moins un contenu à échanger avec le terminal i, calculer la distance estimée dest(i,j) entre le terminal i et le terminal j en utilisant la valeur de la dernière position p^(i) du terminal i et la valeur de la dernière position pü^tO) du terminal j connues par ie contrôleur central, * Pour chaque terminal j e M(i), prédire la distance dpred(i,jQ entre te terminal i et le terminal j en utilisant dest(i,j), la vitesse relative entre le terminal i et le terminal j et la fréquence de remontée des positions /(ù/), ® Pour chaque terminal j e M(i) définir dans te graphe d’intérêts un paramètre g(i,j) qui est mis à 1 lorsque ia distance estimée dest(j,/) ou la distance prédite desî(i,f) sont inférieures à une distance seuil dseiüîl et à zéro dans te cas contraire, ® Lorsque = 1, le contrôleur central envoie une instruction au terminal i disposant du contenu à transmettre au terminal j, pour établir une communication D2D entre un terminal i et un terminal j et pour transmettre le contenu requis, Au niveau du terminal Le terminai j émet un accusé réception ACK du contenu vers le contrôleur central (20), ledit contrôleur central émet une instruction de mise à jour de la base des contenus vers le serveur de contenus (22).1 - Method for exchanging data in a terminal-to-terminal D2D communication network, comprising at least one content server (22), a central controller (20) comprising a signaling module (206) and several user terminals mobile i, j, characterized in that it comprises at least the following steps: At the central controller (20): ® Determine a directed interest graph G /, from a list of users and their content transmitted by the content server, ® Calculate a frequency of reporting the terminal positions defined according to at least the mobility of the terminals, "Establish a communication link between at least two terminals i, j, by performing the following steps: For each terminal I M (i), where M (Q is the set of terminals j different from the terminal i which have at least one content to be exchanged with the terminal i, calculate the estimated distance dest (i, j) between the terminal i and the t erminal j using the value of the last position p ^ (i) of the terminal i and the value of the last position pü ^ tO) of the terminal j known by the central controller, * For each terminal I M (i), predict the distance dpred (i, jQ between the terminal i and the terminal j using dest (i, j), the relative speed between the terminal i and the terminal j and the rising frequency of the positions / (ù /), ® for each terminal M i (i) define in the graph of interest a parameter g (i, j) which is set to 1 when the estimated distance dest (j, /) or the predicted distance of i (i, f) are less than one If = 1, the central controller sends an instruction to the terminal i having the content to be transmitted to the terminal j, to establish a D2D communication between a terminal i and a terminal j and to transmit a distance D2. the required content, At the terminal level The terminai j acknowledges ACK content to the central controller (20), said central controller issues an instruction to update the content database to the content server (22). 2 - Procédé selon la revendication 1 caractérisé en que la fréquence de mise à jour /(/, /) de la position des terminaux est déterminée en fonction du gradient de la distance dest(i,j),2 - Process according to claim 1 characterized in that the update frequency / (/, /) of the position of the terminals is determined according to the gradient of the distance dest (i, j), 3 - Procédé selon la revendication 2 caractérisé en ce que la fréquence de mise à jour /(i,/) de la position d’un terminal est déterminée en définissant plusieurs zones entre un premier terminal i et un terminal / ; * Une Zone Zi, dans laquelle les terminaux communiquent et dans laquelle la fréquence de mise à jour est une fréquence maximale définie en fonction de l'application fmax, ® Une Zone Z4 dans laquelle les terminaux ont une faible chance de communiquer pour laquelle la fréquence de mise à jour est une fréquence minimale fmin, * Une ou plusieurs zones intermédiaires dans laquelle ou lesquelles la fréquence de mise à jour est comprise entre fmin et fmax.3 - Process according to claim 2 characterized in that the updating frequency / (i, /) of the position of a terminal is determined by defining several areas between a first terminal i and a terminal /; * A Zone Zi, in which the terminals communicate and in which the updating frequency is a maximum frequency defined according to the application fmax, ® A Zone Z4 in which the terminals have a weak chance to communicate for which the frequency update is a minimum frequency fmin, * One or more intermediate zones in which the update frequency is between fmin and fmax. 4 - Procédé selon la revendication 3 caractérisé en ce qu’à l’instant où le nœud i remonte sa position courante, le contrôleur central calcule la distance estimée à cet instant entre les nœuds i et j et une prochaine distance prédite en fonction de la fréquence actuelle et de la vitesse relative entre les nœuds :4 - Process according to claim 3 characterized in that at the instant when the node i back to its current position, the central controller calculates the estimated distance at this time between the nodes i and j and a next predicted distance according to the current frequency and relative speed between nodes: où /(ij) G {/min, fmed, fmax}· ®t ®n transmettant une instruction à i et à / d’adapter la fréquence si fpreà(i,j) * f(if) .where / (ij) G {/ min, fmed, fmax} · ®t ®n transmitting an instruction to i and to / adapt the frequency if fpreà (i, j) * f (if). 5 - Procédé selon l’une des revendications précédentes caractérisé en ce que l’on associe un niveau de priorité à un contenu et le contrôleur central sur réception de plusieurs contenus tient compte de ce niveau de priorité pour choisir une interface de communication à activer.5 - Method according to one of the preceding claims characterized in that one associates a priority level to a content and the central controller on receipt of several contents takes into account this level of priority to choose a communication interface to activate. 6 - Procédé selon l’une des revendications 1 à 5 caractérisé en ce qu’il utilise une des technologies de communication suivantes : Bluetooth , Wi-Fi-direct, Wi-Fi ad hoc , LTE ProSe.6 - Method according to one of claims 1 to 5 characterized in that it uses one of the following communication technologies: Bluetooth, Wi-Fi direct, Wi-Fi ad hoc, LTE ProSe. 7 - Procédé selon la revendication 3 caractérisé en ce que l'on utilise le protocole Bluetooth et on détermine la taille des zones de la manière suivante :7 - Process according to claim 3 characterized in that the Bluetooth protocol is used and the size of the zones is determined as follows: la vitesse relative des deux terminaux.the relative speed of the two terminals. 8 - Système de gestion d’échanges de données dans un réseau de communication comprenant un module de communication D2D (205) comportant un serveur de contenus, un contrôleur central (20) et plusieurs terminaux i, j, caractérisé en ce qu’il comporte au moins les éléments suivants : Un contrôleur central (20) adapté à exécuter les étapes du procédé selon la revendication 1 et comportant au moins : ® un module de gestion de contenu (201), ® un module SLA, (202), contenant l'information de service requise pour un contenu en fonction des utilisateurs,8 - Data exchange management system in a communication network comprising a communication module D2D (205) comprising a content server, a central controller (20) and several terminals i, j, characterized in that it comprises at least the following elements: A central controller (20) adapted to execute the steps of the method according to claim 1 and comprising at least: ® a content management module (201), ® an SLA module, (202), containing the required service information for content based on users, ® un module (203) pour la construction d’un graphe d’intérêts (203), G/, et un module (204) pour la construction d’un graphe de proximité GP> (204), ® un module de signalisation (206), Un serveur de contenus comportant au moins : ® un module SLA (223) contenant l’information de services requise par chacun des terminaux utilisateurs, * une mémoire (222) contenant les contenus disponibles pour les terminaux, Un terminal mobile comprenant au moins : * un module (215) contenant les informations de position, ® un gestionnaire des interfaces de communication (218) adapté à recevoir un signai d’activation de la part du contrôleur central pour la communication entre au moins deux terminaux, « un module de gestion de la communication D2D, (213) ® une mémoire de stockage des contenus (214) demandés par un terminal, ® un module (216) de réception et exécution des instructions transmises par le contrôleur central, * un module de communication (219, 220, 221).® a module (203) for the construction of a graph of interest (203), G /, and a module (204) for the construction of a proximity graph GP> (204), ® a signaling module ( 206), a content server comprising at least: ® an SLA module (223) containing the service information required by each of the user terminals, * a memory (222) containing the contents available for the terminals, A mobile terminal comprising at least one minus: * a module (215) containing the position information, ® a communication interface manager (218) adapted to receive an activation signal from the central controller for communication between at least two terminals, "a module for managing the D2D communication, (213) ® a content storage memory (214) requested by a terminal, ® a module (216) for receiving and executing instructions transmitted by the central controller, * a communication module (219 , 220, 221). 9 - Système selon la revendication 8 caractérisé en ce qu’il comporte un ou plusieurs modules de communication choisis parmi la liste suivante : un module de communication cellulaire (219), un module de communication Bluetooth, (220), un module de communication LTE, un module de communication LTE D2D, un module de communication BLE, un module de communication WI-FI (221), un module de communication sans fil.9 - System according to claim 8 characterized in that it comprises one or more communication modules selected from the following list: a cellular communication module (219), a Bluetooth communication module, (220), an LTE communication module , an LTE communication module D2D, a communication module BLE, a communication module WI-FI (221), a wireless communication module.
FR1601868A 2016-12-27 2016-12-27 METHOD AND SYSTEM FOR EXCHANGING DATA Active FR3061397B1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
FR1601868A FR3061397B1 (en) 2016-12-27 2016-12-27 METHOD AND SYSTEM FOR EXCHANGING DATA
EP17823121.3A EP3563593B1 (en) 2016-12-27 2017-12-20 Data exchange method and system
ES17823121T ES2863312T3 (en) 2016-12-27 2017-12-20 Data exchange procedure and system
PL17823121T PL3563593T3 (en) 2016-12-27 2017-12-20 Data exchange method and system
PCT/EP2017/083852 WO2018122069A1 (en) 2016-12-27 2017-12-20 Data exchange method and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1601868 2016-12-27
FR1601868A FR3061397B1 (en) 2016-12-27 2016-12-27 METHOD AND SYSTEM FOR EXCHANGING DATA

Publications (2)

Publication Number Publication Date
FR3061397A1 FR3061397A1 (en) 2018-06-29
FR3061397B1 true FR3061397B1 (en) 2019-07-05

Family

ID=58347435

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1601868A Active FR3061397B1 (en) 2016-12-27 2016-12-27 METHOD AND SYSTEM FOR EXCHANGING DATA

Country Status (5)

Country Link
EP (1) EP3563593B1 (en)
ES (1) ES2863312T3 (en)
FR (1) FR3061397B1 (en)
PL (1) PL3563593T3 (en)
WO (1) WO2018122069A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2952776B1 (en) 2009-11-17 2011-12-30 Thales Sa METHOD AND SYSTEM FOR DISTRIBUTING CONTENT WITH GUARANTEES OF DELIVERY TIMES IN HYBRID RADIO NETWORKS
US20140194115A1 (en) * 2013-01-08 2014-07-10 Electronics & Telecommunications Research Institute Method for discovery in device-to-device communications and apparatus for the same
CN104427489B (en) * 2013-08-29 2018-11-23 电信科学技术研究院 A kind of communication switching, method for building up and equipment
CN110191440B (en) * 2014-04-22 2024-03-01 华为技术有限公司 D2D communication discovery method, device and system

Also Published As

Publication number Publication date
PL3563593T3 (en) 2021-06-14
ES2863312T3 (en) 2021-10-11
FR3061397A1 (en) 2018-06-29
EP3563593B1 (en) 2021-01-06
WO2018122069A1 (en) 2018-07-05
EP3563593A1 (en) 2019-11-06

Similar Documents

Publication Publication Date Title
BE1023200B1 (en) Packet Data Network Connections for Multiple Priority Wireless Devices
TW200534647A (en) Method and arrangement in wireless ad hoc or multihop networks
EP2887743B1 (en) Communication method in a wireless telecommunications network, associated computer program and wireless communication node
EP3549352B1 (en) Electricity metering device comprising a powerline interface and at least a radiofrequency interface.
EP3804408A1 (en) Method of selecting a route in an ad hoc network
EP2070276B1 (en) Method for evaluating the reliability of a route in a cooperative network
EP3580898A1 (en) Method and device for determining an energy-saving routing path
FR3061397B1 (en) METHOD AND SYSTEM FOR EXCHANGING DATA
EP3100582B1 (en) Method of communication between a battery powered terminal and a base station and associated communication network
EP3843449B1 (en) Method for switching off a communication network
FR3052942B1 (en) METHOD FOR DISSEMINATION OF DATA IN A MESH NETWORK
EP2936886B1 (en) Method for establishing a strategy for saving the energy of mobile terminal batteries
Tysowski et al. Peer to peer content sharing on ad hoc networks of smartphones
WO2018220301A1 (en) Method of direct communication between terminals
Popova et al. Improving downlink umts capacity by exploiting direct mobile-to-mobile data transfer
EP3607800B1 (en) Wireless communication system comprising a physical channel for overall random access in time and space
EP3619990B1 (en) Method and system for distribution in a mixed point-to-multipoint and point-to-point (d2d) network
FR3135587A1 (en) Method and device for dynamic communication of topology control messages in an ad-hoc mobile network
FR3126580A1 (en) TRANSMISSION METHOD AND NODE DEVICE IMPLEMENTING SUCH METHOD
FR3126579A1 (en) TRANSMISSION METHOD AND NODE DEVICE IMPLEMENTING SUCH METHOD
WO2009047418A1 (en) Method for data communication in a co-operative cellular network, and corresponding device and computer program product
FR3042618A1 (en) METHOD, DEVICES AND SYSTEM FOR ESTABLISHING A COMPUTER CLOUD WITH REPLY DELAY SIGNALING
FR2949929A1 (en) Method for managing access requests to wireless 7.1 audio network for insertion of applicant node, involves adapting transmission parameters based on presence or absence of information relative to access request transmitted by node
WO2014090412A1 (en) Method for obtaining hierarchical feedback from entity-location tracking in a theater of operations

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20180629

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7