Genel hücre hızı algoritması - Generic cell rate algorithm

Jenerik hücre oranı algoritması (GCRA) bir olduğunu sızdıran kova tipi çizelgeleme algoritması için Ağ tarifesi kullanılan uyumsuz aktarım modu (ATM) ağları. Zamanlama ölçümü için kullanılan hücreler üzerinde sanal kanal (VC) ve ya da sanal Yolları karşı (VP) bant genişliği ve titreşim bir içerdiği sınırlar trafik sözleşme hücreler dahil edildiği VC veya VP. Trafik sözleşmesi tarafından verilen sınırlara uymayan hücreler daha sonra trafik şekillendirmede yeniden zamanlanabilir (geciktirilebilir) veya trafik denetiminde öncelikleri azaltılabilir (atılabilir) veya azaltılabilir (indirgenebilir) . Önceliği düşürülen uygun olmayan hücreler, daha sonra, tıkanıklık yaşayan ağdaki aşağı akış bileşenleri tarafından, daha yüksek öncelikli hücrelere tercih edilerek bırakılabilir. Alternatif olarak, sözleşmeye göre fazla hücre olmasına rağmen, kendileri için yeterli kapasite varsa hedeflerine (VC veya VP sonlandırma) ulaşabilirler: bkz. Öncelik kontrolü .

GCRA, ağdaki bağlantılardaki trafiği kontrol etmek için referans olarak verilir, yani kullanıcı-ağ arayüzlerinde (UNI) veya ağlar arası arayüzlerde veya ağ-ağ arayüzlerinde (INI / NNI ) kullanım / ağ parametresi kontrolü (UPC / NPC) ). Aynı zamanda , bir ana bilgisayardaki, yani UNI'nin kullanıcı tarafında bir ATM ağına bir ağ arayüz kartı (NIC) tarafından iletilen hücrelerin (ATM PDU Veri Talepleri) zamanlaması için referans olarak verilir . Bu, hücrelerin daha sonra ağdaki UPC / NCP tarafından, yani UNI'nin ağ tarafında atılmamasını sağlar. Bununla birlikte, GCRA yalnızca referans olarak verildiğinden, ağ sağlayıcıları ve kullanıcıları aynı sonucu veren başka herhangi bir algoritmayı kullanabilir.

GCRA'nın açıklaması

Image
Şekil 1: Genel hücre hızı algoritmasının eşdeğer versiyonları

GCRA tarafından açıklanan ATM Forum onun içinde User-Ağ Arabirimi (UNI) ve tarafından ITU-T tavsiyesi I.371 içinde B-ISDN Trafik kontrolü ve tıkanıklık kontrolü  . Her iki kaynak da GCRA'yı iki eşdeğer şekilde açıklar: sanal bir zamanlama algoritması ve sürekli durum sızdıran kova algoritması (şekil 1).

Sızdıran kova açıklaması

Sızdıran kova algoritması açısından açıklama, bir sızıntı olan bir kovanın basit bir benzetmesine dayandığından, ikisinin kavramsal bir perspektiften anlaşılması daha kolay olabilir: sızdıran kova sayfasındaki şekil 1'e bakın. Bununla birlikte, literatürde, GCRA'ya geçen bir algoritma üretmek için sızdıran kova analojisinin uygulanması konusunda kafa karışıklığı olmuştur. GCRA bir versiyonu olarak kabul edilmelidir bir metre olarak sızan kova yerine bir sıra olarak sızan kova .

Bununla birlikte, bu sızdıran kova açıklamasını anlamanın olası avantajları olsa da, doğrudan uygulandığında mutlaka en iyi (en hızlı) kodla sonuçlanmayabilir. Bu, iki açıklama için akış diyagramlarında gerçekleştirilecek eylemlerin göreceli sayısı ile kanıtlanır (Şekil 1).

Sürekli durum sızdıran kova algoritması açısından açıklama, ITU-T tarafından şu şekilde verilmektedir: "Sürekli durum sızdıran kova, gerçek değerli içeriği sürekli 1 birim oranında boşaltılan sonlu kapasiteli bir kova olarak görülebilir. zaman birimi başına içeriğin ve içeriği her uyumlu hücre için T artışı ile artırılan ... Bir hücre varışında, paketin içeriği τ sınır değerinden küçük veya ona eşitse , hücre uyumludur; aksi takdirde, hücre uygun değil. Kovanın kapasitesi (sayacın üst sınırı) ( T + τ ) ". Sızıntının birim zamanda bir birim içerik olması nedeniyle, her bir hücre T için artış ve τ sınır değerinin zaman birimleri cinsinden olduğunu belirtmek gerekir .

