Subject: [Sigtran] SUA v16: sequence control parameter in CLDT msg

From: "Barry Nagelberg" <[email-masked]>
Date: Thu, 5 Feb 2004 09:13:04 -0500

Table 10/Q.711 notes that the sequence control parameter is optional in the
SCCP UNITDATA msg.
However the sequence control parameter is listed as mandatory in the SUA
CLDT msg.
So I have 2 questions:

1. Why do we have this mandatory/optional mismatch?

2. If sequence control is not present in a SCCP UNITDATA msg, what should be
the value of the mandatory sequence control param in the CLDT msg.

Barry Nagelberg

_______________________________________________
Sigtran mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/sigtran

---

From: "Brian F. G. Bidulock" <[email-masked]>
Date: Thu, 5 Feb 2004 08:28:56 -0700

Barry,

In Q.711, for N-UNITDATA Request it is marked as a "User Option" and not as
"Optional".  See also Q.711/6.2.2.2.2.  (If the SCCP user does not provide
a sequence control parameter, then the SCCP assumes protocol class 0.)
Also note that there is no "Protocol Class" argument to N-UNITDATA Request.

Rather than have to handle the case where Sequence Control was missing for
protocol class 1, SUA specifies the Protocol Class in CLDT and when the
protocol class is zero (0), sequence control is set to (0) as described in the
the Implementation note in SUA/3.2.1.

CLDT __corresponds__ to N-UNITDATA Req/Ind.  It is not exact.  One of the
reasons for differences is the multiple SG as STP case.

--brian

Barry Nagelberg wrote:                                                               (Thu, 05 Feb 2004 09:13:04)

-- 
Brian F. G. Bidulock
[email-masked]
http://www.openss7.org/

---

From: "Barry Nagelberg" <[email-masked]>
Date: Thu, 5 Feb 2004 10:55:34 -0500

Brian,

Thanks, but I can't find the "Implementation note in SUA/3.2.1" to which you
refer.

Barry

> -----Original Message-----
> From: Brian F. G. Bidulock [mailto:[email-masked]]
> Sent: Thursday, February 05, 2004 10:29 AM
> To: Barry Nagelberg
> Cc: SIGTRAN Mailing List
> Subject: Re: [Sigtran] SUA v16: sequence control parameter in CLDT msg
>
>
> Barry,
>

---

From: "Brian F. G. Bidulock" <[email-masked]>
Date: Thu, 5 Feb 2004 10:03:04 -0700

Barry,

SUA-15, page 24:

"  Implementation note: This message covers the following SCCP 
"  messages: unitdata (UDT), extended unitdata (XUDT), long unitdata 
"  (LUDT). Sequence Control is set to 0 for class 0 messages. 

--brian

Barry Nagelberg wrote:                                                               (Thu, 05 Feb 2004 10:55:34)

-- 
Brian F. G. Bidulock
[email-masked]
http://www.openss7.org/

---

From: "Brian F. G. Bidulock" <[email-masked]>
Date: Thu, 5 Feb 2004 10:32:19 -0700

Barry,

It was struct from sua-16 at my request:

>     Implementation note: This message covers the following SCCP 
>     messages: unitdata (UDT), extended unitdata (XUDT), long unitdata 
> -   (LUDT). 
> +   (LUDT). Sequence Control is set to 0 for class 0 messages. 
> 
> This change is incorrect.  Please remove this addition.  We discussed this
> long ago and Sequence Control is required in class 0 messages for some
> network configurations and for proper MTP relay accross a relay point.  It
> might not be provided by the SCCP/SUA-User for class 0, but then the SUA
> layer (at ASP, IPSP or SGP) must ultimately select a loadsharing value.
> That is why we made the parameter MANDATORY for all protocol classes.

--brian

-- 
Brian F. G. Bidulock
[email-masked]
http://www.openss7.org/

---

From: "Barry Nagelberg" <[email-masked]>
Date: Thu, 5 Feb 2004 12:40:41 -0500

The last sentence ("Sequence Control is set to 0 for class 0 messages"), in
the implementation note that Brian mentions below, was removed in v16. Does
anyone know why?

> Sent: Thursday, February 05, 2004 12:03 PM
> To: Barry Nagelberg
> Cc: SIGTRAN Mailing List

---

From: "Barry Nagelberg" <[email-masked]>
Date: Thu, 5 Feb 2004 12:46:59 -0500

Brian,

OK, at least we know how the note got removed from the draft. But I don't
understand the link between loadsharing and the sequence control value. So I
repeat my question:

If the optional sequence control param is not present in an SCCP UNITDATA
indication, what should be the value of the mandatory sequence control param
in the CLDT msg?

Barry

> Sent: Thursday, February 05, 2004 12:32 PM
> To: Barry Nagelberg
> Cc: SIGTRAN Mailing List

---

From: "Brian F. G. Bidulock" <[email-masked]>
Date: Thu, 5 Feb 2004 11:23:18 -0700

Barry,

For the link between loadsharing and sequence control, see Q.711/6.2.2.2.2.

When multiple SG are acting as STP, each must choose the same SLS for
Class 1 operation.  Thus the ASP must provide the sequence control value
which the SG may use to derive the SLS.

--brian

Barry Nagelberg wrote:                                                               (Thu, 05 Feb 2004 12:46:59)

-- 
Brian F. G. Bidulock
[email-masked]
http://www.openss7.org/

---

From: "Barry Nagelberg" <[email-masked]>
Date: Thu, 5 Feb 2004 13:34:19 -0500

Brian,

I cannot follow your logic. Please just answer my question:

Barry

> Sent: Thursday, February 05, 2004 1:23 PM
> To: Barry Nagelberg
> Cc: SIGTRAN Mailing List

---

From: "Brian F. G. Bidulock" <[email-masked]>
Date: Thu, 5 Feb 2004 12:20:44 -0700

Barry,

Barry Nagelberg wrote:                                                               (Thu, 05 Feb 2004 13:34:19)
> indication, what should be the value of the mandatory sequence control param

A value selected to ensure proper loadsharing across SLS at MTP ala
Q.711/6.2.2.2.2.

Try:
	if (your_subsystem_cannot_provide_one) {
		static loadshare_sequence = 0;
		sequence_control = loadshare_sequence++;
	}

--brian

-- 
Brian F. G. Bidulock
[email-masked]
http://www.openss7.org/