In computer networking, a transport layer provides end-to-end or host-to-host communication services for applications within a layered architecture of network components and protocols.[1] The transport layer provides services such as connection-oriented data stream support, reliability, flow control, and multiplexing.