scispace - formally typeset
Search or ask a question

Showing papers by "Seth Gilbert published in 2015"


Posted Content
TL;DR: A new blockchain Byzantine consensus protocol SCP where the throughput scales nearly linearly with the computation: the more computing power available, the more blocks selected per unit time, is designed.
Abstract: In this paper, we design a new blockchain Byzantine consensus protocol SCP where the throughput scales nearly linearly with the computation: the more computing power available, the more blocks selected per unit time. SCP is also efficient that the number of messages it requires is nearly linear in the network size. The computational scalability property offers the flexibility to tune bandwidth consumption by adjusting computational parameters (e.g., proof-of-work difficulty). The key ideas lie in securely establishing identities for network participants, randomly placing them in several committees and running a classical consensus protocol within each committee to propose blocks in parallel. We further design a mechanism to allow reaching consensus on blocks without broadcasting actual block data, while still enabling efficient block verification. We prove that our protocol is secure, efficient and applicable to several case studies. We conduct scalability experiments on Amazon EC2 with upto 80 cores, and confirm that SCP matches its theoretical scaling properties.

88 citations


Journal ArticleDOI
TL;DR: This work considers the problem of detecting a cycle in a directed graph that grows by arc insertions and the related problems of maintaining a topological order and the strong components of such a graph, and gives two algorithms, one suited to sparse graphs, the other to dense graphs.
Abstract: We consider the problem of detecting a cycle in a directed graph that grows by arc insertions and the related problems of maintaining a topological order and the strong components of such a graph. For these problems, we give two algorithms, one suited to sparse graphs, the other to dense graphs. The former takes O(min lm1/2, n2/3rm) time to insert m arcs into an n-vertex graph; the latter takes O(n2log n) time. Our sparse algorithm is substantially simpler than a previous O(m3/2)-time algorithm; it is also faster on graphs of sufficient density. The time bound of our dense algorithm beats the previously best time bound of O(n5/2) for dense graphs. Our algorithms rely for their efficiency on vertex numberings weakly consistent with topological order: we allow ties. Bounds on the size of the numbers give bounds on running time.

64 citations


Book ChapterDOI
07 Oct 2015
TL;DR: A key simplicity threshold is identified beyond which useful distributed computation is possible in the beeping model by proving that once you have enough states to solve leader election with a given error bound, you have within constant factors enough statesto simulate correctly, with this sameerror bound, a logspace TM with a constant number of unary input tapes.
Abstract: We study the quantity of computational resources state machine states and/or probabilistic transition precision needed to solve specific problems in a single hop network where nodes communicate using only beeps. We begin by focusing on randomized leader election. We prove a lower bound on the states required to solve this problem with a given error bound, probability precision, and when relevant network size lower bound. We then show the bound tight with a matching upper bound. Noting that our optimal upper bound is slow, we describe two faster algorithms that trade some state optimality to gain efficiency. We then turn our attention to more general classes of problems by proving that once you have enough states to solve leader election with a given error bound, you have within constant factors enough states to simulate correctly, with this same error bound, a logspace TM with a constant number of unary input tapes: allowing you to solve a large and expressive set of problems. These results identify a key simplicity threshold beyond which useful distributed computation is possible in the beeping model.

33 citations


Journal ArticleDOI
TL;DR: In this article, the authors describe an analogous technique called resource competitiveness, tailored for distributed systems, which provides results pertaining to secure, fault-tolerant, and efficient distributed computation.
Abstract: The point of adversarial analysis is to model the worst-case performance of an algorithm. Unfortunately, this analysis may not always reect performance in practice because the adversarial assumption can be overly pessimistic. In such cases, several techniques have been developed to provide a more refined understanding of how an algorithm performs e.g., competitive analysis, parameterized analysis, and the theory of approximation algorithms.Here, we describe an analogous technique called resource competitiveness, tailored for distributed systems. Often there is an operational cost for adversarial behavior arising from bandwidth usage, computational power, energy limitations, etc. Modeling this cost provides some notion of how much disruption the adversary can inict on the system. In parameterizing by this cost, we can design an algorithm with the following guarantee: if the adversary pays T, then the additional cost of the algorithm is some function of T.Resource competitiveness yields results pertaining to secure, fault tolerant, and efficient distributed computation. We summarize these results and highlight future challenges where we expect this algorithmic tool to provide new insights.

