Non-intrusive method for routing policy discovery
Abstract
Discovering routing policies in information networks. Large networks such as Autonomous Systems are abstracted as a single network element. A plurality of taps on the borders of the abstracted element filter ingress/egress data which is forwarded for collection and correlation. By correlating information from different taps, routing policies are discovered. These discovered policies may be compared with published policies. Access control makes discovered policies and the comparisons with published policies selectively available depending on predefined access classes.

Term
Term ended
Projected expiry passed 23 July 2024, 2.2 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
12 claims: 1 independent, 11 dependent
- 1The method of discovering policies in an abstracted routing element comprising:tapping ingress and egress streams at a plurality of connections to the element, filtering ingress and egress streams at the taps, collecting filtered ingress and egress streams from the taps, correlating the collected ingress and egress information, and discovering policies used in the abstracted routing element from the correlated ingress and egress information.
33 paragraphs in 3 sections, as filed
Field of the Invention
The present invention relates to digital data networks, and more particularly, to non-intrusive methods for routing policy discovery in networks and/or Autonomous Systems.
Art Background
Any digital data traversing a network must be routed. While an end user in California checking a website hosted in the United Kingdom is more concerned about receiving information from that website than how the information travels, the stream of packets representing the user request and the web server response are routed through a number of networks; it is possible that not all the packets involved take the same route.
Routers are specialized computers which forward messages to their respective destinations. One of the tasks of the router is to determine the most effective and/or efficient route for a packet to take. The router switches packets of information between multiple ports connected to other routers and intervening networks.
The intervening networks are constructed as independently administrated domains known as Autonomous Systems (AS). Autonomous Systems are comprised of a set of routers and interconnecting paths, but are managed and appear to the outside world as monolithic entities. Packets are routed based on a routing information database. The routing information database within an AS is a result of intra-domain routing protocol processing where the routing information exchanged between ASes is done by intra-domain routing protocols. For inter domain, routing information is typically exchanged using inter-domain routing protocols. Dissemination of inter-domain routing information is a subject of routing policies. These policies have both technical and business aspects.
Technical aspects of routing policies have to do with the most efficient routing of packets. For example, a gigabit link is usually preferred over a T-1 line as it is faster. Routes with fewer hops are usually preferred.
Business aspects of routing policies have to do with cost and business decisions. For example, a business may contract with more than one service provider, routing most of its traffic through one provider and using the second as backup. An AS may base routing on contractual obligations, for example, a contractual obligation to provide a customer with a specified quality of service (QoS) may affect routing policy. An AS uses routing policy to restrict traffic carried on certain high-capacity links to those customers willing to pay a premium for the service. Different ISPs (Internet Service Providers) will apply different routing policies depending with whom they peer.
An ISP or AS should apply its routing policies across all elements of its network, insuring that policies are applied consistently. These routing policies determine, for example, which prefixes are accepted by an AS, from whom, and which prefixes are advertised by the AS, and to whom. Routing policy may also state how prefixes are aggregated, as well as the use of MEDs (Multi-Exit Discriminator) and communities, and the use of damping parameters to control issues such as flapping.
Within an AS the routing information is distributed via intra-domain routing protocols such as the Routing Information Protocol (RIP), Open Shortest Path First Protocol (OSPF), or Intermediate System to Intermediate System (ISIS). Interdomain routing information is usually distributed via the industry standard Border Gateway Protocol (BGP), or the like. Internally within an AS, BGP exchanges routing information between border routers using iBGP and between ASes using eBGP. Only border routers are involved in BGP routing information exchange. Border routers are those operating on the edges of an AS.
While an AS may appear as a monolithic entity, it is comprised of a myriad of routers and links between those routers. Each router and each link present possible sources of trouble. Trouble may be in the nature of injudicious backhoe operators, faulty connectors, power outages, operator errors, misconfigured routers, or miscommunication between routers. Some of the intra-domain routing changes effect inter-domain routing information.
In a system such as an AS which could be geographically distributed, and contains a myriad of variables such as the operating states of border routers and the links between them, how does the AS operator verify that the routing policies they have put in place have been deployed through the AS and are actually operating? How may an ISP customer verify that his/her ISP is implementing the routing policies for which they have contracted?
Existing solutions monitor BGP and similar exchanges in the target network, gathering routing information at specific locations under the assumption that all border routers of a particular AS behave in the same manner. These solutions suffer from a number of difficulties. First, they can only model the network to the extent of the information received. Even collecting all BGP sessions from all border routers will not guarantee that the disseminated routing information is the same as that reported by the BGP sessions. Extra BGP sessions are required to perform such monitoring, increasing the overhead on monitored routers. Second, prefixes which are blocked will not be visible unless there are also established BGP sessions with other ASes which advertise those prefixes. This means that in order to discover if routes are blocked by a specific border router, a BGP session must be established with a router that advertises the questionable prefixes and with a router which accepts those prefixes. Third, router configuration in the form of BGP sessions or similar information is at least one level removed from the policies being implemented; BGP session data represents the effect or implementation of policy, not the policy itself.
Additionally, data acquired from monitoring BGP sessions describes the network as it is supposed to be, rather than as the network actually is, complete with router misconfigurations, operator errors, faulty equipment, and the myriad of troubles which differentiates the real world from the purity of abstract models.
What is needed is a non-intrusive way to discover routing policies of Autonomous System.
SUMMARY OF THE INVENTION
An AS, or cluster of ASes is abstracted as one routing element. Routing policy in the abstracted element is discovered by collecting information from taps on the edges of the element, filtering the collected information, aggregating the information, and correlating the information. By correlating ingress and egress information collected, deductions may be made on the policies being applied internal to the abstracted element. These discovered policies may be compared to published policies and distributed through an access control mechanism to interested parties with varying levels of detail.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention is described with respect to particular exemplary embodiments thereof and reference is made to the drawings in which: <ul id="ul0001" list-style="none"><li>Fig. 1 shows a network with taps and an analysis station, and</li><li>Fig. 2 shows a block diagram including the policy discovery system.</li></ul>
DETAILED DESCRIPTION
For inter-domain routing in digital networks which pass traffic which has both source and destination addresses outside themselves, such as in the case of a transit AS, routing is performed with information provided by border routers located on the edges of ASes. Border routers may advertise of withdrawn specific routes. Those border routers obey routing policies that deal with many issues, such as what prefixes to accept and what prefixes to forward.
One routing problem is the colloquially named "route flap," which occurs when a route is unstable; a route is advertised, then withdrawn, then advertised again, perhaps with the same route as before, perhaps with a different route, withdrawn, and so on. Each change in route status nominally requires a change to be propagated to other ASes. The problem with flapping is the large number of route changes which must be communicated to other ASes. Unstable routes and the resulting route-flapping can quickly consume large amounts of resources, mainly CPU, and may also cause problems such as BGP sessions failing, or routers failing. A well known solution to the route-flapping problem is known as BGP route flap damping, described for example in RFC2439 published by The Internet Society.
While RFC2439 specifies algorithms for detecting route flap, and damping algorithms for handling route flap when detected, these algorithms rely on parameters that are policy driven. These policy decisions are important as they affect how quickly route advertisements are propagated through a system.
The present invention, through monitoring selected ingress and egress traffic through an abstracted network element, filtering, aggregating, and correlating the information allows policies internal to the abstracted network element to be discovered. Just by observing or noticing which prefixes appears on the ingress and egress points of an AS does not determine the routing policies. The policy discovery engine must also take under consideration route flapping or route aggregation. By analyzing collected historical data, the routing policy discover engine reasons about which prefixes for example are permanently blocked by an AS and which are not. By analyzing frequency of advertising and withdrawing prefixes, the discovery routing policy engine reasons about how aggressive dampening policy is. In all these discoveries also help to observe the internal BGP (iBGP) routing information dissemination (internal to AS).
Referring to Fig. 1, Network <b>100</b> has border routers <b>110, 112, 114, 116,</b> and <b>118</b>. Network <b>100</b> may be a single network, a larger entity such as an Autonomous System (AS), or a cluster of entities such as networks and/or ASes. In accordance with the present invention, network <b>100</b> is abstracted as one routing element.
Link <b>120</b> to border router <b>110</b> has tap <b>130</b> which monitors data on link <b>120</b>. Selected data is sent via link <b>140</b> to node <b>150</b> for aggregation and analysis. Similarly, link <b>122</b> to border router <b>112</b> has tap <b>132</b> which monitors data on link <b>122</b>. Selected data is sent via link <b>142</b> to node <b>150</b>. While node <b>150</b> is shown connected to taps <b>130</b> and <b>132</b> via links <b>140</b> and <b>142</b>, node <b>150</b> could be anywhere in the network which has communications paths to the taps. For example, node <b>150</b> could be another node on link <b>120</b>, with communications between tap <b>132</b> and node <b>150</b> running through network <b>100</b>.
While only two taps <b>130</b> and <b>132</b> are shown, multiple taps may be used.
Fig. 2 shows a block diagram including the policy discovery system. Abstracted routing element <b>200</b> represents a larger, more complex element such as network <b>100</b> of Fig 1, an Autonomous System, or a network including Autonomous Systems.
In operation, taps <b>130</b> and <b>132</b> monitor traffic flowing into and out of abstracted routing element <b>200.</b> Taps <b>130</b> and <b>132</b> monitor, for example, peering communications sessions flowing into and out of border routers <b>110</b> and <b>112,</b> as well as traffic flowing into and out of the border routers.
While node <b>150</b> is shown combining data collection, aggregation, correlation, policy discovery, and policy validation, these steps need not be performed in the same physical location. They may be performed at separate locations on a network, or as separate tasks on a node, depending on the implementation chosen.
Data received from taps <b>130</b> and <b>132</b> is routed to Routing Policy Discovery (RPD) module <b>170</b> and Damping Evaluation (DE) module <b>160</b> where it is aggregated and correlated.
RPD module <b>170</b> keeps ingress and egress best prefix routes per link and per peer in its tables. If iBGP traffic information is also tapped, then internal best egress and ingress routes are also stored for analysis. iBGP data will provide additional information on how the best routes are selected, because iBGP traffic carries additional attributes such as LocalPref which indicates how external routes should be used. Additionally RPD module <b>170</b> keeps per prefix (per peer per link) the last <i>n</i> BGP update messages where <i>n</i> is a configurable parameter. RPD module <b>170</b> summarizes this information as discovered routing policy. RPD module <b>170</b> deduces routing policies by comparing what prefixes and when were advertised at the ingress points of an AS with prefixes disseminated at the egress points.
DE Module <b>160</b> evaluates damping for the entire abstracted network element as well as for individual border routers if iBGP traffic is present. Damping may be evaluated by detecting flapping, repeated advertising and withdrawing of prefixes, at an ingress point of an AS and observing an egress point to observe how the egress router reacts to the flapping. Aggressiveness is measured by how quickly the egress router reacts to flapping. While the algorithms used in damping are well known, such as those specified in RFC 2439, different damping policies may use different parameters. Different prefixes may be damped differently. This requires that DE Module <b>160</b> keep historical data on observed flaps and how they are damped on a per-prefix basis. DE Module <b>160</b> also feeds evaluated output to RPD module <b>170</b> to allow the RPD module to assess which prefixes are blocked intentionally and which are just damped.
Routing Policy Validation (RPV) module <b>175</b> accepts user/operator specified routing policy goals and determines if the discovered routing policy from RPD module <b>170</b> deviates from those goals. Routing policy goals may include information such as what prefixes are blocked, which are forwarded and to whom, as well as which are aggregated and which are not.
Damping Validation (DV) module <b>165</b> similarly compares user/operator specified damping policy goals and determines if the discovered damping policy from DE module 160 deviates from those goals.
Access Control (AC) module <b>180</b> allows users to selectively access information. For example, the network operator would like to be able to examine all information such as statistics, discovered policies, and how those policies compare to published policies. Another class of user may be restricted to only accessing the results of the comparison between discovered and published policies. Other users may have access to all information dealing with a range of IP addresses. Access control module <b>180</b> checks user privileges of specific prefixes about which the user inquires.
Contents3
3 sheets
Sheet 1 Sheet 2 Sheet 3
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US7760745B2 | Cited by | United States of America | Applicant |
| WO2009038877A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| CN105765912A | Cited by | China | Search report |
| GB2465953B | Cited by | United Kingdom | Search report |
| US7782882B2 | Cited by | United States of America | Applicant |
| WO2015062812A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| GB2465953A | Cited by | United Kingdom | Search report |
| WO2015074896A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| EP1318629A2 | Cites | European Patent Office (EPO) | Search report |
| US2003133443A1 | Cites | United States of America | Search report |
7 members in 4 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 652678 | United States of America | – | |
| 65267803 | United States of America | A | |
| 65267803 | United States of America | A | |
| 652678 | – | – | – |
| US20030652678 | – | – | – |
Members7
| Document | Office | Kind | |
|---|---|---|---|
| EP1511220A2This record | European Patent Office (EPO) | A2 | |
| US2005050176A1 | United States of America | A1 | |
| JP2005080297A | Japan | A | |
| EP1511220A3 | European Patent Office (EPO) | A3 | |
| US7376154B2 | United States of America | B2 | |
| EP1511220B1 | European Patent Office (EPO) | B1 | |
| DE602004029124D1 | Germany | D1 |
37 legal events, as 4 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Patent expired after termination of 20 yearsExpiredPE20 | PE20 | GB | |
| Expiry of rightR071 | R071 | DE | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Amendment of ipc main classPREVIOUS MAIN CLASS: H04L0012260000R079 | R079 | DE | |
| Fee paymentPLFP | PLFP | FR | |
| Fee paymentPLFP | PLFP | FR | |
| Change of addressCA | CA | FR | |
| Change of name or company nameCD | CD | FR | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of representativeR082 | R082 | DE | |
| Change of representativeR082 | R082 | DE | |
| Fee paymentPLFP | PLFP | FR | |
| No opposition filed against granted patent, or epo opposition proceedings concluded without decisionGrantedR097 | R097 | DE | |
| No opposition filedOpposition26N | 26N | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Corresponds to:REF | REF | EP | |
| Party data changed (patent owner data changed or rights of a patent transferred)RAP2 | RAP2 | EP | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Designation fees paidAKX | AKX | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Party data changed (applicant data changed or rights of an application transferred)RAP1 | RAP1 | EP | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 1511220
- Publication, DOCDB
- 1511220
- Publication, EPODOC
- EP1511220
- Application
- 4254406
- Application, DOCDB
- 04254406
- Application, EPODOC
- EP20040254406
Titles3
- German
- Eingriffsfreies Verfahren zur Entdeckung von Lenkwegrichtlinien
- English
- Non-intrusive method for routing policy discovery
- French
- Procédé non-intrusif pour la découverte des règles d'acheminement
Classification
- CPC, 8
- H04L43/00
- H04L43/12
- H04L45/04
- H04L45/302
- H04L45/308
- H04L67/566
- H04L41/0894
- H04L41/0893
- IPC, 3
- H04L12 24
- H04L12 26
- H04L12 56
Designated states2
- Contracting states, 1
- Türkiye
- Extension states, 1
- North Macedonia