draft-ietf-mmusic-sdp-new-02.txt   draft-ietf-mmusic-sdp-new-03.txt 
Internet Engineering Task Force MMUSIC WG Internet Engineering Task Force MMUSIC WG
INTERNET-DRAFT Mark Handley/ACIRI INTERNET-DRAFT Mark Handley/ACIRI
draft-ietf-mmusic-sdp-new-02.txt Van Jacobson/Packet Design draft-ietf-mmusic-sdp-new-03.txt Van Jacobson/Packet Design
Colin Perkins/ISI Colin Perkins/ISI
30 April 2001 13 July 2001
Expires: October 2001 Expires: January 2002
SDP: Session Description Protocol SDP: Session Description Protocol
Status of this Memo Status of this Memo
This document is an Internet-Draft and is in full conformance with all This document is an Internet-Draft and is in full conformance with all
provisions of Section 10 of RFC2026. provisions of Section 10 of RFC2026.
Internet-Drafts are working documents of the Internet Engineering Task Internet-Drafts are working documents of the Internet Engineering Task
Force (IETF), its areas, and its working groups. Note that other groups Force (IETF), its areas, and its working groups. Note that other groups
skipping to change at page 12, line 31 skipping to change at page 12, line 31
Email Address and Phone Number Email Address and Phone Number
e=<email address> e=<email address>
p=<phone number> p=<phone number>
o These specify contact information for the person responsible for the o These specify contact information for the person responsible for the
conference. This is not necessarily the same person that created conference. This is not necessarily the same person that created
the conference announcement. the conference announcement.
o Either an email field or a phone field MUST be specified. o Inclusion of an email address or phone number is OPTIONAL. Note
Additional email and phone fields are allowed. that the previous version of SDP specified that either an email
field or a phone field MUST be specified, but this was widely
ignored. The change brings the specification into line with common
usage.
o If these are present, they should be specified before the first o If these are present, they should be specified before the first
media field. media field.
o More than one email or phone field can be given for a session o More than one email or phone field can be given for a session
description. description.
o Phone numbers should be given in the conventional international o Phone numbers should be given in the conventional international
format - preceded by a ``+'' and the international country code. format - preceded by a ``+'' and the international country code.
There must be a space or a hyphen (``-'') between the country code There must be a space or a hyphen (``-'') between the country code
skipping to change at page 13, line 38 skipping to change at page 13, line 40
description (see below) or a ``c='' field at the session-level. It MAY description (see below) or a ``c='' field at the session-level. It MAY
contain a session-level ``c='' field and one additional ``c='' field per contain a session-level ``c='' field and one additional ``c='' field per
media description, in which case the per-media values override the media description, in which case the per-media values override the
session-level settings for the relevant media. session-level settings for the relevant media.
The first sub-field is the network type, which is a text string giving The first sub-field is the network type, which is a text string giving
the type of network. Initially ``IN'' is defined to have the meaning the type of network. Initially ``IN'' is defined to have the meaning
``Internet''. ``Internet''.
The second sub-field is the address type. This allows SDP to be used The second sub-field is the address type. This allows SDP to be used
for sessions that are not IP based. Currently only IP4 is defined. for sessions that are not IP based. Currently only IP4 and IP6 are
defined.
The third sub-field is the connection address. Optional extra sub- The third sub-field is the connection address. Optional extra sub-
fields may be added after the connection address depending on the value fields may be added after the connection address depending on the value
of the <address type> field. of the <address type> field.
For IP4 addresses, the connection address is defined as follows: For IP4 and IP6 addresses, the connection address is defined as follows:
o If the session is multicast, the connection address will be an IP o If the session is multicast, the connection address will be an IP
multicast group address. If the conference is not multicast, then multicast group address. If the conference is not multicast, then
the connection address contains the unicast IP address of the the connection address contains the unicast IP address of the
expected data source or data relay or data sink as determined by expected data source or data relay or data sink as determined by
additional attribute fields. It is not expected that unicast additional attribute fields. It is not expected that unicast
addresses will be given in a session description that is addresses will be given in a session description that is
communicated by a multicast announcement, though this is not communicated by a multicast announcement, though this is not
prohibited. prohibited.
skipping to change at page 16, line 12 skipping to change at page 16, line 17
o ``t='' fields specify the start and stop times for a session. o ``t='' fields specify the start and stop times for a session.
Multiple ``t='' fields MAY be used if a session is active at Multiple ``t='' fields MAY be used if a session is active at
multiple irregularly spaced times; each additional ``t='' field multiple irregularly spaced times; each additional ``t='' field
specifies an additional period of time for which the session will be specifies an additional period of time for which the session will be
active. If the session is active at regular times, an ``r='' field active. If the session is active at regular times, an ``r='' field
(see below) should be used in addition to and following a ``t='' (see below) should be used in addition to and following a ``t=''
field - in which case the ``t='' field specifies the start and stop field - in which case the ``t='' field specifies the start and stop
times of the repeat sequence. times of the repeat sequence.
o The first and second sub-fields give the start and stop times for o The first and second sub-fields give the start and stop times for
the conference respectively. These values are the decimal the session respectively. These values are the decimal
representation of Network Time Protocol (NTP) time values in seconds representation of Network Time Protocol (NTP) time values in seconds
[1]. To convert these values to UNIX time, subtract decimal [1]. To convert these values to UNIX time, subtract decimal
2208988800. 2208988800.
NTP timestamps are 64 bit values which wrap sometime in the year
2036. Since SDP uses an arbitrary length decimal representation,
this should not cause an issue (SDP timestamps will continue
counting seconds since 1900, NTP will use the value modulo the 64
bit limit).
o If the stop-time is set to zero, then the session is not bounded, o If the stop-time is set to zero, then the session is not bounded,
though it will not become active until after the start-time. If the though it will not become active until after the start-time. If the
start-time is also zero, the session is regarded as permanent. start-time is also zero, the session is regarded as permanent.
User interfaces SHOULD strongly discourage the creation of unbounded User interfaces SHOULD strongly discourage the creation of unbounded
and permanent sessions as they give no information about when the and permanent sessions as they give no information about when the
session is actually going to terminate, and so make scheduling session is actually going to terminate, and so make scheduling
difficult. difficult.
The general assumption may be made, when displaying unbounded The general assumption may be made, when displaying unbounded
skipping to change at page 24, line 49 skipping to change at page 25, line 13
not dependent on charset. not dependent on charset.
a=ptime:<packet time> a=ptime:<packet time>
This gives the length of time in milliseconds represented by the This gives the length of time in milliseconds represented by the
media in a packet. This is probably only meaningful for audio data. media in a packet. This is probably only meaningful for audio data.
It should not be necessary to know ptime to decode RTP or vat audio, It should not be necessary to know ptime to decode RTP or vat audio,
and it is intended as a recommendation for the and it is intended as a recommendation for the
encoding/packetisation of audio. It is a media attribute, and is encoding/packetisation of audio. It is a media attribute, and is
not dependent on charset. not dependent on charset.
a=maxptime:<maximum packet time>
The maximum amount of media which can be encapsulated in each
packet, expressed as time in milliseconds. The time shall be
calculated as the sum of the time the media present in the packet
represents. The time SHOULD be a multiple of the frame size. This is
probably only meaningful for audio data. It is a media attribute,
and is not dependent on charset.
a=recvonly a=recvonly
This specifies that the tools should be started in receive-only mode This specifies that the tools should be started in receive-only mode
where applicable. It can be either a session or media attribute, and where applicable. It can be either a session or media attribute, and
is not dependent on charset. is not dependent on charset.
a=sendrecv a=sendrecv
This specifies that the tools should be started in send and receive This specifies that the tools should be started in send and receive
mode. This is necessary for interactive conferences with tools such mode. This is necessary for interactive conferences with tools such
as wb which defaults to receive only mode. It can be either a as wb which defaults to receive only mode. It can be either a
session or media attribute, and is not dependent on charset. session or media attribute, and is not dependent on charset.
skipping to change at page 33, line 31 skipping to change at page 34, line 31
sess-id = 1*(DIGIT) sess-id = 1*(DIGIT)
;should be unique for this originating username/host ;should be unique for this originating username/host
sess-version = 1*(DIGIT) sess-version = 1*(DIGIT)
;0 is a new session ;0 is a new session
connection-address = multicast-address connection-address = multicast-address
| unicast-address | unicast-address
multicast-address = 3*(decimal_uchar ".") decimal_uchar "/" ttl multicast-address = IP4-multicast | IP6-multicast
IP4-multicast = m1 3*(decimal_uchar ".") decimal_uchar "/" ttl
[ "/" integer ] [ "/" integer ]
;multicast addresses may be in the range ;IPv4 multicast addresses may be in the range
;224.0.0.0 to 239.255.255.255 ;224.0.0.0 to 239.255.255.255
m1 = ("22" ("4"|"5"|"6"|"7"|"8"|"9")) | ("23" DIGIT ))
IP6-multicast = hexpart [ ":" IP4-multicast ] "/" ttl [ "/" integer ]
; IPv6 address starting with FF00
ttl = decimal_uchar ttl = decimal_uchar
start-time = time | "0" start-time = time | "0"
stop-time = time | "0" stop-time = time | "0"
time = POS-DIGIT 9*(DIGIT) time = POS-DIGIT 9*(DIGIT)
;sufficient for 2 more centuries ;sufficient for 2 more centuries
repeat-interval = typed-time repeat-interval = typed-time
skipping to change at page 34, line 32 skipping to change at page 35, line 35
bandwidth = 1*(DIGIT) bandwidth = 1*(DIGIT)
username = safe username = safe
;pretty wide definition, but doesn't include space ;pretty wide definition, but doesn't include space
email-address = email | email "(" email-safe ")" | email-address = email | email "(" email-safe ")" |
email-safe "<" email ">" email-safe "<" email ">"
email = ;defined in RFC822 email = ;defined in RFC822
uri= ;defined in RFC1630 uri= ;defined in RFC1630 and RFC2732
phone-number = phone | phone "(" email-safe ")" | phone-number = phone | phone "(" email-safe ")" |
email-safe "<" phone ">" email-safe "<" phone ">"
phone = "+" POS-DIGIT 1*(space | "-" | DIGIT) phone = "+" POS-DIGIT 1*(space | "-" | DIGIT)
;there must be a space or hyphen between the ;there must be a space or hyphen between the
;international code and the rest of the number. ;international code and the rest of the number.
nettype = "IN" nettype = "IN"
;list to be extended ;list to be extended
skipping to change at page 35, line 24 skipping to change at page 36, line 28
;fully qualified domain name as specified in RFC1035 ;fully qualified domain name as specified in RFC1035
unicast-address = IP4-address | IP6-address unicast-address = IP4-address | IP6-address
IP4-address = b1 "." decimal_uchar "." decimal_uchar "." b4 IP4-address = b1 "." decimal_uchar "." decimal_uchar "." b4
b1 = decimal_uchar b1 = decimal_uchar
;less than "224"; not "0" or "127" ;less than "224"; not "0" or "127"
b4 = decimal_uchar b4 = decimal_uchar
;not "0" ;not "0"
IP6-address = ;to be defined IP6-address = hexpart [ ":" IP4-address ]
hexpart = hexseq | hexseq "::" [ hexseq ] | "::" [ hexseq ]
hexseq = hex4 *( ":" hex4)
hex4 = 1*4HEXDIG
text = byte-string text = byte-string
;default is to interpret this as IS0-10646 UTF8 ;default is to interpret this as IS0-10646 UTF8
;ISO 8859-1 requires a "a=charset:ISO-8859-1" ;ISO 8859-1 requires a "a=charset:ISO-8859-1"
;session-level attribute to be used ;session-level attribute to be used
byte-string = 1*(0x01..0x09|0x0b|0x0c|0x0e..0xff) byte-string = 1*(0x01..0x09|0x0b|0x0c|0x0e..0xff)
;any byte except NUL, CR or LF ;any byte except NUL, CR or LF
decimal_uchar = DIGIT decimal_uchar = DIGIT
skipping to change at page 41, line 23 skipping to change at page 42, line 23
Van Jacobson Van Jacobson
MS 46a-1121 MS 46a-1121
Lawrence Berkeley Laboratory Lawrence Berkeley Laboratory
Berkeley, CA 94720 Berkeley, CA 94720
United States United States
Email: van@ee.lbl.gov Email: van@ee.lbl.gov
Colin Perkins Colin Perkins
USC Information Sciences Institute USC Information Sciences Institute
4350 N. Fairfax Drive 3811 N. Fairfax Drive, Suite 200
Arlington, VA 22203 Arlington, VA 22203
United States United States
Email: csp@isi.edu Email: csp@isi.edu
Acknowledgments Acknowledgments
Many people in the IETF MMUSIC working group have made comments and Many people in the IETF MMUSIC working group have made comments and
suggestions contributing to this document. In particular, we would like suggestions contributing to this document. In particular, we would like
to thank Eve Schooler, Steve Casner, Bill Fenner, Allison Mankin, Ross to thank Eve Schooler, Steve Casner, Bill Fenner, Allison Mankin, Ross
Finlayson, Peter Parnes, Joerg Ott, Carsten Bormann and Steve Hanna. Finlayson, Peter Parnes, Joerg Ott, Carsten Bormann and Steve Hanna.
 End of changes. 

This html diff was produced by rfcdiff 1.23, available from http://www.levkowetz.com/ietf/tools/rfcdiff/