31 citations


Proceedings ArticleDOI
01 Dec 2015
TL;DR: QProbe is presented, a tool that takes advantage of the proportional fair (PF) scheduler employed in cellular networks to determine whether queuing is happening at the cellular link and detects the bottleneck link location with greater than 85% accuracy for both 3G and LTE clients in a measurement study.
Abstract: Mobile communication is often frustratingly slow. When a user encounters poor performance, and perhaps even "confirms" the same by running a speed test, the tendency is to ascribe blame to the user's last-mile provider. However, as we argue in this paper, a more nuanced approach is needed to identify the location of the bottleneck responsible for the poor performance. Specifically, we focus on the question of whether the bottleneck lies in the cellular last hop (3G or LTE link) or elsewhere in the WAN path.We present QProbe, a tool that takes advantage of the proportional fair (PF) scheduler employed in cellular networks to determine whether queuing is happening at the cellular link. After validating QProbe through simulations and controlled experiments, we present our findings from a measurement study conducted over a 2 month period involving over 600 real-world users across 51 operator networks in 33 countries. We find that, for example, the cellular last-hop link is the bottleneck in 68.9% and 25.7% of the total bottleneck cases for 3G and LTE clients, respectively, suggesting that there is a significant fraction of cases where the poor performance experienced by the user is due to the WAN and could potentially be routed around. Moreover, we show that QProbe detects the bottleneck link location with greater than 85% accuracy for both 3G and LTE clients in our measurement study.

21 citations


Journal ArticleDOI
08 Sep 2015
TL;DR: SybilCast is a protocol for multichannel wireless networks that limits the number of fake identities and, in doing so, ensures that each honest user gets at least a constant fraction of his or her fair share of the bandwidth.
Abstract: Consider a scenario where many wireless users are attempting to download data from a single base station. While most of the users are honest, some users may be malicious and attempt to obtain more than their fair share of the bandwidth. One possible strategy for attacking the system is to simulate multiple fake identities, each of which is given its own equal share of the bandwidth. Such an attack is often referred to as a sybil attack. To counter such behavior, we propose SybilCast, a protocol for multichannel wireless networks that limits the number of fake identities and, in doing so, ensures that each honest user gets at least a constant fraction of his or her fair share of the bandwidth. As a result, each honest user can complete his or her data download in asymptotically optimal time. A key aspect of this protocol is balancing the rate at which new identities are admitted and the maximum number of fake identities that can coexist while keeping the overhead low. Besides sybil attacks, our protocol can also tolerate spoofing and jamming.

20 citations


Posted Content
TL;DR: In this article, the authors study the quantity of computational resources (state machine states and/or probabilistic transition precision) needed to solve specific problems in a single hop network where nodes communicate using only beeps.
Abstract: In this paper, we study the quantity of computational resources (state machine states and/or probabilistic transition precision) needed to solve specific problems in a single hop network where nodes communicate using only beeps. We begin by focusing on randomized leader election. We prove a lower bound on the states required to solve this problem with a given error bound, probability precision, and (when relevant) network size lower bound. We then show the bound tight with a matching upper bound. Noting that our optimal upper bound is slow, we describe two faster algorithms that trade some state optimality to gain efficiency. We then turn our attention to more general classes of problems by proving that once you have enough states to solve leader election with a given error bound, you have (within constant factors) enough states to simulate correctly, with this same error bound, a logspace TM with a constant number of unary input tapes: allowing you to solve a large and expressive set of problems. These results identify a key simplicity threshold beyond which useful distributed computation is possible in the beeping model.

19 citations


