minimum ma ks imum de receli yayıncı - abone Üst ağ tasarımı
DESCRIPTION
Minimum Ma ks imum De receli Yayıncı - Abone Üst Ağ Tasarımı. ( Minimum Maximum Degree Publish-Subscribe Overlay Network Design ). Melih Onu ş. TOBB Ekonomi ve Teknoloji Üniversitesi, 28 Mayıs 2009. Yayıncı / Abone ( Yay / Abn ). ( Publish/Subscribe (Pub/Sub) ). {A,B,C,E}. - PowerPoint PPT PresentationTRANSCRIPT
1
Minimum Maksimum Dereceli Yayıncı-Abone Üst Ağ TasarımıMinimum Maksimum Dereceli
Yayıncı-Abone Üst Ağ Tasarımı
Melih Onuş
TOBB Ekonomi ve Teknoloji Üniversitesi, 28 Mayıs 2009
(Minimum Maximum Degree Publish-Subscribe Overlay Network Design)
2
Yayıncı / Abone (Yay/Abn)
N1
Abonelik(N1)={B,C,D}N2
{A,B,C,E}
N3
{A,D}
N4
{A,B,X}
N5
{A,X}
Yayın(M1, A)
M1
M1
M1
(Publish/Subscribe (Pub/Sub))
Mesaj Veri Hattı
3
Yay / Abn Ölçeklenilebilirliği● Geleneksel Yay/Abn sistemleri küçük çaplıdır
– e.g., Isis MDS, TIB, MQSeries, Gryphon
● Yeni nesil sistemler…– Büyük veri merkezleri: Amazon, Google, Yahoo, EBay,
…
– RSS sistemleri / haber dağıtıcılar, borsa/bankacılık sistemleri
– Web 2.0
● Sistemlerdeki hızlı büyüme– 10,000 bilgisayar, 1000 konu, İnternette dağıtım
(Scalability of Pub/Sub)
4
Yay / Abn Üst Ağları
N1
{B,C,D}N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
(M1,
A)
(M1, A)
(M1, A)
(M1, A)
Yedek
5
Yay / Abn Üst Ağ Topolojileri● “İyi” üst ağ basit ve verimli mesaj yönlerdirmesine
izin verir– küçük yönlendirme tabloları, az yedek yük– az gecikme
● Konu-birleşik üst ağ (Topic-connected overlay): her konu için bir birleşik çizge (graph)– yedek bilgisayar yok– uygulamaların coğu konu-birleşik üst ağ kullanır
6
Konu-Birleşiklik
● Konular B,C,X,E birleşiktir
● Konu A ve D ayrıktır
N1
{B,C,D}N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
7
Konu-Birleşiklik: Basit Çözüm
N1
{B,C,D}N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
Derece abonelik sayısı ile doğrusal olarak büyümektedir
8
Derece X Ölçeklenebilirlik
● Performansa olumsuz etki:– Komşuların kullanılabilirliğinin izlenmesi
– TCP bağlantı sinyallerinin izlenmesi
– Her bağlantıdan geçen trafiğin yönetilmesi
– Yüksek paket başlığı yükü (trafik verimli şekilde birleştirilemiyor)
Daha iyi yabılabilir mi?
9
MinMax-KBÜ Problemi
● Minimum Maximum Dereceli Konu-Birleşik Üst Ağ (MinMax-KBÜ) problemi:– Nokta kümesi V, konu kümesi T, and İlgi: V T
{evet, hayır} veriliyor. Minimum maksimum dereceli konu-birleşik üst ağ kur.
● Ana katkılar: – Konu-birleşik yay / abn sistemlerinde ilk kez
maksimum derece inceleniyor
– Maksimum derece için ilk logaritmik yaklaşım algoritması
10
İlgili Çalışmalar
● Chockler et al, PODC’07 [CMTV’07]: – Konu-birleşik yay / abn sistemlerinde dereceyi
inceleyen ilk çalışma
– ortalama derece için O(log (n |T|))-yaklaşım
11
Ortalama x Maksimum Derece
● v1 tüm konulara abone olmuş; her vi, i>1, konular tj , j ≠ i ye abone olmuş
● [CMTV’07] ortalama derece yaklaşım algoritması (b) maksimum derece için lineer yaklaşım sonucu verir
12
MinMax-KBÜ’nün Zorluğu
● Teorem: MinMax-KBÜ NP-complete’tir.
İspat: Konu-birleşiklik polinomsal zamanda kontrol edilebilir. MinMax-KBÜ problemine d-yaklaşım algoritması varsa Küme-kaplama (Set cover) problemine de d-yaklaşım algoritması vardır.
● Teorem: MinMax-KBÜ için O(log n)-yaklaşım algoritması yoktur, P = NP değilse.
13
MinMax-KBÜ’ye yaklaşım
● Fikir: – Abonelik çakışmaları kullanılacak– Kesişimi çok olan iki noktayı birleştirmek, birden çok
konunun birleşmesini sağlar
14
Üst Ağ Tasarım Algoritması (ÜTA)
● Başlangıç: çizgede hiç kenar yok
● Her yinelemede: maksimum dereceyi en az artıran kenarlardan en fazla parçayı birleştiren kenarı ekle
● Bitiş: her konu için bir birleşik parça olduğunda
(Overlay Design Algorithm (ODA))
15
Üst Ağ Tasarım Algoritması
N1
{B,C,D}
N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
KonuParça Sayısı
A 4
B 3
C 2
D 2
X 2
E 1
16
Üst Ağ Tasarım Algoritması
KonuParça Sayısı
A 3
B 2
C 2
D 2
X 2
E 1
N1
{B,C,D}
N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
17
Üst Ağ Tasarım Algoritması
N1
{B,C,D}
N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
KonuParça Sayısı
A 3
B 2
C 2
D 1
X 2
E 1
18
Üst Ağ Tasarım Algoritması
N1
{B,C,D}
N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
KonuParça Sayısı
A 3
B 1
C 1
D 1
X 2
E 1
19
Üst Ağ Tasarım Algoritması
N1
{B,C,D}
N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
KonuParça Sayısı
A 2
B 1
C 1
D 1
X 1
E 1
20
Üst Ağ Tasarım Algoritması
N1
{B,C,D}
N2
{A,B,C,E}
N3
{A,D}
{A,B,X}
N5
{A,X}
N4
KonuParça Sayısı
A 1
B 1
C 1
D 1
X 1
E 1
Maksimum derece 2 vs. 8 her konuya çember için!
21
Yaklaşım Garantisi
● Theorem: ÜTA’nın bulduğu çizgenin maximum derecesi O(log(n |T|))*OPT ’ dir.
İspat: – Öncelikle algoritmanın greedy eşleştirme (matching)
gibi çalıştığı gösterilir– Bizim algoritmanın kurduğu çizge ayrıştırılmış optimal
çizge ile ilişkilendirilir– Greedy Küme Kaplama Algoritmasının yaklaşım
ispatına benzer bir ispat kullanılır
22
Yaklaşım Garantisi
● Lemma. Algoritmanın kullandığı herbir eşleştirme Si kalan toplam parça sayısını optimal eşleştirmenin en az 1/3 ’ü kadar azaltır.
● Çalışma Zamanı: O(n4|T |)
23
Deneysel Sonuçlar: Max Derece
Maksimum Derece#bilgisayar: 100#konu: 10Düzgün dağılım
● GM: konu-birleşik yay-abn sistemi ortalama derece O(log n) yaklaşım algoritması [CMTV’07]
24
Deneysel Sonuçlar:Ortalama Derece
Ortalama Derece#konu: 100#abonelik: 10Düzgün dağılım
25
Deneysel Sonuçlar: Max Derece II
Maksimum Derece#konu: 100#bilgisayar: 100Düzgün Dağılım
26
Sabit Çaplı Üst Ağlar
● Konu-birleşik, az ortalama dereceli ve çapı her konu için 2 olan üst ağ kurulum heuristikleri – Deneysel sonuç
27
Gelecekte Yapılacaklar
● Dinamik durum: – Bilgisayar ayrılması/katılması,
– Konu ilgisi değişimi
● Dağıtık algoritma:– İlgi fonksiyonunun bir kısmını bilme durumu
– dinamik senaryo
● Diğer yay-abn üst ağ kurulum problemleri
28
Sorular?
29
30
31
ODA Running Time
● O(|V |4|T |)– At most |V|2 iterations
– At most |V|2 edges inspected at each iteration
– At most |T| steps to inspect an edge
32
Constant Diameter Overlay Algorithm
● The idea: adding stars– Make topics connected with star structures
● Constant Diameter Overlay Design Algorithm:– Start from a singleton connected component for each (v, t)
V T– At each iteration:
• Add a star which connects maximum number of nodes, • Remove topics which are connected by the star
– Stop, once there is a single connected component for each topic
Number of neighbors of node u:
33
Experimental Results
Average Node Degree#topics: 100#nodes: 100Uniform distribution
Only 2.3 times more edge
34
Conclusions
● Formal study of the problem of designing efficient and scalable overlay topologies for pub/sub
● Defined the problem (MinMax-TCO) capturing the cost of constructing topic-connected overlays– NP-Completeness, polynomial approximation,
inapproximability results
● Empirical evaluation showed effectiveness of our approximation algorithm on practical inputs
● Defined the problem (CD-TCO), empirical results
35
● Theorem: MinMaxTCO is NP-complete.
Proof: Topic connectivity is verifyable in polynomial time. We basically show that any d-approximation to the MinMax-TCO problem implies a d-approximation to Set Cover.
● Corollary. One cannot approximate MinMax-TCO in o(log n) unless P=NP
36
ODA Running Time
● O(|V|4|T|)– At most |V|2 iterations
– At most |V|2 edges inspected at each iteration
– At most |T| steps to inspect an edge
● Can be optimized to run in O(|V|2 |T|)– For each e V V, weight(e) = the number of
connected components merged by e
– At each iteration, output the heaviest edge and adjust the other edge weights accordingly
– Stop once there are no more edges with weight > 0