core-wg / yang-cbor

Internet-Draft for CBOR representation of YANG data
5 stars 10 forks source link

NETCONF Protocol SIDs #96

Closed abierman closed 2 years ago

abierman commented 3 years ago

The NETCONF WG has work under development for notification, notably YANG Push. There is a UDP transport draft that will be used to send a NETCONF <notification> message. There is an expired draft for Binary NETONF that may come back, and very likely to be implemented in the near future. There is a need for a standard list of protocol message container elements that are not modeled in YANG.

This is a very small list that will rarely change

 hello
 notification
 rpc
 rpc-reply

These will be the outermost container maps in these protocols. A SID is needed for each one.

cabo commented 3 years ago

So we at least should reserve a small SID space for this and extensions.

apelov commented 3 years ago

Yes, seems like the normal way of allocating SIDs, right? (RFC -> SID allocation)

mcr commented 3 years ago

Put this into 0-999 Area, via some short document (udp-notify) that does this allocation, and explains what is going.

cabo commented 3 years ago

How is this closed? We still need to do the work (even if we know what that will be).

mcr commented 3 years ago

We discussed if we needed to put the four needed SID values into the yang-cbor document, and concluded that we didn't.

That it could be done in https://www.ietf.org/archive/id/draft-ietf-netconf-udp-notif-04.html via the normal SID allocation process. It could allocate a 1000 unit range, or being rather specific, it could use the 0-999 RESERVED allocation.

Perhaps we should establish some rules for the 0-999, like RFC Required/IETF Action. (1-byte? 1+1, 1+2?)

abierman commented 3 years ago

The UDP draft is under-specified and probably not implemented by anybody. It is not clear that there is anything for the CBOR draft to do other than transfer the issue to that draft.

A NETCONF notification has a very specific structure

  <notification>
      <eventTime>date-and-time-stamp</eventTime>
      <replace-with-event-type-as-container>
         ...  notification-stmt contents as children of the event container
      </replace-with-event-type-as-container>
  </notification>

The notification and eventTime elements are not modeled in YANG at all.

The entire SID file structure is designed around a YANG module so there is really no way to even describe a special node that is not modeled in YANG. In this case "replace-with-event-type-as-container" is not supported in YANG at all.

mcr commented 2 years ago

Hold for future work.