簡體   English   中英

定向超立方體的領導者選舉算法

[英]A leader election algorithm for an oriented hypercube

我遇到了必須為定向超立方體設計領導者選舉算法的問題。 這應該通過使用具有等於超立方體尺寸D的回合數的錦標賽來完成。 在每個階段d中,在1 <= d <D的情況下,相鄰d維超立方體的兩個候選領導者應競爭成為(d + 1)維超立方體的單個候選領導者,這是它們各自超立方體的並集。

自研究分布式系統以來已經有很長時間了,但是我希望這可以有所幫助:)

問題是: 超立方體拓撲網絡中的領導者選舉 在此拓撲中,每個節點都具有完全D個鄰居(其中D是超立方體的維)。 由於超立方體是定向的 ,因此節點知道其哪個鏈接對應於每個維度。 另外,我假設所有節點都帶有一些唯一的ID,這是此類問題的典型表現。

如果我很了解您的解決方案准則,該算法似乎很簡單:一個節點的狀態完全為D。 在每個狀態1 <= d <= D中,它都沿d軸與其鄰居通信。 這種通信包括向其發送它知道的最佳候選者的ID(當d = 1時,這只是其自身的ID),並將其與對等方接收的ID進行比較。 現在,該節點知道它所屬的d階子多維數據集(由軸1,2 ...,d定義)的最佳id。 這樣,在步驟D,所有節點都知道全局最佳,並且算法以共識的方式完成。

例如,假定以下拓撲(D = 2)和id值:

   (1)    (2)
    1-----2
    |     |
    |     |
    4-----3
   (4)    (3)

括號中的id表示到目前為止每個節點已知的最佳id。

第一次迭代(d = 1)沿水平軸工作,並如下終止:

   (2)    (2)
    1-----2
    |     |
    |     |
    4-----3
   (4)    (4)

第二次(也是最后一次)迭代(d = 2)沿垂直軸工作,並終止如下:

   (4)    (4)
    1-----2
    |     |
    |     |
    4-----3
   (4)    (4)

已根據需要選擇了節點號4(最高ID)。

郵件計數復雜度

對於超立方體中的每個邊緣,我們都有2條消息(每個方向一條)。 由於維D的超立方體中邊數的公式為E = D * 2 ^(D-1),因此我們有M = D * 2 ^ D條消息。 為了計算復雜度作為N(節點數)的函數,請回想N = 2 ^ D,所以M = N * logN。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM