Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
6LB: scalable and application-aware load balancing with segment routing
Townsley M., Tollet J., Clausen T., Pfister P., Desmouceaux Y. IEEE/ACM Transactions on Networking26 (2):819-834,2018.Type:Article
Date Reviewed: Aug 21 2018

Most network load balancers do not take the application state into account when making a load balancing decision. They often need a centralized orchestrator to help monitor the overall system. In other environments, load balancer functions are integrated into the application, and so by extension they are not very useful to other applications. These solutions additionally incur connection rejects directly.

The authors argue that load balancing solutions are most optimal when they bear knowledge of application state, incur low monitoring overhead, and remain application agnostic at the network layer for their load balancing decision.

This paper presents a unique method of using Internet protocol version 6 (IPv6) segment routing. Using IPv6 segment routing, the authors describe a service hunting concept. They describe service hunting as a way of offering network flows to candidate application instances until one of them accepts the connection. To build a case for this method, the paper primarily compares its efficacy to Maglev [1], an example of a single-choice random flow assignment approach (SC).

The paper advocates the use of a consistent hashing mechanism to generate lookup tables similar to Maglev. However, the paper argues that this method is “resilient to changes to the pool of application instances.” Using algorithm 3 and the design of lookup tables, the authors advocate the choice of at least two application instances to improve reliability, at the cost of marginally increasing complexity. The authors rely on the analytical basis of the double Dixie cup problem to explain complexity and “the power of two choices in randomized load balancing” [2]. The authors measure fairness based on Jain et al.’s fairness index [3].

Three basic notations are important to following the evaluation results:

  • The single-choice policy (SC) baseline--Maglev is discussed as the baseline.
  • SRc: a static acceptance policy with threshold c, where the value c denotes the maximum number of flows an application instance can accept before rejecting and forwarding it to the next instance (except for the last in the list, which must accept).
  • SRDYN: a dynamic acceptance policy based on algorithm 3; essentially, the algorithm adjusts the value of c to maintain the threshold rejection ration at each application instance to one-half.

In my opinion, the paper makes a few good conclusions. First, SR4 performs significantly better than SC in terms of response time, reducing the number of servers required to achieve the service-level agreement (SLA) for lighter loads. Higher SRc offers no advantage to SC; for example, SR16 offers no significant advantage over SC.

Another key conclusion relates to the choice of c (threshold parameter). For lower values λ (arrival rate, for example, < 0.9), lower values of c (threshold) yield less wrongful rejections. Therefore, “small values of c are more suitable for low request rates.”

The influence of hash table size on response time is well analyzed. Favorable response times for SRc with c values < eight help make the case for 6LB.

  • Section 6B compares the fairness of SR4 and SRDYN with polling-based round-robin and weighted round-robin policies. The authors claim that instantaneous information is better than periodic feedback for lighter loads (that is, ρ ≤ 0.7). This is a valuable result since it helps makes the case to further compare solutions using periodic feedback loops with the proposed method.

    The authors implement their algorithm using a vector packet processing (VPP) plugin, taking advantage of its vectorization and kernel bypass capabilities. They also implement their version of Maglev using a VPP plugin, which surprisingly achieves higher throughput than the actual implementation itself.

    The paper details a marginal central processing unit (CPU) overhead of eight percent due to overhead incurred by the insertion of SR function headers. However, it does not compare CPU overhead as extensively as other parameters like resiliency and response time.

    The paper is well researched and structured. However, I found a few minor points to consider:

    • Algorithms 1 and 2 are not significantly new/novel, although their applicability is elegant. Readers are reminded of similar approaches with other transmission control protocol (TCP) windowing schemes.
    • Reliability seems to be a concern because of server chaining. The related discussion on pR% suggests that reliability is a concern for critical failures. For noncritical failures, the authors argue and prove that reliability is improved over single-choice load balancers.
    • In section 5, the authors could have reiterated the symbols used to make it a lot more readable.
    • Figure 11(d) should have included SR4 in its comparison of SC and SR8. The same can be said about figure 11(f).

    Overall, the paper makes a good case for using segment routing for load balancing to multiple application instances. It advocates the use of a consistent hashing mechanism for load balancing that compares favorably to Maglev in some respects. 6LB rests on an analytical basis discussed and cited in earlier published results [2,3,4].

  • Reviewer:  Shyamkumar Iyer Review #: CR146212 (1811-0568)
    1) Eisenbud, D. E.; Yi, C.; Contavalli, C.; Smith, C.; Kononov, R.; Mann-Hielscher, E.; Cilingiroglu, A.; Cheyney, B.; Shang, W.; and Hosein, J. D. Maglev: a fast and reliable software network load balancer. In Proc. of the 13th USENIX Symposium on Networked Systems Design and Implementation USENIX, 2016, 523–535.
    2) Mitzenmacher, M. D. The power of two choices in randomized loadbalancing. PhD dissertation, University of California, Berkeley, CA, USA, 1996.
    3) Jain, R.; Chiu, D.; and Hawe, W. A quantitative measure of fairness and discrimination for resource allocation in shared computer system. Technical Report, Digital Equipment Corporation, DEC-TR-301, 1984.
    4) Newman, D. J. The double dixie cup problem. American Mathematical Monthly 67, 1(1960), 58–61.
    Bookmark and Share
     
    Network Architecture And Design (C.2.1 )
     
     
    Network Communications (C.2.1 ... )
     
    Would you recommend this review?
    yes
    no
    Other reviews under "Network Architecture And Design": Date
    Designing data networks
    Ellis R., Prentice-Hall, Inc., Upper Saddle River, NJ, 1986. Type: Book (9789780132018647)
    Apr 1 1986
    Internetworking
    Pouzin L., Prentice-Hall, Inc., Upper Saddle River, NJ, 1986. Type: Book (9789780131650503)
    Feb 1 1987
    Broadband network technology: an overview for the data and telecommunications industries
    Cooper E., Prentice-Hall, Inc., Upper Saddle River, NJ, 1986. Type: Book (9789780130833792)
    Oct 1 1987
    more...

    E-Mail This Printer-Friendly
    Send Your Comments
    Contact Us
    Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
    Terms of Use
    | Privacy Policy