APPARATUS AND METHOD TO HIDE TRANSIT ONLY MULTI-ACCESS NETWORKS IN OSPF

Abstract
A system for hiding transit-only interfaces in a network. When a routing system is advertising a transit-only interface, the advertisement is marked to indicate the address is a transit-only interface. A routing system receives the advertisement and detects the identifier of the transit-only interface and does not store the address in the Router Information Base of the routing system.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

The features and advantages of this invention are described in the following detailed description and are shown in the following drawings:



FIG. 1 illustrating an exemplary network having transit-only routers operating in accordance with this invention;



FIG. 2 illustrating a block diagram of components of a routing system operating in accordance with this invention;



FIG. 3 illustrating a flow diagram of an exemplary process for generating and transmitting a link state advertisement in accordance with this invention; and



FIG. 4 illustrating a flow diagram of an exemplary process for receiving and handling a link state advertisement generated in accordance with this invention.





DETAILED DESCRIPTION

This invention relates to a method to hide transit-only interfaces in a network. For purposes of this discussion, transit-only interfaces are interfaces which directly connect one router another router. In accordance with the present invention, the routers perform applications which hide the transit-only interfaces in a network in accordance with this invention. These applications may be performed as software, hardware, and/or firmware that are included in the router.



FIG. 1 illustrates a network that includes routing systems that have transit-only interfaces in accordance with this invention. Network 100 includes routing systems 105-111. Routing systems 105-111 are routers, switches, or other processing data that transmit data to other systems over networks 100. One skilled in the art will recognize that network 100 is shown for illustrative purposes only and the exact configuration of a network is not important to implementing this invention. Thus, the exact configuration and size of a network implementing processes in accordance with this invention are left to one skilled in the art designing a system implementing processes in accordance with this invention. Furthermore, the connection and interfaces of the routing systems shown are for exemplary purposes. The exact number of interfaces and the connections to the interfaces are left to those skilled in the art.


The routing systems in network 100 use OSPF to determine a path for transmitting a packet from one processing system to another. In the exemplary embodiment shown, OSPFv2 is used to make determinations of the paths for transmission of packets. In OSPFv2, Internet Protocol (IP) version 4 (IPv4) addressing is used. Although discussed in terms OSPFv2 and IPv4, one skilled in the art will recognize that this invention may be implemented in other protocol using other addressing strategies.


In network 100, routing systems 105,106, 110, and 111 connect servers 120-123 to network 100. Routing system 105 connects to server 120 via interface 130 and connects to other routers 106-108 via interfaces 131-133. Routing system 106 connects to server 121 via interface 135 and interfaces 136-138 connect routing system 106 to other routing systems. Routing system 110 connects to server 122 via interface 140 and to other routing systems via interfaces 141-143. Routing system 111 connects to router 111 via interface 145 and to other routing systems via interfaces 146-148.


In network 100, routing systems 107-109 are transit-only routing systems. Routing systems 107-109 are transit-only routing systems because these routing systems are only connected to other routing systems to transmit data between the routing systems that connect processing systems to the network. For example, interface 150 in routing system 108 connects routing system 108 to an interface 160 of routing systems 107.


Routing systems may only have one or a portion of the interfaces in the router that are transit-only. For example, routing system 105 has an interface 133 that connects routing system 105 to routing system 106 via interface 143. Thus, a system for hiding transit-only interfaces may be implemented in all routing systems in network 100.



FIG. 2 shows a router 200. Routing systems 105-111 (Shown in FIG. 1) are all examples of router 200. Router 200 is a routing and/or switching system that transmits digital data, in the form of packets between processing systems connected to a network. One skilled in the art will recognize that router 200 may be a router, switch or any other processing system that receives and transmits digital data.


Router 200 includes ports 205-209. Ports 205-209 connect router 100 to other processing systems in a network. The other processing systems that may be connected include computers, other routers or any other digital processing system. One skilled in the art will further recognize that ports 205-209 are shown for exemplary purposes only and the exact number and configuration of the ports are left to one skilled in the art designing a specific router.


Ports 205-209 are connected to switch circuitry 215. Switch circuitry 215 is circuitry that transmits received packets to the proper ports for delivery to the proper address. One skilled in the art will recognize that there are many different types of circuitry that may be used to transmit packets between proper ports and an explanation of the switching circuitry is not critical to this invention and is omitted for brevity.


Processing unit 220 is connected to switching circuitry 215. Processing unit 220 is a processor, microprocessor, or any combination of processors and microprocessors that execute instructions to perform applications for performing functions in router 100. Processing unit 220 is also connected to a volatile memory 225 and a non-volatile memory 230 via memory bus 235.


