The term tunneling protocol is used to describe when one network protocol called the payload protocol is encapsulated within a different delivery protocol. In computing, a protocol is a convention or standard that controls or enables the connection Communication, and Data transfer between two computing In Computer networking encapsulation is a method of designing modular communication protocols in which logically separate functions in the network are abstracted from Reasons to use tunnelling include carrying a payload over an incompatible delivery network, or to provide a secure path through an untrusted network.
Tunneling typically contrasts with a layered protocol model such as those of OSI or TCP/IP. The Open Systems Interconnection (usually abbreviated to OSI) was an effort to standardize networking that was started in 1982 by the International The Internet Protocol Suite (commonly TCP/IP) is the set of Communications protocols used for the Internet and other similar networks The tunnel protocol is usually (but not always) at a higher level than the payload protocol, or at the same level. To understand a particular protocol stack, both the payload and delivery protocol sets must be understood. Protocol encapsulation that is carried out by conventional layered protocols, in accordance with the OSI model or TCP/IP model, for example HTTP over TCP over IP over PPP over a V. The Open Systems Interconnection Basic Reference Model (OSI Reference Model or OSI Model) is an abstract description for layered communications and computer Network protocol The TCP/IP model is a specification for computer network protocols created in the 1970s by DARPA, an agency of the United States Department of Defense. 92 modem, should not be considered as tunneling.
As an example of network layer over network layer, Generic Routing Encapsulation (GRE), which is a protocol running over IP (IP Protocol Number 47), often is used to carry IP packets, with RFC 1918 private addresses, over the Internet using delivery packets with public IP addresses. Generic Routing Encapsulation (GRE is a Tunneling protocol designed to encapsulate a wide variety of Network layer packets inside IP tunneling The Internet Protocol ( IP) is a protocol used for communicating data across a Packet-switched Internetwork using the Internet Protocol In this case, the delivery and payload protocols are compatible, but the payload addresses are incompatible with those of the delivery network.
In contrast, an IP payload might believe it sees a data link layer delivery when it is carried inside the Layer 2 Tunneling Protocol, which appears to the payload mechanism as a protocol of the data link layer. L2TP, however, actually runs over the transport layer using User Datagram Protocol (UDP) over IP. User Datagram Protocol ( UDP) is one of the core protocols of the Internet Protocol Suite. The IP in the delivery protocol could run over any data link protocol from IEEE 802.2 over IEEE 802.3 (i. IEEE 8022 is the IEEE 802 standard defining Logical Link Control (LLC which is the upper portion of the data link layer for Local area networks The IEEE 8023 is a collection of IEEE standards defining the Physical layer, and the media access control (MAC sublayer of the Data link layer, e. , standards-based Ethernet) to the Point-to-Point Protocol (PPP) over a dialup modem link. Ethernet is a family of frame -based Computer networking technologies for Local area networks (LANs In networking, the Point-to-Point Protocol, or PPP, is a data link protocol commonly used to establish a direct connection between two nodes
Tunneling protocols may use data encryption to transport insecure payload protocols over a public network such as the Internet thereby providing VPN functionality. IPSec has an end-to-end Transport Mode, but also can be operated in a Tunneling Mode through a trusted security gateway. Internet Protocol Security ( IPsec) is a suite of protocols for securing Internet Protocol (IP communications by authenticating and/or encrypting
Contents |
Examples of tunneling protocols include:
Datagram-based:
Stream-based:
An SSH tunnel (sometimes referred to as a VPN) is an encrypted network tunnel created through an SSH connection. Secure Shell or SSH is a Network protocol that allows data to be exchanged using a Secure channel between two networked devices SSH is frequently used to tunnel insecure traffic over the Internet in a secure way. For example, Windows machines can share files using the SMB protocol, which is not encrypted. In Computer networking, Server Message Block ( SMB) operates as an application-level network protocol mainly used to provide Shared access If you were to mount a Windows filesystem remotely through the Internet, someone snooping on the connection could see your files. To mount an SMB file system securely, one can establish an SSH tunnel that routes all SMB traffic to the fileserver inside an SSH-encrypted connection. Even though the SMB traffic itself is insecure, because it travels within an encrypted connection it becomes secure.
In order to create an SSH tunnel, the SSH client is configured to forward a specified remote port and IP address (that is accessible on the SSH server) to a port on the local machine. An Internet Protocol ( IP) address is a numerical identification ( Logical address) that is assigned to devices participating in a Computer network Once the SSH connection has been established, the user can connect to the specified local port to access the network services that would otherwise be available only at the remote IP address and port.
SSH tunnels provide a means to bypass firewalls that prohibit certain Internet services provided that outgoing connections on port 22 are allowed. In Computer networking, a port is an application-specific or process-specific software construct serving as a communications endpoint used by Transport Layer protocols For example, many institutions prohibit users from accessing Internet web pages (port 80) directly without first being examined by a proxy/filter device. However, if users are able to connect to an external SSH server, it is possible for them to create an ssh tunnel to forward port 80 on an external web server to a given port (probably port 80) on their local machine, and thus access that web page by typing http://localhost in their browser. A web browser is a software application which enables a user to display and interact with text images videos music games and other information typically located on a
More commonly, users may set up their own proxy server at home, using free software such as Squid, and construct a tunnel from their workstation to the proxy. In Computer networks a proxy server is a server (a computer system or an application program which services the requests of its clients by forwarding Squid is a Proxy server and Web cache daemon. It has a wide variety of uses from speeding up a Web server by caching repeated requests Next, by configuring their browser to use localhost rather than the corporate proxy server, users can access any web page they want, bypassing their company's filters and firewalls. In Computer networking of Unix-like operating systems localhost (meaning "this computer" is the standard Hostname given to the address of the
Another method is to use dynamic port forwarding, which creates a local SOCKS 4/5 proxy server that a user can connect to, effectively creating an encrypted tunnel to the remote SSH server. SOCKS is an Internet protocol that allows Client-server applications to transparently use the services of a network firewall. The user can then configure his/her applications to use the SOCKS proxy server, usually for bypassing filters and firewalls.
Tunneling can also be used to traverse a firewall (firewall policy permitting). In this case, protocols that are normally blocked by the firewall are encapsulated inside a commonly allowed protocol such as HTTP. Hypertext Transfer Protocol ( HTTP) is a Communications protocol for the transfer of information on the Internet. If the policy on the firewall does not exercise enough control over HTTP requests, this can sometimes be used to circumvent the intended firewall policy.
Another HTTP-based tunneling method uses the HTTP CONNECT method/command. Hypertext Transfer Protocol ( HTTP) is a Communications protocol for the transfer of information on the Internet. This command tells an HTTP proxy to make a TCP connection to the specified server:port, and relay data back and forth between that connection and the client connection. Therefore, for security reasons, CONNECT-capable HTTP proxies commonly restrict access to the CONNECT method to accessing TLS/SSL-based HTTPS services only.
This article was originally based on material from the Free On-line Dictionary of Computing, which is licensed under the GFDL. A tunnel broker is a service which provides a Network tunnel. HTTP Tunneling is a technique by which communications performed using various network Protocols are encapsulated using the HTTP protocol the network protocols in question The Free On-line Dictionary of Computing ( FOLDOC) is an online searchable encyclopedic Dictionary of Computing subjects The GNU Free Documentation License ( GNU FDL or simply GFDL) is a Copyleft License for free documentation designed by the Free Software