Book ChapterDOI
07 Oct 2015
TL;DR: This work generalizes the technique of smoothed analysis to distributed algorithms in dynamic networks and proves that these bounds provide a spectrum of robustness when subjected to smoothing--some are extremely fragile random walks, some are moderately fragile / robust flooding, and some are extremely robust aggregation.
Abstract: We generalize the technique of smoothed analysis to distributed algorithms in dynamic networks. Whereas standard smoothed analysis studies the impact of small random perturbations of input values on algorithm performance metrics, dynamic graph smoothed analysis studies the impact of random perturbations of the underlying changing network graph topologies. Similar to the original application of smoothed analysis, our goal is to study whether known strong lower bounds in dynamic network models are robust or fragile: do they withstand small random perturbations, or do such deviations push the graphs far enough from a precise pathological instance to enable much better performance? Fragile lower bounds are likely not relevant for real-world deployment, while robust lower bounds represent a true difficulty caused by dynamic behavior. We apply this technique to three standard dynamic network problems with known strong worst-case lower bounds: random walks, flooding, and aggregation. We prove that these bounds provide a spectrum of robustness when subjected to smoothing--some are extremely fragile random walks, some are moderately fragile / robust flooding, and some are extremely robust aggregation.

14 citations


Journal ArticleDOI
TL;DR: In this paper, the authors focus on the classic problem of scheduling jobs on a multiprocessor system, where each unit-size job has a time window in which it can be executed.
Abstract: In traditional on-line problems, such as scheduling, requests arrive over time, demanding available resources. As each request arrives, some resources may have to be irrevocably committed to servicing that request. In many situations, however, it may be possible or even necessary to reallocate previously allocated resources in order to satisfy a new request. This reallocation has a cost. This paper shows how to service the requests while minimizing the reallocation cost. We focus on the classic problem of scheduling jobs on a multiprocessor system. Each unit-size job has a time window in which it can be executed. Jobs are dynamically added and removed from the system. We provide an algorithm that maintains a valid schedule, as long as a schedule with sufficient slack exists. The algorithm reschedules only a total number of $$O(\min \{\log ^*{n}, \log ^*{\varDelta }\})$$O(min{log?n,log?Δ}) jobs for each job that is inserted or deleted from the system, where $$n$$n is the number of active jobs and $$\varDelta $$Δ is the size of the largest window.

11 citations


Proceedings ArticleDOI
21 Jul 2015
TL;DR: Lower bounds that show CogCast is near optimal (in particular, within a lg(n) factor) in many cases are introduced, and new techniques of potential standalone interest are introduced for those concerned with proving fundamental limits in the cognitive radio network setting.
Abstract: Devices in a cognitive radio network use advanced radios to identify pockets of usable spectrum in a crowded band and make them available to higher layers of the network stack. A core challenge in designing algorithms for this model is that different devices might have different views of the network. In this paper, we study two problems for this setting that are well-motivated but not yet well-understood: local broadcast and data aggregation. We consider a single hop cognitive radio network with n nodes that each has access to c channels. We assume each pair of nodes overlaps on at least 1

3 citations


Proceedings ArticleDOI
13 Jun 2015
TL;DR: A reallocating scheduler for the problem of assigning jobs to p (identical) servers is given so as to minimize the sum of completion times to within a constant factor of optimal, with an amortized reallocation cost for a length-w job of O(f(w)log3logΔ), where Delta is the length of the longest job and f() is the reallocated-cost function.
Abstract: In a reallocating-scheduler problem, jobs may be inserted and deleted from the system over time. Unlike in traditional online scheduling problems, where a job's placement is immutable, in reallocation problems the schedule may be adjusted, but at some cost. The goal is to maintain an approximately optimal schedule while also minimizing the reallocation cost for changing the schedule.This paper gives a reallocating scheduler for the problem of assigning jobs to p (identical) servers so as to minimize the sum of completion times to within a constant factor of optimal, with an amortized reallocation cost for a length-w job of O(f(w)log3logΔ), where Delta is the length of the longest job and f() is the reallocation-cost function. Our algorithm is cost oblivious, meaning that the algorithm is not parameterized by f(), yet it achieves this bound for any subadditive f(). Whenever f() is strongly subadditive, the reallocation cost becomes O(f(w)).To realize a reallocating scheduler with low reallocation cost, we design a k-cursor sparse table. This data structure stores a dynamic set of elements in an array, with insertions and deletions restricted to k cursors in the structure. The data structure achieves an amortized cost of O(log3k) for insertions and deletions, while also guaranteeing that any prefix of the array has constant density. Observe that this bound does not depend on n, the number of elements, and hence this data structure, restricted to k

