Claims Analysis
Total Claims: 55
Claim 1
Independent Claim
167 words
A network element for a packet-based computer network comprising: a plurality of dynamically loaded programs, each of the programs being loaded into the network element separate from packets flowing from the computer network through the network element, each of the programs comprising separate instructions for: (1) defining one or more characteristics that a packet flowing through the network element from the computer network has to have for the program to execute on the packet; and (2) manipulating the packet if it has the defined characteristics associated with that program; and; a dispatcher for: (1) receiving a packet having the defined characteristics associated with one or more of the plurality of programs from the packets flowing through the network element from the computer network; (2) operating cooperatively with each program for which the received packet has the defined characteristics associated with that program to manipulate the received packet in accordance with the instructions of that program; and (3) inserting the manipulated received packet back into the computer network.
Claim 2
Dependent Claim
167 words
A network element for a packet-based computer network comprising: a plurality of dynamically loaded programs, each of the programs being loaded into the network element separate from packets flowing from the computer network through the network element, each of the programs comprising separate instructions for: (1) defining one or more characteristics that a packet flowing through the network element from the computer network has to have for the program to execute on the packet; and (2) manipulating the packet if it has the defined characteristics associated with that program; and; a dispatcher for: (1) receiving a packet having the defined characteristics associated with one or more of the plurality of programs from the packets flowing through the network element from the computer network; (2) operating cooperatively with each program for which the received packet has the defined characteristics associated with that program to manipulate the received packet in accordance with the instructions of that program; and (3) inserting the manipulated received packet back into the computer network.
Claim 3
Dependent Claim
24 words
The network element of claim 1 wherein each of the plurality of dynamically loaded programs is either a privileged program or an unprivileged program.
Claim 4
Dependent Claim
65 words
The network element of claim 2 wherein before a particular one of the dynamically loaded programs operates cooperatively with the dispatcher on a received packet having the defined characteristics associated with that program, the dispatcher verifies that a privilege level of that particular program is of a type that allows the received packet to be manipulated in accordance with the instructions of that particular program.
Claim 5
Dependent Claim
26 words
The network element of claim 1 wherein more than one of the plurality of dynamically loaded programs execute in parallel on packets in different packet flows.
Claim 6
Dependent Claim
27 words
The network element of claim 1 wherein more than one of the plurality of dynamically loaded programs execute in succession on packets in a single packet flow.
Claim 7
Dependent Claim
31 words
The network element of claim 1 wherein one or more of the plurality of programs is loaded into the network element through a program injector locally connected to the network element.
Claim 8
Dependent Claim
35 words
The network element of claim 1 wherein one or more of the plurality of programs is loaded into the network element through a program injector remotely connected over a network connection to the network element.
Claim 9
Dependent Claim
16 words
The network element of claim 1 wherein the dispatcher is a dispatcher process on a computer.
Claim 10
Dependent Claim
35 words
The network element of claim 1 wherein the dispatcher sends a received packet having the defined characteristics associated with one or more of the plurality of programs to at least one such program for manipulation.
Claim 11
Dependent Claim
42 words
The network element of claim 1 wherein the dispatcher manipulates a received packet having the defined characteristics associated with one or more of the plurality of the programs in accordance with instructions provided to the dispatcher in at least one such program.
Claim 12
Dependent Claim
55 words
The network element of claim 1 wherein one or more of the plurality of dynamically loaded programs performs packet manipulation functions from the group comprising: encrypting a packet payload, decrypting a packet payload, translating a source address of a packet, translating a destination address of a packet, web dispatching for load balancing, and firewall protection.
Claim 13
Dependent Claim
17 words
The network element of claim 1 wherein the network element is implemented on a Linux operating system.
Claim 14
Dependent Claim
37 words
The network element of claim 1 wherein the dispatcher sends only a packet header of a packet having the defined characteristics associated with one or more of the programs to at least one such program for manipulation.
Claim 15
Dependent Claim
167 words
A network element for a packet-based computer network comprising: means for dynamically loading a plurality of programs, said loading means loading each of the programs separately from packets flowing from the computer network through the network element, each of the programs comprising instructions for: (1) defining one or more characteristics that a packet flowing through the network element from the computer network has to have for the program to execute on the packet; and (2) manipulating the packet if is has the defined characteristics associated with that program; and; a dispatcher for: (1) receiving a packet having the defined characteristics associated with one or more of the plurality of programs from the packets flowing through the network element from the computer network; (2) operating cooperatively with each loaded program for which the received packet has the defined characteristics associated with that program to manipulate the received packet in accordance with the instructions of that program; and (3) inserting the manipulated received packet back into the computer network.
Claim 16
Dependent Claim
167 words
A network element for a packet-based computer network comprising: means for dynamically loading a plurality of programs, said loading means loading each of the programs separately from packets flowing from the computer network through the network element, each of the programs comprising instructions for: (1) defining one or more characteristics that a packet flowing through the network element from the computer network has to have for the program to execute on the packet; and (2) manipulating the packet if is has the defined characteristics associated with that program; and; a dispatcher for: (1) receiving a packet having the defined characteristics associated with one or more of the plurality of programs from the packets flowing through the network element from the computer network; (2) operating cooperatively with each loaded program for which the received packet has the defined characteristics associated with that program to manipulate the received packet in accordance with the instructions of that program; and (3) inserting the manipulated received packet back into the computer network.
Claim 17
Dependent Claim
22 words
The network element of claim 14 wherein each of the plurality of programs is either a privileged program or an unprivileged program.
Claim 18
Dependent Claim
66 words
The network element of claim 15 wherein before a particular one of the plurality of programs operates cooperatively with the dispatcher on a received packet having the defined characteristics associated with a particular program, the dispatcher verifies that a privilege level of that particular program is of a type that allows the received packet to be manipulated in accordance with the instructions of that particular program.
Claim 19
Dependent Claim
24 words
The network element of claim 14 wherein more than one of the plurality of programs execute in parallel on packets in different packet flows.
Claim 20
Dependent Claim
25 words
The network element of claim 14 wherein more than one of the plurality of programs execute in succession on packets in a single packet flow.
Claim 21
Dependent Claim
28 words
The network element of claim 14 wherein the loading means locally loads the one or more of the programs through a program injector connected to the network element.
Claim 22
Dependent Claim
31 words
The network element of claim 14 wherein the loading means remotely loads one or more of the programs through a program injector connected over a network connection to the network element.
Claim 23
Dependent Claim
16 words
The network element of claim 14 wherein the dispatcher is a dispatcher process on a computer.
Claim 24
Dependent Claim
32 words
The network element of claim 14 wherein the dispatcher sends a received packet having the defined characteristics associated with one or more different programs to at least one such program for manipulation.
Claim 25
Dependent Claim
33 words
The network element of claim 14 wherein the dispatcher manipulates a received packet having the defined characteristics associated with one or more different programs to the dispatcher in at least one such program.
Claim 26
Dependent Claim
55 words
The network element of claim 14 wherein one or more of the plurality of dynamically loaded programs performs packet manipulation functions from the group comprising: encrypting a packet payload, decrypting a packet payload, translating a source address of a packet, translating a destination address of a packet, web dispatching for load balancing, and firewall protection.
Claim 27
Dependent Claim
17 words
The network element of claim 14 wherein the network element is implemented on a Linux operating system.
Claim 28
Dependent Claim
36 words
The network element of claim 14 wherein the dispatcher sends only a packet header of a packet having the defined characteristics associated with at least one of the plurality of programs to that program for manipulation.
Claim 29
Dependent Claim
18 words
The network element of claim 14 wherein the network element is implemented as software running on a client.
Claim 30
Dependent Claim
18 words
The network element of claim 14 wherein the network element is implemented as software running on a server.
Claim 31
Dependent Claim
14 words
The network element of claim 14 wherein the network element functions as a router.
Claim 32
Dependent Claim
15 words
The network element of claim 14 wherein the network element functions as a network gateway.
Claim 33
Independent Claim
115 words
A method for manipulating a packet transmitted on a packet-based computer network at a network element through which packets transmitted on the computer network flow, the method comprising the steps of: receiving the packet; determining, for each of a plurality of programs dynamically loaded into the network element separately from packets transmitted on the computer network, whether the packet has one or more associated program-defined characteristics that the packet has to have for the program to execute on the packet; manipulating the received packet in accordance with instructions of each of the programs for which the packet has the defined characteristics associated with that program; and inserting the manipulated packet back into the computer network.
Claim 34
Independent Claim
115 words
A method for manipulating a packet transmitted on a packet-based computer network at a network element through which packets transmitted on the computer network flow, the method comprising the steps of: receiving the packet; determining, for each of a plurality of programs dynamically loaded into the network element separately from packets transmitted on the computer network, whether the packet has one or more associated program-defined characteristics that the packet has to have for the program to execute on the packet; manipulating the received packet in accordance with instructions of each of the programs for which the packet has the defined characteristics associated with that program; and inserting the manipulated packet back into the computer network.
Claim 35
Dependent Claim
21 words
The method of claim 31 wherein each of the plurality of programs is either a privileged program or an unprivileged program.
Claim 36
Dependent Claim
56 words
The method of claim 32 wherein prior to the step of manipulating a received packet, the method further comprises the step of verifying that a privilege level of a program that is executing on the packet is of a type that allows the received packet to be manipulated in accordance with the instructions of that program.
Claim 37
Dependent Claim
23 words
The method of claim 31 wherein more than one of the plurality of programs execute in parallel on packets in different packet flows.
Claim 38
Dependent Claim
24 words
The method of claim 31 wherein more than one of the plurality of programs execute in succession on packets in a single packet flow.
Claim 39
Dependent Claim
31 words
The method of claim 31 further comprising the step of loading one or more of the programs into the network element through a program injector locally connected to the network element.
Claim 40
Dependent Claim
35 words
The method of claim 31 further comprising the step of loading one or more of the programs into the network element through a program injector remotely connected over a network connection to the network element.
Claim 41
Dependent Claim
21 words
The method of claim 31 wherein the method is implemented as a process in a series of instructions in a computer.
Claim 42
Dependent Claim
45 words
The method of claim 31 further comprising the step of sending a packet determined to have the defined characteristics associated with one or more of the programs to at least one such program, wherein the step of manipulating the packet is performed by that program.
Claim 43
Dependent Claim
30 words
The method of claim 31 wherein the step of manipulating the packet is performed outside at least one of the plurality of programs in accordance with instructions of the program.
Claim 44
Dependent Claim
56 words
The method of claim 31 wherein one or more of the plurality of programs provides instructions for manipulating the packet to perform packet manipulation functions from the group comprising: encrypting a packet payload, decrypting a packet payload, translating a source address of a packet, translating a destination address, web dispatching for load balancing, and firewall protection.
Claim 45
Dependent Claim
15 words
The method of claim 31 wherein the method is implemented using a Linux operating system.
Claim 46
Dependent Claim
118 words
A computer readable medium storing computer program instructions which are executable on a computer system implementing a network element through which packets transmitted on a packet-based computer network flow, said computer program instructions comprising instructions defining the steps of: determining for each of a plurality of gateway programs loaded into said computer program separate from packets transmitted on the computer network, whether a received packet from the computer network has one or more defined characteristics that the packet has to have for the gateway program to execute on the packet; and manipulating the received packet in accordance with instructions of each of the gateway programs for which the packet has the defined characteristics associated with that gateway program.
Claim 47
Dependent Claim
118 words
A computer readable medium storing computer program instructions which are executable on a computer system implementing a network element through which packets transmitted on a packet-based computer network flow, said computer program instructions comprising instructions defining the steps of: determining for each of a plurality of gateway programs loaded into said computer program separate from packets transmitted on the computer network, whether a received packet from the computer network has one or more defined characteristics that the packet has to have for the gateway program to execute on the packet; and manipulating the received packet in accordance with instructions of each of the gateway programs for which the packet has the defined characteristics associated with that gateway program.
Claim 48
Dependent Claim
26 words
The computer readable medium of claim 43 wherein each of the plurality of gateway programs is either a privileged gateway program or an unprivileged gateway program.
Claim 49
Dependent Claim
70 words
The computer readable medium of claim 44 wherein prior to the step of manipulating the received packet in accordance with the instructions of the particular gateway program, the computer instructions further comprise the step of verifying that a privilege level of a gateway program that is executing on the packet is of a type that allows the packet to be manipulated in accordance with the instructions of that gateway program.
Claim 50
Dependent Claim
35 words
The computer readable medium of claim 43 wherein more than one of the plurality of gateway programs are executable in parallel on packets flowing through the network element when the packets in different packet flows.
Claim 51
Dependent Claim
32 words
The computer readable medium of claim 43 wherein more than one of the plurality of the plurality of the gateway programs are executable in succession on packets in a single packet flow.
Claim 52
Dependent Claim
31 words
The computer readable medium of claim 43 wherein one or more of the gateway programs are loaded through a program injector locally connected over a network connection to the computer system.
Claim 53
Dependent Claim
27 words
The computer readable medium of claim 43 wherein one or more of the gateway programs are loaded through a program injector remotely connected to the computer system.
Claim 54
Dependent Claim
25 words
The computer readable medium of claim 43 wherein the step of manipulating the received packet is performed by one or more of the gateway programs.
Claim 55
Dependent Claim
34 words
The computer readable medium of claim 43 wherein the step of manipulating the received packet is performed outside one or more of the gateway programs in accordance with the instructions of the gateway program.