Internet Engineering Task Force Integrated Services Working Group Internet Draft Balabanian-Nortel draft-balabanian-intserv-mpeg4-dmif-00.txt Sept. 19, 1998 Expires: March 23, 1999 The Use of MPEG-4/DMIF and RSVP with Integrated Services STATUS OF THIS MEMO This document is an Internet-Draft. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or made obsolete by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as ``work in progress''. To learn the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), munnari.oz.au (Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast). Distribution of this document is unlimited. ABSTRACT This draft proposal explains how the ISO/IEC MPEG DMIF (Delivery Multimedia Integration Framework) can be used to carry MPEG-4 streams according to required media specific QoSs using RSVP with Integrated Services. Comments are solicited and should be addressed to the working group's mailing list at int-serv@isi.edu and/or the authors. 1 Introduction MPEG-4 is a recent standard from ISO/IEC for the coding of natural and synthetic audio-visual data in the form of audiovisual objects that are arranged into an audiovisual scene by means of a scene description [1][2][3][4]. This draft proposal specifies how MPEG-4 QoS requirements for flows are mapped into RSVP with IETF Integrated- Services in the instance of ISO/IEC MPEG multimedia delivery integration framework (DMIF). This would allow the use of IP networks as transports for MPEG-4 streams requiring some level of QoS. This draft proposal provides a solution for discussion in IETF IntServ and ISO/IEC MPEG technical communities in order to identify issues in using of MPEG-4/DMIF with RSVP and incorporate the results. Balabanian [Page 1] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 This would lead to the finalization of the specification on how DMIF can be used to carry MPEG-4 streams according to media specific QoSs using RSVP with Integrated Services. The MPEG-4 standards are versioned each beyond V1 contain backward compatible extensions. MPEG-4 V1 is targeted to become ISO International Standard on December 1998 and each subsequent version will be displaced approximately by a year. MPEG-4 V2 is targeted for February 2000. DMIF is part 6 of the MPEG-4 standard. 1.1 The DMIF Model DMIF as an integration framework uses a uniform procedure at the DAI interface to access the MPEG-4 content irrespective whether the content is broadcast, stored on a local file or obtained through interaction with a remote end-system. The model is shown in Figure 1 below. ! +---+ +-----------+ +-----------+ +-----------+ ! | | |Local DMIF | |Remote DMIF| |Remote App.| +-----+ ! | D | |for Brd'cst| |(locally | |(locally | Brd'cst | | ! | M | | | | emulated) | | emulated) |<-----source |Local| ! | I | +-----------+ +-----------+ +-----------+ | | ! | F | +-----------+ +-----------+ +-----------+ |App | ! | | |Local DMIF | |Remote DMIF| |Remote App.| File | | ! | F | |for Local | |(locally | |(locally |<-----source | | ! | i | | Files | | emulated) | | emulated) | | | ! | l | +-----------+ +-----------+ +-----------+ | | ! | t | +-----------+ ! +---+ / ---- \ | | ! | e | |Local DMIF | ! |Sig| | --- ---- | +-----+ ! | r | |for Remote | ! |map|<->( Network ) |Outside the ! | | | Service | ! | | | ---- ----- |scope of DMIF ! +---+ +-----------+ ! +---+ | ----- | DAI DNI | ^ | \_____ |________/ | | +---+!+------+!+------+ | |Sig|!|Remote|!|Remote| +->|map|!| DMIF |!| App. | | |!|(real)|!|(real)| +---+!+------+!+------+ DNI DAI Figure 1: The DMIF model covers broadcast, local file storage and remote service with a uniform procedure for application transparency Balabanian [Page 2] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 The specific instance of interest in this draft proposal is the interaction with a remote end-system. For this case DMIF uses internal (informative) DMIF-Network Interface(DNI)to map the controls obtained from the application through DAI into the various signaling appropriate to the various networks. The default end-to-end DMIF signaling (DS) protocol which corresponds to DNI is specified in DMIF V1 [4]. 1.5.2 Establishing channels using DAI Of interest in this draft proposal is the process by which a channel is established. Figures 2 and 3 below show the flow of signals across the DAI and the RSVP APIs, between a DMIF Receiver and its Sender. a) Precondition for the procedure in Figure 2: The MPEG-4 service has been initiated and the DMIF signaling channel "DS_" between the originating and the target DMIF [4] has been successfully established, after capability exchange. The receiver application is in possession of the Elementary Stream Descriptors [1] from which it selects the streams and obtains the media based QoS. Balabanian [Page 3] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 b) Channel establishment procedure RSVP RSVP API API DMIF | IP | DMIF DAI (Sndr) DNI| Network |DNI (Rcvr) DAI I-----------I +---------------+ I----------I I I | | I I DA_ChannelAdd I 3 I | DS_ChannelAdd | I 2 1 I DA_ChannelAdd <------------0<-----------------------------0<------((ES-Id,dir, ((ES-Id,dir)) I I |((CAT,dir, | I I qos)) I I | ,qos,ES-Id))| I I I I | | I I I I | | I I ((rsp)) I I | | I I 4 ----->I I | | I I I Maps I | | I I I Channels I | | I I I into I | | I I I specific I | | I I I RTP flows I | | I I I I DN_TransMuxSetup| I I I 5 ----------------------------> I I ((resdcrptr,st-qos)) I I I I ((resdcrptr,rsp)) I I I <--------------------------- 6 I I I | | I I I I | Sender_TSpec | I I I 7 int1----------------->I I I I | ADSpec | I I I I------------------>I I I I | 0-0 | I I I I | / \ | I I I I | / \ | I I I I |-0 \ | I I I I | 0-- | I I I I | FlowSpec | I I I 8 I<----------------- int2 I I reduce I | | I I readjust<--- RTP to I | | I I AL-PDU I new MTU I | | I I to new I I | | I I MTU I I | | I I I I | | I I I I | ((rsp)) | I I ((rsp)) I --------------------------->0--------------> I I | 9 | I 10 I I-----------I +---------------+ I----------I Figure 2: Establishment of downstream channels in MPEG-4 using DAI Signaling(For brevity only the relevant parameters are shown) Balabanian [Page 4] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 Step 1: The receiver application passes a DA_ChannelAdd() requesting channels for Elementary Streams ES-Id1 through Es-Idn. Each ES-Id is associated with direction and QoS. Step 2: DMIF generates Channel Association Tag CAT corresponding to each ES-Id and sends the requests to the sender DMIF. Step 3: At the sender DMIF DA_ChannelAdd is passed to the application. Step 4 The sender application may respond positively to each ES-Id request. Step 5: DMIF groups the channels into RTP flows [6][12] based on priority, QoS parameter values and traffic load requested for each channel. The pooling policy is outside the scope of DMIF. After the proper grouping of channels into flows. The stream-QoS (st-qos) is derived (for either a single or aggregate flows, see section 2.3) in order to be able to meet the QoS requirements for the aggregate channels. UDP/IP ports are assigned to the streams at the sender DMIF and a UDP/IP resourceDescriptors (resdcrptr) are sent along with the stream-QoS to the receiver. Step 6: the receiver DMIF completes the local UDP/IP ports for the requested streams in the UDP/IP resourceDescriptors in response to the DN_TransMuxSetup. Step 7: The UDP/IP resourceDescriptors and the stream-QoS descriptors are used to start RSVP PATH (int1) with Sender_Tspec and ADSpec. This is received at the receiver DMIF and RESV message (int2) is generated with the FlowSpec. The process of int1 and int2 is repeated regularly to maintain the soft states in the IP network. Step 8: After receiving the first RESV message a DA_ChannelInf() (new proposed) message is used to update the MTU size for the AL-PDUs of the stream [6]. This allows the conformance of the stream to the Class of Integrated Service requested. This message is repeated at every change of the MTU value received in int2. Step 9: The response to the DS_ChannelAdd is sent after receiving the first RESV message. Balabanian [Page 5] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 Step 10: At the receiver DMIF the response to the DA_ChannelAdd is sent indicate successful establishment of the channels with the requested QoSs. c) Decoder backchannel establishment procedure To be added. d) channel deleted procedures To be added. 2 Media QoS mapping into RSVP with Integrate Services 2.1 Media Based QoS and Traffic Load The following table provides the media QoS specified by the content provider irrespective of the network used for the transport of the media. No QoS values will be available in DMIF V2 The only parameters being specified in V1 are for characterizing the traffic load of the srtream (the last 3 rows in the table below). +=====================+=====================================+ | Media | Meaning of the | | QoS_QualifierTag | ES Media QoS | +=====================+=====================================+ | MAX_DELAY |Maximum delay per AU (microseconds) | | (DMIF V2) |measured over 1 sec. | +---------------------+-------------------------------------+ | AVG_DELAY |Average delay per AU allowed | | (DMIF V2) |(microseconds) measured over 1 min | +---------------------+-------------------------------------+ | Dejitter Buffer | Bytes reserved for the removal of | | (DMIF V2) | transport jitter from the steam | +---------------------+-------------------------------------+ | LOSS_PROB |Probability of loss of any single AU | | (DMIF V2) |(Fraction (0.00 - 1.00) over 1 sec. | +===========================================================+ | MAX_AU_SIZE |Maximum size of an AU (Bytes) | | (DMIF V1) | | +---------------------+-------------------------------------+ | MAX_AU_RATE |Maximum arrival rate of an AUs | | (DMIF V1) |(AU-PDU/second) | +---------------------+-------------------------------------+ | AVG_RTP_SIZE |Average size of AUs (Bytes) | | (DMIF V1) | | +---------------------+-------------------------------------+ Balabanian [Page 6] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 2.2 Other media stream qualifiers In addition to the traffic load in DMIF V1 the stream priority is specified: Priority: Indicates a 32 level value for the importance of the stream related to other streams in the session. 2.3 Derivation of the Media QoS for the RTP-PDU stream The Sync Layer in MPEG-4 fragments the Access Units into SL-PDUs and adds synchronization information [1]. The AL-PDUs in turn can be mapped to RTP-PDUs as follows [6]: RTP-PDU 1:1 SL-PDU RTP-PDU 1:N SL-PDU Balabanian [Page 7] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 2.3.1 The case RTP-PDU 1:1 SL-PDU The table below shows the stream QoS for the case when a single ES is mapped into the RTP PDU. Only the traffic load parameters(the last 3 rows in the table below) are specified in DMIF V1 targeted to be an ISO/IEC International Standard in December 1998. +=====================+=====================================+ | RTP Stream | Derivation from the | | QoS_QualifierTag | ES Media transport-QoS | +=====================+=====================================+ | MAX_DELAY of RTP PDU|Maximum delay per AU (microseconds) | | (DMIF V2) |measured over 1 sec. | +---------------------+-------------------------------------+ | AVG_DELAY of RTP PDU|Average delay per AU allowed | | (DMIF V2) |(microseconds) measured over 1 min | +---------------------+-------------------------------------+ | Dejitter Buffer | Adjusted for the overhead of the | | for the RTP stream | RTP PDU | | (DMIF V2) | | +---------------------+-------------------------------------+ | LOSS_PROB of RTP PDU|Probability of loss of any single AU | | (DMIF V2) |(Fraction (0.00 - 1.00) over 1 sec. | +===========================================================+ | MAX_RTP_SIZE |Maximum size of an AU (Bytes) | | (DMIF V1) |Plus AL-PDU and RTP overhead | +---------------------+-------------------------------------+ | MAX_RTP_RATE |Maximum arrival rate of AUs | | (DMIF V1) |(RTP-PDU/second) | +---------------------+-------------------------------------+ | AVG_RTP_SIZE |Average size of AUs (Bytes) | | (DMIF V1) |Plus AL-PDU and RTP overhead | +---------------------+-------------------------------------+ Balabanian [Page 8] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 2.3.2 The case RTP-PDU 1:N SL-PDU The table below shows the stream QoS for the case when multiple ES are aggregated into the RTP PDU. Only the traffic load parameters (the last 3 rows in the table below) are specified in DMIF V1 targeted to be an ISO/IEC International Standard in December 1998. +=====================+=====================================+ | RTP Stream | Derivation from the | | QoS_QualifierTag | ES Media QoS | +=====================+=====================================+ | MAX_DELAY of RTP PDU|Least Maximum delay per AU from | | (DMIF V2) |among the N AL-PDUs(microseconds) | | |measured over 1 sec. | +---------------------+-------------------------------------+ | AVG_DELAY of RTP PDU|Average delay per AU allowed | | (DMIF V2) |(microseconds) measured over 1 min. | +---------------------+-------------------------------------+ | Dejitter Buffer | Total of dejitter buffers adjusted | | for the RTP stream | for the overhead of the RTP PDU | | (DMIF V2) | | +---------------------+-------------------------------------+ | LOSS_PROB of RTP PDU|Least Probability of loss of any | | (DMIF V2) |single AU from the N AL-PDUs | | |(Fraction (0.00 - 1.00) over 1 sec. | +===========================================================+ | MAX_RTP_SIZE |Sum of the MAX_AU_SIZEs of from | | (DMIF V1) |each of the N AL-PDUs Plus AL-PDU | | |and RTP overhead | +---------------------+-------------------------------------+ | MAX_RTP_RATE |Highest MAX_AU_RATE of AUs from each | | (DMIF V1) |of the N AL-PDUs (RTP-PDU/second) | +---------------------+-------------------------------------+ | AVG_RTP_SIZE |Sum of Average size of AUs from | | (DMIF V1) |each of the N AL-PDUs Plus | | |AL-PDU and RTP overhead (Bytes) | +---------------------+-------------------------------------+ Note all the MPEG-4 streams chosen for aggregation over an RTP stream belong to the same stream priority level identified by the Sync Layer. 2.4 Choice of Integrated Service QoS service Each elementary Stream is assigned one of the 32 levels of stream priority [1]. "streamPriority - indicates a relative measure for the priority of this Elementary Stream. An Elementary Stream with a higher streamPriority is more important than one with a lower streamPriority. The absolute values of streamPriority are not normatively defined."[1] Balabanian [Page 9] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 "streamPriority: Provides the priority of the channel. Lower values mean lower priority." [4] These priorities relate to the streams within one MPEG-4 session. On top of these priorities one can superimpose the network priority classes. These relate each individual stream to other streams on the network. It is conceivable and even logical that some mapping algorithms may map higher stream priority values to a higher network priority classs. This policy matter is outside the scope of DMIF. The integrated service classes are described below: Best Effort (the IP network default) DMIF may monitor the channel's performance and request controlled- load service from the network only when best-effort service is not providing acceptable performance. This provides flexibility and offers cost savings in environments where levels of service above best-effort incur a charge. The DMIF layer may choose based on a policy to monitor the performance parameters as defined in [12] in order to take corrective action and notify the user of the necessity for a corrective action. Controlled-Load Service[8] Tightly approximates the behavior visible to applications receiving best-effort service *under unloaded conditions* from the same series of network elements. The controlled-load service is best suited to those applications which can usefully characterize their traffic requirements, this includes the "continuous media" data, such as digitized audio or video. This service is not isochronous and does not provide any explicit information about transmission delay. MPEG-4 with end-to-end timing mechanism can use it similar to the best-effort service. Guaranteed Quality of Service[9] Assures level of bandwidth that, when used by a policed flow, produces a delay-bounded service with no queuing loss for all conforming datagrams. Balabanian [Page 10] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 The choice of any one of the above classes could be made as follows: 1- If MAX_DELAY for the RTP PDU is specified then the attempt is made to use a Guaranteed Quality Service. 2- If LOSS_PROB of RTP PDU is specified then the Controlled-Load Service is attempted. 3- If MAX_DELAY is not specified and LOSS_PROB is not specified then use the Best Effort Only experience will dictate the best formula for mapping and could be a differentiating factor between commercial mapping algorithm softwares. 2.5 Building the Sender_TSpec The Sender_TSpec specifies the load which is used to ensure adequate resources are present at network elements in case of Controlled-Load and Guaranteed Services. The Sender_TSpec parameters and their derivation from the RTP Media QoS follows: -- The token bucket has a bucket depth, b b could be approximated as follows: b >= T*MAX_RTP_RATE(MAX_RTP_SIZE - AVG_RTP_SIZE) Where T is the time period. [Author's note: How is the value of T obtained?] [Author's note: DMIF is considering the use of T*(MAX_RTP_BITRATE- AVG_RTP_BITRATE)/8] -- Bucket rate, r r could be approximated as follows: r = MAX_RTP_RATE*AVG_RTP_SIZE [Author's note: A better measure is required for this such as AVG_RTP-BITRATE. This matter is under consideration in DMIF)] -- The peak rate, p The peak rate is the maximum rate at which the source may inject bursts of traffic into the network. p MUST be greater than or equal to the token bucket rate, r. If the peak rate is unknown or unspecified, then p MUST be set to infinity. p could be approximated as follows: p = MAX_RTP_RATE*MAX_RTP_SIZE [Author's note: A better measure is required for this such as MAX_RTP-BITRATE. This matter is under consideration in DMIF] Balabanian [Page 11] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 -- The minimum policed unit, m Document [4] does not specify MIN_AU_SIZE. If a parameter is designated it can be used to derive the MIN_RTP_SIZE as follows: Case of RTP-PDU 1:1 AL-PDU MIN_RTP_SIZE = MIN_AU_SIZE Plus AL-PDU and RTP overhead Case of RTP-PDU 1:N AL-PDU MIN_RTP_SIZE = Sum of the MIN_AU_SIZEs from each of the N AL-PDUs Plus AL-PDU and RTP overhead m = MIN_RTP_SIZE IP datagram size [Author's note: How critical is the specification of a minimum datagram size? Will it result in discarding the datagram if a larger m is used in calculating the violation of the rT+b bound, see 2.6.1?] -- The maximum datagram size, M M = MAX_RTP_SIZE IP datagram size 2.6 Forming the Receiver FlowSpec Two cases are covered below, one for the controlled load service and the other for the guaranteed service. 2.6.1 FLOWSPEC object when requesting Controlled-Load service In this case the flow object contains the TSpec to which the network shall respond in providing the QoS. In MPEG-4/DMIF the sender makes available to a receiver a set of Elementary Stream descriptors from which the receiver chooses based on its capability to decode the stream when received. Since this is done before the PATH message is received, the Sender TSpec in the PATH therefore already reflects the receiver's choice. As a result the corresponding parameter values may be copied into the FLOWSPEC except for the M parameter which is replaced by the PATH-MTU from the ADSpec in the PATH message. The TSpec contains the following parameters. -- The token bucket has a bucket depth, b This value is kept the same as the one received in the SENDER_TSPEC passed across the RSVP API Balabanian [Page 12] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 -- Bucket rate, r This value is kept the same as the one received in the SENDER_TSPEC passed across the RSVP API -- The peak rate, p This parameter may always be ignored by a Controlled-Load service -- The minimum policed unit, m This value is kept the same as the one received in the Sender TSpec -- The maximum datagram size, M The maximum packet size parameter [M] should be set to the value of the smallest path MTU, which the receiver learns from information in arriving RSVP ADSPEC objects (from different senders in case of incasting not presently covered in [1]& [4]). Alternatively, if the receiving application has built-in knowledge of the maximum packet size in use within the RSVP session, and this value is smaller than the smallest path MTU, [M] may be set to this value. Note that requesting a value of [M] larger than the service modules along the data path can support will cause the reservation to fail.[7] The TSpec's token bucket parameters require that traffic must obey the rule that over all time periods, the amount of data sent does not exceed rT+b, where r and b are the token bucket parameters and T is the length of the time period. For the purposes of this accounting, links must count packets that are smaller than the minimal policing unit m to be of size m. Packets that arrive at an element and cause a violation of the the rT+b bound are considered nonconformant. A measure that is required in MPEG-4/DMIF for the acceptance of the path in a controlled service is a value representing LOSS_PROB. These are not presently covered in [8]. They therefore need to be monitored [12] along with the MAX_DELAY and the AVG_DELAY as well as the Jitter using a mechanism such as RTCP Reports. 2.6.2 FLOWSPEC Object when Requesting Guaranteed Service In this case the FLOWSPEC object contains the Rspec in addition to the TSpec to which the network shall respond in providing the QoS. In MPEG-4/DMIF the sender makes available to a receiver a set of Elementary Stream descriptors from which the receiver chooses based on its capability for decoding the stream when received. Since this is done before the PATH message is received, the Sender TSpec in the PATH therefore already reflects the receiver's choice. As a result the corresponding parameter values may be copied Balabanian [Page 13] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 into the FLOWSPEC except for the M parameter which is replaced by the PATH-MTU from the ADSpec in the PATH message. The TSpec contains the following parameters. -- The token bucket has a bucket depth, b This value is kept the same as the one received in the SENDER_TSPEC passed across the RSVP API -- Bucket rate, r This value is kept the same as the one received in the SENDER_TSPEC passed across the RSVP API -- The peak rate, p This parameter is used to optimize the buffer resources in the network. -- The minimum policed unit, m This value is kept the same as the one received in the Sender TSpec -- The maximum datagram size, M The maximum packet size parameter [M] should be set to the value of the smallest path MTU, which the receiver learns from information in arriving RSVP ADSPEC objects (from different senders in case of incasting not presently covered in the [1]& [4]). Alternatively, if the receiving application has built-in knowledge of the maximum packet size in use within the RSVP session, and this value is smaller than the smallest path MTU, [M] may be set to this value. Note that requesting a value of [M] larger than the service modules along the data path can support will cause the reservation to fail.[7] The network is not permitted to fragment datagrams as part of guaranteed service. Datagrams larger than the MTU of a link are policed as nonconformant which means that they will be policed according to the Policing rules. The network applies the rule that over all time periods, the amount of data sent cannot exceed M+min[pT, rT+b-M], where r and b are the token bucket parameters, M is the maximum datagram size, and T is the length of the time period and p is the peak rate (note that when p is infinite this reduces to the standard token bucket requirement). For the purposes of this accounting, datagrams which are smaller than the minimum policing unit are counted to be as size m. Datagrams which arrive at an element and cause a violation of the the M+min[pT, rT+b-M] bound are considered nonconformant. Balabanian [Page 14] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 Nonconforming datagrams are treated as best-effort datagrams or dropped. All flow controls that are normally applied to best effort datagrams are applied to that datagram too. Datagrams bigger than the MTU of a network element are considered nonconformant and classified as best effort (and will then either be fragmented or dropped according to the element's handling of best effort traffic). The RSpec contains the following values. -- Rate value, R The R value is calculated to meet the value of the AVG_DELAY of the RTP PDU from the stream-QoS (for a single flow or aggregate of flows) using the formula in section 2.6.2.1. -- Slack value, S In order to derive the Slack in the RSpec the MAX_DELAY of the RTP PDU is used from the stream-QoS. (for a single flow or aggregate of flows). Guaranteed service does not control the minimal or average delay of datagrams, merely the maximal queuing delay. Furthermore, to compute the maximum delay a datagram will experience, the latency of the path MUST be determined and added to the guaranteed queuing delay. (However, a conservative bound of the latency can be computed by observing the delay (Minimum path latency in the ADSpec) experienced by any one packet).[9] The MAX_DELAY is reduced by the latency of the path and the resulting value is termed the required Delay Dreq. 2.6.2.1 Calculating the delays and the slack The steps below show the end-to-end queuing derivation and subsequently the derivation of the Slack. The maximum end-to-end queuing delay (as characterized by Ctot and Dtot) and bandwidth (characterized by R) provided along a path will be stable. That is, they will not change as long as the end-to-end path does not change.[9] Consider an application that is intolerant of any lost or late datagrams. It uses the advertised values Ctot and Dtot and the TSpec of the flow, to compute the resulting delay bound from a service request with rate R. The end-to-end delay bound is [(b-M)/R*(p-R)/(p-r)]+(M+Ctot)/R+Dtot for p>R>=r, and (M+Ctot)/R+Dtot for r<=p<=R [9] Balabanian [Page 15] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 While sending applications are encouraged to set the peak rate parameter, it is always acceptable to ignore the peak rate for the purposes of computing end-to-end delays. The result is simply an overestimate of the delay. The end-to-end delay without the peak rate is b/R+Ctot/R+Dtot.[9] As an example [9] for the use of the slack term, consider the case where the required end-to-end delay MAX_DELAY is larger than the maximum delay of the fluid flow system. The latter is obtained by setting R=r in the fluid delay formula (for stability, R>=r must be true), and is given by b/r + Ctot/r + Dtot. In this case the slack term is S = MAX_DELAY - (b/r + Ctot/r + Dtot). If S<0 then the path is refused by the receiver. Otherwise the value is included in the S field of the RSpec. Also if the Minimum path latency from the Sender ADSpec is more than AVG_DELAY the receiver shall refuse the path. However DMIF needs to monitor the performance for AVG_DELAY and take the proper measure when the value is larger than required by the Application. A measure that is required in MPEG-4/DMIF for the acceptance of the path in a controlled service is some value representing LOSS_PROB. These are not presently covered in [8]. They therefore need to be monitored along with the Jitter using a mechanism such as RTCP [12]. Guaranteed service is invoked by specifying the traffic (TSpec) and the desired service (RSpec) to the network. A service request for an existing flow that has a new TSpec and/or RSpec is treated as a new invocation, in the sense that admission control is reapplied to the flow. Flows that reduce their TSpec and/or their RSpec (i.e., their new TSpec/RSpec is strictly smaller than the old TSpec/RSpec according to the ordering rules described in [9]) are not denied service. 2.7 Reacting to the FlowSpec in the network and at the Sender [7] When a receiver originates a reservation request, it can also request a confirmation message to indicate that its request was (probably) installed in the network. In order to reduce the traffic however the confirmation may be requested in every n RESV messages, where the value of n is network dependent. The RSVP processes in the network pass the FlowSpec reservation request to admission control and policy control. If either test fails, the reservation is rejected and the RSVP process returns an error message to the receiver. If both succeed, the desired Balabanian [Page 16] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 QoS is defined by FlowSpec passed to the sender[11]. MPEG-4/DMIF version 1 [1][4] do not use multicast. Therefore it is assumed in this draft proposal that the value of the TSpec remains unchanged from that sent by the receiver and no multicast or heterogeneous source branch points are used in MPEG-4/DMIF version 1. However this is a subject under consideration in DMIF Version 2 or later. In the case of MPEG-4/DMIF Version 1 [1][4], the values in the TSpec received from the Receiver is the same as the Sender_Tspec in all aspects except for the M value. This is set to the smallest acceptable MTU of the data path from that sender to the session receiver. This MTU should be used by the sending application to size its packets. Any packets larger than this MTU may be delivered as best-effort rather than being covered by the session's resource reservation. The network creates an RSVP soft state which must be periodically refreshed by PATH and RESV messages. The state is deleted if no matching refresh messages arrive before the expiration of a "cleanup timeout" interval. State may also be deleted by an explicit "teardown" message. At the expiration of each "refresh timeout" period and after a state change, RSVP scans its state to build and forward PATH and RESV refresh messages to succeeding hops. RSVP "teardown" messages remove path or reservation state immediately. Although it is not necessary to explicitly tear down an old reservation, it is recommended that all end hosts send a teardown request as soon as an application finishes[11]. There are two types of RSVP teardown message, PathTear and ResvTear. A PathTear travels towards the receiver and ResvTear travels toward the sender. A teardown request may be initiated either by an application in an end system (sender or receiver), or a network element as the result of state timeout or service preemption. There are two RSVP error messages, PathErr and ResvErr: PathErr messages are very simple; they report errors in processing Path messages and are simply sent upstream to the sender that created the error. There are only a few possible causes of path errors. ResvErr (reservation error) messages report errors in processing Resv messages, or they may report the spontaneous disruption of a reservation, e.g., by administrative preemption. There are a number of ways for a syntactically valid reservation request to fail at some node along the path. Balabanian [Page 17] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 2.8 Open Issues 1) In DMIF [4], no primitive exists to indicate the desired MTU size of the AL_PDU. This is important for operation with RSVP in order to be conformant to the M sent back in the FlowSpec of the RESV message. The Sync Layer must use this information to fragment the AU before they are sent across the DA_Data of the DAI. the proposal is to include DA_ChannelInf(). 2) During the lifetime of the flow it is conceivable because of changes in conditions within the network the MTU message gets changed. In this case the RESV message will indicate a new value for M. In the specific case if the M is lower than the present value it shall require that the Sync Layer be informed. For this reason an DA_CahnnelInf() message may be required to be added to DMIF [4]. 3) The Media QoS needs to include a MIN-AU-SIZE parameter which shall be used to generate the MIN-RTP-SIZE parameter for the RTP stream. This will be used to derive m which is the minimum policed datagram size. However in case it is missing a policy may use a fraction of the AVG_RTP_SIZE to derive m. 4) Require to verify and improve on the mapping of the media based QoS into Integrated Service parameters including suggestions on alternate media based QoS parameters. A Authors' Addresses Vahe Balabanian Nortel P.O.Box 3511, St. C Ottawa, Ontario Canada K1Y 4H7 Tel: 613-763-4721 Email: balabani@nortel.ca B Bibliography [1] ISO/IEC 14496-1 FCD "MPEG-4 Systems" May 1998, obtained from the MPEG Home Page http://drogo.cselt.it/mpeg/ [2] ISO/IEC 14496-2 FCD "MPEG-4 Visual" May 1998, obtained from the MPEG Home Page http://drogo.cselt.it/mpeg/ [3] ISO/IEC 14496-3 FCD "MPEG-4 Audio" May 1998, obtained from the MPEG Home Page http://drogo.cselt.it/mpeg/ Balabanian [Page 18] Internet Draft MPEG-4 DMIF IntServ RSVP Sept. 19, 1998 [4] ISO/IEC 14496-6 CD "DMIF" May 1998, obtained from the MPEG Home Page http://drogo.cselt.it/mpeg/ [5] Schulzrinne, Casner, Frederick, Jacobson "RTP: A Transport Protocol for Real Time Applications" draft-ietf-avt-new-00, Internet Engineering Task Force, Dec. 1998. [6] Carsten, Balabanian, Basso, Civanlar, hoffman, Speer, Schulzrinne, 'RTP payload format for MPEG-4 Elementary Streams' ietf-avt-rtp-mpeg4-dmdraft-ietf-avt-new-00, Internet Engineering Task Force, March 19987. [7] J. Wroclawski "The Use of RSVP with IETF Integrated Services" RFC 2210, September 1998 [8] Wroclawski, J., "Specification of the Controlled Load Quality of Service", RFC 2211, September 1998. [9] Shenker, S., Partridge, C., and R Guerin, "Specification of Guaranteed Quality of Service", RFC 2212, September 1998. [10]Shenker, S., and J. Wroclawski, "General Characterization Parameters for Integrated Service Network Elements", RFC 2215, September 1998. [11]Braden, B., Ed., et. al., "Resource Reservation Protocol (RSVP) - Version 1 Functional Specification", RFC 2205, September 1998. [12]Balabanian, " The Role of DMIF in Support of RTP MPEG-4 Payloads", draft-balabanian-rtp-mpeg4-dmif-01, August 1998. Internet Engineering Task Force Integrated Services Working Group Internet Draft Balabanian-Nortel draft-balabanian-intserv-mpeg4-dmif-00.txt Sept. 19, 1998 Expires: March 23, 1999 Balabanian [Page 19]