783,386 research outputs found
Gossip in a Smartphone Peer-to-Peer Network
In this paper, we study the fundamental problem of gossip in the mobile
telephone model: a recently introduced variation of the classical telephone
model modified to better describe the local peer-to-peer communication services
implemented in many popular smartphone operating systems. In more detail, the
mobile telephone model differs from the classical telephone model in three
ways: (1) each device can participate in at most one connection per round; (2)
the network topology can undergo a parameterized rate of change; and (3)
devices can advertise a parameterized number of bits about their state to their
neighbors in each round before connection attempts are initiated. We begin by
describing and analyzing new randomized gossip algorithms in this model under
the harsh assumption of a network topology that can change completely in every
round. We prove a significant time complexity gap between the case where nodes
can advertise bits to their neighbors in each round, and the case where
nodes can advertise bit. For the latter assumption, we present two
solutions: the first depends on a shared randomness source, while the second
eliminates this assumption using a pseudorandomness generator we prove to exist
with a novel generalization of a classical result from the study of two-party
communication complexity. We then turn our attention to the easier case where
the topology graph is stable, and describe and analyze a new gossip algorithm
that provides a substantial performance improvement for many parameters. We
conclude by studying a relaxed version of gossip in which it is only necessary
for nodes to each learn a specified fraction of the messages in the system.Comment: Extended Abstract to Appear in the Proceedings of the ACM Conference
on the Principles of Distributed Computing (PODC 2017
The state of peer-to-peer network simulators
Networking research often relies on simulation in order to test and evaluate new ideas. An important requirement of this process is that results must be reproducible so that other researchers can replicate, validate and extend existing work. We look at the landscape of simulators for research in peer-to-peer (P2P) networks by conducting a survey of a combined total of over 280 papers from before and after 2007 (the year of the last survey in this area), and comment on the large quantity of research using bespoke, closed-source simulators. We propose a set of criteria that P2P simulators should meet, and poll the P2P research community for their agreement. We aim to drive the community towards performing their experiments on simulators that allow for others to validate their results
DOH: A Content Delivery Peer-to-Peer Network
Many SMEs and non-pro¯t organizations su®er when their Web
servers become unavailable due to °ash crowd e®ects when their web site
becomes popular. One of the solutions to the °ash-crowd problem is to place
the web site on a scalable CDN (Content Delivery Network) that replicates
the content and distributes the load in order to improve its response time.
In this paper, we present our approach to building a scalable Web Hosting
environment as a CDN on top of a structured peer-to-peer system of collaborative
web-servers integrated to share the load and to improve the overall
system performance, scalability, availability and robustness. Unlike clusterbased
solutions, it can run on heterogeneous hardware, over geographically
dispersed areas. To validate and evaluate our approach, we have developed a
system prototype called DOH (DKS Organized Hosting) that is a CDN implemented
on top of the DKS (Distributed K-nary Search) structured P2P
system with DHT (Distributed Hash table) functionality [9]. The prototype
is implemented in Java, using the DKS middleware, the Jetty web-server, and
a modi¯ed JavaFTP server. The proposed design of CDN has been evaluated
by simulation and by evaluation experiments on the prototype
Peer-to-Peer Communication Across Network Address Translators
Network Address Translation (NAT) causes well-known difficulties for
peer-to-peer (P2P) communication, since the peers involved may not be reachable
at any globally valid IP address. Several NAT traversal techniques are known,
but their documentation is slim, and data about their robustness or relative
merits is slimmer. This paper documents and analyzes one of the simplest but
most robust and practical NAT traversal techniques, commonly known as "hole
punching." Hole punching is moderately well-understood for UDP communication,
but we show how it can be reliably used to set up peer-to-peer TCP streams as
well. After gathering data on the reliability of this technique on a wide
variety of deployed NATs, we find that about 82% of the NATs tested support
hole punching for UDP, and about 64% support hole punching for TCP streams. As
NAT vendors become increasingly conscious of the needs of important P2P
applications such as Voice over IP and online gaming protocols, support for
hole punching is likely to increase in the future.Comment: 8 figures, 1 tabl
Low-resource eclipse attacks on Ethereum’s peer-to-peer network
We present eclipse attacks on Ethereum nodes that exploit the peer-to-peer network used for neighbor discovery. Our attacks can be launched using only two hosts, each with a single IP address. Our eclipse attacker monopolizes all of the victim’s incoming and outgoing connections, thus isolating the victim from the rest of its peers in the network. The attacker can then filter the victim’s view of the blockchain, or co-opt the victim’s computing power as part of more sophisticated attacks. We argue that these eclipse-attack vulnerabilities result from Ethereum’s adoption of the Kademlia peer-to-peer protocol, and present countermeasures that both harden the network against eclipse attacks and cause it to behave differently from the traditional Kademlia protocol. Several of our countermeasures have been incorporated in the Ethereum geth 1.8 client released on February 14, 2018.First author draf
Simulated self-organization of a peer to peer awareness network
A simulation process and tool used to test and evaluate the algorithms necessary to optimally arrange a peer-to-peer distributed awareness system for Software Engineering
- …