Title: ANCP Protocol Design Team Update: Multicast extensions
1ANCP Protocol Design Team Update Multicast
extensions
- Philippe Champagne, Stefaan De Cnodder,
- Roberta Maglione, Sanjay Wadhwa
71st IETF - Philadelphia
2Agenda
- ANCP Multicast Extensions
- Modes of Operation
- Message Types
- Message Flows
- General Message Format
- Open Issues
- Next Steps
3Modes Of Operation
- AN terminates IGMP from subscriber.
- AN interacts via ANCP with NAS to perform
conditional access and bandwidth based admission
control. If the flow is admitted, AN replicates
multicast flow to the subscriber. OR - AN autonomously makes the decision to admit a
flow for the subscriber. If the flow is admitted,
AN replicates multicast flow to the subscriber - NAS directly learns of the request for multicast
flow from the subscriber (either by terminating
IGMP from the subscriber, or via other means e.g.
application level signaling). - NAS performs per-subscriber conditional access
and bandwidth based admission control. NAS
controls replication state on the AN via ANCP.
4ANCP Multicast Messages
Sub-Message Type
Details
Message Type
- Purpose
- Download Conditional access information
- from NAS to AN.
- Contents
- Profile Name OR white/black/grey lists
Conditional Access Update Message Direction NAS
? AN
Multicast Control Messages
- Purpose
- For NAS to create or delete replication
- state on AN.
- Contents
- One or more S/,G, ACI, Action add/delete
- Time/Volume based accounting ON/OFF
Replication Control Message Direction NAS ? AN
5ANCP Multicast Messages
Message Type
Sub-Message Type
Details
- Purpose
- AN asking NAS before adding
- a port to a multicast flow. NAS can perform
- bandwidth admission control and/or access
control. - AN notifying NAS to release resource
-
- Contents
- S,G or ,G , ACI , Action request or
release - ,, Action request or release
Admission Request Message Direction AN ? NAS
Multicast Request Messages
- Purpose
- NAS asking AN to report active flow
information. - OR
- NAS asking AN to trigger admission request
- for all active flows. AN to clear all
replication - state, and generate admission-request for
each - flow for which it has received IGMP ??
- Contents
- S/,G or ,
- Optional admission-request retrigger flag
Active-Flow Request Message Direction NAS ? AN
6ANCP Multicast Messages
Details
Message Type
Sub-Message Type
- Purpose
- Generated to provide response to an
- admission request from AN.
- Contents
- S/,G, ACI
- Time/Volume based accounting ON/OFF
- Failure code (present in ANCP header)
Admission Response Message Direction NAS ? AN
Multicast Response Messages
- Purpose
- AN reporting one or more active flows.
- Contents
- One or more S/,G records where each
- record can contain
- list of ACI, bandwidth, stats
- creation time, last update time etc.
Active-Flow Report Message Direction AN ? NAS
Multicast Status Message Direction AN ? NAS
- Purpose
- ACK/NACK (if requested) for Multicast
- Control Messages (Conditional Access
- update message or Replication Control
- Message)
- Contents
- Command-sequence
- Code in case of failure
7Message Flow
NAS
AN
Conditional Access Update
IGMP join for white list accept
Admission-Request Message
IGMP join for grey list Ask
Admission Response Message
StreamingMulticast Flow
Active-Flow Request Message
Active-Flow Report Message
8Message Flow (example 2)
NAS
HGW
IGMP Join
Access Control Bandwidth Admission Control
AN
Replication Control Message
StreamingMulticast Flow
Multicast Status Message
Active-Flow Request Message
Active-Flow Report Message
9ANCP Multicast Packet Format
- Keep existing GSMP header.
- GSMP message type in the header extended for
multicast. New types to be defined for Multicast
Control, Multicast Request, and Multicast
Response messages. - Payload to contain Extension Block as defined
in the protocol draft. - Extension block has more specific multicast
message type, and one or more TLVs specific to
that message type.
10General Packet Format
- 0 1 2
3 0 1 2 3 4 5 6 7 8 9
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
----------------------
---------- Vers Sub
Message Type Result Code
--------------------
------------ Partition
ID Transaction Identifier
-----------------
--------------- I
SubMessage Number Length
---------------
-----------------
Message Payload
-----------
---------------------
- Message Type
- Multicast Control Message
- Multicast Request Message
- Multicast Response Message
11Message Payload
- -------------------------
------- - xxxxxxxx Message Type Tech Type
Block Length - -------------------------
------- -
- Extension
Value -
- -------------------------
------- - Tech Type 0xFF (Base specification use ie
technology independent) - Message Type Conditional Access,
Replication Control, - Admission Request,
Active-Flow Request - Admission Response,
Active-Flow Report - "Extension Value" contains one or more TLVs
- -------------------------
------- - of TLVs Extension block
length (bytes) - -------------------------
------- -
-
12Open Issues
- Conditional Access
- What kind of configuration models should be
supported? Do we need - capability negotiation for different models ?
- Referential Model
- Profiles containing white, black and grey list
pre-configured on AN via means other than ANCP.
When user logs in, NAS sends a conditional
access update message to indicated the profile
relevant to the user, based on the subscription. - Profiles containing white, black and grey list
pre-configured on AN via ANCP. When user logs in,
NAS sends a conditional access update message
to indicated the profile relevant to the user,
based on the subscription. - Non-Referential Model
- When user logs in, NAS provides actual contents
of white, black and grey lists relevant to the
user, based on the users subscription. This is
suitable for a-la-carte access model.
13Open Issues
- We would like to use existing TLVs for ACI.
- Is it useful to provide support for indicating
what is contained in the ACI string?
14Open Issues
- Is it useful to provide multiple control
operations in a single message (e.g. provide
delete for a flow, followed by an add via a
single replication control message (swap
semantics). - Behavior on failure needs to be clearly defined
e.g. if first operation fails, should the second
operation be executed?
15Next steps
- Closure on open issues
- Consider design and specification for the
following - Accounting
- Flow-Groups
- Graceful Restart
- Detailed packet formats
16Questions/Feedback?
17Thank You
18Message Types
- 2 Categories of messages
- Multicast Control Messages (From NAS to AN)
- Conditional Access Update (Sends a
White/Grey/Black List to AN) - Admission-Control Message
- Can be in response to an Admission-Request
Message or - Can be an unsolicited Control message
- Multicast Request/Status Messages (both ways)
- Admission-Request Message
- Active-Flow Request Message (NAS ask for list of
current flows) - Multicast Status Message (AN reports
error/success using this message) - Multicast Active-Flow Report (AN reports the list
of Active Flow)
19Packet Format
- Keep existing GSMP header
- New GSMP message type
- For conditional access
- For Admission Control Message
- For Admission Request
- For Admission Response (and Spontaneous)
- etc
20Open Issues
- How to address conditional Access
- Profile-id provided in message but profile
definition not configured via ANCP (mandatory) - Profile-id with profile definition configured via
ANCP - List directly configured via ANCP (no concept of
profiles) - Should ANCP Multicast extension be considered
generic and tech independent? - Do we need to provide support for identifying
what is contained in the ACI string? - Make sense to support multiple transaction in
single message (like a swap,) Transaction to
be atomic? Is sequencing required/a must? - Concept of Flow groups issues to be resolved
(will it be too complex?)
21Questions/Feedbacks?
- Should we handle Flow groups now or later?
- Active-Flow Report (NAS getting the list of
active flow on the AN)