Volatile memory 225 is a memory such as a Random Access Memory (RAM). A volatile memory stores instructions and data used by processing unit 220 to perform applications. One such application is a routing operating system. The routing operating system is an application or applications which allow router 200 to perform other applications that provide the functions of router 200. An example of a routing operating system is Inter-network Operating System (IOS) designed by Cisco Systems Inc. One Skilled in the art will recognize that many different types of memory may be used a non-volatile memory such SRAM and DRAM.


Non-volatile memory 230 is a memory such as a Read Only Memory (ROM). Non-volatile memory 230 stores configuration and other vital information for router 200. One skilled in the art will recognize that there are many different types of memory that may be used as a non-volatile memory.


Modules 240, 245, and 250 are connected to switching circuitry 215. Modules 240, 245, and 250 are devices and/or software that prepare specific features in router 200. An example of a module is a Voice Over Internet Protocol (VOIP) module for providing telephonic communications to processing devices connected to router 200. One skilled in the art will recognize that the number of modules and the functions that each module provides may be determined by one skilled in the art designing a particular router.


In accordance with this invention, a system for hiding transit-only interfaces of routing systems is provided by processes executed by the routing systems as shown by the following exemplary embodiments. One skilled in the art will recognize that the following processes may be executed by software, firmware, hardware, and/or any combination of the preceding components.


In order to hide transit-only interfaces, a routing system must be able to identify a transit-only interface to other routing systems and the other routing systems must know how to handle an interface that is identified as transit only. FIG. 3 illustrates an exemplary embodiment of a process executed by a first routing system to identify transit-only interface in advertisements. FIG. 4 then illustrates an exemplary embodiment of a process for a router receiving an advertisement of a transit-only interface and storing the information.



FIG. 3 illustrates an exemplary process 300 executed by a routing system to identify a transit-only interface to other routing systems. Process 300 begins in step 305 by the routing system determining that an interface is a transit-only interface. The determination is performed in a typical manner that a routing system performs detections of connections to the routing system. If the interface is determined not to be a transit-only interface, the routing system generates an advertisement in a normal manner in accordance with the art in step 310. One skilled in the art will recognize that the advertisement is an LSA in OSPF and is generated in the manner defined in OSPF. The advertisement is then transmitted in the normal manner in step 325.


If the interface is determined to be transit only, an advertisement is generated in step 315. In the preferred embodiment, the advertisement is an LSA and is generated in a typical manner. After the advertisement is generated, a transit-only identification is inserted into the packet to indicate that the advertised interface is transit-only in step 320.


In exemplary embodiments, there are a variety of manners in which an advertisement for a transit-only interface may be marked. A first method for marking a transit-only interface is by placing an invalidate and/or non-continuous network mask instead of the configured value for the network. For example, the value 0×00000001 may be inserted instead of the configured value. Because the network mask is invalid the OSPF does not install the address in the RIB. In a network using this method, some vendors may do a sanity check and when the advertisements with invalid masks are detected, these advertisements may be dropped. This could disrupt communications over the network.


A second method for marking advertisements for transit only interfaces uses a valid, designated network mask, such as, a network mask that should not be used in a multi-access network. Some examples of this include 0×ffffffff and 0×ffffffffe. Routing systems using a system in accordance with the invention must not place the advertised addresses in the RIB. However, non-upgrades systems will still flood the networks with the advertisements. Thus, this method is more predictable than using an invalid mask. However, the host addresses of a transmitting routing system may be installed in the RIBs of non-upgraded systems. Thus, the interfaces may still be attacked.


A third method for marking advertisements for transit-only interfaces is to place a flag or administrative tag in the advertisements. Such tags are described in the IETF draft of “Extensions to OSPFv2 for advertising Optional Rout/Link Attributes.” This will require all routers to be upgraded to read the tag and recognize the advertisement is for a transit-only interface. Furthermore, this method requires support of opaque Link State Advertisements. This may cause backward compatibility issues.


After the advertisement is generated and the mask is inserted, the advertisement is transmitted in the conventional manner in step 325. In step 330, the router determines whether all of the advertisements for interfaces have been transmitted. If there are more advertisements to generate, process 300 repeats for step 305. Otherwise process 300 ends.



FIG. 4 illustrates an exemplary process executed by a routing system when an advertisement is received to hide a transit-only interface in accordance with this invention. Process 400 begins in step 405 with an advertisement being received by the routing system. In step 410, the identifier is read.


The routing system then determines whether the advertised address is a transit-only interface in step 415. If the first method of using an invalid mask is used, all routing systems will recognize the invalid mask and not install the address in the RIB. If the second or third methods are used, the receiving routing systems must be upgraded to detect the identifier. If the identifier is read from the advertisement, the advertisement information is stored in a conventional manner. However, the advertised address is not stored in RIB of the routing system in step 420. If the identifier is not read, the advertised information is stored in the conventional manner in step 425. Process 400 then ends.


