← Back to Patent Explorer
US6993023B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Parallel analysis of incoming data transmissions

Assignee: Boeing Co
•
Filing: 2001-10-26
•
Granted: 2006-01-31
•
Expires: 2021-10-26
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method, system, and computer-readable medium for integrating multiple techniques for processing data communications is described in which the processing steps shared by multiple of the techniques do not have to be duplicated by each of the techniques. In some situations, some or all of the multiple processing techniques are performed in parallel, such as on different processors. In some situations, a Multi-Protocol Edge Switch (“MPEX”) is used to integrate multiple processing techniques for received data communications that are to be forwarded to a destination, such as by performing protocol translation, performing load balancing between multiple alternative destinations on one or more of the networks to which the MPEX belongs, performing firewall and other content-based analysis for any or all of the nodes on one or more of the networks to which the MPEX belongs, and/or providing content-based routing of data communications in order to identify appropriate destinations.

Inventors

  • 👤 Michael S. Foster
  • 👤 Michael A. Dorsett

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 13:41
CPC Classifications
H; H04; H04L; H04L49/00; H04L49/55; H04L49/552; H04L49/35; H04L49/356; H04L49/357; H04L67/00; H04L67/01; H04L67/10; H04L67/1001; H04L67/1004; H04L67/1008; H04L67/1014; H04L67/1029; H04L67/1031; H04L67/50; H04L67/60; H04L67/61; H04L69/00; H04L69/08; H04L49/10; H04L49/101; H04L63/00; H04L63/02; H04L63/0227; H04L63/0236; H04L63/0245; H04L69/22

Claims Analysis

