IP Library Granted Patent US 7,184,396
Granted Patent B1
US 7,184,396 · App. 09/668,219 · Granted Feb 27, 2007

System, device, and method for bridging network traffic

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,184,396
App. No.
09/668,219
Granted
Feb 27, 2007
Kind
B1
Abstract

A system, device, and method for bridging network traffic between a first communication interface and a second communication interface uses a pre-computed bridged routing table to enable a bridge to be established quickly. The pre-computed bridged routing table includes the second communication interface as an outgoing interface in each routing table entry having the first communication interface as an outgoing interface. The bridged routing table is pre-computed for the pair of communication interfaces by searching a main routing table for all main routing table entries having the first communication interface as an outgoing interface and creating, for each such main routing table entry, a corresponding bridged routing table entry including all outgoing interfaces from the main routing table entry and additionally including the second (bridged) communication interface as an outgoing interface. Bridged routing tables may be pre-computed for multiple potential communication interface pairs.

Claims (70)

1. A method for bridging network traffic in a networking device having a plurality of communication interfaces, the method comprising:

creating a bridged routing table separate from a main routing table, the main routing table for routing network traffic, the bridged routing table for bridging the network traffic over both a first communication interface and a second communication interface before requiring a bridge between the predetermined pair of communication interfaces;

subsequently determining that a bridge is needed between the first communication interface and the second communication interface; and

establishing the bridge between the first communication interface and the second communication interface using the bridged routing table,

wherein creating the bridged routine table for bridging the first communication interface and the second communication interface comprises:

finding, in the main routing table, a number of main routing entries having the first communication interface as an outgoing interface; and

creating in the bridged routing table a corresponding bridged routing entry for each of said number of main routing entries, wherein each bridged routing entry includes all outing interfaces from its corresponding main routing entry and further includes the second communication interface as an outgoing interface.

2. The method of claim 1 , wherein creating a corresponding bridged routing entry for a main routing entry comprises:

copying the main routing entry as a bridged routing entry into the bridged routing table; and

adding the second communication interface as an outgoing interface to the bridged routing entry.

3. The method of claim 2 , wherein creating the corresponding bridged routing entry for the main routing entry comprises:

creating a bridged routing vector for the bridged routing entry.

4. The method of claim 2 , wherein creating the corresponding bridged routing entry for the main routing entry comprises;

including in the bridged routing entry a reference to the main routing entry in the main routing table.

5. The method of claim 1 , wherein determining that the bridge is needed between the first communication interface and the second communication interface comprises:

detecting a failure affecting communication over the first communication interface.

6. The method of claim 1 , wherein the plurality of communication interfaces comprises a plurality of line cards.

7. A method for protection switching in a networking device having a plurality of communication interfaces, the method comprising:

pre-establishing a bridged routing table separate from a main routing table, the main routing table for routing network traffic, the bridged routing table for bridging the network traffic over each communication interface in each of a number of communication interface pairs, where each communication interface pair represents a working communication interface and a corresponding protection communication interface from among the plurality of communication interfaces;

detecting a failure affecting communication over a working communication interface;

determining a protection communication interface to protect the working communication interface;

obtaining the pre-established bridged routing table for the communication interface pair associated with the working communication interface and the protection communication interface; and

bridging the protection communication interface to the working communication interface using the pre-established bridged routing table for the communication interface pair associated with the working communication interface and the protection communication interface,

wherein pre-establishing a bridged routing table for a communication interface pair comprises:

finding in the main routing table a number of main routing entries having the working communication interface as an outgoing interface; and

creating in the bridged routing table a corresponding bridged routing entry for each of said number of main routing entries, wherein each bridged routing entry includes all outgoing interfaces from its corresponding main routing entry and further includes the protection communication interface as an outgoing interface.

8. The method of claim 7 , wherein creating a corresponding bridged routing entry for a main routing entry comprises:

copying the main routing entry as a bridged routing entry into the bridged routing table; and

adding the protection communication interface as an outgoing interface to the bridged routing entry.

9. The method of claim 8 , wherein creating the corresponding bridged routing entry for the main routing entry comprises;

creating a bridged routing vector for the bridged routing entry.

