How to handle previously acknowledged Sequence Number|OPC UA Standard|Forum|OPC Foundation

Avatar
Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
sp_Feed sp_PrintTopic sp_TopicIcon
How to handle previously acknowledged Sequence Number
Avatar
Sameer Gillurkar
Member
Members
Forum Posts: 9
Member Since:
11/21/2019
sp_UserOfflineSmall Offline
1
04/08/2020 - 04:07
sp_Permalink sp_Print

Test case : Subscription Client Basic : Err-011

Current test case suggest that client should reports an error that a previously acknowledged Sequence Number has been received. Client re-acknowledges it.
If previously acknowledged Sequence number is received, our client sends the republish request with the expected sequence number. 
But during republish request we are not adding any acknowledgement for already acknowledged sequence number.
Is it mandatory to  re-acknowledge it?

Avatar
Paul Hunkar
Member
Members
Forum Posts: 27
Member Since:
07/05/2017
sp_UserOfflineSmall Offline
2
04/10/2020 - 07:25
sp_Permalink sp_Print

If a client get the same sequence number a second time - it is required to report this as an error, since a sequence number is never to be reused. This repeated sequence is an error and the message that came with it shall be ignored.  The client should not ask for a republish of an expected sequence number since, it might not have been sent.  If you receive a sequence number that is higher, i.e. you missed a number then you can ask for a republish of the missed number.  The acknowledge of a received number, even if already acknowledged is a good idea since the most common case where a sequence number is repeated is from a transparent redundant server that has failed over and missed some information in the failover process. i.e. that a message went out and the acknowledge for it might not have been received by the server.

Avatar
Pradeep Patel
Member
Members
Forum Posts: 9
Member Since:
03/31/2020
sp_UserOfflineSmall Offline
3
05/27/2020 - 06:00
sp_Permalink sp_Print

Actually client iterate over available sequence number, and when the response message contains previously acknowledge reused sequence numbers it ignores it and tries to retrieve the missed notification message by republishing the available sequence numbers sent by OPC Server. Client actually never republish the expected sequence number but only the available sequence number. 

Avatar
Paul Hunkar
Cleveland, Ohio, USA
Moderator
Members

Moderators-Specifications

Moderators-Companion

Moderators-Implementation

Moderators-Certification

Moderators-COM
Forum Posts: 112
Member Since:
02/24/2014
sp_UserOfflineSmall Offline
4
05/28/2020 - 23:25
sp_Permalink sp_Print

Not sure about what pradeep is saying, every publish response received from a server has a sequence number, if a client receive two publish response with the same sequence number from the Server (and they did not ask for a republish), the client shall log it as an error (the Server is having a problem and the client is required to report this and ignore the message) - this functionality is described in the specification. 

Each publish message response, beside the actual response, also includes a list of available sequence numbers that can be requested for a republish.  If a client sees that it missed a sequence number and that the sequence number is in the republish list, it can request a republish for it. If it has not missed any sequence number, on the next publish that it send to the Server , it is required to list all of the available sequence numbers (from previous response messages) that it does not need (acknowledging them) - which then allows the server to clean up these publish responses.

Paul

Paul Hunkar - DSInteroperability

Forum Timezone: America/Phoenix
Most Users Ever Online: 510
Currently Online:
Guest(s) 31
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Forum Stats:
Groups: 2
Forums: 10
Topics: 1435
Posts: 4855