telecom • networking • design

an blog

1 Comment

GSM Terminating SMS Call

SMS terminating call flow

In this call flow we will look at how a terminating SMS is handled in GSM. Setting up a terminating
SMS session is a multi-step process.

  1. Interrogate the MSC to locate the subscriber
  2. Setting SMS session setup and acquiring radio resources
  3. Sending the SMS.
  4. Releasing the session and associated radio resources.

GSM Mobile Terminated SMS Sequence Diagram

Leave a comment

GSM Mobile Originated SMS

GSM Mobile Originated SMS

This scenario describes the session setup for a GSM originating SMS. This sequence diagram describes the SMS signaling and data transfer between the mobile subscriber and the SMS service center.

SMS is implemented by sending Short message transported via a GSM SDCCH (Standalone Dedicated Control CHannel) signalling channel. Thus they can be received while the user is talking. The MS establishes an SDCCH using RR establishment procedure.

GSM Mobile Originated SMS Signaling Flow Diagram


3G UMTS Originating Call Flow

3G UMTS Originating Call Flows

A 3G UMTS originating voice call call setup involves complex signaling to setup and release the call.

  • RRC (Radio Resource Control) signaling between the UE and RAN sets up the radio link.
  • RANAP (Radio Access Network Application Part) signaling sets up the session between the RAN and the Core Network (MSC).

Click on the image to see the full call flow. You can click on most RANAP messages in the call flow to complete field level details of the RANAP messages.

3G UMTS Originating Call with RRC and RANAP signaling

Click here for the 3G UMTS originating voice call flow 

Introducing VisualEther Protocol Analyzer 6

Generate Sequence Diagrams from Wireshark PCAP files

visually debug protocol interactions

Generate sequence diagrams and context diagrams from Wireshark output. The sequence diagrams provide a visual trace of the packet flow between different nodes. The collaboration diagrams give a birds-eye-view of the protocol interactions.

Sequence diagram generated from Wireshark PCAP file

summarize Wireshark output…

Templates for identifying Wireshark messages that should be included in the sequence diagram.

Define templates to select messages and the fields to be included in the generated diagrams. VisualEther analyzes the Wireshark (Ethereal) output to generate documents that match the defined template. The template is defined as a simple XML file.

…while maintaining full message detail

Click on any message in PDF sequence diagrams. VisualEther shows you complete field level details of that message in a browser window.

Click on any message in the sequence diagram to see full message details.

reverse engineer system design

wireshark to message sequence chart generation template

Reverse engineering system design by analyzing the message flow in an operational system. Design documents are generated from the Wireshark traces. The generated documents can be edited and reformatted using EventStudio System Designer.

1 Comment

TCP slow start sequence diagrams

TCP is an end to end protocol which operates over the heterogeneous Internet. TCP has no advance knowledge of the network characteristics, thus it has to adjust its behavior according to the current state of the network. TCP has built in support for congestion control. Congestion control ensures that TCP does not pump data at a rate higher than what the network can handle.

In this sequence diagram we will analyze “Slow start”, an important part of the congestion control mechanisms built right into TCP. As the name suggests, “Slow Start” starts slowly, increasing its window size as it gains confidence about the networks throughput.

TCP slow start overview

An overview of TCP slow start.

TCP slow start with socket level details

A detailed look at TCP slow start with socket level state transition details.

Analyze TCP slow start from the server point of view

A sequence diagram describing the slow start with a focus on server end interactions.

Client focused view of the slow start

A final look at slow start. This time with a focus on the client side.

Leave a comment

FTP File Transfer Protocol Sequence Diagram

Here we explore the sequence of interactions in a typical FTP (File Transfer Protocol) session. The example here illustrates the use of multiple TCP connections by FTP. We will cover how FTP establishes a telnet TCP connection (TCP Port 21) to control the overall flow of the FTP transfer.

Then we examine the use of TCP Port 20 for establishing TCP connections for directory transfer and file retrieval.

The complete sequence diagram can be divided into the following steps:

  • DNS Query to obtain the IP address for the FTP Server
  • FTP Telnet connection setup and login. (USER and PASS commands)
  • Obtaining a directory listing (PORT and LIST command)
  • Changing directory (CWD command)
  • Downloading a file using FTP get (PORT and RETR command)

These phases are analyzed with sequence diagrams and context diagrams that provide multiple views of the FTP interactions.

FTP protocol sequence diagram

FTP High Level Overview

FTP control port (TCP port 21) handling

FTP data port (TCP port 20) handling

FTP context diagram

Leave a comment

LTE X2 Handover Sequence Diagrams

Let’s examine the X2 Handover in detail. We look at the X2 handover signaling procedure through sequence diagrams that focus on different aspects of the procedure.

The sequence diagrams presented here were generated with EventStudio System Designer.

LTE X2 Handover

Full signaling details are presented here.


Now we examine the same flow at a higher level of abstraction. The diagram focuses on the interactions between the mobile, eNodeBs and the MME/SGW.

UE Interactions

We now explore the signaling procedures that involve the UE.

Source eNodeB Role

Examine the interactions that involve the eNodeB that initiated the handover.

Target eNodeB Role

We now look at the interactions involving the eNodeB that will be serving the UE after the handover.

RRC Signaling the X2 Handover

The Radio Resource Control (RRC) signaling between the UE and the eNodeBs is covered here.

X2AP Signaling Between eNodeBs

X2AP is used for signaling between the eNodeBs. Here we examine the X2AP interactions.

Data Path Changes During an X2 Handover

The data path switching goes through several steps to accomplish a seamless handover.