telecom • networking • design

an EventHelix.com blog


1 Comment

Object Oriented Design Tips

Here are a few object oriented design tips to help you with class design:

  1. Stay close to problem domain
  2. Object discovery vs. object invention
  3. Pick nouns or noun phrases as classes
  4. Method names should contain a verb
  5. Prefix adjectives when naming inheriting classes
  6. Do not add suffixes to class names
  7. Avoid one-to-one mapping from structured design
  8. Replace multiple get-set methods with operations
  9. Model classes that handle messages as state machines
  10. Use const whenever possible
  11. Restrict header file level dependency
  12. Don’t reinvent the wheel; use STL

Manager design pattern


Leave a comment

LTE Physical Layer Introductory Videos

Learn about the LTE physical layer from the video series from IEEE and Ericsson. Th video series covers:

  1. LTE protocol structure and architecture
  2. Downlink frame structure, reference signal and MIMO
  3. Downlink control signaling
  4. Uplink SC-FDMA, reference signals and control signaling
  5. TDD and half duplex FDD
  6. Transmission procedures
  7. Cell search, SI and random access procedures

LTE multi antenna transmission


Leave a comment

LTE Random Access Procedure and Contention Resolution

LTE random access procedure is used by the UEs to initiate a data transfer. The UEs also obtain uplink timing information from the initial handshake.

This sequence diagram describes the tale of three UEs (UE-A, UE-B and UE-C) that are powered on at the same time:

  1. UEs synchronize with the downlink channel by decoding the PSS and SSS signal. The UEs are synchronized to the downlink frames after completing this procedure.
  2. The three UEs initiate the random access procedure at exactly the same time. Two of them (UE-A and UE-B) happen to pick the same preamble. This results in a resulting in a collision. UE-C picks a distinct preamble so it succeeds in the random access procedure.
  3. Contention between UE-A and UE-B is resolved in UE-A’S favor. UE-A proceeds with the RRC connection.
  4. UE-C times out and retries the random access procedure.

LTE random access procedure


Leave a comment

HTTPS SSL/TLS Session for SPDY Sequence Diagram

This sequence diagram covers the establishment of a SSL/TLS connection for sending Google SPDY data. The protocol flow covers:

  1. SSL/TLS initial cryptographic parameter negotiation.
  2. X.509 Certificate exchange and encryption start with elliptic curve Diffie Hellman key exchange.
  3. Master key generation and encrypted data transfer.
  4. SSL/TLS session release.
    SSL TLS Sequence Diagram for SPDY


Leave a comment

S1AP View of LTE Attach and EPS Bearer Setup

This sequence diagram looks at LTE Attach and EPS Bearer Setup from the S1AP vantage point. The following signaling is covered:

  1. UE Attach, authentication and security signaling
  2. Setup of two EPS Bearers (RAB id 5 and 6)
  3. Release of UE context due to inactivity
  4. Reestablishment of the UE context with a Service Request.

You can click on individual messages in the sequence diagram to see field level details.

Click to see the "S1AP View of LTE Attach & EPS Bearer Setup"  sequence diagram


Leave a comment

Voice Over LTE (VoLTE) Originating Call

Voice over LTE (VoLTE) is the standard for voice call setup in LTE networks. When VoLTE is deployed, phones will not need to fallback to 3G for voice calls.

VoLTE uses IMS SIP signaling to set up voice calls. The following VoLTE call flow describes the IMS call setup and release. An example of sending an SMS over IMS is also included. Sample RTP and RTCP messages are also shown in the flow.
Voice over LTE Call Flow


Leave a comment

The Anatomy of an INVITE Request

Tao, Zen, and Tomorrow

As a high school student, I loved biology. I loved learning about the natural world and how our bodies function. The spleen was my friend — not to mention the pancreas, liver, and lungs.

Unlike many of my classmates, I didn’t mind dissecting frogs and the obligatory fetal pig. Okay, I wasn’t overly fond of the smell of formaldehyde, but it was mesmerizing cutting into the skin and exploring what lurked below.

I look upon SIP in a very similar fashion except instead of using a knife, my dissection tool of choice is Wireshark. Followers of this blog should already know that from reading my article, How to Debug SIP.   Wireshark is powerful software that not only captures SIP packets, but displays them in a very readable manner. On top of that, you can also capture and replay audio streams. If you want to call yourself a SIP professional…

View original post 1,443 more words


Leave a comment

BGP Router Startup

The Border Gateway Protocol (BGP) is an inter-autonomous system routing protocol. An autonomous system is a group of networks under common administrative control and routing policies.

This sequence diagram describes the sequence of messages exchanged when a new BGP router is made operational. The steps involved are:

  1. Establish TCP connections
  2. Exchange BGP Open messages.
  3. Start periodic exchange of Keepalive messages.
  4. Exchange routing information with the BGP Update message.

BGP Router Startup


1 Comment

OSPF Router Startup and Link State Update

OSPF (Open Shortest Path First) is a routing protocol that is used as an interior gateway protocol in large enterprises.

Here is a sequence diagram that describes the message exchange that takes place when a new OSPF router comes online. You can click on any message in the flow to see full message contents.

Covered sequence:

  1. OSPF hello message exchange
  2. Master-slave resolution
  3. Router database synchronization
  4. Link state update
OSPF router startup and link status update

OSPF router startup and link status update


Leave a comment

Visualize and Diagnose Wireshark PCAP Files with Sequence Diagrams

Introducing VisualEther Protocol Analyzer 6.1. Diagnose and debug Wireshark logs with sequence diagrams. Convert PCAP files into sequence diagrams and call flow diagrams by just defining the message fields that should be included in the diagrams. VisualEther takes of the rest, generating a well formatted sequence diagram. You can click on individual messages in the sequence diagram to see field level details.

VisualEther 6.1 adds the following features:

  • Full IPv6 Support
  • Convert any custom protocol to sequence diagrams. Fully customize the diagram generation.
  • Display message details as an expandable list.
  • Added support for Wifi and Ethernet frames

Wireshark to sequence diagrams

Visually debug protocol interactions

sequence-diagram-wireshark

Generate sequence diagrams and call flow diagrams from Wireshark output. The sequence diagrams provide a visual trace of the packet flow between different nodes.

Use regular expressions to identify and flag error scenarios. Messages reporting session failure can be bookmarked in a PDF file, thus giving you quick access to the cause of failure. Protocol experts can identify the error scenarios upfront to speed up protocol debugging.

Summarize Wireshark output…

Wireshark Extraction Template

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

Support for IPv4, IPv6, Ethernet and Wifi is built in. TCP, UDP and SCTP transport layer support is also available out of the box.

You can customize the templates for any protocol that has an Wireshark dissector. Any custom source and destination addresses can be used to define the sequence diagram instance axes.

…while maintaining full message detail

Wireshark message shown in full detail.

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

The message nodes can be expanded and collapsed. This way you can focus on the part of the message that interests you.

Reverse engineer system design

Reverse engineer design from Wireshark

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.

Automate diagram generation from Wireshark PCAP Files

Wireshark to sequence diagram generation script

Automate capture of Wireshark logs with tshark and then use the VisualEther command-line mode to generate sequence diagrams and context diagrams.

Explore more