A student's open lab: learning and sharing, free for everyone.

SIP UniverseFree University

Home / Call flows that operators actually trace / Record-Route and the route set

Record-Route and the route set

A proxy that wants to stay on the dialog prepends a Record-Route URI, and that URI has to contain lr.

Learn in 5 minutes

  1. Build the UAC route set by reversing Record-Route
  2. Build the UAS route set in Record-Route order
  3. Require lr on every Record-Route a proxy inserts

Visual

Two proxies stay on the dialog · study drawing · cyphermonkeylabs.com UAEdgeCorePeer INVITE INVITE INVITE 200 ACK

SVG HTML PNG

The proxy next to the caller ends up as the caller's first Route after the reverse.

Worked example

Put lr back The header-rule matches a Record-Route that lost lr and writes the parameter back.

  1. Read the header-rule.
  2. Run it on the INVITE.
  3. Confirm the Record-Route value contains ;lr.

Fault

The 200 OK had two Record-Route headers. The caller ACKs 192.0.2.40 directly and both proxies show no ACK.

The UAC route set is the reversed Record-Route list. The first Route has to be the edge.

Quiz

A proxy inserts Record-Route


That URI must contain


The UAC builds its route set


The UAS builds its route set


The ACK Request-URI is


A Record-Route without lr


Ecosystem

Glossary, sister systems, and the integration seam for this room.

Quality management and recording QM scores interactions. The standardized way an SBC forks a session to a recorder is SIPREC.

Glossary · Ecosystem map · Ports · Troubleshooting

Sources and go deeper