Virtual circuit

From Wikipedia, the free encyclopedia

In telecommunications and computer networks, a virtual circuit (VC), synonymous to virtual connection and virtual channel, is a connection oriented communication service that is delivered by means of packet mode communication. After a connection or virtual circuit is established between two nodes or application processes, a bit stream or byte stream may be delivered between the nodes. A virtual circuit protocol hides the division into segments, packets or frames from higher level protocols.

Virtual circuit communication resembles circuit switching, since both are connection oriented, meaning that in both cases data is delivered in correct order, and signalling overhead is required during a connection establishment phase. However, circuit switching provides constant bit rate and latency, while these may vary in a virtual circuit service due to reasons such as:

  • varying packet queue lengths in the network nodes,
  • varying bit rate generated by the application,
  • varying load from other users sharing the same network resources by means of statistical multiplexing, etc.

Many virtual circuit protocols, but not all, provide reliable communication service, by means of data retransmissions due to error detection and automatic repeat request (ARQ).

Contents

[edit] Layer 4 virtual circuits

Connection oriented transport layer datalink protocols such as TCP[1][2] may rely on a connectionless packet switching network layer protocol such as IP, where different packets may be routed over different paths, and thus be delivered out of order. However, a virtual circuit[2][3][4] is possible since TCP includes segment numbering and reordering on the receiver side to prevent out-of-order delivery.

[edit] Layer 2/3 virtual circuits

Network layer and datalink layer virtual circuit protocols are based on connection oriented packet switching, meaning that data is always delivered along the same network path, i.e. through the same nodes. Advantages with this over connectionless packet switching are:

  • Bandwidth reservation during the connection establishment phase is supported, making guaranteed Quality of Service (QoS) possible. For example, a constant bit rate QoS class may be provided, resulting in emulation of circuit switching.
  • Less overhead is required, since the packets are not routed individually and complete addressing information is not provided in the header of each data packet. Only a small virtual channel identifier (VCI) is required in each packet. Routing information is only transferred to the network nodes during the connection establishment phase.
  • The network nodes are faster and have higher capacity in theory, since they are switches that only perform routing during the connection establishment phase, while connectionless network nodes are routers that perform routing for each packet individually. Switching only involves looking up the virtual channel identifier in a table rather than analyzing a complete address. Switches can easily be implemented in ASIC hardware, while routing is more complex and requires software implementation. However, due to the large market of IP routers, and because advanced IP routers support layer 3 switching, modern IP routers may today be faster than switches for connection oriented protocols.

[edit] Examples of protocols that provide virtual circuits

Examples of transport layer protocols that provide a virtual circuit:

  • Transmission Control Protocol (TCP), where a reliable virtual circuit is established on top of the underlying unreliable and connectionless IP protocol. The virtual circuit is identified by the source and destination network socket address pair, i.e. the sender and receiver IP address and port number. Guaranteed QoS is not provided.
  • SCTP.

Examples of network layer and datalink layer virtual circuit protocols, where data always is delivered over the same path:

[edit] Permanent and switched virtual circuits in ATM, frame relay, and X.25

Switched virtual circuits (SVCs) are generally set up on a per-call basis and are disconnected when the call is terminated; however, a permanent virtual circuit (PVC) can be established as an option to provide a dedicated circuit link between two facilities. PVC configuration is usually preconfigured by the service provider. Unlike SVCs, PVC are usually very seldom broken/disconnected.

A switched virtual circuit (SVC) is a virtual circuit that is dynamically established on demand and is torn down when transmission is complete, for example after a phone call or a file download. SVCs are used in situations where data transmission is sporadic and/or not always between the same DTE endpoints.

A permanent virtual circuit (PVC) is a virtual circuit established for repeated/continuous use between the same data terminal equipments (DTE). In a PVC, the long-term association is identical to the data transfer phase of a virtual call. Permanent virtual circuits eliminate the need for repeated call set-up and clearing.

Frame relay is typically used to provide PVCs. ATM provides both switched virtual connections and permanent virtual connections, as they are called in ATM terminology. X.25 provides both SVCs and PVCs, although not all X.25 service providers or DTE implementations support PVCs as their use was much less common than SVCs.

[edit] References

[edit] See also