Tunneling is a term used to describe special type of connections.
The term does explain its self, meaning that when implementing tunneling, you create a virtual secure tunnel which can carry sensitive data within it. People sniffing the tunnel only get jumbled data that makes no sence.
There are a few different ways to implement it, the most common is PPTP- Point to Point Tunnel Protocol. A quick search on google will reveal a lot of great resources on the protocol as it hasnt been covered yet here.
Implementing it would require both sides, client and Firewall/server to support it.