Total Claims: 59
Claim 1
Independent Claim 359 words
A method for a multi-protocol edge switch to process received data frames, the edge switch connected to at least two networks that each use distinct data link layer network protocols, the method comprising: receiving multiple data frames transmitted from source nodes on a first of the networks that uses a first data link layer network protocol, each data frame comprising a header and a payload specified in a manner specific to the first data link layer network protocol, each header including an indication of a destination network address corresponding to a node on a second of the networks and each payload including a message specified using an application layer network protocol; and for each of the multiple received data frames, deconstructing the data frame to identify the indicated destination network address and the payload for the data frame, the deconstructing performed in a manner based on the first data link layer network protocol; without deconstructing the data frame a second time, processing the deconstructed data frame by performing each of multiple processing techniques in parallel, the multiple processing techniques including, analyzing the identified payload in order to determine a type of the included message, the analyzing performed in a manner based on the application layer network protocol used to specify the included message; analyzing the identified payload to verify an absence of disallowed content; selecting one of multiple nodes of the second network to which the identified destination network address corresponds, the multiple nodes associated with the identified destination network address, the selecting performed so as to balance processing loads on the multiple nodes; and constructing a distinct data frame for transmission to the selected one node, the distinct data frame comprising a header and the identified payload and specified in a manner specific to the data link layer network protocol used by the second network; and transmitting the constructed distinct data frame to the selected one node on the second network, so that each of the received data frames can be processed in multiple ways in parallel based on a single deconstruction of the data frame before transmitting the payload of the data frame to a destination node.
Claim 2
Independent Claim 359 words
A method for a multi-protocol edge switch to process received data frames, the edge switch connected to at least two networks that each use distinct data link layer network protocols, the method comprising: receiving multiple data frames transmitted from source nodes on a first of the networks that uses a first data link layer network protocol, each data frame comprising a header and a payload specified in a manner specific to the first data link layer network protocol, each header including an indication of a destination network address corresponding to a node on a second of the networks and each payload including a message specified using an application layer network protocol; and for each of the multiple received data frames, deconstructing the data frame to identify the indicated destination network address and the payload for the data frame, the deconstructing performed in a manner based on the first data link layer network protocol; without deconstructing the data frame a second time, processing the deconstructed data frame by performing each of multiple processing techniques in parallel, the multiple processing techniques including, analyzing the identified payload in order to determine a type of the included message, the analyzing performed in a manner based on the application layer network protocol used to specify the included message; analyzing the identified payload to verify an absence of disallowed content; selecting one of multiple nodes of the second network to which the identified destination network address corresponds, the multiple nodes associated with the identified destination network address, the selecting performed so as to balance processing loads on the multiple nodes; and constructing a distinct data frame for transmission to the selected one node, the distinct data frame comprising a header and the identified payload and specified in a manner specific to the data link layer network protocol used by the second network; and transmitting the constructed distinct data frame to the selected one node on the second network, so that each of the received data frames can be processed in multiple ways in parallel based on a single deconstruction of the data frame before transmitting the payload of the data frame to a destination node.
Claim 3
Dependent Claim 22 words
The method of claim 1 wherein the multiple processing techniques are each performed using distinct processing capabilities of the multi-protocol edge switch.
Claim 4
Dependent Claim 18 words
The method of claim 2 wherein the distinct processing capabilities are distinct processors of the multi-protocol edge switch.
Claim 5
Dependent Claim 58 words
The method of claim 1 including, before the transmitting of the constructed data frame, modifying the constructed data frame based on information generated during the analyzing of the identified payload to determine the type of the included message, the analyzing of the identified payload to verify the absence of disallowed content, and the selecting of the one node.
Claim 6
Dependent Claim 60 words
The method of claim 1 wherein the transmitting of each of the constructed data frames is performed in a manner based on one or more of the analyzing of the identified payload to determine the type of the included message, the analyzing of the identified payload to verify the absence of disallowed content, and the selecting of the one node.
Claim 7
Dependent Claim 22 words
The method of claim 1 wherein the data link layer network protocol used by one of the networks is an Ethernet protocol.
Claim 8
Dependent Claim 23 words
The method of claim 1 wherein the data link layer network protocol used by one of the networks is a Fibre Channel protocol.
Claim 9
Dependent Claim 22 words
The method of claim 1 wherein the data link layer network protocol used by one of the networks is an InfiniBand protocol.
Claim 10
Dependent Claim 25 words
The method of claim 1 wherein the deconstructing of each of the data frames is performed by a network processor of the multi-protocol edge switch.
Claim 11
Dependent Claim 49 words
The method of claim 1 wherein the deconstructing of each of the data frames further identifies a type of the identified payload, and wherein one or more of the processing techniques are performed in a manner based at least in part on the identified type of the identified payload.
Claim 12
Dependent Claim 48 words
The method of claim 1 wherein the message included in at least some of the identified payloads is an HTTP message, and wherein the analyzing of each of those payloads to determine the type of the included message includes identifying a Uniform Resource Identifier specified in the message.
Claim 13
Dependent Claim 44 words
The method of claim 1 wherein the analyzing of the identified payload of each of the received data frames includes extracting contents of the message included in that payload in a manner based on the application layer network protocol used to specify the message.
Claim 14
Dependent Claim 46 words
The method of claim 1 wherein the transmitting of a constructed distinct data frame for a received data frame is not performed if the analyzing of the identified payload of the received data frame to verify an absence of disallowed content fails to verify the absence.
Claim 15
Dependent Claim 44 words
The method of claim 1 wherein the transmitting of a constructed distinct data frame for a received data frame is not performed if the selecting of the one of the multiple nodes is unable to sufficiently balance the processing loads on the multiple nodes.
Claim 16
Dependent Claim 53 words
The method of claim 1 including, for each of the received data frames, adding to the header of the constructed data frame an indication of a second destination network address corresponding to the selected one node, the second destination network address distinct from the destination network address identified for that received data frame.
Claim 17
Dependent Claim 79 words
The method of claim 1 including, for each of the received data frames, determining a transmittal virtual path identifier that is assigned to a path to the selected one node through the second network to which that node belongs, and wherein the transmitting of the constructed distinct data frame to the selected one node on the second network uses the determined transmittal virtual path identifier so that the data frame is routed through the second network along the path.
Claim 18
Dependent Claim 41 words
The method of claim 16 wherein, for each of the received data frames, the determined transmittal virtual path identifier is added to the header of the distinct data frame in place of a destination network address for the selected one node.
Claim 19
Dependent Claim 56 words
The method of claim 16 wherein the determining of the transmittal virtual path identifier that is assigned to the path to the selected one node for a received data frame includes registering with a network manager for the second network to which the selected one node belongs and receiving in response the transmittal virtual path identifier.
Claim 20
Dependent Claim 147 words
A computer-implemented method for processing received data communications, the method comprising: receiving data to be communicated through a network to a destination, the received data formatted in accordance with a first protocol; and processing at least portions of the received data that are identified as relevant by performing each of multiple techniques in parallel, the multiple techniques including, analyzing contents included in at least some of the identified portions in order to determine whether a specified type of content is present; and determining the destination for the received data in a manner so as to load balance multiple possible destinations wherein the analyzing of the contents included in the identified portion includes determining whether at least some of the identified portion include prohibited content; when it is determined that one or more of the identified portions include prohibited content, removing the prohibited content from the received data.
Claim 21
Dependent Claim 147 words
A computer-implemented method for processing received data communications, the method comprising: receiving data to be communicated through a network to a destination, the received data formatted in accordance with a first protocol; and processing at least portions of the received data that are identified as relevant by performing each of multiple techniques in parallel, the multiple techniques including, analyzing contents included in at least some of the identified portions in order to determine whether a specified type of content is present; and determining the destination for the received data in a manner so as to load balance multiple possible destinations wherein the analyzing of the contents included in the identified portion includes determining whether at least some of the identified portion include prohibited content; when it is determined that one or more of the identified portions include prohibited content, removing the prohibited content from the received data.
Claim 22
Dependent Claim 14 words
The method of claim 19 including communicating the received data to the determined destination.
Claim 23
Dependent Claim 39 words
The method of claim 19 including determining a virtual identifier that corresponds to a path through the network to the determined destination and that will be used to route the received data through the network to the determined destination.
Claim 24
Dependent Claim 22 words
The method of claim 19 wherein the portions of the received data to be processed are identified by deconstructing the received data.
Claim 25
Dependent Claim 22 words
The method of claim 22 wherein the deconstructing of the received data is performed in a manner based on the first protocol.
Claim 26
Dependent Claim 18 words
The method of claim 22 wherein the deconstructing of the received data is performed only a single time.
Claim 27
Dependent Claim 16 words
The method of claim 19 wherein the first protocol is a data link layer network protocol.
Claim 28
Dependent Claim 15 words
The method of claim 19 wherein the first protocol is a network layer network protocol.
Claim 29
Dependent Claim 15 words
The method of claim 19 wherein the first protocol is a transport layer network protocol.
Claim 30
Dependent Claim 15 words
The method of claim 19 wherein the first protocol is an application layer network protocol.
Claim 31
Dependent Claim 13 words
The method of claim 19 wherein the first protocol is a bus protocol.
Claim 32
Dependent Claim 12 words
The method of claim 19 wherein the first protocol is Fibre Channel.
Claim 33
Dependent Claim 11 words
The method of claim 19 wherein the first protocol is InfiniBand.
Claim 34
Dependent Claim 34 words
The method of claim 19 wherein the received data is a data frame or a data packet, and wherein the identified portions of the received data include a header portion of the received data.
Claim 35
Dependent Claim 34 words
The method of claim 19 wherein the received data is a data frame or a data packet, and wherein the identified portions of the received data include a payload portion of the received data.
Claim 36
Dependent Claim 23 words
The method of claim 19 wherein the identified portions of the received data include entries in a header portion of the received data.
Claim 37
Dependent Claim 22 words
The method of claim 19 wherein the identified portions of the received data include portions of a payload of the received data.
Claim 38
Dependent Claim 27 words
The method of claim 19 including blocking transmittal of the received data when it is determined that one or more of the identified portions include prohibited content.
Claim 39
Dependent Claim 31 words
The method of claim 19 wherein the analyzing of the contents included in the identified portions includes determining whether at least some of the identified portions do not include required content.
Claim 40
Dependent Claim 21 words
The method of claim 19 including providing firewall functionality based on the analyzing of the contents included in the identified portions.
Claim 41
Dependent Claim 25 words
The method of claim 19 wherein the multiple techniques performed in parallel further include formatting the received data in accordance with a distinct second protocol.
Claim 42
Dependent Claim 35 words
The method of claim 19 wherein the multiple techniques performed in parallel further include analyzing at least some of the identified portions in order to classify a type of those portions of the received data.
Claim 43
Dependent Claim 42 words
The method of claim 40 wherein the classifying of the type of the identified portions of the received data includes classifying those identified portions in a manner based on an application layer protocol used to format the data of those identified portions.
Claim 44
Dependent Claim 26 words
The method of claim 19 wherein the method is performed by a multi-protocol edge switch connected to at least two networks that each use distinct protocols.
Claim 45
Dependent Claim 24 words
The method of claim 19 wherein the multiple processing techniques are each performed using distinct processing capabilities of a computing system performing the method.
Claim 46
Dependent Claim 17 words
The method of claim 43 wherein the distinct processing capabilities are distinct processors of the computing system.
Claim 47
Dependent Claim 132 words
A computer-readable medium whose contents cause a computing device to process received data communications by performing a method comprising: receiving data to be communicated through a network to a destination; and processing at least portions of the received data that are identified as being of interest by performing each of multiple techniques in parallel, the multiple techniques including, determining whether a disallowed type of content is present in at least some of the identified portions of the received data; and load balancing multiple possible destinations in order to determine the destination to which the received data will be transmitted wherein the multiple techniques performed in parallel further include formatting the received date in accordance with a second protocol distinct from a first protocol in accordance with which the received data is formatted.
Claim 48
Dependent Claim 132 words
A computer-readable medium whose contents cause a computing device to process received data communications by performing a method comprising: receiving data to be communicated through a network to a destination; and processing at least portions of the received data that are identified as being of interest by performing each of multiple techniques in parallel, the multiple techniques including, determining whether a disallowed type of content is present in at least some of the identified portions of the received data; and load balancing multiple possible destinations in order to determine the destination to which the received data will be transmitted wherein the multiple techniques performed in parallel further include formatting the received date in accordance with a second protocol distinct from a first protocol in accordance with which the received data is formatted.
Claim 49
Dependent Claim 30 words
The computer-readable medium of claim 45 wherein the multiple techniques performed in parallel further include classifying a type of at least some of the identified portions of the received data.
Claim 50
Dependent Claim 21 words
The computer-readable medium of claim 45 wherein the method further comprises indicating to communicate the received data to the determined destination.
Claim 51
Dependent Claim 36 words
The computer-readable medium of claim 45 wherein the portions of the received data to be processed are identified by deconstructing the received data a single time, each of the multiple techniques using the deconstructed received data.
Claim 52
Dependent Claim 17 words
The computer-readable medium of claim 45 wherein the computer-readable medium is a memory of a computer system.
Claim 53
Dependent Claim 23 words
The computer-readable medium of claim 45 wherein the computer-readable medium is a data transmission medium transmitting a generated data signal containing the contents.
Claim 54
Dependent Claim 22 words
The computer-readable medium of claim 45 wherein the contents are instructions that when executed cause the computing device to perform the method.
Claim 55
Dependent Claim 137 words
A computing device for processing received data communications, comprising: a first component capable of receiving data to be communicated through a network to a destination; and multiple processing components each capable of performing one of multiple techniques in parallel in order to process at least portions of the received data, the multiple techniques including, analyzing contents included in at least some of the identified portions in order to determine whether a specified type of content is present; and determining the destination for the received data in a manner so as to load balance multiple possible destinations wherein the computing device is a multi-protocol node on the network, and wherein the multiple techniques include formatting the received data in accordance with a second protocol distinct from a first protocol in accordance with which the received data is formatted.
Claim 56
Dependent Claim 137 words
A computing device for processing received data communications, comprising: a first component capable of receiving data to be communicated through a network to a destination; and multiple processing components each capable of performing one of multiple techniques in parallel in order to process at least portions of the received data, the multiple techniques including, analyzing contents included in at least some of the identified portions in order to determine whether a specified type of content is present; and determining the destination for the received data in a manner so as to load balance multiple possible destinations wherein the computing device is a multi-protocol node on the network, and wherein the multiple techniques include formatting the received data in accordance with a second protocol distinct from a first protocol in accordance with which the received data is formatted.
Claim 57
Dependent Claim 15 words
The computing device of claim 52 wherein the computing device is a multi-protocol edge switch.
Claim 58
Dependent Claim 18 words
The computing device of claim 52 wherein the first component is executing in memory of the computing device.
Claim 59
Dependent Claim 20 words
The computing device of claim 52 wherein the processing components each execute on a distinct processor of the computing device.

References Cited (Backward Citations)

US6215412B1 Cited
US6034956A Cited
US5727051A Cited
US5892766A Cited
US5940596A Cited
US6147976A Cited
US5872783A Cited
US6363077B1 Cited
US6434618B1 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2009-01-30 2009-08-01 2010-01-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2013-01-30 2013-08-01 2014-01-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2017-01-30 2017-08-01 2018-01-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag