Elsevier

Theoretical Computer Science

Volume 836, 6 October 2020, Pages 76-93
Theoretical Computer Science

Mixed fault tolerance in server assignment: Combining reinforcement and backup

https://doi.org/10.1016/j.tcs.2020.06.033Get rights and content

Abstract

We study the mixed approach to fault tolerance in the general context of server assignment in networks. The approach is based on mixing two different existing strategies, namely, reinforcement and backup. The former strategy protects clients by reinforcing the servers assigned to them and making them fault-resistant, possibly at a high cost, while the latter protects clients by assigning to them alternate low price backup servers that can replace their primary servers in case those fail. Applying the mixed approach to fault tolerance gives rise to new fault tolerant variations of known server assignment problems. We introduce several NP-hard problems of this type, including the mixed fault-tolerant dominating set problem, the mixed fault-tolerant centers problem, and the mixed fault-tolerant facility location problem, and present polynomial time approximation algorithms for them, demonstrating the viability of the mixed strategy for server assignment problems.

Introduction

An important aspect of network design concerns coping with potential failures, such as link disconnections or vertex crashes. Many different approaches were proposed in the literature for avoiding or overcoming failures. A natural approach that's been applied in numerous settings relies on introducing redundancy to the system, by employing more resources than needed, as backup. An alternative approach is to reinforce some of the network components, possibly at a high cost, so as to prevent their failure, or at least lower their failure probability.

The current paper deals with a typical setting of a computer network with clients and failure-prone servers. The goal is to cope with situations where up to f servers might crash simultaneously, thus depriving certain clients of nearby service. Previous studies of such problems (cf. [12], [21]) employed redundancy-based fault tolerance, relying on selecting sufficiently many backup servers. Note, however, that a backup-reinforcement tradeoff occurs naturally in this setting, as one can cope with potential server failures either by buying some extra servers as backup, or alternatively, by using resilient servers that are less likely to fail but are more expensive. Depending on the relative prices and the network topology, intermediate mixed solutions may turn out to be desirable.

To illustrate this approach, we consider a number of NP-hard network design problems involving clients and servers, and introduce new mixed fault-tolerant versions of these problems, which employ a combination of both redundancy and reinforcement. These new versions are proper extensions of the original problems, so they too are NP-hard. We next describe these problems on a high level; precise definitions are given in the respective technical sections.

As a “warm-up”, we first look at an easy but illustrative example, namely, the minimum dominating set problem, defined as follows. Given an n-vertex graph G, it is required to find a smallest possible set of vertices D such that each vertex in G is either in D or has a neighbor in D. Intuitively, thinking of the vertices of D as locations where we want to place certain services, the goal is to ensure that every vertex in G has nearby service, at most one hop away from it. It is thus one of the simplest examples of a server assignment problem. The minimum dominating set problem was one of the first problems shown to be NP-hard [5]. It is also known to have a logn+1 approximation algorithm [11], [22].

A redundancy-based fault-tolerant version of this problem, named the minimum f-fault-tolerant dominating set problem, aims to cope with the failure of up to f vertices, which might leave certain vertices without a dominating neighbor in D, by taking the set D to be appropriately larger. The problem is defined as follows. Given a graph G and an integer f, it is required to find a smallest possible set of vertices D such that each vertex is either in D or has f+1 neighbors in D. Intuitively, the redundancy introduced into the solution ensures that even if f vertices of D have failed, each surviving vertex will still have a functioning neighbor in D. This problem can be approximated in a similar manner to the regular dominating set problem, which does not involve failures. The resulting approximation ratio is log(n(f+1))+1.

In order to study mixed fault-tolerant solutions, based on both backup and reinforcement, we define the minimum cost f-mixed fault-tolerant dominating set pair problem as follows. Intuitively, each client vertex can be protected in one of three ways: either it has a reinforced neighbor that cannot fail, or it is reinforced itself, or it has f+1 normal neighbors that are chosen as servers. Given a graph G and prices p for a normal server and p˜ for a reinforced server, it is required to find a cheapest possible pair of sets of vertices, a set D of normal servers and a set D˜ of reinforced servers, where each vertex in D costs p and each vertex in D˜ costs p˜, such that each vertex in G either belongs to one of the sets, or has f+1 neighbors in D or one neighbor in D˜. The vertices in D˜ are reinforced and can't fail, so the clients connected to a vertex in D˜ are ensured to have a functioning neighbor in D˜, and the clients connected to D are protected by backup servers as in the previous version.

