This page is very incomplete at the moment.
There are a number of different characteristics by which you can categorize firewalls.
The following characteristics may be mixed. Many real world firewalls may be some combination of the following types.
This type of firewall requires considerable skill to administer correctly. It offers the highest performance. It preserves all information about the source and destination, which is important to security conscious servers which use this information to aid in logging and authentication. It does not filter the data streams based on content. All other things being equal, packet filters are the least vulnerable to attaks against the firewall itself. Packet filters normally only perform modifications which do not affect the data stream itself and which normally occur on the internet anyway (such as breaking packets into fragments or reassembly of fragments). A basic packet filter based firewall allows all IP packets permitted by the firewall rules to pass (although it may reassemble fragments and/or refragment before doing so).
Proxies usually require proxy aware applications or proxy aware users. Proxy based firewalls can filter based on content of the data stream and can modify the data stream. This allows them to protect weak server applications inside the firewall against certain types of known attacks but at the expense of a more complicated firewall which is therefore more vulnerable to attacks against the firewall itself; whether this risk is warranted depends on how poorly written the application being protected is. A basic proxy based firewall does not forward any IP packets and only forwards the data streams for which specific application proxies have been installed. A proxy may hide the identities of hosts inside the firewall from hosts outside a firewall and vice versa. Attempting to put software developers and other technically savvy users behind a proxy based firewall could result in death threats.
A transparent proxy combines some of the features of the packet filter and the proxy based firewall. A transparent proxy can inspect and/or modify the contents of the application data stream while optionally preserving and acting on the source and destination information in the IP header. Since the original source and destination information in the packets is availible to the transparent proxy, neither client applications nor users need to be firewall aware to use the services protected by the proxy.
In some cases, a firewall is used to allow a large number of internal hosts to use a small number of global addresses. IP Masquerading was primarily developed to handle these situations although it has certain uses for handling certain problematic protocols.
The term "bastion host" may refer to a host which is connected to your internal and external networks with no forwarding path for IP packets either through or around the bastion host, in which case it can be considered a type of firewall, or it may refer to a host located in a "de-militarized zone (DMZ)" between the inside nework and the outside network, typically with one or more firewalls separating the demilatarized zone from either or both the internal and external networks.
Pentium 120 with tulip cards: Packet Size (bytes) 64 128 256 512 1024 1280 1518 Throughput (Mbit/s) 9.560 19.00 34.71 64.81 97.95 98.36 98.56 Est Packets/sec 18700 18600 16900 15800 12000 9600 8100 Pentium II/266 with DEC DE500 cards: Packet Size (bytes) 64 128 256 512 1024 1280 1518 Throughput (Mbit/s) 15.25 32.82 59.36 95.87 97.98 98.38 98.56 Est Packets/sec 29800 32000 29000 23400 12000 9600 8100He particularly noted that the linux kernel timeslicing limits throughput to 30K packets per second. Robert Olsson
Note that these numbers apply to a basic router with no firewall rules or large dynamic router tables. These tables are also for two interfaces. It is not clear how those numbers will scale for more interfaces.
Most of these are the result of an RFC search on "firewall or proxy".
This file is maintained by Mark Whitis (whitis@freelabs.com).
|
Software Development - Electronic Design - Embedded Systems - Device Drivers - System/Network Administration and Security - Motor Control, RobotCNC - Linux/Un*x - 25+ years experience The author of these pages is looking for a new gig. [RESUME] |
| Engineers and electronic hobbyists: The new Open Symbol Project is creating open schematic symbols and PCB footprints for a variety of different CAD packages. |
| Mark Whitis's Website | Home Page | Linux | Book: Linux Programming Unleashed | My Resume | Genealogical Data | Contact Info | Security | About |
All email messages received must pass the turing test or they will be considered SPAM. If it could have been written by a machine, it was.
Under no circumstances are you to email me with questions regarding windoze, any other microsoft operating system or application, or any software which runs under any form of windoze.
*