Internet DRAFT - draft-rocky-sipping-override-barring
draft-rocky-sipping-override-barring
SIPPING WG Rocky Wang
Internet Draft Huawei Technologies
Expires: July 28, 2006 January 25, 2006
A method to override the barring services
draft-rocky-sipping-override-barring-00.txt
Status of this Memo
By submitting this Internet-Draft, each author represents that any
applicable patent or other IPR claims of which he or she is aware
have been or will be disclosed, and any of which he or she becomes
aware will be disclosed, in accordance with Section 6 of BCP 79.
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 July 28, 2006.
Copyright Notice
Copyright (C) The Internet Society (2006).
Abstract
The document collects some approaches used to implement the
functionalities of Override Barring Services in Session Initial
Protocol (SIP), and gives detailed description of service flows for
each type of the functionalities. Some methods such as SAML, CPC,
which is used to implement service, are also dealt with in the
document.
Rocky Expires - July 2006 [Page 1]
Internet-Draft override barring services January 2006
Table of Contents
1 Introduction.....................................................2
2 Conventions......................................................4
3 Possible proposals...............................................4
3.1 Type A barring service.........................................4
3.1.1 A solution based on SAML.....................................4
3.1.1.1 SIP-SIP service flow.......................................5
3.1.1.2 SIP-PSTN service flow......................................7
3.1.1.3 PSTN-SIP service flow......................................9
3.1.1.4 SIP bridge PSTN-PSTN service flow.........................11
3.1.2 A solution based on P-CPC...................................13
3.1.3 Summary of the above solutions..............................14
3.2 Type B barring service........................................15
3.2.1 In-band password collect....................................16
3.2.2 Out-band password collect...................................18
3.2.3 Challenge-based solution....................................21
4 Security Considerations.........................................23
5 IANA Considerations.............................................23
6 References......................................................23
6.1 Normative References..........................................23
6.2 Informational References......................................24
7 Acknowledgment..................................................24
8 Author's Address................................................25
9 Intellectual Property Statement.................................25
10 Disclaimer of Validity.........................................25
11 Copyright Statement............................................25
1 Introduction
In PSTN network, there are a series of services, called barring
services in general, that the subscriber can instruct the network to
reject incoming calls if the preconditions are met. DND service is
one of the most typical barring services. If the called party has
subscribed DND service from his carrier and the service is activated,
all the incoming normal calls will be rejected by the network
directly.
But there are some provisions for exceptional cases in which the
calling party should have the opportunity to override the barring
services to reach the called party even though the services are
activated and the service-specific preconditions are met. For
instance, police stations, emergency call centers and operators
always hold higher priorities and have the rights to override the
served subscriber's barring services, and calls from these types of
subscribers should still be routed to the callee's terminal instead
of being rejected.
Rocky Expires - July 2006 [Page 2]
Internet-Draft override barring services January 2006
In the current PSTN network, there are several classes of overriding
barring services as described below which will be discussed in this
document and deployed in the SIP network.
For the convenience of description, DND is sometimes as a substitute
of the barring services in the service flows we will discuss a little
later in this document.
Type A: The subscribers with some special features/characteristics
will hold higher priorities and have the rights to override some
other subscriber's barring services as the case mentioned above
that the emergency center overrides common subscriber's DND.
As some nation's services' rules, this type of overriding should
be implemented as allocating a separate category value for each
type of characterized user. And the category value will be
conveyed through a well-defined parameter in ISUP, calling party
category (CPC). In this case, if the called network server
receives an incoming call request to a subscriber that his DND
service is activated, the server will check whether the caller can
override the callee's DND service. If yes, the request will be
routed to the callee end-system. Otherwise, it will be rejected.
The server will do the check based on the CPC parameter from the
request message.
Type B: The subscriber can set a key to override his barring service.
When the subscriber's barring service is activated, the key will
be taken into effect. Any one that makes a call by any line will
be asked to input the key also. If the caller input a correct key
as the subscriber set, the call request will be routed to the
callee end-system, otherwise the request will be rejected directly.
The subscriber can set his key anytime but not only when he active
his barring services.
Type C: More scenarios will be drafted later if there are.
Security Assertion Markup Language (SAML) [I-D.saml-tech-overview-
1.1-03] is an XML extension for security information exchange that is
being developed by SSTC of OASIS. SAML is a XML-based framework for
creating and exchanging security information.
SIP-SAML [I-D.draft-tschofenig-sip-saml-04] gives a method for using
SAML in collaboration with SIP to accommodate richer authorization
mechanisms and enable trait-based authorization where you are
authenticated using roles or traits instead of identity. In
particular, it provides a way for SIP to refer to SAML objects, and
for recipients of SIP messages to use SAML in order to make more
informed authorization decisions.
Rocky Expires - July 2006 [Page 3]
Internet-Draft override barring services January 2006
TISPAN is finding the solutions to simulate and emulate PSTN services
in the IMS-based SIP network. The barring overriding feature is a
common part of the services under research. Evidently, to complete
the features of the ACR, DND and some other barring services, this is
an essential part of them.
This document has collected some known possible technical solutions
for each type of barring service's overriding functionality. It can
be used to provide the features in the SIP network to SIP subscribers,
help readers find a reasonable way to simulate or emulate the
traditional supplementary services.
2 Conventions
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 BCP 14, RFC 2119 [4].
3 Possible proposals
In this section, some service flows are drafted for each type of
barring service.
3.1 Type A barring service
For type A barring service, it is required to convey necessary
information between network servers from the calling network to the
called network.
There are two totally different schemas are documented here, one is
based on SAML and another is on an extension header. More possible
schemas are welcome and will also be added into this document.
3.1.1 A solution based on SAML
SAML is a XML-based framework for creating and exchanging security
information. It can be used to fulfill this requirement to convey
necessary information. In this section, we will document the service
flows as different caller type and callee type.
Rocky Expires - July 2006 [Page 4]
Internet-Draft override barring services January 2006
3.1.1.1 SIP-SIP service flow
Alice in Atlanta.com and Bob in Biloxi.com domain are SIP subscribers,
that is, they will communicate with others by their SIP phone. Figure
1 shows the basic message flow of Alice overriding Bob’s barring
service successfully.
----------- ------------- ------------- ------------- -----------
| Alice's | | proxy.atl | | Asserting | | proxy.bil | | Bob's |
| phone | | anta.com | | Party | | oxi.com | | phone |
----------- ------------- ------------- ------------- -----------
| | | | |
| INVITE | | | |
|------------>| | | |
| 407 Proxy Auth. Req. | | |
|<------------| | | |
| ACK | | | |
|------------>| | | |
| INVITE | | | |
|------------>| Request Assertion | |
| |------------->| | |
| | User Authentication | |
| | and Authorization | |
| |<-------------| | |
| |------------->| | |
| | SAML artifact| | |
| |<-------------| | |
| | INVITE + SAML artifact | |
| |---------------------------->| |
| | | SAML request | |
| | |<-------------| |
| | | SAML response + Assertion |
| | |------------->| |
| | | *(Note 1) |
| | | | |
| | | | INVITE |
| |------------>|
| 180 Ringing |
|<--------------------------------------------------------|
| |
| 200 OK |
|<--------------------------------------------------------|
| ACK |
|-------------------------------------------------------->|
| Media Stream |
|<=======================================================>|
| |
Figure 1: Type A overriding barring service flow (SIP-SIP)
Rocky Expires - July 2006 [Page 5]
Internet-Draft override barring services January 2006
Alice wants to make a call to Bob and when the call setup request
reaches the proxy server of atlanta.com, the server will ask him or
his phone for authentication by initiating a challenge procedure.
After getting the challenge response and passing the verification,
the proxy will contact the asserting party to request a SAML
assertion or artifact. And then, the server will forward the call
setup request to the proxy of biloxi.com with the addition of the
received SAML assertion or artifact.
After receiving the request message, the proxy server of biloxi.com
will check the callee services. The server will reject the call if
the barring service's precondition are met and no other services can
be invoked as the information from the request and the callee
subscriber's service subscription.
But if the request takes a SAML assertion, the server SHOULD extract
the information from the assertion which can help the caller override
the callee's barring service. If the request takes a SAML artifact,
the server needs to request the corresponding assertion from the
asserting party. After getting the assertion, it will continue the
process just like the request takes the SAML assertion.
Suppose based on the information from the SAML assertion the caller
can override the callee's barring service, the server will forward
the call request to Bob's phone. Else, it will reject the request
with a failure response.
Any exception occurs, the proxy of biloxi.com will reject the call
because of the barring service. For instance, the proxy server of
biloxi.com does not have a trust SAML relationship with the asserting
party which creates the SAML assertion or artifact received via the
request message.
Rocky Expires - July 2006 [Page 6]
Internet-Draft override barring services January 2006
3.1.1.2 SIP-PSTN service flow
Alice in Atlanta.com tries to make a call to a subscriber Bob in PSTN
network. The caller's SIP network can interwork with the called PSTN
network through a SIP/PSTN gateway. Figure 2 shows the basic message
flow of Alice overriding Bob’s barring service successfully.
----------- ------------- ------------- ------------- -----------
| Alice's | | proxy.atl | | Asserting | | SIP/PSTN | | Bob's |
| phone | | anta.com | | Party | | Gateway | | Switch |
----------- ------------- ------------- ------------- -----------
| | | | |
| INVITE | | | |
|------------>| | | |
| 407 Proxy Auth. Req. | | |
|<------------| | | |
| ACK | | | |
|------------>| | | |
| | | | |
| INVITE | | | |
|------------>| Request Assertion | |
| |------------->| | |
| | User Authentication | |
| | and Authorization | |
| |<-------------| | |
| |------------->| | |
| |SAML assertion| | |
| |<-------------| | |
| | INVITE + SAML assertion | |
| |---------------------------->| |
| | | *(Note 1) |
| | | | |
| | | | IAM |
| |------------>|
| | *(Note 2)
| | ACM |
| 180 Ringing |<------------|
|<------------------------------------------| |
| | ANM |
| 200 OK |<------------|
|<------------------------------------------| |
| ACK | |
|------------------------------------------>| |
| Media Stream |Media Stream |
|<=========================================>|<===========>|
| | |
Figure 2: Type A overriding barring service flow (SIP-PSTN)
Rocky Expires - July 2006 [Page 7]
Internet-Draft override barring services January 2006
Alice wants to make a call to Bob and when the call setup request
reaches the proxy server of atlanta.com, the server will ask him or
his phone for authentication by initiating a challenge procedure.
After get the challenge response and pass the verification, the proxy
will contact the asserting party to request a SAML assertion or
artifact. And then, the server will forward the call setup request to
the SIP/PSTN interworking gateway with the addition of the received
SAML assertion or artifact.
After receives the request message, the gateway complete interworking
between SIP and the protocol which is used in the PSTN network, e.g.
ISUP here. No matter what the protocol is used in the PSTN network,
but for the convenience of description and discussion, suppose it is
ISUP. Before transfer the call establishing request to the callee's
switch, the gateway will construct the outgoing request from the
incoming request received based on the message, parameter and service
flow interworking rules.
After receives the request message, Bob's switch will check the
callee services. The server will reject the call if the barring
service's precondition are met and no other services can be invoked
as the information from the request and the callee subscriber's
service subscription.
But if the request takes enough information to indicate that the
caller can override the callee barring service, the callee switch
will alert the callee subscriber.
To get the information to override the callee barring service in
Bob's switch, the gateway should collect it when it constructs the
request message. If the incoming request message takes a SAML
assertion, the gateway SHOULD extract the information from the
assertion which will help the caller override the callee's barring
service. If the request takes a SAML artifact, the server needs to
request the corresponding assertion from the asserting party, and
then extract the information from the assertion requested. But if the
gateway does not have a trust SAML relationship with the asserting
party, it SHOULD ignore the SAML assertion or artifact instead of
using it.
Rocky Expires - July 2006 [Page 8]
Internet-Draft override barring services January 2006
3.1.1.3 PSTN-SIP service flow
Alice in PSTN network tries to make a call to a subscriber Bob in SIP
network of biloxi.com domain. Their networks can interwork through a
PSTN/SIP gateway. Figure 3 shows the basic message flow of Alice
overriding Bob’s barring service successfully.
----------- ------------- ------------- -----------
| Alice's | | PSTN/SIP | | proxy.bil | | Bob's |
| Switch | | Gateway | | oxi.com | | phone |
----------- ------------- ------------- -----------
| | | |
| IAM | | |
|------------>| | |
| *(Note 1) | |
| | INVITE + SAML assertion | |
| |---------------------------->| |
| | *(Note 2) |
| | | INVITE |
| | |------------>|
| | 180 Ringing |
| ACM |<------------------------------------------|
|<------------| |
| | 200 OK |
| ANM |<------------------------------------------|
|<------------| ACK |
| |------------------------------------------>|
|Media Session| Media Session |
|<===========>|<=========================================>|
| | |
Figure 3: Type A overriding barring service flow (PSTN-SIP)
Alice wants to make a call to Bob and when the gateway received the
call setup request, it can create an assertion based on signaling
information from Alice and digitally sign it with his private key.
The call is forwarded from the PSTN/SIP gateway to the proxy of Bob's
domain. And the INVITE request will takes a SAML assertion or
artifact.
After receiving the request message, the proxy server of biloxi.com
will check the callee services. The server will reject the call if
the barring service's precondition are met and no other services can
be invoked as the information from the request and the callee
subscriber's service subscription.
But if the request takes a SAML assertion, the server SHOULD extract
the information from the assertion which can help the caller override
Rocky Expires - July 2006 [Page 9]
Internet-Draft override barring services January 2006
the callee's barring service. If the request takes a SAML artifact,
the server needs to request the corresponding assertion from the
gateway and then extract the information from the assertion requested.
But if the proxy does not have a trust SAML relationship with the
gateway, it SHOULD ignore the SAML assertion or artifact instead of
using it.
Suppose based on the information from the SAML assertion the caller
can override the callee's barring service, the server will forward
the call request to Bob's phone. Else, it will reject the request
with a failure response.
Any exception occurs, the proxy of biloxi.com will reject the call
because of the barring service.
Rocky Expires - July 2006 [Page 10]
Internet-Draft override barring services January 2006
3.1.1.4 SIP bridge PSTN-PSTN service flow
Alice tries to make a call to a subscriber Bob. Both of them are in
PSTN network and SIP bridges their networks to provide the
interworking functions. Figure 4 shows the basic message flow of
Alice overriding Bob's barring service successfully.
------------- -------------
----------- | PSTN/SIP | | SIP/PSTN | -----------
| PSTN | | Gateway | | Gateway | | Bob's |
| Switch | | (O-IWU) | | (O-IWU) | | phone |
----------- ------------- ------------- -----------
| | | |
| IAM | | |
|------------>| | |
| *(Note 1) | |
| | INVITE + SAML assertion | |
| |---------------------------->| |
| | *(Note 2) |
| | | IAM |
| | |------------>|
| | | |
| | | ACM |
| | 180 Ringing |<------------|
| ACM |<----------------------------| |
|<------------| | ANM |
| | 200 OK |<------------|
| ANM |<----------------------------| |
|<------------| ACK | |
| |---------------------------->| |
|Media Stream | Media Stream |Media Stream |
|<===========>|<===========================>|<===========>|
| | | |
Figure 4: Type A overriding barring service flow (PSTN-PSTN)
Alice wants to make a call to Bob and his switch will initiates a
call setup request to a PSTN/SIP gateway called PSTN-to-SIP gateway
or O-IWU. O-IWU will forward the request into SIP network. And
eventually, the request will enter PSTN network through a SIP/PSTN
gateway called I-IWU or SIP-to-PSTN gateway and I-IWU will forward
the call to Bob's home switch.
When O-IWU gets the request, it can create an assertion based on
signaling information from Alice and digitally sign it with his
private key. The call is forwarded from the PSTN/SIP gateway to the
SIP network. And the INVITE request will takes a SAML assertion or
artifact.
Rocky Expires - July 2006 [Page 11]
Internet-Draft override barring services January 2006
After receives the request message, the I-IWU complete interworking
between SIP and the protocol which is used in the PSTN network.
Before transfer the request to the callee's switch, the I-IWU will
construct the outgoing request from the incoming request received
based on the message, parameter and service flow interworking rules.
After receives the request message, Bob's switch will check the
callee services. The server will reject the call if the barring
service's precondition are met and no other services can be invoked
as the information from the request and the callee subscriber's
service subscription.
But if the request takes enough information to indicate that the
caller can override the callee barring service, the callee switch
will alert the callee subscriber.
To get the information to override the callee barring service in
Bob's switch, the I-IWU should collect it when it constructs the
request message. If the incoming request message takes a SAML
assertion, the I-IWU should extract the information from the
assertion which will help the caller override the callee's barring
service. If the request takes a SAML artifact, the server needs to
request the corresponding assertion from the O-IWU, and then extract
the information from the assertion requested. But if the I-IWU does
not have a trust SAML relationship with the O-IWU, it SHOULD ignore
the SAML assertion or artifact instead of using it.
Rocky Expires - July 2006 [Page 12]
Internet-Draft override barring services January 2006
3.1.2 A solution based on P-CPC
SS7 ISUP [13] defines a Calling Party's Category (CPC) parameter that
characterizes the originating subscriber used to originate a call and
carries other important information that can describe the originating
party. Based on the CPC parameter from the calling network, the
called network can do some predefined special processes related to it.
Some national PSTN supplementary service standards have defined the
functionality of overriding barring services in use of the CPC. A
simple way to simulate it in SIP is to make an approach to convey the
similar information by the SIP messages in the similar case, just
like conveying CPC information by the call setup request message,
INVITE.
[12] has defined an extension header, P-CPC to convey the calling
party category derived from the ISUP protocol including its meaning
and the defined possible values.
In a certain network, for instance the IMS network, the subscribers
accessing the network are controllable. When a subscriber initiates a
request, the network can check all the parameters and only send
trusted information to the next node. In this case, the called
network can use any information extracted from the request, including
P-CPC and based on it, the called network can make a decision on
whether the caller can override the callee's barring service and if
yes, the called network can transfer the request to the called party
end-system.
In IMS network, when a subscriber initiates a call setup request,
a so-called P-CSCF proxy will route the call to a so-called S-CSCF
proxy which keeps the subscriber's information, its registration
and it can get the subscriber's subscription locally or from a
standalone server using a defined standardized interface. Before
the S-CSCF route the call request out, it can check and modify the
header if it is already present, or create a new one if not. Any
way, the request from the S-CSCF will take a P-CPC header and its
value is a correct calling party category.
After it reaches the called network, the called network server, S-
CSCF or a standalone application server will check whether the
caller has rights to override the called party's barring service
using the CPC value from the P-CPC header if the CPC value is
present.
Rocky Expires - July 2006 [Page 13]
Internet-Draft override barring services January 2006
3.1.3 Summary of the above solutions
Based on a third-party asserting party, the called network can use
SAML to get some trusted calling party information from the received
message. And based on all the information from the asserting party
and the received information, it can provide more functionalities and
services including overriding barring services. Fundamentally, there
must be a third-party asserting party, and both of the calling and
called network server must have a trusted SAML relationship with it.
Note that the asserting party is a logical entity and can
physically coexist with any network server, for example, the proxy
server of the calling or called network, the PSNT-SIP gateway, or
the third network server.
If the P-CPC extension header is used, it is assumed that the header
is created in a trusted way. For example, in a certain network the
behavior of each network element and all the subscribers accessing
the network are fully controlled by the carrier. Before forwarding a
call setup request to a next element, the calling network will create
or overwrite a P-CPC header and fill a correct value of the calling
subscriber in the header. And then the called network server will be
able to use it to give different functionalities to different types
of subscribers. If the called network server is not sure the value is
trusted, it should not do anything related to the value.
Rocky Expires - July 2006 [Page 14]
Internet-Draft override barring services January 2006
3.2 Type B barring service
For type B barring service, it will give the caller an opportunity to
override the barring service by a key. The key can be set or modified
in several ways. For instance, the subscriber can set it by self-
service web page, by sending a specified message to the service
center, etc.
There are 3 means to implement the overriding barring functionality
and they are documented here. More possible schemas are welcome and
will be added into this document also.
Rocky Expires - July 2006 [Page 15]
Internet-Draft override barring services January 2006
3.2.1 In-band password collect
The called service server will establish a session with the caller to
play announcement to him and collect digits from him. When the input
digits are the same as the key, then the server will forward the call
to the called party end-system. Figure 6 gives a successful service
flow.
----------- ------------- ------------- -----------
| Alice's | | proxy.atl | | server.bi | | Bob's |
| phone | | anta.com | | loxi.com | | phone |
----------- ------------- ------------- -----------
| | | |
| INVITE | | |
|------------>| INVITE | |
| |---------------------------->| |
| | | |
| 183 Progress | |
|<------------------------------------------| |
| PRACK | |
|------------------------------------------>| |
| 200 OK (PRACK) | |
|<------------------------------------------| |
| Media Stream | |
|<=========================================>| |
| *(Note 1) |
| | INVITE |
| |------------>|
| | 180 Ringing |
| |<------------|
| *(Note 2) |
| 180 Ringing | |
|<------------------------------------------| |
| PRACK | |
|------------------------------------------>| |
| 200 OK (PRACK) | |
|<------------------------------------------| |
| | 200 OK |
| 200 OK (INVITE) |<------------|
|<------------------------------------------| |
| ACK | |
|------------------------------------------>| ACK |
| |------------>|
| Media Stream |
|<=======================================================>|
| |
Figure 6: Type B In-band password collect service flow
Rocky Expires - July 2006 [Page 16]
Internet-Draft override barring services January 2006
When the called party service server, server.biloxi.com, receives the
request and the type B barring service is triggered, it will
establish a session with the caller and play announcement to him to
ask for the key. The caller will hang-on to finish the request. He
can also try to continue it by pressing the digits of the key. The
digits will be transferred to the server by the in-band signals or
DTMF package which is defined by RFC2833.
If the key doesn't match, the server will reject the request with a
failure response. If it matches, the server will forward the request
to Bob's phone and the call will be established after Bob hang up.
If the server runs as a proxy, it needs to release the dialog between
itself and the caller, and finally another dialog will be established
between Bob's phone and Alice's phone.
And the server can also implement it as a 3pcc controller. In this
mode, another dialog will be established between the server and Bob's
phone.
Rocky Expires - July 2006 [Page 17]
Internet-Draft override barring services January 2006
3.2.2 Out-band password collect
The called service server will establish a session with the caller to
play announcement to him, and establish a subscription with the
caller to collect digits from him by sending a SUBSCRIBE with KPML
request body. When the input digits are the same as the key, then the
server will forward the call to the called party end-system. Figure 6
gives a successful service flow.
Rocky Expires - July 2006 [Page 18]
Internet-Draft override barring services January 2006
----------- ------------- ------------- -----------
| Alice's | | proxy.atl | | server.bi | | Bob's |
| phone | | anta.com | | loxi.com | | phone |
----------- ------------- ------------- -----------
| INVITE | | |
|------------>| INVITE | |
| |---------------------------->| |
| 183 Progress | |
|<------------------------------------------| |
| PRACK | |
|------------------------------------------>| |
| 200 OK (PRACK) | |
|<------------------------------------------| |
| Media Stream | |
|<==========================================| |
| *(Note 1) |
| SUBSCRIBE | |
|<------------------------------------------| |
| 202 Accepted (SUBSCRIBE) | |
|------------------------------------------>| |
| NOTIFY | |
|------------------------------------------>| |
| 200 OK (NOTIFY) | |
|<------------------------------------------| |
| | |
| NOTIFY (key pressed) | |
|------------------------------------------>| |
| 200 OK (NOTIFY) | |
|<------------------------------------------| |
| *(Note 2) | INVITE |
| |------------>|
| | 180 Ringing |
| *(Note 3) |<------------|
| 180 Ringing | |
|<------------------------------------------| |
| PRACK | |
|------------------------------------------>| |
| 200 OK (PRACK) | |
|<------------------------------------------| |
| | 200 OK |
| 200 OK (INVITE) |<------------|
|<------------------------------------------| |
| ACK | |
|------------------------------------------>| ACK |
| |------------>|
| Media Stream |
|<=======================================================>|
| |
Figure 6: Type B KPML password collect service flow
Rocky Expires - July 2006 [Page 19]
Internet-Draft override barring services January 2006
When the called party service server, server.biloxi.com, received the
request and the type B barring service is triggered, it will
establish a session with the caller to play announcement to him to
ask for the key. And at the same time, it will send a SUBSCRIBE
request to the caller to establish a subscription to collect the
digits. The SUBSCRIBE request will include a KPML request body.
The caller will hang-on to finish the request. He can also try to
continue it by pressing the digits of the key. The digits will be
transferred to the server in NOTIFY messages as defined in [KPML]
specification.
If the key doesn't match, the server will reject the request with a
failure response. If it matches, the server will forward the request
to Bob's phone and the call will be established after Bob hang up.
If the server runs as a proxy, it needs to release the dialog between
itself and the caller, and finally another dialog will be established
between Bob's phone and Alice's phone.
And the server can also implement it as a 3pcc controller. In this
mode, another dialog will be established between the server and Bob's
phone.
Rocky Expires - July 2006 [Page 20]
Internet-Draft override barring services January 2006
3.2.3 Challenge-based solution
Based on the challenge technology, it is possible that the called
party service server, server.biloxi.com, get the key from the
response to the challenge request.
----------- ------------- ------------- -----------
| Alice's | | proxy.atl | | server.bi | | Bob's |
| phone | | anta.com | | loxi.com | | phone |
----------- ------------- ------------- -----------
| | | |
| INVITE | | |
|------------>| INVITE | |
| |---------------------------->| |
| | | |
| 407 Password Required | |
|<------------------------------------------| |
| ACK | |
|------------------------------------------>| |
| *(Note 1) |
| INVITE | |
|------------------------------------------>| |
| *(Note 2) |
| | INVITE |
| |------------>|
| | 180 Ringing |
| 180 Ringing |<------------|
|<------------------------------------------| |
| PRACK | |
|------------------------------------------>| |
| 200 OK (PRACK) | |
|<------------------------------------------| |
| | 200 OK |
| 200 OK (INVITE) |<------------|
|<------------------------------------------| |
| ACK | |
|------------------------------------------>| ACK |
| |------------>|
| Media Stream |
|<=======================================================>|
| |
Figure 7: Type B Challenge-based password collect service flow
When the called party service server, server.biloxi.com, receives the
request, and the type B barring service is triggered, it will return
a failure response (e.g. 407 Password Required) with challenge
request to the caller.
Rocky Expires - July 2006 [Page 21]
Internet-Draft override barring services January 2006
After receiving the response, the caller phone will request the
caller to provide a key to complete the service. The caller will
hang-on to finish the request. He can also try to continue it by
inputting the digits of the key. And then, his phone will get a
second try with a challenge response. After getting the new request,
the server will check the response in using the password to override
Bob's barring service, some information it created and some other
information get from the request.
If the key doesn’t match, the server will simply reject the request
with a failure response. If it matches, the server will forward the
request to Bob's phone and the call will be established after Bob
hang up.
Just as followed, the server can be any logical entity defined by
RFC3261.
Rocky Expires - July 2006 [Page 22]
Internet-Draft override barring services January 2006
4 Security Considerations
This draft has collected several possible solutions to override the
barring services. Several technologies are reused here, SAML, an
extension header P-CPC, in-band DTMF collect, out-band key collect
and challenge procedure and their security problems have been
considered in the related document separately. The combination of
them will not bring any new security problems.
5 IANA Considerations
This document requires no IANA actions.
6 References
6.1 Normative References
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March 1997.
[2] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A.,
Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP:
Session Initiation Protocol", RFC 3261, June 2002.
[3] Rosenberg, J., Schulzrinne, H., "Reliability of Provisional
Responses in the Session Initiation Protocol (SIP)", RFC 3262,
June 2002.
[4] Roach, A., "Session Initiation Protocol (SIP)-Specific Event
Notification", RFC 3265, June 2002.
[5] H. Schulzrinne, S. Petrack, "RTP Payload for DTMF Digits,
Telephony Tones and Telephony Signals", RFC 2833, May 2000.
[6] J. Rosenberg, J. Peterson, H. Schulzrinne, G. Camarillo., "Best
Current Practices for Third Party Call Control (3pcc) in the
Session Initiation Protocol (SIP). ", RFC 3725, April 2004.
[7] H. Tschofenig, J. Peterson, J. Polk, D. Sicker, M. Tegnander,
"Using SAML for SIP", draft-tschofenig-sip-saml-04.txt, July 18,
2005.
[8] International Telecommunications Union, "Recommendation Q.763:
Signalling System No. 7: ISDN user part formats and codes",
December 1999, <http://www.itu.int>.
Rocky Expires - July 2006 [Page 23]
Internet-Draft override barring services January 2006
[9] Hodges, J., "application/saml+xml Media Type Registration",
draft-hodges-saml-mediatype-01 (work in progress), June 2004.
[10] Peterson, J., "Trait-based Authorization Requirements for the
Session Initiation Protocol (SIP)", draft-ietf-sipping-trait-
authz-01 (work in progress), February 2005.
[11] R. Jesske, D. Alexeitsev, M. Garcia-Martin, "Input Requirements
for the Session Initiation Protocol (SIP) in support for the
European Telecommunications Standards Institute", draft-jesske-
sipping-tispan-requirements-02, October 6, 2005
[12] Rocky Wang, Youzhu Shi, "A header to deliver the calling party
category", draft-rocky-sipping-calling-party-category-01.txt,
October 21, 2005.
[13] American National Standards Institute, "ANSI T1.113-2000,
Signaling System No. 7, ISDN User Part", 2000,
<http://www.ansi.org>.
6.2 Informational References
[14] Peterson, J., "A Privacy Mechanism for the Session Initiation
Protocol (SIP)", RFC 3323, November 2002.
[15] ETSI, "Services and Protocols for Advanced Networks (SPAN);
Anonymous Call Rejection (ACR) Supplementary Service; Service
description", ETSI EN 301 798 v1.1.1, October 2000, <http://
webapp.etsi.org/workprogram/Report_WorkItem.asp?WKI_ID=6618>.
[16] Rohan Mahy, "The Calling Party's Category tel URI Parameter",
draft-mahy-iptel-cpc-02 (work in progress), February 21, 2005.
7 Acknowledgment
I would like to thank Jonathan Rosenberg for giving us the idea to
implement the functionalities to override barring services, and Dean
Wills and Rohan Mahy for giving me the chance to collect the
approaches of the functionality.
I also express my gratitude to Paul Kyzivat, James M. Polk, Jeroen
Van Bemmel, Garcin Sebastien, Michael Hammer, Anders Kristensen,
Peili Xu, and Xiaowen Li for their detailed comments on the services
and the P-CPC draft.
Rocky Expires - July 2006 [Page 24]
Internet-Draft override barring services January 2006
8 Author's Address
Rocky Wang
Huawei Technologies Co., Ltd.
Huadian Building, Huawei Industrial Base,
Bantian, Longgang District,
Shenzhen 518129, P.R.China
EMail: rocky.wang@huawei.com
9 Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights
might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be
found in BCP 78 and BCP 79.
Copies of IPR disclosures made to the IETF Secretariat and any
assurances of licenses to be made available, or the result of an
attempt made to obtain a general license or permission for the use of
such proprietary rights by implementers or users of this
specification can be obtained from the IETF on-line IPR repository at
http://www.ietf.org/ipr.
The IETF invites any interested party to bring to its attention any
copyrights, patents or patent applications, or other proprietary
rights that may cover technology that may be required to implement
this standard. Please address the information to the IETF at ietf-
ipr@ietf.org.
10 Disclaimer of Validity
This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM 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.
11 Copyright Statement
Copyright (C) The Internet Society (2005). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights.
Rocky Expires - July 2006 [Page 25]