Computer networking end-to-end protocols
End-to-end protocols are responsible for the transfer of data from a source to one or more network endpoints. "End-to-end" is the Internet architectural term, while the OSI Reference Model puts the function primarily into the transport layer.
A broader definition, however, lets the idea of this layer include tunneling: the endpoint that encapsulates a packet is logically at the transport layer, even though it is not the true application endpoint.
There are two major types of end-to-end protocol: true host-to-host, and between midboxes that act as a proxy for an endpoint. Proxy midboxes, such as tunneling devices, firewalls, and network address translators terminate the end-to-end stream and convey an independent end-to-end stream either to the true host or to another midbox.