10. The method of claim 8 , wherein creating the corresponding bridged routing entry for the main routing entry comprises:

including in the bridged routing entry a reference to the main routing entry in the main routing table.

11. The method of claim 7 , wherein the plurality of communication interfaces comprises a plurality of line cards.

12. An apparatus comprising:

a plurality of communication interfaces;

bridge pre-establishment logic operably coupled to create a bridged routing table separate from a main routing table, the main routing table for routing network traffic, the bridged routing table for bridging the network traffic over both a first communication interface and a second interface from among a plurality of communication interfaces before a bridge is needed between the first communication interface and the second interface; and

bridge establishment logic operably coupled to establish a bridge between the first communication interface and the second communication interface using the pre-established bridged routing table upon determining that a bridge is needed between the first communication interface and the second communication interface,

wherein the bridge pre-establishment logic is operably coupled to create the bridged routing table finding, in the main routing table, a number of main routing entries having the first communication interface as an outgoing interface and creating in the bridged routing table a corresponding bridged routing entry for each of said number of main routing entries, wherein each bridged routing entry includes all outgoing interfaces from its corresponding main routing entry and further includes the second communication interface as an outgoing interface.

13. The apparatus of claim 12 , wherein the bridge pre-establishment logic is operably coupled to create a corresponding bridged routing entry for a main routing entry by copying the main routing entry as a bridged routing entry into the bridged routing table and adding the second communication interface as an outgoing interface to the bridged routing entry.

14. The apparatus of claim 13 , wherein the bridge pre-establishment logic is operably coupled to create a bridged routing vector for the bridged routing entry.

15. The apparatus of claim 13 , wherein the bridge pre-establishment logic is operably coupled to include in the bridged routing entry a reference to the main routing entry in the main routing table.

16. The apparatus of claim 12 , wherein the bridge establishment logic is operably coupled to establish the bridge upon detecting a failure affecting communication over the first communication interface.

17. The apparatus of claim 12 , wherein the plurality of communication interfaces comprises a plurality of line cards.

18. A computer readable medium having embodied therein a computer program to be executed by a processor comprising:

bridge pre-establishment logic programmed to create a bridged routing table separate from a main routing table, the main routing table for routing network traffic, the bridged routing table for bridging the network traffic over both a first communication interface and a second interface from among a plurality of communication interfaces before a bridge is needed between the first communication interface and the second interface; and

bridge establishment logic programmed to establish a bridge between the fist communication interface and the second communication interface using the pre-established bridged routing table upon determining that a bridge is needed between the first communication interface and the second communication interface,

wherein the bridge pre-establishment logic is programmed to create the bridged routing table by finding in the main routing table a number of main routing entries having the first communication interface as an outgoing interface and creating in the bridged routing table a corresponding bridged routing entry for each of said number of main routing entries, wherein each bridged routing entry includes all outgoing interfaces from its corresponding main routing entry and further includes the second communication interface as an outgoing interface.

19. The computer readable medium of claim 18 , wherein the bridge pre-establishment logic is programmed to create a corresponding bridged routing entry for a main routing entry by copying the main routing entry as a bridged routing entry into the bridged routing table and adding the second communication interface as an outgoing interface to the bridged routing entry.

20. The computer readable medium of claim 19 , wherein the bridge pre-establishment logic is programmed to create a bridged routing vector for the bridged routing entry.

21. The computer readable medium of claim 19 , wherein the bridge pre-establishment logic is programmed to include in the bridged routing entry a reference to the main routing entry in the main routing table.

22. The computer readable medium of claim 18 , wherein the bridge establishment logic is programmed to establish the bridge upon detecting a failure affecting communication over the first communication interface.

23. The computer readable medium of claim 18 embodied in a computer readable medium.

24. An apparatus comprising:

a plurality of communication interfaces;

bridge pre-establishment logic operably coupled to create a bridged routing table separate from a main routing table, the main routing table for routing network traffic, the bridged routing table for bridging the network traffic over each communication interface of a number of communication interface pairs, where each communication interface pair represents a working communication interface and a corresponding protection communication interface from among the plurality of communication interfaces; and