Observe that a mixed solution for a given instance of the problem may in some settings be cheaper than a pure solution relying solely on redundancy or reinforcement. To illustrate this point, let us consider the example graph of Figure (a), where we assume that at most one failure might occur (i.e., f=1). Figure (b) depicts an optimal solution of a fault tolerant dominating set using only backup servers (marked by dotted green circles) (for interpretation of the colors in the figure(s), the reader is referred to the web version of this article), i.e., where the set of reinforced servers is D˜=. Figure (c) depicts an optimal solution of a fault tolerant dominating set using only reinforced servers (marked by solid red squares), i.e., where the set of normal servers is D=. Figure (d) depicts the optimal mixed solution. The cost of this mixed solution is cheaper than that of either of the two pure solutions when p<p˜<2.5p, since under this condition, both p+2p˜<6p and p+2p˜<3p˜.

In Section 2 we extend the natural polynomial time log(n(f+1))+1 approximation greedy algorithm for the minimum f-FT dominating set problem into a log(n(f+1))+1 approximation greedy algorithm for the minimum cost f-MFT dominating set pair problem.

We next study fault-tolerant versions of the k-centers problem, defined as follows. Given a weighted graph G, it is required to find a set D of k vertices such that the vertex that is the farthest away from D is as close as possible. Gonzalez presented a polynomial time 2-approximation greedy algorithm for the k-centers problem [6]. Hochbaum and Shmoys also gave a polynomial time 2-approximation algorithm for the problem, based on finding maximal independent sets in the power graphs of suitable subgraphs of the given graph, and proved that this is the best approximation possible in polynomial time assuming NPP [9].

Two redundancy-based fault-tolerant versions of the problem were studied in the past. The first, named the f-neighbor k-centers problem, aims to cope with situations where up to f vertices in D might crash simultaneously. Given a weighted graph G and a set D of k vertices, each client v will always use the nearest available server in D. If the f closest servers to v have crashed, then v is forced to turn to the next, i.e., (f+1)st, closest server. Let δf(v,D) denote the distance from v to that server. The client vˆ most affected by the failures is the one with the largest distance δf(vˆ,D). The problem is therefore to find the set D of k vertices that minimizes this value, i.e., such that the vertex vˆ that is not in D and is the farthest away from the closest f vertices in D is as close as possible. The second version of the problem, named the f-all-neighbor k-centers problem, is defined similarly except that the vertices in D itself are also considered as clients, and need to be serviced even when the server located in them crashes. In other words, we want the vertices in D whose server has failed to also have a close vertex in D that did not fail.

Based on [9], Khuller, Pless, and Sussmann gave a polynomial time 2-approximation algorithm for the f-neighbor k-centers problem, which is the best possible assuming NPP, since the problem is an extension of the basic k-centers problem. They also gave a polynomial time 3-approximation algorithm for the f-all-neighbor k-centers problem. Moreover, this algorithm guarantees 2-approximation for f3 [12].

We introduce a version of the fault-tolerant k-centers problem based on mixing backup and reinforcement, called the f-MFT centers problem, which is defined as follows. Given a weighted graph G, prices p and p˜ for normal and reinforced servers respectively, and a budget B, it is required to find a pair of vertex sets D and D˜ such that the vertex that is not in DD˜ and is the farthest away from the closest f+1 vertices in D and the closest vertex in D˜, is as close as possible. Here, the vertices selected to D are also clients that require service.

In Section 3 we extend the algorithm of [12] into a polynomial time 3-approximation algorithm for the f-MFT centers problem. A second version of mixed fault-tolerant k-centers problem, based on extending the f-neighbor k-centers problem mentioned above to the mixed model, is studied in [15], [16], where it is given a polynomial time 8-approximation algorithm.

The last and most elaborate problem we study is a version of the uncapacitated facility location (UFL) problem, defined as follows. We are given a weighted graph G, where the weights represent distances and obey the triangle inequality, and an opening price for each vertex. It is required to find a set of vertices D and assign them to the vertices in the graph such that each vertex in G is assigned to at least one vertex in D, and the total cost, composed of the sum of distances from each vertex to the vertices it's assigned to in D plus the opening prices of each vertex in D, is as small as possible. In this version, when we place certain services at the vertices of D, every opened service has a setup price, and in addition, it is necessary to pay for the service given by a service location to each client node using it. The price of providing service to a client is proportional to the distance between the client and the service. The goal is to ensure minimum total cost. (For comparison, the main differences w.r.t. the k-centers problem are that there, the opening cost of each server is 1, and the opening costs appear in the problem as a constraint rather than as part of the target function.)

