Tuesday, August 23, 2016

Dynamic Pricing and Traffic Engineering for Timely Inter-Datacenter Transfers

Dynamic Pricing and Traffic Engineering for Timely Inter-Datacenter Transfers

Virajith Jalaparti (Mircosoft)
Ivan Bliznets (Mircosoft)
Srikanth Kandula (Mircosoft)
Brendan Lucier (Mircosoft)
Ishai Menache (Mircosoft)

Bandwidth on wide area network is a costly and important resource. Providers like  Google and Microsoft carry both user traffic (requires low latency) and large amounts of business data (requires meeting deadlines). Various centralized traffic engineering (TE) techniques have been proposed but these techniques are dependent on the users input and knowledge of detailed traffic information, priority class of requests, latency and deadline requirements. These features are not provided by users, as they are known to inflate priorities and deadlines in hopes of getting better service. In today's world WAN customers do not have any grantees on data transfers. In fact providers do not have mechanism in place for users to specify their requirements.

In a survey conducted by authors, they find that WAN customers would even pay more for guaranteed deadlines. There is also a disconnect between pricing models and providers cost. Typically 95th percentile usage of a link is charged and static capacity costs are dependent on peak utilization.

In this papers authors present a system called Pretium that combines traffic engineering with dynamic pricing. The design goals of the system are

  1. Each user should be presented a menu of prices up front, from which they can select a service level.
  2. Prices should align the preferences of individual users with the goals and costs of the platform.
  3. Prices should be dynamic, adapting to changes in demand and usage patterns.
  4. The pricing model should complement not preclude, centralized traffic engineering.

Pretium serves both byte requests and rate requests. In Pretium, a customer specifies basic information and is immediately presented with a price quote with various service levels. The customer can then choose a a level or modify the request if nothing is appropriate.

The selected transfer is then managed by a central scheduler, tasked with upholding the service level guarantees. Pretium updates pricing in real time using feedback loop. The authors show that sum of top 10% usages can serve as a proxy for complex 95th percentile usage cost model.

They measure social welfare defined as the total value generated (over all requests served) minus operating costs and evaluate Pritum on topology and traffic observed in a large production WAN. They show that Pretium achieves more than 60% of the optimal welfare, which is 3.5X higher than a region-based fixed pricing scheme. Further, Pretium results in more than 2X higher profit for the provider. They demonstrate that the prices picked by Pretium adapt to load variations and that Pretium is robust to variations in network and request characteristics.

Q1) How are you doing or want to do congestion pricing?

A) We are using ,to some extent, congestion pricing techniques in our paper.

Q2) What happens when you cannot guarantee the transfer, what sort of mechanism are
in place to handle multiple requests by a customer that is trying to game the system?

A) We presume that we are not going to run out of bandwidth, we also set aside some capacity, if we run into this situation.

If some requests are colluding, our system makes sure that you cannot get benefits using this approach, you will only get benefits if you do not split requests.

Q3) You show that optimal choice = value - cost, and since we don't know the value but we know the cost and estimate value. How is this value different from maximum profit?

A) We maximize welfare not profit, in a maximum profit strategy, the prices would be set high by the provider. Welfare is not greedy and prices are close to value. A maximum profit strategy is very hard. In welfare, if the customer is happy, you would get profit.

Q4) How do you plan to compare against multiple providers?

A)  We have thought about it, and this is very complex to analyze. We will have to simplify some assumptions and how to come up with an experiment is complex as well.