Tunneling over computer networks is a process which creates a secure logical connection between two endpoints by encapsulating various protocols . Tunneling is a method of constructing a network in which a network protocol is encapsulated in another . From conventional layered network models (such as the OSI or TCP/IP) tunneling characterized in that the encapsulated protocol relates to the same or a lower level than that used as a tunnel.
The essence of tunneling is to "pack" the transmitted portion of the data , together with the service fields , in the new "envelope" to ensure the confidentiality and integrity of the transmitted portions, including service field. Tunneling can be used on the network and application levels . The combination of tunneling and encryption allows for closed virtual private networks (VPN). Tunneling is generally used for matching transport protocols or to create a secure connection between network nodes .