Posted Content
TL;DR: In this article, the authors consider an online collaborative recommendation system and measure users' privacy in terms of the standard differential privacy and find that there is actually little trade-off between recommendation quality and privacy for any non-trivial algorithm.
Abstract: In collaborative recommendation systems, privacy may be compromised, as users' opinions are used to generate recommendations for others. In this paper, we consider an online collaborative recommendation system, and we measure users' privacy in terms of the standard differential privacy. We give the first quantitative analysis of the trade-offs between recommendation quality and users' privacy in such a system by showing a lower bound on the best achievable privacy for any non-trivial algorithm, and proposing a near-optimal algorithm. From our results, we find that there is actually little trade-off between recommendation quality and privacy for any non-trivial algorithm. Our results also identify the key parameters that determine the best achievable privacy.

Posted Content
TL;DR: In this paper, the authors generalize the smoothed analysis to distributed algorithms in dynamic network models, and apply this technique to three standard dynamic network problems with known strong worst-case lower bounds: random walks, flooding and aggregation.
Abstract: We generalize the technique of smoothed analysis to distributed algorithms in dynamic network models. Whereas standard smoothed analysis studies the impact of small random perturbations of input values on algorithm performance metrics, dynamic graph smoothed analysis studies the impact of random perturbations of the underlying changing network graph topologies. Similar to the original application of smoothed analysis, our goal is to study whether known strong lower bounds in dynamic network models are robust or fragile: do they withstand small (random) perturbations, or do such deviations push the graphs far enough from a precise pathological instance to enable much better performance? Fragile lower bounds are likely not relevant for real-world deployment, while robust lower bounds represent a true difficulty caused by dynamic behavior. We apply this technique to three standard dynamic network problems with known strong worst-case lower bounds: random walks, flooding, and aggregation. We prove that these bounds provide a spectrum of robustness when subjected to smoothing---some are extremely fragile (random walks), some are moderately fragile / robust (flooding), and some are extremely robust (aggregation).

Book ChapterDOI
25 Nov 2015
TL;DR: This paper gives the first quantitative analysis of the trade-offs between recommendation quality and users’ privacy in such a system by showing a lower bound on the best achievable privacy for any algorithm with non-trivial recommendation quality, and proposing a near-optimal algorithm.
Abstract: In collaborative recommendation systems, privacy may be compromised, as users’ opinions are used to generate recommendations for others. In this paper, we consider an online collaborative recommendation system, and we measure users’ privacy in terms of the standard notion of differential privacy. We give the first quantitative analysis of the trade-offs between recommendation quality and users’ privacy in such a system by showing a lower bound on the best achievable privacy for any algorithm with non-trivial recommendation quality, and proposing a near-optimal algorithm. From our results, we find that there is actually little trade-off between recommendation quality and privacy, as long as non-trivial recommendation quality is to be guaranteed. Our results also identify the key parameters that determine the best achievable privacy.

Posted Content
TL;DR: This paper looks at the problem of scheduling tasks on a single-processor system, where each task requires unit time and must be scheduled within a certain time window, and each task can be added to or removed from the system at any time.
Abstract: In this paper we look at the problem of scheduling tasks on a single-processor system, where each task requires unit time and must be scheduled within a certain time window, and each task can be added to or removed from the system at any time. On each operation, the system is allowed to reschedule any tasks, but the goal is to minimize the number of rescheduled tasks. Our main result is an allocator that maintains a valid schedule for all tasks in the system if their time windows have constant size and reschedules O(1/{\epsilon}*log(1/{\epsilon})) tasks on each insertion as {\epsilon}->0, where {\epsilon} is a certain measure of the schedule flexibility of the system. We also show that it is optimal for any allocator that works on arbitrary instances. We also briefly mention a few variants of the problem, such as if the tasks have time windows of difference sizes, for which we have an allocator that we conjecture reschedules only 1 task on each insertion if the schedule flexibility remains above a certain threshold.