WO2001022668A1 - Serial routing bus - Google Patents

Serial routing bus Download PDF

Info

Publication number
WO2001022668A1
WO2001022668A1 PCT/US2000/025571 US0025571W WO0122668A1 WO 2001022668 A1 WO2001022668 A1 WO 2001022668A1 US 0025571 W US0025571 W US 0025571W WO 0122668 A1 WO0122668 A1 WO 0122668A1
Authority
WO
WIPO (PCT)
Prior art keywords
routing
devices
data packet
data
bus
Prior art date
Application number
PCT/US2000/025571
Other languages
French (fr)
Inventor
Paul Peng-Sheng Wang
Original Assignee
Entridia Corporation
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 Entridia Corporation filed Critical Entridia Corporation
Priority to AU40223/01A priority Critical patent/AU4022301A/en
Publication of WO2001022668A1 publication Critical patent/WO2001022668A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/583Stackable routers

Definitions

  • the present invention relates generally to a routing bus used as a common pathway, or channel, between multiple devices for transferring data.
  • the present invention relates to a routing bus for transferring data packets between multiple routing devices and from one local area network (LAN) or wide area network (WAN) to another.
  • LAN local area network
  • WAN wide area network
  • a LAN is a communication networks that serves users within a confined geographical area.
  • a LAN is made up of servers, workstations, a network operating system and numerous communication links. All of these systems work in unison to facilitate the transfer of data between users and devices within the network.
  • Network devices may includes a server computer, printer, Internet connection, fax machine, router, switch, hub, or user terminal computer.
  • OSI is the OSI seven layer model.
  • the layers in the seven layer model are the physical layer, the data link layer, the network layer, the transport layer, the session layer, the presentation layer and the application layer.
  • OSI is an umbrella name for a series of non-proprietary protocols and specifications.
  • Ethernet is the most widely-used LAN access method. Ethernet is a communication standard defined by the IEEE (Institute of Electrical and Electronics Engineers)
  • Ethernet is simply a shared media LAN.
  • the workstations (computers) on each segment of the network share the total network bandwidth, which ranges from 10 Mbps (Mega Bits-Per-Second) to 100 Mbps.
  • each device on the network is assigned an address.
  • An Ethernet network transmits data in variable length frames or packets that contain a header with the addresses of the source and desired destination of the packet.
  • the packets are broadcast on to a common bus that is continually monitored by every device on the network.
  • the workstation or device with the matching destination address accepts the frame, while the other, non-matching workstations, simply ignore the data in the packet.
  • FIG. 1 illustrates an exemplary network having a router.
  • Data packets arriving from the primary server 100, the Internet 102, or a WAN (wide area network) 104 pass through the router 120.
  • the router 120 reviews the address of each packet and 'routes' or forwards the packet in the proper direction, such as to a particular workstation 124, or to the next router on the Internet 102. .
  • Repeaters 106 may optionally be located intermediate the devices in the network to recreate signals that must travel long distances.
  • a router 120 reads the network address in each data packet and determines, based on routing tables and routing protocols, the most expedient route for transmitting the packet. In the network protocol stack, routers work at layer 3, whereas bridges and switches work at layer 2.
  • Figure 2 illustrates an example data packet 200 as might be used in a packet switched network. While various configurations of data may be assembled in various manner, the example
  • FIG. 2 configuration shown in Figure 2 comprises address information 202, followed by information data 204. Following the information data 204 is error checking information 206.
  • the address 202 of the data packet 200 indicates the destination address of the data 204.
  • the error checking information 206 provides means to determine if errors were introduced into
  • the error checking information is analyzed using verification algorithms to monitor for error. If errors are revealed a request can be made for the packet to be resent.
  • FIG 3 illustrates an example configuration of a router 120.
  • one or more printed circuit cards 310-324 reside within a protective housing 330.
  • Each card 310-324 is connected via common bus 334.
  • Each card contains one or more ports 340 and is electrically accessible from the exterior of the housing.
  • each card includes eight ports 340, only one of which is shown in Figure 3.
  • Connection via each port 340 provide means to connect a workstation or other device to the network as shown in Figure 1.
  • the capacity of each router 120 is expandable by adding additional cards.
  • multiple routers 120 are placed in communication with one another and transfer data packets via a common or shared external bus 334. Often the router must transfer data between a workstation connected one or more other cards 310-324 in the router.
  • the router 120 broadcasts the data packet, containing a destination address, on the shared router bus 334 that
  • the routers 120 of the prior art scheme transfer data packets to one another and to different cards 310-324 within the router.
  • the desired transmission frequency (F) may be described as: number of devices (N) multiplied by transmission bandwidth of each device (B) divided by width of the bus (W). This equation follows.
  • the length of the shared bus limits the transmission frequency and, as a result, the transmission frequency may not be infinitely increased to accommodate increased bandwidth of the routing bus.
  • the delay time on a routing bus in a synchronous system is typically about one nanosecond per six inches of routing bus (0.166 ns/inch). Due to the time it takes for the data to traverse the length of the bus, the maximum operating frequency of the bus is limited. For example, if the bus operates at too great a frequency the data will not have adequate time to travel the distance of the bus to reach the receiving device before the bus attempts to register or clock-in the data at the receiving device. In the case of an asynchronous system, increases in line length undesirably increase signal dispersion. Therefore, the bus length limits the maximum bus
  • a further disadvantage of the prior art bus arrangement arises from delays in communications during periods when the routing bus is in use. For example, when two routing devices or cards communicate with each other, all other routing devices (cards) must remain silent. For example, as shown in Fig. 3, while device 310 is in communication with device 318, all other devices 312, 316, 320-324 can not use the bus. This delay time, being dependent on the length of the bus, must also be accounted for. For example, if a first device, 310 transmits data the data must progress along the entire buses before a device 324 at the end position receives the data. Accordingly, the longer the distance between the two devices, and the greater the number of devices, the more time other devices must remain silent.
  • the present invention is directed to a system for increasing the rate of data transfer between devices in a packet switched network router.
  • a router having a plurality of cards or chips, each of which oversee one or more ports
  • the present invention is ideally utilized to facilitate data transfer between the cards or chips in the router to thereby increase the frequency at which data may be transmitted between cards or chips.
  • These cards or chips are hereinafter referred to generally as routing devices.
  • routing devices To achieve the increase in frequency of transmission, the parallel data bus of the prior art is eliminated and a new, more efficient bus structure is provided.
  • this new bus structure connects the routing devices in serial fashion by connecting only adjacent routing devices. Hence, each device is connected via the new bus structure to only the adjacent devices in the structure of routing devices.
  • the structure of the routing devices may comprise a single line configuration, a circular configuration, a rectangular array or a three-dimensional cubic
  • Operation of the present invention in the example environment of a local area network involves receiving a data packet having a destination address.
  • the data packet arrives at one of a plurality of routing devices in a router via a port on the routing device from a computer linked via a network line to the routing device. If the data packet has a destination address of a computing device connected to the same routing device as the sending routing device, then the routing device does not transmit the data packet to any other routing device. Instead, the routing device simply forwards the data packet to the proper port.
  • the routing device in accordance with the bus structure of the present invention forwards the data packet via the inter-device bus to an adjacent bus that is closest to the routing device having the port address corresponding to the destination address of the data packet. If the adjacent receiving routing device does not contain the port having the matching address, then the routing device receiving the data packet forwards or transmits the data packet to an adjacent routing device that is in the direction of the desired routing device. In this manner the data packet is passed serially between routing devices on a number of dedicated buses. In one embodiment, each bus is dedicated to and connects to only two routing devices. Because there are several devices, there are several dedicated buses that only transfer data between two devices.
  • the bus of the present invention can be made to be shorter than the shared bus of the prior art. Desirably, the shorter bus length provides for an increase in
  • Figure 1 illustrates an exemplary network environment.
  • Figure 2 illustrates an exemplary data packet utilized in packet switched networks.
  • Figure 3 illustrates an exemplary router configuration of the prior art.
  • Figure 4 illustrates a first embodiment of the present invention in the example environment of a network router.
  • Figure 5 illustrates a block diagram of the bus configuration of the present invention.
  • Figure 6 illustrates a block diagram of a second embodiment of the present invention.
  • Figure 7 illustrates a block diagram of a third embodiment of the present invention.
  • Figure 8 illustrates a block diagram of an example configuration of the present invention.
  • Figure 9 illustrates an operational flow chart of one embodiment of the present invention.
  • Figure 10 illustrates a detailed operational flow chart of one embodiment of the present
  • Figures 11 A and 1 IB illustrate a block diagram of an exemplary method of transmitting data between devices wherein each device alternates between transmit and receive mode.
  • Figures 12A and 12B illustrate a block diagram of an exemplary method of transmitting data between devices wherein the transmit direction alternates.
  • Figures 13A and 13B illustrate a block diagram of bus capacity requirements.
  • routing devices 310-324 are in communication via a point-to-point bi-directional routing bus.
  • the routing system includes eight routing devices 310-324 connected via point-to-point routing buses 410-422. Preferred
  • each of the routing devices 310-324 connect to a neighboring routing device, thereby forming a serially linked run of routing devices.
  • Multiple output ports 340 per card 310-324 provide interface with external devices.
  • Protective housing 330 surrounds cards 310-324.
  • the present invention shown generally in an exemplary embodiment in Figure 4, provides several advantages over the prior art.
  • the short length of the routing buses 410-422 in comparison to the length of prior art routing bus shown in Figure 3, allows higher transmission frequencies to be achieved. Higher frequencies correlate to increased bandwidth between routing devices, which in turn equate to higher rates of data transfer.
  • bandwidth is defined as a measurement of the amount of data that can be transmitted in a period of time. Bus bandwidth can be increased by increasing frequency or by increasing the number of lines or pins (i.e. 64 bit bus to 128 bit bus).
  • a second advantage to the configuration of the present invention is that more than two routing devices may simultaneously communicate without undesirably requiring other routing devices to remain silent.
  • routing device 310 and routing device 316 may exchange data simultaneous with routing device 318 and routing device 324 exchanging data.
  • Figure 5 illustrates a block diagram of the present invention wherein the router cards or router chips are generalized by devices 510-520. In some embodiments, the entire routing device is contained on a single chip or integrated circuit.
  • the present invention could find application wherever or whenever the need exists to transmit data at increased frequencies between three or more devices.
  • any application sharing a common bus with three or more devices that compete for bus resources would benefit from the teaching of the present invention.
  • Other exemplary environments that may benefit from the present invention include, but are not limited to, computer back planes, on-chip bus interconnects, or as a replacement for shared bus environments such as a PCI type bus.
  • Figure 6 illustrates another embodiment wherein a plurality of routing devices 501-514 are connected in a loop.
  • This design advantageously reduces the maximum number of devices through which the data must be routed before reaching its destination.
  • the routing device 510 has a shorter path to the routing device 518 through the routing device 520, rather than through the routing devices 512-516.
  • Figure 7 illustrates yet another embodiment of the present invention wherein a plurality of devices are arranged in the configuration shown.
  • device 702 connects to device 704 and device 708.
  • Device 706 connects to device 704 and device 712.
  • Device 714 connects to device 708 and device 716 and device 718 connects to device 712 and 716.
  • the center device connects to devices 704, 708, 712, and 716.
  • This configuration further reduces the number of devices through which a signal must pass before reaching its destination over a straight line configuration.
  • the configuration of the devices comprise a cubic or other three dimensional configuration to thereby reduce the physical distance between devices and to reduce the maximum number of connections or devices that a data packet must
  • Figure 8 illustrates a block diagram of one exemplary embodiment of components configured to realize the benefits of the subject invention.
  • the configuration is designed to receive data from the left hand side of the drawing and transmit data, if necessary, to the right hand side of the figure.
  • the apparatus is fully intended to transmit data in both directions, as suggested in Figures 4, 5, 6, and 7. Therefore, and as understood by those of ordinary skill in the art, each device would include similar apparatus configured to transmit data in the direction from the right hand side of the drawing to the left hand side of the drawing.
  • Figure 8 shows the configuration for data transfer in one direction only, the apparatus required for transfer in the opposite direction being just opposite.
  • a first data bus 802 and a control bus 804 connect to the routing device 800.
  • the data bus comprises a 128 channel bus and the control bus comprises a 8 bit channel bus.
  • any size bus be it data or control bus, is contemplated for integration with the present invention.
  • increasing the bus size in terms of increased channels desirably increases bandwidth by increasing the number of data channels, or bits that may be transferred during each clock cycle.
  • simply increasing the bus size undesirably increases cost and consumes valuable space.
  • the present invention is particularly desirable because it facilitates the increase of bandwidth
  • Routing device 800 may comprise a circuit card as might be found in a router, a software configuration operating in conjunction with a digital signal processor, or an integrated circuit, or
  • a plurality of input flip flops 806 connects to the data bus 802. It is anticipated that one or more flip-flops 806 connect to each of the channels of the data bus. In other embodiments, apparatus other than flip flops may accept the data on to the routing device. Other devices that may replace flip-flop 806 include but are not limited to registers, memory, or latches.
  • the control bus 804 and the input flip flop connect to logic 808. Also connecting to the logic 808 is internal data storage 810. The logic 808 controls the flow of data between the data received over data bus 802 and internal data storage 810. Logic 808 interfaces with a multiplexing device 820 to selectively control output between either of the data arriving over the data bus 802 or over an external line 822. External line 822 connects to an externally connected device, such as a printer, workstation, computer, or other device, shown by reference numerals 124, 100, 104 in Figure 1.
  • an externally connected device such as a printer, workstation, computer, or other device, shown by reference numerals 124, 100, 104 in Figure 1.
  • Multiplexer 820 acting as a switch, connects to an output flip-flop 824.
  • Output flip-flip 824 connects to a second data bus 830.
  • the second data bus 830 connects to another routing device, not shown.
  • a second control bus 832 Associated with second data bus 830.
  • Second control bus 830 like the first control bus 804, provides a channel for control information between logic 808 on
  • Second data bus 830 and second control bus 832 are generally identical to first data bus 802 and first control bus 804.
  • This configuration is generally repeated for each channel of the data bus and the control bus.
  • a 128 bit multiplexer is utilized to switch the data transmitted the data bus.
  • a plurality of flip-flops or other type registers are utilized to accommodate
  • Figure 9 illustrates an operational flow diagram of one method of operation of a routing device in a configuration of a plurality of routing devices.
  • the device receives data over a bus, such as data bus 802 of Figure 8.
  • the router analyzes the address of the data. For example, in one embodiment the data is transmitted in packet format over a packet switched network and therefore contains a destination address.
  • the operation determines if the data is addressed to a device at one of the one or more ports serviced by the routing device.
  • the routing device In the case of an ethemet routing card, eight ports may exist and be served by each ethemet routing device.
  • the operation progresses to a step 910 wherein the system forwards the data to the next routing device attached to the bus.
  • the routing device may optionally delete the item from the bus and transmit a data deleted message to the sending routing device, or may transmit or return the data to the sending routing device thereby providing another chance for the device intermediate the present routing device and the sending routing device to accept the data packet.
  • step 904 the system matches the address of the data to one of the ports on the device, then the operation progresses to a step 906 wherein the device, card, or chip accepts the data.
  • step 906 the device, card, or chip accepts the data.
  • step 908 the device transfers data to the proper port on the device.
  • Figure 10 illustrates an operational flow diagram of an exemplary method of operation of the device of Figure 8.
  • the operation determines if data is on the data bus, referred to herein as bus data. If bus data is on the data bus, the operation clocks in the data via the input flip flop at a step 1002. Thereafter, the operation analyzes the data address to determine if the bus data should be directed to a port on the device. This occurs at a decision step 1004. If the bus data is addressed to a port on the device then the operation progresses to a step 1008 wherein the bus data is transmitted via the multiplexer or other switch to the appropriate device port. Alternatively, at a step 1004, if the bus data is not addressed for a port on this device, then the bus data is output to the output flip flop at a step 1006.
  • step 1000 if there is no data on the data bus, the operation progresses to a decision step 1020, wherein the operation determines if there is data on the device ports. If there is data on the device port the operation progresses to decision step 1022, wherein the operation determines if the address of the data is being sent in the current transmit direction. If the device to which the port data is to be sent is in the transmit direction, then the operation progresses to a step
  • step 1026 multiplexes the data to the output flip flop.
  • step 1022 the data is not being sent to a device in the direction of the transmit direction
  • the operation progresses to a step 1024 and stores the data in internal data storage until the next transmit cycle.
  • step 1030 wherein the system is idle and is in standby mode until the next data cycle.
  • each transmit cycle comprises 3 clock cycles.
  • a first clock cycle registers the data in
  • a second clock cycle initiates operation of the logic and multiplexing and a third clock cycle registers the data in the output flip flop.
  • the transmit cycle can be made to occur in two clock cycles by incorporating additional logic and multiplexers.
  • Figures 11 A and 1 IB illustrate the operation of an example routing system in two consecutive cycles.
  • the routing devices 1104, 1108 and 1112 transmit data packets to their neighboring routing devices. More specifically, in the first cycle, the routing device 1104 transmits to its neighboring routing devices 1102 and 1106, the routing device 1108 transmits to its neighboring routing devices 1106 and 1110, and the routing device 1112 transmits to its neighboring routing devices 1110 and 1114.
  • the routing devices 1102, 1106, 1110 and 1114 transmit data packets to their neighboring routing devices. In that cycle, the routing device 1102 transmits to its neighboring routing device 1104, the routing device 1106 transmits to its neighboring routing devices 1104 and
  • the routing device 1110 transmits to its neighboring routing devices 1108 and 1112 and the routing device 1114 transmits to its neighboring routing device 1112. These two consecutive cycles keep repeating in this manner.
  • Figures 12A and 12B yet another method of operation is illustrated. As shown in Figure 12 A, during a first transmit cycle, the devices Dl - D6 1120-1130 transmit in a direction from Dl to D6.
  • the devices transmit in the opposite direction.
  • data progresses in a direction from D6 1130 to Dl 1120.
  • the system thus transmits data in alternating directions in this manner.
  • a data packet traveling from a device D2 1122 to a device D4 1126 progresses in the following manner.
  • data transmitted from device D2 to a device D4 progresses first to device D3 1124.
  • device D3 1124 stores data while the system transfers data in the opposite direction.
  • the system transfers the data from device D3 1124 to device D4 1126.
  • Device D4 1126 then routes the data to the appropriate port on device D4, such as to a computer connected to one of the ports on device D4.
  • each device in the system is programmed to know its location in the chain or with relation to other devices in the system. This may be accomplished by prograrnming each device in hardware or software with information regarding its location in the chain. In an alternative embodiment dip switches or physical jumpers instruct each device at power-on, at reset, or any time thereafter.
  • one of the routing devices, preferably the first routing device, in the chain is selected as the master routing device to regulate timing and data traffic among the other routing devices.
  • FIG. 13A A further aspect of the present invention is shown in Figs. 13A and 13B.
  • Figs. 13A and 13B As illustrated below, given the same bandwidth, X, for each routing device, a lower transmission frequency is required by the embodiment of Figs. 13A and 13B than any method and apparatus of the prior art.
  • devices 1150-1162 are in communication with Ethernet ports, EP r EP 7 , respectively.
  • Fig. 13 A illustrates the routing system in transmit mode. Assuming, each
  • Ethernet port (EP,-EP 7 ) has a maximum bandwidth of X, it can be seen that the routing device 1150 may receive X amount of data through EP,. Assuming that all the data must be passed along to another routing device, the routing device 1150 transmits X amount of data to the routing device
  • Fig. 13B illustrates the routing system in receive mode.
  • the transmission frequency of the routing system of Figs. 13 A and 13B can be expressed as follows.
  • the maximum bandwidth (B required for a routing system consisting of Y number of routing devices is:
  • the transmission frequency for the routing system is the maximum bandwidth of the routing system 400 multiplied by two, since each device is capable of both receiving and
  • Figs. 13 A and 13B require a lower transmission frequency to support routing devices of the same bandwidth, X, than the transmission frequency required by the prior art method and apparatus.
  • the transmission frequency of the embodiment of Figs. 13A and 13B may be increased to a higher level than that of the prior art since the routing bus of a system embodied in accordance with the present invention is considerably shorter than the shared bus of the prior art system.

Abstract

A method and apparatus for increasing data transfer rate between routing devices (310-324) in a packet switched environment comprising a plurality of routing devices (310-324) each of which are connected to one or more other routing devices by a bus (410-422) or other connection that is generally dedicated to data transfer between two devices. Each device may optionally include one or more ports for connection of a computing device thereto and each port is assigned an address (202). The data transfer rate between routing devices is increased due to the reduced length of each bus when need only span the distance between adjacent routing devices. In one embodiment, the routing devices comprise circuit cards or chip and are contained within a router of a packet switched computer network.

Description

DESCRIPTION
SERIAL ROUTING BUS Background of the Invention
The present invention relates generally to a routing bus used as a common pathway, or channel, between multiple devices for transferring data. In particular, the present invention relates to a routing bus for transferring data packets between multiple routing devices and from one local area network (LAN) or wide area network (WAN) to another.
In the past several years, substantial attention has been directed to computer networks and more specifically Local Area Networks (LANs). A LAN is a communication networks that serves users within a confined geographical area. A LAN is made up of servers, workstations, a network operating system and numerous communication links. All of these systems work in unison to facilitate the transfer of data between users and devices within the network. Network devices may includes a server computer, printer, Internet connection, fax machine, router, switch, hub, or user terminal computer.
Overseeing the transfer of data is a set of rules or protocol that governs how the data is exchanged and how the various devices interact. Often this set or rules or protocol is divided into levels or stacks to simplify understanding and establish standards between layers to ensure compatibility between various devices. For example, the communication format between various stacks is dictated by a standardized protocol to allow different devices or software to
communicate between layers.
One example of a protocol stack is the OSI seven layer model. The layers in the seven layer model are the physical layer, the data link layer, the network layer, the transport layer, the session layer, the presentation layer and the application layer. OSI is an umbrella name for a series of non-proprietary protocols and specifications.
Today, Ethernet is the most widely-used LAN access method. Ethernet is a communication standard defined by the IEEE (Institute of Electrical and Electronics Engineers)
802.3 standard. Ethernet is simply a shared media LAN. The workstations (computers) on each segment of the network share the total network bandwidth, which ranges from 10 Mbps (Mega Bits-Per-Second) to 100 Mbps. Under ISO protocol each device on the network is assigned an address. An Ethernet network transmits data in variable length frames or packets that contain a header with the addresses of the source and desired destination of the packet. The packets are broadcast on to a common bus that is continually monitored by every device on the network. The workstation or device with the matching destination address accepts the frame, while the other, non-matching workstations, simply ignore the data in the packet.
Networks that serve large companies may have hundreds of workstations or devices. Likewise, networks connected to the Internet have the ability to communicate with thousands of other workstations. Routers were developed to effectively direct all the data packets between the various workstations or addresses. A router is a device that serves as a monitoring station to monitor and direct data packets to the proper location. Figure 1 illustrates an exemplary network having a router. Data packets arriving from the primary server 100, the Internet 102, or a WAN (wide area network) 104 pass through the router 120. The router 120 reviews the address of each packet and 'routes' or forwards the packet in the proper direction, such as to a particular workstation 124, or to the next router on the Internet 102. . Repeaters 106 may optionally be located intermediate the devices in the network to recreate signals that must travel long distances. A router 120 reads the network address in each data packet and determines, based on routing tables and routing protocols, the most expedient route for transmitting the packet. In the network protocol stack, routers work at layer 3, whereas bridges and switches work at layer 2.
Figure 2 illustrates an example data packet 200 as might be used in a packet switched network. While various configurations of data may be assembled in various manner, the example
configuration shown in Figure 2 comprises address information 202, followed by information data 204. Following the information data 204 is error checking information 206.
The address 202 of the data packet 200 indicates the destination address of the data 204. The error checking information 206 provides means to determine if errors were introduced into
the data packet during the process of transmission. The error checking information is analyzed using verification algorithms to monitor for error. If errors are revealed a request can be made for the packet to be resent.
Figure 3 illustrates an example configuration of a router 120. Most often, one or more printed circuit cards 310-324 reside within a protective housing 330. Each card 310-324 is connected via common bus 334. Each card contains one or more ports 340 and is electrically accessible from the exterior of the housing. In general, each card includes eight ports 340, only one of which is shown in Figure 3. Connection via each port 340 provide means to connect a workstation or other device to the network as shown in Figure 1. The capacity of each router 120 is expandable by adding additional cards. In a typical network environment, multiple routers 120 are placed in communication with one another and transfer data packets via a common or shared external bus 334. Often the router must transfer data between a workstation connected one or more other cards 310-324 in the router. For example, data arriving from a device connected to a port 340 of card 310 must be transferred to a device connected to a port 340 on card 318. In systems of the prior art, the router 120 broadcasts the data packet, containing a destination address, on the shared router bus 334 that
connects each card 310-324 in the router. All the cards 310-324 on the shared router bus 334 are continuously probing the shared router bus, and as a result, the particular card having the port 340 with the address data packet of the destination router recognizes the destination address and accepts the data packet. In this fashion, the routers 120 of the prior art scheme transfer data packets to one another and to different cards 310-324 within the router.
In the method of the prior art, the desired transmission frequency (F), may be described as: number of devices (N) multiplied by transmission bandwidth of each device (B) divided by width of the bus (W). This equation follows.
_ (N*B) ri eal w
While this relationship defines the ideal transmission frequency, practical considerations limit the frequency, and hence the bandwidth of the system. In particular, the length of the shared bus limits the transmission frequency and, as a result, the transmission frequency may not be infinitely increased to accommodate increased bandwidth of the routing bus. By way of example, the delay time on a routing bus in a synchronous system is typically about one nanosecond per six inches of routing bus (0.166 ns/inch). Due to the time it takes for the data to traverse the length of the bus, the maximum operating frequency of the bus is limited. For example, if the bus operates at too great a frequency the data will not have adequate time to travel the distance of the bus to reach the receiving device before the bus attempts to register or clock-in the data at the receiving device. In the case of an asynchronous system, increases in line length undesirably increase signal dispersion. Therefore, the bus length limits the maximum bus
frequency.
A further disadvantage of the prior art bus arrangement arises from delays in communications during periods when the routing bus is in use. For example, when two routing devices or cards communicate with each other, all other routing devices (cards) must remain silent. For example, as shown in Fig. 3, while device 310 is in communication with device 318, all other devices 312, 316, 320-324 can not use the bus. This delay time, being dependent on the length of the bus, must also be accounted for. For example, if a first device, 310 transmits data the data must progress along the entire buses before a device 324 at the end position receives the data. Accordingly, the longer the distance between the two devices, and the greater the number of devices, the more time other devices must remain silent.
There is, therefore, a need within the industry for a routing bus that can increase the transmission frequency and reduce the delay time period for transferring data between the routing devices.
Summary of the Invention
In a first aspect, the present invention is directed to a system for increasing the rate of data transfer between devices in a packet switched network router. In a router having a plurality of cards or chips, each of which oversee one or more ports, the present invention is ideally utilized to facilitate data transfer between the cards or chips in the router to thereby increase the frequency at which data may be transmitted between cards or chips. These cards or chips are hereinafter referred to generally as routing devices. To achieve the increase in frequency of transmission, the parallel data bus of the prior art is eliminated and a new, more efficient bus structure is provided. For purposes of discussion, this new bus structure connects the routing devices in serial fashion by connecting only adjacent routing devices. Hence, each device is connected via the new bus structure to only the adjacent devices in the structure of routing devices. In various embodiments, the structure of the routing devices may comprise a single line configuration, a circular configuration, a rectangular array or a three-dimensional cubic
configuration.
Operation of the present invention in the example environment of a local area network involves receiving a data packet having a destination address. In this discussion, the data packet arrives at one of a plurality of routing devices in a router via a port on the routing device from a computer linked via a network line to the routing device. If the data packet has a destination address of a computing device connected to the same routing device as the sending routing device, then the routing device does not transmit the data packet to any other routing device. Instead, the routing device simply forwards the data packet to the proper port.
Alternatively, if the data packet has a destination address corresponding to the address of a port on another routing device, then the routing device in accordance with the bus structure of the present invention forwards the data packet via the inter-device bus to an adjacent bus that is closest to the routing device having the port address corresponding to the destination address of the data packet. If the adjacent receiving routing device does not contain the port having the matching address, then the routing device receiving the data packet forwards or transmits the data packet to an adjacent routing device that is in the direction of the desired routing device. In this manner the data packet is passed serially between routing devices on a number of dedicated buses. In one embodiment, each bus is dedicated to and connects to only two routing devices. Because there are several devices, there are several dedicated buses that only transfer data between two devices. Advantageously, the bus of the present invention can be made to be shorter than the shared bus of the prior art. Desirably, the shorter bus length provides for an increase in
the frequency of data transmission.
Other objects, features, and configurations of the present invention will become apparent
from consideration of the following description taken in conjunction with the accompanying
drawings.
Brief Description of the Drawings
Figure 1 illustrates an exemplary network environment.
Figure 2 illustrates an exemplary data packet utilized in packet switched networks.
Figure 3 illustrates an exemplary router configuration of the prior art.
Figure 4 illustrates a first embodiment of the present invention in the example environment of a network router.
Figure 5 illustrates a block diagram of the bus configuration of the present invention. " Figure 6 illustrates a block diagram of a second embodiment of the present invention.
Figure 7 illustrates a block diagram of a third embodiment of the present invention.
Figure 8 illustrates a block diagram of an example configuration of the present invention.
Figure 9 illustrates an operational flow chart of one embodiment of the present invention.
Figure 10 illustrates a detailed operational flow chart of one embodiment of the present
invention.
Figures 11 A and 1 IB illustrate a block diagram of an exemplary method of transmitting data between devices wherein each device alternates between transmit and receive mode. Figures 12A and 12B illustrate a block diagram of an exemplary method of transmitting data between devices wherein the transmit direction alternates.
Figures 13A and 13B illustrate a block diagram of bus capacity requirements.
Detailed Description of Preferred Embodiments
Referring now to Fig. 4, an embodiment is illustrated wherein the routing devices 310-324 are in communication via a point-to-point bi-directional routing bus. The routing system includes eight routing devices 310-324 connected via point-to-point routing buses 410-422. Preferred
embodiments contain an odd number of routing devices. As shown, each of the routing devices 310-324 connect to a neighboring routing device, thereby forming a serially linked run of routing devices. Multiple output ports 340 per card 310-324 provide interface with external devices. Protective housing 330 surrounds cards 310-324.
The present invention, shown generally in an exemplary embodiment in Figure 4, provides several advantages over the prior art. First, the short length of the routing buses 410-422, in comparison to the length of prior art routing bus shown in Figure 3, allows higher transmission frequencies to be achieved. Higher frequencies correlate to increased bandwidth between routing devices, which in turn equate to higher rates of data transfer. For purposes of the present discussion, bandwidth is defined as a measurement of the amount of data that can be transmitted in a period of time. Bus bandwidth can be increased by increasing frequency or by increasing the number of lines or pins (i.e. 64 bit bus to 128 bit bus).
A second advantage to the configuration of the present invention is that more than two routing devices may simultaneously communicate without undesirably requiring other routing devices to remain silent. For example, in the configuration shown in Figure 4, routing device 310 and routing device 316 may exchange data simultaneous with routing device 318 and routing device 324 exchanging data. These are but two of the numerous advantages realized from the present invention. Those of ordinary skill in the art will realize other advantages after reading the following
description. While the present invention is particularly desirable when incorporated into the bus structure of a network router, various other applications would benefit from the principles of the present invention. Figure 5 illustrates a block diagram of the present invention wherein the router cards or router chips are generalized by devices 510-520. In some embodiments, the entire routing device is contained on a single chip or integrated circuit.
In various embodiments, the present invention could find application wherever or whenever the need exists to transmit data at increased frequencies between three or more devices. For example, any application sharing a common bus with three or more devices that compete for bus resources would benefit from the teaching of the present invention. Other exemplary environments that may benefit from the present invention include, but are not limited to, computer back planes, on-chip bus interconnects, or as a replacement for shared bus environments such as a PCI type bus.
Figure 6 illustrates another embodiment wherein a plurality of routing devices 501-514 are connected in a loop. This design advantageously reduces the maximum number of devices through which the data must be routed before reaching its destination. For example, the routing device 510 has a shorter path to the routing device 518 through the routing device 520, rather than through the routing devices 512-516.
Figure 7 illustrates yet another embodiment of the present invention wherein a plurality of devices are arranged in the configuration shown. In this embodiment, referred to for purposes of discussion as a rectangular configuration, device 702 connects to device 704 and device 708. Device 706 connects to device 704 and device 712. Device 714 connects to device 708 and device 716 and device 718 connects to device 712 and 716. The center device connects to devices 704, 708, 712, and 716. This configuration further reduces the number of devices through which a signal must pass before reaching its destination over a straight line configuration. It is contemplated that in another embodiment the configuration of the devices comprise a cubic or other three dimensional configuration to thereby reduce the physical distance between devices and to reduce the maximum number of connections or devices that a data packet must
traverse before reaching its destination.
Figure 8 illustrates a block diagram of one exemplary embodiment of components configured to realize the benefits of the subject invention. As shown, the configuration is designed to receive data from the left hand side of the drawing and transmit data, if necessary, to the right hand side of the figure. Of course, the apparatus is fully intended to transmit data in both directions, as suggested in Figures 4, 5, 6, and 7. Therefore, and as understood by those of ordinary skill in the art, each device would include similar apparatus configured to transmit data in the direction from the right hand side of the drawing to the left hand side of the drawing. Figure 8, for purposes of discussion, shows the configuration for data transfer in one direction only, the apparatus required for transfer in the opposite direction being just opposite.
In reference to Figure 8, a first data bus 802 and a control bus 804 connect to the routing device 800. In one embodiment the data bus comprises a 128 channel bus and the control bus comprises a 8 bit channel bus. However, virtually any size bus, be it data or control bus, is contemplated for integration with the present invention. As known by those of ordinary skill in the art, increasing the bus size, in terms of increased channels desirably increases bandwidth by increasing the number of data channels, or bits that may be transferred during each clock cycle. However, simply increasing the bus size undesirably increases cost and consumes valuable space. Hence, the present invention is particularly desirable because it facilitates the increase of bandwidth
without the increase of bus size. Of course, the bus may also be increased or decreased in size in conjunction with the present invention at the discretion of designers. Routing device 800 may comprise a circuit card as might be found in a router, a software configuration operating in conjunction with a digital signal processor, or an integrated circuit, or
chip. If configured as a single chip, the silicon device may include all the necessary structures or functions on a single chip. Such configuration advantageously reduces the cost, size, and power requirements of the device while increasing speed. A plurality of input flip flops 806 connects to the data bus 802. It is anticipated that one or more flip-flops 806 connect to each of the channels of the data bus. In other embodiments, apparatus other than flip flops may accept the data on to the routing device. Other devices that may replace flip-flop 806 include but are not limited to registers, memory, or latches.
The control bus 804 and the input flip flop connect to logic 808. Also connecting to the logic 808 is internal data storage 810. The logic 808 controls the flow of data between the data received over data bus 802 and internal data storage 810. Logic 808 interfaces with a multiplexing device 820 to selectively control output between either of the data arriving over the data bus 802 or over an external line 822. External line 822 connects to an externally connected device, such as a printer, workstation, computer, or other device, shown by reference numerals 124, 100, 104 in Figure 1.
Multiplexer 820, acting as a switch, connects to an output flip-flop 824. Output flip-flip 824 connects to a second data bus 830. The second data bus 830 connects to another routing device, not shown. Associated with second data bus 830 is a second control bus 832. Second control bus 830, like the first control bus 804, provides a channel for control information between logic 808 on
adjacent routing device 800. Second data bus 830 and second control bus 832 are generally identical to first data bus 802 and first control bus 804.
This configuration is generally repeated for each channel of the data bus and the control bus. Hence, in the case of a 128 bit bus, a 128 bit multiplexer is utilized to switch the data transmitted the data bus. Likewise, a plurality of flip-flops or other type registers are utilized to accommodate
the 128 channel bus.
Operation The present invention operates in accordance with Figure 9. Figure 9 illustrates an operational flow diagram of one method of operation of a routing device in a configuration of a plurality of routing devices. In a single device, at a step 900, the device receives data over a bus, such as data bus 802 of Figure 8. Next, at a step 902, the router analyzes the address of the data. For example, in one embodiment the data is transmitted in packet format over a packet switched network and therefore contains a destination address.
Next, at a decision step 904, the operation determines if the data is addressed to a device at one of the one or more ports serviced by the routing device. In the case of an ethemet routing card, eight ports may exist and be served by each ethemet routing device.
If at decision step 904 the data is not addressed to one of the device services by a port of the routing device, the operation progresses to a step 910 wherein the system forwards the data to the next routing device attached to the bus. Alternatively, if the present routing device is the last routing device in a single line bus configuration, the routing device may optionally delete the item from the bus and transmit a data deleted message to the sending routing device, or may transmit or return the data to the sending routing device thereby providing another chance for the device intermediate the present routing device and the sending routing device to accept the data packet.
If at step 904 the system matches the address of the data to one of the ports on the device, then the operation progresses to a step 906 wherein the device, card, or chip accepts the data. Next at a step 908, the device transfers data to the proper port on the device.
This is but one of many possible general methods of operation of the present invention.
Figure 10 illustrates an operational flow diagram of an exemplary method of operation of the device of Figure 8. At a step 1000 the operation determines if data is on the data bus, referred to herein as bus data. If bus data is on the data bus, the operation clocks in the data via the input flip flop at a step 1002. Thereafter, the operation analyzes the data address to determine if the bus data should be directed to a port on the device. This occurs at a decision step 1004. If the bus data is addressed to a port on the device then the operation progresses to a step 1008 wherein the bus data is transmitted via the multiplexer or other switch to the appropriate device port. Alternatively, at a step 1004, if the bus data is not addressed for a port on this device, then the bus data is output to the output flip flop at a step 1006.
Alternatively, at step 1000, if there is no data on the data bus, the operation progresses to a decision step 1020, wherein the operation determines if there is data on the device ports. If there is data on the device port the operation progresses to decision step 1022, wherein the operation determines if the address of the data is being sent in the current transmit direction. If the device to which the port data is to be sent is in the transmit direction, then the operation progresses to a step
1026 and multiplexes the data to the output flip flop. Alternatively, if at step 1022 the data is not being sent to a device in the direction of the transmit direction, the operation progresses to a step 1024 and stores the data in internal data storage until the next transmit cycle. If at step 1020, there is no data at the data port, the operation progresses to a step 1030, wherein the system is idle and is in standby mode until the next data cycle.
It should be noted that in one embodiment the bus of the present invention is configured to
alternate the direction that data is received. Thus, in a first cycle, data is transmitted along the bus to the right and in another cycle data is transmitted along the bus to the left. Thus, the above described operation repeats every cycle but transmits data along the bus in opposite directions every other cycle. In alternative cycles input flip flops are switched to become output flip flops. In one embodiment each transmit cycle comprises 3 clock cycles. A first clock cycle registers the data in
the input flip flop. A second clock cycle initiates operation of the logic and multiplexing and a third clock cycle registers the data in the output flip flop. In an alternative embodiment the transmit cycle can be made to occur in two clock cycles by incorporating additional logic and multiplexers.
Figures 11 A and 1 IB illustrate the operation of an example routing system in two consecutive cycles. In the first cycle, as shown in Figure 11 A, the routing devices 1104, 1108 and 1112 transmit data packets to their neighboring routing devices. More specifically, in the first cycle, the routing device 1104 transmits to its neighboring routing devices 1102 and 1106, the routing device 1108 transmits to its neighboring routing devices 1106 and 1110, and the routing device 1112 transmits to its neighboring routing devices 1110 and 1114. In the next cycle, as shown in Figure 1 IB, the routing devices 1102, 1106, 1110 and 1114 transmit data packets to their neighboring routing devices. In that cycle, the routing device 1102 transmits to its neighboring routing device 1104, the routing device 1106 transmits to its neighboring routing devices 1104 and
1108, the routing device 1110 transmits to its neighboring routing devices 1108 and 1112 and the routing device 1114 transmits to its neighboring routing device 1112. These two consecutive cycles keep repeating in this manner. In reference to Figures 12A and 12B, yet another method of operation is illustrated. As shown in Figure 12 A, during a first transmit cycle, the devices Dl - D6 1120-1130 transmit in a direction from Dl to D6.
During a second transmit cycle, shown in Figure 12B, the devices transmit in the opposite direction. Thus, data progresses in a direction from D6 1130 to Dl 1120. The system thus transmits data in alternating directions in this manner.
By way of example, based on the method shown in Figure 12, a data packet traveling from a device D2 1122 to a device D4 1126 progresses in the following manner. During a first transmit cycle data transmitted from device D2 to a device D4 progresses first to device D3 1124. Next, during a second transmit cycle, device D3 1124 stores data while the system transfers data in the opposite direction. During a third transmit cycle the system transfers the data from device D3 1124 to device D4 1126. Device D4 1126 then routes the data to the appropriate port on device D4, such as to a computer connected to one of the ports on device D4.
Preferably, each device in the system is programmed to know its location in the chain or with relation to other devices in the system. This may be accomplished by prograrnming each device in hardware or software with information regarding its location in the chain. In an alternative embodiment dip switches or physical jumpers instruct each device at power-on, at reset, or any time thereafter. Similarly, one of the routing devices, preferably the first routing device, in the chain, is selected as the master routing device to regulate timing and data traffic among the other routing devices.
A further aspect of the present invention is shown in Figs. 13A and 13B. As illustrated below, given the same bandwidth, X, for each routing device, a lower transmission frequency is required by the embodiment of Figs. 13A and 13B than any method and apparatus of the prior art. As shown in Figure 13A, devices 1150-1162 are in communication with Ethernet ports, EPrEP7, respectively. Fig. 13 A illustrates the routing system in transmit mode. Assuming, each
Ethernet port (EP,-EP7) has a maximum bandwidth of X, it can be seen that the routing device 1150 may receive X amount of data through EP,. Assuming that all the data must be passed along to another routing device, the routing device 1150 transmits X amount of data to the routing device
1152. The routing device 1152 receives X from the routing device 1150 and may also an additional X amount of data from EP2. As a result, the routing device 1152 receives 2X to pass along to its neighboring device 1154, and so on. Following this scheme, the routing device 1160 transmits 6X to the routing device 1162. Similarly, Fig. 13B illustrates the routing system in receive mode. The transmission frequency of the routing system of Figs. 13 A and 13B can be expressed as follows. The maximum bandwidth (B required for a routing system consisting of Y number of routing devices is:
Bandwidth = A (Y)L* χ
where X is the maximum bandwidth capability of the network apparatus linked to that particular to a router device or card. For a routing system with odd number of devices, the formula can be stated as:
7-1 Bandwidth = • X where X is the maximum bandwidth of all computing devices. For example, for a routing system with 7 devices, the maximum bandwidth that the bus should optimally be design for is (((7-l)/2) *
X) = 3X.
Moreover, the transmission frequency for the routing system is the maximum bandwidth of the routing system 400 multiplied by two, since each device is capable of both receiving and
transmitting data, divided by the width of the transmit bus (W), i.e. F = (B*2)/W. Accordingly, where W is the width of the transmit bus, X the maximum bandwidth of the routing system, and Y the number of devices on the routing bus, the transmission frequency (F) required of the routing system for operation is
[(/. ( )).2]
F :
W
Therefore, the embodiment of Figs. 13 A and 13B require a lower transmission frequency to support routing devices of the same bandwidth, X, than the transmission frequency required by the prior art method and apparatus. In particular, remembering that the frequency of the prior art bus
was
(N. B) ideal w
the required bus frequency of the present invention is lower since the term (Y-l) -• 2 is less than
the term Ν, where Y=Ν = number of devices. Furthermore, the transmission frequency of the embodiment of Figs. 13A and 13B may be increased to a higher level than that of the prior art since the routing bus of a system embodied in accordance with the present invention is considerably shorter than the shared bus of the prior art system.
While the present invention is capable of various modifications and alternative forms, specific examples thereof have been shown in the drawings and are herein described in detail. It should be understood, however, that the invention is not to be limited to the particular forms or
methods disclosed. Instead, the invention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the appended claims.

Claims

WHAT IS CLAIMED IS:
1. A method of increasing the speed and/or bandwidth of a bus in a packet switched router, said router having three or more routing devices, each of which have one or more ports for connection of a computing device, said method comprising
receiving a data packet at a first routing device from a computing device connected to a port of said first routing device; comparing a destination address of said data packet to the addresses of said ports on said device;
transmitting said data packet to a port on said first routing device if an address of a port on said first routing device matches said destination address; and if the destination address of said data packet does not match an address of a port on said first routing device, then transmitting said data packet to an adjacent routing device that is in the direction to facilitate said data packet reaching, in the shortest amount of time, a routing device having a port with the destination address.
2. The method of Claim 1, wherein comparing utilizes a look-up table to determine if said routing device includes a port with said destination address.
3. The method of Claim 1 , wherein said transmitting of said data packet to an adjacent routing device increases data transfer rates because said data packet must only travel to said adjacent routing device instead of to each of said three or more routing devices.
4. The method of Claim 1, wherein reaching, in the shortest amount of time, includes said data packet being routed through the fewest number of said three or more routing devices.
5. A method for exchanging data packets having destination addresses between three or more devices, each device having one or more ports, each port having a port address, said method comprising: receiving a data packet at a first device; analyzing the destination address of said data packet; and forwarding said data packet to a device adjacent said first device if said destination address does not match a port address of said first device.
6. The method of Claim 5, wherein said forwarding comprises transmitting said data packet to a device adjacent said first device if said destination address does not match a port address of said first device and wherein if more than one said device is adjacent said first device, then forwarding said data packet to an adjacent device that will require the fewest number of said forwardings before said data packet reaches a device having a port address that matches said destination address.
7. The method of Claim 5, wherein said analyzing comprises comparing said destination address to a list of port addresses on said first device.
8. The method of Claim 5, further including the step of evaluating which of said three or more devices to forward said data packet to.
9. The method of Claim 8 wherein said evaluating comprises comparing said destination address to a known list of port addresses on at least one of said three or more devices.
10. The method of Claim 5, further including processing said data packet if said destination address matches an address of said device.
11. The method of Claim 5, further including the step of buffering said data packet if said another of three or more devices does not have capacity.
12. The method of Claim 5, wherein said another of said three or more devices is one of two physically closest devices of the said three or more other devices.
13. The method of Claim 5, wherein said analyzing comprises comparing said destination address to said one or more addresses of said device.
14. The method of Claim 10, wherein said processing comprises accepting said data packet and forwarding said data packet to a network computer connected to said device.
15. The method of Claim 5, wherein said method occurs in a local area network.
16. An apparatus for routing data packets based on an address of said data packet in a packet switched network, said apparatus comprising: three or more routing devices, each having one or more ports; and two or more data buses, wherein each data bus is connected to two routing devices whereby a routing device receiving a data packet over one of said two
or more data buses either accepts said data packet or forwards said data packet to an adjacent routing device of said three or more routing devices over the other of said two routing buses that connect to said routing device.
17. The method of Claim 16, further including a control bus configured to carry
control signals.
18. The method of Claim 16, further including control logic and a multiplexer on each of said three or more routing devices to selectively regulate the receiving and forwarding of said data packets.
19. A data transfer system to increase the rate of data transfer between devices comprising; a first device, a second device, and a third device; a first bus connecting said first device and said second device; and a second bus connecting said second device to said third device; wherein said first device and said second device communicate via said first bus and said third device and said second device communicate via said second bus, and wherein communications between said first device and said third device travel through said second device.
20. The system of Claim 19, wherein said apparatus is contained within a router in a
packet switched network.
21. The system of Claim 19, wherein further each device includes one or more ports, each of said ports being assigned a particular address.
22. The system of Claim 19, further comprising a plurality of additional devices in said data transfer system connected in serial fashion by a bus.
23. The system of Claim 22, further including an additional bus between said first device and said last device of said plurality of additional devices to thereby form a circle of devices each in communication with two other devices.
24. A method for communicating data packets within a router in a packet switched" computer network comprising: facilitating each of three or more routing devices to communicate with one or more other routing devices via a plurality of buses; whereby each bus is dedicated to facilitate communication between only two routing devices which thereby reduces bus length to allow for increased rates of data transfer.
25. A routing system comprising: a first routing device; an end routing device; a first intermediary routing device in communication with said first routing device; and a second intermediary routing device in communication with said first
intermediary routing device and said end routing device; wherein said first routing device and said end routing device communicate via said first and second intermediary devices.
26. An apparatus for exchanging data packets having destination addresses between three or more devices, each of said devices servicing one or more addresses, said apparatus
comprising: means for receiving a data packet at a first device; means for analyzing the destination address of said data packet; means for evaluating whether to forward said data packet to another device and to which device to forward said data packet, if said data packet is to be forwarded, based on said destination address of said data packet; and means for forwarding said data packet to a device adjacent said first device if said device does not service said destination address.
27. The apparatus of Claim 26, wherein said means for evaluating to which device to forward instructs said means for forwarding to forward to an adjacent device that either services said destination address or is in the direction of a device that services said destination address.
PCT/US2000/025571 1999-09-22 2000-09-18 Serial routing bus WO2001022668A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU40223/01A AU4022301A (en) 1999-09-22 2000-09-18 Serial routing bus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US40038699A 1999-09-22 1999-09-22
US09/400,386 1999-09-22

Publications (1)

Publication Number Publication Date
WO2001022668A1 true WO2001022668A1 (en) 2001-03-29

Family

ID=23583401

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/025571 WO2001022668A1 (en) 1999-09-22 2000-09-18 Serial routing bus

Country Status (2)

Country Link
AU (1) AU4022301A (en)
WO (1) WO2001022668A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5881242A (en) * 1997-01-09 1999-03-09 International Business Machines Corporation Method and system of parsing frame headers for routing data frames within a computer network
US5915104A (en) * 1997-01-09 1999-06-22 Silicon Graphics, Inc. High bandwidth PCI to packet switched router bridge having minimized memory latency
US5940479A (en) * 1996-10-01 1999-08-17 Northern Telecom Limited System and method for transmitting aural information between a computer and telephone equipment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5940479A (en) * 1996-10-01 1999-08-17 Northern Telecom Limited System and method for transmitting aural information between a computer and telephone equipment
US5881242A (en) * 1997-01-09 1999-03-09 International Business Machines Corporation Method and system of parsing frame headers for routing data frames within a computer network
US5915104A (en) * 1997-01-09 1999-06-22 Silicon Graphics, Inc. High bandwidth PCI to packet switched router bridge having minimized memory latency

Also Published As

Publication number Publication date
AU4022301A (en) 2001-04-24

Similar Documents

Publication Publication Date Title
US6141355A (en) Time-synchronized multi-layer network switch for providing quality of service guarantees in computer networks
US7352694B1 (en) System and method for tolerating data link faults in a packet communications switch fabric
US7324537B2 (en) Switching device with asymmetric port speeds
US20040186914A1 (en) Data processing circuit
US5153876A (en) Communication protocol for statistical data multiplexers arranged in a wide area network
US20080144670A1 (en) Data Processing System and a Method For Synchronizing Data Traffic
WO1994018766A1 (en) High-speed packet bus
EP0860958B1 (en) Virtual network architecture
US20060184712A1 (en) Switch architecture independent of media
US7639616B1 (en) Adaptive cut-through algorithm
KR100708425B1 (en) Apparatus and method for sharing memory using a single ring data bus connection configuration
US6741589B1 (en) Apparatus and method for storing data segments in a multiple network switch system using a memory pool
US20040001487A1 (en) Programmable InfiniBand switch
US20060056424A1 (en) Packet transmission using output buffer
US6947375B2 (en) System and method for network card switchovers in an IP network
CN101069434B (en) Data processing system and method for converting and synchronising data traffic
US6690670B1 (en) System and method for transmission between ATM layer devices and PHY layer devices over a serial bus
US20040081096A1 (en) Method and device for extending usable lengths of fibre channel links
US7286532B1 (en) High performance interface logic architecture of an intermediate network node
WO2001022668A1 (en) Serial routing bus
US7379456B2 (en) Network routing apparatus
US6760338B1 (en) Apparatus and method for monitoring data frames by a shared switching logic during simultaneous accessing of multiple network switch buffers
KR100462474B1 (en) Message exchange device and method for IPC(inter processor communication) using the packet ring
US6891843B1 (en) Apparatus and method for sharing memory using extra data path having multiple rings
Horn et al. Switched SCI systems

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ 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

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP