WO2006082321A1 - Session reset management method using a routing protocol - Google Patents

Session reset management method using a routing protocol Download PDF

Info

Publication number
WO2006082321A1
WO2006082321A1 PCT/FR2006/000240 FR2006000240W WO2006082321A1 WO 2006082321 A1 WO2006082321 A1 WO 2006082321A1 FR 2006000240 W FR2006000240 W FR 2006000240W WO 2006082321 A1 WO2006082321 A1 WO 2006082321A1
Authority
WO
WIPO (PCT)
Prior art keywords
router
information
session
routing table
backup
Prior art date
Application number
PCT/FR2006/000240
Other languages
French (fr)
Inventor
Marc Capelle
David Jacquet
Bruno Decraene
Original Assignee
France Telecom
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 France Telecom filed Critical France Telecom
Publication of WO2006082321A1 publication Critical patent/WO2006082321A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery

Definitions

  • the present invention relates to the field of telecommunications, and more particularly to routing protocols and network equipment implementing such protocols.
  • a conventional telecommunications network includes network equipment, called routers. These use routing protocols between themselves to optimize the transmission of packets. Indeed, the transmission of a packet from one device to another equipment in the network can generally be carried out in several ways. Routers, through routing protocols, optimize the transmission of packets by selecting according to certain criteria the best transmission path among possible transmission paths. A router selects such a transmission path on the basis of information generally received according to a routing protocol and stored in routing tables.
  • a routing protocol is a protocol that provides mechanisms for a router to construct a routing table and share routing information with other neighboring routers, i.e., routers with which it maintains a session. according to the routing protocol. There are several types of routing protocols that use different methods to help the router collect routing information.
  • a routing protocol named BGP (“Border Gateway Protocol") is widely used in networks, including Internet type. Routers that implement BGP are typically deployed redundantly. Thus, the routing information transported in the BGP protocol is often accessible from several points of the network.
  • the BGP protocol transmits information such as Internet routes, as defined by version 4 of the IP protocol, or IPv4, in RFC 791, for Request For Comment 791.
  • An extension to this protocol named MP-BGP for Multi Protocol BGP, allows it to transmit other types of route, based on version 6 of the IP or IPv6 protocol, Multicast, L2-VPN for Layer 2 Virtual Private Network, L3-VPN for Layer 3 Virtual Private Network, ...), in sessions established between two routers.
  • each router has a session established with the other routers of the same network.
  • this type of protocol is a so-called 'fully-meshed' protocol.
  • a router can route packets based on routing information it has received since its initialization. Such information is stored as routing tables. In general, some of these tables are associated with a given session and other tables may contain global information directly related to the router.
  • a problem occurs on a BGP session, such as an unintentional session loss between a first and a second router, or an erroneous protocol behavior of one of the two routers, or simply a voluntary closing of a session for cause of maintenance, the BGP session is then interrupted.
  • Interrupting such a BGP session may not only affect the performance of the first and second routers but also the performance of the entire network.
  • a routing according to the BGP protocol is based on the propagation of information from router to router in the BGP sessions between the routers of the entire network.
  • the contents of the tables associated with this lost session between two routers are deleted on these two routers.
  • the routers are no longer able to route packets based on the information contained in the tables relating to the interrupted session.
  • This routing performed in the absence of such information, corresponds to a degraded mode of operation.
  • the transition from one mode to another is performed during the convergence phase of the routing protocol.
  • the term 'convergence phase of a routing protocol' means a phase of adaptation of this protocol in order to manage a new situation, in particular when new information is received.
  • Such an adaptation phase may include a calculation of better roads taking into account account the new information received, or a diffusion, or if necessary rediffusion, of this new information to other routers, or a diffusion, or if necessary rebroadcasting, results obtained from calculations carried out on this new information .
  • the interrupted session is then reset.
  • Such session reset management requires certain steps to be performed by the first and second routers. These two routers exchange in particular the information contained in the global tables.
  • session reset management steps may in some cases correspond to a large amount of information being transmitted between the two routers, which may require a significant amount of time.
  • the performance of the packet routing in the network can be significantly reduced.
  • a first aspect of the invention provides a session reset management method according to a routing protocol in a packet transmission network comprising a plurality of routers having between them sessions according to said protocol for exchanging routing information and / or connectivity indicating paths for transmitting packets across the network; relative to a given session between a first and a second router, the first router maintaining a routing table updated based on information received from the second router in said session; wherein the first router operates at least one backup in a database of the information contained in said routing table; and wherein the second router, having knowledge of said backup, stores in a log information sent or to be sent to the first router since the backup; said method comprising the following steps performed by the first router after loss of information contained in the routing table:
  • the first router is able to quickly recover the routing information previously contained in its routing table. Indeed, only the information stored in memory by the second router is sent to the first router. The amount of this information is directly related to the number of messages sent or sent in the session, and therefore depends on the stability of the network.
  • the connectivity information sent by a router may include all destinations that this router is able to reach or reach. It is therefore easy to deduce that the more stable a network is, the lower the amount of information stored in memory by the second router. Therefore, in the session reset phase, in step IhI, a small amount of data flows between the second router and the first router. This amount can be much less than the amount of information contained in the routing table of the second type of the second router. it is thus possible to reduce the convergence time of the routing protocol.
  • such a method is based on a two-part mechanism, a first part corresponding to the operations to be implemented in a 'normal' operating phase and a second part corresponding to the operations to be implemented in a reset phase. session, after an interruption of the session.
  • the backup in the database of the first router can be triggered according to defined criteria and the storage in memory of the second router can include the continuous storage in a log of the first router. information sent or to be sent to the first router since the backup performed by the latter.
  • the backup of the first router is triggered at regular intervals of time.
  • Such a feature provides flexibility in an embodiment of the present invention that can be very effective in improving routing performance in a network.
  • the method according to one embodiment of the invention further comprises, at each backup, the following steps:
  • the method then further comprises the following steps, after step 121: delete on the first router the information saved during the previous backup if necessary, and send from the first router to the second router a message of response to said trigger message; - On receipt of said response message, delete the log created during the previous backup if necessary.
  • the method may furthermore comprise, during a session establishment phase and / or during the established session, a phase negotiating between the first and second routers to determine, based on defined parameters, whether the steps of said method are performed relative to said session.
  • the first and second routers can determine a period of realization of the backups during the negotiation phase.
  • the second router maintains an updated routing table based on information received from the second router and stores in a database information contained in said routing table.
  • the first router stores in a memory information sent or to be sent to the second router.
  • the second router then executes the process steps performed by the first router as the preceding sections state and the first router executes the process steps performed by the second router as the preceding sections state.
  • a second aspect of the present invention provides a router for having a session with another router according to a routing protocol in a packet transmission network comprising: means arranged to maintain an updated routing table based on information received from said other router in the session; means arranged to operate at least one backup in a database of the information contained in said routing table, the other router having knowledge of said backup; means arranged to retrieve the information saved in said database; means arranged to update the routing table after a loss of information contained in the routing table, on the basis of the information retrieved from said database after said loss of information and information stored by the other router since the backup and received from the other router after said loss of information.
  • a third aspect proposes a router intended to have a session with another router according to a routing protocol in a packet transmission network, said other router maintaining a routing table updated according to information received from said router, and operating at least a backup of the information contained in said table Routing ; said router comprising: means arranged to store in a log information sent or to send to said other router from said backup; means arranged to send to said other router said information sent or to be sent after a loss of information contained in the routing table of said other router.
  • a fourth aspect of the present invention provides a session reset management system according to a routing protocol in a packet transmission network comprising a plurality of routers having between them sessions according to said protocol for exchanging routing information and / or connectivity indicating paths for transmitting packets across the network; said system comprising a first router according to the second aspect of the present invention and a second router according to the third aspect of the present invention.
  • FIG. 1 illustrates the main steps of the first part of the mechanism on which the routing protocol session reset management method in a network according to FIG. an embodiment of the invention
  • FIG. 2 illustrates the main steps of the second part of the mechanism on which the routing protocol session reset management method in a network is based according to one embodiment of the invention
  • FIG. 3 details an architecture of routers in a network according to one embodiment of the invention
  • Fig. 4 is a diagram showing an exchange of messages between two routers having a session with each other in the first part of the mechanism on which the method according to an embodiment of the present invention is based
  • Fig. 5 is a diagram showing an exchange of messages between two routers in a file version negotiation phase of the method according to an embodiment of the present invention.
  • a router maintains a first routing table containing routing and / or connectivity information received from one or more neighboring routers.
  • it maintains a second routing table containing routing and / or connectivity information sent to one or more neighboring routers via the network routing protocol.
  • Such tables are respectively named afterwards 'routing table of the first type' and 'routing table of the second type'.
  • An Internet-type network is split into a plurality of 'subnetworks', each operating under its own technical administration, called 'autonomous system 1' .
  • An autonomous system is a set of routers operating under a single technical administration, using an interior routing protocol, named IGP for Interior Gateway Protocol, and routing information relating to that inner routing protocol and common to the set of routers for route the packets inside the autonomous system.
  • IGP protocols for Intermediate System to Intermediate System OSPF for Open Shortest Path First
  • RIP for Routing Information Protocol IGRP for Interior Gateway Routing Protocol
  • Such routers also use an external routing protocol, named EGP for Exterior Gateway Protocol to route packets to other autonomous systems.
  • the BGP4 protocol is an EGP type protocol.
  • a routing protocol derived from the BGP protocol is named MP-BGP, for Multi Protocol BGP. It provides the ability for autonomous systems to exchange extended information that the BGP protocol alone does not handle.
  • This variant of the protocol is used to exchange information related to the MPLS-VPN technology, for Multi Protocol Label Switching Virtual Private Network, Multicast, or IPv6.
  • There are still other variants of the BGP protocol for example e-BGP used between routers belonging to different autonomous systems and i-BGP used between routers belonging to the same autonomous system.
  • the present invention applies to all networks based on such protocols.
  • the present invention can be implemented in unified networks as well as in networks comprising several administrative domains. It can be applied in networks interconnected to an Internet-type network, or in networks used for private purposes.
  • the invention covers a configuration in which all the routers of the network advantageously implement a method according to one embodiment of the invention.
  • a configuration in which only part of the routers of the network implements an embodiment of the invention is already proving to be very advantageous.
  • the method according to the invention can be considered as a unidirectional method in that it comprises certain operations performed by the first router and others carried out by the second router. It can advantageously be implemented in only one direction, that is to say when only one of the two routers updates its routing table of the first type after a session interruption between the two routers.
  • neighbor router of a given router refer to a router having a session according to the network routing protocol with the given router.
  • a router in a network of routers having sessions according to the BGP protocol generally manages three types of tables, the tables of the first type and the second type being relative to a given session and another type of table being relative to the router.
  • the first type of session-related routing table referred to as "Adjacency-RIB-ln” contains the BGP protocol information received from a neighboring router in this session.
  • the second type of session-related routing table referred to as “Adjacency-RIB-Out” contains the BGP protocol information sent or to be sent to a neighboring router in this session.
  • the other type of routing table referenced "Local RIB” contains BGP protocol information relating to the router received from all the neighboring routers defined on the equipment. This last routing table, or a subset of this table, can be broadcast to all the neighboring routers configured on the considered router, which allows in particular to create the second type tables for all routers.
  • a router therefore has a unique 'Local RIB' table that summarizes the information received from the network, and as many routing tables of the first and the second type that it has sessions with other routers.
  • the routers In the event of a session break between two routers, the routers lose the information relating to the session, that is to say the information contained in their routing tables of the first and second types.
  • An object of the present invention is to allow that, during the reset of the session, the routers can update as soon as possible the information relating to this session.
  • the method is also possible to implement the method symmetrically on the first and second routers of the same session.
  • the method is bidirectionally activated.
  • FIG. 1 illustrates such an application to a router in a router network according to a BGP protocol.
  • a session 111 connects a first router 101 and a second router 102.
  • the router 101 has a table of the first type 104, or table 'Tab-ln'.
  • the router 102 has a table of the second type 108, or Tab-Out table.
  • the router 101 also manages a database 105 in which it saves the contents of the table 104. This backup is preferably performed whenever certain defined criteria are fulfilled. Note that the content of this database is preferably not affected by interruptions on the session 111.
  • the router 102 stores in memory the information that has already been sent to the router 101 and the information to be sent to router 101 in session 111.
  • the implementation of the method according to one embodiment of the present invention is optional on the routers.
  • the routers 101 and 102 inform each other of their respective capacity to implement such a method. May advantageously be used for this purpose designated mechanism under the terms of 'capacity' as described by the documents I 1 (IETF for Internet Engineering Task Force '): a RFC2842 paper (for' Request For Comment ')' Capability advertisement with BGP-4 ', May 2000 and a document draft-ietf-idr-dynamic-cap-05.txt, 'Dynamic Capability for BGP-4', 14 July 2004.
  • the mechanism on which the process is based can be described in two essential parts.
  • a first part corresponds to the normal operation of the routers in the session.
  • a second part is the management of the reset of the session when it was interrupted.
  • the router 101 stores the information contained in the table of the first type. Backups can be performed periodically.
  • the periodicity of such backups can be determined at the initialization of the session, and more specifically, during a negotiation phase between the two routers that can be based on the mechanism of 'capacity'.
  • the routers 101 and 102 communicate to each other, during the negotiation phase, the periods at which they are able to make backups, by communicating for example the minimum period and the maximum period.
  • a backup can be likened to a synchronization point between the router 101 and the router 102 relative to the data saved in the database 105 on the one hand and the data stored in memory by the router 102 on the other hand.
  • the backup periods of the two routers may be different. This feature is particularly advantageous for a session between a route reflector, or RR (for 'Route Reflector'), and its client router.
  • RR for 'Route Reflector'
  • the RR sends a lot of protocol information to its client router and the client sends relatively little protocol information to the RR. It is therefore important for the client router to save information from its first type table to a relatively short period of time to allow the RR not to store a relatively large amount of information in memory.
  • the information sent or to be sent to the router 101 is stored, preferably continuously, in a log 109 so that this log contains the protocol activity generated by the router 102 since the last synchronization point, c. since the last backup.
  • the invention covers any method allowing routers 101 and 102 to synchronize with respect to this information to be memorized during the normal operating phase.
  • the quantity of information stored in the log may be greater than that of the information contained in the table of the second type of router 102. In such conditions it may be interesting to disengage the mechanism.
  • FIG. 2 illustrates the main steps of the second part of the routing protocol session reset management method in a network according to one embodiment of the invention. These steps correspond to the management of the reset of the session when it was interrupted.
  • the router 101 retrieves the saved information 201 in the database 105. Then, the router 102 sends to the router 101 the information stored in the log 109. Router 101 is able to update its first type routing table 104 based on the retrieved and received information.
  • the information retrieved from the database 105 corresponds to a state of the routing table of the first type at the time of the last backup.
  • the information received from the router 102 corresponds to the information already sent or still to be sent since the last backup.
  • the information received from the router 102 corresponds to the information already sent or still to be sent which is immediately consecutive to the last backup.
  • the router 101 is able to update the routing table of the first type without the router 102 sending him the information contained in its table of the second type.
  • the router 102 sends only the stored information 202 in the log 109.
  • Such a feature is all the more advantageous when little information has been stored by the router 102 between the last backup and the reset operations of the session.
  • FIG. 3 details a router architecture in a network according to one embodiment of the invention.
  • the routers 101 and 102 each comprise a global routing table 301, a routing table of the first type 104 and a second type routing table 108, as well as a database
  • Fig. 4 is a diagram showing an exchange of messages between two routers having a session with each other before the loss of the session, according to an embodiment of the present invention. This message exchange corresponds to the first part of the mechanism, as previously described.
  • the BGP type protocol defines a message for updating routing and / or connectivity information, denoted BGP-UPDATE or BGP-UPD, some of these messages make it possible to add routing information in routing tables, others of these messages can remove routing information.
  • BGP-CAPABILITY a message that allows the exchange of information other than routing information between two neighboring routers.
  • step 405 the router 102 transmits to the router 101 a 'BGP-UPD' message 401.
  • the router 102 then stores in a log N this message, preferably at the same time as it sends this message to the router 101.
  • step 406 corresponding to a synchronization step, the router 102 on the one hand sends a message 'BGP-CAPA' 402 to the router 101 and secondly , creates an N + 1 log at a step 407.
  • This synchronization step can be triggered according to defined criteria. By For example, this step can be triggered at a regular time interval, periodically, or when the log size has reached a predetermined threshold. This step can also be triggered when the traffic conditions in the network fulfill certain defined criteria.
  • the router 101 saves the information contained in the table of the first type, at a step 408.
  • Such a message is used in this case to request from the router
  • the router 101 deletes the information relating to the previous backup, if any.
  • the router 101 transmits another message 'BGP-CAPA' 403 to the router 102.
  • the router 102 On receipt of this message 403, preferably, the router 102 deletes the log N, in step 410. Indeed, at this stage, the information stored in the log N has been taken into account in the information saved to the previous step 408.
  • the router 102 is sent to send one or more 'BGP-UDP' messages 404 to the router 101.
  • the router 102 stores in memory this message in the log N + 1, previously created at the time. step 407.
  • Such a synchronization mechanism between the router 101 and the router 102 according to an embodiment of the present invention is described for illustrative purposes without introducing any limitation as to the synchronization mechanisms between the routers.
  • the present invention covers any other possible synchronization mechanism.
  • the following sections describe a message exchange with respect to the second part of the mechanism on which the method according to one embodiment of the present invention is based.
  • these routers determine, preferably jointly, whether they implement the method according to the invention or not.
  • the saved information and / or the information stored in a log are recorded in files in specific formats.
  • the routers agree in advance on a version of the log and / or information to be used.
  • a router may have two different versions.
  • Routers preferably negotiate file versions when opening the session and more specifically when negotiating the
  • FIG. 5 illustrates such a negotiation in a section 500.
  • the router 101 transmits to the router 102 the P and P + 1 versions. available for backup and available M and M + 1 versions for the log.
  • the router 102 transmits, in a message 'BGP-OPEN' 503, at router 101 the L and L + 1 versions available for backup and the available K and K + 1 versions for the log.
  • the routers select, for each direction, the highest version number available on both routers at the same time. For example, you can decide to set up the latest version common to both routers for backup files and log files.
  • step 504 the router 101 restores the information according to the most current available common version and the router 102 restores the information in the log according to the most recent available common version of the log.
  • the router 102 sends to the router 101 one or more 'BGP-UPD' messages 505 containing log information according to the most recent common version.
  • the router 101 is able to process this received information.
  • the router 101 retrieves the information from the database 105 and can update its routing table of the first type based on this information. The router is then in a situation identical to that corresponding to the synchronization point as illustrated by step 406.
  • the router 101 exploits the information received from the router 102, that is to say corresponding to those contained in the log since the last synchronization point of the session. It updates the routing table of the first type with this information.
  • Such a method makes it possible to reduce the time during which the network operates in degraded conditions.
  • the possibility of disengaging this mechanism at any time by one or the other of the routers makes it possible to avoid a network operation more degraded than it is without this mechanism.
  • the present invention finds a very advantageous application on
  • This dynamic activation can for example be achieved by sending a message corresponding to a dynamic 'capacity' when it is desired to activate this mechanism.
  • the memories used on the routers to implement such a method according to an embodiment of the present invention are non-volatile.
  • the stored information is not erased in case of failure or stop of the equipment.

Abstract

The invention relates to a session reset management method using a routing protocol. In a packet transmission network, sessions between a plurality of routers use a routing protocol in order to exchange routing and/or connectivity information indicating paths for the transmission of packets over the network. A first router (101) maintains a routing table (104) in relation to a given session (111). The first router backs-up routing table information in a database (105) and the second router stores the information sent or to be sent in a memory element (109). Following the loss of information from the routing table, the information backed up in the database is recovered (201) on the first router. The information stored by the second router is received (202) from the second router. The routing table is updated on the basis of the information recovered and received.

Description

PROCEDE DE GESTION DE REINITIALISATION DE SESSION SELON UN SESSION RESET MANAGEMENT METHOD ACCORDING TO ONE
PROTOCOLE DE ROUTAGEROUTING PROTOCOL
La présente invention est relative au domaine des télécommunications, et plus particulièrement des protocoles de routage et des équipements de réseau mettant en œuvre de tels protocoles.The present invention relates to the field of telecommunications, and more particularly to routing protocols and network equipment implementing such protocols.
Un réseau de télécommunication classique comprend des équipements de réseau, appelés routeurs. Ceux-ci utilisent des protocoles de routage entre eux pour optimiser la transmission des paquets. En effet, la transmission d'un paquet depuis un équipement jusqu'à un autre équipement dans le réseau peut généralement être réalisée suivant plusieurs chemins. Les routeurs, grâce aux protocoles de routage, permettent d'optimiser la transmission de paquets en sélectionnant suivant des critères déterminés le meilleur chemin de transmission parmi des chemins de transmission possibles. Un routeur sélectionne un tel chemin de transmission sur la base d'informations généralement reçues selon un protocole de routage et mémorisées dans des tables de routage. Un protocole de routage est un protocole qui fournit des mécanismes permettant à un routeur de construire une table de routage et de partager des informations de routage avec d'autres routeurs voisins, c'est-à- dire des routeurs avec lesquels il entretient une session selon le protocole de routage. Il existe plusieurs types de protocoles de routage qui utilisent des méthodes différentes pour aider le routeur à collecter des informations de routage. Un protocole de routage nommé BGP (« Border Gateway Protocol ») est très largement utilisé dans les réseaux, notamment de type Internet. Les routeurs qui implémentent le protocole BGP sont généralement déployés de façon redondante. Ainsi, les informations de routage transportées dans le protocole de type BGP sont souvent accessibles depuis plusieurs points du réseau.A conventional telecommunications network includes network equipment, called routers. These use routing protocols between themselves to optimize the transmission of packets. Indeed, the transmission of a packet from one device to another equipment in the network can generally be carried out in several ways. Routers, through routing protocols, optimize the transmission of packets by selecting according to certain criteria the best transmission path among possible transmission paths. A router selects such a transmission path on the basis of information generally received according to a routing protocol and stored in routing tables. A routing protocol is a protocol that provides mechanisms for a router to construct a routing table and share routing information with other neighboring routers, i.e., routers with which it maintains a session. according to the routing protocol. There are several types of routing protocols that use different methods to help the router collect routing information. A routing protocol named BGP ("Border Gateway Protocol") is widely used in networks, including Internet type. Routers that implement BGP are typically deployed redundantly. Thus, the routing information transported in the BGP protocol is often accessible from several points of the network.
Le protocole BGP transmet des informations telles que des routes Internet, comme définies par la version 4 du protocole IP, ou IPv4, dans la RFC 791 , pour Request For Comment 791. Une extension apportée à ce protocole, nommée MP-BGP pour Multi Protocol BGP, lui permet de transmettre d'autres types de route, sur la base de la version 6 du protocole IP ou IPv6, Multicast, L2-VPN pour Layer 2 Virtual Private Network, L3-VPN pour Layer 3 Virtual Private Network, ...), dans des sessions établies entre deux routeurs. De préférence, chaque routeur a une session établie avec les autres routeurs d'un même réseau. En effet, ce type de protocole est un protocole dit 'fully-meshed'.The BGP protocol transmits information such as Internet routes, as defined by version 4 of the IP protocol, or IPv4, in RFC 791, for Request For Comment 791. An extension to this protocol, named MP-BGP for Multi Protocol BGP, allows it to transmit other types of route, based on version 6 of the IP or IPv6 protocol, Multicast, L2-VPN for Layer 2 Virtual Private Network, L3-VPN for Layer 3 Virtual Private Network, ...), in sessions established between two routers. Preferably, each router has a session established with the other routers of the same network. Indeed, this type of protocol is a so-called 'fully-meshed' protocol.
Ainsi, un routeur peut router des paquets sur la base d'informations de routage qu'il a reçues depuis son initialisation. De telles informations sont stockées sous forme de tables de routage. De manière générale, certaines de ces tables sont associées à une session donnée et d'autres tables peuvent contenir des informations globales directement relatives au routeur.Thus, a router can route packets based on routing information it has received since its initialization. Such information is stored as routing tables. In general, some of these tables are associated with a given session and other tables may contain global information directly related to the router.
Lorsqu'un problème se produit sur une session BGP, comme par exemple une perte involontaire de session entre un premier et un second routeurs, ou encore un comportement protocolaire erroné d'un des deux routeurs, ou simplement une fermeture volontaire d'une session pour cause de maintenance, la session BGP est alors interrompue.When a problem occurs on a BGP session, such as an unintentional session loss between a first and a second router, or an erroneous protocol behavior of one of the two routers, or simply a voluntary closing of a session for cause of maintenance, the BGP session is then interrupted.
L'interruption d'une telle session BGP peut nuire non seulement aux performances des premier et second routeurs mais aussi aux performances du réseau tout entier.Interrupting such a BGP session may not only affect the performance of the first and second routers but also the performance of the entire network.
En effet, un routage selon le protocole BGP est basé sur la propagation des informations de routeur en routeur dans les sessions BGP entre les routeurs du réseau tout entier. En cas de rupture d'une session BGP, le contenu des tables associées à cette session perdue entre deux routeurs est supprimé sur ces deux routeurs. Les routeurs ne sont donc plus en mesure de router des paquets sur la base des informations contenues dans les tables relatives à la session interrompue. Ce routage, réalisé en l'absence de telles informations, correspond à un mode de fonctionnement dégradé. Le passage d'un mode à l'autre est réalisé lors de la phase de convergence du protocole de routage. On entend par 'phase de convergence d'un protocole de routage', une phase d'adaptation de ce protocole afin de gérer une nouvelle situation, notamment lors de réception de nouvelles informations. Une telle phase d'adaptation peut comprendre un calcul de meilleures routes prenant en compte les nouvelles informations reçues, ou encore une diffusion, ou les cas échéant rediffusion, de ces nouvelles informations à d'autres routeurs, ou encore une diffusion, ou le cas échéant rediffusion, de résultats obtenus à partir de calculs réalisés sur ces nouvelles informations. La session interrompue est ensuite réinitialisée. Une telle gestion de réinitialisation de session requiert certaines étapes à exécuter par le premier et le second routeurs. Ces deux routeurs s'échangent notamment les informations contenues dans les tables globales.Indeed, a routing according to the BGP protocol is based on the propagation of information from router to router in the BGP sessions between the routers of the entire network. In the event of a break in a BGP session, the contents of the tables associated with this lost session between two routers are deleted on these two routers. The routers are no longer able to route packets based on the information contained in the tables relating to the interrupted session. This routing, performed in the absence of such information, corresponds to a degraded mode of operation. The transition from one mode to another is performed during the convergence phase of the routing protocol. The term 'convergence phase of a routing protocol' means a phase of adaptation of this protocol in order to manage a new situation, in particular when new information is received. Such an adaptation phase may include a calculation of better roads taking into account account the new information received, or a diffusion, or if necessary rediffusion, of this new information to other routers, or a diffusion, or if necessary rebroadcasting, results obtained from calculations carried out on this new information . The interrupted session is then reset. Such session reset management requires certain steps to be performed by the first and second routers. These two routers exchange in particular the information contained in the global tables.
Ces étapes de gestion de réinitialisation de session peuvent dans certains cas correspondre à une transmission de grande quantité d'informations entre les deux routeurs, ce qui peut requérir un temps important. Or, pendant la convergence du protocole de routage, la performance du routage des paquets dans le réseau peut être sensiblement diminuée.These session reset management steps may in some cases correspond to a large amount of information being transmitted between the two routers, which may require a significant amount of time. However, during the convergence of the routing protocol, the performance of the packet routing in the network can be significantly reduced.
Il est de ce fait intéressant de réduire les temps de convergence dans de telles conditions.It is therefore interesting to reduce convergence times under such conditions.
La présente invention vise à proposer une solution tendant à satisfaire ces besoins. Un premier aspect de l'invention propose un procédé de gestion de réinitialisation de session selon un protocole de routage dans un réseau de transmission de paquets comprenant une pluralité de routeurs ayant entre eux des sessions selon ledit protocole pour échanger des informations de routage et/ou de connectivité indiquant des chemins pour transmettre des paquets à travers le réseau ; relativement à une session donnée entre un premier et un second routeurs, le premier routeur maintenant une table de routage mise à jour en fonction d'informations reçues depuis le second routeur dans ladite session; suivant lequel le premier routeur opère au moins une sauvegarde dans une base de données des informations contenues dans ladite table de routage ; et suivant lequel le second routeur, ayant connaissance de ladite sauvegarde, stocke dans un journal des informations envoyées ou à envoyer au premier routeur depuis la sauvegarde ; ledit procédé comprenant les étapes suivantes exécutées par le premier routeur après une perte d'informations contenues dans la table de routage:The present invention aims to propose a solution tending to satisfy these needs. A first aspect of the invention provides a session reset management method according to a routing protocol in a packet transmission network comprising a plurality of routers having between them sessions according to said protocol for exchanging routing information and / or connectivity indicating paths for transmitting packets across the network; relative to a given session between a first and a second router, the first router maintaining a routing table updated based on information received from the second router in said session; wherein the first router operates at least one backup in a database of the information contained in said routing table; and wherein the second router, having knowledge of said backup, stores in a log information sent or to be sent to the first router since the backup; said method comprising the following steps performed by the first router after loss of information contained in the routing table:
/a/ récupérer les informations sauvegardées par le premier routeur dans la base de données ;/ a / recover the information saved by the first router in the database;
/b/ recevoir depuis le second routeur dans ladite session lesdites informations stockées par le second routeur depuis la sauvegarde ; Ici mettre à jour la table de routage sur la base des informations récupérées à l'étape /a/ et des informations reçues à l'étape IbI./ b / receiving from the second router in said session said information stored by the second router since the backup; Here update the routing table on the basis of information retrieved in step / a / and information received in step IbI.
Grâce à ces dispositions, lors de la phase de réinitialisation de la session, après interruption de cette dernière, le premier routeur est en mesure de récupérer rapidement les informations de routage précédemment contenues dans sa table de routage. En effet, seules les informations stockées en mémoire par le second routeur sont envoyées au premier routeur. La quantité de ces informations est directement liée au nombre de messages envoyés ou à envoyer dans la session, et par conséquent dépend de la stabilité du réseau.Thanks to these provisions, during the phase of resetting the session, after interruption of the latter, the first router is able to quickly recover the routing information previously contained in its routing table. Indeed, only the information stored in memory by the second router is sent to the first router. The amount of this information is directly related to the number of messages sent or sent in the session, and therefore depends on the stability of the network.
En effet, plus le réseau est stable, moins de messages protocolaires sont émis dans la session. Les informations de connectivité envoyées par un routeur peuvent comprendre notamment l'ensemble des destinations que ce routeur est capable de joindre ou d'atteindre. On en déduit donc aisément que plus un réseau est stable, plus la quantité d'informations stockées en mémoire par le second routeur est faible. De ce fait, dans la phase de réinitialisation de la session, à l'étape IhI, une faible quantité de données circulent entre le second routeur et le premier routeur. Cette quantité peut être très inférieure à la quantité d'informations contenues dans la table de routage du second type du second routeur. on est ainsi- en- mesure de réduire le temps -de- convergence du protocole de routage.Indeed, the more stable the network, the fewer protocol messages are emitted in the session. The connectivity information sent by a router may include all destinations that this router is able to reach or reach. It is therefore easy to deduce that the more stable a network is, the lower the amount of information stored in memory by the second router. Therefore, in the session reset phase, in step IhI, a small amount of data flows between the second router and the first router. This amount can be much less than the amount of information contained in the routing table of the second type of the second router. it is thus possible to reduce the convergence time of the routing protocol.
On note qu'un tel procédé est basé sur un mécanisme à deux parties, une première partie correspondant aux opérations à mettre en œuvre dans une phase de fonctionnement 'normal' et une seconde partie correspondant aux opérations à mettre en œuvre dans une phase de réinitialisation de la session, après une interruption de cette dernière.It is noted that such a method is based on a two-part mechanism, a first part corresponding to the operations to be implemented in a 'normal' operating phase and a second part corresponding to the operations to be implemented in a reset phase. session, after an interruption of the session.
La sauvegarde dans la base de données du premier routeur peut être déclenchée en fonction de critères définis et le stockage en mémoire du second routeur peut comprendre le stockage en continu dans un journal des informations envoyées ou à envoyer au premier routeur depuis la sauvegarde réalisée par ce dernier.The backup in the database of the first router can be triggered according to defined criteria and the storage in memory of the second router can include the continuous storage in a log of the first router. information sent or to be sent to the first router since the backup performed by the latter.
On peut prévoir que la sauvegarde du premier routeur soit déclenchée à intervalle de temps régulier. Ainsi, on peut avantageusement déclencher une telle étape de sauvegarde périodiquement ou encore lorsque les conditions de trafic dans le réseau remplissent certains critères définis. Une telle caractéristique offre une flexibilité dans un mode de réalisation de la présente invention qui peut être très efficace pour améliorer les performances de routage dans un réseau. Le procédé selon un mode de réalisation de l'invention comprend en outre, à chaque sauvegarde, les étapes suivantes :It can be provided that the backup of the first router is triggered at regular intervals of time. Thus, it is advantageous to trigger such a backup step periodically or when traffic conditions in the network meet certain defined criteria. Such a feature provides flexibility in an embodiment of the present invention that can be very effective in improving routing performance in a network. The method according to one embodiment of the invention further comprises, at each backup, the following steps:
/1/ créer un journal sur le second routeur et émettre depuis le second routeur à destination du premier routeur un message de déclenchement de sauvegarde de la table de routage dans la base de données ;/ 1 / create a log on the second router and send from the second router to the first router a trigger message to save the routing table in the database;
121 sur réception dudit message de déclenchement, par le premier routeur, sauvegarder les informations contenues dans la table de routage dans la base de données ;121 on receipt of said trigger message, by the first router, save the information contained in the routing table in the database;
/3/ stocker par le second routeur, dans ledit journal créé, les informations envoyées ou à envoyer au premier routeur./ 3 / storing by the second router, in said created log, the information sent or to be sent to the first router.
On peut renouveler la sauvegarde des informations dans la base de données en réitérant les étapes /1/ à /3/ ; les informations dans la base de données par réitération des étapes /1/ à /3/.We can renew the backup of information in the database by repeating steps / 1 / to / 3 /; the information in the database by repeating steps / 1 / to / 3 /.
- -- Le procédé comprend alors en outre les étapes suivantes, après l'étape 121 : supprimer sur le premier routeur les informations sauvegardées lors de la sauvegarde précédente le cas échéant, et émettre depuis le premier routeur à destination du second routeur un message de réponse audit message de déclenchement ; - sur réception dudit message de réponse, supprimer le journal créé lors de la sauvegarde précédente le cas échéant. Le procédé peut comprendre en outre, lors d'une phase d'établissement de la session et/ou au cours de la session établie, une phase de négociation entre le premier et le second routeurs pour déterminer, en fonction de paramètres définis, si on exécute les étapes dudit procédé relativement à ladite session.The method then further comprises the following steps, after step 121: delete on the first router the information saved during the previous backup if necessary, and send from the first router to the second router a message of response to said trigger message; - On receipt of said response message, delete the log created during the previous backup if necessary. The method may furthermore comprise, during a session establishment phase and / or during the established session, a phase negotiating between the first and second routers to determine, based on defined parameters, whether the steps of said method are performed relative to said session.
Les premier et second routeurs peuvent déterminer une période de réalisation des sauvegardes au cours de la phase de négociation.The first and second routers can determine a period of realization of the backups during the negotiation phase.
Dans un mode de réalisation de la présente invention, le second routeur maintient une table de routage mise à jour en fonction d'informations reçues depuis le second routeur et sauvegarde dans une base de données des informations contenues dans ladite table de routage. Le premier routeur stocke dans une mémoire des informations envoyées ou à envoyer au second routeur. Le second routeur exécute alors les étapes du procédé réalisées par le premier routeur comme les sections précédentes l'énoncent et le premier routeur exécute les étapes du procédé réalisées par le second routeur comme les sections précédentes l'énoncent. Un deuxième aspect de la présente invention propose un routeur destiné à avoir une session avec un autre routeur selon un protocole de routage dans un réseau de transmission de paquets comprenant : des moyens agencés pour maintenir une table de routage mise à jour en fonction d'informations reçues depuis ledit autre routeur dans la session; des moyens agencés pour opérer au moins une sauvegarde dans une base de données des informations contenues dans ladite table de routage, l'autre routeur ayant connaissance de ladite sauvegarde ; - des moyens agencés pour récupérer les informations sauvegardées dans ladite base de données; des moyens agencés pour mettre à jour la table de routage après une perte d'informations contenues dans la table de routage, sur la base des informations récupérées dans ladite base de données après ladite perte d'informations et des informations stockées par l'autre routeur depuis la sauvegarde et reçues depuis l'autre routeur après ladite perte d'informations. Un troisième aspect propose un routeur destiné à avoir une session avec un autre routeur selon un protocole de routage dans un réseau de transmission de paquets, ledit autre routeur maintenant une table de routage mise à jour en fonction d'informations reçues depuis ledit routeur, et opérant au moins une sauvegarde des informations contenues dans ladite table de routage ; ledit routeur comprenant : des moyens agencés pour stocker dans un journal des informations envoyées ou à envoyer audit autre routeur depuis ladite sauvegarde ; - des moyens agencés pour envoyer audit autre routeur lesdites informations envoyées ou à envoyer après une perte d'informations contenues dans la table de routage dudit autre routeur.In one embodiment of the present invention, the second router maintains an updated routing table based on information received from the second router and stores in a database information contained in said routing table. The first router stores in a memory information sent or to be sent to the second router. The second router then executes the process steps performed by the first router as the preceding sections state and the first router executes the process steps performed by the second router as the preceding sections state. A second aspect of the present invention provides a router for having a session with another router according to a routing protocol in a packet transmission network comprising: means arranged to maintain an updated routing table based on information received from said other router in the session; means arranged to operate at least one backup in a database of the information contained in said routing table, the other router having knowledge of said backup; means arranged to retrieve the information saved in said database; means arranged to update the routing table after a loss of information contained in the routing table, on the basis of the information retrieved from said database after said loss of information and information stored by the other router since the backup and received from the other router after said loss of information. A third aspect proposes a router intended to have a session with another router according to a routing protocol in a packet transmission network, said other router maintaining a routing table updated according to information received from said router, and operating at least a backup of the information contained in said table Routing ; said router comprising: means arranged to store in a log information sent or to send to said other router from said backup; means arranged to send to said other router said information sent or to be sent after a loss of information contained in the routing table of said other router.
Un quatrième aspect de la présente invention propose un système de gestion de réinitialisation de session selon un protocole de routage dans un réseau de transmission de paquets comprenant une pluralité de routeurs ayant entre eux des sessions selon ledit protocole pour échanger des informations de routage et/ou de connectivité indiquant des chemins pour transmettre des paquets à travers le réseau ; ledit système comprenant un premier routeur selon le second aspect de la présente invention et un second routeur selon le troisième aspect de la présente invention.A fourth aspect of the present invention provides a session reset management system according to a routing protocol in a packet transmission network comprising a plurality of routers having between them sessions according to said protocol for exchanging routing information and / or connectivity indicating paths for transmitting packets across the network; said system comprising a first router according to the second aspect of the present invention and a second router according to the third aspect of the present invention.
D'autres aspects, buts et avantages de l'invention apparaîtront à la lecture de la description d'un de ses modes de réalisation. L'invention sera également mieux comprise à l'aide des dessins, sur lesquels : la figure 1 illustre les principales étapes de la première partie du mécanisme sur lequel est basé le procédé de gestion de réinitialisation de session de protocole de routage dans un réseau selon un mode de réalisation de l'invention ; la figure 2 illustre les principales étapes de la seconde partie du mécanisme sur lequel est basé le procédé de gestion de réinitialisation de session de protocole de routage dans un réseau selon un mode de réalisation de l'invention ; la figure 3 détaille une architecture de routeurs dans un réseau selon un mode de réalisation de l'invention ; la figure 4 est un schéma représentant un échange de messages entre deux routeurs ayant une session entre eux, dans la première partie du mécanisme sur lequel est basé le procédé selon un mode de réalisation de la présente invention ; la figure 5 est un schéma représentant un échange de messages entre deux routeurs dans une phase de négociation de version de fichiers du procédé selon un mode de réalisation de la présente invention.Other aspects, objects and advantages of the invention will appear on reading the description of one of its embodiments. The invention will also be better understood from the drawings, in which: FIG. 1 illustrates the main steps of the first part of the mechanism on which the routing protocol session reset management method in a network according to FIG. an embodiment of the invention; FIG. 2 illustrates the main steps of the second part of the mechanism on which the routing protocol session reset management method in a network is based according to one embodiment of the invention; FIG. 3 details an architecture of routers in a network according to one embodiment of the invention; Fig. 4 is a diagram showing an exchange of messages between two routers having a session with each other in the first part of the mechanism on which the method according to an embodiment of the present invention is based; Fig. 5 is a diagram showing an exchange of messages between two routers in a file version negotiation phase of the method according to an embodiment of the present invention.
Un routeur selon un mode de réalisation de l'invention maintient une première table de routage contenant des informations de routage et/ou de connectivité reçues depuis un ou plusieurs routeurs voisins. De préférence, dans un mode de réalisation de la présente invention, il maintient une seconde table de routage contenant des informations de routage et/ou de connectivité envoyées à un ou plusieurs routeurs voisins, via le protocole de routage du réseau.A router according to one embodiment of the invention maintains a first routing table containing routing and / or connectivity information received from one or more neighboring routers. Preferably, in one embodiment of the present invention, it maintains a second routing table containing routing and / or connectivity information sent to one or more neighboring routers via the network routing protocol.
De telles tables sont respectivement nommées par la suite 'table de routage du premier type' et 'table de routage du second type'.Such tables are respectively named afterwards 'routing table of the first type' and 'routing table of the second type'.
Une telle configuration ne limite pas la présente invention. En effet, un procédé selon un mode de réalisation de la présente invention peut être mis en œuvre facilement sans que le routeur ne maintienne une table de routage du second type. Un réseau de type Internet est scindé en une pluralité de 'sous- réseaux', chacun fonctionnant sous une administration technique propre, appelés 'système autonome1. Un système autonome est un ensemble de routeurs fonctionnant sous une seule administration technique, utilisant un protocole de routage intérieur, nommé IGP pour Interior Gateway Protocol, et des informations de routage relatives à ce protocole de routage intérieur et communes à l'ensemble de routeurs pour router les paquets à l'intérieur du système autonome. Les protocoles ISIS pour Intermediate System to Intermediate System, OSPF pour Open Shortest Path First, RIP pour Routing Information Protocol, IGRP pour Interior Gateway Routing Protocol, sont de tels protocoles IGP. De tels routeurs utilisent par ailleurs un protocole de routage extérieur, nommé EGP pour Exterior Gateway Protocol pour router les paquets vers les autres systèmes autonomes. Le protocole BGP4 est un protocole de type EGP.Such a configuration does not limit the present invention. Indeed, a method according to an embodiment of the present invention can be implemented easily without the router maintaining a routing table of the second type. An Internet-type network is split into a plurality of 'subnetworks', each operating under its own technical administration, called 'autonomous system 1' . An autonomous system is a set of routers operating under a single technical administration, using an interior routing protocol, named IGP for Interior Gateway Protocol, and routing information relating to that inner routing protocol and common to the set of routers for route the packets inside the autonomous system. ISIS protocols for Intermediate System to Intermediate System, OSPF for Open Shortest Path First, RIP for Routing Information Protocol, IGRP for Interior Gateway Routing Protocol, are such IGP protocols. Such routers also use an external routing protocol, named EGP for Exterior Gateway Protocol to route packets to other autonomous systems. The BGP4 protocol is an EGP type protocol.
Un protocole de routage dérivé du protocole BGP est nommé MP-BGP, pour Multi Protocol BGP. Il fournit la possibilité aux systèmes autonomes de s'échanger des informations étendues que le protocole BGP seul ne gère pas. Cette variante du protocole est utilisée pour échanger des informations liées à la technologie MPLS-VPN, pour Multi Protocol Label Switching Virtual Private Network, Multicast, ou encore IPv6. Il existe encore d'autres variantes du protocole BGP, comme par exemple e-BGP utilisé entre routeurs appartenant à des systèmes autonomes différents et i-BGP utilisé entre routeurs appartenant au même système autonome. La présente invention s'applique à tous les réseaux basés sur de tels protocoles.A routing protocol derived from the BGP protocol is named MP-BGP, for Multi Protocol BGP. It provides the ability for autonomous systems to exchange extended information that the BGP protocol alone does not handle. This variant of the protocol is used to exchange information related to the MPLS-VPN technology, for Multi Protocol Label Switching Virtual Private Network, Multicast, or IPv6. There are still other variants of the BGP protocol, for example e-BGP used between routers belonging to different autonomous systems and i-BGP used between routers belonging to the same autonomous system. The present invention applies to all networks based on such protocols.
La présente invention peut être mise en œuvre dans des réseaux unifiés ainsi que dans des réseaux comprenant plusieurs domaines administratifs. Elle peut s'appliquer dans des réseaux interconnectés à un réseau de type Internet, ou encore dans des réseaux utilisés à des fins privées.The present invention can be implemented in unified networks as well as in networks comprising several administrative domains. It can be applied in networks interconnected to an Internet-type network, or in networks used for private purposes.
L'invention couvre une configuration dans laquelle tous les routeurs du réseau mettent en œuvre avantageusement un procédé selon un mode de réalisation de l'invention. Toutefois, une configuration dans laquelle une partie seulement des routeurs du réseau met en œuvre un mode de réalisation de l'invention s'avère déjà être très avantageuse.The invention covers a configuration in which all the routers of the network advantageously implement a method according to one embodiment of the invention. However, a configuration in which only part of the routers of the network implements an embodiment of the invention is already proving to be very advantageous.
Le procédé selon l'invention peut être considéré comme un procédé unidirectionnel en ce sens qu'il comprend certaines opérations réalisées par le premier routeur et d'autres réalisées par le second routeur. Il peut avantageusement être mis en œuvre dans une seule direction, c'est-à-dire lorsqu'un seul des deux routeurs met à jour sa table de routage du premier type après une interruption de session entre les deux routeurs.The method according to the invention can be considered as a unidirectional method in that it comprises certain operations performed by the first router and others carried out by the second router. It can advantageously be implemented in only one direction, that is to say when only one of the two routers updates its routing table of the first type after a session interruption between the two routers.
Il peut également être mis en œuvre dans les deux directions, par symétrie des opérations réalisées par les deux routeurs. On note par ailleurs qu'on peut mettre en œuvre le procédé selon l'invention dans une direction indépendamment de la mise en œuvre du procédé dans l'autre direction.It can also be implemented in both directions, by symmetry of the operations performed by the two routers. We also note that the method according to the invention can be implemented in one direction independently of the implementation of the method in the other direction.
Les termes « routeur voisin » d'un routeur donné font référence à un routeur ayant une session selon le protocole de routage du réseau avec le routeur donné.The terms "neighbor router" of a given router refer to a router having a session according to the network routing protocol with the given router.
Un routeur dans un réseau de routeurs ayant des sessions selon le protocole BGP, gère en général trois types de tables, les tables du premier type et du second type étant relatives à une session donnée et un autre type de table étant relatif au routeur. Ainsi, le premier type de table de routage relatif à une session, référencé sous le terme "Adjacency-RIB-ln", contient les informations protocolaire BGP reçues depuis un routeur voisin dans cette session. Le second type de table de routage relatif à une session, référencé sous le terme "Adjacency-RIB-Out" contient les informations protocolaires BGP envoyées ou à envoyer à un routeur voisin dans cette session. Puis, l'autre type de table de routage, référencé "Local RIB", contient des informations protocolaires BGP relatives au routeur reçues depuis l'ensemble des routeurs voisins définis sur l'équipement. Cette dernière table de routage, ou un sous-ensemble de cette table, peut être diffusé à tous les routeurs voisins configurés sur le routeur considéré, ce qui permet notamment de créer les tables du second type pour tous les routeurs.A router in a network of routers having sessions according to the BGP protocol, generally manages three types of tables, the tables of the first type and the second type being relative to a given session and another type of table being relative to the router. Thus, the first type of session-related routing table, referred to as "Adjacency-RIB-ln", contains the BGP protocol information received from a neighboring router in this session. The second type of session-related routing table referred to as "Adjacency-RIB-Out" contains the BGP protocol information sent or to be sent to a neighboring router in this session. Then, the other type of routing table, referenced "Local RIB", contains BGP protocol information relating to the router received from all the neighboring routers defined on the equipment. This last routing table, or a subset of this table, can be broadcast to all the neighboring routers configured on the considered router, which allows in particular to create the second type tables for all routers.
En général, un routeur a donc une table unique 'Local RIB' qui synthétise les informations reçues depuis le réseau, et autant de tables de routage du -premier et du second type qu'il a de sessions avec d'autres routeurs.In general, a router therefore has a unique 'Local RIB' table that summarizes the information received from the network, and as many routing tables of the first and the second type that it has sessions with other routers.
En cas d'interruption de session entre deux routeurs, les routeurs perdent les informations relatives à la session, c'est-à-dire les informations contenues dans leurs tables de routage du premier et du second type.In the event of a session break between two routers, the routers lose the information relating to the session, that is to say the information contained in their routing tables of the first and second types.
Un objectif de la présente invention est de permettre que, lors de la réinitialisation de la session, les routeurs puissent mettre à jour au plus vite les informations relatives à cette session.An object of the present invention is to allow that, during the reset of the session, the routers can update as soon as possible the information relating to this session.
Pour une session entre un premier et un second routeurs, quand on active un tel procédé dans un sens de communication, certaines étapes du procédé sont réalisées sur le premier routeur et certaines autres étapes sont réalisées sur le second routeur. Une telle configuration peut s'avérer être avantageuse dans certaines conditions. Il peut également être parfois avantageux de mettre en œuvre un tel procédé sur une partie seulement des routeurs du réseau.For a session between a first and a second router, when activating such a method in a communication direction, certain steps of method are performed on the first router and some other steps are performed on the second router. Such a configuration may prove to be advantageous under certain conditions. It may also sometimes be advantageous to implement such a method on only part of the routers of the network.
On peut également mettre en œuvre le procédé de manière symétrique sur les premier et second routeurs d'une même session. Dans ce cas, le procédé est activé de manière bidirectionnelle.It is also possible to implement the method symmetrically on the first and second routers of the same session. In this case, the method is bidirectionally activated.
Ainsi, la figure 1 illustre une telle application à un routeur dans un réseau de routeurs selon un protocole BGP.Thus, FIG. 1 illustrates such an application to a router in a router network according to a BGP protocol.
Une session 111 relie un premier routeur 101 et un second routeur 102. Le routeur 101 a une table du premier type 104, ou table 'Tab-ln'. Le routeur 102 a une table du second type 108, ou table Tab-Out'.A session 111 connects a first router 101 and a second router 102. The router 101 has a table of the first type 104, or table 'Tab-ln'. The router 102 has a table of the second type 108, or Tab-Out table.
Dans un mode de réalisation de la présente invention, le routeur 101 gère en outre une base de données 105 dans laquelle il sauvegarde le contenu de la table 104. Cette sauvegarde est de préférence réalisée toutes les fois que certains critères définis sont remplis. On note que le contenu de cette base de données n'est préférablement pas affecté par des interruptions sur la session 111. Par ailleurs, le routeur 102 stocke en mémoire les informations qui ont déjà été envoyées au routeur 101 et les informations destinées à être envoyées au routeur 101 dans la session 111.In one embodiment of the present invention, the router 101 also manages a database 105 in which it saves the contents of the table 104. This backup is preferably performed whenever certain defined criteria are fulfilled. Note that the content of this database is preferably not affected by interruptions on the session 111. In addition, the router 102 stores in memory the information that has already been sent to the router 101 and the information to be sent to router 101 in session 111.
Les sections suivantes décrivent un mode de réalisation du procédé appliqué à une seule session BGP. Il est aisé d'en déduire une application à plusieurs sessions simultanées sur un même routeur.The following sections describe an embodiment of the method applied to a single BGP session. It is easy to deduce an application to several simultaneous sessions on the same router.
De préférence, la mise en œuwe du procédé selon un mode de réalisation de la présente invention est optionnelle sur les routeurs. Pendant l'initialisation de la session 111 , les routeurs 101 et 102 s'informent mutuellement de leur capacité respective à mettre en œuvre un tel procédé. Avantageusement, on peut utiliser à cet effet un mécanisme désigné sous les termes de 'capacité' tel que décrit par des documents de I1IETF (pour 'Internet Engineering Task Force') : un document RFC2842 (pour 'Request For Comment') 'Capability advertisement with BGP-4', May 2000 et un document draft-ietf-idr-dynamic-cap-05.txt, 'Dynamic Capability for BGP-4', 14 JuIy 2004.Preferably, the implementation of the method according to one embodiment of the present invention is optional on the routers. During the initialization of the session 111, the routers 101 and 102 inform each other of their respective capacity to implement such a method. May advantageously be used for this purpose designated mechanism under the terms of 'capacity' as described by the documents I 1 (IETF for Internet Engineering Task Force '): a RFC2842 paper (for' Request For Comment ')' Capability advertisement with BGP-4 ', May 2000 and a document draft-ietf-idr-dynamic-cap-05.txt, 'Dynamic Capability for BGP-4', 14 July 2004.
Dans un mode de réalisation de la présente invention, on peut également prévoir qu'un des deux routeurs, en fonction d'un critère déterminé, peut avantageusement débrayer la mise en œuvre du procédé, à tout moment. En effet, lorsque l'application du procédé devient pénalisante dans certaines conditions du réseau, il peut être intéressant parfois de débrayer cette option. Cela peut être notamment le cas dans des conditions d'instabilité du réseau.In one embodiment of the present invention, provision can also be made for one of the two routers, depending on a determined criterion, to advantageously disengage the implementation of the method, at any time. Indeed, when the application of the process becomes penalizing under certain network conditions, it may be interesting sometimes to disengage this option. This can be particularly the case under conditions of instability of the network.
Le mécanisme sur lequel est basé le procédé peut être décrit en deux parties essentielles. Une première partie correspond au fonctionnement normal des routeurs dans la session. Une seconde partie correspond à la gestion de la réinitialisation de la session lorsque celle-ci a été interrompue.The mechanism on which the process is based can be described in two essential parts. A first part corresponds to the normal operation of the routers in the session. A second part is the management of the reset of the session when it was interrupted.
On note préalablement que le mécanisme visant à réinitialiser des informations après une interruption de la session 111 est décrit ci-après relativement au routeur 101. Il est aisé d'étendre cette description à l'application de ce mécanisme au routeur 102 par symétrie des opérations. Dans de telles conditions, le routeur 101 et le routeur 102 peuvent appliquer en parallèle et de manière indépendante le même mécanisme.It is noted beforehand that the mechanism for resetting information after an interruption of the session 111 is described below with respect to the router 101. It is easy to extend this description to the application of this mechanism to the router 102 by symmetry of the operations. . Under such conditions, the router 101 and the router 102 can parallel and independently apply the same mechanism.
Les sections suivantes décrivent la première partie du mécanisme. Dans cette partie, le routeur 101 sauvegarde les informations contenues dans la table du premier type. Les sauvegardes peuvent être réalisées périodiquement.The following sections describe the first part of the mechanism. In this part, the router 101 stores the information contained in the table of the first type. Backups can be performed periodically.
La périodicité de telles sauvegardes peut être déterminée à l'initialisation de la session, et plus précisément, lors d'une phase de négociation entre les deux routeurs quj peut être basée sur le mécanisme de 'capacité'.The periodicity of such backups can be determined at the initialization of the session, and more specifically, during a negotiation phase between the two routers that can be based on the mechanism of 'capacity'.
Dans un mode de réalisation préféré de l'invention, les routeurs 101 et 102 se communiquent mutuellement, au cours de la phase de négociation, les périodes auxquelles ils sont en mesure de réaliser des sauvegardes, en se communiquant par exemple, la période minimale et la période maximale. Une sauvegarde peut être assimilable à un point de synchronisation entre le routeur 101 et le routeur 102 relativement aux données sauvegardées dans la base de données 105 d'une part et aux données stockées en mémoire par le routeur 102 d'autre part. Lorsque le mécanisme de gestion de réinitialisation de session est appliqué dans les deux directions, les périodes de sauvegarde des deux routeurs peuvent être différentes. Cette caractéristique est particulièrement avantageuse pour une session entre un réflecteur de routes, ou RR (pour 'Route Reflector'), et son routeur client. En effet, pour le RR, les sauvegardes des informations de la table du premier type sont très coûteuses car, en général, les RR ont beaucoup plus de sessions à gérer que leurs clients.In a preferred embodiment of the invention, the routers 101 and 102 communicate to each other, during the negotiation phase, the periods at which they are able to make backups, by communicating for example the minimum period and the maximum period. A backup can be likened to a synchronization point between the router 101 and the router 102 relative to the data saved in the database 105 on the one hand and the data stored in memory by the router 102 on the other hand. When the management mechanism of Session reset is applied in both directions, the backup periods of the two routers may be different. This feature is particularly advantageous for a session between a route reflector, or RR (for 'Route Reflector'), and its client router. In fact, for the RR, the backups of the information of the table of the first type are very expensive because, in general, the RRs have many more sessions to manage than their clients.
On note que, en règle générale, le RR envoie de nombreuses informations protocolaires à son routeur client et le client envoie relativement peu d'informations protocolaires au RR. Il est donc important que le routeur client sauvegarde les informations de sa table du premier type à une période relativement courte afin de permettre au RR de ne pas stocker en mémoire une relativement grande quantité d'informations.It is noted that, as a rule, the RR sends a lot of protocol information to its client router and the client sends relatively little protocol information to the RR. It is therefore important for the client router to save information from its first type table to a relatively short period of time to allow the RR not to store a relatively large amount of information in memory.
Sur le routeur 102, les informations envoyées ou à envoyer au routeur 101 sont stockées, de préférence en continu, dans un journal 109 de telle sorte que ce journal contienne l'activité protocolaire générée par le routeur 102 depuis le dernier point de synchronisation, c'est-à-dire depuis la dernière sauvegarde.On the router 102, the information sent or to be sent to the router 101 is stored, preferably continuously, in a log 109 so that this log contains the protocol activity generated by the router 102 since the last synchronization point, c. since the last backup.
Afin de pouvoir restaurer, lors de la phase de réinitialisation, une table de premier type cohérente, il est nécessaire de synchroniser la réalisation de la sauvegarde sur le routeur 101 et la création du journal correspondant du côté du routeur 102.In order to be able to restore, during the reset phase, a coherent first type table, it is necessary to synchronize the realization of the backup on the router 101 and the creation of the corresponding log on the side of the router 102.
L'invention couvre toute méthode permettant aux routeurs 101 et 102 de se synchroniser quant à ces informations à mémoriser pendant la phase de fonctionnement normal.The invention covers any method allowing routers 101 and 102 to synchronize with respect to this information to be memorized during the normal operating phase.
Ainsi, dans certains cas d'instabilité du réseau et/ou lorsque la période d'interruption de la session s'est prolongée, la quantité d'informations stockées dans le journal peut être plus grande que celle des informations contenues dans la table du second type du routeur 102. Dans de telles conditions il peut alors être intéressant de débrayer le mécanisme.Thus, in certain cases of network instability and / or when the period of interruption of the session has been prolonged, the quantity of information stored in the log may be greater than that of the information contained in the table of the second type of router 102. In such conditions it may be interesting to disengage the mechanism.
Afin de réduire cette quantité d'informations dans le journal 109, on peut également sélectionner les informations à stocker par le routeur 102 dans le journal 109. Ainsi, lorsqu'il existe plusieurs modifications pour une route donnée, on peut ne stocker que les informations relatives aux plus récentes modifications.In order to reduce this amount of information in the log 109, it is also possible to select the information to be stored by the router 102 in the log 109. Thus, when there are several modifications for a route given, we can only store information about the most recent changes.
On peut également, lorsque cela est possible, regrouper des informations communes à plusieurs routes pour réduire la quantité d'informations à stocker dans le journal 109.It is also possible, when possible, to group information common to several routes to reduce the amount of information to be stored in the log 109.
La figure 2 illustre les principales étapes de la seconde partie du procédé de gestion de réinitialisation de session de protocole de routage dans un réseau selon un mode de réalisation de l'invention. Ces étapes correspondent à la gestion de la réinitialisation de la session lorsque celle-ci a été interrompue. Ainsi, afin de mettre à jour sa table de routage du premier type, le routeur 101 récupère les informations sauvegardées 201 dans la base de données 105. Puis, le routeur 102 envoie au routeur 101 les informations stockées dans le journal 109. Ensuite, le routeur 101 est en mesure de mettre à jour sa table de routage du premier type 104 sur la base des informations récupérées et reçues.FIG. 2 illustrates the main steps of the second part of the routing protocol session reset management method in a network according to one embodiment of the invention. These steps correspond to the management of the reset of the session when it was interrupted. Thus, in order to update its routing table of the first type, the router 101 retrieves the saved information 201 in the database 105. Then, the router 102 sends to the router 101 the information stored in the log 109. Router 101 is able to update its first type routing table 104 based on the retrieved and received information.
En effet, les informations récupérées dans la base de données 105 correspondent à un état de la table de routage du premier type au moment de la dernière sauvegarde. Puis, dans un mode de réalisation préféré de l'invention, les informations reçues depuis le routeur 102 correspondent aux informations déjà envoyées ou restant à envoyer depuis la dernière sauvegarde. De préférence, les informations reçues depuis le routeur 102 correspondent aux informations déjà envoyées ou restant à envoyer qui sont immédiatement consécutives à la dernière sauvegarde. Ainsi, le routeur 101 est en mesure de mettre à jour la table de routage du premier type sans que le routeur 102 ne lui envoie les informations contenues dans sa table du second type. Le routeur 102 envoie uniquement les informations stockées 202 dans le journal 109.Indeed, the information retrieved from the database 105 corresponds to a state of the routing table of the first type at the time of the last backup. Then, in a preferred embodiment of the invention, the information received from the router 102 corresponds to the information already sent or still to be sent since the last backup. Preferably, the information received from the router 102 corresponds to the information already sent or still to be sent which is immediately consecutive to the last backup. Thus, the router 101 is able to update the routing table of the first type without the router 102 sending him the information contained in its table of the second type. The router 102 sends only the stored information 202 in the log 109.
Une telle caractéristique est d'autant plus avantageuse lorsque peu d'informations ont été stockées par le routeur 102 entre la dernière sauvegarde et les opérations de réinitialisation de la session.Such a feature is all the more advantageous when little information has been stored by the router 102 between the last backup and the reset operations of the session.
La figure 3 détaille une architecture de routeurs dans un réseau selon un mode de réalisation de l'invention. Les routeurs 101 et 102 comprennent chacun une table de routage globale 301 , une table de routage du premier type 104 et une table de routage du second type 108, ainsi qu'une base de donnéesFigure 3 details a router architecture in a network according to one embodiment of the invention. The routers 101 and 102 each comprise a global routing table 301, a routing table of the first type 104 and a second type routing table 108, as well as a database
105 et une mémoire 109 correspondant au journal. La table de routage globale 301 n'étant pas relative à une session donnée, elle peut être utilisée pour mettre à jour la table de routage du second type 108, le cas échéant. A partir de cette figure, on peut aisément déduire une application en parallèle du mécanisme fondé sur les deux parties décrites ci-dessus d'une part relativement au routeur 101 et d'autre part relativement au routeur 102. Chacun de ces routeurs peut appliquer en parallèle et de façon indépendante le mécanisme du procédé selon un mode de réalisation de l'invention. La figure 4 est un schéma représentant un échange de messages entre deux routeurs ayant une session entre eux, avant la perte de la session, selon un mode de réalisation de la présente invention. Cet échange de messages correspond à la première partie du mécanisme, comme décrit précédemment.105 and a memory 109 corresponding to the newspaper. Since the global routing table 301 is not relative to a given session, it can be used to update the routing table of the second type 108, if necessary. From this figure, one can easily deduce a parallel application of the mechanism based on the two parts described above on the one hand relatively to the router 101 and secondly relative to the router 102. Each of these routers can apply in parallel and independently the mechanism of the method according to one embodiment of the invention. Fig. 4 is a diagram showing an exchange of messages between two routers having a session with each other before the loss of the session, according to an embodiment of the present invention. This message exchange corresponds to the first part of the mechanism, as previously described.
A titre illustratif, les sections suivantes décrivent l'échange de messages définis dans le protocole BGP dans une session BGP. L'invention couvre également une implémentation pour laquelle d'autres messages sont utilisés.As an illustration, the following sections describe the exchange of messages defined in the BGP protocol in a BGP session. The invention also covers an implementation for which other messages are used.
Le protocole de type BGP définit un message de mise à jour des informations de routage et/ou de connectivité, noté BGP-UPDATE ou encore BGP-UPD, certains de ces messages permettent d'ajouter des informations de routage dans des tables de routage, d'autres de ces messages permettent de retirer des informations de routage.The BGP type protocol defines a message for updating routing and / or connectivity information, denoted BGP-UPDATE or BGP-UPD, some of these messages make it possible to add routing information in routing tables, others of these messages can remove routing information.
Il définit également un message, noté BGP-CAPABILITY ou encore BGP-CAPA, qui permet l'échange d'informations autres que des informations de routage entre deux routeurs voisins.It also defines a message, denoted BGP-CAPABILITY or BGP-CAPA, which allows the exchange of information other than routing information between two neighboring routers.
Dans cette première partie du mécanisme, à l'étape 405, le routeur 102 émet à destination du routeur 101 un message 'BGP-UPD' 401. Le routeur 102 stocke alors dans un journal N ce message, de préférence en même temps qu'il émet ce message à destination du routeur 101. Puis, à une étape 406, correspondant à une étape de synchronisation, le routeur 102 d'une part émet un message 'BGP-CAPA' 402 à destination du routeur 101 et d'autre part, crée un journal N+1 à une étape 407. Cette étape de synchronisation peut être déclenchée en fonction de critères définis. Par exemple, on peut déclencher cette étape à intervalle de temps régulier, périodiquement ou encore lorsque la taille du journal a atteint un seuil prédéterminé. On peut également déclencher cette étape lorsque les conditions de trafic dans le réseau remplissent certains critères définis. Sur réception de ce message, le routeur 101 sauvegarde les informations contenues dans la table du premier type, à une étape 408.In this first part of the mechanism, in step 405, the router 102 transmits to the router 101 a 'BGP-UPD' message 401. The router 102 then stores in a log N this message, preferably at the same time as it sends this message to the router 101. Then, in a step 406, corresponding to a synchronization step, the router 102 on the one hand sends a message 'BGP-CAPA' 402 to the router 101 and secondly , creates an N + 1 log at a step 407. This synchronization step can be triggered according to defined criteria. By For example, this step can be triggered at a regular time interval, periodically, or when the log size has reached a predetermined threshold. This step can also be triggered when the traffic conditions in the network fulfill certain defined criteria. On receipt of this message, the router 101 saves the information contained in the table of the first type, at a step 408.
Un tel message est utilisé dans ce cas pour requérir auprès du routeurSuch a message is used in this case to request from the router
101 une sauvegarde des informations contenues dans la table du premier type.101 a backup of the information contained in the table of the first type.
De préférence après avoir réalisé cette sauvegarde, à une étape 409, le routeur 101 supprime les informations relatives à la précédente sauvegarde, le cas échéant.Preferably after performing this backup, in a step 409, the router 101 deletes the information relating to the previous backup, if any.
Puis, à une étape 410, le routeur 101 émet à destination du routeur 102 un autre message 'BGP-CAPA' 403.Then, in a step 410, the router 101 transmits another message 'BGP-CAPA' 403 to the router 102.
Sur réception de ce message 403, de préférence, le routeur 102 supprime le journal N, à l'étape 410. En effet, à ce stade, les informations stockées dans le journal N ont été prises en compte dans les informations sauvegardées à l'étape précédente 408.On receipt of this message 403, preferably, the router 102 deletes the log N, in step 410. Indeed, at this stage, the information stored in the log N has been taken into account in the information saved to the previous step 408.
Puis, le routeur 102 est amené à émettre un ou plusieurs messages 'BGP-UDP' 404 à destination du routeur 101. A l'étape 411 , le routeur 102 stocke en mémoire ce message dans le journal N+1 , créé précédemment à l'étape 407.Then, the router 102 is sent to send one or more 'BGP-UDP' messages 404 to the router 101. In the step 411, the router 102 stores in memory this message in the log N + 1, previously created at the time. step 407.
Il stocke ensuite, dans le journal N+1 , les messages de type 'BGP- UPD' émis à destination du routeur 101 jusqu'à la prochaine étape de synchronisation similaire à l'étape 406. Les sections précédentes décrivent donc un mécanisme permettant de synchroniser le contenu du journal géré par le routeur 102 avec le contenu de la base de données géré par le routeur 101 en fonctionnement normal. Une telle synchronisation peut permettre d'optimiser les quantités d'informations enregistrées sur les deux routeurs. De ce fait, elle peut permettre de réduire les informations à envoyer depuis le routeur 102 au routeur 101 , correspondant aux informations contenues dans le journal, afin de réinitialiser la session après une interruption.It then stores, in the N + 1 log, the messages of type 'BGP-UPD' sent to the router 101 until the next synchronization step similar to step 406. The preceding sections therefore describe a mechanism for synchronize the contents of the log managed by the router 102 with the contents of the database managed by the router 101 in normal operation. Such a synchronization can make it possible to optimize the quantities of information recorded on the two routers. Therefore, it can reduce the information to be sent from the router 102 to the router 101, corresponding to the information in the log, to reset the session after an interruption.
Un tel mécanisme de synchronisation entre le routeur 101 et le routeur 102 selon un mode de réalisation de la présente invention est décrit à titre illustratif sans introduire de limitation quant aux mécanismes de synchronisation entre les routeurs. La présente invention couvre tout autre mécanisme de synchronisation possible. Les sections suivantes décrivent un échange de messages relativement à la seconde partie du mécanisme sur lequel est fondé le procédé selon un mode de réalisation de la présente invention.Such a synchronization mechanism between the router 101 and the router 102 according to an embodiment of the present invention is described for illustrative purposes without introducing any limitation as to the synchronization mechanisms between the routers. The present invention covers any other possible synchronization mechanism. The following sections describe a message exchange with respect to the second part of the mechanism on which the method according to one embodiment of the present invention is based.
Ainsi, lorsqu'un problème survient, la session BGP est interrompue et les informations présentes dans les tables du premier et du second types relatives à la session sont perdues. Aussi, la réinitialisation de cette session requiert une phase de "réapprentissage" des informations échangées sur cette session auparavant.Thus, when a problem occurs, the BGP session is interrupted and the information present in the tables of the first and second types relating to the session are lost. Also, resetting this session requires a phase of "relearning" information exchanged on this session before.
Dans un mode de réalisation de la présente invention, lors de fa phase d'initialisation de la session entre les deux routeurs, ces routeurs déterminent, de préférence conjointement, s'ils mettent en oeuvre ou non le procédé selon l'invention.In one embodiment of the present invention, during the phase of initialization of the session between the two routers, these routers determine, preferably jointly, whether they implement the method according to the invention or not.
On note par ailleurs que les informations sauvegardées et/ou les informations stockées dans un journal sont enregistrées dans des fichiers selon des formats déterminés. Au moment de l'initialisation de la session, dans un mode de réalisation de la présente invention, les routeurs s'accordent au préalable sur une version du journal et/ou des informations à utiliser.Note also that the saved information and / or the information stored in a log are recorded in files in specific formats. At the time of initialization of the session, in one embodiment of the present invention, the routers agree in advance on a version of the log and / or information to be used.
Pour cela ils se communiquent de préférence la (ou les) versions de fichier qui leur sont respectivement disponibles. Dans un mode de réalisation de la présente invention, un routeur peut disposer de deux versions différentes.For that they prefer to communicate to each other the file version (s) which are respectively available to them. In one embodiment of the present invention, a router may have two different versions.
Les routeurs négocient de préférence les versions de fichier lors de l'ouverture de la session et plus précisément lors de la négociation de laRouters preferably negotiate file versions when opening the session and more specifically when negotiating the
'capacité'.'capacity'.
La figure 5 illustre une telle négociation dans une section 500. Dans cette section, dans un message 'BGP-OPEN' 502 destiné à l'ouverture d'une session BGP, le routeur 101 transmet au routeur 102 les versions P et P+1 disponibles concernant la sauvegarde et les versions M et M+1 disponibles concernant le journal. Le routeur 102 transmet, dans un message 'BGP-OPEN' 503, au routeur 101 les versions L et L+1 disponibles concernant la sauvegarde et les versions K et K+1 disponibles concernant le journal.FIG. 5 illustrates such a negotiation in a section 500. In this section, in a 'BGP-OPEN' message 502 intended to open a BGP session, the router 101 transmits to the router 102 the P and P + 1 versions. available for backup and available M and M + 1 versions for the log. The router 102 transmits, in a message 'BGP-OPEN' 503, at router 101 the L and L + 1 versions available for backup and the available K and K + 1 versions for the log.
De préférence, les routeurs sélectionnent, pour chaque direction, le numéro de version le plus élevé disponible à la fois sur les deux routeurs. On peut, par exemple, décider de mettre en place la version la plus récente commune aux deux routeurs en ce qui concerne les fichiers de sauvegarde et les fichiers relatifs au journal.Preferably, the routers select, for each direction, the highest version number available on both routers at the same time. For example, you can decide to set up the latest version common to both routers for backup files and log files.
Dans cet exemple, à l'étape 504, le routeur 101 restaure les informations selon la version commune disponible la plus récente et le routeur 102 restaure les informations dans le journal selon la version commune disponible la plus récente du journal.In this example, in step 504, the router 101 restores the information according to the most current available common version and the router 102 restores the information in the log according to the most recent available common version of the log.
Dans une section 501 , le routeur 102 envoie au routeur 101 un ou plusieurs messages 'BGP-UPD' 505 contenant des informations du journal selon la version commune la plus récente. Ainsi, le routeur 101 est en mesure de traiter ces informations reçues.In a section 501, the router 102 sends to the router 101 one or more 'BGP-UPD' messages 505 containing log information according to the most recent common version. Thus, the router 101 is able to process this received information.
Au cours de la réinitialisation de la session, le routeur 101 récupère les informations depuis la base de données 105 et peut mettre à jour sa table de routage du premier type sur la base de ces informations. Le routeur se retrouve alors dans une situation identique à celle correspondant au point de synchronisation tel qu'illustré par l'étape 406.During the reset of the session, the router 101 retrieves the information from the database 105 and can update its routing table of the first type based on this information. The router is then in a situation identical to that corresponding to the synchronization point as illustrated by step 406.
Puis, le routeur 101 exploite les informations reçues depuis le routeur 102, c'est-à-dire correspondant à celles contenues dans le journal depuis le dernier point de synchronisation de la session. Il met à jour la table de routage du premier type avec ces informations. Un tel procédé permet de réduire le temps pendant lequel le réseau fonctionne dans des conditions dégradées.Then, the router 101 exploits the information received from the router 102, that is to say corresponding to those contained in the log since the last synchronization point of the session. It updates the routing table of the first type with this information. Such a method makes it possible to reduce the time during which the network operates in degraded conditions.
La possibilité de débrayer ce mécanisme à tout moment par l'un ou l'autre des routeurs permet d'éviter un fonctionnement du réseau plus dégradé qu'il ne l'est sans ce mécanisme. La présente invention trouve une application très avantageuse sur lesThe possibility of disengaging this mechanism at any time by one or the other of the routers makes it possible to avoid a network operation more degraded than it is without this mechanism. The present invention finds a very advantageous application on
RR qui disposent d'un grand nombre de sessions et d'un nombre important de routes. Elle permet alors un rétablissement plus rapide des sessions.RRs that have a large number of sessions and a significant number of routes. It allows faster recovery of sessions.
Par ailleurs, on peut également prévoir d'activer un tel mécanisme au cours du fonctionnement normal d'une session et non dès la phase d'ouverture. Une telle possibilité peut s'avérer être très intéressante en cas de maintenance du routeur.In addition, it is also possible to activate such a mechanism during the normal operation of a session and not during the opening phase. Such a possibility can be very interesting in case of maintenance of the router.
Cette activation dynamique peut par exemple être réalisée en envoyant un message correspondant à une 'capacité' dynamique lorsque l'on souhaite activer ce mécanisme.This dynamic activation can for example be achieved by sending a message corresponding to a dynamic 'capacity' when it is desired to activate this mechanism.
On peut également activer le mécanisme dès l'ouverture de la session mais sans activer de sauvegarde périodique. Puis, on peut négocier une mise en œuvre des sauvegardes périodiques en cours de session entre les deux routeurs.You can also activate the mechanism as soon as you open the session but without activating a periodic backup. Then, we can negotiate an implementation of periodic backups during the session between the two routers.
On note que, de préférence, les mémoires utilisées sur les routeurs pour mettre en œuvre un tel procédé selon un mode de réalisation de la présente invention, sont non volatiles. Ainsi, avantageusement, les informations stockées ne sont pas effacées en cas de panne ou d'arrêt de l'équipement. Note that, preferably, the memories used on the routers to implement such a method according to an embodiment of the present invention, are non-volatile. Thus, advantageously, the stored information is not erased in case of failure or stop of the equipment.

Claims

REVENDICATIONS
1. Procédé de gestion de réinitialisation de session selon un protocole de routage dans un réseau de transmission de paquets comprenant une pluralité de routeurs ayant entre eux des sessions selon ledit protocole pour échanger des Informations de routage et/ou de connectivité indiquant des chemins pour transmettre des paquets à travers le réseau ; relativement à une session donnée (111) entre un premier (101) et un second (102) routeurs, le premier routeur maintenant une table de routage (104) mise à jour en fonction d'informations reçues depuis le second routeur dans ladite session; suivant lequel le premier routeur opère au moins une sauvegarde dans une base de données (105) des informations contenues dans ladite table de routage, et suivant lequel le second routeur, ayant connaissance de ladite sauvegarde, stocke dans un journal (109) des informations envoyées ou à envoyer au premier routeur depuis la sauvegarde ; ledit procédé comprenant les étapes suivantes exécutées par le premier routeur après une perte d'informations contenues dans la table de routage: /a/ récupérer (201) les informations sauvegardées par le premier routeur dans la base de données ;A session reset management method according to a routing protocol in a packet transmission network comprising a plurality of routers having between them sessions according to said protocol for exchanging routing and / or connectivity information indicating paths for transmitting. packets across the network; relative to a given session (111) between a first (101) and a second (102) router, the first router maintaining a routing table (104) updated based on information received from the second router in said session; wherein the first router operates at least one backup in a database (105) of information contained in said routing table, and wherein the second router, having knowledge of said backup, stores in a log (109) information sent or send to the first router since the backup; said method comprising the following steps performed by the first router after loss of information contained in the routing table: / a / retrieve (201) the information backed up by the first router in the database;
IbI recevoir (202) depuis le second routeur dans ladite session lesdites informations stockées par le second routeur depuis la sauvegarde ; Ici mettre à jour la table de routage sur la base des informations récupérées à l'étape /a/ et des informations reçues à l'étape IbI.IBI receiving (202) from the second router in said session said information stored by the second router since the backup; Here update the routing table on the basis of information retrieved in step / a / and information received in step IbI.
2. Procédé selon la revendication 1 , suivant lequel la sauvegarde du premier routeur est déclenchée à intervalle de temps régulier.2. The method of claim 1, wherein the backup of the first router is triggered at regular time interval.
3. Procédé selon l'une quelconque des revendications précédentes, comprenant en outre, à chaque sauvegarde, les étapes suivantes :3. Method according to any one of the preceding claims, further comprising, at each backup, the following steps:
/1/ créer un journal sur le second routeur (102) et émettre depuis le second routeur à destination du premier routeur un message/ 1 / create a log on the second router (102) and transmit from the second router to the first router a message
(402) de déclenchement de sauvegarde de la table de routage dans la base de données ;(402) triggering backup of the routing table in the database;
121 sur réception dudit message de déclenchement, par le premier routeur, sauvegarder (408) les informations contenues dans la table de routage dans la base de données ; IZI stocker (411) par le second routeur, dans ledit journal créé, les informations envoyées ou à envoyer (404) au premier routeur.121 on receipt of said trigger message, by the first router, save (408) the information contained in the routing table in the database; IZI store (411) by the second router, in said created log, the information sent or to be sent (404) to the first router.
4. Procédé selon la revendication 3, suivant lequel on réitère la sauvegarde des informations dans la base de données (105) en réitérant les étapes /1/ à /3/ ; ledit procédé comprenant en outre les étapes suivantes, après l'étape 121 : supprimer sur le premier routeur les informations sauvegardées lors de la sauvegarde précédente le cas échéant, et émettre depuis le premier routeur à destination du second routeur un message de réponse (403) audit message de déclenchement ; sur réception dudit message de réponse (403), supprimer le journal créé lors de la sauvegarde précédente le cas échéant.4. The method according to claim 3, wherein the backup of the information in the database (105) is repeated by repeating the steps / 1 / to / 3 /; said method further comprising the following steps, after step 121: delete on the first router the information saved during the previous backup if necessary, and send from the first router to the second router a response message (403) auditing message; upon receipt of said response message (403), delete the log created during the previous backup if necessary.
5. Procédé selon l'une quelconque des revendications précédentes, comprenant en outre, lors d'une phase d'établissement de la session et/ou au cours de la session établie, une phase de négociation entre le premier et le second routeur pour déterminer, en fonction de paramètres définis, si on exécute les étapes dudit procédé relativement à ladite session.A method according to any one of the preceding claims, further comprising, during a session establishment phase and / or during the established session, a negotiation phase between the first and the second router to determine according to defined parameters, if the steps of said method are performed relative to said session.
6. Procédé selon la revendication 5, suivant lequel les premier et second routeurs déterminent une période de réalisation des sauvegardes au cours de la phase de négociation.6. The method of claim 5, wherein the first and second routers determine a period of realization of the backups during the negotiation phase.
7. Procédé selon l'une quelconque des revendications précédentes, suivant lequel, en outre, le second routeur maintient une table de routage mise à jour en fonction d'informations reçues depuis le premier routeur et sauvegarde dans une base de données des informations contenues dans ladite table de routage; suivant lequel le premier routeur stocke dans un journal des informations envoyées ou à envoyer au second routeur ; et suivant lequel on exécute sur le second routeur les étapes dudit procédé réalisées par le premier routeur selon l'une quelconque des revendications précédentes et on exécute sur le premier routeur les étapes dudit procédé réalisées par le second routeur selon l'une quelconque des revendications précédentes.The method of any of the preceding claims, wherein, furthermore, the second router maintains an updated routing table based on information received from the first router and saving in a database the information contained in said routing table; wherein the first router stores in a log information sent or to be sent to the second router; and according to which the steps of said method performed by the first router according to any one of the preceding claims are executed on the second router and the steps of said method carried out by the second router according to any one of the preceding claims are executed on the first router; .
8. Routeur (101) destiné à avoir une session avec un autre routeur (102) selon un protocole de routage dans un réseau de transmission de paquets comprenant : des moyens agencés pour maintenir une table de routage (104) mise à jour en fonction d'informations reçues depuis ledit autre routeur dans la session; des moyens agencés pour opérer au moins une sauvegarde dans une base de données (105) des informations contenues dans ladite table de routage, l'autre routeur ayant connaissance de ladite sauvegarde ; des moyens agencés pour récupérer (201) les informations sauvegardées dans ladite base de données; des moyens agencés pour mettre à jour la table de routage après une perte d'informations contenues dans la table de routage, sur la base des informations récupérées dans ladite base de données après ladite perte d'informations et des informations stockées par l'autre routeur depuis la sauvegarde et reçues depuis l'autre routeur après ladite perte d'informations.A router (101) for having a session with another router (102) according to a routing protocol in a packet transmission network comprising: means arranged to maintain an updated routing table (104) based on information received from said other router in the session; means arranged to operate at least one backup in a database (105) of the information contained in said routing table, the other router having knowledge of said backup; means arranged to retrieve (201) the information saved in said database; means arranged to update the routing table after a loss of information contained in the routing table, on the basis of the information retrieved from said database after said loss of information and information stored by the other router since the backup and received from the other router after said loss of information.
9. Routeur (102) destiné à avoir une session avec un autre routeur (101) selon un protocole de routage dans un réseau de transmission de paquets, ledit autre routeur (101) maintenant une table de routage mise à jour en fonction d'informations reçues depuis ledit routeur, et opérant au moins une sauvegarde des informations contenues dans ladite table de routage ; ledit routeur (102) comprenant : des moyens agencés pour stocker dans un journal (109) des informations envoyées ou à envoyer audit autre routeur depuis ladite sauvegarde ; des moyens agencés pour envoyer audit autre routeur lesdites informations envoyées ou à envoyer, après une perte d'informations contenues dans la table de routage dudit autre routeur.A router (102) for having a session with another router (101) according to a routing protocol in a packet transmission network, said other router (101) maintaining a routing table updated according to information received from said router, and operating at least one saving the information contained in said routing table; said router (102) comprising: means arranged to store in a log (109) information sent to or sent to said other router from said backup; means arranged to send to said other router said information sent or to be sent, after a loss of information contained in the routing table of said other router.
10. Système de gestion de réinitialisation de session selon un protocole de routage dans un réseau de transmission de paquets comprenant une pluralité de routeurs ayant entre eux des sessions selon ledit protocole pour échanger des informations de routage et/ou de connectivité indiquant des chemins pour transmettre des paquets à travers le réseau ; ledit système comprenant un premier routeur (101) selon la revendication 8 et un second routeur (102) selon la revendication 9. A session reset management system according to a routing protocol in a packet transmission network comprising a plurality of routers having between them sessions according to said protocol for exchanging routing and / or connectivity information indicating paths for transmitting. packets across the network; said system comprising a first router (101) according to claim 8 and a second router (102) according to claim 9.
PCT/FR2006/000240 2005-02-04 2006-02-02 Session reset management method using a routing protocol WO2006082321A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0501140A FR2881904A1 (en) 2005-02-04 2005-02-04 METHOD FOR MANAGING SESSION RESET ACCORDING TO A ROUTING PROTOCOL
FR0501140 2005-02-04

Publications (1)

Publication Number Publication Date
WO2006082321A1 true WO2006082321A1 (en) 2006-08-10

Family

ID=34953707

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2006/000240 WO2006082321A1 (en) 2005-02-04 2006-02-02 Session reset management method using a routing protocol

Country Status (2)

Country Link
FR (1) FR2881904A1 (en)
WO (1) WO2006082321A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030193890A1 (en) * 2002-04-16 2003-10-16 Tsillas Demetrios James Methods and apparatus for improved failure recovery of intermediate systems
US20040078625A1 (en) * 2002-01-24 2004-04-22 Avici Systems, Inc. System and method for fault tolerant data communication
US20040090913A1 (en) * 2002-11-12 2004-05-13 Cisco Technology, Inc. Routing system and method for synchronizing a routing system with peers after failover

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040078625A1 (en) * 2002-01-24 2004-04-22 Avici Systems, Inc. System and method for fault tolerant data communication
US20030193890A1 (en) * 2002-04-16 2003-10-16 Tsillas Demetrios James Methods and apparatus for improved failure recovery of intermediate systems
US20040090913A1 (en) * 2002-11-12 2004-05-13 Cisco Technology, Inc. Routing system and method for synchronizing a routing system with peers after failover

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SANGLI S R ET AL: "Graceful Restart Mechanism for BGP", IETF INTERNET DRAFT, 31 July 2003 (2003-07-31), XP002313402 *

Also Published As

Publication number Publication date
FR2881904A1 (en) 2006-08-11

Similar Documents

Publication Publication Date Title
EP1557009B1 (en) Internal bgp downloader
EP1307015B1 (en) Fault tolerant IS-IS routing system and method corresponding
US8923305B2 (en) Flooding-based routing protocol having database pruning and rate-controlled state refresh
US20070064702A1 (en) Modifying operation of peer-to-peer networks based on integrating network routing information
Mislove et al. Experiences in building and operating ePOST, a reliable peer-to-peer application
EP2014031A1 (en) Method for selecting a telephony route withing an ip telephony domain, corresponding device and computer programme
EP2279586A1 (en) Technique for protection in a communication network in connected mode of a point-to-multipoint primary tree
EP1598997B1 (en) Routing in a communications network
EP1276283B1 (en) Fault tolerant system for inter-autonomous systems routing
EP2119190B1 (en) Service continuity management in a network
EP2332293B1 (en) Distribution of routes in a network of routers
EP1657866B1 (en) Device for selecting routing information for a router in a communications network
WO2006082321A1 (en) Session reset management method using a routing protocol
EP2591587B1 (en) Confidential or protected access to a network of nodes distributed over a communication architecture with the aid of a topology server
EP1754339B1 (en) Method for control management based on a routing protocol
CA2533289C (en) Method of locating mobile communicating objects within a communications network, comprising the transmission of location identifiers by repeaters and server updates
Mundur et al. Routing in intermittent networks using storage domains
WO2006075068A1 (en) Method for controlling sessions according to a routing protocol
Pelsser et al. Scalable support of interdomain routes in a single as
WO2020002792A1 (en) Communication method implemented by a first router of an autonomous system using an interior gateway protocol
FR2893799A1 (en) Route selecting method for e.g. Internet network, involves selecting route based on attributed parameter, before selection of route based on network address of router, where selected route corresponds to that whose reception is earliest
EP2254288B1 (en) Method for preventing loops in inter-domain routing
WO2008035007A1 (en) Method for routing data packets in an ad-hoc large scale network comprising a plurality of geographical covering cells
WO2005071901A1 (en) Method of updating a routing information table and corresponding router

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06709232

Country of ref document: EP

Kind code of ref document: A1

WWW Wipo information: withdrawn in national office

Ref document number: 6709232

Country of ref document: EP