In computing, a firewall is a network security system that controls and monitors the outgoing and in going network traffic as per the security rules that are already determined. Generally, a firewall establishes a wall between a secure, trusted internal network and another outside network like the internet which is considered not to be trusted or secured. Sometimes firewalls are classified as either network firewalls or host-based firewalls. A software application working with general purpose hardware or hardware based firew
All computer applicants who filter traffic within different networks is known as a network firewall. The host based firewalls give a layer of software on one host which controls network traffic in and out of that particular computer. The firewall appliances might also provide other features to the internal network that they are currently protecting like acting as VPN or DHCP server for that network.
The firewall technology was established in the late 1980s when the internet was entirely new technology according to its connectivity and global use. The derivatives to firewalls for network security were routers used in the late 1980s. First generation firewall is called packet filters. This firewall looked at network addresses and ports of the packet and decided whether that packet should be blocked or allowed.
The second generation is known as stateful filters, and the firewalls were called Circuit-level gateways. This naming was given by three fellow workers from AT&T Bell Laboratories Dave Presotto, Janardan Sharma and Kshitij Nigam. Those were the persons that developed the firewall. Second generation firewall works of their first generation models and also operate up to layer four, i.e., the transport layer of the OSI model whereas the third and the last generation of the firewall is called application layer.
Application Firewall also is known as Firewall Toolkit (FWTK) was developed by Marcus Ranum, Wei Xu, and Peter Churchyard. The main benefit of application layer firewall filtering is that it can understand some protocols and applications like Domain Name System, File Transfer Protocol, and Hypertext Transfer Protocol. This is needed as it is capable of detecting whether any unwanted contract is trying to go past the firewall on an allowed port or recognize whether a protocol is getting abused in a harmful manner.