bridge establishment logic operably coupled to establish a bridge between a working communication interface and a corresponding protection communication interface using the bridged routing table associated with the working communication interface and corresponding protection communication interface upon detecting a failure affecting communication over the working communication interface,

wherein the bridge pre-establishment logic is operably coupled to create a bridged routing table for a communication interface pair by finding in the main routing table a number of main routing entries having the working communication interface as an outgo interface and creating in the bridged routing table a corresponding bridged routing entry for each of said number of main routing entries, wherein each bridged routing entry includes all outgoing interfaces from its corresponding main routing entry and further includes the protection communication interface as an outgoing interface.

25. The apparatus of claim 24 , wherein the bridge pre-establishment logic is operably coupled to create a corresponding bridged routing entry for a main routing entry by copying the main routing entry as a bridged routing entry into the bridged routing table and adding the protection communication interface as an outgoing interface to the bridged routing entry.

26. The apparatus of claim 25 , wherein the bridge pre-establishment logic is operably coupled to create a bridged routing vector for the bridged routing entry.

27. The apparatus of claim 25 , wherein the bridge pre-establish logic is operably coupled to include in the bridged routing entry a reference to the main routing entry in the main routing table.

28. The apparatus of claim 24 , wherein the plurality of communication interfaces comprises a plurality of line cards.

29. A computer readable medium having embodied therein a computer program to be executed by a processor comprising:

bridge pre-establishment logic programmed to create a bridged routing table separate from a main routing table, the main routing table for routing network traffic, the bridged routing table for bridging the network traffic over each communication interface of a number of communication interface pairs, where each communication interface pair represents a working communication interface and a corresponding protection communication interface from among the plurality of communication interfaces; and

bridge establishment logic programmed to establish a bridge between a working communication interface and a corresponding protection communication interface using the bridged routing table associated with the working communication interface and corresponding protection communication interface upon detecting a failure affecting communication over the working communication interface,

wherein the bridge pre-establishment logic is programmed to create a bridged routing table for a communication interface pair by finding in the main routing table a number of main routing entries having the working communication interface as an outgoing interface and creating in the bridged routing table a corresponding bridged routing entry for each of said number of main routing entries, wherein each bridged routing entry includes all outgoing interfaces from its corresponding main routing entry and further includes the protection communication interface as an outgoing interface.

30. The computer readable medium of claim 29 , wherein the bridge pre-establishment logic is programmed to create a corresponding bridged routing entry for a main routing entry by copying the main routing entry as a bridged routing entry into the bridged routing table and adding the protection communication interface as an outgoing interface to the bridged routing entry.

31. The computer readable medium of claim 30 , wherein the bridge pre-establishment logic is programmed to create a bridged routing vector for the bridged routing entry.

32. The computer readable medium of claim 30 , wherein the bridge pre-establishment logic is programmed to include in the bridged routing entry a reference to the main routing entry in the main routing table.

33. The computer readable medium of claim 29 embodied in a computer readable medium.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Oct 26, 2020
From: JEFFERIES FINANCE LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 054305/0505 →
SECURITY INTEREST Recorded Jun 29, 2018
From: RPX CLEARINGHOUSE LLC
To: JEFFERIES FINANCE LLC
Reel/Frame 046485/0644 →
RELEASE (REEL 038041 / FRAME 0001) Recorded Jan 2, 2018
From: JPMORGAN CHASE BANK, N.A.
To: RPX CORPORATION; RPX CLEARINGHOUSE LLC
Reel/Frame 044970/0030 →
SECURITY AGREEMENT Recorded Mar 9, 2016
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038041/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2015
From: ROCKSTAR CONSORTIUM US LP; ROCKSTAR CONSORTIUM LLC; BOCKSTAR TECHNOLOGIES LLC; CONSTELLATION TECHNOLOGIES LLC; MOBILESTAR TECHNOLOGIES LLC; NETSTAR TECHNOLOGIES LLC
To: RPX CLEARINGHOUSE LLC
Reel/Frame 034924/0779 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2014
From: ROCKSTAR BIDCO, LP
To: ROCKSTAR CONSORTIUM US LP
Reel/Frame 032422/0919 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2011
From: NORTEL NETWORKS LIMITED
To: ROCKSTAR BIDCO, LP
Reel/Frame 027164/0356 →