What are Circuit Switching and Packet Switching? With examples. 


This blog explains the protocols used for Circuit Switching (voice call) and Packet Switching (Data or VoIP) communications.
What is Packet Switching
What is Circuit Switching
Circuit Switching vs Packet Switching

 What is a Circuit or Circuit Definition?

In telecom, a circuit is a dedicated or reserved path between two endpoints. Two entities may connect directly, or there can be multiple hops between endpoints. For voice in PSTN, SS7 is the protocol for a voice circuit.  SS7 has E1/T1 trunks between two endpoints (SSP or telephone exchange) of SS7.  During the call, an SSP reserves a voice circuit. If calling and called SSPs connects to each other directly, then one E1/T1 physical line connects directly, if, via other intermediate SSPs, multiple physical lines create a voice path.

Example: There are 2 cities A and C. But there is no physical link between telephony switching centers A and C. There is an exchange B between A and C. During call setup from A to, C a physical circuit is reserved between A and B, and B and C. All communications between A and C will be via B.

What is Circuit Switching?

In-circuit switching a dedicated channel or path is required in both directions before any communication starts. The channel may be a direct channel or via many hopes. Data flow in form of bytes and bits. The Call setup over PSTN is one example. In this, a voice circuit is reserved from a voice trunk. The Signaling used is ISUP over E1/T1. ISUP belongs to the SS7 protocol suit. SS7 switching reserves a fixed bandwidth for the communication in both directions, in voice call the circuit bandwidth is fixed according to the E1 or T1 channel.

ISUP Call Setup:

In this section, we are explaining the circuit switching example with the example of the ISUP protocol. ISUP protocol belongs to the legacy SS7 protocol for voice call signaling. When a mobile user dials a number, the originating SSP starts ISUP signaling. A channel is reserved from the originating switching center to the terminating switching center. If a new call is initiated from the same switching center, a new channel is allocated. A channel is identified by CIC ( Channel Identification Code).

Circuit Switching

What is Packet?

A packet has user data and a protocol header. The header has information that is used by the protocol to provide services to its user. The protocol header may have routing and other information. Routing information has a source and destination address.  The routing decisions are taken on every intermediate node or router. For example, if a person calls from India to the USA over an IP phone. The source address in the packet is the IP address of the caller in India and the destination address is the IP address of the phone in the USA.  The packet is routed via many routes (e.g router in the UK).

 What is Packet Switching

In packet switching, no dedicated circuit is reserved before any communication. Data from one node to another flow in terms of packets. The data is divided into small packets. Each packet has a full source and destination address in the packet header and user data. Intermediate nodes or routers, route packets based on the destination header parameter.  In telecom, the VoIP call is an example of packet switching. In these two RTP (Real-Time Protocol) endpoints are set, no dedicated channels are set up for voice packets.
After the Setup of endpoints, the same IP ( lines, router, etc.) network can be used for multiple calls.

Example Of Voip Call setup with SIP or Session Initiation Protocol. The SIP uses UDP over IP, this is a signaling protocol in a VoIP network. If setup RTP endpoints for media flow from source to destination.  RTP also uses UDP over IP.

Packet Switching Example
SIP Call Flow

Difference between circuit switching and packet switching/circuit switching vs packet switching

  • Circuit switching has a resource reservation, while in packet switching there is no resource reservation.
  • In Packet switching, data is divided into small units called packets. These packets can take a path that is shared by other packet-switching nodes. In-Circuit Switching, if there is no communication then there is no data on a dedicated channel.
  • In-Circuit switching the resources are reserved for a call or circuit. If the call is idle then there will be no utilization of the circuit from any other call. This makes circuit switching less efficient for resource utilization. While in circuit switching the same resources or bandwidth can share by multiple calls. This makes packet switching more efficient.
  • Because of resource reservation in circuit switching, the Quality Of Service is guaranteed. While in packet switching Quality of Service is not guaranteed.
  • Packet Switching is more cost-effective as compared to circuit switching, due to the sharing of resources.
  • In packet-based switching, each packet follows a different path. Routing decisions are made on each intermediate node or router.
  • If there is communication lost in the circuit, the user gets the indication while a packet-based network does not.

Virtual Circuit Switching:

This is the way for achieving circuit switching type communication over a packet switching network. At this software level resources ( e.g message window) are fixed for a circuit, while physical resources (e.g IP link, IP routers ) are shared among multiple circuits. In Virtual Circuit Switching, a connection is set up over the network. Virtual Circuit, gives the impression to the user that there is a dedicated path reserved from source to destination.

Functionalities of Virtual Circuit Switching.

Data Segmentation, to meet the requirements of the underlying packet switching network.
Data Reassembly, to deliver a complete message the same as it was sent from the originator.
Retransmission is done by sending a packet again, which has been lost on the underlying packet switching network.
Flow Control is to avoid packet loss, due to congestion in-network or a slow receiver.
In Virtual Circuit switching a connection is set up before any user data. While in packet network no setup of initial connection.
In Virtual Circuit switching a user application on the receiving side receives in the same order as they send, while this is not in packet switching.

Example of Virtual Circuit Switching Protocols:

TCP is the transport layer protocol. Used to set up a virtual connection between a source and destination applications. TCP uses the underlying IP layer, which is an implementation of a packet switching network layer. The TCP connection is identified by a connection identifier. Each connection is a unique pair of TCP endpoints. A TCP endpoint is the pair of an IP address and port.
Example of Virtual Circuit:
If 2 machines are connected via a packet-switched network (e.g IP), over a port 3002. The machines have Ip addresses 192.168.1.3 and 192.168.1.4.
The endpoint on machine one is {192.168.1.3, 3002}. The Endpoint on the second machine will be {192.168.1.4, 3002}
TCP Connection (a pair of endpoints) will be [{192.168.1.3, 3002}, {192.168.1.4, 3002}].
SCTP or Stream Control Transmission Protocol is a transport layer protocol this is more reliable than TCP. It is used for setting up a virtual connection. The endpoint in SCTP may have more than one IP address as SCTP provides the multi-homing capability.

Circuit Network to Packet Network  Conversion:

As we have seen that a call can be connected from a packet-based network to a circuit-based network and vice versa. This is possible via using a gateway between two types of networks. VoIP to PSTN is one of the examples where an IP phone (even VoIP software ) can call a PSTN-based device.  The gateway does the Isup/ss7 signaling to SIP/IP conversion and the conversion of media packets too.

IMEI Number
GIT Tutorial