Ders 15 / 16
Hibrit Bağlantı
Siteler arası tünel ile adanmış bağlantı arasındaki seçim tek bir kaldıraçtır: yalnız adanmış bağlantı kırk öznenin 23'ünü yolsuz bırakır, yalnız tünel 14'ünü bütçesinin dışına atar, ikisi birlikte kuyruğu 9'a indirir ama dokuzunun da aynı sınıftan çıkmasına yol açar.
İçindekiler
Önceki dersin bütün ölçümü tek bir sanal ağın içindeydi. Kırk alt ağ aynı bloktan kesildi, aynı geçitleri paylaştı, tek bir öneğe uydu. Oysa bulut nesnelerinin var olma nedeni çoğu zaman kendi sahip olduğumuz ağla birlikte çalışmalarıdır — ve o ağ başka bir yerdedir, başka bir adres alanındadır, başka bir ekibin sorumluluğundadır.
Hibrit bağlantı (hybrid connectivity), iki ağı tek bir adresleme ve erişim düzlemi gibi davranmaya zorlayan bağlantı katmanıdır. İki temel seçenek vardır ve ikisi de aynı işi yapar: siteler arası tünel paylaşılan bir yolun üstünde şifreli bir kanal açar, adanmış bağlantı (dedicated link) ise iki ağ arasında ayrılmış bir yol verir. Bu dersin sorusu hangisinin daha iyi olduğu değildir. Soru şudur: seçim tek bir kaldıraç olarak kırk özneye uygulandığında hangi özne ne alır, ve geriye kim kalır.
İki Yol
İki seçeneği ayıran şey teknoloji değil, kimin kapasitesini paylaştığıdır.
Siteler arası tünel var olan bir yolun üstüne kurulur. Yol paylaşılmıştır: kapasitesi öngörülemez, gecikmesi başkalarının yüküyle birlikte değişir, ve tünelin kendisi şifreleme ile kapsülleme yüzünden sabit bir ek gecikme koyar. Karşılığında kurulumu bir yapılandırma işidir; yeni bir tünel açmak yeni bir kayıt yaratmaktır.
Adanmış bağlantı ise iki uç arasına ayrılmış bir yoldur. Kapasitesi bellidir ve başkalarıyla paylaşılmaz, gecikmesi kararlıdır, üstünden geçen trafik paylaşılan yola hiç çıkmaz. Karşılığında kapasitesi sabittir: kurulurken seçilen sayı, sonradan bir yapılandırma değişikliğiyle değil ancak yeni bir kurulumla değişir.
# ogretilen yapilandirma dokumu , calistirilmamistir
siteler arasi tunel:
karsi uc: sirket-omurgasi
tunel secici:
- 10.40.0.0/20 -> 172.20.0.0/16
anahtar malzemesi: gizli depodan okunur, burada yazilmaz
ek gecikme: paylasilan yolun durumuna baglidir
adanmis baglanti:
karsi uc: sirket-omurgasi
ayrilmis kapasite: kurulumda secilir, sonradan buyutulemez
yol: paylasilan yola cikmaz
yonlendirme onceligi:
1. adanmis baglanti
2. siteler arasi tunel # adanmis dolu ya da arizaliysa
Anahtar malzemesi, kimlik bilgisi ve önceden paylaşılan sır bu derste hiçbir örnekte yazılmaz; nereden okunduğu yukarıdaki dökümde bir satırla söylenir ve geçilir.
Tünelin yönlendirme yanı — tünel seçicinin hangi hedefleri içeri aldığı, seçilmeyen akışın kural dizisine hiç uğramaması, atanan bölgenin iki yönü zıt yönlerde çekmesi — Kablosuz Ağlar ve Ağ Güvenliği kursunun VPN dersinde ölçüldü ve burada tekrarlanmaz. O ders tünelin hangi akışı içeri aldığını saydı. Bu ders tünelin içine giren akışa ne verdiğini sayar.
Kaldıraç: Yol Seçimi
Operatörün eline üç seçenek verilir ve biri seçilir. Seçim kırk öznenin kırkına birden uygulanır: yalnız adanmış bağlantı, yalnız tünel, ya da ikisi birlikte.
Üçüncü seçenekte bir öncelik kuralı gerekir, çünkü adanmış bağlantının kapasitesi kırk öznenin toplam talebinden küçüktür. Kural işletmede en sık görülen biçimiyle alınır: sınıf önceliği. Gecikmeye en duyarlı sınıf adanmış bağlantıya önce yerleşir, kalanlar tünele düşer.
Her öznenin bir gecikme bütçesi vardır ve bütçe sınıfından gelir. Bir özne bütçesini aşarsa kuyruktadır. Hiç yol bulamazsa kuyruğun daha ağır bir biçimindedir: hizmet alamaz.
Ölçümün varsayımları:
- OT67 — Kırk özne kursun sabit kümesidir; küme değiştirilmez. Öznenin kapasitesi adanmış bağlantıdan istediği birim, gecikmesi ise yolun tünelsiz taban gecikmesidir.
- OT68 — Adanmış bağlantının kapasitesi 900 birimdir ve toplam talep 2336’dır; kapasite kurulumda seçilmiştir ve ölçüm boyunca büyütülemez.
- OT69 — Tünel, taban gecikmenin üstüne sabit 30 ms koyar. Tünelin kapasitesi sınırlanmamıştır; paylaşılan yol darboğaz olduğunda bunu kapasiteyle değil gecikmeyle gösterir.
- OT70 — Gecikme bütçeleri sınıfa göredir: etkileşim 45 ms, toplu 60 ms, yedek 120 ms. Bütçe bir hizmet kararıdır, ölçümün bulgusu değil.
- OT71 — İkisi birlikte seçiminde adanmış bağlantı sınıf önceliğiyle doldurulur; sınıf içinde sıra özne numarasıdır ve kapasitesi kalan yere sığmayan özne tünele geçer.
- OT72 — Bütçesine 15 ms’den az pay kalan özne payı dar sayılır. Bu özne göstergede kuyrukta görünmez; kuyruğa girmesi için yalnız yolun bozulması yeter.
- OT73 — Kâhin kurgunun kendisidir: kapasiteyi, taban gecikmeyi ve sınıfı biz yazdığımız için biliriz. Ölçüm bir ağ ölçümü değildir; hiçbir tünel kurulmaz, hiçbir karşı uca istek gönderilmez.
Ölçüm
"""Hibrit baglanti: tek yol secimi kirk ozneye birden. Kaldirac - sirketin ic trafigi hangi yoldan gecirilir. Kuyruk - gecikme butcesini asan ve hic yol bulamayan ozne. Gorunmeyen - butcesine PAY_ESIGI ms'den az pay kalan ozne. """ TOHUM = 20260812 ADANMIS = 900 # adanmis baglantinin birim kapasitesi TUNEL_EK = 30 # paylasilan yolda tunelin ekledigi ms TUNEL_KOTU = 80 # paylasilan yol bozuldugunda ek ms BUTCE = {"etkilesim": 45, "toplu": 60, "yedek": 120} ONCELIK = ("etkilesim", "toplu", "yedek") PAY_ESIGI = 15 # butceye bu kadardan az pay kalmissa gorunmeyen kuyruk def uretec(tohum): d = tohum % 2147483646 + 1 def r(n): nonlocal d d = (d * 48271) % 2147483647 return d % n return r def ozneler(sayi=40, tohum=TOHUM): r, liste = uretec(tohum), [] for i in range(sayi): liste.append({ "no": i + 1, "kapasite": 20 + r(81), "gecikme": 5 + r(45), "sinif": ("etkilesim", "toplu", "yedek")[r(3)], "ozel": r(9) == 0, }) return liste def yerlestir(oz, secim): """Her ozneye bir yol atar: 'adanmis', 'tunel' ya da 'yok'.""" if secim == "tunel": return {o["no"]: "tunel" for o in oz} yol, kalan = {}, ADANMIS sirali = sorted(oz, key=lambda o: (ONCELIK.index(o["sinif"]), o["no"])) for o in sirali: if o["kapasite"] <= kalan: yol[o["no"]] = "adanmis" kalan -= o["kapasite"] else: yol[o["no"]] = "tunel" if secim == "ikisi" else "yok" return yol def olc(oz, yol, ek): """Butceyi asan, hizmet alamayan ve payi daralan ozneler.""" asan = asan_ms = hizmetsiz = dar = 0 for o in oz: y, butce = yol[o["no"]], BUTCE[o["sinif"]] if y == "yok": hizmetsiz += 1 continue gecikme = o["gecikme"] + (ek if y == "tunel" else 0) if gecikme > butce: asan += 1 asan_ms += gecikme - butce elif butce - gecikme < PAY_ESIGI: dar += 1 return asan, asan_ms, hizmetsiz, dar oz = ozneler() print(f"özne {len(oz)} | toplam talep {sum(o['kapasite'] for o in oz)} | " f"adanmış bağlantı {ADANMIS} birim | tünel ek gecikme {TUNEL_EK} ms") print("gecikme bütçesi: " + ", ".join(f"{s} {BUTCE[s]} ms" for s in ONCELIK)) print() print(f"{'seçim':<16s} {'adanmışta':>10s} {'tünelde':>8s} {'yolsuz':>7s} " f"{'bütçeyi aşan':>13s} {'aşan ms':>8s} {'payı dar':>9s}") for secim in ("adanmis", "tunel", "ikisi"): yol = yerlestir(oz, secim) a, ms, h, d = olc(oz, yol, TUNEL_EK) print(f"{secim:<16s} {sum(1 for v in yol.values() if v == 'adanmis'):10d} " f"{sum(1 for v in yol.values() if v == 'tunel'):8d} " f"{sum(1 for v in yol.values() if v == 'yok'):7d} " f"{a:13d} {ms:8d} {d:9d}") print() print(f"paylaşılan yol bozulduğunda (ek gecikme {TUNEL_EK} → {TUNEL_KOTU} ms)") print(f"{'seçim':<16s} {'bütçeyi aşan':>13s} {'aşan ms':>8s} {'payı dar':>9s}") for secim in ("adanmis", "tunel", "ikisi"): yol = yerlestir(oz, secim) a, ms, h, d = olc(oz, yol, TUNEL_KOTU) print(f"{secim:<16s} {a:13d} {ms:8d} {d:9d}") print() yol = yerlestir(oz, "ikisi") for sinif in ONCELIK: grup = [o for o in oz if o["sinif"] == sinif] ad = sum(1 for o in grup if yol[o["no"]] == "adanmis") asan = sum(1 for o in grup if yol[o["no"]] == "tunel" and o["gecikme"] + TUNEL_EK > BUTCE[sinif]) print(f"ikisi birlikte | {sinif:<10s} özne {len(grup):2d} | " f"adanmışta {ad:2d} | tünelde {len(grup) - ad:2d} | " f"bütçeyi aşan {asan:2d}")
özne 40 | toplam talep 2336 | adanmış bağlantı 900 birim | tünel ek gecikme 30 ms gecikme bütçesi: etkilesim 45 ms, toplu 60 ms, yedek 120 ms seçim adanmışta tünelde yolsuz bütçeyi aşan aşan ms payı dar adanmis 17 0 23 0 0 2 tunel 0 40 0 14 144 10 ikisi 17 23 0 9 76 5 paylaşılan yol bozulduğunda (ek gecikme 30 → 80 ms) seçim bütçeyi aşan aşan ms payı dar adanmis 0 0 2 tunel 32 1508 1 ikisi 16 758 3 ikisi birlikte | etkilesim özne 11 | adanmışta 11 | tünelde 0 | bütçeyi aşan 0 ikisi birlikte | toplu özne 20 | adanmışta 5 | tünelde 15 | bütçeyi aşan 9 ikisi birlikte | yedek özne 9 | adanmışta 1 | tünelde 8 | bütçeyi aşan 0
Üç Seçimin Kuyruğu
İlk satır bir tuzaktır ve dikkatle okunmalıdır. Yalnız adanmış bağlantı seçiminde bütçeyi aşan özne 0, aşan ms 0. Gecikmeyi ölçen bir gösterge bu kurulumu kusursuz gösterir. Yanındaki sütun neyin ödendiğini söylüyor: kırk öznenin 23’ü hiçbir yol bulamıyor. Adanmış bağlantı 900 birim, toplam talep 2336; kapasite bitince sıradaki özne dışarıda kalıyor.
Kuyruk yok olmadı, göstergenin dışına çıktı. Gecikme göstergesi yalnız hizmet alan özneleri sayıyor ve hizmet alamayan bir öznenin gecikmesi yok. Kursun ilk dersinden beri sayılan şeyin en keskin biçimi budur: iyi görünen bir sayının paydası, kuyruğun kendisi tarafından küçültülmüş olabilir.
Yalnız tünel seçiminde payda düzeliyor — kırk öznenin kırkı da hizmet alıyor, yolsuz kalan 0. Bu kez kuyruk göstergenin içinde: 14 özne bütçesini aşıyor, toplam aşım 144 ms. Kapasite sorunu yok, gecikme sorunu var. Tünelin koyduğu 30 ms sabittir ve herkese aynı biçimde uygulanır; bütçesi dar olan sınıflar bunu kaldıramaz.
İkisi birlikte seçimi her iki göstergede de en iyisi: yolsuz 0, bütçeyi aşan 9, aşan ms 76. Adanmış bağlantı gecikmeye duyarlı özneleri alıyor, kalanlar tünelden geçiyor. Kuyruk 14’ten 9’a iniyor.
Kuyruk Kimin Üstünde Toplandı
Alt döküm, ikisi birlikte seçiminin asıl sonucunu veriyor ve bu sonuç sayının kendisinden önemlidir. Etkileşim sınıfının 11 öznesinin 11’i de adanmış bağlantıda; bütçeyi aşan 0. Yedek sınıfının bütçesi 120 ms olduğu için tüneldeki sekiz öznesi de rahat; aşan 0. Dokuz kuyruğun dokuzu da toplu sınıfından geliyor.
Öncelik kuralı bunu yaptı. Kural etkileşim sınıfını en öne koydu, o sınıf 580 birimle adanmış bağlantının üçte ikisini aldı, ve geriye kalan 320 birim toplu sınıfının yirmi öznesinden yalnız beşine yetti. On beş toplu özne tünele düştü, dokuzu bütçesini aştı.
Bu, kursun ikinci iddiasının bu dersteki biçimidir. Üç seçimden hiçbiri kuyruğu kaldırmadı. Yalnız adanmış bağlantı kuyruğu hizmet alamayanlara, yalnız tünel bütçesi dar olan herkese, ikisi birlikte ise tek bir sınıfa yerleştirdi. En düşük sayıyı veren seçim, acıyı en dar yere toplayan seçimdir. Hangisinin doğru olduğu bir ölçüm kararı değil, bir politika kararıdır — ve toplu sınıfının dokuz öznesinin bunu kabul edip etmediği tablodan okunamaz.
Devralma ve İki Yolun Yan Etkileri
İkisi birlikte kurulumunun asıl gerekçesi çoğu zaman kapasite değil devralmadır: adanmış bağlantı arızalandığında trafik tünele düşer ve hizmet kesilmez. Bunun bedeli ölçümde zaten yazılı. Adanmış bağlantı düştüğü anda kırk öznenin kırkı tünele geçer, yani kurulum tünel satırına iner: bütçeyi aşan 14, aşan ms 144. Devralma hizmeti sürdürür ama kuyruğu dokuzdan on dörde çıkarır ve bunu tek bir arıza anında yapar. Devralma planı yapan bir işletme, devraldıktan sonraki satırı da yazmak zorundadır.
İki yolun aynı anda var olmasının iki yan etkisi daha vardır ve ikisi de bu ölçümün dışında kalır.
Birincisi adres çakışmasıdır. Hibrit bağlantı iki ayrı adres alanını tek bir düzlem gibi davranmaya zorlar; iki alan aynı bloğu kullanıyorsa hiçbir yol kurulamaz. Önceki dersin sanal ağ bloğu bu yüzden bir kez ve geri dönüşsüz seçilen bir karardır: çakışmayı sonradan çözmenin yolu, alt ağları yeniden numaralamak ya da adres dönüştüren bir katman eklemektir. İkincisi ancak kural dizisinin okuduğu adresi bozarak çalışır.
İkincisi yol asimetrisidir. Gidiş adanmış bağlantıdan, dönüş tünelden geçebilir; iki yönün ayrı yollar izlemesi tek başına bir hata değildir ama durum bilgisi tutan her nesneyi bozar. Bir yönü gören güvenlik grubu öteki yönü görmez ve akışı yarım tanır. Daraltma, yolun yönünü değil akışı bağlamaktır: iki uç arasındaki trafiğin her iki yönü de aynı yola sabitlenir, sabitleme yönlendirme önceliğiyle iki uçta da aynı biçimde yazılır.
Görünmeyen Kuyruk: Dar Pay
Son sütun kuyruğa girmemiş ama sınırında duran özneleri sayıyor. Bütçesine 15 ms’den az payı kalan özne kuyrukta değildir; hiçbir uyarı üretmez, hiçbir raporda görünmez.
Paylaşılan yol bozulduğunda ne olduğunu ikinci tablo söylüyor. Tünelin ek gecikmesi 30 ms’den 80 ms’ye çıktığında yalnız tünel seçiminde kuyruk 14’ten 32’ye, aşan ms 144’ten 1508’e fırlıyor. İkisi birlikte seçiminde kuyruk 9’dan 16’ya, aşım 76’dan 758’e çıkıyor. Adanmış bağlantı satırı hiç kıpırdamıyor: 0 ve 0. Ayrılmış yolun karşılığı budur ve tam olarak burada görünür.
Payı dar sütunundaki hareket ilk bakışta ters okunur. Yalnız tünel seçiminde bu sayı 10’dan 1’e iniyor, ikisi birlikte seçiminde 5’ten 3’e. Bu bir iyileşme değildir. Payı dar olan özneler bozulmayla birlikte kuyruğa geçtiler; sayının düşmesi, sınırda duran özneler tükendiği içindir. Bir göstergenin iyileşmesi, saydığı kümenin boşalmasından geliyor olabilir.
Buradan çıkan işletme kuralı tektir: dar pay ayrı bir gösterge olarak sayılmalıdır. Kuyruğu sayan gösterge bozulmadan sonra konuşur; dar payı sayan gösterge bozulmadan önce konuşur ve ikisi aynı sayı değildir.
Özet
- Siteler arası tünel paylaşılan bir yolun üstüne kurulur ve sabit bir ek gecikme koyar; adanmış bağlantı ayrılmış bir yol verir ama kapasitesi kurulumda seçilir ve sonradan büyütülemez.
- Yalnız adanmış bağlantı seçiminde bütçeyi aşan özne 0’dır, çünkü kırk öznenin 23’ü hiç yol bulamaz ve göstergenin paydasına girmez.
- Yalnız tünel kırk öznenin kırkına yol verir ama 14’ünü bütçesinin dışına atar; ikisi birlikte kuyruğu 9’a indirir.
- Dokuz kuyruğun dokuzu da toplu sınıfındandır: öncelik kuralı etkileşim sınıfının onbirini adanmış bağlantıya alınca kalan 320 birim toplu sınıfının yalnız beş öznesine yetmiştir.
- Payı 15 ms’den az kalan özneler kuyrukta görünmez; paylaşılan yol 30 ms’den 80 ms’ye bozulduğunda bunlar kuyruğa geçer ve dar pay sayısının düşmesi iyileşme değil, sınırdaki kümenin boşalmasıdır.
Sonraki Adım
Bu dersteki her sayı bir seçimin sonucunu verdi: yol seçildi, kırk özneye uygulandı, kuyruk sayıldı. İşletmede bu sıra tersine çevrilmek istenir — kuyruğun ne olacağı, kaldıraca dokunulmadan önce bilinsin. Sonraki ders bunun için kurulan yeri ölçer: gerçek ağın bir kopyasının çıkarıldığı laboratuvar ortamını. Ölçülen şey laboratuvarın kendisi değil, gerçeği ne kadar temsil ettiğidir: kaç özne modellenebiliyor, kaçı modellenemiyor, ve laboratuvarda doğrulanmış bir değişiklik sahada kaç öznede başka türlü davranıyor.
İlerlemeni kaydetmek ve not almak için Giriş yap
Notlarım
Not almak için giriş yapmalısın.