Internet DRAFT - draft-bryden-personal-content-tunnels
draft-bryden-personal-content-tunnels
Network Working Group S.D. Bryden
Internet-Draft Nortel Networks
Expires: February 11, 2002 August 13, 2001
Personal Content Tunnels
draft-bryden-personal-content-tunnels-01.txt
Status of this Memo
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026.
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 obsoleted 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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on February 11, 2002.
Copyright Notice
Copyright (C) The Internet Society (2001). All Rights Reserved.
Abstract
As broadband access networks begin to mature, applications such as
video-on-demand, application hosting and gaming are becoming viable
service offerings. In order to provide these types of service, it is
necessary to have extremely granular bandwidth control to ensure
that user session traffic has a highly predictable traffic delivery
profile.
The Personal Content Tunnel framework provides this control in a
session-oriented subscriber-driven manner allowing the most
efficient use of access network bandwidth.
Bryden Expires February 11, 2002 [Page 1]
Internet-Draft Personal Content Tunnels August 2001
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1 Conformance requirement terminology . . . . . . . . . . . . 3
2.2 Glossary of Terms . . . . . . . . . . . . . . . . . . . . . 3
3. PCT Framework . . . . . . . . . . . . . . . . . . . . . . . 4
3.1 PCT in Access Concentrator . . . . . . . . . . . . . . . . . 5
3.2 PCT in browser walkthrough . . . . . . . . . . . . . . . . . 5
3.3 PCT Object . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.4 Request Authentication . . . . . . . . . . . . . . . . . . . 7
4. PCT Resolution Protocol . . . . . . . . . . . . . . . . . . 8
4.1 Protocol Overview . . . . . . . . . . . . . . . . . . . . . 8
4.2 Request Format . . . . . . . . . . . . . . . . . . . . . . . 8
4.3 Request Headers . . . . . . . . . . . . . . . . . . . . . . 8
4.3.1 Host . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.3.2 Accept-Protocol . . . . . . . . . . . . . . . . . . . . . . 9
4.3.3 Client-Id . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.3.4 Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.4 Response Format . . . . . . . . . . . . . . . . . . . . . . 10
4.5 Response Headers . . . . . . . . . . . . . . . . . . . . . . 10
4.5.1 Location . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.5.2 Use-Protocol . . . . . . . . . . . . . . . . . . . . . . . . 10
4.5.3 Tunnel-Endpoint . . . . . . . . . . . . . . . . . . . . . . 11
4.5.4 Tunnel-Path . . . . . . . . . . . . . . . . . . . . . . . . 11
4.5.5 Username . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.5.6 Password . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.5.7 Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.5.8 Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . 12
5. Examples . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5.1 Example 1 . . . . . . . . . . . . . . . . . . . . . . . . . 12
5.2 Example 2 . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.3 Example 3 . . . . . . . . . . . . . . . . . . . . . . . . . 13
5.4 Example 4 . . . . . . . . . . . . . . . . . . . . . . . . . 14
6. IP as a null transport technology . . . . . . . . . . . . . 14
7. Tunnel Tear-down . . . . . . . . . . . . . . . . . . . . . . 14
8. Practical Considerations . . . . . . . . . . . . . . . . . . 14
8.1 Streaming Media Support . . . . . . . . . . . . . . . . . . 15
8.2 Other Applications . . . . . . . . . . . . . . . . . . . . . 15
9. Security considerations . . . . . . . . . . . . . . . . . . 15
10. Further Study . . . . . . . . . . . . . . . . . . . . . . . 15
11. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 16
References . . . . . . . . . . . . . . . . . . . . . . . . . 17
Author's Address . . . . . . . . . . . . . . . . . . . . . . 17
Full Copyright Statement . . . . . . . . . . . . . . . . . . 18
Bryden Expires February 11, 2002 [Page 2]
Internet-Draft Personal Content Tunnels August 2001
1. Introduction
Content delivery performance can broadly be improved in two ways: by
adding more bandwidth, or by moving the content closer to the edge.
The latter allows a reduction in the bandwidth required to deliver
the content, however it brings many problems, such as maintenance,
management and administration of the content distribution process
and of the content caching hardware. Adding bandwidth is
traditionally the more expensive solution, but as bandwidth costs
continue to decrease, the problem becomes one of finding a balance
between the number and location of the surrogates and the
distribution and control of the bandwidth. PCT allows Access
Providers and Network Infrastructure Providers to engineer this
level of control into their networks, by enabling session-driven
traffic paths to be established to the most suitable surrogate.
The Personal Content Tunnel mechanism provides a content driven
session initiation mechanism. PCTs are intended for use by
subscriber access gateways or client browsers to establish
individual, "focused" content delivery channels. Such channels may
be used to deliver content requiring custom traffic parameters, such
as high bandwidth, low latency, or a preferred forwarding path.
Dynamically created sessions would establish such traffic
parameters, and remain active for the duration needed by the
delivered content.
By allocating just enough bandwidth through this path, and by
holding the allocation only for the duration of the session, the use
of the available bandwidth is optimised. At the same time, the
session is guaranteed to have sufficient bandwidth for the duration
of the content download.
2. Terminology
2.1 Conformance requirement terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC2119[1]
2.2 Glossary of Terms
Subscriber: The end-user who is subscribed to a broadband access
provider and who is the consumer of the content.
Tunnel: An encapsulation of subscriber traffic which allows network
components to apply some kind of QoS to a subscriber session. The
use of MPLS is recommended since it provides a very rich set of
QoS and traffic engineering functionality, but other protocols
Bryden Expires February 11, 2002 [Page 3]
Internet-Draft Personal Content Tunnels August 2001
such as L2TP can be used to give lower functionality where MPLS
is not available.
PCT Resolution Server: The server which accepts requests from PCT
clients requesting information on how to access a certain item of
content, and returns the location of a suitable surrogate along
with details of how to build a tunnel in order to guarantee the
QoS required to view the content.
PCT Client: The device which initiates the PCT process, makes the
request to the resolution server, and ultimately requests the
bandwidth on behalf of the subscriber. This can either be an
intelligent edge device through which the subscriber receives his
service, or can be a plugin inside of the subscriber's browser.
PCT Object: An information structure containing "static" information
about an item of content, such as the bandwidth required for
viewing or the location of the PCT resolution server.
Service URI: A URI (universal resource identifier) which describes
both the address of the PCT resolution server and the identity of
the content requested by the subscriber. This information is
contained in the PCT object.
Content URI: This URI represents the location of the content copy on
the chosen surrogate. It is the main output of the PCT resolution
server.
Access Concentrator: This is a device close to the subscriber, such
as a broadband RAS (BRAS), a DSL access multiplexer (DSLAM), or a
cable modem termination system (CMTS). It is not necessarily
directly connected to the subscriber but since the PCT client is
intended to be located in such a device, ideally it should be as
close as possible.
PCT Resolution Protocol: The protocol used for the communication
between the PCT client and the PCT resolution server. For a given
subscriber and content item, it determines the locatio of the
most suitable surrogate and a suitable mechanism for assuring the
QoS between the client and the surrogate.
3. PCT Framework
PCT can operate in two basic modes. In the first, the PCT client is
implemented in an access concentrator and provides a service which
is transparent to the subscriber. In the second, in order to allow
operation in environments where the appropriate PCT support is not
available in access concentrators or other intelligent edge devices,
provision is made for the PCT client functionality to be implemented
Bryden Expires February 11, 2002 [Page 4]
Internet-Draft Personal Content Tunnels August 2001
in a browser plug-in on the subscriber's PC.
3.1 PCT in Access Concentrator
When the PCT client is implemented in an access concentrator, a
typical session proceeds as follows:
1. A subscriber browses to a content website or to a portal and
selects a link
2. An intelligent access concentrator (AC), intelligent IP-enabled
DSLAM or any other access server such as a CMTS or RAS matches
the request to a preconfigured filter and reads a PCT object
from its local configuration, or from a directory service such
as an LDAP directory. This object contains static information
about the content (ie information which is constant regardless
of the location or identity of the subscriber) as well as the
location of the PCT resolution server.
3. The PCT object is parsed by the AC and a PCT resolution request
is sent to a PCT resolution server.
4. The PCT resolution server sends a response indicating the
location of the most suitable surrogate containing the requested
content, along with the information required to build a tunnel
or traffic-engineered path to a device close to the surrogate.
5. The AC establishes the tunnel, then sends an HTTP redirect
message back to the subscriber causing the the browser to
restart the session to the surrogate. At the same time, the AC
installs some local policy configuration which causes all data
corresponding to this session to be forwarded along the tunnel
6. When the AC detects the end of the session, the tunnel is torn
down and the local policy configuration is removed.
3.2 PCT in browser walkthrough
In this case, the plug-in is linked via the browser configuration to
the well-known (TBD) mime type of the PCT object. When a subscriber
clicks on a PCT object (which would typically be embedded in html
and located on a portal at the Access Provider's site) the plug-in
is automatically launched and its operation is as follows:
1. The PCT object is parsed by the plug-in and a PCT resolution
request is sent to a PCT resolution server.
2. The PCT resolution server sends a response indicating the
location of the most suitable surrogate containing the requested
Bryden Expires February 11, 2002 [Page 5]
Internet-Draft Personal Content Tunnels August 2001
content, along with the information required to build a tunnel
or traffic-engineered path to a device close to the surrogate.
3. The plug-in establishes the tunnel and installs a route in the
client PC to the content location IP address and the subnet mask
supplied in the PCT object. This causes all data corresponding
to this session to be forwarded along the tunnel.
4. The plug-in now sends a redirect message to the browser
requesting it to redirect its original request to the content
surrogate as supplied by the PCT resolution response. The data
is fed into the tunnel automatically due to the route which was
installed by the plug-in.
5. Now that the content download has started, the plug-in monitors
the traffic flow in order to determine when the tunnel should be
torn down and the routing entry removed. This can be a complex
flow-following process, or a simple timeout, in which case a
session timeout or an idle timeout can be specified in the PCT
object.
6. When any of the above events occurs, the plug-in tears down the
tunnel, removes the routing entry from the table and then exits.
When the tunnel is initiated from a client PC, it is expected that
the tunnel type will be PPTP or L2TP, or even PPPoE. Since none of
these tunnel technologies are particularly suited to bandwidth
control, a more practical technique could be tunnel switching, where
the incoming traffic to a network edge device is switched onto a
shared MPLS path or other guaranteed bandwidth path based on the
authentication attributes supplied at tunnel setup time. In this
case, the level of bandwidth guarantee is less granular, but by
provisioning a path with sufficient bandwidth and analysing the mean
traffic requirement, a workable solution can be achieved.
3.3 PCT Object
The static information about the content is contained in a PCT
Object. This can be either an object contained on a website as e.g.
an XML object, or can be held in the local configuraion of an access
concentrator in a proprietary format. Either way, it is retrieved at
the time the content is requested and the information contained
within is used to determine the location of the PCT resolution
server and other information. Typical contents of the object would
be as follows:
Service URI: The URI of the PCT resolution server. This provides
two distinct pieces of information. Firstly, the host part of
the URI specifies the location of the PCT resolution server,
Bryden Expires February 11, 2002 [Page 6]
Internet-Draft Personal Content Tunnels August 2001
and secondly the path part tells the resolution server which
actual object was being requested by the subscriber. The PCT
resolution server uses this information to construct the final
content URI which specifies the location of the content on the
surrogate server.
Static Routing Control: A subnet mask to be applied to the
routing entry as installed by a client PC when using a browser
plugin. In this case, the session traffic is identified in the
client PC as matching the Content URI address with this subnet
mask.
Session Timeout: The absolute timeout after which a tunnel should
be torn down and the associated policy removed and resources
released.
Idle Timeout: The idle timeout after which, if no data has passed
in either direction, the tunnel should be torn down and the
associated policy removed and resources released.
Bandwidth Parameters: The bandwidth profile required for this
content. The required bandwidth is determined from the
encoding of the content and can usually be automatically
extracted from the original content metafile. This information
can be used to determine whether a subscriber has sufficient
bandwidth to view the content before making the resolution
request. The case where multiple encodings exist of the same
content can be handled either by having a PCT object per
encoding, or by having one PCT object describing the lowest
bandwidth requirement, then specifying the actual bandwidth
available in the resolution request. This is described in
Section 4.3.4.
3.4 Request Authentication
When operating in the browser mode, care must be taken to prevent
subscribers from bypassing the initial request and initiating a
tunnel directly, potentially bypassing billing procedures or taking
non-optimal paths.
This can be avoided by returning username and password attributes
which are autogenerated and useful only for the current session.
This may be a one-time-only authentication, or it could be
time-limited, or could be linked to client IP address, however
whichever method is chosen, these values are opaque to PCT and will
be interpreted by the tunnel server at tunnel setup time.
The domain attribute can also be used to add a further level of
control to the authentication process. If returned, the domain
Bryden Expires February 11, 2002 [Page 7]
Internet-Draft Personal Content Tunnels August 2001
string will be appended to the username string with the separator
'@'.
The format of the username, password and domain values will be
determined by the tunnelling protocols used (eg L2TP, PPTP, PPPoE).
For details, refer to the appropriate specifications.
4. PCT Resolution Protocol
4.1 Protocol Overview
The PCT resolution protocol is used for communication between a PCT
client and a PCT resolution server. A transaction consists of one
request and one response. The client request identifies the
subscriber and the requested content. It also contains some "hints"
about the bandwidth available to the subscriber and the bandwidth
reservation/tunnelling protocols which can be supported by the
client. The response provides the location of the most suitable
surrogate as well as information required to build a tunnel or
bandwidth reservation contract in order to provide the QoS required
for the content delivery.
PCT resolution protocol (PCTRP) is loosely based on HTTP [3].
Communication takes place over TCP/IP connections using port TBD.
The connection is initiated by the PCTRP client and a single request
is sent. The server responds with a single response, and the
connection is closed.
4.2 Request Format
As in HTTP, PCTRP requests must start with a request line that
contains a method, the complete service URI and the PCTRP version
string. These three items are described here:
A new method is defined named RESOLVE. This method requests that a
service URI be resolved into a content URI
Service URIs have a format as described in [4]. The scheme used for
PCTRP messages is "pctrp".
The version of PCTRP defined in this document is version 1.0
An example of a complete request line would be:
RESOLVE pctrp://pctrs.movies.com/xyz.avi PCTRP/1.0
4.3 Request Headers
Following the start line, there are a list of headers, one per line,
Bryden Expires February 11, 2002 [Page 8]
Internet-Draft Personal Content Tunnels August 2001
which contain details of the resolution request. Each of these
headers MUST appear no more than once, and some are mandatory:
4.3.1 Host
PCTRP uses the Host header in the same way as HTTP/1.1, to identify
the host to which the request is being sent.
Status: REQUIRED
Example:
Host: pctrs.movies.com
4.3.2 Accept-Protocol
This header defines which tunnelling protocols are acceptable by the
client. Multiple protocols can be separated by commas.
Status: OPTIONAL
Example:
Accept-Protocol MPLS
Accept-Protocol PPTP, L2TP
4.3.3 Client-Id
This header contains information about the location of the client
and is used by the PCT resolution server to decide the best choice
of surrogate and path for the request. The value of this header will
typically be an IP address, but any printable string can be used.
Status: OPTIONAL
Example:
Client-Id: 192.168.48.30
Client-Id: WestCoastPop
Optionally the PCTRS can infer in a more accurate and
straightforward Geographic position of the client through the use of
the data provided by the User Profile Information Protocol [10].
4.3.4 Bandwidth
This header contains information about the bandwidth available to
the client. It is used by the PCT resolution server to decide on the
appropriate encoding of the content to be delivered in cases where
it is aware of multiple encodings of the same content. The format of
the value of this header is an ascii encoded numeric value
representing the available bandwidth in bits per second.
Bryden Expires February 11, 2002 [Page 9]
Internet-Draft Personal Content Tunnels August 2001
Status: OPTIONAL
Example:
Bandwidth: 1000000
Optionally the PCTRS can infer the layer 2 and layer 3 bandwidth
restrictions of the user in a more accurate way through the use of
the data provided by the User Profile Information Protocol [10].
If the PCTRS discovers that the user does not have enough downstream
or upstream bandwidth to view the requested object, it can use a
out-of-band signalling protocol to tell the AC to increase the
bandwidth of the user. Today several ACs already have this
capability.
4.4 Response Format
PCTRP responses must start with an PCTRP status line, similar in
form to that used by HTTP, including the PCTRP version and a status
code. For example:
PCTRP/1.0 200 OK
The supported status codes are:
200 OK, normal response
220 Able to satisfy request with bandwidth increase
400 Bad request. The request header was malformed
404 Unable to resolve this URI
4.5 Response Headers
Following the start line, there are a list of headers, one per line,
which contain details of the resolution response:
4.5.1 Location
This header indicates the address of the surrogate which has been
selected to serve the requested content.
Status: REQUIRED
Example:
Location: 192.168.12.34
Location: popWest.isp.com
4.5.2 Use-Protocol
This header indicates the tunnelling protocol to be used by the
Bryden Expires February 11, 2002 [Page 10]
Internet-Draft Personal Content Tunnels August 2001
client. It is usually (but not necessarily) one of those listed in
the Accept-Protocol request header.
Status: REQUIRED
Example:
Use-Protocol: MPLS
4.5.3 Tunnel-Endpoint
This header indicates the tunnel endpoint address to be used to
access the content.
Status: REQUIRED if the protocol referred to in the Use-Protocol
header requires a tunnel endpoint to be specified, otherwise it MUST
NOT be included.
Example:
Tunnel-Endpoint: 192.168.56.78
Tunnel-Endpoint: dataCentre1.isp.com
4.5.4 Tunnel-Path
This header indicates the explicitly-routed path to be used to set
up the tunnel.
Status: OPTIONAL
Example:
Tunnel-Path: 192.168.56.1, 192.168.23.4, 192.168.36.5
4.5.5 Username
This header represents the username which should be used when
setting up an authenticated tunnel. It is used in conjunction with
the Password and Domain attributes described below. If any of the
authentication attributes are not returned, they SHOULD be omitted
in the tunnel setup, however if the tunnel setup protocol requires
that a value be supplied, a dummy value MUST be inserted by the
client, which should be ignored by the tunnel authentication server.
Status: OPTIONAL
Example:
Username: AP185U364523
Password: OneTime5rd$3@#eF6$%hu75D5$3
Domain: goldservice
Bryden Expires February 11, 2002 [Page 11]
Internet-Draft Personal Content Tunnels August 2001
4.5.6 Password
This header represents the password which should be used when
setting up an authenticated tunnel
Status: OPTIONAL
4.5.7 Domain
This header represents the domain value which should be used when
setting up an authenticated tunnel. It should be combined with the
username in the form username@domain. In tunnel switching scenarios,
it can be used to select the outgoing tunnel, and thus act as a
traffic engineering attribute
Status: OPTIONAL
4.5.8 Bandwidth
This header indicates the bandwidth required to download the
requested content. This value may be different from the Bandwidth
parameter sent in the request since this parameter specifies what is
required for the content, whereas the request bandwidth specifies
how much bandwidth the user has available.
Status: OPTIONAL
Example:
Bandwidth: 750000
5. Examples
In the following examples, imagine that a content provider has a
central site at www.movies.com and has local content caches on the
East and West coasts identified by westCoast.movies.com and
eastCoast.movies.com.
The PCT resolution server could choose one of these local caches
based on the identity of the subscriber.
5.1 Example 1
In this example, the client has IP address 192.168.48.30 and is
requesting the use of MPLS. The client has 1Mbps of bandwidth
available.
RESOLVE pctrp://pctrs.movies.com/xyz.avi PCTRP/1.0
Host: pctrs.movies.com
Client-Id: 192.168.48.30
Bryden Expires February 11, 2002 [Page 12]
Internet-Draft Personal Content Tunnels August 2001
Accept-Protocol: MPLS
Bandwidth: 1000000
Assuming that the server can resolve the requested service URI, the
corresponding reply could be:
PCTRP/1.0 200 OK
Location: http://westCoast.movies.com/xyz.avi
Use-Protocol: MPLS
Tunnel-Endpoint: 192.168.50.6
Bandwidth: 348000
5.2 Example 2
In this example, the client indicates his preference for L2TP, but
indicates that it also supports PPTP
RESOLVE pctrp://pctrs.movies.com/xyz.avi PCTRP/1.0
Host: pctrs.movies.com
Client-Id: 192.168.48.30
Accept-Protocol: L2TP,PPTP
Bandwidth: 64000
The server responds with protocol L2TP and with a set of
authentication parameters to be used when setting up the tunnel.
Note that in this example, there is no bandwidth reservation so the
corresponding response headers are omitted.
PCTRP/1.0 200 OK
Location: http://westCoast.movies.com/xyz.avi
Use-Protocol: L2TP
Username: westCoast7253
Password: RESOIHVHRTRUY
Alternatively, the server may know that there is a copy of the
requested content close to the subscriber attachment point, and in
this case would indicate a simple redirect by returning the IP
tunnel protocol type.
PCTRP/1.0 200 OK
Location: http://westCoast.movies.com/xyz.avi
Use-Protocol: IP
5.3 Example 3
Here, the pctrp transaction is shown for a request which the server
could not satisfy with the bandwidth specified. The response
specifies the bandwidth required. This can be interpreted by the
access concentrator which can then (perhaps after a confirmation
Bryden Expires February 11, 2002 [Page 13]
Internet-Draft Personal Content Tunnels August 2001
from the subscriber) increase the available bandwidth before making
the bandwidth reservation.
RESOLVE pctrp://pctrs.movies.com/xyz.avi PCTRP/1.0
Host: pctrs.movies.com
Client-Id: 192.168.48.30
Accept-Protocol: MPLS
Bandwidth: 384000
PCTRP/1.0 220 INSUFFICIENT BANDWIDTH
Location: http://westCoast.movies.com/xyz.avi
Use-Protocol: MPLS
Tunnel-Endpoint: 192.168.50.6
Bandwidth: 1000000
5.4 Example 4
Here, the response is shown for a request for which the server was
not aware of any available content.
PCTRP/1.0 404 NOT FOUND
6. IP as a null transport technology
The PCT resolution server is responsible for deciding which tunnel
technology should be used to provide the necessary QoS for the
session. IP is supported as a "null transport technology" to deal
with situations where a traffic engineered path is not needed. This
would typically be the case when the chosen surrogate is in the same
location as the access concentrator which is handling the
subscriber's connection.
7. Tunnel Tear-down
The termination of the tunnel can be controlled as follows:
Normally, the PCT will be torn down when the access concentrator
detects the end of the session, which it does by following the state
of the session and detecting the end of the flow.
Alternatively, if a client browser plugin is providing the PCT
client function, a session timeout or an idle timeout can be passed
in the PCT Object. The PCT client will use this to tear down the
tunnel when the specified session timeout period has elapsed, or if
the idle period has expired without data being passed.
8. Practical Considerations
Bryden Expires February 11, 2002 [Page 14]
Internet-Draft Personal Content Tunnels August 2001
8.1 Streaming Media Support
Since one of the target markets for PCT is video-on-demand, support
for streaming protocols is essential. Streaming protocols typically
have a control protocol which establishes one or more transport
sessions based on the contents of a metafile. This metafile contains
information about the various streams which make up the entire
content presentation, including the locations of the data and the
corresponding transport protocol.
It is suggested that to effectively support streaming media, the PCT
tunnels SHOULD be triggered on the transport sessions, rather than
the control session, and that the transport sessions be considered
to be distinct independent paths with their own destinations and
bandwidth requirements.
8.2 Other Applications
Most of this document has talked about services such as video on
demand, where guaranteed bandwidth is essential to a quality
end-user experience. However other services such as gaming and
network-served applications are also well suited to PCT. For these
services, an absolute QoS guarantee may not be required, and so the
use of bandwidth reservation signalling protocols may not be needed.
In these cases, tunnels can be used to direct traffic along shared
trunks, which could be dedicated to certain classes of traffic.
These trunks could be pre-provisioned and PCT used to direct the
subscriber traffic to a surrogate on the appropriate trunk.
9. Security considerations
Whenever a protocol describes bandwidth reservations, care must be
taken to ensure that all such requests are legitimate, meaning that
requesters are authenticated or that they (if anonymous) are
billable. This document assumes that in cases where a bandwidth
reservation is being made, one of the above conditions has been
satisfied by the access concentrator, or other security element in
the access network.
10. Further Study
There are many unanswered questions in this draft, such as how the
MPLS path signalling should be achieved, whether bandwidth needs to
be reserved in both directions, how the resolution server should get
its information. Also it is assumed that the bandwidth is required
throughout the user session. In the case of a video download, what
happens when a subscriber hits "pause"? Should we continue to hold
the bandwidth? What about gaming applications where the bandwidth
requirements may be relatively low during play but high between
Bryden Expires February 11, 2002 [Page 15]
Internet-Draft Personal Content Tunnels August 2001
levels, as new data is downloaded. All of these questions are
subjects for further study.
11. Acknowledgements
The author would like to thank Gil Tene for initially describing the
Personal Content Tunnel concept.
Bryden Expires February 11, 2002 [Page 16]
Internet-Draft Personal Content Tunnels August 2001
References
[1] Bradner, S, "Key words for use in RFCs to Indicate Requirement
Levels", RFC 2119, BCP 14, March 1997.
[2] Bradner, S, "The Internet Standards Process - Revision 3", RFC
2026, March 1997.
[3] Gettys, R, Mogul, J, Frystyk, J, Masinter, H, Leach, L,
Berners-Lee, P and T Berners-Lee, "Hypertext Transfer Protocol
- HTTP/1.1", RFC 2616, June 1999.
[4] Berners-Lee, T, Fielding, R, Irvine, U C and L Masinter,
"Uniform Resource Identifiers (URI): Generic Syntax", RFC
2396, August 1998.
[5] Rosen, B, Viswanathan, A and R Callon, "Multiprotocol Label
Switching Architecture", RFC 3031, January 2001.
[6] Awduche, D, Berger, L, Gan, D, Li, T, Swallow, G and V
Srinivasan, "RSVP-TE: Extensions to RSVP for LSP Tunnels",
draft-ietf-mpls-rsvp-lsp-tunnel-08.txt, February 2001.
[7] Jamoussi et al, B, "Constraint-Based LSP Setup using LDP",
draft-ietf-mpls-cr-ldp-05.txt, February 2001.
[8] Townsley, W, Valencia, A, Rubens, A, Pall, G, Zorn, G and B
Palter, "Layer Two Tunneling Protocol "L2TP"", RFC 2661,
August 1999.
[9] Makamos, L, Lidl, K, Evarts, J, Carrel, D, Simone, D and R
Wheeler, "A Method for Transmitting PPP Over Ethernet
(PPPoE)", RFC 2516, February 1999.
[10] Penno, R and A Albuquerque, "User Profile Information
Protocol", draft-penno-cdnp-nacct-userid-04.txt, July 2001.
Author's Address
Simon Bryden
Nortel Networks
25 Allee Pierre Ziller
Valbonne 06560
France
Phone: +33 4 9296 1565
EMail: sbryden@nortelnetworks.com
Bryden Expires February 11, 2002 [Page 17]
Internet-Draft Personal Content Tunnels August 2001
Full Copyright Statement
Copyright (C) The Internet Society (2001). All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph
are included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Acknowledgement
Funding for the RFC editor function is currently provided by the
Internet Society.
Bryden Expires February 11, 2002 [Page 18]