The uncapacitated facility location (UFL) problem was widely studied (cf. [4]). For the metric version considered here, there were many approximation algorithms presented in the literature, starting with an algorithm with approximation ratio 3.16 [19], subsequently improved to 2.41, 1.74, 1.73, 1.61, 1.58, 1.52 in [7], [2], [1], [10], [20], [14], respectively, using a variety of techniques, such as clustering and filtering methods, the greedy algorithm, randomized rounding, the primal-dual method, and more. The best approximation ratio known to date is 1.488 [13], which is rather close to the best known lower bound, due to Guha and Khuller, who proved that there is no approximation algorithm with performance ratio better than 1.463 unless NPDTIME(nloglogn) [7].

The redundancy-based fault-tolerant version of the fault-tolerant facility location (FT-FL) problem, studied in the past, again aims to cope with crashes by providing clients with nearby backup servers. The problem is defined as follows. We are given a weighted graph G, an opening price for each vertex, and an individual “backup demand” ri for each vertex i, such that i must be protected against the possible failure of up to ri1 of its servers. It is thus required to find a set of vertices D and assign them to the vertices in G such that each client vertex i in G is assigned to at least ri servers in D, and the total cost, composed of the sum of distances from all the clients to their servers in D plus the opening prices of all the vertices in D, is as small as possible. Note that in this version of the problem, a client needs to pay for all ri servers it is assigned to. In [21], Swamy and Shmoys gave a 2.076-approximation polynomial time algorithm for the fault-tolerant facility location (FT-FL) problem. They also gave a simpler 4-approximation algorithm for the problem.

To study mixed fault-tolerant solutions for this problem, we define the mixed fault-tolerant facility location (MFT-FL) problem as follows. Given a weighted graph G, an opening price for each vertex, and a backup demand ri for each vertex i, it is required to find a pair of vertex sets, a reinforcement set D˜ and a backup set D, and assign them to the vertices in the graph such that each vertex is assigned either to at least ri vertices in D or to at least one vertex in D˜, and the total cost, composed of the sum of distances from each client to the servers it is assigned to in D or D˜ plus the opening prices of all the vertices in D and D˜, is as small as possible.

In Section 4 we extend the 4-approximation algorithm of [21] into a (rather involved) polynomial time (3+max{3,2r})-approximation algorithm for the mixed fault tolerant facility location (MFT-FL) problem, where r=max{ri} is the maximum demand for all the vertices.

Section snippets

Mixed fault-tolerant dominating sets

In this section we illustrate the mixed approach on the minimum dominating set problem.

The basic minimum dominating set problem  Consider an n-vertex graph G=(V,E). A vertex set DV is a dominating set in G if every vertex vD has a neighbor in D. The basic minimum dominating set problem is to find a minimum size dominating set for a given graph G.

This problem is NP-hard [5]. Moreover, observe that this problem is a special case of minimum set cover, which has a polynomial time logn

Mixed fault-tolerant centers

In this section we consider the k-centers problem and its mixed fault-tolerant variants.

Mixed fault-tolerant facility location

This section presents an approximation algorithm for the mixed fault-tolerant facility location (MFT-FL) problem, which uses linear programming. Recall that given a matrix An×m and vectors c of length m and b of length n, a linear program (LP) is the problem of finding a vector x of length m that minimizes cx, subject to the constraints Axb, x0. Its dual (DP) is the problem of finding a vector y of length n that maximizes by, subject to the constraints ATyc, y0. Recall (cf. [3]) that if the

Discussion

Our main contribution is in demonstrating that redundancy-based fault-tolerance can be augmented into mixed fault-tolerance in the context of server assignment problems in networks. In particular, our concrete results involve extending known approximation algorithms for the redundancy-based fault-tolerant versions of the problems discussed above into approximation algorithms for the corresponding mixed fault-tolerant versions. Each of these algorithms is based on a different approach: a greedy

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

References (22)

  • D.S. Hochbaum et al.

    A best possible heuristic for the k-center problem

    Math. Oper. Res.

    (1985)
  • Cited by (0)

    View full text