FI103310B - Puskuroinnin toteuttaminen pakettikytkentäisessä tietoliikenneverkossa - Google Patents
Puskuroinnin toteuttaminen pakettikytkentäisessä tietoliikenneverkossa Download PDFInfo
- Publication number
- FI103310B FI103310B FI964579A FI964579A FI103310B FI 103310 B FI103310 B FI 103310B FI 964579 A FI964579 A FI 964579A FI 964579 A FI964579 A FI 964579A FI 103310 B FI103310 B FI 103310B
- Authority
- FI
- Finland
- Prior art keywords
- buffer
- memory location
- queue
- class
- cell
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5649—Cell delay or jitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5651—Priority, marking, classes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
103310
Puskuroinnin toteuttaminen pakettikytkentäisessä tietoliikenneverkossa
Keksinnön ala 5 Keksintö liittyy puskuroinnin toteutukseen pakettikytkentäisessä tietoliikenneverkossa, erityisesti ATM-verkossa, jossa välitettävät paketit ovat vakiomittaisia.
Keksinnön tausta 10 Seuraavan selityksen selventämiseksi määritellään aluksi joitakin jatkossa käytettyjä termejä.
Kytkentämatriisi koostuu useista kytkentäelementeistä (switching element), jotka ovat yleensä keskenään samanlaisia ja jotka on kytketty keskenään tietyn topologian mukaisesti. Alan kirjallisuudessa kytkentämatriisista 15 käytetään myös nimitystä “switching network”, koska kytkentäelementit muodostavat ko. topologian mukaisen verkon. Kytkentämatriisi on siis määritelty, kun on määritelty kytkentäelementit ja niiden väliset kytkennät.
Kytkentäelementit ovat niitä “perusrakennuspalikoita”, joista kytkentämatriisi kootaan kytkemällä useita keskenään samanlaisia kytkentäelement-20 tejä verkkoon.
Kytkimellä (switch) tarkoitetaan sitä kokonaisuutta, joka rakentuu . kytkentämatriisin ympärille. Kytkimellä tarkoitetaan siis mitä tahansa elimiä, , , ·. joilla suoritetaan tietoliikenneverkossa välitettävien signaalien kytkentää. Tässä yhteydessä kytkin on pakettikytkin, koska keksintö koskee pakettivälitteisessä 25 tietoliikenneverkossa, erityisesti ATM-verkossa suoritettavaa puskurointia.
ATM (Asynchronous Transfer Mode) on yhteydellinen (connection-. oriented) pakettikytkentätekniikka, jonka kansainvälinen telealan standardoin- tijärjestö ITU-T on valinnut laajakaistaisen monipalveluverkon (B-ISDN) toteu-’·; . tustekniikaksi ("target solution"). ATM-verkossa on perinteisten pakettiverkko- 30 jen (kuten X.25-verkot) ongelmia poistettu siirtymällä käyttämään lyhyitä, ':· vakiomittaisia paketteja (53 tavua), joita kutsutaan soluiksi (cell). Jokainen solu : koostuu 48 tavun mittaisesta hyötykuormaosasta ja 5 tavun mittaisesta otsi kosta. ATM-verkkoa ei tässä yhteydessä kuvata tämän enempää, koska se ei ole tarpeellista keksinnön ymmärtämisen kannalta. Tarkemman kuvauksen 35 löytää tarvittaessa kansainvälisistä standardeista tai alan oppikirjoista.
2 103310
Kuviossa 1 on esitetty ATM-kytkimen perusperiaate ulkoa päin tarkasteltuna. Kytkimessä on n kappaletta tulojohtoja li...l„ ja m kappaletta läh-töjohtoja Oi...Om. Kutakin tulojohtoa pitkin tulee ATM-kytkimeen 11 soluvitta CS. Soluvirran yksittäisen solun otsikkoa on merkitty viitemerkillä HD. Solut 5 kytketään ATM-kytkimessä tulojohdolta l, lähtöjohdolle Oj ja samalla muunnetaan solun otsikon arvo tulevasta arvosta lähtevään arvoon. Tätä varten on kytkimessä muunnostaulukko 12, jonka avulla mainittu muunnos tapahtuu. Kuten taulukosta havaitaan, kytketään esim. kaikki ne solut, jotka tulevat johdolta h ja joiden otsikon arvo on X, lähtöjohdolle Oi, jolloin niiden otsikko 10 saa samalla arvon K. Eri tulojohdoilla voi esiintyä samoja otsikkoarvoja; esim. tulojohdolta ln tulevat solut, joiden otsikon arvo on myös X kytketään myös lähtöjohdolle Oi, mutta niiden otsikko saa lähtevällä johdolla arvon J.
Kytkimen päätehtävät ovat siis tilakytkentä (kytkentä tulojohdolta halutulle lähtöjohdolle eli reititys) ja “otsikon kytkentä” eli otsikon muunnos. 15 Kuten kuviostakin ilmenee saattaa kaksi solua kuitenkin samanaikaisesti j pyrkiä samalle lähtöjohdolle. Tätä varten täytyy kytkimessä olla puskurointiky- , kyä, jotta tällaisissa tilanteissa ei tarvitsisi tuhota soluja. Kytkimen kolmas -4 päätehtävä onkin puskuroinnin järjestäminen.
; . Esillä oleva keksintö liittyy nimenomaan puskuroinnin toteuttamiseen.
20 Koska keksintö on tarkoitettu nimenomaan ATM-verkkoon, sovelletaan me-! netelmää erityisesti ATM-kytkimen kytkentäelementeissä.
j: ATM-verkkoon voidaan kytkeä sekä vakionopeuksista (CBR, Cons- |tant Bit Rate) dataa että nopeudeltaan vaihtelevaa (VBR, Variable Bit Rate) dataa generoivia liikennelähteitä. ATM-verkko aiheuttaa näiden yhteyksien ► ·* 4 25 kautta kulkeville soluille viiveen vaihtelua (CDV, Cell Delay Variation). Erityisesti nopeudeltaan vaihtelevien liikennelähteiden tapauksessa aiheuttaa suuri m . viivevaihtelu synkronointiongelmia vastaanottimessa. Toisin sanoen, alkupe- 4^ räistä nopeusvaihtelua on hyvin vaikea päätellä vastaanottopäässä sen jäl- _ keen, kun verkko on aiheuttanut viivevaihteluja välitettävään signaaliin. Liial- ··· ’ 30 listen nopeusvaihteluiden tasoittaminen vaatii myös suurta puskurointikapasi- •: * ·: teettia vastaanottimessa.
jf : ATM-verkon aiheuttamien viivevaihtelujen tasoittamiseen tarkoitetut i , e | tunnetut menetelmät ovat perustuneet pääasiassa viiveprioriteettien sovelta miseen. Yhteydet luokitellaan eri luokkiin niiden CDV-vaatimusten suhteen ja 35 tiukat CDV-vaatimukset omaaville yhteyksille varataan omat puskurinsa.
3 103310 Tällaisella puskurilla on korkeampi prioriteetti kuin muiden yhteyksien puskureilla, mikä tarkoittaa sitä, että kaikki tällaisessa puskurissa olevat solut lähetetään eteenpäin ennen kuin matalamman prioriteetin omaavan puskurin sisältämiä soluja välitetään eteenpäin. Matalamman prioriteetin omaavan 5 puskurin ensimmäinen solu välitetään siis eteenpäin vasta, kun korkeamman prioriteetin omaava puskuri on tyhjä.
Edellä kuvattujen tunnettujen ratkaisujen eräänä epäkohtana on se, että laitteistototeutus tulee puskurien osalta sitä monimutkaisemmaksi, mitä suurempi on rinnakkaisten puskurien lukumäärä. Tämä epäkohta korostuu 10 näin ollen erityisesti silloin, kun kytkimessä on useita kytkentäportaita, jolloin myös kytkentäelementtien ja puskurien lukumäärä on suuri.
Keksinnön yhteenveto
Keksinnön tarkoituksena on päästä eroon edellä kuvatuista epäkoh-15 dista ja saada aikaan ratkaisu, jonka avulla viiveen vaihtelu voidaan pitää halutuissa rajoissa hyvin yksinkertaisella puskurointijärjestelyllä.
Tämä päämäärä saavutetaan ratkaisulla, joka on määritelty itsenäi-. : . sissä patenttivaatimuksissa.
Keksinnön ajatuksena on käyttää FIFO-tyyppistä puskuria, josta 20 “normaali liikenne” (eli liikenne, joka ei ole kriittistä viivevaihtelujen suhteen) syötetään läpi tavallista FIFO-periaatetta noudattaen. Tämän “normaali liiken-| teen” lisäksi osa liikenteestä on luokiteltu viivevaihtelujen suhteen kriittiseksi liikenteeksi. Jokaista tällaista luokkaa kohti on puskurin keskellä määrätyssä kohdassa oma syöttökohtansa, johon tuleva solu pyritään syöttämään. Ajatuk-25 sena on siis pyrkiä syöttämään tiettyä luokkaa vastaava solu aina mahdollisimman lähelle ennalta määrättyä kiinteää kohtaa puskurin muodostamassa jonossa, riippumatta siitä, kuinka monta muistipaikkaa mahdollisesti jää tyhjäk- # « · si mainittuun kohtaan syötettävän solun ja jonossa sillä hetkellä viimeisenä olevan solun väliin.
30 Keksinnön mukaisen ratkaisun ansiosta puskurin hallinta on yksin- ·:·' kertaista, sillä sen jälkeen, kun solu on saatu kirjoitettua puskuriin, puskuri . V toimii aivan kuin tavanomainen FIFO-puskuri. Lukumekanismi on siis mahdol-
• I
'" ’ lisimman yksinkertainen; jonon kärjessä olevasta muistipaikasta luetaan solu ulos jokaisessa lähtevässä aikavälissä ja talletettuja datayksiköitä siirretään 35 puskurin kärjessä olevaa muistipaikkaa kohti kunkin yksittäisen lukukerran 4 103310 jälkeen.
Keksinnön edullisimman suoritusmuodon mukaisesti puskurointi toteutetaan ATM-kytkentäelementin ulostulossa ja puskurissa käytetään vain kahta liikenneluokkaa; "normaalia liikennettä”, joka ei ole viivevaihtelujen 5 suhteen kriittistä ja luokkaa, jonka liikenne on määritelty viivevaihtelujen suhteen kriittiseksi. “Normaali liikenne" käyttää puskuria FIFO-periaatteella, toisin sanoen solu talletetaan aina jonon kärjestä lukien ensimmäiseen vapaaseen muistipaikkaan.
10 Kuvioluettelo
Seuraavassa keksintöä ja sen edullisia suoritusmuotoja kuvataan tarkemmin viitaten kuvioiden 2-7 mukaisiin esimerkkeihin oheisissa piirustuksissa, joissa kuvio 1 havainnollistaa ATM-kytkimen perusperiaatetta, 15 kuvio 2 havainnollistaa ATM-kytkimen yhtä kytkentäelementtiä, kuvio 3 esittää yhtä puskuria, jossa käytetään keksinnön mukaista j menetelmää, i kuvio 4 on vuokaavio, joka esittää puskurin tulopuolella suoritettavia i toimenpiteitä, ; 20 kuvio 5 on vuokaavio, joka havainnollistaa puskurin lähtöpuolella • . suoritettavia toimenpiteitä, ’ kuvio 6 havainnollistaa keksinnön mukaista kytkentäelementtiä toi- ΐ minnallisena lohkokaaviona, ja kuvio 7 esittää puskuria, jossa viivevaihtelujen suhteen kriittinen ^ 25 liikenne on jaettu useaan eri luokkaan.
Keksinnön yksityiskohtainen kuvaus '·*·· Kuviossa 2 on havainnollistettu ATM-solmun tai -kytkimen yhden · « * kytkentäelementin yleistä rakennetta. Kytkentäelementin tuloportissa analysoi- • · : · ··· 30 daan tulevan solun sisältämä reititysinformaatio ja solu välitetään oikeaan IL.. ·;·; ulostuloon. Kytkentäelementissä on tätä varten erillinen tulo-ohjain IC (Input i . '.' Controller) jokaista tulojohtoa kohti. Lisäksi kytkentäelementissä on lähtöohjain j “ :: OC (Output Controller) jokaista lähtevää johtoa kohden. Lähtöohjain lähettää « I · » solut ulos kytkentäelementistä. Yhdistävä verkko INW (interconnection net-35 work) kytkee tulo-ohjaimet ja lähtöohjaimet toisiinsa. Jotta solun menettämis- 5 103310 todennäköisyys (cell loss probability) ei nousisi liian suureksi sisäisten kilpailutilanteiden yhteydessä (usea solu pyrkii samassa aikavälissä samaan lähtöön), on kytkentäelementissä oltava myös puskurit. Nämä puskurit ovat tyypillisesti ainakin lähtöohjaimissa OC.
5 Kuviossa 3 on esitetty yksi tällainen puskuri BF, jossa käytetään keksinnön mukaista menetelmää. Tässä esimerkkitapauksessa tuleva liikenne on luokiteltu CDV-vaatimusten suhteen kahteen luokkaan: “normaaliin liikenteeseen”, joka ei ole kriittistä viivevaihtelujen suhteen ja viivevaihtelujen suhteen kriittiseen liikenteeseen. Edellistä kutsutaan jatkossa luokaksi A ja jäl-10 kimmäistä luokaksi B. Kuviossa 3 on puskurin jokaista muistipaikkaa esitetty pystypalkilla. Solut tulevat sisään vasemmalta ja jokaista lähtevää aikaväliä kohti luetaan puskurin kärjessä olevan muistipaikan FML sisältö ja lähetetään siellä ollut solu ulos puskurista (mikäli ko. muistipaikassa oli solu). Jokaisen lukukerran jälkeen siirretään soluja yksi muistipaikka eteenpäin (oikealle).
15 Kuviossa 3 on esitetty mielivaltainen hetkellinen tilanne merkitsemällä harmaalla niitä muistipaikkoja, joissa on luokan A soluja ja vinoviivoituksella niitä soluja, joissa on luokan B soluja. Täyttämättömät pystypalkit kuvaavat tyhjiä muistipaikkoja. Luokkaa B varten on puskurin keskelle määritetty kiinteä syöttökohta FP, johon luokkaan B kuuluva solu syötetään aina, kun kyseinen 20 muistipaikka on vapaa. Mikäli tämä muistipaikka ei ole vapaa, syötetään solu . syöttökohdasta puskurin loppupäähän mentäessä ensimmäiseen vapaaseen ! muistipaikkaan. Jos siis esim. kuvion 3 tilanteessa puskuriin tulee uusi luok- '! kaan B kuuluva solu, se syötetään muistipaikkaan, jota on merkitty viitemerkillä BML. Luokan A solut syötetään sen sijaan aina ensimmäiseen vapaaseen 25 muistipaikkaan. Mikäli puskuriin tulee ainoastaan luokkaan A kuuluvia soluja, puskuri käyttäytyy siis täysin kuten tavanomainen FIFO-puskuri.
Puskurin BF hallintaan liittyy kaksi erillistä prosessia: kirjoitusprosessi ’’·· ja lukuprosessi. Kuviossa 4 on esitetty vuokaavio, joka kuvaa keksinnön mu- • · « v kaisen kirjoitusprosessin kulkua. Kun puskuriin vastaanotetaan solu (vaihe 41), • * ··· 30 tutkitaan ensimmäiseksi (vaihe 42) solun otsikon avulla, onko kysymyksessä ·:··; solu, joka on viivevaihtelun suhteen kriittinen solu (yhteys, jonka liikenne . V kuuluu luokkaan B). Mikäli havaitaan, että solu ei ole tällainen solu (vaan ' kuuluu luokkaan A), etsitään puskurista ensimmäistä vapaata muistipaikkaa jonon alusta (muistipaikasta FML) lukien (vaihe 44). Etsinnän tuloksena joko 35 löydetään ensimmäinen vapaa muistipaikka tai ei löydetä yhtään vapaata 6 103310 muistipaikka, jolloin vaiheessa 46 tiedetään, onko puskurissa vapaata muistipaikkaa. Mikäli haun tuloksena ei löydetty vapaata muistipaikkaa, tuhotaan (discard) solu (vaihe 48). Jos muistipaikka löytyi, talletetaan solu ko. muistipaikkaan (vaihe 47).
5 Mikäli vaiheessa 42 havaitaan, että kysymyksessä on viivevaihtelun suhteen kriittinen solu, etsitään kyseistä luokkaa vastaavasta syöttökohdasta (FP) lukien ensimmäinen vapaa muistipaikka. Haun tuloksena joko löydetään vapaa muistipaikka alueelta, jota rajoittavat syöttökohtaa FP vastaava muistipaikka ja puskurin viimeinen muistipaikka LML tai ko. alueelta ei löydetä yh-10 tään vapaata muistipaikkaa. Mikäli vapaa muistipaikka löytyi ko. alueelta, syötetään solu ko. muistipaikkaan (vaihe 47). Muussa tapauksessa solu tuhotaan (vaihe 48).
Edellä esitettyä menettelyä voidaan varioida luokan A osalta esim. siten, että vapaan muistipaikan etsintää ei uloteta koko puskurin alueelle, vaan 15 se lopetetaan esim. syöttökohdan FP kohdalla.
Kuvio 5 on vuokaavio, joka kuvaa lukuprosessin kulkua. Jokaisessa ! lähtevässä aikavälissä testataan (vaihe 52), onko puskurin ensimmäisessä f muistipaikassa FML solu. Mikäli solu löytyy, lähetetään se eteenpäin (vaihe 4 53). Lähetyksen jälkeen, tai testauksen jälkeen, mikäli solua ei löydetty, siirre- 20 tään kaikkia soluja yhden muistipaikan verran eteenpäin puskurissa (vaihe 54). I- Tämän jälkeen siirrytään odottamaan seuraavaa aikaväliä, jossa em. menet- j ‘ : tely toistetaan. Kuten kuviosta havaitaan, vastaa lukuprosessi täysin FIFO- Ϊ! '; puskurin lukuprosessia.
• I
Huomattakoon vielä, että puskuria ei välttämättä tan/itse toteuttaa 25 fyysisenä jonona, jossa kaikkia soluja siirretään jatkuvasti eteenpäin, vaan puskuri voidaan toteuttaa esim. osoittimilla. Tällöin yksi osoitin voi osoittaa, missä on jonon alku ja jokaisessa seuraavassa muistipaikassa voi olla osoitin, i- '·ί· joka osoittaa, mistä löytyy jonon seuraava solu. Solut muodostavat kuitenkin • 4 « v loogisessa mielessä jonon, jonka päästä luetaan soluja ulos tietyllä tahdilla.
• · y ··* 30 Oleellista on lisäksi se, että tietyn luokan syöttökohta on ajallisesti kiinteässä . ·;.· kohdassa verrattuna jonon kärkeen, josta lukeminen suoritetaan. Toisin sano- ; . V en, aika, joka tarvitaan siirtämään syöttökohtaan syötetty solu ulos puskurista } " r * ; : : ' on oleellisesti vakio.
Kuviossa 6 on esitetty keksinnön mukaisen kytkentäelementin toimin-35 nallinen lohkokaavio. Esimerkki koskee kytkimen tuloreunalla olevaa kytkentä- ί «ΪΞΞ 7 103310 elementtiä. Tulo-ohjaimet muodostuvat tässä tapauksessa kullakin tulojohdolla olevasta lukuyksiköstä RU ja kaikille lukuyksiköille yhteisestä taulukosta TBL, joka sisältää kutakin VPI/VCI-tunnistetta kohden erilaisia parametrejä, jotka määrätään yhteyden muodostamisvaiheessa. Lukuyksikkö lukee kustakin 5 sisääntulevasta solusta VPI/VCI-tunnisteen ja katsoo sen jälkeen taulukosta mm. sitä vastaavan viiveparametrin DP arvon. Viiveparametri DP ilmoittaa, onko ko. yhteys viivevaihtelujen suhteen kriittinen vai ei. Mikäli käytetään edellä esitetyn mukaisesti vain kahta luokkaa, riittää viiveparametriksi yksi bitti, joka on joko päällä tai ei ole päällä. Lisäksi lukuyksikkö hakee taulukosta ko. 10 VPI/VCI-tunnistetta vastaavan reititystunnisteen (routing tag) ja liittää viivepa-rametribitin ja reititystunnisteen soluun. Verkko INW kytkee solun oikeaan lähtöporttiin reititystunnisteen mukaisesti. Lähtöportissa solut syötetään puskurin hallintayksikölle Bmi (i=1...n), joka hoitaa ko. lähtöportissa olevaa puskuria OBFi (i=1... n) kuvien 4 ja 5 mukaisia prosesseja noudattaen.
15 Huomattakoon, että reititystunnisteen ja viiveparametrin liittäminen soluun tapahtuu vain kytkimen tuloreunalla, myöhemmissä portaissa olevat kytkentäelementit ainoastaan lukevat reititystu n nistetta ja viiveparametriä, jotka on liitetty soluun.
Mikäli tuleva liikenne halutaan luokitella useampaan kuin kahteen 20 luokkaan, toisin sanoen, jos käytetään useampaa kuin yhtä “viivevaihteluille kriittistä” luokkaa, sijoitetaan niitä vastaavat syöttökohdat kuvion 7 mukaisesti * ; siten, että luokan, joka on kaikkein kriittisin viivevaihteluille syöttökohta FP1 sijaitsee lähimpänä puskurin viimeistä muistipaikkaa, luokan, joka on toiseksi • i kriittisin viivevaihteluille syöttökohta FP2 sijaitsee toiseksi lähimpänä viimeistä 25 muistipaikkaa, jne. Syöttöpisteistä lähimpänä lukukohtaa on siis se, jonka liikenne on vähiten kriittistä viivevaihteluille. “Normaaliliikenteen” (luokka A) syöttökohta vaihtelee edelleenkin edellä kuvattuun tunnettuun tapaan eli \i. syöttökohta on jonon ensimmäisessä vapaassa muistipaikassa, joka tulee • · · ' vastaan, kun edetään jonon ensimmäisestä muistipaikasta jonon loppuun • · ... 30 päin. Jos luokan A osalta halutaan noudattaa edellä mainittua variaatiota, voitaisiin vapaan muistipaikan etsintä lopettaa esim. ensimmäisen vastaan tulevan syöttökohdan (FP3) kohdalla.
r « ; ’· Keksinnön mukaisella ratkaisulla voidaan tietyn yhteyden viiveen vaihtelu rajoittaa maksimissaan arvoon, joka kuluu siihen, että solu siirtyy 35 puskurin viimeisestä muistipaikasta ko. luokan syöttökohtaa vastaavaan muis- 8 103310 tipaikkaan. Näin ollen sallittu maksimivaihtelu määrää sen, mihin kohtaan puskuria syöttökohta on parasta asettaa.
Viivevaihteluille kriittisten yhteyksien aiheuttama suurin sallittu kuormitus riippuu myös siitä, kuinka monta muistipaikkaa puskurissa on syöttökoh-5 dasta puskurin loppupäähän. Yhteyden hyväksymisprosessin (CAC, Call
Admission Control) tulee ottaa tämä "efektiivinen puskurikoko" huomioon, jotta ei menetetä liikaa soluja.
Käytännössä puskurissa on tyypillisesti 100...200 muistipaikkaa. Käytettäessä vain kahta luokkaa on syöttökohta FP (kuvio 3) tyypillisesti sellai-10 sessa kohdassa, että luokan B syöttöalueen pituus (pituus syöttökohdasta puskurin loppupäähän) on 10...30 prosenttia puskurin kokonaispituudesta, edullisesti noin 20 prosenttia puskurin kokonaispituudesta.
Edellä on esitetty keksinnön mukainen puskurointijärjestely sijoitettuna kytkentäelementtien ulostulopuskureiden yhteyteen. Ratkaisua voidaan 15 kuitenkin soveltaa myös tulopuskureilla varustettujen kytkentäelementtien yhteydessä tai sekä tulo- että lähtöpuskureilla varustetun kytkentäelementin yhteydessä. Lähtöpuskurointi on edullisempaa mm. siksi, että ns. “head-of-] queue blocking” ilmiö esiintyy vain tulopuskuroinnin tapauksessa. (Ilmiö tar koittaa sitä, että tiettyyn ulostuloon menossa oleva solu ei pääse omaan ulos- -t t , , f _: 20 tuloonsa, vaikka se on ainoa ko. ulostuloon menossa oleva solu, koska sen l j edellä jonossa oleva solu ei pääse omaan ulostuloonsa.) T; : Edellä esitettyä periaatetta voidaan myös noudattaa, vaikka pusku- · rointijärjestelyä muutetaankin edellä esitetystä. Puskuri voi esim. olla rengas- : mainen. On myös mahdollista, että jonoa ei siirretä eteenpäin, vaan lukukoh- -T - · » » 25 taa muutetaan jokaisella lukukerralla. Tällöin myös syöttökohta vaihtuu vas-1i taavasti, jotta sen ajallinen etäisyys lukukohtaan nähden pysyy vakiona.
4- Vaikka keksintöä on edellä selostettu viitaten oheisten piirustusten , ^ mukaisiin esimerkkeihin, on selvää, ettei keksintö ole rajoittunut siihen, vaan sitä voidaan muunnella oheisissa patenttivaatimuksissa esitetyn keksinnöllisen 44 11! 30 ajatuksen puitteissa. Periaatteessa on esim. mahdollista käyttää viivekriittisten solujen osalta syöttökohdan edellä olevia tyhjiä muistipaikkoja siinä tapauksessa, että syöttökohtaa vastaava muistipaikka on varattu, eikä jonosta löydy 1Ξ yhtään vapaata muistipaikkaa syöttökohdan jälkeenkään. Tällöin solut voivat I : . kuitenkin mennä väärään järjestykseen, jolloin vastaanottopäässä on suoritet- • ίττ J J 1 ;··: ., 35 tava niiden uudelleenjärjestely. Parempi vaihtoehto onkin mitoittaa puskuri
M
9 103310 sellaiseksi, että todennäköisyys, että syöttökohdan jälkeiseltä alueelta ei löydy yhtään vapaata muistipaikkaa on riittävän pieni. Menetelmä ei myöskään ole välttämättä rajoittunut käytettäväksi kytkentäelementin yhteydessä, vaan sitä voidaan käyttää verkon muissakin osissa, esim. verkon päätelaitteissa. 1
I
« «
Claims (8)
1. Menetelmä puskuroinnin toteuttamiseksi pakettikytkentäisessä tietoliikenneverkossa, jonka menetelmän mukaisesti 5 - vastaanotetaan sisään tulevia datayksiköitä ja talletetaan niitä loogi seen jonoon puskuriin (BF), joka käsittää useita muistipaikkoja, ja - jonon kärjessä olevasta muistipaikasta (FML) luetaan datayksiköitä ulos ennalta määrätyllä tahdilla, tunnettu siitä, että liikenne jaetaan ainakin kahteen eri luokkaan 10 siten, että - yhden luokan datayksiköt talletetaan aina jonon kärjestä lukien ensimmäiseen vapaaseen muistipaikkaan, - muita luokkia varten muodostetaan muistipaikkojen muodostaman jonon keskelle ennalta määrättyihin kohtiin syöttökohdat (FP; FP1...FP3), yksi 15 kutakin muuta luokkaa varten, ja - datayksikkö, joka kuuluu johonkin mainituista muista luokista talletetaan kyseistä luokkaa vastaavaan syöttökohtaan silloin, kun kyseistä syöttö- j kohtaa vastaava muistipaikka on vapaa, ja jonon ensimmäiseen syöttökohdan jälkeiseen vapaaseen muistipaikkaan silloin, kun syöttökohtaa vastaava muis-t 20 tipaikka on varattu.
2. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, f: että liikenne jaetaan kahteen luokkaan, jolloin puskurissa on vain yksi ennalta määrätty syöttökohta (FP).
. 3. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, • · · 25 että liikenne jaetaan useampaan kuin kahteen luokkaan ja syöttökohdat ase-h tetaan siten, että luokan, jolla on tiukimmat vaatimukset viivevaihtelujen suh- teen syöttökohta on lähimpänä jonon viimeistä muistipaikkaa (LML) ja luokan, jolla on väljimmät vaatimukset viivevaihtelujen suhteen syöttökohta on lähim-. pänä jonon ensimmäistä muistipaikkaa (FML).
4. Patenttivaatimuksen 2 mukainen menetelmä, tunnettu siitä, että etäisyys syöttökohdasta puskurin viimeiseen muistipaikkaan on 10...30 Γ prosenttia puskurin kokonaispituudesta. 4~
5. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, 17. että mikäli syöttökohtaa vastaava muistipaikka on varattu, eikä jonosta löydy j - 35 yhtään vapaata muistipaikkaa syöttökohdan jälkeenkään, jätetään solu välit- 11 103310 tämättä eteenpäin.
6. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, että mainitun yhden luokan osalta etsitään ensimmäistä vapaata muistipaikkaa tarvittaessa puskurin viimeiseen muistipaikkaan asti.
7. Patenttivaatimuksen 1 mukainen menetelmä, tunnettu siitä, että mainitun yhden luokan osalta lopetetaan vapaan muistipaikan etsintä ensimmäisen syöttökohdan (FP; FP3) kohdalla, mikäli siihen mennessä ei ole löydetty vapaata muistipaikkaa.
8. Järjestely puskuroinnin toteuttamiseksi pakettikytkentäisessä tieto- 10 liikenneverkossa, joka järjestely käsittää - puskurin (BF), joka käsittää useita muistipaikkoja, joihin talletetut datayksiköt muodostavat loogisen jonon, ja - elimet (OC) datayksiköiden lukemiseksi ulos puskurista ennalta määrätyllä tahdilla, 15 tunnettu siitä, että se käsittää edelleen - elimet (RU, TBL) puskuriin tulevaa solua vastaavan viivevaihteluluo-kan tunnistamiseksi, ja - elimet (BM) solun tallettamiseksi solun viivevaihteluluokkaa vastaavan syöttökohdan (FP; FP1...FP3) ja puskurin loppupään välisellä alueella 20 ensimmäiseen vapaaseen muistipaikkaan. • < · a · « • · f · · 1 a a a 12 103310
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI964579A FI103310B (fi) | 1996-11-15 | 1996-11-15 | Puskuroinnin toteuttaminen pakettikytkentäisessä tietoliikenneverkossa |
EP97911274A EP0935905A1 (en) | 1996-11-15 | 1997-11-11 | Implementation of buffering in a packet-switched telecommunications network |
PCT/FI1997/000683 WO1998023125A1 (en) | 1996-11-15 | 1997-11-11 | Implementation of buffering in a packet-switched telecommunications network |
AU48710/97A AU4871097A (en) | 1996-11-15 | 1997-11-11 | Implementation of buffering in a packet-switched telecommunications network |
US09/301,377 US6219351B1 (en) | 1996-11-15 | 1999-04-27 | Implementation of buffering in a packet-switched telecommunications network |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FI964579A FI103310B (fi) | 1996-11-15 | 1996-11-15 | Puskuroinnin toteuttaminen pakettikytkentäisessä tietoliikenneverkossa |
FI964579 | 1996-11-15 |
Publications (4)
Publication Number | Publication Date |
---|---|
FI964579A0 FI964579A0 (fi) | 1996-11-15 |
FI964579A FI964579A (fi) | 1998-05-16 |
FI103310B1 FI103310B1 (fi) | 1999-05-31 |
FI103310B true FI103310B (fi) | 1999-05-31 |
Family
ID=8547081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FI964579A FI103310B (fi) | 1996-11-15 | 1996-11-15 | Puskuroinnin toteuttaminen pakettikytkentäisessä tietoliikenneverkossa |
Country Status (5)
Country | Link |
---|---|
US (1) | US6219351B1 (fi) |
EP (1) | EP0935905A1 (fi) |
AU (1) | AU4871097A (fi) |
FI (1) | FI103310B (fi) |
WO (1) | WO1998023125A1 (fi) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11167560A (ja) * | 1997-12-03 | 1999-06-22 | Nec Corp | データ転送システム、このシステムに用いるスイッチング回路、アダプタ及びこのシステムを有する集積回路並びにデータ転送方法 |
JP2001060967A (ja) * | 1999-08-23 | 2001-03-06 | Fujitsu Ltd | パケットスイッチ装置 |
US6480911B1 (en) * | 1999-09-23 | 2002-11-12 | At&T Corp. | Grouping class sensitive queues |
DE10062640B4 (de) * | 2000-12-15 | 2006-11-02 | Infineon Technologies Ag | Verfahren zur zeitlichen Steuerung der Ausgabe von Datenpaketen aus Netzknoten, Netzknoten und konfiguriertes Netz |
JP2003124953A (ja) * | 2001-10-15 | 2003-04-25 | Fujitsu Ltd | リング型ネットワークシステム |
US20030101158A1 (en) * | 2001-11-28 | 2003-05-29 | Pinto Oscar P. | Mechanism for managing incoming data messages in a cluster |
US7606158B2 (en) * | 2004-09-24 | 2009-10-20 | Cisco Technology, Inc. | Hierarchical flow control for router ATM interfaces |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5179557A (en) * | 1989-07-04 | 1993-01-12 | Kabushiki Kaisha Toshiba | Data packet communication system in which data packet transmittal is prioritized with queues having respective assigned priorities and frequency weighted counting of queue wait time |
CA2084303C (en) * | 1991-04-10 | 2003-12-09 | Frederik Carel Schoute | Low delay or low loss switch for atm |
SE515178C2 (sv) | 1992-03-20 | 2001-06-25 | Ericsson Telefon Ab L M | Förfaranden och anordningar för prioritering vid bufferthantering i paketnät |
EP0671860A1 (en) | 1994-03-04 | 1995-09-13 | ALCATEL BELL Naamloze Vennootschap | FIFO buffer arrangement with delayed push-out |
US5553061A (en) | 1994-06-27 | 1996-09-03 | Loral Fairchild Corporation | Packet processor having service priority and loss priority features |
US5521916A (en) * | 1994-12-02 | 1996-05-28 | At&T Corp. | Implementation of selective pushout for space priorities in a shared memory asynchronous transfer mode switch |
JPH0936912A (ja) * | 1995-07-14 | 1997-02-07 | Fujitsu Ltd | バッファ制御方式 |
US5822540A (en) * | 1995-07-19 | 1998-10-13 | Fujitsu Network Communications, Inc. | Method and apparatus for discarding frames in a communications device |
SE508328C2 (sv) * | 1995-11-09 | 1998-09-28 | Ericsson Telefon Ab L M | Anordning och metod avseende paketflödeskontroll |
GB2308959A (en) * | 1995-12-29 | 1997-07-09 | Ericsson Telefon Ab L M | Data switching apparatus with fair queuing |
-
1996
- 1996-11-15 FI FI964579A patent/FI103310B/fi active
-
1997
- 1997-11-11 WO PCT/FI1997/000683 patent/WO1998023125A1/en not_active Application Discontinuation
- 1997-11-11 AU AU48710/97A patent/AU4871097A/en not_active Abandoned
- 1997-11-11 EP EP97911274A patent/EP0935905A1/en not_active Withdrawn
-
1999
- 1999-04-27 US US09/301,377 patent/US6219351B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
FI103310B1 (fi) | 1999-05-31 |
WO1998023125A1 (en) | 1998-05-28 |
AU4871097A (en) | 1998-06-10 |
FI964579A (fi) | 1998-05-16 |
EP0935905A1 (en) | 1999-08-18 |
FI964579A0 (fi) | 1996-11-15 |
US6219351B1 (en) | 2001-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5412648A (en) | Packet switching system for forwarding packets from input buffers using idle/busy status of output buffers | |
US5583858A (en) | Asynchronous transfer mode switching device | |
US5987008A (en) | ATM switch | |
EP0858717B1 (en) | Improvements in or relating to an atm switch | |
EP0858718B1 (en) | Improvements in or relating to an atm switch | |
CA2038587C (en) | Controller for distributing loads among call processors | |
US6546011B1 (en) | ATM cell switching system | |
US5949757A (en) | Packet flow monitor and control system | |
FI104672B (fi) | Kytkinjärjestely | |
EP0828403B1 (en) | Improvements in or relating to an ATM switch | |
US6144640A (en) | ATM switch | |
EP0858716B1 (en) | Improvements in or relating to an atm switch | |
FI103310B (fi) | Puskuroinnin toteuttaminen pakettikytkentäisessä tietoliikenneverkossa | |
US6633961B2 (en) | Buffer apparatus with data insertion control function, insertion data controlling method, and data insertion apparatus with data insertion control function | |
KR20040099831A (ko) | 에이티엠 셀 라우팅 방법 |