新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     >>计算机科学论坛<<     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论Semantic Web(语义Web,语义网或语义万维网, Web 3.0)及相关理论,如:Ontology(本体,本体论), OWL(Web Ontology Langauge,Web本体语言), Description Logic(DL, 描述逻辑),RDFa,Ontology Engineering等。
    [返回] 计算机科学论坛W3CHINA.ORG讨论区 - Web新技术讨论『 Semantic Web(语义Web)/描述逻辑/本体 』 → 这篇文章有中文翻译文本吗??? 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 2094 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 这篇文章有中文翻译文本吗??? 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     lziori 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:0
      积分:52
      门派:XML.ORG.CN
      注册:2007/4/19

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给lziori发送一个短消息 把lziori加入好友 查看lziori的个人资料 搜索lziori在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 引用回复这个贴子 回复这个贴子 查看lziori的博客楼主
    发贴心情 这篇文章有中文翻译文本吗???

    Supervised Peer-to-Peer Systems
    Kishore Kothapalli and Christian Scheideler∗
    Department of Computer Science
    Johns Hopkins University
    3400 N. Charles Street
    Baltimore, MD 21218, USA
    Email:{kishore,scheideler}@cs.jhu.edu
    Abstract
    In this paper we present a general methodology for designing
    supervised peer-to-peer systems. A supervised peerto-
    peer system is a system in which the overlay network
    is formed by a supervisor but in which all other activities
    can be performed on a peer-to-peer basis without involving
    the supervisor. It can therefore be seen as being between
    server-based systems and pure peer-to-peer systems.
    The supervisor only has to store a constant amount of information
    about the system at any time and only needs to
    send a small constant number of messages to integrate or remove
    a peer in a constant amount of time. Thus, with a minimum
    amount of involvement from the supervisor, peer-topeer
    systems can be maintained, for example, that can handle
    large distributed computing tasks as well as tasks such
    as file sharing and web crawling. Furthermore, our concept
    extends easily to multiple supervisors so that peers can
    join and leave the network massively in parallel. We also
    show how to extend the basic system to provide robustness
    guarantees under the presence of random faults and also
    adaptive adversarial join/leave attacks. Hence, with our approach,
    supervised peer-to-peer systems can share the benefits
    of server-based and pure peer-to-peer systems without
    inheriting their disadvantages.
    1. Introduction
    Peer-to-peer systems have recently attracted a signifi-
    cant amount of attention inside and outside of the research
    community. The advantage of peer-to-peer systems is that
    they can scale to millions of sites with low-cost hardware
    whereas the classical approach of using server-based systems
    does not scale well, unless powerful servers are provided.
    On the other hand, server-based systems can provide
    ∗ Supported by NSF grants CCR-0311121 and CCR-0311795.
    guarantees and are therefore preferable for critical applications
    that need a high level of reliability. The question is
    whether it is possible to marry the two approaches in order
    to share their benefits without sharing their disadvantages.
    We propose supervised peer-to-peer systems as a possible
    solution to this.
    A supervised peer-to-peer system is a system in which
    the overlay network is formed by a supervisor but in which
    all other activities can be performed on a peer-to-peer basis
    without involving the supervisor. That is, all peers that want
    to join (or leave) the network have to contact the supervisor,
    and the supervisor will then initiate their integration into (or
    removal from) the network. All other operations, however,
    may be executed without involving the supervisor. In order
    for a supervised network to be highly scalable, two central
    requirements have to be fulfilled:
    1. The supervisor needs to store at most a polylogarithmic
    amount of information about the system at any
    time (i.e. if there are n peers in the system, storing contact
    information about O(log2 n) of these peers would
    be fine, for example), and
    2. the supervisor needs at most a constant number ofmessages
    to include a new peer into or exclude an old peer
    from the network.
    The second condition makes sure that the work of the supervisor
    to include or exclude peers from the system is kept
    at a minimum. Still, one may certainly wonder whether supervised
    peer-to-peer systems are really as scalable as pure
    peer-to-peer systems on the one hand and as reliable as
    server-based systems on the other hand.
    1.1. Motivation
    First of all, remember that even pure peer-to-peer systems
    need some kind of a “rendezvous point”, such as a
    well-known host server [13] or well-known web address
    (like gnutellahosts.com), which allows new peers to join the
    system. The rendezvous point typically does not play any
    role in the overall topology of the network but just acts as
    Proceedings of the 8th International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN’05)
    1087-4089/05 $20.00 &copy; 2005 IEEE
    a bridge between new nodes and the existing network. This
    means that nodes have to self-organize to form an overlay
    network with good topological properties such as diameter,
    degree and expansion.
    We show that allowing the supervisor to oversee the
    topology of the overlay network, apart from working as
    the rendezvous point, tremendously simplifies the problem
    of maintaining the above mentioned topological properties
    of the overlay network. Hence, as long as the communication
    effort of a supervisor for including or excluding a peer
    is only a low constant, supervised designs should compete
    well with pure peer-to-peer systems.
    Our approach has many interesting applications in the
    area of grid computing [6, 16, 19], WebTV, and massive
    multi-player online gaming [9]. A supervisor may also
    serve, for example, as a reliable anchor for code execution
    rollback, which is important for failure recovery mechanisms
    such as those used in the Time Warp system [7].
    This would make supervised peer-to-peer systems particularly
    interesting for grid computing. Though supervised
    peer-to-peer systems are not as stable as server-based systems
    with powerful servers, their advantage is that because
    the supervisor only takes care of the topology but may not
    be involved at all in peer-to-peer activities, it is from a legal
    point of view a much safer design than the server-based
    design.
    1.2. Our contribution
    In Section 2, we show howto combine known techniques
    in the pure peer-to-peer world such as the hierarchical decomposition
    approach of CAN [14] and the continuousdiscrete
    approach [12] in a novel way to obtain a general
    framework for the design of supervised peer-to-peer systems
    that only requires the supervisor to store a constant
    amount of information about the system at any time and to
    only send and receive a low constant number of messages
    in order to integrate or remove a peer from the system. We
    demonstrate our approach by showing howto maintain a supervised
    hypercube network and a supervised de Bruijn network
    with it. Our scheme can also be extended to allow concurrent
    join/leave operations or allow multiple supervisors
    as outlined in Section 3. In Section 4 we look at robustness
    issues and discuss how our supervised design can be
    extended to handle random or adversarial faults.
    1.3. Related work
    Special cases of supervised peer-to-peer systems have already
    been formally investigated in [13, 16, 17], but to the
    best of our knowledge a general framework for supervised
    peer-to-peer systems has not been presented yet. In [13],
    the authors consider a special node called the host server
    that is contacted by all new peers that join the system. The
    overlay network maintained by the host server is close to
    a random-looking graph. As shown by the authors, under a
    stochastic model of join/leave requests the overlay network
    can, with high probability, guarantee connectivity, low diameter,
    and low degree. Alternative designs were later proposed
    in [16, 17]. [17] shows how to maintain supervised
    trees for guaranteed broadcasting and [16] shows how to
    maintain a supervised de Bruijn graph for grid computing.
    In this work, we propose a unified model that enables one
    to create a large class of supervised overlay networks.
    Most of the distributed systems are either server-based
    or peer-to-peer. For example, Napster is rather server-based
    because all peer requests are handled at a single location.
    Also systems like SETI@home [19], Folding@home [8],
    and distributed.net [6] are heavily server-oriented because
    they do not allow peer-to-peer interactions. Other systems
    such as the IBM OptimalGrid allow communication between
    peers but it still uses a star topology and therefore
    is still closer to being server-based than supervised.
    The line of research that is probably closest to our approach
    is the work on overlay networks in the area of
    application-layer multicasting. Among them are SpreadIt
    [5], NICE [1], Overcast [10], and PRM [2], to name a few.
    However, these systems only focus on specific topologies
    such as trees, and they do not seem to be generalizable to
    a universal approach for supervised systems. Other protocols
    for application-layer multicasting such as Scribe [4],
    Bayeux [23], I3 [20], Borg [22], SplitStream [3], and CANMulticast
    [15] are rather extensions of a pure peer-to-peer
    system.
    2. A general framework for supervised peerto-
    peer systems
    Our general framework for supervised peer-to-peer systems
    needs several ingredients, including a hierarchical
    decomposition technique [14], a continuous-discrete technique
    [12], and a recursive labeling technique. After presenting
    these techniques we show how to glue them together
    in an appropriate way so that we obtain a universal
    approach for supervised peer-to-peer systems. Afterwards,
    we give some examples that demonstrate how to apply this
    approach.
    2.1. The hierarchical decomposition technique
    Consider any space U = [0, 1)d for some d ≥ 1. The
    decomposition tree T (U) of U is an infinite binary tree in
    which the root represents U and for every node v representing
    the subcubeU_ in U, the children of v represent two subcubes
    U__ and U___, where U__ and U___ are the result of cutting
    U_ in the middle at the smallest dimension in which U_
    has a maximum side length. Let every edge to a left child
    in T (U) be labeled with 0 and every edge to a right child
    in T (U) be labeled with 1. Then the label of a node v, _v,
    is the sequence of all edge labels encountered when moving
    Proceedings of the 8th International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN’05)
    1087-4089/05 $20.00 &copy; 2005 IEEE
    along the unique path from the root of T (U) downwards to
    v.
    Our goal for the supervised peer-to-peer system will be
    to map the peers to nodes of T (U) so that
    • the subcubes of the (nodes assigned to the) peers are
    disjoint,
    • the union of the subcubes of the peers gives the entire
    set U, and
    • the peers are only distributed among nodes of two consecutive
    levels in T (U).
    Whereas CAN-based peer-to-peer systems usually satisfy
    the first two properties, they have problems with the third
    property. But as we will see, it will be easy for our supervised
    peer-to-peer approach to also maintain the third property.
    2.2. The continuous-discrete technique
    The basic idea underlying the continuous-discrete approach
    [12] is to define a continuous model of graphs and
    to apply this continuous model to the discrete setting of a fi-
    nite set of peers.
    Consider any d-dimensional space U = [0, 1)d, and suppose
    that we have a set F of functions fi : U → U.
    Then we define EF as the set of all pairs (x, y) ∈ U2
    with y = fi(x) for some i. Given any subset S ⊆ U, let
    Γ(S) = {y ∈ U \ S | ∃x ∈ S : (x, y) ∈ EF }. The expansion
    α of F is defined as α = minS⊆U, |S|≤|U|/2
    |Γ(S)|
    |S|
    where |S| denotes the volume of a set S. F is called mixing
    ifα > 0 and rapidly mixing if α is a constant. If F does
    not mix, then there are disconnected areas in U.
    Consider now any set of peers V , and let R(v) be the
    region in U that has been assigned to peer v. Let GF (V )
    be the graph with node set V that contains an edge (v,w)
    for every pair of nodes v and w for which there is an edge
    (x, y) ∈ EF with x ∈ R(v) and y ∈ R(w). It can be
    seen that if F is mixing and ∪vR(v) = U then GF (v) is
    connected. Moreover, the following theorem holds implying
    that the expansion in the continuous case can be preserved
    in the discrete case.
    Theorem 2.1 If F has an expansion of α and regions have
    been assigned to the peers so that all three demands stated
    in the hierarchical decomposition approach are satisfied,
    then GF (V ) has an expansion of Ω(α).
    2.3. The recursive labeling technique
    In the recursive labeling approach, the supervisor assigns
    a label to every peer that wants to join the system. The labels
    are represented as binary strings and are generated in the
    order: 0, 1, 01, 11, 001, 011, 101, 111, 0001, 0011, . . .. Formally,
    consider the mapping _ : IN0 → {0, 1}∗ with
    the property that for every x ∈ IN0 with binary representation
    (xd . . . x0)2 (where d is minimum possible),
    _(x) = (xd−1 . . . x0xd). Then _ generates the sequence
    of labels displayed above. In the following, it will also
    be helpful to view labels as real numbers in [0, 1). Let
    the function r : {0, 1}∗ → [0, 1) be defined so that
    for every label _ = (_1_2 . . . _d) ∈ {0, 1}∗, r(_) =
    _d
    i=1
    _i
    2i . Then the sequence of labels above translates into
    0, 1/2, 1/4, 3/4, 1/8, 3/8, 5/8, 7/8, 1/16, 3/16, . . ..
    When using the recursive approach, the supervisor aims to
    maintain the following invariant at any time:
    Invariant 2.2 The set of labels used by the peers is
    {_(0), _(1), . . . , _(n − 1)}, where n is the current number
    of peers in the system.
    This above invariant can be preserved when using the
    simple strategy of assigning the label _(n) to a new peer
    that wants to join the system and increasing n by 1. Similarly,
    when a peer w with label _ is leaving the system, the
    supervisor asks node with label _(n − 1) to take over the
    role and label of w and decrements n by 1.
    2.4. Putting all pieces together
    Now we are ready to put the pieces together.We assume
    that we have a single supervisor for maintaining the overlay
    network. In the following, the label assigned to some peer
    v will be denoted as _v. Given n peers with unique labels,
    we define the predecessor pred(v) of peer v as the peer w
    for which r(_w) is closest from below to r(_v), and we de-
    fine the successor succ(v) of peer v as the peer w for which
    r(_w) is closest fromabove to r(_v) (viewing [0, 1) as a ring
    in both cases). Given two peers v and w, we define their distance
    as δ(v,w) = min{(1 + r(_v) − r(_w)) mod 1, (1 +
    r(_w)−r(_v)) mod 1}. In order to maintain a doubly linked
    cycle among the peers, we simply have to maintain the following
    invariant:
    Invariant 2.3 Every peer v in the system is connected to
    pred(v) and succ(v).
    Now, suppose that the labels of the peers are generated
    via the recursive strategy above. Then we have the following
    properties:
    Lemma 2.4 Let n be the current number of peers in the
    system, and let ˉn = 2_log n_. Then for every peer v ∈ V ,
    |_v| ≤ _log n  and δ(v, pred(v)) ∈ {1/(2ˉn), 1/ˉn}.
    So the peers are approximately evenly distributed in
    [0, 1) and the number of bits for storing a label is as low
    as it can be without violating the uniqueness requirement.
    Now, recall the hierarchical decomposition approach.
    The supervisor will assign every peer p to the unique node
    v in T (U) at level log(1/δ(p, pred(p))) with _v being equal
    to _p (padded with 0’s to the right so that |_v| = |_p|).
    Proceedings of the 8th International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN’05)
    1087-4089/05 $20.00 &copy; 2005 IEEE
    As an example, if we have 4 peers currently in the system,
    then the mapping of peer labels to node labels is
    0 → 00, 1 → 10, 01 → 01, 11 → 11. With this strategy,
    it follows from Lemma 2.4 that all three demands formulated
    in the hierarchical decomposition approach are satisfied.
    Consider now any family F of functions acting on some
    space U = [0, 1)d and let C(p) be the subcube of the node
    in T (U) that p has been assigned to. Then the goal of the supervisor
    is to maintain the following invariant at any time.
    Invariant 2.5 For the current set V of peers in the system
    it holds that
    1. the set of labels used by the peers is
    {_(0), _(1), . . . , _(n − 1)}, where n = |V |,
    2. every peer v in the system is connected to pred(v) and
    succ(v), and
    3. there are bidirectional connections {v,w} for every
    pair of peers v and w for which there is an edge
    (x, y) ∈ EF with x ∈ C(v) and y ∈ C(w).
    2.5. Maintaining Invariant 2.5
    Next we describe the actions that the supervisor has to
    perform in order to maintain Invariant 2.5 during an isolated
    join or leave operation. For simplicity, we assume that
    all nodes are reliable and trustworthy and also that peers depart
    gracefully. We also assume that each message sent by
    the supervisor can contain up to a constant number of node
    addresses and labels. We start with the following important
    fact which can be easily shown.
    Fact 2.6 Whenever a new peer v enters the system, then
    pred(v) has all the connectivity information v needs to satisfy
    Invariant 2.5(3), and whenever an old peer w leaves
    the system, then it suffices that it transfers all of its connectivity
    information to pred(w) in order to maintain Invariant
    2.5(3).
    Thus, if the peers take care of the connections in Invariant
    2.5(3), the only part that the supervisor has to take care
    of is maintaining the cycle. For this we require the following
    invariant.
    Invariant 2.7 At any time, the supervisor stores the contact
    information of pred(v), v, succ(v), and succ(succ(v))
    where v is the peer with label _(n − 1).
    We now describe how to maintain the invariant during
    any join or leave operation. In the following, S denotes the
    supervisor.
    Join: If a new peer w joins, in order to satisfy Invariant 2.7,
    the following actions are performed.
    • S informs w that _(n) is its label, succ(v) is its predecessor,
    and succ(succ(v)) is its successor.
    • S informs succ(v) that w is its new successor.
    • S informs succ(succ(v)) that w is its new predecessor.
    • S asks succ(succ(v)) to send its successor information
    to the supervisor, and
    • S asks v which is now pred(w) to send the connectivity
    information according to F to node w.
    • S sets n = n + 1.
    Leave: If an old node w reports _w, pred(w) and succ(w)
    before it leaves, then the following actions can be performed
    in order to maintain Invariant 2.7.
    • S informs v (the node with label _(n − 1)) that _w
    is its new label, pred(w) is its new predecessor, and
    succ(w) is its new successor.
    • S informs pred(w) that its new successor is v and
    succ(w) that its new predecessor is v.
    • S informs pred(v) that succ(v) is its new successor
    and succ(v) that pred(v) is its new predecessor.
    • S asks pred(v) to send its predecessor information to
    the supervisor and to ask pred(pred(v)) to send its
    predecessor information to the supervisor, and
    • S sets n = n − 1.
    Thus, the supervisor only needs to handle a constant number
    of messages, at most 8, for each join/leave of a peer.
    2.6. Examples
    For a supervised hypercubic network, simply select F
    as the family of functions on [0, 1) with fi(x) = x +
    1/2i (mod 1) for every i ≥ 1. Using our framework, this
    gives an overlay network with degree O(log n), diameter
    O(log n), and expansionO(1/√log n), which is better than
    what pure hypercubic peer-to-peer systems like Chord [21]
    can achieve.
    For a supervised de Bruijn network, simply select F as
    the family of functions on [0, 1) with f0(x) = x/2 and
    f1(x) = (1 +x)/2. Using our framework, this gives an
    overlay network with degree O(1), diameter O(log n), and
    expansion O(1/ log n), which is also better than the previous
    pure de Bruijn peer-to-peer systems [11, 12].
    3. Concurrency
    In this section we extend our approach to concurrent join
    and leave operations and also provide a way to allow multiple
    supervisors.
    3.1. Concurrent Join/Leave Operations
    In order to be able to handle d join or leave requests in
    parallel, we extend Invariant 2.5 with the following rule:
    4. Every peer v in the system is connected to d predecessors
    and predi(v) for i = 1, 2, • • • , d and d successors
    succi(v) for i = 1, 2, • • • , d, where predi(v)
    (resp. succi(v)) is the ith predecessor (resp. successor)
    of v on the cycle.
    Proceedings of the 8th International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN’05)
    1087-4089/05 $20.00 &copy; 2005 IEEE
    In addition to this, given that v is the node with label _(n − 1), Invariant 2.7 needs to be extended to:
    Invariant 3.1 At any time, the supervisor stores the contact
    information of v, the 2d successors of v, and the 3d predecessors
    of v.
    These invariants can be preserved during join/leave operations
    and the following claim holds:
    Claim 3.2 The supervisor needs at most O(d) work and
    O(1) time (given that the work can be done in parallel) to
    process d join or leave operations.
    3.2. Multiple Supervisors
    We now show how multiple supervisors can work together
    in maintaining a single supervised peer-to-peer system.
    In a network with k supervisors S0, S1, • • • Sk−1, the
    [0, 1)-ring is split into the k regions Ri = [(i − 1)/k, i/k),
    1 ≤ i ≤ k, and supervisor Si is responsible for region
    Ri. Every supervisor manages its region as described for
    a single supervisor above, and the borders are maintained
    by communicating with the neighboring supervisors on the
    ring. Each time a new node v wants to join the system via
    some supervisor Si, Si forwards it to a random supervisor to
    integrate v into the system. Each time a node v under some
    supervisor Si wants to leave the system, Si contacts a random
    supervisor (which may also be itself) to provide a replacement
    node. Using Chernoff bounds we get:
    Claim 3.3 Let n be the total number of nodes in the system.
    Then it holds for every i ∈ {1, . . . , k} that the number
    nodes currently placed in Ri is in the range n/k ± O(_(n/k) log k + logk), with high probability.
    4. Robustness
    In this section we show how to extend the basic scheme
    to provide robustness guarantees against random node failures
    and also adaptive adversarial join/leave attacks [18].
    4.1. Robustness against random faults
    We call a supervised network robust if as long as at most
    a constant fraction of the nodes fail, the supervisor can still
    recover the rest of the network. In order to be robust against
    random faults, the supervisor uses the scheme of Section 3.1
    with d = c log n for some constant c > 1. Thus, each node
    is connected to c log n predecessors and successors. The supervisor
    stores the contact information along the lines of Invariant
    3.1. The following theorem can be shown.
    Theorem 4.1 Even if every node in the network fails independently
    with a constant probability, the scheme above in
    which the supervisor only maintains a logarithmic amount
    of information at any time suffices to fully restore the network
    and each leave operation executed during the recovery
    needs O(log n) work, with high probability.
    4.2. Robustness against adversarial attacks
    When considering adaptive adversarial attacks (e.g.,
    [18]) it does not suffice that the supervisor maintain information
    as in the previous subsection as the adversary
    can place nodes at critical positions to effectively disconnect
    the supervisor from the network or disrupt routing.
    Formally, we allow the adversary to own up to _n of the
    n nodes in the system for some sufficiently small constant
    _ > 0. These nodes are also called adversarial nodes and
    the rest are called honest nodes. The supervisor and the honest
    nodes are oblivious to adversarial nodes, i.e., there is no
    mechanism to distinguish at any time whether a particular
    node is honest or not. To achieve robustness in the presence
    of an adaptive adversary, we use the following scheme.
    In the following, a region is an interval of size 1/2i in
    [0, 1) starting at an integer multiple of 1/2i for some i ≥ 0,
    and a node v belongs to a region R if r(_v) ∈ R. Recall
    that n = 2_log n_. The supervisor organizes the nodes into
    regions so that each region contains between c log n and
    2c log n nodes for some constant c > 1. Whenever these
    bounds are violated in a region, the supervisor splits it or
    merges it with a neighboring region. The n nodes are also
    organized into 5 sets S1 to S5 and the following invariant is
    maintained for these sets.
    Invariant 4.2 At all times,
    1. S1 has ˉn/8 nodes with labels _(0), • • • , _(n/8 − 1).
    2. S2 has n/8 nodes with labels _(n/8), • • • , _(n/4 − 1).
    3. S3 has n/4 nodes with labels _(n/4), • • • , _(n/2 − 1).
    4. S4 has n/2 nodes with labels _(n/2), • • • , _(n − 1).
    5. S5 has the remaining n − n nodes with labels
    _(n), • • • , _(n − 1).
    The following invariant describes the connections maintained
    by the nodes in the various sets and the connections
    maintained by the supervisor. To simplify notation, for a
    real number x ∈ [0, 1), R(x) is the region that x belongs
    to and Si(R) is the set of Si-nodes belonging to R. For every
    region R, let SR = S1(R) ∪ S2(R) and ˉ SR = S3(R) ∪ S4(R) ∪ S5(R) if R precedes R(r(_(n))) and otherwise,
    SR = S1(R) and ˉ SR = S2(R) ∪ S3(R) ∪ S4(R) ∪ S5(R).
    Invariant 4.3 For all regions R, every SR-node is connected
    to all nodes in SR ∪ ˉ SR. Every SR-node is also connected
    to all nodes in the predecessor and successor regions
    of R, denoted pred(R) and succ(R), and for every u ∈ SR
    that has a connection to a node v ∈ SR_ according to Invariant
    2.5(3), all SR-nodes are connected to all SR_-nodes.
    The supervisor is connected to all the nodes in
    SR in the regions R(r(_(n))), pred(R(r(_(n)))) and
    succ(R(r(_(n)))).
    Proceedings of the 8th International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN’05)
    1087-4089/05 $20.00 &copy; 2005 IEEE
    The set S1 is also referred to as the stable set. The goal of
    the supervisor is to have the honest nodes in the majority in
    every set S1(R), with high probability, since then quorum
    strategies can be used to wash out adversarial behavior. The
    set S2 is in a stage called the split-and-merge stage because
    S2-nodes are merged into the stable set or removed from it
    as nodes join or leave the system. The set S3 is in a stage
    called mixing stage in which the supervisor performs random
    transpositions to ensure that the nodes are well-mixed
    before being integrated into the stable set. The set S4 is in
    a reservoir stage. S4 is used to fill departed positions in the
    sets S1 to S3 by selecting random nodes in S4 and filling
    their positions with the last nodes in S5. Finally, the set S5
    is in a filling stage where new nodes are added by assigning
    them the label _(n).
    The join and leave operations are extended as follows.
    Join: The supervisor assigns to the new node the label
    _(n) and integrates it so that the Invariants 4.2 and 4.3 are
    satisfied. Each time a new node u is added where r(_(n))
    is the successor of r(_v) for a node v at a position in S3
    that has not performed a random transposition yet, a random
    node w ∈ S3 is picked and the positions of v and w
    are switched. (This is realized by the supervisor informing
    all nodes in S1(R(_(n))) which positions are to be switched
    so that this is reliably done without involving the supervisor.)
    Each time a new node causes the supervisor to switch
    from a region R to succ(R), the nodes in S2(R) are merged
    into S1(R) as prescribed by Invariant 4.3.
    Leave: If a node v leaves with v ∈ S4 ∪ S5, the supervisor
    simply replaces it by the last node in S5. Otherwise,
    the supervisor replaces v by a random node in S4 and
    fills the position of that random node with the last node in
    S5. (The supervisor initiates the leave operation for v only
    if a majority of S1-nodes in v’s region notify it about that.
    In this case, the supervisor has the necessary information
    to correctly initiate the replacement.) Each time a departure
    causes the supervisor to switch froma regionR to pred(R),
    the nodes in S2(pred(R)) are split away from S1(R) as prescribed
    by Invariant 4.3.
    These operations yield the following result.
    Theorem 4.4 For a sufficiently small constant _ > 0 it
    holds that as long as the adversary owns at most _n nodes,
    the above scheme guarantees that in every region R, the
    honest nodes are in the majority in S1(R), with high probability.
    References
    [1] S. Banerjee, B. Bhattacharjee, and C. Kommareddy. Scalable
    application layer multicast. Technical Report UMIACS-TR
    2002-53/CS-TR 4373, U. Maryland, College Park, 2002.
    [2] S. Banerjee, S. Lee, B. Bhattacharjee, and A. Srinivasan.
    Resilient multicast using overlays. In ACM SIGMETRICS,
    number 1, pages 102–113, 2003.
    [3] M. Castro, P. Druschel, A.-M. Kermarrec, A. Nandi, A. Rowstron,
    and A. Singh. Splitstream: High-bandwidth multicast
    in cooperative environments. In ACM SIGMETRICS, 2003.
    [4] M. Castro, P. Druschel, A.-M. Kermarrec, and A. Rowstron.
    Scribe: A large-scale and decentralized applicationlevel
    multicast infrastructure. IEEE Journal on Selected Areas
    in Communications, 20:1489–1499, 2002.
    [5] H. Deshpande, M. Bawa, and H. Garcia-Molina. Streaming
    live media over a peer-to-peer network. Technical report,
    2001-31, Stanford University, 2001.
    [6] Distributed.net. Available at http://www.distributed.net/.
    [7] D. Jefferson et al. Distributed simulation and the time warp
    operating system. In ACM SOSP, 1987.
    [8] Folding@home. Available at http://folding.stanford.edu/.
    [9] C. GauthierDickey, D. Zappala, and V. Lo. A fully distributed
    architecture for massively multiplayer online games.
    In ACM Workshop on Network and System Support for
    Games, 2004.
    [10] J. Jannotti, D.K. Gifford, K.L. Johnson, F. Kaashoek, and
    J.W. OToole. Overcast: Reliable multicasting with an overlay
    network. In Proc. of OSDI, pages 197–212, 2000.
    [11] M. F. Kaashoek and D. R. Karger. Koorde: A simple degreeoptimal
    distributed hash table. In IPTPS, 2003.
    [12] M. Naor and U. Wieder. Novel architectures for P2P applications:
    the continuous-discrete approach. In ACM SPAA,
    pages 50–59, 2003.
    [13] G. Pandurangan, P. Raghavan, and E. Upfal. Building lowdiameter
    P2P networks. In IEEE FOCS, 2001.
    [14] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and
    S. Shenker. A scalable content-addressable network. In ACM
    SIGCOMM, 2001.
    [15] S. Ratnasamy, M . Handley, R. Karp, and S. Shenker.
    Application-level multicast using content-addressable networks.
    In Proc. of 3rd International Workshop on Networked
    Group Communication, 2001.
    [16] C. Riley and C. Scheideler. A distributed hash table for computational
    grids. In IEEE IPDPS, 2004.
    [17] C. Riley and C. Scheideler. Guaranteed broadcasting using
    SPON: A supervised peer overlay network. In 3rd International
    Z¨urich Seminar on Communications (IZS), 2004.
    [18] C. Scheideler. How to spread adversarial nodes? rotate! In
    ACM Symp. on Theory of Computing (STOC), 2005.
    [19] SETI@home. Available at http://setiathome.berkeley.edu/.
    [20] I. Stoica, D. Adkins, S. Zhuang, S. Shenker, and S. Surana.
    Internet indirection infrastructure. In SIGCOMM, 2002.
    [21] I. Stoica, R. Morris, D. Karger, F. Kaashoek, and H. Balakrishnan.
    Chord: A scalable peer-to-peer lookup service for Internet
    applications. In SIGCOMM, pages 149–160, 2001.
    [22] R. Zhang and Y. C. Hu. Borg: a hybrid protocol for scalable
    application level multicast in peer-to-peer networks. In IEEE
    Infocom, 2003.
    [23] S.Q. Zhuang, B.Y. Zhao, A.D. Joseph, R.H. Katz, and J. Kubiatowicz.
    Bayeux: An architecture for scalable and faulttolerant
    wide-area data dissemination. In Proc. of NOSSDAV,
    2001.
    Proceedings of the 8th International Symposium on Parallel Architectures, Algorithms and Networks (ISPAN’05)
    1087-4089/05 $20.00 &copy; 2005 IEEE

       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/4/19 21:26:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 Semantic Web(语义Web)/描述逻辑/本体 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2025/10/4 14:38:57

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    125.000ms