RNAP: A Resource Negotiation and Pricing Protocol Xin Wang, Henning Schulzrinne

advertisement
RNAP: A Resource Negotiation and
Pricing Protocol
Xin Wang, Henning Schulzrinne
Columbia University
xwang@ctr.columbia.edu,
schulzrinne@cs.columbia.edu
(This work was supported by Hughes Research Lab)
15 July 2016
RNAP, X. Wang et al
1
What is RNAP?
• Assumption: network provides a choice of delivery
services to user
– e.g. diff-serv, int-serv, best-effort, with different levels of QoS
– with a pricing structure (may be usage-sensitive) for each.
• RNAP: a protocol through which the user and network (or
two network domains) negotiate network delivery services.
– Network -> User: communicate availability of services; price
quotations and accumulated charges
– User -> Network: request/re-negotiate specific services for user
flows.
• Underlying Mechanism: combine network pricing with
traffic engineering
15 July 2016
RNAP, X. Wang et al
2
Outline
• Motivation
• Basic RNAP messaging
• Protocol details
–
–
–
–
Architectures
Scaling in Core Domains
Advance reservation
Pricing and charging
• Experimental Results
• Summary of Protocol Features
• Future work
15 July 2016
RNAP, X. Wang et al
3
Motivation
• If multiple delivery service types are available, a
flexible service selection and request mechanism
is desirable.
• BBE services need pricing and charging support.
• Selecting and requesting a service at an agreedupon price involves negotiation between user and
network
15 July 2016
RNAP, X. Wang et al
4
Motivation (Cont’d)
• Dynamic resource negotiation capability and
congestion sensitive pricing are desirable
– Pricing signals congestion - allows safe and graceful QoS
degradation OR increased spending to keep stable service
– Allows better resource utilization- dynamic re-negotiation allows
higher utilization as resources need not be requested/provisioned
conservatively
– Allows network resources to be obtained immediately - even
during congestion (at high cost), e.g., urgent phone call
– Network can quickly recover from unexpected events - such as
network failure by re-negotiating with users
15 July 2016
RNAP, X. Wang et al
5
Typical Message Sequence
Query
Quotation
Periodic re-negotiation
Reserve
Commit
Quotation
Reserve
Commit
Query: User enquires about available
services, prices
Quotation: Network specifies services
supported, prices
Reserve: User requests service(s) for
flow(s) (Flow Id-Service-Price triplets)
Commit: Network admits the service
request at a specific price or denies it
(Flow Id-Service-Status-Price)
Close: tears down negotiation session
Release: release the resources
Close
Release
15 July 2016
RNAP, X. Wang et al
6
Architecture-Centralized
(RNAP-C)
NRN
NRN
NRN
HRN
HRN
S1
R1
AD - B
AD - A
TD
Internal Router NRN
Network Resource Negotiator
Edge Router
Host Resource Negotiator
Host
15 July 2016
HRN
RNAP Messages
RNAP, X. Wang et al
7
Architecture-Centralized
(RNAP-C)
Query
NRN
NRN
NRN
HRN
HRN
S1
R1
AD - B
AD - A
Internal Router NRN
TD
Network Resource Negotiator
Edge Router
Host Resource Negotiator
Host
15 July 2016
HRN
RNAP Messages
RNAP, X. Wang et al
8
Architecture-Centralized
(RNAP-C)
Quotation
NRN
NRN
NRN
HRN
HRN
S1
R1
AD - B
AD - A
Internal Router NRN
TD
Network Resource Negotiator
Edge Router
Host Resource Negotiator
Host
15 July 2016
HRN
RNAP Messages
RNAP, X. Wang et al
9
Architecture-Centralized
(RNAP-C)
Reserve
NRN
NRN
NRN
HRN
HRN
S1
R1
AD - B
AD - A
Internal Router NRN
TD
Network Resource Negotiator
Edge Router
Host Resource Negotiator
Host
15 July 2016
HRN
RNAP Messages
RNAP, X. Wang et al
10
Architecture-Centralized
(RNAP-C)
Commit
NRN
NRN
NRN
HRN
HRN
S1
R1
AD - B
AD - A
Internal Router NRN
TD
Network Resource Negotiator
Edge Router
Host Resource Negotiator
Host
15 July 2016
HRN
RNAP Messages
RNAP, X. Wang et al
11
End-to-End Messaging
• Sender HRN sends Query to access NRN; forwarded all
the way to last-hop NRN
• Last-hop NRN builds and sends Quotation message
upstream; forwarded from NRN to NRN - quoted prices
incremented at each NRN.
• Sender HRN sends Reserve message to access NRN;
forwarded downstream to to last-hop NRN
• Last-hop NRN builds and sends Commit message
upstream; forwarded from NRN to NRN - committed
prices, accumulated charges incremented, or service
request denied, at each NRN.
15 July 2016
RNAP, X. Wang et al
12
Architecture - Distributed
(RNAP-D)
HRN
HRN
R1
AD - B
AD - A
TD
Internal Router
Edge Router
Host
15 July 2016
RNAP Messages
RNAP, X. Wang et al
13
Architecture - Distributed
(RNAP-D)
HRN
HRN
R1
AD - B
AD - A
TD
Internal Router
Edge Router
Host
15 July 2016
RNAP Messages
RNAP, X. Wang et al
14
Architecture - Distributed
(RNAP-D)
HRN
HRN
R1
AD - B
AD - A
TD
Internal Router
Edge Router
Host
15 July 2016
RNAP Messages
RNAP, X. Wang et al
15
Scaling in Core Domains
• Direct Aggregation
– At boundary of access and core networks, map flowlevel resource requests with same destination network
to a single aggregate-level request.
– Inside core network, process aggregate RNAP
messages only, tunnel flow-level RNAP messages.
– At edge of destination network, terminate aggregatelevel RNAP message, re-activate flow-level RNAP
messages.
– Aggregate RNAP sessions fewer in number, larger
resource requests, longer negotiation interval -> less
overhead.
15 July 2016
RNAP, X. Wang et al
16
Example: Aggregation
50
HRN
NRN
50
50
100
100
150
NRN
150
NRN
50
100
100
AD - B
HRN
HRN
HRN
R2
AD - A
15 July 2016
RNAP, X. Wang et al
17
Scaling in Core Domains (Cont’d)
• Block Negotiation
Bandwidth
– Aggregate resources are added/given up in large blocks,
to minimize negotiation overhead and reduce network
dynamics
time
15 July 2016
RNAP, X. Wang et al
18
Advance Reservation
• Similar messaging sequence, reserve resources in
advance for a specified future time
• Price can be different from immediate reservation
• Re-negotiation
– “sell back” or “buy back”
– Possible penalty or reward
• Useful for resource negotiation between domains
15 July 2016
RNAP, X. Wang et al
19
Pricing and Charging
• How does the network arrive at a price?
• How will RNAP collect and communicate pricing
and charging information?
15 July 2016
RNAP, X. Wang et al
20
Price and Charge Formulation
• Router or NRN maintains state information
– Flow Id, negotiated price, charge for last negotiation
interval, accumulated charge
• e2e price and charge collation
– negotiation message passing through router/NRN uses
state information to increment price/charge fields
– Quotation message: carry estimated price for each
quoted service
– Commit message: carry accumulated charge for
preceding negotiation interval, committed price for next
interval
15 July 2016
RNAP, X. Wang et al
21
Price and Charge Formulation in a
RNAP-C Domain
• Alternatives:
– NRN does admission control and price computation
• forms price based on topology, routing and configuration
policies, network load
– Ingress router does admission control and price
computation
• may determine internal router loads through egress-to-ingress
Probe messages
– Boundary and internal routers collect local
prices/charges through intra-domain signaling protocol
(YESSIR/RSVP).
15 July 2016
RNAP, X. Wang et al
22
Example: Price Formulation in RNAP-C
Table 1
Resource Table
Domain Routing Table
ER1
R1
Dest NextHop NextHop
ER2
R1
ER2
Step 3: send total price
( $3/Mb )
R1
ER1
R2
15 July 2016
R1
ER2
(C, BW, Q, P) (C, BW, Q, P)
ER1 1, 3, 30, 2
R1
1, 2, 20, 1
NRN
Step1: determine a path (Table1)
Step2: accumulate price along
the path (Table 2)
Table 2
C:
BW:
Q:
ER2 P:
service class
average bandwidth (Mb)
average queue length
price ($/Mb)
R3
RNAP,
TDX. Wang et al
23
Shared and Multicast Charging
• Senders and receivers can share the total cost
• Indicate willingness to pay by setting Charge
Fraction field in Query/Reserve message
• Request is rejected if sum of Charge Fraction
fields is <1.
15 July 2016
RNAP, X. Wang et al
24
Pricing Strategy
• Reservation_charge = holding_charge
+ usage_charge
+ congestion_charge
– holding charge: charge for reservation
– usage charge: charge for resource consumption
• also dependent on service type, elasticity
– congestion charge: charge for resource competition
• resource overbooking
• buffer overflow
• Long-term high price
• Resource re-provisioning (?)
15 July 2016
RNAP, X. Wang et al
25
Testbed Setup
FreeBSD with routed, CBQ, RNAP
R1
S1
Rb
Ra
R2
S2
10 Mb
R3
S3
Embedded RNAP in RSVP Policy Data for prototype
RNAP
RSVP
Quotation
Path
Reserve
Commit
Resv
ResvErr
15 July 2016
RNAP, X. Wang et al
26
Evolution of Network Price and Total Resource Reservation
Total bandwidth: 4Mb/s t1: total reservation 2Mb/s t4: total reservation 2Mb/s
Targeted bandwidth:
t2: total reservation 3Mb/s t5: stabilized
70% (2.8 Mb)
t3: stabilized
2800
Total bandwidth reservation
Price
t1 t2
15 July 2016
t3
t4 t5
RNAP, X. Wang et al
27
Throughput of Sessions Sharing Bandwidth
Fairness sharing of bandwidth for applications with the
same requirement and price sensitivity
S1
S2
S3
15 July 2016
RNAP, X. Wang et al
28
Summary of Protocol Features
• A protocol that enables service negotiation
– multiple services, pricing, charging
• Supports centralized and distributed network
architectures.
• Provides dynamic negotiation capability
– Periodic re-negotiation capability
– Flexible negotiation period
– User can disable/enable negotiation at any time
15 July 2016
RNAP, X. Wang et al
29
Summary of Protocol Features (Cont’d)
• Pricing and charging capability
– Price and charge formulation, collation, communication
to user
– Charging mode: sender, receiver, or both
• Flexibility of service selection
– Multiple services: int-serv, diff-serv, best-effort
– Different granularities of reservation: flow, aggregate
level
– Multi-party negotiation: senders, receivers, both
– Stand alone, or embedded inside other protocols
15 July 2016
RNAP, X. Wang et al
30
Summary of Protocol Features (Cont’d)
• Scalability
– independent of hop count; aggregation in the core
• Price predictability
– Price is fixed for the service during a negotiation period
• Reliability
– Soft state for synchronous messages, liveness tracking
– Retransmission of asynchronous messages
– Server backup and information retrieval
15 July 2016
RNAP, X. Wang et al
31
Future Work
• Complete implementation
• Large system performance evaluation
15 July 2016
RNAP, X. Wang et al
32
Download