Tunneling is the practice of transporting one protocol (and its data) through another. Each data packet is encapsulated in another data packet, making it more difficult for third parties to read during transit.

The data in the tunnel is also encrypted so that only the recipient can decrypt it. Thus, the contents of the Internet traffic remain completely hidden, even from the Internet service provider.

SSH Tunneling Principle