The above is a description of exemplary embodiments of a method for hiding transit-only interfaces in a network. It is envisioned that those skilled in the art can and will design alternative systems for hiding transit-only interfaces that infringe on this invention as set forth in the following claims either literally or through Doctrine of Equivalents.

Claims
  • 1. A method for hiding a transit-only interface of a first routing system comprising: determining that an interface of said first routing system is a transit only interface wherein a transmit only interface directly connects to an interface of a second routing system to transmit data between said first routing system and said second routing system;generating a message to transmit over said network to routing systems in said network wherein said message indicates a connection between said interface of said first routing system and said interface of said second routing system;inserting an indication in said message that said interface is a transit-only interface; andtransmitting said message to other routing systems in said network.
  • 2. The method of claim 1 wherein said indication is an invalid network mask.
  • 3. The method of claim 2 wherein said mask is 0×00000001.
  • 4. The method of claim 1 wherein said indication is a non-continuous mask.
  • 5. The method of claim 4 wherein said non-continuous mask is 0×0000001.
  • 6. The method of claim 1 wherein said indication is a valid unused network mask.
  • 7. The method of claim 6 wherein said valid unused network mask is 0×fffffffff.
  • 8. The method of claim 6 wherein said valid unused network mask is oxfffffffe.
  • 9. The method of claim 1 wherein said indication is an administrative tag in said message.
  • 10. The method of claim 9 wherein said administrative flag is a bit in a pre-specified field of said message.
  • 11. The method of claim 1 wherein routing systems in said network use Open Shortest Path First Protocol and Enhanced Interior Gateway Routing Protocol to determine a path used to transmit data from one routing system in said network to another routing system in said network.
  • 12. The method of claim II wherein said message is a Link State Advertisement.
  • 13. The method of claim 1 further comprising: receiving said message in another routing system in said network;reading said message by said another routing system;determining whether said message includes said indication; anddeclining to store an address of said interface in said RIB of said another routing system in response to a determination said message includes said indication.
  • 14. An apparatus for hiding a transit-only interface of a first routing system comprising: means in said first routing system for determining that an interface of said first routing system is a transit only interface wherein a transit only interface directly connects to an interface of a second routing system to transmit data between said first routing system and said second routing system;means in said first routing system for generating a message to transmit over said network to routing systems in said network wherein said message indicates a connection between said interface of said first routing system and said interface of said second routing system;means in said first routing system for inserting an indication in said message that said interface is a transit-only interface; andmeans in said first routing system for transmitting said message to other routing systems in said network.
  • 15. The apparatus of claim 14 wherein said indication is an invalid network mask.
  • 16. The apparatus of claim 15 wherein said mask is 0×00000001.
  • 17. The apparatus of claim 14 wherein said indication is a non-continuous mask.
  • 18. The apparatus of claim 17 wherein said non-continuous mask is 0×0000001.
  • 19. The apparatus of claim 14 wherein said indication is a valid unused network mask.
  • 20. The apparatus of claim 19 wherein said valid unused network mask is 0×fffffffff.
  • 21. The apparatus of claim 19 wherein said valid unused network mask is oxfffffffe.
  • 22. The apparatus of claim 14 wherein said indication is an administrative tag in said message.
  • 23. The apparatus of claim 14 wherein said administrative flag is a bit in a pre-specified field of said message.
  • 24. The apparatus of claim 14 wherein routing systems in said network use Open Shortest Path First Protocol and Enhanced Interior Gateway Routing Protocol to determine a path used to transmit data from one routing system in said network to another routing system in said network.
  • 25. The apparatus of claim 24 wherein said message is a Link State Advertisement.
  • 26. The apparatus of claim 14 further comprising: means in another routing system for receiving said message;means in said another routing system for reading said message by said another routing system;means in said another routing system for determining whether said message includes said indication; andmeans in said another routing system for declining to store an address of said interface in said RIB of said another routing system in response to a determination said message includes said indication.
  • 27. A computer readable medium carrying one or more instructions for hiding that an interface of a routing system is a transit-only interface, the one more instructions including instructions which executed by one or more processors, cause the one or more processors to perform the method comprising: determining that an interface of said first routing system is a transit only interface wherein a transit only interface directly connects to an interface of a second routing system to transit data between said first routing system and said second routing system;generating a message to transit over said network to routing systems in said network wherein said message indicates a connection between said interface of said first routing system and said interface of said second routing system;inserting an indication in said message that said interface is a transit-only interface; andtransmitting said message to other routing systems in said network.