Meeting Minutes: October 8, 2014
Attendees: Tomohiro Henrik Hans John Freek Chin Minutes: 1. Agreement was made to wait until after SC2014 for any planned URN conversions. 2. John presented a draft of the network and STP identifier proposal as discussed at the NORDUnet conference. An exciting discussion ensued with a heated debate. I have included below the revised proposal based on comments from the call. Please read it over to make sure we are in agreement. 3. Freek decided he would #SYAP (Submit Yet Another Proposal) for URNs to keep the local part opaque as per the NURN specification. He was thoroughly stoned by an agitated NSI working group. Proposal promised for Friday October 10th if he had recovered from the stoning. It has not come out so I guess he is still nursing his wounds. There were no new items so we ended the meeting. John REFERENCES [RFC2141] Moats, R., "URN Syntax", RFC 2141, May 1997. [RFC2141bis] Sait-Andre, P., "Uniform Resource Name (URN) Syntax", draft-ietf-urnbis-rfc2141bis-urn-07, January 2014 (Expired). [RFC5890] Klensin, j., "Internationalized Domain Names for Applications (IDNA): Definitions and Document Framework", RFC 5890, August 2010. [RFC6453] Dijkstra, F., "A URN Namespace for the Open Grid Forum (OGF)", RFC 6453, December 2011. [GFD202] van der Ham, J., "A URN Namespace for Network Resources", GFD.202, April 2013. Network and STP identifier Syntactic Structure A network resource URN (NURN) identified by the "urn:ogf:network:" prefix is defined in [GFD202]. NSI utilizes NURN formatted URNs in the P2P service definition, and within NML topology describing NSI network constructs. The NSI Connection Service Protocol specification [OGF-NSI-CS] puts a specific requirement on the Service Termination Point Identifier (stpId), defining the stpId as a three-part identifier composed of a network identifier part, a local identifier part, and a qualifying label part: <STP identifier> ::= <networkId> “:” <localId> <label> <label> ::= “?” <labelType> “=” <labelValue> | “?”<labelType> | “” <labelType> ::= <string> <labelValue> ::= <string> To maintain syntactic correctness with the NURN specification such that an stpId is also a valid NURN formatted URN, we define a specific Augmented BNF [RFC 5234] to restrict the format of the NSI Network and STP identifiers such that they remain NURN compliant, but provide the needed imbedded structure for separating the networkId and localId components. To to do this we must also relax the following NURN restriction: "OPAQUE-PART is opaque, and must not be parsed or interpreted by any organization except for the organization that assigned the URN." NSAs within the connected control plane are permitted, when needed, to parse an NURN into component parts as defined below. NSAID = "urn:ogf:network:" ORGID ":" LOCALPART NETWORKID = "urn:ogf:network:" ORGID ":" LIMITEDLOCALPART STPID = NETWORKMEMBER SERVICEDOMAINID = NETWORKMEMBER SERVICEADAPTATIONID = NETWORKMEMBER SERVICEDEFINITIONID = NETWORKMEMBER ORGID = FQDN ":" DATE ; ID of assigning organisation FQDN = 1*(ALPHA / DIGIT / "-" / ".") ; Domain name DATE = YEAR *1(MONTH *1DAY) ; Date of creation of ORGID YEAR = 4DIGIT MONTH = 2DIGIT DAY = 2DIGIT LIMITEDLOCALPART = *(ALPHA / DIGIT / SYMBOL) ALPHA = %x41-5A / %x61-7A ; A-Z / a-z DIGIT = %x30-39 ; 0-9 SYMBOL = "+" / "," / "-" / "." / ";" / "=" / "_" NETWORKMEMBER = NETWORKID ":" LOCALPART *1QUERY *1FRAGMENT ; LOCALPART = *(ALPHA / DIGIT / OTHER) OTHER = ALLOWED / EXTENSION ALLOWED = "+" / "," / "-" / "." / ":" / ";" / "=" / "_" EXTENSION = "!" / "$" / "(" / ")" / "*" / "@" / "~" / "&" QUERY = "?" *QFCHAR FRAGMENT = "#" *QFCHAR QFCHAR = ALPHA / DIGIT / OTHER The full length of an ID must not exceed 255 characters as defined in [GFD202]. ALLOWED and SYMBOL characters may be used for the assignment of NURNs. EXTENSION characters should not be used to assign NURNs. To allow for future extensions, parsers should accept NURNs with EXTENSION characters as per [GFD202]. The QUERY part is used by NSI to specify technology specific labels as part of the NURN as per [OGF-NSI-CS]. The FRAGMENT parts must not be present in any assigned NURN and is reserved for future standardization as per [GFD202]. An NURN must not contain percentage-encoded characters ("%" HEXDIG HEXDIG). It should also be noted that the following characters (which are either allowed by the URI or URN specification) must not be used in the LOCALPART or LIMITEDLOCALPART of an NURN: "%", "/", "?", "#", and "'". DOMAIN is a fully qualified domain name (FQDN) of the URN assigning organisation in LDR format [RFC5890]. Valid examples are example.net and example.xn--jxalpdlp. DATE is a date (either year, year+month or year+month+day). The combination of DOMAIN and DATE forms the organisation identifier, ORGID. Examples The following are examples of legal network identifiers: 1. urn:ogf:network:grnet.gr:2013:topology 2. urn:ogf:network:surfnet.nl:1990:production7 3. urn:ogf:network:caltech.edu: The following are examples of illegal network identifiers: 1. urn:ogf:network:es.net:2013 2. urn:ogf:network:cipo.rnp.br:2014 3. urn:ogf:network:example.net:2013:production:east In example #1 and #2 there is no following colon after the DATE component. This is required even when there is no LIMITEDLOCALPART. In example #3 the LIMITEDLOCALPART contains a colon ":" which is not a member of the character set. The following are examples of legal STP identifiers for a network identifier of "urn:ogf:network:example.net:2013:topology": 1. urn:ogf:network:example.net:2013:topology:CLIENT_port 2. urn:ogf:network:example.net:2013:topology:EAST_PORT_TO_CUSTOMER:in 3. urn:ogf:network:example.net:2013:topology:PORT+TO-CUSTOMER:east:bidirectional The following are examples of legal STP identifiers for a network identifier of "urn:ogf:network:example.net:2013:": 1. urn:ogf:network:example.net:2013::CLIENT_port 2. urn:ogf:network:example.net:2013::EAST_PORT_TO_CUSTOMER:in 3. urn:ogf:network:example.net:2013::PORT+TO-CUSTOMER:east:bidirectional The following are examples of illegal STP identifiers for a network identifier of "urn:ogf:network:example.net:2013:topology": 1. urn:ogf:network:example.net:2013:client_port 2. urn:ogf:network:example.net:2013::client_port 2. urn:ogf:network:example.net:2013:topology:client_port:xe-8/2/0:* In example #1 and #2 the network identifier's LIMITEDLOCALPART is missing from the STP identifier. In example #3 the "/" and "*" characters are illegal LOCALPART characters based on the NURN definition.
Thanks to Chin for noticing I missed the DATE component on:
3. urn:ogf:network:caltech.edu:
Obviously, this should be urn:ogf:network:caltech.edu:2014: This gives me another example. I will update the text. Thanks, John On 2014-10-13, at 9:57 PM, John MacAuley <macauley@es.net> wrote:
Attendees:
Tomohiro Henrik Hans John Freek Chin
Minutes:
1. Agreement was made to wait until after SC2014 for any planned URN conversions. 2. John presented a draft of the network and STP identifier proposal as discussed at the NORDUnet conference. An exciting discussion ensued with a heated debate. I have included below the revised proposal based on comments from the call. Please read it over to make sure we are in agreement. 3. Freek decided he would #SYAP (Submit Yet Another Proposal) for URNs to keep the local part opaque as per the NURN specification. He was thoroughly stoned by an agitated NSI working group. Proposal promised for Friday October 10th if he had recovered from the stoning. It has not come out so I guess he is still nursing his wounds.
There were no new items so we ended the meeting.
John
REFERENCES [RFC2141] Moats, R., "URN Syntax", RFC 2141, May 1997. [RFC2141bis] Sait-Andre, P., "Uniform Resource Name (URN) Syntax", draft-ietf-urnbis-rfc2141bis-urn-07, January 2014 (Expired). [RFC5890] Klensin, j., "Internationalized Domain Names for Applications (IDNA): Definitions and Document Framework", RFC 5890, August 2010. [RFC6453] Dijkstra, F., "A URN Namespace for the Open Grid Forum (OGF)", RFC 6453, December 2011. [GFD202] van der Ham, J., "A URN Namespace for Network Resources", GFD.202, April 2013.
Network and STP identifier Syntactic Structure A network resource URN (NURN) identified by the "urn:ogf:network:" prefix is defined in [GFD202]. NSI utilizes NURN formatted URNs in the P2P service definition, and within NML topology describing NSI network constructs. The NSI Connection Service Protocol specification [OGF-NSI-CS] puts a specific requirement on the Service Termination Point Identifier (stpId), defining the stpId as a three-part identifier composed of a network identifier part, a local identifier part, and a qualifying label part:
<STP identifier> ::= <networkId> “:” <localId> <label> <label> ::= “?” <labelType> “=” <labelValue> | “?”<labelType> | “” <labelType> ::= <string> <labelValue> ::= <string>
To maintain syntactic correctness with the NURN specification such that an stpId is also a valid NURN formatted URN, we define a specific Augmented BNF [RFC 5234] to restrict the format of the NSI Network and STP identifiers such that they remain NURN compliant, but provide the needed imbedded structure for separating the networkId and localId components. To to do this we must also relax the following NURN restriction: "OPAQUE-PART is opaque, and must not be parsed or interpreted by any organization except for the organization that assigned the URN." NSAs within the connected control plane are permitted, when needed, to parse an NURN into component parts as defined below.
NSAID = "urn:ogf:network:" ORGID ":" LOCALPART NETWORKID = "urn:ogf:network:" ORGID ":" LIMITEDLOCALPART STPID = NETWORKMEMBER SERVICEDOMAINID = NETWORKMEMBER SERVICEADAPTATIONID = NETWORKMEMBER SERVICEDEFINITIONID = NETWORKMEMBER
ORGID = FQDN ":" DATE ; ID of assigning organisation FQDN = 1*(ALPHA / DIGIT / "-" / ".") ; Domain name DATE = YEAR *1(MONTH *1DAY) ; Date of creation of ORGID YEAR = 4DIGIT MONTH = 2DIGIT DAY = 2DIGIT LIMITEDLOCALPART = *(ALPHA / DIGIT / SYMBOL) ALPHA = %x41-5A / %x61-7A ; A-Z / a-z DIGIT = %x30-39 ; 0-9 SYMBOL = "+" / "," / "-" / "." / ";" / "=" / "_"
NETWORKMEMBER = NETWORKID ":" LOCALPART *1QUERY *1FRAGMENT ; LOCALPART = *(ALPHA / DIGIT / OTHER) OTHER = ALLOWED / EXTENSION ALLOWED = "+" / "," / "-" / "." / ":" / ";" / "=" / "_" EXTENSION = "!" / "$" / "(" / ")" / "*" / "@" / "~" / "&" QUERY = "?" *QFCHAR FRAGMENT = "#" *QFCHAR QFCHAR = ALPHA / DIGIT / OTHER
The full length of an ID must not exceed 255 characters as defined in [GFD202].
ALLOWED and SYMBOL characters may be used for the assignment of NURNs. EXTENSION characters should not be used to assign NURNs. To allow for future extensions, parsers should accept NURNs with EXTENSION characters as per [GFD202].
The QUERY part is used by NSI to specify technology specific labels as part of the NURN as per [OGF-NSI-CS].
The FRAGMENT parts must not be present in any assigned NURN and is reserved for future standardization as per [GFD202].
An NURN must not contain percentage-encoded characters ("%" HEXDIG HEXDIG). It should also be noted that the following characters (which are either allowed by the URI or URN specification) must not be used in the LOCALPART or LIMITEDLOCALPART of an NURN: "%", "/", "?", "#", and "'".
DOMAIN is a fully qualified domain name (FQDN) of the URN assigning organisation in LDR format [RFC5890]. Valid examples are example.net and example.xn--jxalpdlp.
DATE is a date (either year, year+month or year+month+day). The combination of DOMAIN and DATE forms the organisation identifier, ORGID.
Examples The following are examples of legal network identifiers:
1. urn:ogf:network:grnet.gr:2013:topology 2. urn:ogf:network:surfnet.nl:1990:production7 3. urn:ogf:network:caltech.edu:
The following are examples of illegal network identifiers:
1. urn:ogf:network:es.net:2013 2. urn:ogf:network:cipo.rnp.br:2014 3. urn:ogf:network:example.net:2013:production:east
In example #1 and #2 there is no following colon after the DATE component. This is required even when there is no LIMITEDLOCALPART. In example #3 the LIMITEDLOCALPART contains a colon ":" which is not a member of the character set.
The following are examples of legal STP identifiers for a network identifier of "urn:ogf:network:example.net:2013:topology":
1. urn:ogf:network:example.net:2013:topology:CLIENT_port 2. urn:ogf:network:example.net:2013:topology:EAST_PORT_TO_CUSTOMER:in 3. urn:ogf:network:example.net:2013:topology:PORT+TO-CUSTOMER:east:bidirectional
The following are examples of legal STP identifiers for a network identifier of "urn:ogf:network:example.net:2013:":
1. urn:ogf:network:example.net:2013::CLIENT_port 2. urn:ogf:network:example.net:2013::EAST_PORT_TO_CUSTOMER:in 3. urn:ogf:network:example.net:2013::PORT+TO-CUSTOMER:east:bidirectional
The following are examples of illegal STP identifiers for a network identifier of "urn:ogf:network:example.net:2013:topology":
1. urn:ogf:network:example.net:2013:client_port 2. urn:ogf:network:example.net:2013::client_port 2. urn:ogf:network:example.net:2013:topology:client_port:xe-8/2/0:*
In example #1 and #2 the network identifier's LIMITEDLOCALPART is missing from the STP identifier. In example #3 the "/" and "*" characters are illegal LOCALPART characters based on the NURN definition.
_______________________________________________ nsi-wg mailing list nsi-wg@ogf.org https://www.ogf.org/mailman/listinfo/nsi-wg
participants (2)
-
John MacAuley
-
John MacAuley