FR2737372A1 - Dispositif et procede d'interconnexion de reseaux, routeur ip comprenant un tel dispositif - Google Patents

Dispositif et procede d'interconnexion de reseaux, routeur ip comprenant un tel dispositif Download PDF

Info

Publication number
FR2737372A1
FR2737372A1 FR9509392A FR9509392A FR2737372A1 FR 2737372 A1 FR2737372 A1 FR 2737372A1 FR 9509392 A FR9509392 A FR 9509392A FR 9509392 A FR9509392 A FR 9509392A FR 2737372 A1 FR2737372 A1 FR 2737372A1
Authority
FR
France
Prior art keywords
address
packet
connection
parameters
ipv
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.)
Granted
Application number
FR9509392A
Other languages
English (en)
Other versions
FR2737372B1 (fr
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to FR9509392A priority Critical patent/FR2737372B1/fr
Priority to AU67034/96A priority patent/AU6703496A/en
Priority to PCT/FR1996/001179 priority patent/WO1997005727A1/fr
Publication of FR2737372A1 publication Critical patent/FR2737372A1/fr
Application granted granted Critical
Publication of FR2737372B1 publication Critical patent/FR2737372B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Landscapes

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

Abstract

L'invention concerne un procédé d'interconnexion de réseaux mettant chacun en oeuvre la technologie internet, du type permettant d'interconnecter un premier réseau (1) présentant un adressage IP privé et un second réseau (2) présentant un adressage IP normalisé, lesdits premier et second réseaux véhiculant des paquets, chacun desdits paquets comportant un en-tête IP comprenant notamment un champ "adresse IP source" et un champ "adresse IP destination", les paquets étant dits sortants s'ils se déplacent du premier (1) vers le second (2) réseau à travers ledit dispositif et sortants dans le cas contraire. Le procédé de l'invention comprend, pour chaque paquet sortant, une première étape de conversion de l'adresse IP privée contenue dans ledit champ "adresse IP source", de façon que ledit champ "adresse IP source" dudit paquet sortant contienne, après conversion, une adresse IP normalisée intermédiaire et unique. Le procédé de l'invention comprend également, pour chaque paquet entrant, une seconde étape de conversion de l'adresse IP normalisée intermédiaire et unique contenue dans le champ "adresse IP destination", de façon que ledit champ "adresse IP destination" audit paquet entrant contienne, après conversion, une des adresses privées du premier réseau.

Description

Dispositif et procédé d'interconnexion de réseaux, routeur IP
comprenant un tel dispositif.
Le domaine de l'invention est celui des réseaux de télécommunication mettant en
oeuvre la technologie internet.
Plus précisément, l'invention concerne un dispositif et un procédé d'interconnexion de deux réseaux mettant chacun en oeuvre la technologie internet, I'un présentant un adressage IP privé et l'autre un adressage IP normalisé.
La technologie internet, aussi appelée technologie TCP/IP, est basée sur l'utilisation des protocoles TCP/IP qui se définissent comme une suite de protocoles visant non seulement à interconnecter des calculateurs reliés par un même réseau physique, mais aussi à interconnecter ces différents réseaux physiques entre eux de manière à constituer un réseau logique unique.
Une des particularités marquantes de cette suite de protocoles est d'être indépendante du support physique, c'est-à-dire de fonctionner sur (et donc d'interconnectcr) toutes les technologies de support présentes et à venir (Ethernet, Token
Ring, X.25, simple câble série, ATM, RNIS, Relais de Trames, etc...).
La technologie TCP/IP peut donc être employée par toute vaste organisation désirant uniformiser ses ressources réseaux, classiquement composées de plusieurs réseaux physiques, de technologies généralement différentes. Elle va ainsi permettre aux utilisateurs et applications informatiques de faire apparaître ces éléments à priori incompatibles comme un réseau unique.
I1 convient de distinguer la "technologie internet" du réseau Internet. Ce dernier est en fait un réseau mondial unique, interconnectant de très nombreuses machines et actuellement en très forte expansion.
Une organisation peut donc déployer son propre réseau sur la base de la technologie intemet sans être connectée à Internet (le réseau mondial). Si elle souhaite ensuite s'y connecter, la tâche lui sera facilitée puisqu'elle utilise la même technologie.
Parmi la série de protocoles de transmission de données à laquelle fait référence
TPC/IP, les plus importants sont:
- IP (pour Internet Protocol en anglo-saxon);
- TCP (pour Transmission Control Protocol en anglo-saxon);
- UDP (pour User Datagram Protocol en anglo-saxon).
Le protocole IP est le protocole de base de la technologie internet. I1 a pour simple fonction de transférer un paquet de données (c'est-à-dire un ensemble d'octets) d'une machine à l'autre. Pour ce faire, il rajoute au paquet de données un en-tête IP comprenant notamment les trois champs suivants : "protocole", "adresse IP source" et "adresse IP destination".
En pratique, les données que véhicule un paquet IP sont en fait des unités de protocole d'un niveau supérieur (principe d'encapsulation), tels que TCP et UDP. Le champ "protocole" permet donc de définir ce protocole.
Les champs "adresse IP source" et "adresse IP destination" définissent l'adresse
IP de la machine émettrice et de la machine destinatrice respectivement. Les adresses sont codées sur 32 bits. Dans le monde TCP/IP, une adresse définit à la fois la machine et le réseau physique auquel elle est raccordée. Elle est donc unique dans l'ensemble du réseau.
Lors de l'émission d'un paquet, une machine détecte (en comparant la partie des adresses définissant le réseau) si la machine destinatrice est sur le même réseau physique qu'elle même. Auquel cas, elle envoie directement le paquet. Sinon, elle l'envoie à une machine capable de faire suivre la paquet vers d'autres réseaux physiques. Une telle machine est généralement désignée par le terme de "routeur IP".
D'une façon générale, les communications entre équipements informatiques peuvent se classer en deux grandes familles, à savoir les communications en mode nonconnecté et les communications en mode connecté.
Dans le mode non-connecté (appelé mode "connectionless", ou mode "datagram" par les anglo-saxons), la machine A désirant envoyer des données à la machine B constitue un élément de protocole incluant des données à transmettre, ainsi que l'adresse de la machine B. Le réseau se charge d'acheminer cet élément de protocole jusqu'à la machine destinatrice. Dans le monde TCP/IP, le protocole de transfert en mode nonconnecté est UDP.
Le mode connecté est plus complexe que le précédent. Il introduit la notion de connexion, analogue à une communication téléphonique. Une connexion a lieu entre deux équipements informatiques et comporte trois phases:
- l'établissement: la machine A demande l'établissement d'une connexion
vers la machine B et celleci l'accepte;
- le transfert: les machines A et B échangent des données au travers de cette
connexion;
- la libération : la connexion se termine sur l'initiative d'une des deux
machines.
Une connexion est un objet abstrait concernant au moins les deux équipements d'extrémité. Ces équipements vont donc devoir créer, manipuler et effacer des structures de données décrivant l'état de la connexion.
Dans le monde TCP/'P, le protocole de transfert en mode connecté est TCP.
Lorsque l'on désire interconnecter plusieurs réseaux, il convient de s'assurer que le plan d'adressage de chacun des réseaux est compatible avec celui de chacun des autres réseaux.
Ainsi, dans le cas du réseau mondial Internet, constitué de plusieurs réseaux interconnectés, l'adressage IP est normalisé, de façon que chaque machine, quel que soit le réseau auquel elle appartient, possède une adresse IP distincte. Les instances administratives du réseau Internet sont seules habilitées à attribuer de nouvelle adresse IP.
Quand une organisation déploie son propre réseau (dit réseau privé) sur la base de la technologie internet, sans que ce réseau soit intégré au réseau mondial Internet, elle définit un plan d'adressage privé, qui est incompatible avec le plan d'adressage normalisé du réseau Internet. Si, ultérieurement, cette organisation décide de relier son réseau à adressage IP privé au réseau Internet, ou plus généralement à un réseau quelconque à adressage IP normalisé, elle se heurte à un problème d'incompatibilité entre les plans d'adressage privé et normalisé.
Une première solution comme visant à pallier ce problème consiste à reconfigurer l'ensemble du réseau privé préalablement existant.
Cette première solution est très difficile à mettre en oeuvre puisque les instances administratives d'un réseau à adressage normalisé attribuent des espaces d'adressage ne comprenant généralement qu'un faible nombre d'entrées. Ainsi, sur le réseau Internent, il est actuellement quasiment impossible d'obtenir des espaces d'adressage supérieurs à 256 entrées. En d'autres termes, il est impossible d'offrir des accès au réseau Internet à des réseaux privés existants comportant plus de 256 machines.
Par ailleurs, la logique de l'adressage IP étant symétrique, toute machine du réseau privé se mettant en situation d'accéder au réseau à adressage normalisé devient immédiatement accessible de l'extérieur à travers ce réseau à adressage normalisé. Or, une contrainte de l'administrateur du domaine d'adressage IP privé est généralement de maintenir la sécurité de son réseau. I1 souhaite permettre aux machines de son réseau privé d'accéder aux ressources disponibles sur le réseau normalisé. En revanche, il ne souhaite pas que les machines de ce réseau normalisé, donc extérieures, puissent accéder à l'ensemble des ressources de son réseau privé.
Une seconde solution connue visant à pallier l'incompatibilité d'adressage entre deux réseaux à interconnecter consiste à interposer entre les deux réseaux un dispositif réalisant une conversion d'adresses. Pour ce faire, le réseau privé doit donc se voir attribuer, par l'administrateur du domaine d'adressage IP normalisé, une adresse IP normalisée de raccordement, qui devra être affectée au dispositif de conversion d'adresse, et une plage d'adresses IP normalisées destinées à être affectées aux machines composant le réseau à raccorder.
Dans ce cas, une adresse IP normalisée est substituée de manière univoque à une adresse IP privée lors du passage des paquets au travers de la passerelle que constitue le dispositif d'interconnexion entre les deux réseaux.
Cette seconde solution connue offre l'avantage, par rapport à la première, de ne pas nécessiter une renumérotation complète du réseau privé. En revanche, elle présente le même inconvénient de nécessiter une plage d'adresses IP normalisées (au moins autant d'adresses normalisées que de machines composant le réseau privé) en plus de l'adresse de raccordement, ainsi que celui de ne pas assurer la sécurité du réseau privé (du fait de la symétrie de la logique d'adressage IP).
Les passerelles applicatives constituent une troisième solution connue visant à pallier l'incompatibilité d'adressage entre deux réseaux à interconnecter.
Cette troisième solution connue, si elle est performante sur le plan de la facilité d'administration et de la sécurité, présente les inconvénients suivants:
- un programme de relais applicatif est nécessaire pour chaque type
d'application. La liste des services supportés est donc forcément réduite.
Et surtout, une passerelle applicative ne pourra pas, sauf mise à jour
logicielle, supporter les nouveaux services Internet encore inconnus ou
expérimentaux à ce jour;
- le programme n'est pas transparent pour l'utilisateur. Il doit en effet se
connecter sur la passerelle, et ensuite établir la connexion vers le service
désiré. Ceci pouvant être plus ou moins masqué par des protocoles
spécifiques entre la passerelle et l'utilisateur. Mais, ensuite il est alors
généralement nécessaire de modifier l'outil d'accès, ce qui interdit
l'emploi de produits standards du marché.
L'invention a notamment pour objectif de pallier ces différents inconvénients de l'état de la technique.
Plus précisément, l'un des objectifs de la présente invention est de fournir un procédé de conversion d'adresse entre un premier réseau présentant un adressage IP privé et un second réseau présentant un adressage IP normalisé, ce procédé ne nécessitant pas l'attribution au réseau privé d'une plage d'adresses IP normalisées.
L'invention a également pour objectif de fournir un tel procédé qui permette d'interdire les connexions du réseau à adressage normalisé vers le réseau à adressage privé, de façon à assurer la sécurité du réseau privé.
Un autre objectif de l'invention est de fournir un tel procédé qui soit indépendant du type d'application et transparent pour les utilisateurs des machines du réseau privé.
Un objectif complémentaire de l'invention est de fournir un dispositif d'interconnexion d'adresses répondant aux objectifs précités.
Ces différents objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints selon l'invention à l'aide d'un procédé d'interconnexion de réseaux mettant chacun en oeuvre la technologie internet, du type permettant d'interconnecter un premier réseau présentant un adressage IP privé et un second réseau présentant un adressage IP normalisé, lesdits premier et second réseaux véhiculant des paquets, chacun desdits paquets comportant un en-tête 1P comprenant notamment un champ "adresse IP source" et un champ "adresse IP destination", les paquets étant dits sortants s'ils se déplacent du premier vers le second réseau à travers ledit dispositif et entrants dans le cas contraire,
ledit procédé comprenant, pour chaque paquet sortant, une première étape de conversion de l'adresse IP privée contenue dans ledit champ "adresse IP source", de façon que ledit champ "adresse IP source" dudit paquet sortant contienne, après conversion, une adresse IP normalisée intermédiaire et unique;
et ledit procédé comprenant, pour chaque paquet entrant, une seconde étape de conversion de l'adresse IP normalisée intermédiaire et unique contenue dans le champ "adresse IP destination", de façon que ledit champ "adresse IP destination" dudit paquet entrant contienne, après conversion, une des adresses privées du premier réseau.
Ainsi, le principe général de l'invention consiste à n'utiliser qu'une seule adresse
IP normalisée. Vu du réseau normalisé, toutes les connexions provenant du réseau privé apparaissent comme provenant de cette adresse unique. Ceci permet une grande simplification de l'administration du dispositif qui met en oeuvre le procédé de l'invention, comme de l'administration de l'ensemble du réseau privé. De plus, le procédé de l'invention offre la possibilité de connexion à partir d'un simple accès de type "dialup-ip".
Dans un mode de réalisation préférentiel de l'invention, chacun desdits paquets comportant un en-tête TCP ou UDP comprenant notamment un champ "port source" et un champ "port destination", ledit en-tête IP comprenant en outre un champ "protocole de transport" indiquant le protocole TCP ou UDP utilisé, les paquets empruntant des connexions bidirectionnelles, chaque connexion étant un lien logique entre une première extrémité du premier réseau et une seconde extrémité du second réseau, chaque première ou seconde extrémité étant identifiée par une adresse IP, un port et un protocole de transport, chaque connexion étant identifiée par un jeu de paramètres ( Ripa, Pa, IPb, Pb, proto) correspondant respectivement à l'adresse IP et au port de la première extrémité, à l'adresse IP et au port de la seconde extrémité, et au protocole de transport commun aux première et seconde extrémités,
lesdites premières et secondes étapes de conversion d'adresse comprennent, pour chaque paquet, les étapes suivantes: - lecture des champs "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, de façon à disposer d'un jeu de paramètres correspondant aux contenus desdits champs lus et permettant d'identifier une connexion d'origine empruntée par ledit paquet; - recherche dans une table de conversion d'une entrée correspondant à ladite connexion d'origine empruntée par le paquet, ladite table de conversion associant une connexion transposée distincte à chaque connexion d'origine;; - s'il n'existe pas d'entrée correspondant à ladite connexion d'origine empruntée par le paquet, création et ajout dans ladite table de conversion d'un nouveau couple (connexion d'origine, connexion transposée); - modification dudit paquet, de façon à remplacer la connexion d'origine par la connexion transposée qui lui est associée.
De cette façon, l'adresse IP normalisée de l'ensemble du réseau privé est partagée dans le temps par différentes connexions, chaque connexion étant définie par un jeu de cinq paramètres. Ainsi, pour chaque paquet (sortant ou entrant) à traiter, on détermine la connexion d'origine utilisée par ce paquet, et à partir d'une table de conversion, on en déduit une connexion transposée que doit utiliser le paquet pour la suite de son trajet.
Une connexion TCP/IP s'établit entre deux couples (adresse IP sourcelport source) et (adresse IP destination/port destination). D'un point de vue plus applicatif, une connexion s'établit toujours suivant un principe client/serveur. C'est-à-dire qu'une application désirant dialoguer avec un service va établir une communication avec la machine supportant ce service (ce qui définit l'adresse IP destination). Cette machine pouvant supporter différentes applications, c'est le port destination qui va permettre de sélectionner l'application souhaitée.
Si le paquet est sortant, les deux adresses IP source et destination de la connexion transposée sont des adresses IP normalisées. Si le paquet est entrant, les deux adresses
IP source et destination de la connexion d'origine sont des adresses IP normalisées.
Dans un premier mode de réalisation avantageux du procédé de l'invention, ladite étape de création et d'ajout dans ladite table de conversion d'un nouveau couple (connexion d'origine, connexion transposée) consiste à créer dans ladite table de conversion une première et une seconde entrée associant chacune un jeu de paramètres d'origine JO = Iip~src, p~src, ip~dst, p~dst, p~proto) à un jeu de paramètres transposés Jt = Iip~src', p~src', ip~dst', p~dst', p~proto' ),
et, lorsque ladite connexion d'origine est sortante, c'est-à-dire initiée par ladite première extrémité du premier réseau, lesdits jeux de paramètres d'origine et transposés s'écrivent respectivement: - pour ladite première entrée :: JO l = {IPa, Pa, IPb, Pb, proton et Jt,i = {IPv, Pv,
IPb, Pb, proto), - pour ladite seconde entrée: J0,2 = { IPb, Pb, IPv, Pv, proto) et Jt,2 = { IPb, Pb,
IPa, Pa, proto}, les paramètres IPa, Pa, IPb, Pb et proto étant lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, les paramètres IPv, Pv et proto définisant une extrémité virtuelle, IPv étant ladite adresse
IP normalisée intermédiaire et unique, et Pv étant un port dont la valeur est calculée en dynamique, de façon qu'il n'existe aucune autre connexion de la table de conversion possédant le même couple (IPv, Pv).
Toutes les extrémités virtuelles (IPv, Pv, proto) possèdent une même adresse IP normalisée : c'est l'adresse unique (IPv) du réseau privé dans le réseau normalisé. En revanche, elles se distinguent les unes des autres par la valeur des deux autres paramètres, à savoir le port et le protocole.
Préférentiellement, dans ce premier mode de réalisation, lorsque ladite connexion d'origine est entrante, c'est-à-dire initiée par ladite seconde extrémité du second réseau, lesdits jeux de paramètres d'origine et transposés s'écrivent respectivement: - pour ladite première entrée: Jo,l = {IPb, Pb, IPv, Pv, proto) et Jt,l = (IPb, Pb,
IPa, Pa, proto}, - pour ladite seconde entrée :: Jo,2 = {IPa, Pa, IPb, Pb, proto) et Jt,2 = ('Pv, Pv,
IPb, Pb, proto}, les paramètres IPb, Pb, IPv, Pv et proto étant lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, les paramètres IPv, Pv et proto définisant une extrémité virtuelle, IPv étant ladite adresse
IP normalisée intermédiaire et unique, ou bien, au choix de l'administrateur, une adresse
IP choisie dans la plage d'adresses normalisées attribuée au site à connecter, et Pv étant un port prédéterminé, et le couple de paramètres (IPa, Pa) étant trouvé, grâce au couple de paramètres (IPv,
Pv), par lecture d'une table de correspondance statique associant de façon bijective à chaque couple de paramètres (IPa, Pa) parmi une pluralité prédéterminée un couple de paramètres (IPv, Pv) distinct.
Dans un second mode de réalisation avantageux du procédé de l'invention, ladite étape de création et d'ajout dans ladite table de conversion d'un nouveau couple (connexion d'origine, connexion transposée) consiste à créer dans ladite table de conversion une unique entrée associée à un jeu combiné de paramètres d'origine et transposés Jc = (ipo, po, ipi, pi, iP2, P2, proton,
et, lorsque ladite connexion d'origine est sortante, c'est-à-dire initiée par ladite première extrémité du premier réseau, ledit jeu combiné de paramètres d'origine et transposés s'écrit Jc = (IPa, Pa, IPb, Pb, IPv, Pv, proton, les paramètres IPa, Pa, IPb, Pb et proto étant lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, les paramètres IPv, Pv et proto définisant une extrémité virtuelle, IPv étant ladite adresse
IP normalisée intermédiaire et unique, et Pv étant un port dont la valeur est calculée en dynamique, de façon qu'il n'existe aucune autre connexion de la table de conversion possédant le même couple (IPv, Pv).
Le calcul du paramètre Pv est dynamique et ne peut avoir lieu que sur des connexions sortantes.
Préférentiellement, lorsque ladite connexion d'origine est entrante, c'est-à-dire initiée par ladite seconde extrémité du second réseau, ledit jeu combiné de paramètres d'origine et transposés s'écrit Jc = (IPa, Pa, IPb, Pb, IPv, Pv, proton, les paramètres IPb, Pb, IPv, Pv et proto étant lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, ou bien, au choix de l'administrateur, une adresse
IP choisie dans la plage d'adresses normalisées attribuée au site à connecter.
les paramètres IPv, Pv et proto définisant une extrémité virtuelle, IPv étant ladite adresse
IP normalisée intermédiaire et unique, et Pv étant un port prédéterminé, et le couple de paramètres (IPa, Pa) étant trouvé, grâce au couple de paramètres (IPv,
Pv), par lecture d'une table de correspondance statique associant de façon bijective à chaque couple de paramètres (IPa, Pa) parmi une pluralité prédéterminée un couple de paramètres (IPv, Pv) distinct.
Ainsi, il est possible, pour les connexions entrantes, d'effectuer une conversion "statique", la recherche du couple de paramètres (Ipa, Pa) étant effectuée parmi un ensemble de couple prédéterminé.
Avantageusement, dans le cas du premier mode de réalisation, pour chaque paquet sortant, ladite étape de modification du paquet consiste à remplacer le contenu des champs "adresse IP source" et "port source" du paquet par les paramètres correspondants ip~src' et p~src' dudit jeu de paramètres transposés Jt d'identification de la connexion transposée,
et, pour chaque paquet entrant, ladite étape de modification du paquet consiste à remplacer le contenu des champs "adresse IP destination" et "port destination" du paquet par les paramètres correspondants ipbst' et p~dst' dudit jeu de paramètres transposés Jt d'identification de la connexion transposée.
Ainsi, vu de la première extrémité du premier réseau, il existe une connexion entre cette première extrémité et la seconde extrémité du second réseau. En revanche, vu de la seconde extrémité du second réseau, il existe une connexion entre cette seconde extrémité et une extrémité virtuelle du second réseau (et non pas la première extrémité du premier réseau).
Avantageusement, dans le cas du second mode de réalisation, pour chaque paquet sortant, ladite étape de modification du paquet consiste à remplacer le contenu des champs "adresse IP source" et "port source" du paquet par les paramètres ip2 et P2 dudit jeu combiné de paramètres d'origine et transposés Jc,
et, pour chaque paquet entrant, ladite étape de modification du paquet consiste à remplacer le contenu des champs "adresse IP destination" et "port destination" du paquet par les paramètres ipo et po dudit jeu combiné de paramètres d'origine et transposés Jc.
Préférentiellement, ladite table de conversion est mise à jour de façon dynamique selon une stratégie prédéterminée de mise à jour. Ainsi, la taille mémoire de la table de conversion peut être limitée et l'étape de recherche d'une connexion d'origine dans la table, si elle existe, peut être effectuée plus rapidement.
Plusieurs stratégies de mise à jour peuvent être envisagées.
Dans un mode de réalisation avantageux de l'invention, ladite stratégie prédéterminée de mise àjour consiste à ne laisser chaque couple de connexions d'origine et transposée inscrit dans la table de conversion qu'entre un instant de début et un instant de fin de vie de ladite connexion d'origine. En d'autres termes, une connexion est ôtée de la table de conversion dès que sa durée de vie s'est écoulée.
De façon avantageuse, dans le cas d'une connexion utilisant le protocole TCP, lesdits instants de début et de fin de vie de la connexion d'origine sont déterminés en se référant au diagramme d'état d'une session TCP, selon la spécification TCP (RFC 793).
Avantageusement, dans le cas d'une connexion utilisant le protocole UDP, ledit instant de début de vie de la connexion d'origine est déterminé par le passage, dans un sens donné, d'un paquet de requête, et en ce que ledit instant de fin de vie est déterminé par le passage, dans le sens inverse dudit sens donné, d'un paquet de réponse.
Ainsi, même si cela peut sembler contradictoire avec le principe même d' UDP, on introduit selon l'invention une notion de connexion UDP. En effet, le protocole UDP est par principe "non connecté".
En fait, une analyse des applications utilisant le protocole UDP permet de les classer en deux grandes catégories:
- les applications utilisant la diffusion multiple (broadcast en anglo-saxon).
Ces applications n'ont en général qu'une utilité locale. Elles peuvent donc
être supprimées sans inconvénient au niveau d'un dispositif de
raccordement inter-réseaux;
- les applications du type requête/réponse. Un paquet UDP est émis vers
une machine et un port particulier et contient une requête. A la destination
se trouve un serveur qui analyse le paquet reçu et renvoie une réponse,
elle-même encapsulée dans un paquet UDP. Quelques exemples
d'applications de ce type : Serveur d'horloge, Serveur de noms (DNS)...
Ce dernier type d'application permet de retrouver l'idée de connexion. Au niveau d'un dispositif de raccordement inter-réseaux, une connexion commence d'exister lorsque passe un paquet UDP n'appartenant à aucune connexion repérée et se termine lorsque passe en sens inverse un paquet de réponse.
Comme le principe de l'invention consiste à appliquer une translation d'adresses à chaque connexion, le fait de définir des "connexions UDP" permet de rendre le procédé de l'invention applicable au protocole UDP.
Selon une variante avantageuse, dans le cas d'une connexion utilisant le protocole
UDP, ledit instant de début de vie de la connexion d'origine est déterminé par le passage, dans un sens donné, d'un paquet de requête, et en ce que ledit instant de fin de vie est déterminé par l'écoulement d'une durée prédéterminée depuis ledit instant de début de vie.
Afin de supporter un maximum d'applications présentes et futures, on peut affiner ce mécanisme de détection des connexions en offrant une possibilité de paramétrage par l'utilisateur de ce qui va déterminer la fin de la connexion: un ou plusieurs paquets de réponse, ou bien l'expiration d'une temporisation armée par la requête. De même, il est possible de paramétrer la possibilité d'avoir plusieurs requêtes au travers de la même connexion. Tous ces paramétrages peuvent bien sûr être définissables en fonction de l'application (déterminée par le port destination du paquet initialisant la connexion).
Dans un mode de réalisation préférentiel de l'invention, le procédé comprend une étape de filtrage des paquets sortants en fonction du contenu d'un des champs appartenant au groupe comprenant les champs "adresse IP source", "adresse IP destination" et "port destination".
L'invention concerne également un dispositif d'interconnexion de réseaux mettant chacun en oeuvre la technologie internet, du type destiné à être inséré entre un premier réseau présentant un adressage IP privé et un second réseau présentant un adressage IP normalisé, lesdits premier et second réseaux véhiculant des paquets, chacun desdits paquets comportant un en-tête IP comprenant notamment un champ "adresse IP source" et un champ "adresse IP destination", les paquets étant dits sortants s'ils se déplacent du premier vers le second réseau à travers ledit dispositif et entrants dans le cas contraire,
ledit dispositif possèdant une adresse IP normalisée intermédiaire et unique dans ledit second réseau, et comprenant notamment:: - des premiers moyens de conversion des adresses IP privées contenues dans les champs "adresse IP source" des paquets sortants, de façon que ledit champ "adresse IP source" de chacun desdits paquets sortants contienne, après conversion, ladite adresse IP normalisée intermédiaire et unique ; et - des seconds moyens de conversion de l'adresse IP normalisée intermédiaire et unique contenue dans les champs "adresse IP destination" des paquets entrants, de façon que ledit champ "adresse IP destination" de chacun desdits paquets entrants contienne, après conversion, une des adresses privées du premier réseau.
Avantageusement, chacun desdits paquets comportant un en-tête TCP ou UDP comprenant notamment un champ "port source" et un champ "port destination", ledit entête IP comprenant en outre un champ "protocole de transport" indiquant le protocole
TCP ou UDP utilisé,
lesdits premiers et seconds moyens de conversion d'adresse comprennent: : - des moyens de réception et de stockage d'un paquet; - des moyens de lecture d'un paquet reçu et stocké, permettant d'identifier une connexion d'origine empruntée par ledit paquet, par la connaissance d'un jeu de paramètres d'identification qui sont les contenus des champs "adresse IP source", "adresse IP destination", "port source", "port destination", et "protocole de transport" du paquet reçu et stocké; - au moins une table de conversion, associant une connexion transposée distincte à chaque connexion d'origine, chacune desdites connexion d'origine ou transposée étant identifiée par un jeu distinct de paramètres d'identification; - des moyens de lecture de ladite table de transposition, permettant de lire le jeu de paramètres d'identification de la connexion transposée associée à la connexion d'origine empruntée par le paquet reçu et stocké;; - des moyens de modification dudit paquet reçu et stocké permettant de substituer le jeu de paramètres d'identification de la connexion transposée au jeu de paramètres d'identification contenus dans le paquet reçu et stocké, de façon à remplacer la connexion d'origine par la connexion transposée qui lui est associée dans la table de conversion.
L'invention concerne aussi un routeur IP d'interconnexion de réseaux, caractérisé en ce qu'il comprend un dispositif présentant les caractéristiques précitées, ladite adresse
IP normalisée intermédiaire et unique étant l'adresse IP normalisée de raccordement dudit routeur IP audit second réseau.
D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description suivante d'un mode de réalisation préférentiel de l'invention, donnée à titre d'exemple indicatif et non limitatif, et des dessins annexés, dans lesquels:
- la figure 1 illustre le principe général du procédé d'interconnexion de
réseaux selon l'invention;
- la figure 2 présente la structure connue d'un paquet TCP/IP;
- la figure 3 présente la structure connue d'un en-tête IP;
- la figure 4 présente la structure connue d'un en-tête TCP;
- la figure 5 présente la structure connue d'un en-tête UDP;
- la figure 6 illustre une transposition de connexion telle que réalisée par le
procédé de l'invention;
- la figure 7 présente un organigramme d'un mode de réalisation particulier
du procédé de l'invention;;
- les figures 8 et 9 présentent chacune en détail l'une des étapes de
l'organigramme de la figure 7;
- la figure 10 est un schéma synoptique simplifié d'un dispositif
d'interconnexion de réseaux selon l'invention;
- la figure 11 est un exemple de réalisation de la table de connexion
comprise dans le dispositif de la figure 10 ; et
- la figure 12 illustre un exemple d'application du procédé et du dispositif
de l'invention.
L'invention concerne donc un procédé et un dispositif d'interconnexion de deux réseaux mettant chacun en oeuvre la technologie internet (ou technologie TCP/IP).
Comme illustré sur la figure 1, il s'agit d'interconnecter:
- un premier réseau 1 présentant un adressage IP privé ; et
- un second réseau 2 présentant un adressage IP normalisé.
L'interconnexion des deux réseaux 1, 2 consiste notamment à effectuer une conversion d'adresse 3.
Le second réseau 2 est par exemple le réseau mondial Internet. Le premier réseau 1 est par exemple un réseau local d'entreprise dont l'adressage a été défini en dehors de l'autorité globale pour l'attribution des adresses.
Le terme "privé" qualifiant l'adressage IP du premier réseau 1 s'entend ici comme l'inverse de "normalisé.
La technologie connue internet est basée sur une suite de protocoles dont les plus importants sont IP, TCP et UDP.
Le protocole IP (pour Internet Protocol en anglo-saxon) est le protocole de base de la technologie internet. Il a pour simple fonction de transférer un paquet de données (c'est-à-dire un ensemble d'octets) d'une machine à une autre.
Le protocole TCP (pour Transmission Control Protocol en anglo-saxon) s'appuie sur le protocole IP et a pour objet d'assurer une communication en mode connecté, c'està-dire d'assurer un circuit virtuel entre deux applications situées sur des machines distinctes. Pour cela, le protocole TCP doit assurer la fiabilité des transmissions,
I'ordonnancement et le contrôle de flux. Le flux de données envoyé par une application est donc segmenté en paquets. A chacun de ces paquets est ajouté un en-tête TCP (dont la structure est présentée sur la figure 4). Chaque paquet ainsi complété est ensuite confié au protocole IP qui y ajoute son propre en-tête IP (dont la structure est présentée sur la figure 3).
Le protocole UDP (pour User Datagram Protocol en anglo-saxon) s'appuie également sur le protocole IP et a pour objet d'assurer une communication en mode non connecté. Le choix du protocole UDP correspond aux applications reposant sur un trafic faible ou sur des échanges du type "question-réponse".
Le protocole UDP ajoute un en-tête (dont la structure est présentée sur la figure 5) aux données à transmettre. Ce paquet est ensuite confié au protocole IP qui y ajoute son propre en-tête IP.
Les paquets ont donc construits selon un principe d'encapsulations successives:
- on ajoute aux données un en-tête TCP ou UDP, de façon à former un
paquet TCP ou UDP ; puis
- on ajoute au paquet TCP ou UDP un en-tête IP.
La figure 2 présente la structure connue d'un paquet TCP/IP 21. La structure connue d'un paquet UDP/IP se déduit facilement de la précédente par remplacement de l'en-tête TCP par un en-tête UDP.
L'en-tête IP 31 dont la structure connue est présentée sur la figure 3, comprend notamment:
- un champ "protocole" 32 définissant le protocole utilisé, par exemple TCP
ou UDP. En effet, les données que véhicule un paquet ZP sont en fait des
unités de protocole d'un niveau supérieur (principe d'encapsulation)
- un champ "adresse IP source" 33 et un champ "adresse IP destination" 34
définissant l'adresse IP émettrice et l'adresse IP de la machine destinatrice
respectivement.
Le protocole IP permet d'envoyer des données d'une machine à une autre.
Comme ces machines sont généralement multi-application, il est nécessaire de fournir un moyen d'identifier les applications qui désirent communiquer entre elles. Ceci est fait par les protocoles TCP et UDP, en introduisant le notion de "port". En effet, les en-têtes TCP 41 et UDP 51, dont les structures connues sont présentées sur les figures 4 et 5 respectivement, comprennent notamment un champ "port source" 42, 52 et un champ "port destination" 43, 53.
Le champ "port destination" 43, 53 permet de sélectionner l'application souhaitée parmi celles supportées par la machine destinatrice, c'est-à-dire celle dont l'adresse IP est définie par le champ "adresse IP destination" 34 de l'en-tête IP 31.
Le procédé d'interconnexion de réseaux de l'invention est basé sur une analyse des connexions utilisées par les paquets. Selon l'invention, la notion de connexion, qui s'applique généralement uniquement au protocole TCP, est généralisée de façon à s'appliquer également au protocole UDP.
On appelle extrémité de réseau une entité logicielle (par exemple une application) pouvant être décrite par les trois paramètres suivants : une adresse IP, un port et un protocole (TCP ou UDP).
On appelle connexion un lien logique entre deux extrémités de réseau, l'une étant cliente et l'autre serveur. Une extrémité peut faire partie de plusieurs connexions différentes. Une fois initiée, une connexion est un chemin de communication permettant des échanges de données bidirectionnels.
La connexion entre les deux extrémités A = {IPa, Pa, proto} et B = {IPb, Pb, protoi peut être désignée, de façon unique par les cinq paramètres suivants:
- IPa: l'adresse IP de la première extrémité A;
- IPb: l'adresse IP de la seconde extrémité B
- Pa: le port de la première extrémité A;
- Pb: le port de la seconde extrémité B
- proto: le protocole de la connexion (TCP ou UDP).
Par la suite, on note la connexion CAB de la façon suivante : CAB = cira, Pa, IPb,
Pb, protol.
On considère dans la suite de la description que l'extrémité A = (IPa, Pa, proto} est située dans le premier réseau 1 à adressage IP privé et que l'extrémité B = {IPb, Pb, proton est située dans le second réseau 2 à adressage iP normalisé. En d'autres termes, l'adresse IPa est une adresse privée alors que l'adresse IPb est une adresse normalisée.
On appelle paquets sortants les paquets se déplaçants du premier réseau 1 vers le second réseau 2, et paquets entrants les paquets se déplacant dans le sens inverse.
Le principe général de l'invention est de modifier les paquets transmis entre les premier et second réseaux 1, 2, de façon que:
- pour chaque paquet sortant, L'adresse IP privée contenue dans le champ
"adresse IP source" 33 soit remplacée par une adresse IP normalisée
intermédiaire et unique, notée IPv (à noter que le principe défini ici est vrai
pour les connexions sortantes. Pour les connexions entrantes, IPv n'est
pas forcément unique);
- pour chaque paquet entrant, L'adresse IPv contenue dans le champ
"adresse IP destination" soit remplacée par l'adresse IP privée adéquate.
Ainsi, après modification, tous les paquets sortants possèdent une même adresse
IP source, à savoir IPv. De même, avant modification, tous les paquets entrants possèdent une même adresse IP destination, à savoir IPv. Par conséquent, une seule adresse IP normalisée suffit pour raccorder tout le premier réseau l à adressage privé au second réseau 2 à adressage normalisé.
En termes de connexions, le procédé de l'invention consiste à déporter l'extrémité
A de la connexion CAB sur une extrémité virtuelle V. En d'autres termes, comme illustré sur la figure 6, on réalise au point V une transposition de la connexion CAB en une connexion virtuelle CVB. La transposition de CAB en CvB est effectuée:
- pour les paquets sortants, en remplaçant les paramètres source IPa et Pa
de CAB par les paramètres source IPv et Pv de CVB;
- pour les paquets entrants,en remplaçant les paramètres destination IPv et
Pv de CvB par les paramètres destination IPa et Pa de CAB.
Le fonctionnement du procédé de l'invention repose sur le maintien d'une table de conversion, associant à chaque connexion d'origine utilisée sa connexion transposée.
Le fonctionnement d'un mode de réalisation particulier du procédé de l'invention est maintenant présenté en relation avec les organigrammes des figure 7, 8 et 9.
L'organigramme de la figure 7 présente l'ensemble du traitement (70) effectué sur chaque paquet.
Tout d'abord, on vérifie (71) que les totaux de contrôle 34, 44, 54 (ou checksums, en anglo-saxon) des en-têtes IP et TCP ou UDP (cf figure 3, 4, et 5) sont corrects. S'ils ne le sont pas, le paquet est éliminé (72). Sinon, les paramètres { ip~src, p~src, ip~dst, post, proto} sont extraits (73) du paquet, de façon à identifier la connexion d'origine C correspondant à ces paramètres.
On cherche ensuite (74) s'il existe une entrée de la table de conversion correspondant à cette conversion d'origine C. S'ii n'en existe pas, on regarde (75) si le paquet est cohérent et peut-être un début de connexion d'origine. Si c'est le cas,
I'enregistrement (76) de cette connexion d'origine et de sa connexion transposée associée est effectué (cf explication détaillée par la suite, en relation avec la figure 8). Si ce n'est pas le cas, le paquet est éliminé (72).
Après enregistrement (76) ou si la connexion d'origine était déjà enregistrée (c'est-à-dire s'il existe une entrée correspondante), le paquet est modifié (77) (cf explication détaillée par la suite, en relation avec la figure 9), puis le paquet est acheminé (78).
Enfin, si la connexion d'origine est terrninée (79), les deux entrées correspondant à cette connexio d'origine sont ôtées (710) de la table des connexions.
On explique maintenant en détail, en relation avec la figure 8, L'étape 76 d'enregistrement de la connexion d'origine et de sa connexion transposée associée.
Cette étape (76) consiste à créer dans ladite table de conversion une première et une seconde entrée associant chacune un jeu de paramètres d'origine JO = (ip.src, p~src, ip~dst, p~dst, p~proto) à un jeu de paramètres transposés Jt = (ip~src', p~src', ip~dst', p~dst', p~proto' j.
On distingue deux cas, selon que la connexion d'origine est entrante, c'est-à-dire initiée par une extrémité (A par exemple dans la suite de la description) du premier réseau 1, ou sortante, c'est-à-dire initiée par une extrémité (B par exemple dans la suite de la description) du second réseau 2.
Si la connexion d'origine est sortante, par exemple de A vers B, on effectue les étapes suivantes:
- calcul (83) de IPV et PV pour former C;
- enregistrement (84) d'une première et d'une seconde entrées associant les
jeux de paramètres d'origine et transposés suivants:
* pour ladite première entrée:
JO,l = ripa, Pa, IPb, Pb, protoj et Jt,i = ('Pv, Pv, IPb, Pb, proton,
* pour ladite seconde entrée:
Jo,2 = (IPb, Pb, IPv, Pv, proto) et Jt,2 = {IPb, Pb, IPa, Pa, proto}.
Ces quatre jeux de paramètres Jo,i, Jt,l, Jo.2 et Jt,2 sont illustrés sur la figure il qui présente un mode de réalisation particulier d'une table de conversion utilisée dans la mise en oeuvre du procédé de l'invention.
La seconde entrée est destinée à être utilisée lors du traitement des paquets de retour.
Les paramètres IPa, Pa, IPb, Pb et proto sont lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" du paquet.
Les paramètres IPv, Pv et proto définissent une extrémité virtuelle V, IPv étant l'adresse IP normalisée intermédiaire et unique. La valeur du port Pv est calculée (83) en dynamiqu, de façon qu'il n'existe aucune autre connexion de la table de conversion possédant le même couple (IPv, Pv).
Si la connexion d'origine est entrante, par exemple de B vers V, on effectue les étapes suivantes:
- recherche (82) de IPa et Pa, si le couple (IPv, Pv) est tel qu'il existe une
extrémité A déportée (par exemple une application donnée sur un serveur
déporté du réseau privé) (81)
- enregistrement (84) d'une première et d'une seconde entrées associant les
jeux de paramètres d'origine et transposés suivants:
* pour ladite première entrée:
JO I = (IPb, Pb, IPv, Pv, proton et Jt,i = {IPb, Pb, IPa, Pa, proton,
* pour ladite seconde entrée:
Jo,2 = (IPa, Pa, IPb, Pb, proton et Jt,2 = ('Pv, Pv, IPb, Pb, protol.
La seconde entrée est destinée à être utilisée lors du traitement des paquets de retour.
Les paramètres IPv, Pv et proto définissent une extrémité virtuelle V, IPv étant l'adresse IP normalisée intermédiaire et unique, ou bien, au choix de l'administrateur, une adresse IP choisie dans la plage d'adresses normalisées attribuée au site à connecter, et Pv étant un port prédéterminé.
Le couple de paramètres (IPa, Pa) est trouvé (82), grâce au couple de paramètres (IPv, Pv), par lecture d'une table de correspondance statique associant de façon bijective à chaque couple de paramètres (IPa, Pa) parmi une pluralité prédéterminée un couple de paramètres (IPv, Pv) distinct.
Il est à noter que dans une mode de réalisation simplifié du procédé de l'invention, les connexions entrantes sont rejetées par principe. Ainsi, grâce au connexions sortantes, les machines du réseau privé 1 ont accès aux ressources disponibles, sur le réseau normalisé 2, mais les machines du réseau normalisé 2 n'ont pas accès aux "ressources" du réseau privé 1 (dissymétrie du principe de translation d'adresse).
On explique maintenant en détail, en relation avec la figure 9, L'étape 77 de modification du paquet.
On examine (91) le protocole de a connexion d'origine, de façon à savoir si celleci se termine. Si elle se termine, on arme (92) un temporisateur de libération de connexion (on libère alors les entrées correspondant à cette connexion d'origine) et crées simultanément (cf figure 8)). Après cet armement (92) ou si la connexion d'origine ne se termine pas, on effectue les modifications.
Pour effectuer ces modifications, on distingue deux cas, selon que le paquet est sortant ou entrant.
Si le paquet est sortant, la transposition de connexion est réalisée au remplaçant (93), dans le champ "adresse Ip source" du paquet, IPa par IPv, et dans le champ "port source" du paquet, Pa par Pv.
Si le paquet est entrant, la transposition de connexion est réalisée en remplaçant (94), dans le champ "adresse IP destination" du paquet ,IPv par IPa, et dans le champ "port destination" du paquet, Pv par Pa.
Le paquet ainsi modifié subit une étape 95 de "traitement particulier connexion", consistant à gérer les particularités liées à certains protocoles applicatifs, comme FTP, rep et rch. Ces particularités et leur traitement sont définies plus loin dans ce document.
Enfin, les totaux de contrôle (checksums) des en-têtes IP et TCP ou UDP sont recalculés (96).
Dans le premier mode de réalisation du procédé de l'invention présenté ci-dessus, pour chaque couple (connexion d'origine, connexion transposée), on crée deux entrées dans la table (une pour chaque sens de paquet) et le traitement, du point de vue lecture dans la table, est identique pour les paquets sortants et la paquets entrants.
On présente maintenant un second mode de réalisation du procédé de l'invention, dans lequel, pour chaque couple (connexion d'origine, connexion transposée), on crée une seule entrée dans la table et le traitement, du point de vue lecture dans la table, est différent selon que les paquets sont sortants ou entrants.
Dans ce second mode de réalisation, l'étape de création et d'ajout dans ladite table de conversion d'un nouveau couple (connexion d'origine, connexion transposée) consiste à créer dans la table de conversion une unique entrée associée à un jeu combiné de paramètres d'origine et transposés Jc = (ipo, po, ipl, pl, ip2, P2, protol.
Lorsque ladite connexion d'origine est sortante, le jeu combiné de paramètres d'origine et transposés s'écrit Jc = (IPa, Pa, IPb, Pb, IPv, Pv, protoj. Les paramètres
IPa, Pa, IPb, Pb et proto sont lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" du paquet. Les paramètres IPv, Pv et proto définissent une extrémité virtuelle V, IPv étant l'adresse IP normalisée intermédiaire et unique et Pv étant un port dont la valeur est calculée en dynamique.
Lorsque la connexion d'origine est entrante, le jeu combiné de paramètres d'origine et transposés s'écrit Jc = (IPa, Pa, IPb, Pb, IPv, Pv, protol. Les paramètres
IPb, Pb, IPv, Pv et proto sont lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" du paquet. Les paramètres IPv, Pv et proto définissent une extrémité virtuelle V, IPv étant l'adresse IP normalisée intermédiaire et unique, ou bien, au choix de l'administrateur, une adresse IP choisie dans la plage d'adresses normalisées attribuée au site à connecter, et Pv étant un port prédéterminé. Le couple de paramètres (IPa, Pa) étant trouvé associé de façon statique à un couple prédéterminé de paramètres (IPv, Pv) distinct.
Dans ce second mode de réalisation, pour chaque paquet sortant, l'étape de modification du paquet consiste à remplacer le contenu des champs "adresse IP source" et "port source" du paquet par les paramètres ip2 et pz du jeu combiné de paramètres d'origine et transposés Jc. Pour chaque paquet entrant, l'étape de modification du paquet consiste à remplacer le contenu des champs "adresse IP destination" et "port destination" du paquet par les paramètres ipo et po du jeu combiné de paramètres d'origine et transposés Jc
D'une façon générale, une connexion peut être::
- soit utilisée, si au moins un paquet cohérent a été échangé entre les deux
extrémités et si l'on ne peut pas assurer qu'il ne passera plus d'autre
paquet cohérent pour cette connexion;
- soit libre, si aucun paquet n'a transité entre les deux extrémités.
Le fonctionnement des deux modes de réalisation du procédé de l'invention présentés ci-dessus repose sur le maintien d'une table des connexions utilisée (c'est-àdire sur la suppression des connexions qui redeviennent libres). I1 faut donc déterminer les instants de début et de fin de vie de chaque connexion enregistrée dans la table de conversion.
Pour les connexions dont le protocole est TCP, ces instants de début et de fin de vie de la connexion sont par exemple déterminés en se référant au diagramme d'état d'une session TCP, selon la spécification TCP (RFC 793). On se basera notamment sur le champ "drapeaux" de l'en-tête TCP et particulièrement sur les bits SYN pour le début de la connexion et FIN pour la fin de celle-ci. On pourra prévoir aussi un temporisateur de sécurité, armé par le passage d'un paquet avec le bit FIN et supprimant la connexion au bout d'un certain temps d'inactivité, ceci pour résoudre le cas d'une déconnexion initiée, mais non parvenue à terme, cas possible, par exemple, avec une extrémité devenue inactive, donc incapable de participer à la clôture de la connexion.
Pour les connexions dont le protocole est UDP, on peut définir l'instant de début de vie de la connexion par le passage, dans un sens donné, d'un paquet de requête, et l'instant de fin de vie de la connexion par le passage, dans l'autre sens, d'un paquet de réponse.
Selon une variante, on définit l'instant de fin de vie par écoulement d'une durée prédéterminée depuis l'instant de début de vie.
On peut imaginer d'autres variantes selon lesquelles l'instant de fin de vie de la connexion, dans le cas UDP, est fonction de différents critères (nombre de paquets, expiration d'une durée prédéterminée,...), ces critères étant bien sûr paramétrables par type de connexion.
Dans un mode de réalisation particulier, on peut s'affranchir de la nécessité de déterminer le début et la fin de connexion en utilisant le principe suivant:
- une connexion est créée lorsque apparaît un nouveau paquet n'appartenant
à aucune connexion existante;
- on maintient constamment une variable définissant l'heure du dernier
paquet ayant transité sur cette connexion;
- la fin de la connexion n'étant pas détectée, celle-ci restera dans la table
alors qu'elle n'a plus d'existence;
- le numéro de port garantissant l'unicité étant codé sur 2 octets, soit 65535
valeurs possibles, la table va théoriquement arriver à saturation lorsque
65535 connexions auront été effectuées,
- on procédera alors à la suppression de la table de l'entrée correspondant à
la connexion dont la variable notant l'heure du dernier paquet est la plus
ancienne.
En pratique, afin de limiter l'occupation mémoire, on procédera à cette suppression à partir d'un nombre de connexions simultanées défini par l'administrateur du système.
Optionnellement, le traitement de chaque paquet peut comprendre une étape de filtrage des paquets, en fonction du contenu d'au moins un des champs suivants "adresse IP source", "adresse IP destination" et "port destination". Ainsi, on peut limiter le nombre de station du réseau privé 1 ayant accès au réseau normalisé 2, ou bien limiter cet accès à certaines applications.
La figure 12 illustre un exemple d'application du procédé de l'invention.
Si on considère que l'extrémité A est sur un réseau privé R1, que l'extrémité B est sur un réseau "normalisé" R2, par exemple Internet, et que le point V est sur un canal de passage incontournable entre les deux réseaux R1 et R2, on réalise l'application recherchée de l'invention : on rend possible une connexion d'un site privé avec un site d'un réseau normalisé, sans modifier les adresses du réseau privé.
En référence à la figure 12, l'extrémité A est par exemple un client telnet sur la machine Ml: A =(IPml, Pn, TCP}; où IPml est l'adresse IP de la machine M1, Pn est un port client déterminé de la machine M1, et TCP est le protocole TCP. L'extrémité B est par exemple un serveur telnet de la machine M2 : B = (IPm2, 23, TCPl ; 23 étant le port connu TCP du serveur telnet. Le tout forme la connexion C =IIPml, Pn, IPm2, 23, TUPI.
Le réseau R1 est un réseau privé dont les routes par défaut vont vers le réseau R2.
Le réseau R2 ne connaît pas l'existence de Rl. Le procédé de l'invention est mis en oeuvre dans la machine ou passerelle P. Cette passerelle P est connectée aux deux réseaux, à l'adresse privée IPrl pour R1, à l'adresse normalisée IPr2 pour R2.
Dans ces conditions, la connexion C ne peut fonctionner, car les paquets circulent bien dans le sens M1 vers M2, mais ne peuvent pas revenir vers M1 car le réseau R1 est inconnu des machines situées vers le réseau R2.
Si la passerelle P exploite le procédé de l'invention, on peut transposer au point V la connexion C en une connexion C2 en remplaçant l'extrémité A par une extrémité virtuelle VA telle que VA soit sur le réseau R2 et que C2 transite par le point V. Pour satisfaire cette condition, la solution est de substituer IPml par IPr2 dans les paquets transitant par la passerelle P. Donc on peut transposer C en C2 = IIPr2, Pn, IPm2, 23, TCP). Le procédé requiert également que C2 soit libre, c'est-à-dire qu'au point V, on aura pris soin de noter toutes les connexions qui y transitent, de façon à vérifier qu'il n'y ait pas de client telnet avec le même port Pn vers la même destination (extrémité B).Si cela était le cas, on transformerait VA en lIPr2, Pm, TCPl, Pm étant un port TCP inutilisé de la passerelle P.
La translation des adresses et des ports dans les paquets IP est généralement transparente pour les applications TCP/IP. Seules trois applications particulières nécessitent un traitement spécifique, à savoir FTP (pour File Transfer Protocol en anglosaxon), RCP (pour Remote copy (Transfert de fichiers) en anglo-saxon) et RSH (pour
Remote Shell (Exécution à distance) en anglo-saxon).
L'application FTP permet le transfert de fichier d'une machine à une autre. Le protocole FTP est défini selon la spécification TCP, par le RFC 959. Ce protocole offre la particularité d'utiliser par session utilisateur une connexion TCP pour les commandes et d'y ajouter une autre connexion TCP pour les données du fichier en cours de transfert.
Cette autre connexion, pour les données, est établie par le serveur. Donc, elle apparaît comme connexion entrante pour le dispositif mettant en oeuvre le procédé de l'invention, qui, par défaut, refuse ce type de connexion.
Une solution est donc de détecter les connexions de commande FTP. Ce qui se fait en examinant le port destination qui, pour cette application est fixé à 21. A chaque connexion de commande FTP, on va donc adjoindre une entrée dans la table de conversion d'origine. Cette conversion va être déterminée en examinant les commandes transitant sur le canal. Le client FTP envoie une commande PORT ayant pour paramètre l'adresse IP et le numéro de port sur lequel doit être établie la connexion. Ces paramètres doivent être translatés suivant le principe décrit précédemment : remplacement de l'adresse IP source privée par l'adresse source virtuelle normalisée (IPV) et du port par un nouveau port de substitution attribué à cet usage.
La commande : "PORT IP ret, P P~ret" où: - IP~ret est l'adresse IP de la connexion en retour ; et
- P~ret le Port de la connexion en retour,
va être translaté en:
"PORT IPv, Pv".' où: - LPv est l'adresse source virtuelle, et
- Pv est le port source virtuelle attribué de manière à garantir l'unicité de la
connexion.
Cette commande va créer une entrée dans la table de conversion effectuant la substitution { ret, Pretj < = > { IPv, Pv).
La durée de vie de cette entrée est liée à celle de la connexion de commande FTP.
Si aucune commande PORT n'est envoyée sur le canal de commande, alors Goret prend par défaut l'adresse source de la connexion de commande et Pret prend par défaut la valeur 20 (valeur par défaut des connexions de données associées au protocole FTP).
Par ailleurs, pour des raisons de sécurité, RCP et RSH imposent que le port source prenne une valeur inférieure à 1024. En effet, ces ports sont définis comme accessibles uniquement aux utilisateurs ou applications "privilégiés" sur certains systèmes d'exploitation. Le procédé de translation de l'invention doit dans ce cas détecter ces protocoles (par le port destination de la connexion) et attribuer alors un port de substitution d'une valeur inférieure à 1024.
L'invention concerne également un dispositif d'interconnexion mettant en oeuvre le procédé décrit précédemment. Ce dispositif est par exemple inséré dasn un routeur IP, permettant l'interconnexion des deux réseaux. Dans ce cas, l'adresse IP normalisée unique pour tout le premier réseau privé 1 est l'adresse de raccordement du routeur IP au second réseau normalisé 2.
En reférence à la figure 10, dans un mode de réalisation particulier, le dispositif d'interconnexion de réseaux 1 1 comprend: - des moyens (12) de réception et de stockage d'un paquet; - des moyens (13) de lecture d'un paquet reçu et stocké, permettant d'identifier une connexion d'origine empruntée par ledit paquet, par la connaissance d'un jeu de paramètres d'identification qui sont les contenus des champs "adresse IP source", "adresse IP destination", "port source", "port destination", et "protocole de transport" du paquet reçu et stocké; - au moins une table de conversion (14), associant une connexion transposée distincte à chaque connexion d'origine, chacune desdites connexion d'origine ou transposée étant identifiée par un jeu distinct de paramètres d'identification; ; - des moyens (13) de lecture de ladite table de transposition, permettant de lire le jeu de paramètres d'identification de la connexion transposée associée à la connexion d'origine empruntée par le paquet reçu et stocké; - des moyens (15) de modification dudit paquet reçu et stocké permettant de substituer le jeu de paramètres d'identification de la connexion transposée au jeu de paramètres d'identification contenus dans le paquet reçu et stocké, de façon à remplacer la connexion d'origine par la connexion transposée qui lui est associée dans la table de conversion (14).

Claims (16)

REVENDICATIONS
1. Procédé d'interconnexion de réseaux mettant chacun en oeuvre la technologie internet, du type permettant d'interconnecter un premier réseau (1) présentant un adressage IP privé et un second réseau (2) présentant un adressage IP normalisé, lesdits premier et second réseaux véhiculant des paquets, chacun desdits paquets comportant un en-tête IP (31) comprenant notamment un champ "adresse IP source" (33) et un champ "adresse IP destination" (34), les paquets étant dits sortants s'ils se déplacent du premier vers le second réseau à travers ledit dispositif et sortants dans le cas contraire, J0,1 = {IPb, Pb, IPv, Pv, proto} et Jt,i = (IPb, Pb, IPa, Pa, protoj,
caractérisé en ce que ledit procédé comprend, pour chaque paquet sortant, une première étape de conversion de l'adresse IP privée contenue dans ledit champ "adresse
IP source" (33), de façon que ledit champ "adresse IP source" dudit paquet sortant contienne, après conversion, une adresse IP normalisée intermédiaire et unique (IPv);
et en ce que ledit procédé comprend, pour chaque paquet entrant, une seconde étape de conversion de l'adresse IP normalisée intermédiaire et unique (IPv) contenue dans le champ "adresse IP destination" (34), de façon que ledit champ "adresse IP destination" dudit paquet entrant contienne, après conversion, une des adresses privées du premier réseau.
2. Procédé selon la revendication 1, chacun desdits paquets comportant un en-tête
TCP (41) ou UDP (51) comprenant notamment un champ "port source" (42 ; 52) et un champ "port destination" (43 ; 53), ledit en-tête IP (31) comprenant en outre un champ "protocole de transport" (32) indiquant le protocole TCP ou UDP utilisé, les paquets empruntant des connexions bidirectionnelles, chaque connexion étant un lien logique entre une première extrémité (A) du premier réseau (1) et une seconde extrémité (B) du second réseau (2), chaque première ou seconde extrémité étant identifiée par une adresse
IP (IPa, IPb), un port (Pa, Pb) et un protocole de transport (proto), chaque connexion (CAB) étant identifiée par un jeu de paramètres fIPa, Pa, IPb, Pb, proton correspondant respectivement à l'adresse IP et au port de la première extrémité (A), à l'adresse IP et au port de la seconde extrémité (B), et au protocole de transport commun aux première et seconde extrémités,
caractérisé en ce que lesdites premières et secondes étapes de conversion d'adresse comprennent, pour chaque paquet, les étapes suivantes: - lecture (73) des champs "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, de façon à disposer d'un jeu de paramètres correspondant aux contenus desdits champs lus et permettant d'identifier une connexion d'origine empruntée par ledit paquet; - recherche (74) dans une table de conversion (14) d'une entrée correspondant à ladite connexion d'origine empruntée par le paquet, ladite table de conversion associant une connexion transposée distincte à chaque connexion d'origine;; - s'il n'existe pas d'entrée correspondant à ladite connexion d'origine empruntée par le paquet, création et ajout (76) dans ladite table de conversion d'un nouveau couple (connexion d'origine, connexion transposée); - modification (77) dudit paquet, de façon à remplacer la connexion d'origine par la connexion transposée qui lui est associée.
3. Procédé selon la revendication 2, caractérisé en ce que ladite étape (76) de création et d'ajout dans ladite table de conversion d'un nouveau couple (connexion d'origine, connexion transposée) consiste à créer dans ladite table de conversion une première et une seconde entrée associant chacune un jeu de paramètres d'origine JO = Iipsrc, p~src, ip~dst, p~dst, p~proto} à un jeu de paramètres transposés Jt = Iip~src', p~src', ipost', post', p~proto' ),
et en ce que, lorsque ladite connexion d'origine est sortante, c'est-à-dire initiée par ladite première extrémité (A) du premier réseau (1), lesdits jeux de paramètres d'origine et transposés s'écrivent respectivement: - pour ladite première entrée :: Jo,l = {IPa, Pa, IPb, Pb, proton et Jt,i = IPv, Pv,
IPb, Pb, proton, - pour ladite seconde entrée: Jo,2 = (IPb, Pb, IPv, Pv, proto) et Jt,2 = (IPb, Pb,
IPa, Pa, proto j, les paramètres IPa, Pa, IPb, Pb et proto étant lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, les paramètres IPv, Pv et proto définisant une extrémité virtuelle (V), IPv étant ladite adresse IP normalisée intermédiaire et unique et Pv étant un port dont la valeur est calculée en dynamique (83), de façon qu'il n'existe aucune autre connexion de la table de conversion possédant le même couple (IPv, Pv).
4. Procédé selon la revendication 3, caractérisé en ce que, lorsque ladite connexion d'origine est entrante, c'est-à-dire initiée par ladite seconde extrémité (B) du second réseau (2), lesdits jeux de paramètres d'origine et transposés s'écrivent respectivement: - pour ladite première entrée: JO,l = IIPb, Pb, IPv, Pv, proton et Jt,l = {IPb, Pb,
IPa, Pa, proto), - pour ladite seconde entrée :: Jo,2 = {IPa, Pa, IPb, Pb, proton et Jt,2 = IPv, Pv,
IPb, Pb, proton, les paramètres IPb, Pb, IPv, Pv et proto étant lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, les paramètres IPv, Pv et proto définisant une extrémité virtuelle (V), IPv appartenant au groupe comprenant ladite adresse IP normalisée intermédiaire et unique, et une adresse IP choisie dans la plage d'adresses normalisées attribuée au site à connecter, et Pv étant un port prédéterminé, et le couple de paramètres (IPa, Pa) étant trouvé (82), grâce au couple de paramètres (IPv, Pv), par lecture d'une table de correspondance statique associant de façon bijective à chaque couple de paramètres (IPa, Pa) parmi une pluralité prédéterminée un couple de paramètres (IPv, Pv) distinct.
5. Procédé selon la revendication 2, caractérisé en ce que ladite étape (76) de création et d'ajout dans ladite table de conversion d'un nouveau couple (connexion d'origine, connexion transposée) consiste à créer dans ladite table de conversion une unique entrée associée à un jeu combiné de paramètres d'origine et transposés Jc = f ipo, po, ipl, pl, iP2, P2, proton,
et en ce que, lorsque ladite connexion d'origine est sortante, c'est-à-dire initiée par ladite première extrémité (A) du premier réseau (1), ledit jeu combiné de paramètres d'origine et transposés s'écrit Jc = (IPa, Pa, IPb, Pb, IPv, Pv, prote}, les paramètres IPa, Pa, IPb, Pb et proto étant lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, les paramètres IPv, Pv et proto définisant une extrémité virtuelle (V), IPv étant ladite adresse IP normalisée intermédiaire et unique, et Pv étant un port dont la valeur est calculée en dynamique (83), de façon qu'il n'existe aucune autre connexion de la table de conversion possédant le même couple (IPv, Pv).
6. Procédé selon la revendication 5, caractérisé en ce que, lorsque ladite connexion d'origine est entrante, c'est-à-dire initiée par ladite seconde extrémité (B) du second réseau (2), ledit jeu combiné de paramètres d'origine et transposés s'écrit Jc = {IPa, Pa,
IPb, Pb, IPv, Pv, proto), les paramètres IPb, Pb, IPv, Pv et proto étant lus dans les champs respectivement "adresse IP source", "port source", "adresse IP destination", "port destination", et "protocole de transport" dudit paquet, les paramètres IPv, Pv et proto définisant une extrémité virtuelle (V), IPv appartenant au groupe comprenant ladite adresse IP normalisée intermédiaire et unique, et une adresse IP choisie dans la plage d'adresses normalisées attribuée au site à connecter, et Pv étant un port prédéterminé, et le couple de paramètres (IPa, Pa) étant trouvé (82), grâce au couple de paramètres (IPv, Pv), par lecture d'une table de correspondance statique associant de façon bijective à chaque couple de paramètres (IPa, Pa) parmi une pluralité prédéterminée un couple de paramètres (IPv, Pv) distinct.
7. Procédé selon l'une quelconque des revendications 3 et 4, caractérisé en ce que, pour chaque paquet sortant, ladite étape (77) de modification du paquet consiste à remplacer (93) le contenu des champs "adresse IP source" et "port source" du paquet par les paramètres correspondants ip~src' et p~src' dudit jeu de paramètres transposés Jt d'identification de la connexion transposée,
et en ce que, pour chaque paquet entrant, ladite étape (77) de modification du paquet consiste à remplacer (94) le contenu des champs "adresse IP destination" et "port destination" du paquet par les paramètres correspondants ip~dst' et pbst' dudit jeu de paramètres transposés Jt d'identification de la connexion transposée.
8. Procédé selon l'une quelconque des revendications 5 et 6, caractérisé en ce que, pour chaque paquet sortant, ladite étape de modification du paquet consiste à remplacer le contenu des champs "adresse IP source" et "port source" du paquet par les paramètres ip2 et P2 dudit jeu combiné de paramètres d'origine et transposés Jc.
et en ce que, pour chaque paquet entrant, ladite étape de modification du paquet consiste à remplacer le contenu des champs "adresse IP destination" et "port destination" du paquet par les paramètres ipo et po dudit jeu combiné de paramètres d'origine et transposés Jc
9. Procédé selon l'une quelconque des revendications 2 à 8, caractérisé en ce que ladite table de conversion (14) est mise à jour de façon dynamique selon une stratégie prédéterminée de mise à jour.
10. Procédé selon la revendication 9, caractérisé en ce que ladite stratégie prédéterminée de mise à jour consiste à ne laisser chaque couple (110, 111) de connexions d'origine et transposée inscrit dans la table de conversion qu'entre un instant de début et un instant de fin de vie de ladite connexion d'origine.
11. Procédé selon la revendication 10, caractérisé en ce que, dans le cas d'une connexion utilisant le protocole TCP, lesdits instants de début et de fin de vie de la connexion d'origine sont déterminés en se référant au diagramme d'état d'une session
TCP, selon la spécification TCP (RFC 793).
12. Procédé selon l'une quelconque des revendications 10 et 11, caractérisé en ce que, dans le cas d'une connexion utilisant le protocole UDP, ledit instant de début de vie de la connexion d'origine est déterminé par le passage, dans un sens donné, d'un paquet de requête, et en ce que ledit instant de fin de vie est déterminé par le passage, dans le sens inverse dudit sens donné, d'un paquet de réponse.
13. Procédé selon l'une quelconque des revendications 10 et 11, caractérisé en ce que, dans le cas d'une connexion utilisant le protocole UDP, ledit instant de début de vie de la connexion d'origine est déterminé par le passage, dans un sens donné, d'un paquet de requête, et en ce que ledit instant de fin de vie est déterminé par l'écoulement d'une durée prédéterminée depuis ledit instant de début de vie.
14. Procédé selon l'une quelconque des revendications 2 à 13, caractérisé en ce qu'il comprend une étape de filtrage des paquets sortants en fonction du contenu d'un des champs appartenant au groupe comprenant les champs "adresse IP source", "adresse IP destination" et "port destination".
15. Dispositif d'interconnexion de réseaux mettant chacun en oeuvre la technologie internent, du type destiné à être inséré entre un premier réseau (1) présentant un adressage
IP privé et un second réseau (2) présentant un adressage IP normalisé, lesdits premier et second réseaux véhiculant des paquets, chacun desdits paquets comportant un en-tête IP (31) comprenant notamment un champ "adresse IP source" (33) et un champ "adresse IP destination" (34), les paquets étant dits sortants s'ils se déplacent du premier vers le second réseau à travers ledit dispositif et sortants dans le cas contraire,
caractérisé en ce que ledit dispositif (11) possède une adresse IP normalisée intermédiaire et unique (IPv) dans ledit second réseau,
et en ce qu'il comprend notamment:: - des premiers moyens de conversion des adresses IP privées contenues dans les champs "adresse IP source" des paquets sortants, de façon que ledit champ "adresse IP source" de chacun desdits paquets sortants contienne, après conversion, ladite adresse IP normalisée intermédiaire et unique (IPv); et - des seconds moyens de conversion de l'adresse IP normalisée intermédiaire et unique (IPv) contenue dans les champs "adresse IP destination" des paquets entrants, de façon que ledit champ "adresse IP destination" de chacun desdits paquets entrants contienne, après conversion, une des adresses privées du premier réseau.
16. Dispositif selon la revendication 15, chacun desdits paquets comportant un en-tête
TCP (41) ou UDP (51) comprenant notamment un champ "port source" (42 ; 52) et un champ "port destination" (43 ; 53), ledit en-tête IP (31) comprenant en outre un champ "protocole de transport" (32) indiquant le protocole TCP ou UDP utilisé,
caractérisé en ce que lesdits premiers et seconds moyens de conversion d'adresse comprennent:: - des moyens (12) de réception et de stockage d'un paquet; - des moyens (13) de lecture d'un paquet reçu et stocké, permettant d'identifier une connexion d'origine empruntée par ledit paquet, par la connaissance d'un jeu de paramètres d'identification qui sont les contenus des champs "adresse IP source", "adresse IP destination", "port source", "port destination", et "protocole de transport" du paquet reçu et stocké; - au moins une table de conversion (14), associant une connexion transposée distincte à chaque connexion d'origine, chacune desdites connexion d'origine ou transposée étant identifiée par un jeu distinct de paramètres d'identification; - des moyens (13) de lecture de ladite table de transposition, permettant de lire le jeu de paramètres d'identification de la connexion transposée associée à la connexion d'origine empruntée par le paquet reçu et stocké; ; - des moyens (15) de modification dudit paquet reçu et stocké permettant de substituer le jeu de paramètres d'identification de la connexion transposée au jeu de paramètres d'identification contenus dans le paquet reçu et stocké, de façon à remplacer la connexion d'origine par la connexion transposée qui lui est associée dans la table de conversion.
1 7. Routeur IP d'interconnexion de réseaux, caractérisé en ce qu'il comprend un dispositif (11) selon l'une quelconque des revendications 15 et 16, ladite adresse IP normalisée intermédiaire et unique (rPv) étant l'adresse IP normalisée de raccordement dudit routeur IP audit second réseau (2).
FR9509392A 1995-07-27 1995-07-27 Dispositif et procede d'interconnexion de reseaux, routeur ip comprenant un tel dispositif Expired - Fee Related FR2737372B1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR9509392A FR2737372B1 (fr) 1995-07-27 1995-07-27 Dispositif et procede d'interconnexion de reseaux, routeur ip comprenant un tel dispositif
AU67034/96A AU6703496A (en) 1995-07-27 1996-07-25 Network interconnection router, method and device
PCT/FR1996/001179 WO1997005727A1 (fr) 1995-07-27 1996-07-25 Dispositif, procede et routeur d'interconnexion de reseaux

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9509392A FR2737372B1 (fr) 1995-07-27 1995-07-27 Dispositif et procede d'interconnexion de reseaux, routeur ip comprenant un tel dispositif

Publications (2)

Publication Number Publication Date
FR2737372A1 true FR2737372A1 (fr) 1997-01-31
FR2737372B1 FR2737372B1 (fr) 1997-09-12

Family

ID=9481632

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9509392A Expired - Fee Related FR2737372B1 (fr) 1995-07-27 1995-07-27 Dispositif et procede d'interconnexion de reseaux, routeur ip comprenant un tel dispositif

Country Status (3)

Country Link
AU (1) AU6703496A (fr)
FR (1) FR2737372B1 (fr)
WO (1) WO1997005727A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998039890A1 (fr) * 1997-03-07 1998-09-11 Sony Corporation Dispositif, procede et unite de commande de voies de communications

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6317775B1 (en) 1995-11-03 2001-11-13 Cisco Technology, Inc. System for distributing load over multiple servers at an internet site
EP0969901A1 (fr) 1997-03-12 2000-01-12 Neurocom International, Inc Systeme et procede de surveillance de programmes d'entrainement
JP3038650B2 (ja) * 1997-04-28 2000-05-08 日本電気株式会社 移動体パケット通信システムのインターネット通信方法と装置
US7039008B1 (en) 1997-05-02 2006-05-02 Cisco Technology, Inc. Method and apparatus for maintaining connection state between a connection manager and a failover device
US6445704B1 (en) 1997-05-02 2002-09-03 Cisco Technology, Inc. Method and apparatus for virtualizing a locally initiated outbound connection from a connection manager
US6324177B1 (en) 1997-05-02 2001-11-27 Cisco Technology Method and apparatus for managing connections based on a client IP address
GB2338874B (en) * 1997-12-05 2000-08-30 Distrib Syst Res Inst Integrated information communication system
NL1007709C2 (nl) * 1997-12-05 1999-06-08 Herman Elderson Werkwijze en inrichting voor het omzetten van Internet Protocol adressen.
US6618366B1 (en) 1997-12-05 2003-09-09 The Distribution Systems Research Institute Integrated information communication system
US6717949B1 (en) 1998-08-31 2004-04-06 International Business Machines Corporation System and method for IP network address translation using selective masquerade
ITBO20020574A1 (it) 2002-09-10 2004-03-11 Technogym Srl Macchina ginnica.
US7127376B2 (en) 2003-09-23 2006-10-24 Neurocom International, Inc. Method and apparatus for reducing errors in screening-test administration

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
C.A.SUNSHINE: "NETWORK INTERCONNECTION AND GATEWAYS", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATION, vol. 8, no. 1, January 1990 (1990-01-01), NEW YORK US, pages 4 - 11, XP000133530 *
L.SVOBODOVA ET AL: "HETEROGENEITY AND OSI", IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATION, vol. 8, no. 1, January 1990 (1990-01-01), NEW YORK US, pages 67 - 79, XP000133533 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998039890A1 (fr) * 1997-03-07 1998-09-11 Sony Corporation Dispositif, procede et unite de commande de voies de communications

Also Published As

Publication number Publication date
AU6703496A (en) 1997-02-26
FR2737372B1 (fr) 1997-09-12
WO1997005727A1 (fr) 1997-02-13

Similar Documents

Publication Publication Date Title
EP1507384B1 (fr) Procédé de masquage des traitements applicatifs d&#39;une requete d&#39;accès à un serveur et système de masquage correspondant
EP1875675B1 (fr) Procédé d&#39;établissement d&#39;un accès multi-liens entre un réseau local et un réseau distant et modem multi-liens correspondant
FR2853187A1 (fr) Systeme permettant a toute application reseau de fonctionner de facon transparente a travers un dispositif de traduction d&#39;adresse de reseau
EP1276298A1 (fr) Procédé d&#39;adressage d&#39;un terminal mobile
EP0661857A1 (fr) Procédé de conversion automiatique d&#39;applications de télécommunication
FR2737372A1 (fr) Dispositif et procede d&#39;interconnexion de reseaux, routeur ip comprenant un tel dispositif
FR2930100A1 (fr) Procede d&#39;etablissement d&#39;un chemin de communication dans un reseau etendu de communication, tetes de tunnel,produit programme d&#39;ordinateur et moyen de stockage correspondants
FR2860369A1 (fr) Localisation de points d&#39;entree de flux dans un reseau de communications
EP2294798B1 (fr) Procede de routage d&#39;un paquet de donnees dans un reseau et dispositif associe
CA2283124C (fr) Procede de communication dans un ensemble de systemes distribues via un reseau du type internet
EP1357724A1 (fr) Dispositif de gestion de filtres de données
EP1997295A2 (fr) Procede de communication de donnees entre des systemes de traitement heterogenes connectes en reseau local et systeme de communication mettant en oeuvre ce procede
EP2266279B1 (fr) Partage de contenu multi supports a partir d&#39;une communication audio-video
EP3235217B1 (fr) Procédé d&#39;échanges de données entre deux navigateurs internet, équipement de routage, terminal, programme d&#39;ordinateur et support d&#39;informations corespondants
EP2579545B1 (fr) Méthode d&#39;attribution d&#39;une adresse réseau publique à un équipement disposant d&#39;une adresse réseau privée
FR2809560A1 (fr) Procede et architecture de systeme de communication securise entre deux entites connectees a un reseau de type internet, comprenant un segment de transmissions sans fil
EP1432213B1 (fr) Plate-forme de médiation et réseau de transport de messages
FR2915650A1 (fr) Procede et dispositif d&#39;interface entre les protocoles udp ou tcp et sctp
FR2843847A1 (fr) Systeme permettant d&#39;etablir une connexion telnet avec un dispositif eloigne depourvu de modem
EP3070911A1 (fr) Procédé de contrôle d&#39;accès à un réseau privé
WO2023111432A1 (fr) Mécanismes de communication avec un service accessible via un réseau de télécommunication prenant en compte la mobilité des services, des utilisateurs et des équipements
FR2848046A1 (fr) Procede et dispositif d&#39;acces pour securiser l&#39;acces aux systemes d&#39;information
WO2020020911A1 (fr) Procede de traitement d&#39;un paquet de donnees, dispositif, equipement de commutation et programme d&#39;ordinateur associes
EP4024820A1 (fr) Procédé de configuration d&#39;une interface sécurisée entre un réseau de transport et un réseau élémentaire d&#39;une pluralité de réseaux élémentaires fédérés à travers le réseau de transport; interface associée
FR2835674A1 (fr) Deploiement des regles par un dispositif de gestion de services, en fonction d&#39;informations sur les equipements du reseau

Legal Events

Date Code Title Description
ST Notification of lapse