In the most commonly used scenario, IPsec allows an encrypted tunnel to be created
between two private networks. It also allows for authenticating the two ends of the tunnel.
However, the IPsec protocol allows only for the encapsulation and encryption of IP data
(unlike GRE, which can tunnel but not encrypt non-IP traffic), so to create a tunnel for non-
IP-based traffic, IPsec must be used in conjunction with a protocol such as GRE, which
allows for the tunneling of non-IP protocols.