Multiplex communications – Pathfinding or routing – Switching a message which includes an address header
Reexamination Certificate
1996-12-30
2001-04-24
Olms, Douglas (Department: 2661)
Multiplex communications
Pathfinding or routing
Switching a message which includes an address header
C370S360000
Reexamination Certificate
active
06222840
ABSTRACT:
FIELD OF THE INVENTION
The present invention relates to the field of networking devices, and more particularly to a method and system for performing concurrent read and write cycles on the data bus of a network switch.
DESCRIPTION OF THE RELATED ART
There are many different types of networks and network systems for sharing files and resources or for otherwise enabling communication between two or more computers. Networks may be categorized based on various features and functions, such as message capacity, range over which the nodes are distributed, node or computer types, node relationships, topology or logical and/or physical layout, architecture or structure based on cable type and data packet format, access possibilities, etc. For example, the range of a network refers to the distance over which the nodes are distributed, such as local-area networks (LANs) within an office or floor of a building, wide-area networks (WANs) spanning across a college campus, or a city or a state, global-area networks (GANs) spanning across national boundaries, etc.
The structure of a network generally refers to the cabling or media and media access used as well as the packet structure of the data transmitted across the media. Various structures are common, including Ethernet using coaxial, twisted pair or fiber-optic cables for operation at 10 megabits per second (Mbps) (e.g. 10Base-T, 10Base-F) or fast Ethernet operating at 100 Mbps (e.g. 100Base-T, 100Base-FX). ARCnet (Attached Resource Computer Network) is a relatively inexpensive network structures using coaxial, twisted pair or fiber-optic cables for operation at 2.5 Mbps. Token Ring topologies use special IBM cable or fiber-optic cable for operation between 1-16 Mbps. Of course, many other types of networks are known and available.
Each network generally includes two or more computers, often referred to as nodes or stations, which are coupled together through selected media and various other network devices for relaying, transmitting, repeating, translating, filtering, etc., the data between the nodes. The term “network device” generally refers to the computers and their network interface cards (NICs) as well as various other devices on the network, such as repeaters, bridges, switches, routers, brouters, to name a few examples. A network operating according to a given communications protocol may be expanded by using one or more repeaters, bridges or switches. A repeater is a hardware device that functions at the physical layer and re-transmits each received packet to every other port. A bridge operates at the data link layer of OSI Reference Model and increases efficiency by filtering packets to reduce the amount of unnecessary packet propagation on each network segment.
A network switch is similar in function to, yet more efficient than, a multiport bridge, which includes a plurality of ports for coupling to several similar networks for directing network traffic among the networks. A network switch usually includes a switching matrix coupled to the ports across a bus for transferring network data, such as Ethernet packets or the like. In a store-and-forward (SnF) mode of operation, an entire packet is received and stored in a memory prior to transmission by the destination port. In a cut-through (CT) mode of operation, packet data is temporarily buffered in a FIFO or in the memory, and transmission of the data may be initiated before the entire packet is received. Although the CT mode is faster than the SnF mode of operation, data is still held in a memory device before being transmitted.
It is desired to provide an improved method of transferring data between ports of a network switch.
SUMMARY OF THE INVENTION
A method and system for performing concurrent read and write cycles in a network switch according to the present invention provides more efficient operation for communicating data packets between network devices. The network switch includes a plurality of network ports, a data bus and a switch manager to execute a concurrent read and write cycle on the data bus by asserting a first port number to identify a source port followed by a second port number to identify a destination port. Each of the network ports includes a network interface for sending data packets to and for receiving data packets from a network device, and a data interface coupled to the data bus to store the first port number, to assert data received from the network interface onto the data bus during the concurrent read and write cycle if that port is identified by the first port number, and to retrieve data from the data bus during the concurrent read and write cycle for transmission by the network interface if that port is identified by the second port number.
In this manner, data is transferred directly between a source and a destination port without being buffered in the switch manager. This provides more efficient transfer with reduced latency between ports. Furthermore, the bandwidth of the data bus coupled to the ports is increased since the data is presented on the data bus only once during each concurrent read and write cycle.
The data interface preferably includes a first latch to store the first port number and a second latch to store the second port number, although the latches may be externally provided. The data bus includes a clock signal and a cycle start signal, where the switch manager asserts the cycle start signal during a first clock cycle, asserts the first port number during a second clock cycle, and asserts the second port number during a third clock cycle to identify the source and destination ports. The clock cycles just described are not necessarily consecutive, and may be interspersed with other clock cycles, such as a clock cycle for asserting mode signals.
In the preferred embodiment, the ports are implemented with a plurality of multiport devices, where each multiport device includes a subset of the ports. In particular, each of the multiport devices is a quad cascade device for implementing up to four of the ports. The first and second port numbers are implemented using a plurality of identification binary signals on the data bus, which include a plurality of multiport identification signals for identifying one of the multiport devices and a plurality of port identification signals for identifying a port of the identified multiport device. More particularly, the multiport identification signals include a read signal for each multiport device, and the plurality of multiport identification signals including a write signal for each multiport device. Thus, the switch manager asserts the first port number by asserting one of the read signals to identify a source multiport device and by asserting the port identification signals to identify the source port of the source multiport device. Further, the switch manager asserts the second port number by asserting one of the write signals to identify a destination multiport device and by asserting the port identification signals to identify the destination port as one port of the destination multiport device.
A network switch according to the present invention is useful in a network system, where the network switch is coupled to transfer data packets between a plurality of network devices. The network switch is implemented with a system for performing concurrent read and write cycles according to the present invention for providing more efficient and faster transfer of data packets.
A method of executing a concurrent read and write cycle according to the present invention includes the steps of asserting a first port number on the data bus to identify a source port, latching the first port number from the data bus, asserting a second port number on the data bus to identify a destination port, and during a concurrent cycle, the source port identified by the first port number providing data on the data bus and the destination port identified by the second port number reading the data from the data bus. If the ports are implemented with a plurality of multiport devices, then during the step of as
Hareski Patricia E.
Kotzur Gary B.
Mayer Dale J.
Walker William J.
Witkowski Michael L.
Akin Gump Strauss Hauer & Feld & LLP
Compaq Computer Corporation
Olms Douglas
Sam Phirin
LandOfFree
Method and system for performing concurrent read and write... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and system for performing concurrent read and write..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for performing concurrent read and write... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2504014