System and process for application-level flow connection of data processing networks
AssigneeTop Layer Networks, Inc.
InventorsBarry A. Spinney, Nigel T. Poole, Krishna Narayanaswamy, Theodore L. Ross, Richard Szmauz
Life of this patent
Estimating the term…
Abstract
A process and system for switching connections of data packet flows between nodes of data processing system networks operating on diverse protocols according to the application layer information on the data packets.
Claims29
A process for switchably connecting between a receive physical link and one or more transmit physical links a flow of data packets, received or transmitted as OSI Layer 2 frames or ATM cells, said process comprising two subprocesses:
- I) Identifying flows, said subprocess comprising:
- (a) receiving initial data packets representing a new flow;
- (b) recognizing said initial data packets as a separate data traffic flow without end point participation or awareness;
- (c) determining the transmit physical link(s) to be used for transmitting packets of said new flow based upon information in said initial data packets;
- and
- (d) determining the requirements of said new flow based upon processing information in said initial data packets;
- and
- II) Forwarding data packets, said subprocess comprising:
- (a) receiving a plurality of data packets;
- (b) determining whether a particular data packet of said plurality of data packets is a member of an identified flow;
- (c) scheduling for transmission and forwarding on one of said transmit physical links said particular data packet according to the determination of its flow membership and hence, flow requirements;
- and
- (d) transmitting said particular data packet.
Apparatus for switchably connecting between a receive physical link and one or more transmit physical links a flow of data packets, received or transmitted as OSI layer 2 frames or ATM cells, said apparatus comprising:
- I) means for identifying flows, said means comprising:
- a) means for receiving initial data packets representing a new flow;
- b) means for recognizing said initial data packets as a separate data traffic flow without end point participation or awareness;
- c) means for determining the transmit physical link(s) to be used for transmitting packets of said new flow based upon information in said initial data packets;
- and
- d) means for determining the requirements of said new flow based upon processing information in said initial data packets;
- and
- II) means for forwarding data packets, said means comprising:
- a) means for receiving a plurality of data packets;
- b) means for determining whether a particular data packet of said plurality of data packets is a member of an identified flow;
- c) means for scheduling for transmission and forwarding on one of said transmit physical links said particular data packet according to the determination of its flow membership and hence, flow requirements;
- and
- d) means for transmitting said particular data packet.
Apparatus for switchably connecting between a receive physical link and one or more transmit physical links a flow of data packets, said apparatus comprising:
- (a) an integrated circuit interface connected to said receive and transmit links;
- (b) a high-speed storage device for storing received data packets, said received data packets received at said integrated circuit interface over said receive physical link;
- (c) a reprogrammable integrated circuit for establishing and managing virtual queues of said received data packets stored in said high-speed storage device for transmission using said interface;
- and
- (d) a forwarding engine for rapidly reprogramming said reprogrammable integrated circuit wherein said forwarding engine reprograms said reprogrammable integrated circuit relative to a received data packet based on coarison of information in said received data packets with corresponding information in a previously received data packet known to be part of a particular flow.
A process for switchably connecting between a receive physical link and one or more transmit physical links a flow of data packets, said process comprising:
- (a) receiving a data packet;
- (b) determining from information in said received data packet whether said received data packet is part of a known flow initiated by a previously received data packet that specified one or more physical links and scheduling for transmitting data packets part of said known flow, and if not, extracting information from said received data packet to specify said one or more physical links and scheduling for a new flow;
- and
- (c) scheduling for transmission and making available for transmission on one of said transmit physical links said presently received data packet according to said specified one or more physical links and scheduling.
Apparatus for switchably connecting between a receive physical link and one or more transmit physical links a flow of data packets, said process comprising:
- (a) means for receiving a plurality of data packets;
- (b) means for determining from information in a presently received data packet of said plurality whether said presently received data packet is part of a known flow initiated by a previously received data packet that specified one or more physical links and scheduling for transmitting packets part of said known flow, and if not, extracting information from said presently received data packet to specify said one or more physical links and scheduling for a new flow;
- and
- (c) means for scheduling for transmission and making available for transmission on one of said transmit physical links said presently received data packet according to said specified one or more physical links and scheduling.
Dependencies are inferred from the claim text.