278   EntryId not valid for a server

Created: 26 Dec 2005

Status: In Force (green)

Part: Part 7-2 (2003)

Links:

Page: 082

Clause: 14.2.2.15

Paragraph:

Category: Issue may impact interoperability of implementations of Edition 1

Issue

Standard doesn't specify any procedure about how server should react when a client sets the EntryId to a value that server does't identify as valid, for example, if server didn't generate the value written by the client.

Proposal

Specify the behaviour of the server, for example, use the first EntryId available in a similar way to when client doesn't set the EntryId to a specific value.

Discussion Created Status
changed to green. The 7-2 clauses for reporting and logging can be found at ftp.sisconet.com. Username=wg10revision pw: iec61850. Passive FTP must be used for retrieval. 16 Feb 07 In Force (green)
See Tissue 453 for revised chapter inc the BRCB state machine.

The state resync has been added. The BRCB is and remains in state resync while it not enabled and the client set EntryIDs of entries that are available in the buffer of entries.
If no entry is found in the buffer of entries corresponding to the value of the EntryID set by the Client in the SetBRCBValues, then the state of the BRCB goes to disable.

Use of EntryID within the BRCB (+ see BRCB state machine from tissue 453):
"
The reported entries are dependant upon the transitions of state of the BRCB:

• A transition from disabled to enabled shall start reporting with the first available entry (i.e. oldest) in the queue of entries. Reporing of the next sequenctial entries shall occur.
• A transition from resync to enabled shall start reporting with the next available entry (i.e. in time sequence), in the queue of entries, after the entry associated with the EntryID value set by the client. Reporing of the next sequenctial entries shall occur.


The value of EntryID, returned in a GetBRCBValues response shall be defined as follows:
• When the BRCB state is disabled: a GetBRCBValues shall return the EntryID value that represents the last (i.e..newest) entry that has been entered into the buffer.
• When the BRCB state is resync: a GetBRCBValues shall return the value of the EntryID specified within the last SetBRCBValues.
• When the BRCB state is enabled: The value of EntryID, returned in a GetBRCBValues response, shall be the EntryID of the last set of events sent.
An EntryID value of all zeros(0) is reserved to indicate an empty buffer, no reported EntryID shall have a value of zero(0).
"
13 Dec 06 Ballot Period
Here is the proposed text to further clarify BufOvl:

The parameter BufOvl shall indicate to the client that a buffer overflow occurred. Buffer overflow shall be detected if:
• A client attempts to re-sync with the server by using the SetBRCBValues service which specifies an EntryID that can’t be located by the server.
The BRCB shall set BufOvl= TRUE in the first report that is sent with events that occurred after the overflow. Subsequent reports shall have BufOvl = FALSE.
17 Oct 06 Discussion (red)
See text proposal of Tissue 190. 17 Oct 06 Discussion (red)
Agree that this needs to be fixed.

The only rational behaviour is that the server re-syncs to the first available EntryID in the buffer and prepares to indicate that there was a buffer overflow situation.

The reason that this is a buffer overflow is that the requested EntryID does not exist which is the same circumstance as an Entry being removed from the buffer due to resource constraints.
17 Oct 06 Discussion (red)

 

Privacy | Contact | Disclaimer

Tissue DB v. 23.12.13.1