System and process for flexible queuing of data packets in...

Multiplex communications – Pathfinding or routing – Switching a message which includes an address header

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C370S419000, C710S052000

Reexamination Certificate

active

06714553

ABSTRACT:

BACKGROUND OF THE INVENTION
The field of the invention is that of the networking of data processing systems or computers and, more particularly, that of the switchable connection of Local Area Networks (“LANs”) such as those supported by the Ethernet protocol and Wide Area Networks (“WANs”) such as those supported by the Asynchronous Transfer Mode (“ATM”) protocol.
One of the major problems in the field of connecting networks is that the variety of different network protocols used to communicate between different data processing systems on particular networks makes communication between such networks difficult. Another major problem is that most network protocols require considerable configuration of parameters when adding computer systems or nodes, typically accomplished by manual input of device addresses by network professionals who nonetheless make mistakes. This problem may be exacerbated when connecting across network boundaries.
Current connection of networks, including the mechanisms used to connect the Internet, is accomplished using devices known as “bridges” and “routers.” Roughly speaking, bridges connect different networks at the “data link” layer or Layer 2 (also known as the MAC layer) of the OSI Network model, see Schwartz, Mischa,
Telecommunication Networks
at 75-99 (Addison-Wesley 1987), and routers connect different networks at the “network” layer or Layer 3 of the OSI model, A packet of data is preceded by headers corresponding to layers of communication, with the first in time header corresponding to the lowest Layer 1, the physical link, and proceeding up to Layer 7, the application layer (other models have fewer layers). The “application layer” here refers to functions at Layers 5-7 of the OSI model. When packets of information are received at a bridge, the bridge processor forwards the packet on a data link according to the information in the data link header (following the physical link header). When packets of information are received at a router, the packet is routed according to the information in the network header. These headers, however, do not contain information about the quality of service required by the application to which the data packet pertains; thus, each packet is forwarded according to the data link or network protocol which may or may not include a priority flag, typically for network management operations.
The types of applications requiring data transmission on current networks call for a wide range of service. Thus, in communications with a file server, requests uploaded from a client for downloading of data require relatively little bandwidth, while downloading of massive amounts of data requires great bandwidth to be accomplished in a reasonable time. Streaming of audio-visual (“multimedia”) information requires guaranteed bandwidth at regular intervals to avoid perceivable interruptions or “jitter”. E-mail, file server requests, HTTP, word processing each have their own application protocols with associated header information that can be associated with their communication needs, including bandwidth.
Network switching schemes that consider information above the network layer, so-called “Layer 4 switches,” are just coming on the market and appear typically to involve software implementations that are slow and only consider a portion of the Layer 4 or transport layer header (the “TCP” part of TCP/IP or transport control protocol/internetwork protocol).
SUMMARY OF THE INVENTION
The present invention connects networks at the application layer, and uses more information above Layer 3 of the OSI model than other network switches in the present state of the art. The invention performs “flow switching” or connection, wherein, based on the information in a received data packet at Layer 4 and above, the invention identifies a “flow,” that is, a sequence of network messages that occur as a result of a requested process such as reading a file, sending an e-mail message, browsing a web site, initiating a file transfer, making a database query, etc., and routes the packet accordingly, thereby establishing a “virtual connection” at Layer 4 and above. The invention is further adapted for “application flow switching,” wherein the invention classifies received frames into flows based not only on the Layer 2 MAC or Layer 3 network address, but also on the information contained in higher layers, even up to “Application” Layer 7 of the OSI model. Thus, the invention can differentiate between flows that result from web browsing and flows that result from a file transfer or database query, even though both may use the same Layer 3 protocol.
In the preferred embodiment, this is accomplished using a combination of hardware and software optimized for speed or for flexibility at their respective functions. Thus, dedicated “silicon” or gates at the chip level are employed to extract rapidly information from the data link headers corresponding to the relatively few data link protocols such as Ethernet, Fast Ethernet, and Frame Relay, and from the network headers of the relatively few network protocols such as Internet (IPv4, IPX, IPv6), SNA, and DECNet, while application protocols in up to 128 bytes of header information are recognized by fast pattern matching software. By looking at the application header, the switch can make “intelligent” decisions about quality of service to be applied to a particular flow or stream of packets (such as e-mail, which is priority-based, as opposed to multimedia, which is bandwidth-guarantee-based) and can keep all connections while backing off of all applications fairly.
By using internally standard or “canonical” headers including data link and network information deduced or inferred at the port interfaces, and comparing hashed versions of the canonical headers to identify the packets to flows with common flow rules, the invention very efficiently establishes a virtual connection between the appropriate ports associated with a given flow. This feature allows the system to be “frame or cell”-independent and to route ATM traffic as not heretofore done.
In the preferred embodiment, thousands of transmit queues are possible (pointing to data packets in fast storage) that allow thousands of connections as well as different qualities of service to be attached to individual queues.
The “intelligence” of the system in tracking packets according to the flow allows “cut through” flow, that is, the output from a port of portions of a data packet stream even as portions of the data packet stream are entering a port. Many other intelligent functions are possible because of the flexible and scalable architecture of the system using interface ASICs (application-specific integrated circuits) to “canonicalize” Layer 2 and 3 header information, a high speed bus, a queue manager ASIC which rapidly implements queuing decisions of a fast relay engine ASIC, and a background engine ASIC that monitors the flow connections.


REFERENCES:
patent: 5495478 (1996-02-01), Wilkinson et al.
patent: 5651034 (1997-07-01), Oksanen et al.
patent: 5784373 (1998-07-01), Satake et al.
patent: 5844897 (1998-12-01), Asamizuya
patent: 5852602 (1998-12-01), Sugawara
patent: 5905725 (1999-05-01), Sindhu et al.
patent: 5909440 (1999-06-01), Ferguson et al.
patent: 0498201 (1992-08-01), None

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

System and process for flexible queuing of data packets in... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System and process for flexible queuing of data packets in..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and process for flexible queuing of data packets in... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3243392

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.