T'nin emisyon aralığı ve τ'nin sınır değeri olduğu sürekli durum sızdıran kova algoritmasının akış diyagramı göz önüne alındığında : Bir hücre geldiğinde, kovanın durumunun, en son uyumlu hücre geldiğinde durumundan hesaplanmasıdır. , X ve aralıkta ne kadar sızıntı olduğu, t a - LCT . Bu mevcut bölüm değeri daha sonra X 'konumunda depolanır ve sınır değeri τ ile karşılaştırılır . X ' deki değer τ'dan büyük değilse , hücre çok erken gelmemiştir ve bu nedenle sözleşme parametrelerine uygundur; X'deki değer τ'dan büyükse , o zaman uygun değildir. O zaman uygunsa, geç olduğu için uygunsa, yani kova boşsa ( X ' <= 0), X , T olarak ayarlanır ; erken ise, ancak çok erken değilse ( τ > = X ' > 0), X , X' + T olarak ayarlanır .

Bu nedenle akış diyagramı, X ve X ' kepçenin analogu olarak hareket ederek , sızdıran kova analojisini (bir sayaç olarak kullanılır) doğrudan taklit eder .

Sanal planlama açıklaması

Sanal zamanlama algoritması, sızdıran paket gibi kolayca erişilebilir bir benzetmeyle çok açık bir şekilde ilişkili olmasa da, GCRA'nın ne yaptığı ve en iyi nasıl uygulanabileceği konusunda daha net bir anlayış sağlar. Sonuç olarak, bu sürümün doğrudan uygulanması, sızdıran kova açıklamasının doğrudan uygulanmasından daha kompakt ve dolayısıyla daha hızlı bir kodla sonuçlanabilir.

Sanal programlama algoritması açısından açıklama, ITU-T tarafından şu şekilde verilmektedir: "Sanal programlama algoritması, hücrelerin eşit aralıklarla gönderildiğini varsayan hücrenin 'nominal' varış zamanı olan Teorik Varış Zamanını (TAT) günceller. Kaynak aktif olduğunda hücre hızına Λ [= 1 / T ] karşılık gelen T emisyon aralığında . Bir hücrenin gerçek varış zamanı TAT ve hücre hızıyla ilişkili tolerans τ'ye göre 'çok erken' değilse yani gerçek varış zamanı teorik varış zamanı eksi sınır değerinden sonraysa (t a > TAT - τ ), hücre uyumludur; aksi takdirde hücre uygun değildir ". Hücre uygun değilse, TAT değişmeden bırakılır. Hücre uyumluysa ve TAT'sinden önce geldiyse (kovanın boş olmaması ancak sınır değerinin altında olmasıyla eşdeğer), sonraki hücrenin TAT'ı basitçe TAT + T'dir . Bir hücrenin sonra gelirse Ancak, TAT , sonra TAT sonraki hücre için bu hücrenin varış saati, değil onun hesaplanır TAT . Bu, iletimde bir boşluk olduğunda kredi birikimini önler (kovanın boştan daha az olmasına eşdeğer).

Çünkü algoritma bu sürümü çalışır τ bkz: kararsızlık yok olsaydı hücre it would daha gelmesi ne kadar erken tanımlar gecikme varyasyon tolerans: sızdıran kova . Bunu görmenin başka bir yolu, TAT'ın , paketin bir sonraki boşluğunu temsil etmesidir, bu nedenle, bundan önceki bir τ , paketin tam olarak sınır değerine kadar doldurulduğu zamandır . Bu nedenle, her iki görüşe göre, TAT'den önce τ'dan daha fazla gelirse , uyum sağlamak için çok erkendir.

Jeton paketiyle karşılaştırma

GCRA, jeton paketi algoritmasının uygulamalarının aksine, paketi güncelleme sürecini simüle etmez (sızıntı veya düzenli olarak jeton ekleme). Bunun yerine, bir hücre her ulaştığında, seviyesinin en son hesaplanmasından bu yana veya paketin bir sonraki boş kalacağı zaman (= TAT ) kovanın sızıntı yapacağı miktarı hesaplar . Bu, esasen sızıntı sürecini (gerçek zamanlı) bir saatle değiştirmektir, ki bu çoğu donanım uygulamasında zaten vardır.

İşlemin bir RTC ile bu şekilde değiştirilmesi, ATM hücrelerinin sabit bir uzunluğa (53 bayt) sahip olması nedeniyle mümkündür, bu nedenle T her zaman sabittir ve yeni kova seviyesinin (veya TAT'ın ) hesaplanması herhangi bir çarpma veya bölme içermez. Sonuç olarak, hesaplama yazılımda hızlı bir şekilde yapılabilir ve bir hücre geldiğinde token paketinin gerçekleştirdiğinden daha fazla işlem yapılırken, görevi gerçekleştiren bir işlemcideki yük açısından ayrı bir güncelleme işleminin olmaması bunu telafi etmekten daha fazlası. Dahası, kova güncellemesinin bir simülasyonu olmadığından, bağlantı durgunken hiçbir işlemci yükü yoktur.

Bununla birlikte, GCRA, değişken uzunluklu paketlere sahip bir protokolde (Bağlantı Katmanı PDU'ları) bir paket / kare hızı yerine bir bant genişliğini sınırlamak için kullanılacaksa, çarpma işlemini içerecektir: temelde pakete eklenen değer (veya TAT'a göre) her bir uygun paket için paket uzunluğuyla orantılı olması gerekirdi: GCRA'da açıklandığı gibi, kovadaki su zaman birimlerine sahipken, değişken uzunluklu paketler için, aşağıdakilerin ürünü olan birimlere sahip olması gerekirdi. paket uzunluğu ve süresi. Bu nedenle, hızlı bir erişim olmadan değişken uzunluk paketlerin bant genişliği sınırı GCRA uygulanması, (bir in gibi donanım çarpanı FPGA ) pratik olmayabilir. Bununla birlikte, uzunlukları göz ardı edildiği sürece, paket veya hücre oranını sınırlamak için her zaman kullanılabilir.

Çift Sızdıran Kova Denetleyicisi

GCRA'nın birden çok uygulaması aynı anda bir VC'ye veya bir VP'ye , örneğin bir Değişken Bit Hızı (VBR) VC'ye uygulanan ikili bir kova trafiği denetleme veya trafik şekillendirme işlevinde uygulanabilir. Bu, bu VBR VC'deki ATM hücrelerini Sürekli Hücre Hızı (SCR) ve Maksimum Burst Boyutu (MBS) ile sınırlayabilir. Aynı zamanda, ikili sızıntılı kova trafiği denetleme işlevi, çoğuşmalardaki hücrelerin oranını bir Zirve Hücre Hızına (PCR) ve bir maksimum Hücre Gecikmesi Varyasyon toleransına (CDVt) sınırlayabilir: bkz. Trafik Sözleşmesi # Trafik Parametreleri .

Image
Şekil 2: Bir VBR bağlantısında örnek hücre zamanlamaları

Bu, en iyi, bir VBR VC üzerindeki iletimin, sabit uzunlukta mesajlar (CPCS-PDU'lar) biçiminde olduğu ve bazı sabit aralıklarla veya Mesajlar Arası Zaman (IMT) ile iletildiği ve birkaç hücreyi, MBS'yi aldığı durumlarda anlaşılabilir. onları taşımak için; ancak, VBR trafiğinin açıklaması ve ikili sızdıran bölümün kullanımı bu tür durumlarla sınırlı değildir. Bu durumda, IMT aralığı üzerinden ortalama hücre hızı SCR'dir (= MBS / IMT). Bireysel mesajlar, fiziksel bağlantı ( 1/1 ) ve SCR için bant genişliği arasında herhangi bir değer olabilen bir PCR'de iletilebilir . Bu, mesajın, mesaj örnekleri arasındaki boşluklarla mesaj aralığı IMT'den daha küçük bir periyotta iletilmesine izin verir.

Image
Şekil 3: CLP = 0 + 1 hücre akışı için Sürdürülebilir Hücre Hızı (SCR) ve Pik Hücre Hızı (PCR) için referans algoritması

İkili sızdıran kovada, 1 / SCR emisyon aralığı ve mesajdaki hücre sayısı olan bir MBS veren bir sınır değeri τ SCR ile trafiğe bir kepçe uygulanır : bkz. Sızdıran kova # Maksimum patlama boyutu . İkinci kova 1 / PCR emisyon aralığına ve bağlantı yolunda o noktaya kadar CDV'ye izin veren bir sınır değeri τ PCR'ye sahiptir: bkz. Sızdıran kova # Gecikme Değişimi Toleransı . Hücrelere daha sonra maksimum MBS hücresine kadar τ PCR titreşimi ile PCR'de izin verilir . Bir sonraki MBS hücresi patlamasına, ilkinden sonra MBS x 1 / SCR başlatılarak izin verilecektir.

Hücreler 1 / PCR'den daha yüksek bir hızda bir patlamaya ulaşırsa (MBS hücreleri (MBS - 1) / PCR - τ PCR'den daha az gelir) veya MBS hücrelerinden daha fazlası PCR'ye ulaşırsa veya MBS hücresi patlamaları gelirse IMT'den daha yakın bir mesafede, ikili sızdıran kova bunu algılayacak ve bağlantıyı uygun hale getirmek için yeterli hücreyi geciktirecek (şekillendirme) veya düşürecek veya önceliklerini kaldıracak (denetleme).

Şekil 3, her iki Hücre Kaybı Önceliği (CLP) değerleri 1 (düşük) ve 0 (yüksek) hücre akışları için SCR ve PCR kontrolü için referans algoritmasını, yani her iki öncelik değerine sahip hücrelerin aynı muamele gördüğü durumlarda gösterir. Yüksek ve düşük öncelikli hücrelerin farklı şekilde işlendiği benzer referans algoritmaları da Ek A ila I.371'de verilmektedir.

Ayrıca bakınız

Referanslar