Hello Gonzales, In message <[EMAIL PROTECTED]> Gonzalo Camarillo <[EMAIL PROTECTED]> writes: >Therefore, comments about the actual format are very welcome. Other >comments are interesting for other documents, but I do not think the >IESG has to be involved in such a discussion until those documents are >done.
Would it be impossible (or too late) to align your spec with the updated format in sdp-new-04? It fixes the errors in your ABNF and it is mostly consistent with the syntax in RFC 2327. I have cut and pasted relevant ABNF from sdp-new-04 and RFC 2327 (FQDN and TTL are from old SDP) below. It is not strictly compatible with RFC 2327 as it fixes a bug with multicast-address rule (which could have more than 4 octets in RFC 2327): --8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<-- 3. Syntax RFC2373 [1] gives an ABNF for the text representation of IPv6 addresses in Appendix B. RFC2732 [3] covers the text representation of IPv6 addresses when used within a URL. Using the ABNF described in these documents, the following updated ABNF for SDP is proposed. connection-address = multicast-address | addr multicast-address = addr "/" ttl [ "/" integer ] ;IPv4 multicast addresses must be in the range ;224.0.0.0 to 239.255.255.255 ;IPv6 multicast addresses must begin with the byte FF ;or include an IPv4 multicast address ttl = decimal-uchar addr = FQDN | unicast-address unicast-address = IP4-address | IP6-address FQDN = 4*(alpha-numeric|"-"|".") ;fully qualified domain name as specified in RFC1035 ; IP4-address, IP6-address: From RFC 2373 IP6-address = hexpart [ ":" IP4-address ] IP4-address = 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT "." 1*3DIGIT hexpart = hexseq | hexseq "::" [ hexseq ] | "::" [ hexseq ] hexseq = hex4 *( ":" hex4) hex4 = 1*4HEXDIG uri = URI-reference ; defined in RFC2396/2732 ; decimal-uchar, integer, and alpha-numeric are defined in RFC2327 -->8---->8---->8---->8---->8---->8---->8---->8---->8---->8---->8---->8---->8-- You could also discuss how TTL should be used with IPv6 addresses. While TTL is nice thing and makes it easy to recognize multicast addresses, it is not compatible with RFC2327 syntax. So, I propose something like following: --8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----8<-- 4.2 IPv6 and Multicast Addresses The IPv6 multicast addresses have the following format: | 8 | 4 | 4 | 112 bits | +------ -+----+----+---------------------------------------------+ |11111111|flgs|scop| group ID | +--------+----+----+---------------------------------------------+ A 8-bit prefix of all ones at the start of the address identitifies a multicast address. The text representation of the IPv6 multicast addresses begins always with a four-digit hex segment starting with "FF". Following the prefix are three reserved bits, initialized to zero, and a flag indicating how the address has been assigned. In text representation, the third hex-digit indicates if the multicast address is well-known (even digit) or transient (odd digit). The following four bits, scop, indicates the scope of the multicast address. The scop is the fourth hex-digit in the text representation. There is no TTL in IPv6, but the scope and group ID together identifies the multicast group. For multicast addresses mapped uniquely to IEEE 802 MAC addresses, the next 80 bits or 20 hex digits are reserved and must be zero. The last 32 bits identitifies the group within given scope. | 8 | 4 | 4 | 80 bits | 32 bits | +------ -+----+----+---------------------------+-----------------+ |11111111|flgs|scop| reserved must be zero | group ID | +--------+----+----+---------------------------+-----------------+ 4.2.1 Using TTL with IPv6 Multicast Address Conferences using an IPv6 multicast connection address SHOULD also have a time to live (TTL) value present in addition to the multicast address. The TTL and the IPv4 address together define the scope with which multicast packets sent in this conference will be sent. When an IPv4-compatible-IPv6 or IPv4-mapped-IPv6 address is used, TTL value MUST be in the range 0-255. When an IPv6 multicast connection address is used, a TTL value of 0 SHOULD is included. The TTL for the session is appended to the address using a slash as a separator. Examples are: c=IN IP6 FF1E::172A:1E24/0 c=IN IP6 ::233.42.30.36/16 -->8---->8---->8---->8---->8---->8---->8---->8---->8---->8---->8---->8---->8-- Pekka -------------------------------------------------------------------- IETF IPng Working Group Mailing List IPng Home Page: http://playground.sun.com/ipng FTP archive: ftp://playground.sun.com/pub/ipng Direct all administrative requests to [EMAIL PROTECTED] --------------------------------------------------------------------