Subject: [Sigtran] Regarding the use of correlation id at the M3UA layer.

From: sachin agrawal <[email-masked]>
Date: Tue, 19 Jul 2011 14:08:18 +0530

Hi All,

It is mentioned in the RFC 4666 section *4.3.4.3 ASP Active Procedure* that
in case of THM as Broadcast  "Whenever an ASP in a Broadcast mode AS becomes
ASP-ACTIVE, the SGP MUST tag the first DATA message broadcast in each
traffic flow with a unique Correlation Id parameter. The purpose of this Id
is to permit the newly active ASP to synchronize its processing of traffic
in each traffic flow with the other ASPs in the broadcast group."

I have some questions on the same as mentioned below:

1. At the sending side we are packing the correlation Id in the data
message, so on receiving this data message at the receiver end how
    the correlation id will be used for synchronization or how it will be
handled.
2. On what basis Correlation Id will be selected for the first data message,
i mean it can be any randomly selected unique no. or on
     some basis we need to calculate this correlation Id.

Thanks for your help in the advance.

Regards,
Sachin

---

From: "Brian F. G. Bidulock" <[email-masked]>
Date: Tue, 19 Jul 2011 14:42:28 -0600

sachin,

Please see comments below.

On Tue, 19 Jul 2011, sachin agrawal wrote:

--X--snip--X--
>        the correlation id will be used for synchronization or how it will
>    be handled.

Each ASP in the broadcast AS will identify a message in the flow by
its correlation ID.  As M3UA uses an SCTP reliable and ordered
stream, messages subsequent to the first will have a correlation ID
following the first.  That is, message `N' in the flow will have
correlation ID `ID+(N-1)' where ID is the correlation ID of the
first message in the flow.

ASPs in a broadcast AS can use the correlation ID of any given message
for whatever purpose it needs.  It was envisioned that a per-message
checkpoint could be achieved using the correlation ID.  The ASPs in
the AS could simply use the correlation ID of a message to checkpoint
the state of a flow among the mirrored ASPs.  This way, if a
primary ASP in the group fails, another ASP in the group could pick
up as primary at the last check-pointed state of the failed ASP.

>    2. On what basis Correlation Id will be selected for the first data
>    message, i mean it can be any randomly selected unique no. or on

There is not requirement on starting point.  Whatever is easiest,
say, zero (0), or one (1) if you don't care.  However, the SGP
should avoid resetting the numbering of the flow if possible.  So,
for example, the message flow from the source could be assigned a
message number starting from zero.  When the flow starts being
broadcast to a new ASP in the AS, the message number of the first
message could be used for the correlation ID.  This way, the
correlation ID is unique within the flow over the range of the
correlation ID value itself.  That is what was meant by "unique."

There are some other uses for correlation ID described in the draft:

	http://tools.ietf.org/html/draft-bidulock-sigtran-corid

Hope that helps...

--brian

-- 
Brian F. G. Bidulock    ¦ The reasonable man adapts himself to the ¦
[email-masked]    ¦ world; the unreasonable one persists in  ¦
http://www.openss7.org/ ¦ trying  to adapt the  world  to himself. ¦
                        ¦ Therefore  all  progress  depends on the ¦
                        ¦ unreasonable man. -- George Bernard Shaw ¦