In a Virtual Circuit Network how does a packet gets a VCI ? I read in Data Communication and Networking book by B.A.Forouzan that a packet with a VCI comes at a switch but there is no mention on how or who gives this VCI to the packet. I have also read that VCI gets changed on passing through the switch ? How is it done ? I am confused . Please help .

2 Answers 2


The Virtual Circuit Identifier (VCI) is used for reliably transferring packets by L2/L3 virtual circuits and allows higher level protocols to avoid dealing with the division of data into segments, packets, or frames.

The VCI is added by the intermediate routers/switches running protocols such as X.25, Frame Relay, Asynchronous Transfer Mode (ATM), GPRS, Multiprotocol Label Switching etc. 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.

How it works differs protocol to protocol. Read this link to better understand how VCI changes at every hop and what if the network routers doesn't support any such protocol.

At transport layer TCP and SCTP are responsible for providing virtual Circuits.


That depends on the exact protocol. Each VC protocol has some mechanism for establishing a connection that results in either all parties learning the global VCI or each partner pair establishing the VCI used on their link.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.