WO1999052299A2 - High speed router-switch - Google Patents

High speed router-switch Download PDF

Info

Publication number
WO1999052299A2
WO1999052299A2 PCT/US1999/005608 US9905608W WO9952299A2 WO 1999052299 A2 WO1999052299 A2 WO 1999052299A2 US 9905608 W US9905608 W US 9905608W WO 9952299 A2 WO9952299 A2 WO 9952299A2
Authority
WO
WIPO (PCT)
Prior art keywords
packet
cells
data
input
network
Prior art date
Application number
PCT/US1999/005608
Other languages
French (fr)
Other versions
WO1999052299A3 (en
Inventor
Ashraf M. Dahod
Kwabena D. Akufo
Steven R. Dunstan
Kenneth E. Virgile
Original Assignee
Netcore Systems, Inc.
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 Netcore Systems, Inc. filed Critical Netcore Systems, Inc.
Priority to AU31865/99A priority Critical patent/AU3186599A/en
Publication of WO1999052299A2 publication Critical patent/WO1999052299A2/en
Publication of WO1999052299A3 publication Critical patent/WO1999052299A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/4608LAN interconnection over ATM networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/552Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5619Network Node Interface, e.g. tandem connections, transit switching
    • H04L2012/562Routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5665Interaction of ATM with other protocols
    • H04L2012/5667IP over ATM

Definitions

  • the present invention relates to a combination router and switch in computer communications. More particularly, it relates to a router and switch, which can operate with different communication protocols and with reduced data loss.
  • Point-to-point systems proved inadequate with large quantities of small information transfers.
  • significant resources and overhead is used to set up point-to-point connections within the system.
  • the overhead is relatively small compared to the data.
  • the overhead becomes a large percentage of the total transmission. Therefore, new structures for interconnecting locations have been developed to handle different types of information transfers.
  • different structures continue to be used based upon the desired structures and patterns of the information traffic. Differences can be illustrated in the structures of the seven-layer ISO representation of communications.
  • the second and third layers are most relevant to the present invention.
  • the first layer physical, represents the mechanism for connecting devices.
  • the physical layer includes different types of media, such as twisted-pair, coaxial cable, fiber optic cable or wireless medium.
  • the second layer, data link represents how the physical layer is interconnected to transfer information. Common systems include asynchronous transfer mode (ATM), frame relay, point-to-point, and multiprotocol label switching (MPLS).
  • ATM asynchronous transfer mode
  • MPLS multiprotocol label switching
  • the third layer, network defines how the structures in the data link layer are controlled. For example, the network defines the settings for switches to transfer the information to the desired location.
  • IP Internet protocol
  • IP Internet protocol
  • FIG. 1 illustrates three principal portions of a network: access, aggregation and backbone.
  • the access portion provides a connection between customer devices and the network.
  • the access portion may include a variety of devices having different communication formats. Typical devices include telephones, modems, computers, and different types of digital accesses.
  • the access portion may include a frame relay, a telephone line, an ISDN connection or a xDSL connection. With different data types (from different devices), the network has different organizations.
  • the aggregation portion connects each of the access portion devices to each other, and to the backbone portion.
  • different structures may be used for the network, as illustrated in FIG. 2A. Since different protocols are used, the same equipment cannot handle all types of data transfers.
  • information in the form of switched voice or data such as from a telephone connection, uses a point-to-point switched network common for telephony.
  • Frame relay structures can be transferred through either an ATM network of switches or through a system operating with routers.
  • xDSL data is passed through a router-based system, such as the Internet. With the different structures, each type of data needs its own network.
  • the aggregation portion and the backbone portion may be formed of a combination of routers and switches, as shown in FIG. 2B.
  • Routers are used to determine a path through the network to the destination location. Each router includes the arrangement of at least a portion of the entire network. The router monitors messages sent to it to retrieve information about the final destination. Using the stored arrangement of the network, the router determines the next hop in a transmission to either another router or to the final destination. Subsequent routers also select next hops until the final destination is reached. Switches are used to transfer data coming on one data channel to another, outgoing data channel. The data channels may be different wire, or simply different paths or channels operating over a single wire.
  • FIG. 1 illustrates a network wherein switches and routers are paired.
  • data messages are called packets.
  • Each router after determining the next hop for a packet, sends to its single switch to transfer the packet.
  • the information may traverse several different switches between hops.
  • the access devices perform the routing function, and only switches are used between access devices.
  • different systems transfer different forms of packets. Some, like the ATM switch, use fixed sized units or cells.
  • a longer packet is divided into cells by the routing function, and each cell is sent in sequence to the network.
  • each switch simply forwards each cell independently, i.e., without regard to the other cells of the packet. It is the responsibility of the network's egress routing function to reassemble all of the cells back into a complete packet.
  • routers are used in the network, such as with IP, the next hop is determined based upon the information in the packet.
  • the router receives and stores all of the cells corresponding to a packet.
  • the packet is then reformed, checked for errors, and processed to determine the next hop.
  • the router will then form the packet back into cells and transfer it through the network to the next router. This process results in significant delays in passing the packets through the network.
  • a new system has been proposed which provides "cut-through" switching for IP packets on a network including routers and ATM switches.
  • a router recognizes an IP packet, it informs both the transmitting side and receiving side devices to use a different path.
  • a path is implemented as a particular channel or VPI/VCI value between ATM devices.
  • routers use a local view of the system; they only route packets to immediate next hops. If a link goes down, then the router sends a message back to the originating device and other routers to reroute future packets through different links. However, the packets that have already been sent towards that router are typically lost, or need to be resent.
  • different types of information have different transfer requirements. For example, some data may need to be very accurate, but the time to transfer the data may not be important. Other data, may not need to be as accurate, but the time to transfer it may be very important. In other cases, certain quantities of data may need to be transferred at specified rates. Therefore, some networks, such as ATM networks, have a quality of service feature, which transfers data according to specified priorities.
  • IP structures only include simplified mechanisms to differentiate types of service.
  • the IP structure includes a priority designation. This structure is significantly less robust than ATM quality of service, and does not allow for guaranteed delivery or bandwidth capabilities. Therefore, a need exists for a system that permits IP data to be transferred with improved quality of service requirements.
  • the present invention overcomes the deficiencies of the prior art, to a great extent, through the use of an integrated router and switch.
  • the router portion of the combination is by-passed when it is not necessary. This reduces the time through the integrated device and improves performance.
  • on-the-fly, inline routing is used for packets.
  • Packet types may include, but are not limited to the IP.
  • a new path may be determined. For example, in an ATM switch environment, the first cell or cells of an IP packet are retrieved to obtain the information in the IP header.
  • the router portion of the integrated device makes a routing decision and selects a new path.
  • ATM quality of service can be set for the path based upon various features of the IP packet, such as source address, destination address, and priority information. After the path is selected, all remaining cells of the IP packet are passed through the integrated router/switch on the path without the need to store and reform the entire packet. Information in the IP packet can be adjusted on-the-fly as necessary to move to the next hop. According to another aspect of the invention, dynamic routing is used to by-pass links that fail during a transmission.
  • FIG. 1 illustrates the arrangement of routers and switches within a network according to existing art.
  • FIG. 2A illustrates connections within a central office according to existing art.
  • FIG. 2B illustrates connections within a point of presence according to existing art.
  • FIG. 3 illustrates the arrangement of an integrated router and switch according to an embodiment of the present invention.
  • FIG. 4 illustrates the arrangement of an interface card according to an embodiment of the present invention.
  • FIG. 5 illustrates the use of the present invention in a network.
  • FIG. 6 illustrates the structure of a switching core for interconnecting multiple integrated router/switches of the present invention.
  • FIGS. 7 A and 7B illustrate adaptive routing according to the present invention.
  • FIG. 3 illustrates the hardware of an integrated router and switch that jointly operate according to an embodiment of the present invention.
  • the integrated router/switch 300 includes various modules or cards for input, output and switching functions.
  • Interface cards 310, 311 connect to the inputs and outputs of the integrated router/switch.
  • the routing function is performed in the interface cards 310, 311 as discussed below.
  • up to four interface cards 310, 311 can be connected within a single integrated router/switch 300.
  • Two switch modules 320, 321 are in the integrated router/switch 300 to switch between the different interface cards.
  • One switch module 321 acts as a redundant backup in case of failure of the other switch module 320.
  • the switch modules 320, 321 are connected to each of the interface cards 310, 311 by four 622 Mbps lines 340, 341 , 342, 343. Thus, each integrated router/switch 300 provides switching capability of 10 Gbps.
  • the switch module 320 is connected to an uplink card 350 in order to interconnect multiple integrated router/switches for higher data transfer rates.
  • Each of the interface cards is connected to a management card 360.
  • the management card 360 maintains the routing tables necessary for determining the next hop.
  • the management card may communicate with management cards of other connected integrated router/switches to determine the routing table. Alternatively, as discussed below, the routing tables may be generated by a switching core and transferred to each management card.
  • the connection 370 between the interface cards 310, 311 and the management card 360 is a Fast Ethernet line.
  • a peripheral card 365 connected to the management card 360 provides the management ports for monitoring and controlling operations.
  • the peripheral card 365 may be connected to one or more management outputs 368.
  • the management outputs 368 could include a Fast Ethernet connection to transferring data to or from the management card 360. It may also include a terminal or management system, so that an operator can check and control operation. It may also include a hard drive or other storage device for maintaining data generated or used by the management card or integrated router/switch.
  • the structure of an interface card 310 is illustrated in FIG. 4.
  • the interface card includes four cell forwarding engines (i.e., CFEs 421, 422, 423 and 424), which provide the integrated routing function.
  • Each of the cell forwarding engines is connected to a line card 410, 411, 412,
  • the line cards 410, 411, 412, 413 are connected to the different input devices, such as computers, computer networks, or other routers and switches. Different line cards are used for different types of inputs, and can include multiple ports.
  • the cell forwarding engines 421, 422, 423, 424 are connected to a processor 430.
  • the processor 430 controls operation of the interface card within the integrated router/switch.
  • the processor 430 is connected through the Fast Ethernet line 370 to the management card 360, and through a control bus 470 to the switches.
  • the management card 360 communicates with the network to maintain a routing table.
  • the routing table is also transferred to the processor 430 in each of the interface cards 310, 311, where it is stored in a memory 440 connected to the processor 430.
  • the processor 430 also sets up paths to each next hop as needed by the CFEs, and stores information about the paths in the memory 440.
  • the cell forwarding engines 421 , 422, 423, 424 access the routing table and path information in the memory 440 through direct connections 441 to determine a next hop and the appropriate path for that hop and quality of service.
  • the cell forwarding engines also include a forwarding database derived from the routing table. The forwarding database includes information about existing paths in relation to certain qualities of service. Routing information is determined by the cell forwarding engines and transmitted to the processor 430 which sets up the paths in the switch 320.
  • the interface card 310 includes connections to bypass the cell forwarding engines, in the forward direction. This allows the integrated router/switch to operate with both protocols that use routing and that do not use routing, without significant delays. If a cell arrives that is not to be routed, it is passed to the switch 320 through the forward direction bypass 450, rather than to the cell forwarding engine. The switch forwards the cell based upon the ATM paths previously defined. The data outputted from the switch travels through the interface card on the reverse direction bypass 461 to the line card 410. Since routing is not needed after switching, the cell forwarding engine 421 is not used.
  • FIG. 5 illustrates the use of the integrated router/switch in a network.
  • the integrated router/switch 300 can be used to replace any router and switch combination within a network.
  • a central office or point of presence (POP) 500 provides a connection between external devices and the network.
  • a POP 500 includes an access portion 510 and one or more routers, switches or integrated router/switches 300.
  • the access portion connects the POP 500 to external devices (not shown) such as telephones, modems, computers, etc.
  • external devices not shown
  • the access portion includes different connections, such as a frame relay 511 , a dial access 512, and xDSL access 513.
  • a integrated router/switch 300 can operate with different inputs and can provide a single connection to each of the access portion 510 devices.
  • the integrated router/switch 300 provides communications between the external devices connected to the POP 500. It also provides connections to a network backbone 550.
  • a network backbone 550 is a collection of routers 540 and switches 541 which transfers messages between different POPs 500, 501, 502. Since the integrated router/switch 300 has features of both routers and switches, it can be used in the network backbone in place of routers and switches. Alternatively, integrated router/switches 520, 530 can be used with other routers 540 and switches 541 to form the backbone. Therefore, the integrated router/switch can be incorporated into existing networks without changing the entire structure.
  • FIG. 6 illustrates a switching core 610 for interconnecting multiple integrated router/switches 300.
  • the switching core 610 includes a switch 640, multiple downlink cards 651, 652, 653, 654, a processor 660, a memory 670, and a peripheral card 680.
  • the downlink cards 651 , 652, 653, 654 in the switching core 610 connect to the uplink cards in the router/switch 300.
  • the cells are transferred from an uplink card of one integrated router/switch to the switch 640 of the switching core 610 and back out to an uplink card of another integrated router/switch.
  • the routing information is collected and stored in the memory 670 of the switching core.
  • the processor 660 communicates through the switch to other devices on the network to determine the network configuration and create the routing table.
  • the routing table can then be downloaded from the memory 670 through the switch and downlink cards to each of the integrated router/switches 300. In this manner, the routing information is maintained much more efficiently than in existing systems. In order to maintain proper routing information, the structure of the network must be communicated to each router or node in the network.
  • the necessary messages to communicate the entire structure is O(n 2 ), where n is the number of routers.
  • the collection of integrated router/switches 300 connected to the switching core 610 acts as a single node.
  • the integrated router/switches 300 and switching core 610 do not need to be colocated to achieve this result. Therefore, a single switching core, and its associated integrated router/switches, can operate as a local network over a dispersed area.
  • a single switching core 610 can be connected with other switching cores 620, 611 to provide redundancy and increased interconnectivity.
  • Each switching core 610 includes a peripheral card 680 that provides a Fast Ethernet interface.
  • the Fast Ethernet interface can connect a redundant switching core 611 to the primary switching core 610. If there is an error in the switching core 610, the switching core 611 contains all of the information necessary to continue operation. Additionally, the redundant switching core 611 contains connections (not shown) to the integrated router/switches in the same manner as for the primary switching core 610.
  • a switching core 610 includes sufficient downlink cards 651, 652, 653, 654 and switch fabric 640 to connect to four integrated router/switches (64 lines).
  • additional switching cores 620 can be connected to one or more lines from one of the integrated router/switches 300. In this manner, each integrated router/switch can communicate through one or more switching cores and integrated router switches to reach the proper line card 410 for an output. When multiple switching cores are used, only one memory 670 needs to be used to maintain the routing table for the entire structure. The routing table information could then be transmitted from the first memory to memory locations in the other switching cores and to all integrated router/switches. A single switching core with four integrated router/switches can provide 40 Gbps capability. Sixteen switching cores 610, 620, 630 can be combined to obtain a total bandwidth of 640 Gbps within a single structure.
  • Cells of incoming IP packets are received from a line card 410 and passed through a cell forwarding engine 421.
  • the cell forwarding engine 421 reads the header of the IP packet contained in one or more cells.
  • the cells are modified by the cell forwarding engine, as necessary, to represent the path and to accommodate on-the-fly routing. As additional cells of the packet are received, they are also modified, as necessary, by the cell forwarding engine. After each cell (or cells) is processed by the cell forwarding engine, it is passed to the switch 320. In the switch 320, the cells are redirected to the appropriate line for an outgoing port of a line card 410. Of course, if a switching core is used, the cells may be directed to the uplink cards to be switched by the switching core.
  • the cell forwarding engine determines the next hop and transfers the relevant packet and next hop information to the processor 430.
  • the processor 430 sets up the path in the switch 320 through the control bus 470. Then the cell forwarding engine continues its processing, as described.
  • the integrated router/switch operates like an ATM switch with a combined router.
  • the software running the integrated router/switch sets up paths in the same manner as for any ATM switch and router.
  • the cell forwarding engines 421 read the headers for the cells and determine the outgoing virtual path and virtual channel for each cell using the stored forwarding table or routing table. However, as noted above, the router function can be bypassed if not needed. For non-routed ATM cells, once the ATM paths are set up, and the switch has been configured, cells can pass without delay. Since the routing does not have to be checked for each cell, the latency of the cell is improved and consistent.
  • the integrated router/switch also performs IP routing in two different modes.
  • a first mode the integrated router/switch performs IP routing over ATM, as with most conventional ATM switches and routers. This utilizes a store-and-forward technique. Incoming cells are reformed into complete IP packets. The IP information in each packet is examined and the next hop for the packet is determined. The packet is then broken back down and the cells transferred to the next hop. As noted previously, this store-and-forward technique can be slow, particularly if any cells are lost.
  • the integrated router/switch 300 performs "on-the-fly" routing of IP packets.
  • a cell forwarding engine 420 When a cell forwarding engine 420 recognizes the first cell or cells which contain the IP header of an IP packet, it selects a path to the next hop for that IP packet. This path applies to the particular IP packet being received. Other paths may also pass to the same location, but the cells of the IP packet must be serially passed in the correct order so that the IP packet can be formed again.
  • IP packets are checked and modified to perform proper routing.
  • TTL Time-to-Live
  • IP header check sum is recalculated and modified in the first ATM cell as it passes through the CFE. If the IP packet is modified the ATM AAL5 CRC would be checked and a new CRC computed and transmitted in the last cell of the packet. Therefore, the cells merely pass through the integrated router/switch 300 without the need to store-and-forward the IP packet.
  • On-the-fly routing has been described in the context of IP packets which are divided into multiple ATM cells. A similar process can also be generally applied to routing of ordinary IP packets to reduce retransmission delays.
  • the entire packet With ordinary IP packets, the entire packet would be received at once, not as separate cells. However, reception and transmission of the packet takes some period of time. Typically, the entire packet is received and stored before it is retransmitted to the next hop. According to the present invention, a router can begin transmission of the packet to the next hop once the header has been received and before the entire packet is received. As with a packet divided into cells, the cell forwarding engine, or other routing engine, would modify the appropriate portions of the packet for routing and retransmit them. If errors occur later in the packet, similar to in later cells, then an error indication can be sent and the transmission stopped. Therefore, on-the-fly routing works the same for contiguous portions of a large packet as with consecutive cells which form a packet.
  • the integrated router/switch can operate to provide an IP multicast, without the need to perform an ATM multicast.
  • the cell forwarding engine 421 could select a path that switch 320 could pass to multiple locations.
  • the egress paths from switch 320 are not required to be part of an ATM multicast connection. Instead, those paths could be ATM point-to-point connections.
  • the integrated router/switch operates on layers 2 and 3 in the ISO system. It provides data links by transferring cells, and it provides networking services through routing, error checking, and quality of service. With on-the-fly routing, some of the standard error checking for IP packets is handled differently. Since cells are forwarded before all cells of a packet have been received, the entire packet cannot be discarded if it has errors.
  • the integrated router/switch monitors errors in the cells, as with an IP router, while continuing to forward the cells. If errors are detected, then the packet is determined to be bad and an error indicator is set in the trailer of the last cell of the packet. The router at the next hop will recognize the error and discard the packet.
  • the integrated router/switch will revert back to store-and-forward mode for IP processing. With store-and-forward mode, the integrated router/switch can determine whether the packet or cells are bad before forwarding them, which reduces extraneous use of the switch and network.
  • the integrated router/switch can provide enhanced quality of service by setting up specific paths for specific IP communications.
  • Standard IP routing has minimal quality of service capability, mainly relating to priority designations.
  • quality of service is a significant feature of an ATM network.
  • IP communications can be treated like ATM communications and processed in the same manner with a quality of service feature.
  • the use of quality of service allows the system to accommodate a variety of input types, such as telephone, video and audio communications, which have different transmission requirements than regular network and Internet protocols.
  • Different bases can be used for setting the quality of service, such as the type of data in the IP packet, the source address, or destination address. For example, IP flow types, such as high or low priority, can receive certain designated quality of service designations.
  • the information in the packet can be used to select appropriate quality of service, such as guaranteed bandwidth or constant bit rates.
  • Quality of service features allows users with different requirements to access to be distinguished. Each user can obtain the access it needs for its communications at costs with reflect the required levels.
  • the use of ATM switching improves utilization of multiple paths.
  • a single router will communicate with the same next hop for different communications. Since significant overhead time is spent setting up new paths, the integrated router/switch can reduce overhead by continuously maintaining paths to each next hop.
  • the processor 430 will create a set or pool of paths to each next hop, which is then stored in the memory 440.
  • a CFE determines a next hop for a packet, it may request a new path from the processor. If a path in the pool is available, it will be assigned to the data flow for that packet. If no path is available, a default path will be used for the communication.
  • paths that were part of the pool remain active, but are noted as being available for another communication. If a special path was set up for a communication, it is removed once the transmission ends.
  • the integrated router/switch 300 of the present invention can adjust operation in order to accommodate these difficulties. As the number of paths increase, or when multiple paths to a location are not permitted, the system can change to use a single path. In this mode, the cells of each packet will be collected and then transmitted in order on a single path. Additionally, different modes can be applied to different information flows. Thus, some transmissions may be given individual paths and others may operate over a single path. In this manner, services may be differentiated based upon necessities of each transmission, and charges to users of the system can be adjusted accordingly.
  • the integrated router/switch can also provide enhanced quality of service when just a single path to a location is used.
  • the cell forwarding engine 420 selects a path for which switch 320 processes using an enhanced quality of service.
  • Cell forwarding engine 420 may modify the cells of the packet (e.g., change the Type-Of-Service bits for IP version 4 or the Priority bits for IP version 6) to indicate the desired enhanced quality of service.
  • the next hop may detect the cell modifications, and also process the packet using an enhanced quality of service.
  • the integrated router/switch 300 operates as both a router and switch, it can adaptively adjust the network structure when errors occur. For example, as illustrated in FIGS. 7A and 7B, it can react to link failure.
  • FIG. 7A illustrates a path from 1 to 2 through the network between switches A, B, C and D. However, if the link between C and D fails, cells and packets are lost at C. The failure must be reported back to A to send the new packets through another route. While the failure is being reported, all data passing from A is lost.
  • FIG. 7B with the present invention, when the link between C and D fails, C changes the paths to send the cells back to B and A, to be forwarded to D through E. In this manner, fewer cells if any are lost.

Abstract

A combination router and switch is disclosed which can process packet data, such as IP, and cell based data, such as ATM, through a single device. In this manner, routing of packets can be performed more quickly because they are not passed through an accompanying switch before routing. Non-routing data can by-pass the router entirely. Additionally, on-the-fly routing can be used to route and transmit packets, check for errors, and modify relevant portions of packets before an entire packet has been received. For IP over ATM, all of the cells do not have to be received and the packet reformed before it is routed to a next hop. Dynamic routing can be used to by-pass filed links.

Description

HIGH SPEED COMBINATION ROUTER-SWITCH
Field of the Invention
The present invention relates to a combination router and switch in computer communications. More particularly, it relates to a router and switch, which can operate with different communication protocols and with reduced data loss.
Discussion of Related Art
Since the advent of the telegraph and telephone, people have been setting up networks to transfer information from one location to another. Different types of networks have been created to transfer different types of information in varying manners. For example, with the telegraph each message was passed to every location on the wire connecting the locations. The operator had to determine whether the message was direct to his location. Some operators might need to relay a message onto a separate network of wires when the destination was further away. With telephone networks, switches were introduced to provide point-to-point connections. The system would determine the destination location and set switches to provide a direct wire connection between the originating and destination locations.
With the advent of computers, more complex networks have been devised. Point-to-point systems proved inadequate with large quantities of small information transfers. In particular, significant resources and overhead is used to set up point-to-point connections within the system. When large amounts of data are being transferred at once, the overhead is relatively small compared to the data. However, with small amounts of data in each communication, the overhead becomes a large percentage of the total transmission. Therefore, new structures for interconnecting locations have been developed to handle different types of information transfers. However, different structures continue to be used based upon the desired structures and patterns of the information traffic. Differences can be illustrated in the structures of the seven-layer ISO representation of communications. The second and third layers are most relevant to the present invention. The first layer, physical, represents the mechanism for connecting devices. Typically, the physical layer includes different types of media, such as twisted-pair, coaxial cable, fiber optic cable or wireless medium. The second layer, data link, represents how the physical layer is interconnected to transfer information. Common systems include asynchronous transfer mode (ATM), frame relay, point-to-point, and multiprotocol label switching (MPLS). Finally, the third layer, network, defines how the structures in the data link layer are controlled. For example, the network defines the settings for switches to transfer the information to the desired location. Internet protocol (IP) is one type of network structure. However, with many different choices for the data link and network layers, integration into a single network is difficult. Furthermore, each type of network has certain advantages and disadvantages, which could be beneficial in connection with transferring different kinds of information. Therefore, a need exists for a system that can incorporate the advantages of different network designs based upon the desired transfer. FIG. 1 illustrates three principal portions of a network: access, aggregation and backbone. The access portion provides a connection between customer devices and the network. Depending upon the type of network, the access portion may include a variety of devices having different communication formats. Typical devices include telephones, modems, computers, and different types of digital accesses. For example, the access portion may include a frame relay, a telephone line, an ISDN connection or a xDSL connection. With different data types (from different devices), the network has different organizations.
The aggregation portion connects each of the access portion devices to each other, and to the backbone portion. Depending upon the devices, different structures may be used for the network, as illustrated in FIG. 2A. Since different protocols are used, the same equipment cannot handle all types of data transfers. Thus, as illustrated in FIG. 2 A, information in the form of switched voice or data, such as from a telephone connection, uses a point-to-point switched network common for telephony. Frame relay structures can be transferred through either an ATM network of switches or through a system operating with routers. xDSL data is passed through a router-based system, such as the Internet. With the different structures, each type of data needs its own network.
The aggregation portion and the backbone portion may be formed of a combination of routers and switches, as shown in FIG. 2B. Routers are used to determine a path through the network to the destination location. Each router includes the arrangement of at least a portion of the entire network. The router monitors messages sent to it to retrieve information about the final destination. Using the stored arrangement of the network, the router determines the next hop in a transmission to either another router or to the final destination. Subsequent routers also select next hops until the final destination is reached. Switches are used to transfer data coming on one data channel to another, outgoing data channel. The data channels may be different wire, or simply different paths or channels operating over a single wire. When a router selects a next hop, the switches along a path must be set to pass the message to the next router. There are many different types of routers and switches, which operate in different manners. FIG. 1 illustrates a network wherein switches and routers are paired. In such a network, data messages are called packets. Each router, after determining the next hop for a packet, sends to its single switch to transfer the packet. Alternatively, the information may traverse several different switches between hops. Also, under some structures, the access devices perform the routing function, and only switches are used between access devices. In addition to different physical structures, different systems transfer different forms of packets. Some, like the ATM switch, use fixed sized units or cells. A longer packet is divided into cells by the routing function, and each cell is sent in sequence to the network. Within solely a switched network, each switch simply forwards each cell independently, i.e., without regard to the other cells of the packet. It is the responsibility of the network's egress routing function to reassemble all of the cells back into a complete packet. When routers are used in the network, such as with IP, the next hop is determined based upon the information in the packet. The router receives and stores all of the cells corresponding to a packet. The packet is then reformed, checked for errors, and processed to determine the next hop. The router will then form the packet back into cells and transfer it through the network to the next router. This process results in significant delays in passing the packets through the network.
A new system has been proposed which provides "cut-through" switching for IP packets on a network including routers and ATM switches. When a router recognizes an IP packet, it informs both the transmitting side and receiving side devices to use a different path. Typically, in this context, a path is implemented as a particular channel or VPI/VCI value between ATM devices. Once the new path is set up, the entire IP packet is sent without the usual processing. While the entire packet passes more quickly than in conventional routers, the time to set up and take down the new path slows the process down. Also, this system requires changes in the existing equipment within a network, for devices that can communicate to change paths. It cannot operate with other types of routers and switches.
Furthermore, conventional routers use a local view of the system; they only route packets to immediate next hops. If a link goes down, then the router sends a message back to the originating device and other routers to reroute future packets through different links. However, the packets that have already been sent towards that router are typically lost, or need to be resent. Finally, different types of information have different transfer requirements. For example, some data may need to be very accurate, but the time to transfer the data may not be important. Other data, may not need to be as accurate, but the time to transfer it may be very important. In other cases, certain quantities of data may need to be transferred at specified rates. Therefore, some networks, such as ATM networks, have a quality of service feature, which transfers data according to specified priorities. However, IP structures only include simplified mechanisms to differentiate types of service. The IP structure includes a priority designation. This structure is significantly less robust than ATM quality of service, and does not allow for guaranteed delivery or bandwidth capabilities. Therefore, a need exists for a system that permits IP data to be transferred with improved quality of service requirements.
Summary of the Invention
The present invention overcomes the deficiencies of the prior art, to a great extent, through the use of an integrated router and switch. According to one aspect of the invention, the router portion of the combination is by-passed when it is not necessary. This reduces the time through the integrated device and improves performance. According to another aspect of the invention, on-the-fly, inline routing is used for packets. Packet types may include, but are not limited to the IP. When sufficient information from the packet has been retrieved, a new path may be determined. For example, in an ATM switch environment, the first cell or cells of an IP packet are retrieved to obtain the information in the IP header. The router portion of the integrated device makes a routing decision and selects a new path. In conjunction with setting up new paths, according to one embodiment of the invention, ATM quality of service can be set for the path based upon various features of the IP packet, such as source address, destination address, and priority information. After the path is selected, all remaining cells of the IP packet are passed through the integrated router/switch on the path without the need to store and reform the entire packet. Information in the IP packet can be adjusted on-the-fly as necessary to move to the next hop. According to another aspect of the invention, dynamic routing is used to by-pass links that fail during a transmission.
Brief Description of the Drawings
FIG. 1 illustrates the arrangement of routers and switches within a network according to existing art.
FIG. 2A illustrates connections within a central office according to existing art. FIG. 2B illustrates connections within a point of presence according to existing art. FIG. 3 illustrates the arrangement of an integrated router and switch according to an embodiment of the present invention.
FIG. 4 illustrates the arrangement of an interface card according to an embodiment of the present invention. FIG. 5 illustrates the use of the present invention in a network.
FIG. 6 illustrates the structure of a switching core for interconnecting multiple integrated router/switches of the present invention.
FIGS. 7 A and 7B illustrate adaptive routing according to the present invention.
Detailed Description
FIG. 3 illustrates the hardware of an integrated router and switch that jointly operate according to an embodiment of the present invention. The integrated router/switch 300 includes various modules or cards for input, output and switching functions. Interface cards 310, 311 connect to the inputs and outputs of the integrated router/switch. The routing function is performed in the interface cards 310, 311 as discussed below. According to an embodiment of the invention, up to four interface cards 310, 311 can be connected within a single integrated router/switch 300. Two switch modules 320, 321 are in the integrated router/switch 300 to switch between the different interface cards. One switch module 321 acts as a redundant backup in case of failure of the other switch module 320. The switch modules 320, 321 are connected to each of the interface cards 310, 311 by four 622 Mbps lines 340, 341 , 342, 343. Thus, each integrated router/switch 300 provides switching capability of 10 Gbps. The switch module 320 is connected to an uplink card 350 in order to interconnect multiple integrated router/switches for higher data transfer rates.
Each of the interface cards is connected to a management card 360. The management card 360 maintains the routing tables necessary for determining the next hop. The management card may communicate with management cards of other connected integrated router/switches to determine the routing table. Alternatively, as discussed below, the routing tables may be generated by a switching core and transferred to each management card. According to an embodiment of the invention, the connection 370 between the interface cards 310, 311 and the management card 360 is a Fast Ethernet line. A peripheral card 365 connected to the management card 360 provides the management ports for monitoring and controlling operations. The peripheral card 365 may be connected to one or more management outputs 368. The management outputs 368 could include a Fast Ethernet connection to transferring data to or from the management card 360. It may also include a terminal or management system, so that an operator can check and control operation. It may also include a hard drive or other storage device for maintaining data generated or used by the management card or integrated router/switch.
The structure of an interface card 310 is illustrated in FIG. 4. The interface card includes four cell forwarding engines (i.e., CFEs 421, 422, 423 and 424), which provide the integrated routing function. Each of the cell forwarding engines is connected to a line card 410, 411, 412,
413. The line cards 410, 411, 412, 413 are connected to the different input devices, such as computers, computer networks, or other routers and switches. Different line cards are used for different types of inputs, and can include multiple ports. The cell forwarding engines 421, 422, 423, 424 are connected to a processor 430. The processor 430 controls operation of the interface card within the integrated router/switch. The processor 430 is connected through the Fast Ethernet line 370 to the management card 360, and through a control bus 470 to the switches. The management card 360 communicates with the network to maintain a routing table. The routing table is also transferred to the processor 430 in each of the interface cards 310, 311, where it is stored in a memory 440 connected to the processor 430. Any changes to the network structure are reflected in the routing table. The processor 430 also sets up paths to each next hop as needed by the CFEs, and stores information about the paths in the memory 440. The cell forwarding engines 421 , 422, 423, 424 access the routing table and path information in the memory 440 through direct connections 441 to determine a next hop and the appropriate path for that hop and quality of service. The cell forwarding engines also include a forwarding database derived from the routing table. The forwarding database includes information about existing paths in relation to certain qualities of service. Routing information is determined by the cell forwarding engines and transmitted to the processor 430 which sets up the paths in the switch 320.
Additionally, the interface card 310 includes connections to bypass the cell forwarding engines, in the forward direction. This allows the integrated router/switch to operate with both protocols that use routing and that do not use routing, without significant delays. If a cell arrives that is not to be routed, it is passed to the switch 320 through the forward direction bypass 450, rather than to the cell forwarding engine. The switch forwards the cell based upon the ATM paths previously defined. The data outputted from the switch travels through the interface card on the reverse direction bypass 461 to the line card 410. Since routing is not needed after switching, the cell forwarding engine 421 is not used.
FIG. 5 illustrates the use of the integrated router/switch in a network. The integrated router/switch 300 can be used to replace any router and switch combination within a network. A central office or point of presence (POP) 500 provides a connection between external devices and the network. A POP 500 includes an access portion 510 and one or more routers, switches or integrated router/switches 300. The access portion connects the POP 500 to external devices (not shown) such as telephones, modems, computers, etc. As noted above, different types of devices using different protocols can be connected to a network. Therefore, the access portion includes different connections, such as a frame relay 511 , a dial access 512, and xDSL access 513. A integrated router/switch 300 can operate with different inputs and can provide a single connection to each of the access portion 510 devices. The integrated router/switch 300 provides communications between the external devices connected to the POP 500. It also provides connections to a network backbone 550. A network backbone 550 is a collection of routers 540 and switches 541 which transfers messages between different POPs 500, 501, 502. Since the integrated router/switch 300 has features of both routers and switches, it can be used in the network backbone in place of routers and switches. Alternatively, integrated router/switches 520, 530 can be used with other routers 540 and switches 541 to form the backbone. Therefore, the integrated router/switch can be incorporated into existing networks without changing the entire structure.
The integrated router/switch 300 of the present invention is scalable to obtain a greater number of connections and increased bandwidth. FIG. 6 illustrates a switching core 610 for interconnecting multiple integrated router/switches 300. As illustrated in FIG. 6, the switching core 610 includes a switch 640, multiple downlink cards 651, 652, 653, 654, a processor 660, a memory 670, and a peripheral card 680. The downlink cards 651 , 652, 653, 654 in the switching core 610 connect to the uplink cards in the router/switch 300. When the next hop is on another integrated router/switch, the cells are transferred from an uplink card of one integrated router/switch to the switch 640 of the switching core 610 and back out to an uplink card of another integrated router/switch. When a switching core is utilized, the routing information is collected and stored in the memory 670 of the switching core. The processor 660 communicates through the switch to other devices on the network to determine the network configuration and create the routing table. The routing table can then be downloaded from the memory 670 through the switch and downlink cards to each of the integrated router/switches 300. In this manner, the routing information is maintained much more efficiently than in existing systems. In order to maintain proper routing information, the structure of the network must be communicated to each router or node in the network. When each router determines and maintains its own routing table, the necessary messages to communicate the entire structure is O(n2), where n is the number of routers. However, with the switching core, the collection of integrated router/switches 300 connected to the switching core 610 acts as a single node. Furthermore, the integrated router/switches 300 and switching core 610 do not need to be colocated to achieve this result. Therefore, a single switching core, and its associated integrated router/switches, can operate as a local network over a dispersed area.
Additionally, as illustrated in FIG. 6, a single switching core 610 can be connected with other switching cores 620, 611 to provide redundancy and increased interconnectivity. Each switching core 610 includes a peripheral card 680 that provides a Fast Ethernet interface. The Fast Ethernet interface can connect a redundant switching core 611 to the primary switching core 610. If there is an error in the switching core 610, the switching core 611 contains all of the information necessary to continue operation. Additionally, the redundant switching core 611 contains connections (not shown) to the integrated router/switches in the same manner as for the primary switching core 610. According to one embodiment of the invention, a switching core 610 includes sufficient downlink cards 651, 652, 653, 654 and switch fabric 640 to connect to four integrated router/switches (64 lines). If greater switching capacity is needed, additional switching cores 620 can be connected to one or more lines from one of the integrated router/switches 300. In this manner, each integrated router/switch can communicate through one or more switching cores and integrated router switches to reach the proper line card 410 for an output. When multiple switching cores are used, only one memory 670 needs to be used to maintain the routing table for the entire structure. The routing table information could then be transmitted from the first memory to memory locations in the other switching cores and to all integrated router/switches. A single switching core with four integrated router/switches can provide 40 Gbps capability. Sixteen switching cores 610, 620, 630 can be combined to obtain a total bandwidth of 640 Gbps within a single structure. Operation of the integrated router/switch will now be described. Cells of incoming IP packets are received from a line card 410 and passed through a cell forwarding engine 421. The cell forwarding engine 421 reads the header of the IP packet contained in one or more cells.
Assuming that an appropriate path in the switch 320 has already been set up, the cells are modified by the cell forwarding engine, as necessary, to represent the path and to accommodate on-the-fly routing. As additional cells of the packet are received, they are also modified, as necessary, by the cell forwarding engine. After each cell (or cells) is processed by the cell forwarding engine, it is passed to the switch 320. In the switch 320, the cells are redirected to the appropriate line for an outgoing port of a line card 410. Of course, if a switching core is used, the cells may be directed to the uplink cards to be switched by the switching core.
If an appropriate path has not been set up in the switch 320, the cell forwarding engine determines the next hop and transfers the relevant packet and next hop information to the processor 430. The processor 430 sets up the path in the switch 320 through the control bus 470. Then the cell forwarding engine continues its processing, as described. Typically, the integrated router/switch operates like an ATM switch with a combined router. The software running the integrated router/switch sets up paths in the same manner as for any ATM switch and router. The cell forwarding engines 421 read the headers for the cells and determine the outgoing virtual path and virtual channel for each cell using the stored forwarding table or routing table. However, as noted above, the router function can be bypassed if not needed. For non-routed ATM cells, once the ATM paths are set up, and the switch has been configured, cells can pass without delay. Since the routing does not have to be checked for each cell, the latency of the cell is improved and consistent.
The integrated router/switch also performs IP routing in two different modes. In a first mode, the integrated router/switch performs IP routing over ATM, as with most conventional ATM switches and routers. This utilizes a store-and-forward technique. Incoming cells are reformed into complete IP packets. The IP information in each packet is examined and the next hop for the packet is determined. The packet is then broken back down and the cells transferred to the next hop. As noted previously, this store-and-forward technique can be slow, particularly if any cells are lost. Alternatively, the integrated router/switch 300 performs "on-the-fly" routing of IP packets. When a cell forwarding engine 420 recognizes the first cell or cells which contain the IP header of an IP packet, it selects a path to the next hop for that IP packet. This path applies to the particular IP packet being received. Other paths may also pass to the same location, but the cells of the IP packet must be serially passed in the correct order so that the IP packet can be formed again.
Certain bits of the IP packet are checked and modified to perform proper routing. For example in IP version 4, the Time-to-Live (TTL) field is typically decremented by one and the IP header check sum is recalculated and modified in the first ATM cell as it passes through the CFE. If the IP packet is modified the ATM AAL5 CRC would be checked and a new CRC computed and transmitted in the last cell of the packet. Therefore, the cells merely pass through the integrated router/switch 300 without the need to store-and-forward the IP packet. On-the-fly routing has been described in the context of IP packets which are divided into multiple ATM cells. A similar process can also be generally applied to routing of ordinary IP packets to reduce retransmission delays. With ordinary IP packets, the entire packet would be received at once, not as separate cells. However, reception and transmission of the packet takes some period of time. Typically, the entire packet is received and stored before it is retransmitted to the next hop. According to the present invention, a router can begin transmission of the packet to the next hop once the header has been received and before the entire packet is received. As with a packet divided into cells, the cell forwarding engine, or other routing engine, would modify the appropriate portions of the packet for routing and retransmit them. If errors occur later in the packet, similar to in later cells, then an error indication can be sent and the transmission stopped. Therefore, on-the-fly routing works the same for contiguous portions of a large packet as with consecutive cells which form a packet.
Furthermore, the integrated router/switch can operate to provide an IP multicast, without the need to perform an ATM multicast. For an IP multicast destination, the cell forwarding engine 421 could select a path that switch 320 could pass to multiple locations. The egress paths from switch 320 are not required to be part of an ATM multicast connection. Instead, those paths could be ATM point-to-point connections.
The integrated router/switch operates on layers 2 and 3 in the ISO system. It provides data links by transferring cells, and it provides networking services through routing, error checking, and quality of service. With on-the-fly routing, some of the standard error checking for IP packets is handled differently. Since cells are forwarded before all cells of a packet have been received, the entire packet cannot be discarded if it has errors. The integrated router/switch monitors errors in the cells, as with an IP router, while continuing to forward the cells. If errors are detected, then the packet is determined to be bad and an error indicator is set in the trailer of the last cell of the packet. The router at the next hop will recognize the error and discard the packet. Also, once errors are detected, most of the remaining cells of the packet can be discarded without forwarding to reduce extraneous use of the switch and network. If multiple bad packets are received, then the integrated router/switch will revert back to store-and-forward mode for IP processing. With store-and-forward mode, the integrated router/switch can determine whether the packet or cells are bad before forwarding them, which reduces extraneous use of the switch and network.
Also, the integrated router/switch can provide enhanced quality of service by setting up specific paths for specific IP communications. Standard IP routing has minimal quality of service capability, mainly relating to priority designations. However, quality of service is a significant feature of an ATM network. By using on-the-fly routing, IP communications can be treated like ATM communications and processed in the same manner with a quality of service feature. The use of quality of service allows the system to accommodate a variety of input types, such as telephone, video and audio communications, which have different transmission requirements than regular network and Internet protocols. Different bases can be used for setting the quality of service, such as the type of data in the IP packet, the source address, or destination address. For example, IP flow types, such as high or low priority, can receive certain designated quality of service designations. Additionally, the information in the packet, such voice, data, video, or audio, can be used to select appropriate quality of service, such as guaranteed bandwidth or constant bit rates. Quality of service features allows users with different requirements to access to be distinguished. Each user can obtain the access it needs for its communications at costs with reflect the required levels.
The use of ATM switching improves utilization of multiple paths. In many instances, a single router will communicate with the same next hop for different communications. Since significant overhead time is spent setting up new paths, the integrated router/switch can reduce overhead by continuously maintaining paths to each next hop. The processor 430 will create a set or pool of paths to each next hop, which is then stored in the memory 440. When a CFE determines a next hop for a packet, it may request a new path from the processor. If a path in the pool is available, it will be assigned to the data flow for that packet. If no path is available, a default path will be used for the communication. When a transmission is complete, paths that were part of the pool remain active, but are noted as being available for another communication. If a special path was set up for a communication, it is removed once the transmission ends.
Using a new path for each transmission to a next hop can result in large numbers of paths being required, called virtual channel explosion, which may overload the switching system of the network. Additionally, not all network products allow for multiple paths. The integrated router/switch 300 of the present invention can adjust operation in order to accommodate these difficulties. As the number of paths increase, or when multiple paths to a location are not permitted, the system can change to use a single path. In this mode, the cells of each packet will be collected and then transmitted in order on a single path. Additionally, different modes can be applied to different information flows. Thus, some transmissions may be given individual paths and others may operate over a single path. In this manner, services may be differentiated based upon necessities of each transmission, and charges to users of the system can be adjusted accordingly.
The integrated router/switch can also provide enhanced quality of service when just a single path to a location is used. In this case, the cell forwarding engine 420 selects a path for which switch 320 processes using an enhanced quality of service. Cell forwarding engine 420 may modify the cells of the packet (e.g., change the Type-Of-Service bits for IP version 4 or the Priority bits for IP version 6) to indicate the desired enhanced quality of service. The next hop may detect the cell modifications, and also process the packet using an enhanced quality of service.
Finally, since the integrated router/switch 300 operates as both a router and switch, it can adaptively adjust the network structure when errors occur. For example, as illustrated in FIGS. 7A and 7B, it can react to link failure. FIG. 7A illustrates a path from 1 to 2 through the network between switches A, B, C and D. However, if the link between C and D fails, cells and packets are lost at C. The failure must be reported back to A to send the new packets through another route. While the failure is being reported, all data passing from A is lost. On the other hand, as illustrated in FIG. 7B, with the present invention, when the link between C and D fails, C changes the paths to send the cells back to B and A, to be forwarded to D through E. In this manner, fewer cells if any are lost. Having described at least one embodiment, various alterations, modifications and improvements will be apparent to those of skill in the art. Such variations are considered to be part of this invention, which is not limited except by the claims attached hereto.

Claims

1. A communications device within a network comprising: at least one input receiving input data; a plurality of outputs; a switch; and a control device receiving the input data and operating the switch to selectively connect the at least one input and at least one of the plurality of outputs to pass the input data to the at least one of the plurality of outputs based upon information in the input data, said control device including: first means for determining a portion of a route through the network and for operating the switch according to the portion of the route when the input data is of a first type and second means for operating the switch according to channel information in the input data when the input data is of a second type.
2. The communications device of claim 1 , wherein input data of said first type includes data formatted in packets according to internet protocol (IP).
3. The communications device of claim 2, wherein said input data of said first type includes packets separated into a plurality of cells.
4. The communications device of claim 1 , wherein said input data of said second type includes data formatted in cells according to asynchronous transfer mode (ATM).
5. The communications device of claim 1, wherein said control device includes: a memory for storing routing information; a routing information means for communicating with the network, determining routing information, and storing said routing information in said memory; and wherein said first means includes means for reading said routing information in said memory to determine said portion of said route.
6. The communications device of claim 5, wherein said routing information includes a plurality of predetermined channels defining said portion of said route; and wherein said first means includes means for selecting an available one of said predetermined channels and for passing said data according to said selected predetermined channel.
7. The communications device of claim 6, wherein said first means includes: channel formation means for establishing a new channel defining said portion of said route when no predetermined channels are available; and means for passing said data according to said new channel.
8. The communications device of claim 7, wherein said routing information includes a default channel for communicating information to establish a channel, and wherein said channel formation means includes means for communicating information on said default channel to establish said new channel.
9. The communications device of claim 6, wherein said means for selecting selects a predetermined channel based upon information in said data.
10. The communications device of claim 9, wherein said information in said data includes a quality of service designation.
11. The communications device of claim 1 , wherein said data of said first type includes a packet separated into a plurality of cells; and wherein said first means includes: routing means for reading header information in a header of said packet contained in a first portion of said cells and for determining said portion of said route based upon said header information; transmitting means for transmitting said first portion of said cells according to said portion of said route; and forwarding means for forwarding a second portion of said cells following said first portion according to the routing information.
12. The communications device of claim 11, wherein said first means further includes: modification means for identifying and modifying at least one predetermined portion of said packet within at least one of said plurality of cells prior to transmitting or forwarding said cells.
13. The communication device of claim 12, wherein said predetermined portion of said packet includes at least one of a check sum, a CRC, and a TTL.
14. The communication device of claim 12, further including: means for checking the value of at least one predetermined portion of said packet within at least one of said plurality of cells and means for stopping transmission and forwarding of cells if said at least one predetermined portion is determined to be erroneous.
15. The communication device of claim 14, wherein said first means further includes: packet means for storing said plurality of cells of said packet, for reforming said packet from said stored plurality of cells, for creating a new plurality of cells from said reformed packet, and for transmitting said cells according to said portion of said route.
16. The communication device of claim 15, wherein said first means further includes: packet operation means for enabling operation of said packet means when transmission of a predetermined number of packets is stopped.
17. The communication device of claim 1 , wherein said input data includes packets, each packet including a plurality of cells; and wherein said control device includes: storage means for storing all of said plurality of cells of each packet; transmission means for transmitting said plurality of cells of each packet to said one of said outputs after all cells of a packet have been received.
18. The communication device of claim 17, wherein said control device further includes: transmission control means for operating said storage means and said transmission means based upon said one of said outputs.
19. The communications device of claim 1, further comprising: a plurality of switches including said switch selectively connectable to ones of said at least one input and said plurality of outputs; at least one switching core connected to the plurality of switches such that each of the at least one input and the plurality of outputs are selectively connectable through the plurality of switches and at least one switching core; a second control device for operating said at least one switching core to selectively connect said at least one input and one of said plurality of outputs.
20. The communications device of claim 19, further comprising: a memory associated with said at least one switching core for storing routing information; a routing information means for communicating with the network, determining routing information, and storing said routing information in said memory; and wherein said first means includes means using said routing information to determine said portion of said route.
21. The communications device of claim 20, further comprising: a plurality of inputs, including said at least one input; a plurality of control devices, including said control device, each of said control devices being associated with a portion of said plurality of inputs; a plurality of memories corresponding to said plurality of control devices; means for transferring routing information from said memory associated with said at least one switching core to each of said plurality of memories; and wherein each of said plurality of control means include means for reading routing information from a respective one of the plurality of memories for determining a portion of a route for data received at a respective input.
22. A communications network comprising: at least one access device for receiving data to be transmitted and forming said data into a plurality of cells, wherein data includes cell based data to be switched through the network and packet based data to be routed through said network, each packet being formed into a plurality of cells; a transmission device for transmitting said cells from said at least one access device; and a router/switch coupled to said at least one access device to receive said plurality of cells, said router/switch including: at least one input receiving said plurality of cells; a plurality of outputs connected to a respective plurality of network devices; a switch; and a control device receiving the plurality of cells and operating the switch to selectively connect the at least one input and at least one of the plurality of outputs to pass each of the plurality of cells to the at least one of the plurality of outputs based upon information in said plurality of cells, said control device including: first means for determining a portion of a route through the network and for operating the switch according to the portion of the route when a plurality of cells is packet based data; and second means for operating the switch according to channel information in a cell when the cell is cell based data.
23. The communications network of claim 22, wherein said packet based data includes IP data, and wherein said cell based data includes ATM data; wherein said router/switch includes quality of service means for setting an ATM quality of service for each cell within packet based data.
24. The communications network of claim 23, wherein said quality of service means sets an ATM quality of service based upon predetermined information within a packet of said packet based data.
25. The communications network of claim 24, wherein said predetermined information includes at least one of a source address, a destination address, and an IP flow type.
26. The communications network of claim 22, wherein said router/switch includes: a predetermined number of channels from the at least one input to each of the plurality of network devices; channel selection means for selecting an available one of said predetermined number of channels corresponding to a network device to which a cell is to be transferred and transferring said cell on said selected channel.
27. The communications network of claim 26, wherein said channel selection means includes means for using a default channel to a network device to establish a new channel to the network device when each of said predetermined channels is unavailable.
28. The communications network of claim 26, wherein said channel selection means includes means for selecting one of a plurality of default channels to a network device and using said selected default channel establish a new channel to the network device.
29. The communications network of claim 28, wherein said one of a plurality of default channels is selected based upon information in at least one cell to be transmitted to said network device.
30. The communications network of claim 22, wherein said router/switch further includes: means for storing cells of packet based data until all cells of a packet have been received; means for forwarding the stored cells of packet based data after all cells of a packet have been received.
31. A communications device within a network, comprising: a first input/output connection for receiving and transmitting data; a second input/output connection for receiving and transmitting data; a first router connected to said first input/output connection for receiving first data and determining first routing information based upon said first data; a second router connected to said second input/output connection for receiving second data and determining second routing information based upon said second data; and a switch connected to said first and second input/output connections and said first and second routers to selectively pass said first data from said first router to said second input/output connection based upon said first routing information, and to selectively pass said second data from said second router to said first input/output connection based upon said second routing information.
32. A router device connected between an input/output and a switch of a network wherein data passing to said router includes packets which are each separated into a plurality of cells, the router device comprising: means for receiving cells from the input/output; routing means for reading header information in a header of a packet contained in a first portion of cells corresponding to said packet, and for determining a next portion of a route based upon said header information; switch control means for providing information regarding said next portion of said route to said switch; transmitting means for transmitting cells in said first portion of cells to said switch; and forwarding means for forwarding cells in a second portion of cells corresponding to said packet to said switch.
33. The router device of claim 32, further comprising: modification means for identifying and modifying at least one predetermined portion of said packet within at least one of said plurality of cells prior to transmitting or forwarding said cells.
34. The router device of claim 33, wherein said predetermined portion of said packet includes at least one of a check sum, a CRC, and a TTL.
35. The router device of claim 33, further including: means for checking the value of at least one predetermined portion of said packet within at least one of said plurality of cells; and means for stopping transmission and forwarding of cells if said at least one predetermined portion is determined to be erroneous.
36. The router device of claim 35, further comprising: packet means for storing said plurality of cells of said packet, for reforming said packet from said stored plurality of cells, for creating a new plurality of cells from said reformed packet, and for transmitting said cells according to said portion of said route.
37. The router device of claim 36, further comprising: packet operation means for enabling operation of said packet means when transmission of a predetermined number of packets is stopped.
38. The router device of claim 32, further comprising: quality of service means for determining a quality of service level based upon said header information and for modifying each cell of said packet to include said quality of service level.
39. The router device of claim 38, wherein the quality of service level is based upon an IP flow type of a packet.
40. The router device of claim 32, further comprising: means for receiving cells from said switch and passing said cells directly to said input/output.
41. A network comprising : an input device; an output device; a plurality of interconnected nodes, wherein at least one node includes a connection to said input device and at least one node includes a connection to said output device; means for determining a first path through said network from said input device to said output device; means for transmitting data from said input device to said output device along said first path; means for determining that a link in said first path from a first node to a second node is not operating; means for determining a second path through said network from said input device to said output device when said link is determined not to be operating; means for transmitting data from said input device to said output device along said second path after said link is determined not to be operating; means for determining a third path through said network from said first node to said output device; and means for transmitting data from said input device received at said first node to said output device along said third path.
42. An router device within a network, the router device comprising: an input receiving a packet of data from a previous hop; an output transmitting said packet to a next hop; a memory storing at least a portion of said packet received at said input prior to transmission from said output; and transmission control means for modifying portions of said packet in said memory based upon data in said packet and for transmitting said portions of said packet from said output before all data in said packet is received at said input.
43. The router device of claim 42, wherein portions of said packet modified by said transmission control means include at least one of a check sum, a CRC, and a TTL in said packet.
44. The router device of claim 42, further comprising: means for checking the value of at least one predetermined portion of said packet; and means for stopping transmission of said packet if said at least one predetermined portion is determined to be erroneous.
45. The router device of claim 44, wherein said transmission control means further includes means for storing all of said packet in said memory prior to transmission from said output when transmission of a predetermined number of packets is stopped.
PCT/US1999/005608 1998-04-03 1999-03-17 High speed router-switch WO1999052299A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU31865/99A AU3186599A (en) 1998-04-03 1999-03-17 High speed combination router-switch

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US5569198A 1998-04-03 1998-04-03
US09/055,691 1998-04-03

Publications (2)

Publication Number Publication Date
WO1999052299A2 true WO1999052299A2 (en) 1999-10-14
WO1999052299A3 WO1999052299A3 (en) 2000-01-20

Family

ID=21999547

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1999/005608 WO1999052299A2 (en) 1998-04-03 1999-03-17 High speed router-switch

Country Status (2)

Country Link
AU (1) AU3186599A (en)
WO (1) WO1999052299A2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004015938A1 (en) * 2002-08-12 2004-02-19 Starent Networks Corporation Redundancy in voice and data communications systems
US8499336B2 (en) 2010-11-23 2013-07-30 Cisco Technology, Inc. Session redundancy among a server cluster
EP4250678A1 (en) * 2022-03-25 2023-09-27 Avago Technologies International Sales Pte. Limited Cut-through latency and network fault diagnosis with limited error propagation

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5566170A (en) * 1994-12-29 1996-10-15 Storage Technology Corporation Method and apparatus for accelerated packet forwarding
US5602839A (en) * 1995-11-09 1997-02-11 International Business Machines Corporation Adaptive and dynamic message routing system for multinode wormhole networks
US5633861A (en) * 1994-12-19 1997-05-27 Alcatel Data Networks Inc. Traffic management and congestion control for packet-based networks
WO1997027693A1 (en) * 1996-01-24 1997-07-31 Zeitnet, Inc. Dynamic allocation of port bandwidth in high speed packet-switched digital switching systems
WO1997028505A1 (en) * 1996-01-31 1997-08-07 Ipsilon Networks, Inc. Improved method and apparatus for dynamically shifting between routing and switching packets in a transmission network
WO1997050276A1 (en) * 1996-06-21 1997-12-31 British Telecommunications Public Limited Company Atm partial cut-through

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5633861A (en) * 1994-12-19 1997-05-27 Alcatel Data Networks Inc. Traffic management and congestion control for packet-based networks
US5566170A (en) * 1994-12-29 1996-10-15 Storage Technology Corporation Method and apparatus for accelerated packet forwarding
US5602839A (en) * 1995-11-09 1997-02-11 International Business Machines Corporation Adaptive and dynamic message routing system for multinode wormhole networks
WO1997027693A1 (en) * 1996-01-24 1997-07-31 Zeitnet, Inc. Dynamic allocation of port bandwidth in high speed packet-switched digital switching systems
WO1997028505A1 (en) * 1996-01-31 1997-08-07 Ipsilon Networks, Inc. Improved method and apparatus for dynamically shifting between routing and switching packets in a transmission network
WO1997050276A1 (en) * 1996-06-21 1997-12-31 British Telecommunications Public Limited Company Atm partial cut-through

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
DIGHE R ET AL: "A LINK BASED ALTERNATIVE ROUTING SCHEME FOR NETWORK RESTORATION UNDER FAILURE" GLOBECOM '95. IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE, SINGAPORE, NOV. 14 - 16, 1995, vol. 3, 14 November 1995 (1995-11-14), pages 2118-2123, XP000633660 INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS ISBN: 0-7803-2510-9 *
MATSUZAWA S ET AL: "ARCHITECTURE OF CELL SWITCH ROUTER AND PROTOTYPE SYSTEM IMPLEMENTATION" IEICE TRANSACTIONS ON COMMUNICATIONS, vol. 80-B, no. 8, 1 August 1997 (1997-08-01), pages 1227-1237, XP000723093 *
PARULKAR G ET AL: "AITPM: A STRATEGY FOR INTEGRATING IP WITH ATM" COMPUTER COMMUNICATIONS REVIEW, vol. 25, no. 4, 1 October 1995 (1995-10-01), pages 49-58, XP000541650 ISSN: 0146-4833 *
SCHRODI K J ET AL: "INTEGRATION OF IP PACKET FORWARDING IN AN ATM SWITCH" ISS '97. WORLD TELECOMMUNICATIONS CONGRESS. (INTERNATIONAL SWITCHIN SYMPOSIUM), GLOBAL NETWORK EVOLUTION: CONVERGENCE OR COLLISION? TORONTO, SEPT. 21 - 26, 1997, vol. 1, 21 September 1997 (1997-09-21), pages 247-254, XP000720530 ABE S ET AL *
WATANABE Y ET AL: "ATM-BASED CUT-THROUGH FORWARDING ENGINE FOR COMPUTER COMMUNICATION NETWORKS" IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE, PHOENIX, ARIZONA, NOV. 3 - 8, 1997, vol. 3, 3 November 1997 (1997-11-03), pages 1476-1480, XP000737771 INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS ISBN: 0-7803-4199-6 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004015938A1 (en) * 2002-08-12 2004-02-19 Starent Networks Corporation Redundancy in voice and data communications systems
CN100438483C (en) * 2002-08-12 2008-11-26 思达伦特网络公司 Redundancy in voice and data communications systems
US7889637B2 (en) 2002-08-12 2011-02-15 Starent Networks Llc Redundancy in voice and data communications system
US8441920B2 (en) 2002-08-12 2013-05-14 Cisco Technology, Inc. Redundancy in voice and data communications systems
US8499336B2 (en) 2010-11-23 2013-07-30 Cisco Technology, Inc. Session redundancy among a server cluster
EP4250678A1 (en) * 2022-03-25 2023-09-27 Avago Technologies International Sales Pte. Limited Cut-through latency and network fault diagnosis with limited error propagation
US11831411B2 (en) 2022-03-25 2023-11-28 Avago Technologies International Sales Pte. Limited Cut-through latency and network fault diagnosis with limited error propagation

Also Published As

Publication number Publication date
WO1999052299A3 (en) 2000-01-20
AU3186599A (en) 1999-10-25

Similar Documents

Publication Publication Date Title
US6049546A (en) System and method for performing switching in multipoint-to-multipoint multicasting
US6707820B1 (en) Virtual circuit network dynamic channel management
US6512745B1 (en) Packet switching network, packet switching equipment, and network management equipment
US6477166B1 (en) System, method and switch for an MPLS network and an ATM network
JP3825103B2 (en) Data format used for transmission of ATM cells in communication networks
CA2068056C (en) Switching node in label multiplexing type switching network
US6252878B1 (en) Switched architecture access server
US6438100B1 (en) Method and apparatus for routing server redundancy in a network having carrier scale internetworking
EP1348265B1 (en) Maintaining quality of packet traffic in optical network when a failure of an optical link occurs
US20080137669A1 (en) Network of nodes
JPH10336249A (en) Internet protocol repeating network
JP2000115200A (en) Method and device for reducing call setting rate in atm network
WO1999007117A1 (en) Improved acknowledgment of bandwidth requests for the block transfer of data
US7046623B2 (en) Fault recovery system and method for inverse multiplexed digital subscriber lines
US6343077B1 (en) Stackable UTOPIA switching apparatus for a broadband switching system
JP3776686B2 (en) Communication channel synchronous microcell system and method for circuit and packet data transmission integration
US20100085960A1 (en) ATM Telecommunications Systems and Method for Routing Narrow Band Traffic
WO1999052299A2 (en) High speed router-switch
EP0884923B1 (en) Packet switching network, packet switching equipment, and network management equipment
US20030137979A1 (en) Switching unit
US6891794B1 (en) System and method for bandwidth protection in a packet network
US6483807B1 (en) Distributed control of service category request mapping
JP2005518149A (en) Port label switching
JPH07307762A (en) Frame relay exchange and router
JP2001060966A (en) Data transferring device, network using it and data communication method

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW SD SL SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase