Distributed Computing

, Volume 18, Issue 4, pp 293–305 | Cite as

Mechanism design for policy routing

  • Joan Feigenbaum
  • Rahul SamiEmail author
  • Scott Shenker
Special Issue Podc 04


The Border Gateway Protocol (BGP) for interdomain routing is designed to allow autonomous systems (ASes) to express policy preferences over alternative routes. We model these preferences as arising from an AS’s underlying utility for each route and study the problem of finding a set of routes that maximizes the overall welfare (ie, the sum of all ASes’ utilities for their selected routes).

We show that, if the utility functions are unrestricted, this problem is NP-hard even to approximate closely. We then study a natural class of restricted utilities that we call next-hop preferences. We present a strategyproof, polynomial-time computable mechanism for welfare-maximizing routing over this restricted domain. However, we show that, in contrast to earlier work on lowest-cost routing mechanism design, this mechanism appears to be incompatible with BGP and hence difficult to implement in the context of the current Internet. Our contributions include a new complexity measure for Internet algorithms, dynamic stability, which may be useful in other problem domains.


Operating System Communication Network Utility Function Computer System System Organization 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Archer, A., Tardos, É: Frugal path mechanisms. In: Proceedings of 13th ACM-SIAM Symposium on Discrete Algorithms (SODA ’02), pp. 991–999. ACM Press/SIAM, New York (2002).Google Scholar
  2. 2.
    Clarke, E: Multipart pricing of public goods. Public Choice 11, 17–33 (1971)CrossRefGoogle Scholar
  3. 3.
    Edmonds, J.: Optimal Branchings. Journal of Research of the National Bureau of Standards B71, 233–240 (1967)Google Scholar
  4. 4.
    Elkind, E., Sahai, A., Steiglitz, K.: Frugality in path auctions. In: Proceedings of the 15th ACM-SIAM Symposium on Discrete Algorithms (SODA ’04), pp. 701–709. ACM Press/SIAM, New York (2004)Google Scholar
  5. 5.
    Feigenbaum, J., Papadimitriou, C., Sami, R., Shenker, S.: A BGP-based mechanism for lowest-cost routing. Distrib. Comput. 18(1), 61–72 (2005). A preliminary version appeared in the 2002 ACM Symposium on Principles of Distributed Computing (PODC’02)Google Scholar
  6. 6.
    Feigenbaum, J., Papadimitriou, C., Shenker, S.: Sharing the cost of multicast transmissions. Journal of Computer and System Sciences 63, 21–41 (2001)CrossRefGoogle Scholar
  7. 7.
    Feigenbaum, J., Sami, R., Shenker, S.: Mechanism Design for Policy Routing. In: Proceedings of the 23rd ACM Symposium on Principles of Distributed Computing (PODC ’04), pp. 11–20. ACM Press, New York (2004)Google Scholar
  8. 8.
    Feigenbaum, J., Shenker, S.: Distributed algorithmic mechanism design: Recent results and future directions. In: Proceedings of the 6th International Workshop on Discrete Algorithms and Methods for Mobile Computing and Communication (DIALM ’02), pp. 1–13. ACM Press, New York (2002)Google Scholar
  9. 9.
    Green, J., Laffont, J.: Incentives in public decision making. In: Studies in Public Economics, vol. 1, pp. 65–78. North Holland, Amsterdam (1979)Google Scholar
  10. 10.
    Groves, T.: Incentives in teams. Econometrica 41, 617–663, (1973)zbMATHGoogle Scholar
  11. 11.
    Håstad, J.: Clique is hard to approximate within n1−∊. Acta Mathematica 182, 105–142 (1999)zbMATHGoogle Scholar
  12. 12.
    Hershberger, J., Suri, S.: Vickrey prices and shortest paths: What is an edge worth? In: Proceedings of the 42nd IEEE Symposium on the Foundations of Computer Science (FOCS ’01), pp. 129–140. IEEE Computer Society Press, Los Alamitos (2001)Google Scholar
  13. 13.
    Humblet, P.: A distributed algorithm for minimum weight directed spanning trees. IEEE Transactions on Communications COM-31(6), 756–762 (1983)CrossRefGoogle Scholar
  14. 14.
    Karp, R.: Reducibility among combinatorial problems. In: Miller, R.E., Thatcher, J.W.: editors, Complexity of Computer Computations (Proceedings of a Symposium on the Complexity of Computer Computations), pp. 85–103. Plenum Press, New York (1972)Google Scholar
  15. 15.
    Nisan, N., Ronen, A.: Algorithmic mechanism design. Games and Economic Behavior 35, 166–196 (2001)CrossRefGoogle Scholar
  16. 16.
    Sami, R.: Distributed Algorithmic Mechanism Design. PhD thesis, Yale University (2003)Google Scholar
  17. 17.
    Spielman, D., Teng, S.: Smoothed analysis of algorithms: why the simplex algorithm usually takes polynomial time. J. ACM 51, 385–463 (2004)CrossRefGoogle Scholar
  18. 18.
    Vickrey, W.: Counterspeculation, auctions, and competitive sealed tenders. Journal of Finance 16, 8–37 (1961)Google Scholar

Copyright information

© Springer-Verlag 2006

Authors and Affiliations

  1. 1.Computer Science DepartmentYale UniversityNew HavenUSA
  2. 2.MIT CS&AI LaboratoryCambridgeUSA
  3. 3.EECS DepartmentICSI & University of California at BerkeleyBerkeleyUSA

Personalised recommendations