Subject: [Sigtran] Misc M2PA questions

From: Andrew Booth <[email-masked]>
Date: Thu, 04 Sep 2003 14:23:33 -0400

Hi Tom,

While doing some work towards the plugtest I hit on some more questions. 
I'm going to ask Marc Beauchesne to try and get some feedback from other 
attendies at the plugtest about the following questions to see if 
clarifications to M2PA would be helpful.

1) In M2PA 9 we have a mechanism for resynching sequence numbers for the 
side in RPO, but not for the side in LPO.  I think this means the side 
in LPO cannot resynchronize sequence numbers, which is different from 
MTP2.  If we can get away with it for the side in LPO, why not also in 
RPO?  Sorry for bringing this up again, but it really has me wondering. 
I'm at least curious to hear what other implementers have to say.  In 
the meantime, I'll continue to implement it as in the draft. ;)

2) In ANSI, if we receive a clear RTB should we also flush the RB? 
Assume yes, but I don't think this is mentioned in M2PA as a difference 
from MTP2...

3) After an FSNC request is processed, the TB and RTB are empty.  Should 
we empty the RB at this point?

4) If we do a sequence changeover during PO and then bring the link back 
in service, what FSN should we send next?  What FSN should we expect 
next?  I assume we treat this like MTP2.

Thoughts?
Andrew

-- 
Andrew Booth, Software Developer
Signaling Systems Group, Performance Technologies
613-237-4344

Visit www.pt.com/mailing.html to subscribe to our Packets & Signals eLetter.

---

From: Tom George <[email-masked]>
Date: Wed, 10 Sep 2003 11:05:17 -0500

> the meantime, I'll continue to implement it as in the draft. ;)

My revised version allows for resynching on both ends. But it does not 
give much guidance about when to do it. As I said in another email, I am 
as vague as Q.703.

=====
If M2PA receives a Flush command from MTP3,

[...]
    (c) If resynchronization of sequence numbers is required, M2PA MAY
        perform resynchronization of sequence numbers using the BSN
        from the received Link Status Processor Recovered message.
        However, during resychronization, M2PA SHALL NOT discard any
        received User Data messages that were sent after the processor
        outage ended.
=====

> Assume yes, but I don't think this is mentioned in M2PA as a difference 

I think that is clear in the revised version:

=====
If M2PA receives a Flush command from MTP3,

    (a) M2PA SHALL discard any incoming messages that were queued and
        unacknowledged during the processor outage condition.
[etc.]
=====

> we empty the RB at this point?

That sounds right and I think it would be the same in MTP2. If you 
answer the FSNC request to the upper layer MTP3, then you can't accept 
any subsequent messages that are still in the RB. They would be 
retransmitted on the alternate link by the peer, and thus would be 
duplicated.

> next?  I assume we treat this like MTP2.

Andrew, you are going to have to explain this to me. I did not think MTP 
would do a changeover on a link that was in LPO.

-- 
* Tom George       PB7-24001 (near B-21)      [email-masked]  *
* 972-519-3168   Intranet:  http://www.ssd.usa.alcatel.com/~tgeorge/  *
*   I actively disclaim speaking for Alcatel.  I do not purport to    *
*   advertise or represent its position, operations, or activities.   *

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

---

From: Tom George <[email-masked]>
Date: Wed, 10 Sep 2003 15:49:40 -0500

It looks like the M2PA comments have died down. There have been a few 
questions recently, but none that required any more changes to the draft.

I would like to go ahead and release M2PAv10. I have been posting 
updated text as I have replied to comments, but does anyone need to see 
an updated "unofficial" copy before I release v10?

tomG.

---

From: "Brian F. G. Bidulock" <[email-masked]>
Date: Wed, 10 Sep 2003 15:12:30 -0600

Tom,

I think official would be better.

--brian

Tom George wrote:                                                                      (Wed, 10 Sep 2003 15:49:40)

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

---

From: Andrew Booth <[email-masked]>
Date: Wed, 10 Sep 2003 18:41:39 -0400

Hi Tom,

Some questions and comments below.

Tom George wrote:

