Method, apparatus and computer program product for a network...

Electrical computers and digital processing systems: support – Multiple computer communication using cryptography – Protection at a particular protocol layer

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C713S154000, C709S242000, C709S243000

Reexamination Certificate

active

06772347

ABSTRACT:

FIELD OF THE INVENTION
The present invention relates to the field of computer networks. In particular, the present invention relates to a method, apparatus and computer program product for providing network security.
BACKGROUND OF THE INVENTION
A packet switch communication system includes a network of one or more routers connecting a plurality of users. A packet is the fundamental unit of transfer in the packet switch communication system. A user can be an individual user terminal or another network. A router is a switching device that receives packets containing data or control information on one port and, based on destination information contained within the packets, routes the packets out another port to their final destination, or to some intermediary destination(s). Conventional routers perform this switching function by evaluating header information contained within the packet in order to determine the proper output port for a particular packet.
As known, a communications network can be a public network, such as the Internet, in which data packets are passed between users over untrusted, i.e., nonsecure communication links. Alternatively, various organizations, typically corporations, use what is known as an intranet communications network, accessible only by the organization's members, employees, or others having access authorization. Intranets typically connect one or more private servers, such as a local area network (LAN). The network configuration in a preferred embodiment of this invention can include a combination of public and private networks. For example, two or more LANs can be coupled together with individual terminals using a public network, such as the Internet. A network point that acts as an entrance to another network is known in the art as a gateway.
Conventional packet switched communication systems that include links between public and private networks typically include means to safeguard the private networks against intrusions through the gateway provided at the interface of the private and public networks. The means designed to prevent unauthorized access to or from a private are commonly known as firewalls, which can be implemented in both hardware and software, or a combination of both. Thus, a firewall is a device that can be coupled in-line between a public network and a private network for screening packets received from the public network.
Referring to
FIG. 1
, a conventional packet switch communication system
100
can include two (or more) private networks
102
a
and
102
b
coupled by a public network
104
for facilitating the communication between a plurality of user terminals
106
. Each private network
102
can include one or more servers and a plurality of individual terminals. Each private network
102
can be an intranet, such as a LAN. Public network
104
can be the Internet, or other public network having untrusted links for linking packets between private networks
102
a
and
102
b
. In a preferred embodiment, at each gateway between a private network
102
and public network
104
there is a firewall
110
.
The architecture of an illustrative prior art firewall is shown in
FIG. 2
a
. The firewall
110
generally includes one or more public network links
120
, one or more private network links
122
, and memory controller
124
coupled to the network links by a PCI bus
125
. Memory controller
124
is also coupled by a memory bus
129
to a memory (RAM)
126
and a firewall engine, implemented in a preferred embodiment as an ASIC
128
. The firewall engine ASIC
128
performs packet screening prior to routing packets through to private network
102
. The firewall engine ASIC
128
processes the packets to enforce an access control policy, screening the packets in accordance with one or more sets of rules. The rules are described in more detail below. A central processor (CPU)
134
is coupled to memory controller
124
by a CPU bus
132
. CPU
134
oversees the memory transfer operations on all buses shown. Memory controller
124
is a bridge connecting CPU bus
132
, memory bus
129
, and PCI bus
125
.
In operation, packets are received at public network link
120
. Each packet is transferred on bus
125
to, and routed through, memory controller
124
and on to RAM
126
via memory bus
129
. When firewall engine
128
is available, packets are fetched. using memory bus
129
and processed by the firewall engine
128
. After processing, the packet is returned to RAM
126
using memory bus
129
. Finally the packet is retrieved by the memory controller
124
using memory bus
129
, and routed to private network link
122
. The screening rules implemented by the firewall engine
128
are typically searched in linear order, beginning with the internal rule memory. Certain aspects of the rule structure are described below.
As known in the art, a rule is a control policy for filtering incoming and outgoing packets. Rules specify actions to be applied as against certain packets. When a packet is received for processing through a rule search, the packet's IP header, TCP header, or UDP header may require inspecting. A rule will generally include, at a minimum, source/destination IP addresses, UDP/TCP source/destination ports and transport layer protocol. Additional criteria may be used by the rules as well.
Generally, the address information is used as matching criterion—in other words to match a rule, a packet must have come from a defined source IP address and its destination must be the defined destination IP address. The UDP/TCP source/destination port specifies what client or server process the packet originates from on the source machine. The firewall engine can be configured to permit or deny a packet based upon these port numbers. The rule may include a range of values or a specific value for a TCP/UDP port. The transport layer protocol specifies which protocol above the IP layer, such as TCP or UDP, the policy rule is to be enforced against.
The firewall engine described above essentially screens packets using an access control list (ACL), and may be referred to as an ACL engine. That is, it performs a simple comparison of various matching criteria of an incoming IP packet—typically source, destination, port and protocol—to each rule in a rule set in sequence. Based upon this comparison, an incoming IP packet is either allowed or denied. A data-flow chart for this firewall engine is shown in FIG.
5
.
It will be appreciated that using a fixed set of rules can be restrictive in many practical applications. Therefore, it is desirable to provide a system and method capable of adding rules to the rule set of the firewall engine dynamically—that is, to extract from a sequence of packets information, such as the port number and IP address, and generate new rules using this information. However, generating these new rules dynamically would increase the complexity of the comparison and decrease the speed of the firewall engine. There is therefore a need in the art for a firewall engine which can generate rules dynamically, based upon information extracted from incoming packets, with a limited impact on the speed of the firewall engine.
SUMMARY OF THE INVENTION
In accordance with a preferred embodiment, an apparatus, method and computer program product for providing network security is described. The apparatus includes an engine for sorting incoming IP packets into initially allowed and initially denied packets using a fixed set of rules. The packets are then further sorted by a second engine. In one embodiment, the engine further sorts the initially denied packets into allowed packets and denied packets, using dynamically generated rules. The denied packets are dropped and the allowed packets are permitted to enter the network.
Likewise, the method includes the step of sorting incoming IP packets into initially allowed and initially denied packets using a fixed set of rules. The packets are then further sorted. In one embodiment, additional steps include sorting the initially denied packets into allowed packets and

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

Method, apparatus and computer program product for a network... 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, apparatus and computer program product for a network..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method, apparatus and computer program product for a network... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3344895

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