Practical exercise for building a simple SS7 call flow diagram

A call flow diagram turns abstract signaling messages into a sequence that can be checked, discussed, and tested. For a first exercise, use a basic voice call between two subscribers and focus on ISUP messages carried through the SS7 signaling network.

The goal is not to reproduce every carrier-specific detail. It is to identify the signaling points, place the messages in chronological order, and explain how routing, call progress, answer, and release are represented. The same method can later be extended to mobile networks, SIGTRAN links, and service-control platforms.

Define the call scenario

Begin with a clear scenario: subscriber A places a call to subscriber B, and both users are served by different local exchanges. The originating exchange is commonly called the originating service switching point, or SSP. The destination exchange acts as the terminating SSP.

For a simple successful call, assume that both circuits are available, the called number is valid, and the called party answers. This removes exceptional branches from the first drawing. Write these assumptions beside the diagram so that readers understand why the flow does not include busy, no-answer, or invalid-number handling.

The primary protocol in this exercise is ISUP. MTP3 provides signaling message routing between signaling points, while MTP2 and MTP1 represent lower signaling transport layers in a traditional SS7 stack. STPs may forward the signaling traffic, but they generally do not control the voice call itself.

Place the network entities

Draw the originating SSP on the left and the terminating SSP on the right. Between them, place one or two signaling transfer points. A separate bearer path can be drawn below the signaling path to show that voice media and SS7 signaling follow logically different routes.

Label every signaling point with a point code. The exact numbering scheme is less important than showing that each node has an address used by MTP3. Add a circuit identification code, or CIC, to the bearer connection. The CIC associates ISUP call control with a particular voice circuit or time slot.

If you want to show an IP-based deployment, replace traditional SS7 links with SIGTRAN transport. In that version, SCTP provides transport, M3UA adapts SS7 user parts to IP, and the STP function may be implemented by an IP signaling gateway. The call logic remains recognizable even though the underlying transport changes.

Plot the signaling exchange

Start at the top of the diagram with the initial address message. Use vertical lifelines for the two SSPs and horizontal arrows for messages. Keep each arrow aligned with the point where the message is sent, and add a short annotation for its purpose.

The IAM carries the called and calling numbers, service indicators, and circuit information. The ACM indicates that the terminating side has received enough information to progress the call, while the ANM confirms that the called party has answered. When the calling party releases the call, the originating SSP sends REL, and the remote side responds with RLC after clearing the circuit.

Order ISUP message Direction Practical meaning
1 IAM Originating SSP → Terminating SSP Requests call setup and carries addressing data
2 ACM Terminating SSP → Originating SSP Indicates call progress or alerting
3 ANM Terminating SSP → Originating SSP Confirms that the called party answered
4 REL Releasing SSP → Remote SSP Requests release of the call
5 RLC Remote SSP → Releasing SSP Confirms circuit release

An STP can appear on every signaling path as a forwarding node, but avoid drawing duplicate arrows that obscure the message sequence. A useful convention is to show the logical ISUP exchange between SSPs and mark the STP path with a smaller note such as “routed by MTP3 through STP.”

Add timers and outcomes

A realistic diagram should show that signaling procedures are controlled by timers. The exact timer names and values depend on the network specification and implementation, so label them by function when teaching the basic concept: an address-completion timer, an answer supervision timer, and a release supervision timer.

Add alternative branches after the main successful path. For example, an ACM can be followed by a busy indication rather than ANM, or the call may be released if the destination is unreachable. These branches should be drawn as dashed arrows so the normal call path remains easy to follow.

The diagram can also include SCCP and TCAP when the exercise expands into database queries or supplementary services. For a basic voice call, however, those protocols should be marked as optional rather than inserted into the ISUP sequence without a specific reason.

Check and refine the diagram

Validation starts by reading the diagram from left to right and asking whether every message has a clear sender, receiver, and purpose. Confirm that IAM precedes ACM, ACM precedes ANM in a successfully answered call, and that REL is followed by RLC. Check that the CIC remains consistent throughout the exchange.

Review the routing information separately. The destination point code should identify the remote signaling point, while the originating point code identifies the sender. If an STP is included, verify that its role is message transfer rather than call-control termination.

For additional study material or clarification about SS7 signaling exercises, you can contact the training team. A second review by someone familiar with ISUP often reveals incorrect arrow directions, missing release handling, or confusing circuit and signaling paths.

Build a repeatable practice routine

Use the same diagramming method for increasingly complex cases. The following habits make each exercise easier to compare and troubleshoot:

  • Start with one successful call before adding failure scenarios.
  • Separate bearer circuits from signaling links using different line styles.
  • Label point codes, CIC values, and protocol layers consistently.
  • Add timers only after the message order is correct.
  • Annotate every message with its operational purpose.

Once the basic flow is accurate, create versions for busy, no-answer, number-unassigned, and link-failure conditions. Then redraw the same scenario over SIGTRAN, identifying where M3UA and SCTP replace traditional transport elements. Comparing the diagrams makes the relationship between SS7 call control and signaling transport much clearer.

Use this exercise as a small lab assignment: draw the flow by hand, recreate it in a diagramming tool, and explain each arrow aloud. Then compare the result with a protocol trace and revise any mismatch. Repeating that process builds practical confidence in ISUP, MTP3 routing, and the behavior of real telecom signaling networks.