>
>
> Andrew Booth wrote:
>
>> Hi Tom,
>>
>> While doing some work towards the plugtest I hit on some more 
>> questions. I'm going to ask Marc Beauchesne to try and get some 
>> feedback from other attendies at the plugtest about the following 
>> questions to see if clarifications to M2PA would be helpful.
>>
>> 1) In M2PA 9 we have a mechanism for resynching sequence numbers for 
>> the side in RPO, but not for the side in LPO.  I think this means the 
>> side in LPO cannot resynchronize sequence numbers, which is different 
>> from MTP2.  If we can get away with it for the side in LPO, why not 
>> also in RPO?  Sorry for bringing this up again, but it really has me 
>> wondering. I'm at least curious to hear what other implementers have 
>> to say.  In the meantime, I'll continue to implement it as in the 
>> draft. ;)
>
>
> give much guidance about when to do it. As I said in another email, I 
> am as vague as Q.703.
>
> =====

The LS PR message is sent only by the side coming out of LPO, and 
received only by the side in RPO.  How is the side in LPO to resync 
sequence numbers?  Or is that not necessary?

>> Assume yes, but I don't think this is mentioned in M2PA as a 
>> difference from MTP2...
>
>

My concern is just that in ANSI two primitives are described in the 
state transition diagrams, "Clear RTB" and "Clear Buffers", one flushed 
the RTB while the other clears the RB and TB also.   But this is a nit, 
I think you're correct that it's clear.

>
>
>
>>
>> 3) After an FSNC request is processed, the TB and RTB are empty.  
>> Should we empty the RB at this point?
>
>

Agreed, but I haven't found it in the MTP2 specs.  In the ANSI SDLs 
there is a reference to clearing the RTB after a changeover, but again 
in ANSI that doesn't clear the RB or TB, just the RTB.  Don't know if 
it's worth mentioning explicitly.

>
>
>
>>
>> 4) If we do a sequence changeover during PO and then bring the link 
>> back in service, what FSN should we send next?  What FSN should we 
>> expect next?  I assume we treat this like MTP2.
>
>
> Andrew, you are going to have to explain this to me. I did not think 
> MTP would do a changeover on a link that was in LPO.

Q.704 and T1.111.4 are clear that the side in RPO should not initiate a 
sequence changeover, but I believe the side in LPO can initiate a 
sequence changeover.  Also, it seems a reasonable approach to take if 
you know the processor outage will be long term (implementation 
dependent), since then you don't lose messages.  There are comments in 
Q.703 section 8 that while in Processor outage MTP3 may still be able to 
control L2, and q.703 figure 8 (sheet 12/14) indicates that Retrieval 
Request and FSNC is a valid primitive from MTP3 while MTP2 is in the PO 
state.

What do you think?
Andrew

---

From: "Brian F. G. Bidulock" <[email-masked]>
Date: Wed, 10 Sep 2003 17:12:05 -0600

Andrew,

Andrew Booth wrote:                                                                 (Wed, 10 Sep 2003 18:41:39)
> sequence numbers?  Or is that not necessary?

Looks like we should send a LS Ready or Data Ack in response to LS PR.

> I think you're correct that it's clear.

Clear RTB is in preparation for buffer updating for Emergency Changeover.
Clear Buffers is the equivalent of the "Flush" command.

> it's worth mentioning explicitly.

In both the Q.703 and ANSI SDLs, the only time the RB holds anyting is
during receive congestion.  Both documents consider what happends during
processor outage (local or remote) during congestion, because congestion
could often lead to processor outage on traditional systems.

The text on processor outage in ANSI T1.111.3 makes specific mention of
discarding messages not acknowledged due to receive congestion during buffer
clearing (flushing).  This is the RB.  (Also there is a not there stating that
the SDLs are not complete at least in one regard.)

What applies to receive congestion applies to the messages held but not
acknowledged in M2PA's RB.

> Request and FSNC is a valid primitive from MTP3 while MTP2 is in the PO 

There are a numebr of places that say that buffer updating is performed if
possible.  Whether it is possible is implementation depenedent and the
MTP2/MTP3 interface is not a hard and fast one anyway.

However, that does not change much: if buffer updating can be completed it is
completed according to the normal procedures.

What was your point here?

--brian

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