NL8802884A - Werkwijze en stelsel voor het overdragen van gebufferde datapakketten via een communicatienetwerk. - Google Patents

Werkwijze en stelsel voor het overdragen van gebufferde datapakketten via een communicatienetwerk. Download PDF

Info

Publication number
NL8802884A
NL8802884A NL8802884A NL8802884A NL8802884A NL 8802884 A NL8802884 A NL 8802884A NL 8802884 A NL8802884 A NL 8802884A NL 8802884 A NL8802884 A NL 8802884A NL 8802884 A NL8802884 A NL 8802884A
Authority
NL
Netherlands
Prior art keywords
access unit
data packet
bus
request
queue
Prior art date
Application number
NL8802884A
Other languages
English (en)
Original Assignee
Philips Nv
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Nv filed Critical Philips Nv
Priority to NL8802884A priority Critical patent/NL8802884A/nl
Priority to US07/433,637 priority patent/US5038346A/en
Priority to EP89202902A priority patent/EP0370568B1/en
Priority to DE68917562T priority patent/DE68917562T2/de
Priority to CA002003219A priority patent/CA2003219C/en
Priority to JP29943789A priority patent/JP2995414B2/ja
Publication of NL8802884A publication Critical patent/NL8802884A/nl

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2852Metropolitan area networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Small-Scale Networks (AREA)

Description

Werkwijze en stelsel voor het overdragen van gebufferde datapakketten via een communicatienetwerk.
De uitvinding heeft betrekking op een werkwijze en een stelsel voor het overdragen van datapakketten in tijdsloten via een communicatienetwerk met een eerste en een tweede unidirectionele bus, welke bus-sen tegengesteld gericht zijn, en met een aantal toegangseenheden die tussen de bussen zijn aangesloten, welke werkwijze stappen omvat voor het vormen van een gedistribueerde wachtrij van datapakketten door in elke toegangseenheid de datapakketten die daarin ter overdracht over de eerste unidirectionele bus worden ontvangen in een wachtrij te plaatsen, door elke toegangseenheid een verzoekvlag te laten uitzenden over de tweede unidirectionele bus voor elk datapakket in de wachtrij in de respectievelijke toegangseenheid, in elke toegangseenheid het totaal bij te houden van alle verzoekvlaggen die deze toegangseenheid over de tweede unidirectionele bus passeren, en een datapakket uit de wachtrij in een toegangseenheid te laten uitzenden indien een vooraf bepaald aantal lege tijdsloten deze toegangseenheid over de eerste bus heeft gepasseerd.
Een werkwijze van dit type is beschreven in de internationale octrooiaanvrage WO 86/03639. Volgens deze uit de stand der techniek bekende werkwijze wordt een verzoekvlag voor een datapakket uitgezonden over de tweede bus bij de aankomst van het betreffende datapakket aan de kop van de wachtrij in de toegangseenheid. Tegelijkertijd wordt de momentane verzoektellerwaarde geladen in een aftelteller waarna de verzoekteller wordt teruggesteld. Daarna begint de verzoekteller opnieuw het aantal verzoekvlaggen, dat over de tweede bus passeert, te accumuleren terwijl de toegansgeenheid voor elk leeg tijdslot dat op de eerste bus wordt gedetecteerd een aftel signaal genereert voor de aftelteller. Het eerste lege datapakket dat door de toegansgeenheid wordt gedetecteerd nadat de aftelteller een vooraf bepaalde eindwaarde (0) heeft bereikt wordt door de toegansgeenheid gebruikt over het overdragen van het datapakket over de eerste bus. Als de wachtrij in de toegansgeenheid tenminste nog een datapakket ter uitzending bevat, dan wordt de nieuwe momentane verzoektellerwaarde geladen in de aftelteller en de hele procedure wordt herhaald totdat het laatste datapakket in de wachtrij is overgedragen. Als er geen verdere datapakketten meer in de wachtrij aanwezig zijn dan blijft de verzoekteller nog steeds de passerende verzoekvlaggen, die door stroomafwaartse toegangseenheden worden uitgezonden, accumuleren maar wordt tegelijkertijd telkens in waar de verlaagd voor elk leeg tijdslot dat in stroomafwaartse richting over de eerste bus passeert. Daarmee houdt de toegansgeenheid het totaal bij van alle nog aanwezige en nog niet beantwoorde verzoekvlaggen, uitgezonden door stroomafwaartse toegangseenheden.
Volgens deze werkwijze moet elk datapakket eerst door de wachtrij in een toegansgeenheid schuiven. Als het datapakket de kop van de wachtrij bereikt dan moet het datapakket nog wachten op het passeren van een aantal lege tijdsloten, aangevraagd door stroomafwaartse toegangseenheden, voordat het datapakket kan worden overgedragen. Er wordt geen rekening gehouden met de lengte van de wachtrij in een toegangs-eenheid. Dat betekent dat de periode tussen de aankomsttijd van een datapakket in een toegansgeenheid en het tijdstip waarop dit datapakket werkelijk wordt overgedragen voor een toegansgeenheid met verhoudingsgewijs weinig verkeer aanzienlijk korter is dan voor een toegangseen-heid met verhoudingsgewijs druk verkeer. Het is verder in de praktijk gebleken dat de wachtperiode voor datapakketten die aankomen in een toegangseenheid op een relatief korte afstand van de tijdslotgenerator gemiddeld aanzienlijk korter is dan de wachttijd voor datapakketten die aankomen in een toegansgeenheid op grotere afstand van de tijdslotgenerator.
De significante variaties in de wachtperiode voor een datapakket tussen de tijd van aankomst van het datapakket in een toegansgeenheid en de tijd van overdracht, afhankelijk van de verkeersdichtheid in de respectievelijke toegansgeenheid en de fysische positie van deze toegangseenheid kan problemen veroorzaken. In veel toepassingen is het bovendien wenselijk om de "jitter" te minimaliseren, d.w.z. het verschil in wachttijd tussen twee opeenvolgende datapakketten die binnenkomen in dezelfde toegangseenheid. Derhalve wordt het in veel gevallen in stelsels van dit type als voordeel beschouwd indien de werkwijze functioneert in overeenstemming met het "eerste in/ eerste uit" principe. Het handhaven van een strikt eerste-in/eerste-uit principe impliceert dat de wachttijd voor elk datapakket niet afhankelijk is van de fysische lokatie van de toegansgeenheid waaraan het wordt toegevoerd en alleen afhankelijk is van de verkeersdichtheid van het stelsel als geheel. Als de dichtheid toeneemt dan zal ook de wachttijd voor elk pakket evenredig toenemen. Bovendien is het strikte eerste-in/eerste-uit principe ook een strategie waarmee de bovengenoemde jitter wordt geminimaliseerd.
De onderhavige uitvinding heeft nu ten doel een werkwijze van het in de aanhef genoemde type zodanig uit te voeren dat een strikt eerste- in/eerste-uit principe wordt gehandhaafd.
In overeenstemming met deze doelstelling wordt een werkwijze voor het overdragen van datapakketten in tijdsloten via een communicatienetwerk van het in de aanhef genoemde type nu gekenmerkt doordat op het tijdstip waarop ene verder datapakket in een toegangseenheid binnenkomt en wordt toegevoegd aan de daarin aanwezige wachtrij een verzoekvlag wordt uitgezonden over de tweede bus door de genoemde toegangseenheid en dat het genoemde verdere datapakket door deze toegangseenheid in het eerste lege tijdslot op de eerste bus wordt uitgezonden nadat een aantal vrije tijdsloten op de eerste bus de toegangseenheid is gepasseerd, welk aantal vrije tijdsloten gelijk is aan het totale aantal datapakketten in de gedistribueerde wachtrij op het tijdstip van aankomst van het verdere datapakket in de genoemde toegangseenheid, zodat voorafgaand aan het uitzenden van het verdere datapakket alleen die datapakketten worden uitgezonden (eerste-in/eerste-uit principe).
Door een verzoekvlag uit te zenden voor een verder datapakket op het tijdstip waarop dit verdere datapakket wordt toegevoegd aan de wachtrij in een toegansgeenheid hebben alle datapakketten die al reeds in een wachtrij aanwezig waren in willekeurig een van de toegangseenhe-den een hogere prioriteit ten opzichte van dit verdere datapakket, terwijl echter alle datapakketten die binnenkomen in willekeurig welke toegangseenheid na dit verdere datapakket een lagere prioriteit bezitten. Met andere woorden, het eerste-in/eerste-uit principe wordt strikt gehandhaafd.
Om voor elk verder datapakket bij te houden hoe groot het totaal aantal datapakketten is dat al reeds in de gedistribueerde wachtrij aanwezig was op het tijdstip van aankomst van het genoemde verdere datapakket is het nodig om aan dit verdere datapakket op het tijdstip waarop het binnenkomt in de toegansgeenheid en aan de daarin aanwezige wachtrij wordt toegevoegd, een waarde toe te voegen die gelijk is aan het aantal verzoekvlaggen dat door de genoemde toegansgeenheid is gedetecteerd sinds de aankomst van het laatste datapakket voorafgaand aan het genoemde verdere datapakket.
De uitvinding heeft niet alleen betrekking op een werkwijze voor het overdragen van datapakketten maar heeft ook betrekking op een stelsel voor het uitvoeren van een dergelijke werkwijze. In overeenstemming met de uitvinding is een stelsel voor het overdragen van datapakketten in tijdsloten via een communicatienetwerk met een eerste en een tweede unidirectionele bus, welke bussen tegengesteld gericht zijn, en met een aantal toegangseenheden die tussen de bussen zijn aangesloten, welk stelsel in elke toegangseenheid voorzien is van een verzoekvlagteller die zodanig is aangesloten dat de tellërstand met 1 wordt opgehoogd voor elke verzoekvlag die over de tweede bus passeert, een aftel teil er die zodanig is aangesloten dat, vanaf een aanvankelijk vooringestelde waarde, de tellerstand tot aan een vooraf bepaalde eindwaarde telkens met 1 wordt verminderd voor elk vrij tijdslot dat over de eerste bus passeert, een wachtrijbuffer voor het in een wachtrij plaatsen van de pakketten die in de toegangseenheid worden ontvangen voor overdracht over de eerste bus, en een logische interface, ontworpen voor het zenden van verzoekvlaggen voor elk datapakket in de wachtrijbuffer en voor het initiëren van de transmissie van het datapakket aan de kop van de wachtrij nadat de aftelteil er de genoemde vooraf bepaalde eindwaarde heeft bereikt en voor het herladen van de genoemde aftelteiler op basis van een waarde, die in de verzoekvlagteller is geaccumuleerd, gekenmerkt door de wachtrijbuffer zodanig is uitgevoerd dat in combinatie met elk datapakket een toegevoegde waarde kan worden opgeslagen en door de buffer kan worden geschoven, en dat de logische interface zodanig is uitgevoerd dat een verzoekvlag wordt uitgezonden over de tweede bus op het tijdstip waarop een verder datapakket aankomt in de toegangseenheid, het verdere datapakket in de wachtrijbuffer wordt opgeslagen in combinatie met de huidige geaccumuleerde waarde in de verzoekteller, de verzoekteller daarna zodra het betreffende datapakket de kop van de wachtbuffer in de toegangseenheid heeft bereikt wordt teruggesteld en de aftel teil er wordt vooringesteld op de waarde die aan een datapakket in de wachtrijbuffer is toegevoegd.
De uitvinding zal nu in meer detail worden beschreven met verwijzing naar de bijgaande tekeningen.
Figuur 1 illustreert schematisch een communicatienetwerk waarin de uitvinding kan worden toegepast.
Figuur 2 illustreert schematisch een van de toegansgeenheden in het netwerk volgens figuur 1, functionerend in overeenstemming met de eerder genoemde, uit de stand der techniek bekende werkwijze.
Figuur 3 illustreert een uitvoeringsvoorbeeld van een toegangseenheid die functioneert in overeenstemming met de uitvinding.
Figuur 4 illustreert een meer gedetailleerde uitvoeringsvorm van de logische interface 34 uit figuur 3.
Figuur 1 illustreert een communicatienetwerk omvattende een aantal ingangsverbindingen, aangeduid met 1, 2 en 3, elk verbonden met een respectievelijke toegangseenheid 12, 14, 16. De toegangseenheden zijn aangesloten op twee unidirectionele bussen A en B die tegengesteld ge- richt zijn. Het ene uiteinde van de bus A is verbonden inet een tijd-slotgenerator 10 die een continue opeenvolging van tijdsloten op de bus A definieert. Datapakketten met een vooraf bepaald formaat, aangepast aan de tijdslotdimensionering die in het stelsel wordt gebruikt, kunnen via een van de ingangsverbindingen 1, 2 en 3 worden toegevoerd en kunnen verder worden getransporteerd over de bus A in een van deze tijdsloten op een wijze die nog verder zal worden verklaard met verwijzing naar de navolgende figuren. De bus B zal worden gebruikt voor het uitzenden van verzoeksignalen vanaf stroomafwaartse toegangseenheden terug naar de stroomopwaartse toegangseenheden om aan deze laatstgenoemde eenheden aan te geven dat een stroomafwaartse toegangseenheid wacht op een vrij tijdslot om daarin een datapakket in te voegen.
Met verwijzing naar figuur 2 zal allereerst een korte verklaring worden gegeven omtrent het functioneren van de werkwijze uit de stand der techniek, die in detail beschreven is in de internationale octrooiaanvrage WO 86/03639. In figuur 2 zijn slechts enkele van de hardwarecomponenten binnen een van de toegansgeenheden geïllustreerd, namelijk alleen die componenten die nodig zijn om het functioneren van deze toegangseenheid in meer detail te verklaren.
Zoals getoond is in figuur 2 omvat de toegangseenheid een verzoek-teller 20, een aftel telIer 22 en een logische interface 24, die op de geïllustreerde wijze aangesloten zijn tussen de twee bussen A en B. De bus A wordt gebruikt voor het transporteren van datapakketten in vooraf bepaalde tijdsloten in een stroomafwaartse richting terwijl de bus B wordt gebruikt voor het transporteren van verzoeksignalen in een stroomopwaartse richting. Datapakketten worden toegevoerd via niet geïllustreerde middelen aan de logische interface 24.
De ontvangen datapakketten worden door de logische interface 24 in een wachtrij geplaatst in de wachtrijbuffer 26 in de volgorde waarin ze door de toegansgeenheid worden ontvangen. Daarna zal de toegansgeenheid trachten deze datapakketten in de wachtrij de een na de ander uit te zenden op de volgende wijze. Telkens wanneer een datapakket de kop van de wachtrij bereikt zal de logische interface 24 een verzoeksignaal uitzenden opwaarts over de bus B naar alle andere toegansgeenheden die stroomopwaarts gepositioneerd zijn. In elk van deze stroomopwaartse toegangseenheden wordt dit verzoeksignaal ontvangen en gebruikt voor het ophogen van de verzoekteller 20. Onder besturing van de tijdslotge-nerator 10 wordt een continue stroom van tijdsloten overgedragen over de bus A en telkens wanneer een leeg tijdslot een toegangseenheid passeert wordt de stand van de verzoekteller 20 daarin met 1 verlaagd.
met 1 verlaagd. Door de teller te verlagen wordt herkend dat het passerende tijdslot dienst zal doen voor een van de stroomafwaartse toe-gangseenheden die wacht om een datapakket te kunnen overdragen. Het zal duidelijk zijn dat de momentane waarde in de verzoekteller 20 het aantal verzoeken aangeeft dat afkomstig is van stroomafwaartse toegangseenheden die erop wachten tot een leeg tijdslot op de bus A passeert. Nadat een corresponderend aantal lege tijdsloten op de bus A is gepasseerd is het de beurt van de beschouwde toegangseenheid om het datapakket aan de kop van zijn eigen wachtrij uit te zenden.'Voor dat doel wordt de momentane waarde in de verzoekteller 20 geladen in de aftel-teller 22 onder besturing van een signaal van de logische interface 24, simultaan met het uitzenden van het verzoeksignaal. Daarna wordt de verzoekteller 20 teruggesteld op 0 en begint opnieuw de verzoekvlaggen te accumuleren. De stand in de aftel teil er wordt telkens met 1 verlaagd voor elk leeg tijdslot dat over de bus A passeert en de verzoekteller 20 zal telkens met 1 worden opgehoogd voor elk verzoek dat opwaarts over de bus B passeert. Gedurende de periode waarin de aftel tel Ier in actie is wordt de verzoekteller alleen opgehoogd. Als de aftelteller de nulstand bereikt dan kan de logische interface 24 het eerste lege tijdslot dat op de stroomafwaartse bus A passeert benutten voor het uitzenden van het datapakket vanaf de koppositie in de wachtrijbuffer 26. Als de toegangseenheid daarna nog een ander datapakket gereed heeft om uit te zenden dan wordt de bovengenoemde procedure herhaald gebruikmakend van de dan momentane waarde in de verzoekteller 20.
Zoals in het bovenstaande reeds is verklaard heeft deze uit de stand der techniek bekende werkwijze voor het behandelen van de data-pakketten die via een aantal ingangsverbindingen worden toegevoerd aan een transmissiebus een aantal nadelen. Een eerste nadeel is het feit dat de vertraging tussen de tijd van aankomst van een datapakket in de toegangseenheid en de tijd waarop dit pakket wordt uitgezonden over de bus A, een aanzienlijke variatie vertoont per individuele ingangsver-binding afhankelijk van de relatieve wachtrij!engten in de verschillende toegangseenheden, d.w.z. afhankelijk van de relatieve tijd die in de verschillende toegangseenheden nodig is om de kop van de wachtrij daarin te bereiken. Verder zullen de vertragingen die twee opeenvolgende datapakketten ondergaan, die binnenkomen in dezelfde toegangseenheid (jitter) eveneens een aanzienlijke variatie onderling vertonen afhankelijk van het aantal verzoeken dat door stroomafwaartse toegangseenheden wordt gegenereerd tussen de twee momenten waarop deze datapakketten bij de kop van de wachtrij arriveren.
In veel gevallen zal het de voorkeur verdienen om een strikt "eer-ste-in/eerste-uit" protocol te handhaven dat niet behept is met de bovengenoemde nadelen, en de uitvinding geeft nu aan op welke wijze een dergelijk protocol (aangeduid met FIFO in de engelstalige literatuur) kan worden geïmplementeerd zodanig dat de datapakketten zullen worden uitgezonden over de uitgangsbus in de volgorde waarin ze bij willekeurig een van de toegangseenheden arriveren. Details van de uitvinding zullen nu met verwijzing naar figuur 3 worden besproken.
De componenten van het stelsel nodig voor het implementeren van de uitvinding zijn gedeeltelijk identiek aan de componenten van het stelsel dat geïllustreerd is in figuur 2. De in de figuur geïllustreerde toegangseenheid omvat een verzoekteller 30, een aftel tel Ier 32 en een logische interface 34. De wachtrijbuffer 36 is geïllustreerd infiguur 3 tussen de verzoekteller 30 en de aftel tel Ier 32. Elk adres van de wachtrijbuffer 36 heeft een vergrote capaciteit, voldoende om niet alleen het uit te zenden datapakket tijdelijk op te slaan, maar ook om in combinatie met elk datapakket een toegevoegde waarde op te slaan zoals nog verder zal worden verklaard.
Op dezelfde wijze als in figuur 2 wordt de verzoekteller 30 opgehoogd voor elke verzoekvlag die uitgezonden wordt in stroomopwaartse richting door een van de stroomafwaartse toegangseenheden over de bus B en de tellerstand wordt verlaagd voor elk leeg tijdslot dat over de bus A vanaf de tijdslotgenerator (die in figuur 3 niet is getoond) in stroomafwaartse richting passeert.
Als een uit te zenden datapakket arriveert in de toegangseenheid dan zal de logische interface 34 ervoor zorgen dat dit datapakket tijdelijk wordt opgeslagen in de wachtrijbuffer 36. Tezamen met het datapakket wordt de momentane waarde in de verzoekteller 30 opgeslagen in de wachtrijbuffer 36 waarna de logische interface 34 de verzoekteller 30 zal terugstellen op 0. Verder zal een verzoekvlag worden gegenereerd en opwaarts worden uitgezonden over de bus B. Deze procedure wordt herhaald voor elk volgend datapakket dat via deze toegangseenheid over de bus A moet worden uitgezonden.
Bij aankomst van een datapakket aan de kop van de wachtrijbuffer 36 wordt de waarde, die aan dit datapakket is toegevoegd en in combinatie met dit datapakket is opgeslagen, uitgelezen uit de databuffer en gebruikt om de afteltelIer 32 voor in te stellen. Vanaf dat moment hebben passerende lege tijdsloten op de bus A geen enkele invloed meer op de verzoekteller 30, maar worden alleen gebruikt om de stand van de aftel tel Ier 32 telkens met 1 te verlagen. Zodra de aftel telIer 32 de nul- waarde bereikt wordt een signaal verschaft aan de logische interface 34 * die op zijn beurt het uitzenden van het datapakket aan de kop van de wachtrij 1n de buffer 36 over de bus A zal initiëren.
Als de wachtrijbuffer 36 nog meer pakketten bevat om te worden uitgezonden dan zullen deze pakketten door de wachtrijbuffer schuiven, of er wordt een circulaire aanwijseenheid bijgewerkt, en opnieuw wordt de toegevoegde waarde die gecombineerd is met het pakket dat zich nu aan de kop van de wachtrij bevindt, gebruikt om de aftel telIer 32 voor in te stellen, enz.
Als de wachtrijbuffer 36 geen verdere pakketten meer ter uitzending bevat, dan worden de passerende lege tijdsloten over de bus A opnieuw gebruikt voor het genereren van aftel signa!en naar de verzoektel-ler 30.
Het zal duidelijk zijn dat het toepassen van de werkwijze volgens de uitvinding resulteert in het opwekken van een verzoeksignaal voor elk datapakket op het tijdstip waarop dit arriveert bij een van de toe-gangseenheden van het stelsel. Dat impliceert dat alle datapakketten die al reeds in de wachtrij in een van de toegangseenheden aanwezig waren een hogere prioriteit hebben terwijl ieder verder datapakket, dat later arriveert, een lagere prioriteit zal hebben. Met andere woorden, er wordt een strikt eerste-in/eerste-uit regiem gehandhaafd.
De som van de waarden, toegevoegd in elke toegangseenheid aan de diverse datapakketten in de wachtrijbuffer 36 is gelijk aan het totaal aantal verzoekvlaggen dat uitgezonden is voorafgaand aan de aankomst van het laatste datapakket. Dat impliceert dat inderdaad het laatst ontvangen datapakket moet wachten totdat alle andere datapakketten die al reeds geplaatst waren in een wachtrij in willekeurig een van de toegangseenheden uitgezonden zijn. Het impliceert verder dat alleen door het toevoegen van de momentane verzoektellerwaarde aan elk van de datapakketten een eenvoudig systeem is gecreeerd om het totaal aantal verzoekvlaggen bij te houden dat al uitgezonden is voorafgaand aan de aankomst van een willekeurig datapakket in een toegangseenheid.
Figuur 4 illustreert een meer gedetailleerde uitvoeringsvorm van de logische interface 34, die in hoofdzaak bestaat uit een aantal poorten aangesloten tussen de bus A, de bus B, de verzoekteller 30, de af-telteller 32 en de wachtrijbuffer 36. De signalen die in figuur 4 zijn geïllustreerd kunnen als volgt worden gespecificeerd: AH pakket aan de kop van de wachtrijbuffer ES leeg tijdslot NP nieuw pakket
CZ afteltellerstand = O
RZ verzoektellerstand = 0
Een nieuw pakket zal aan de toegangseenheid worden toegevoerd door middel van de schakeling 40 die slechts schematisch is geïllustreerd. Tezamen met het toevoeren van een nieuw pakket door de schakeling 40 wordt een signaal NP, dat de aankomst van het nieuwe pakket indiceert, gegenereerd en dit signaal NP zal worden gebruikt voor verschillende reeds genoemde doeleinden. Allereerst wordt het signaal NP gebruikt om de momentane stand van de verzoekteller 30 op te slaan in de wachtrij-buffer 36 in combinatie met het nieuwe datapakket, en daarna wordt het gebruikt om de verzoekteller 30 terug te stellen op nul. Verder wordt het signaal NP gebruikt om het aantal inkomende verzoekvlaggen, ontvangen door de verzoekvlagontvanger 41 vanaf de stroomafwaartse toegangs-eenheden via de bus B, met een op te hogen zodat een verhoogd aantal verzoekvlaggen via de bus B stroomopwaarts zal worden overgedragen.
De datapakketten in de wachtrijbuffer 36 zullen geleidelijk aan van rechts naar links in figuur 4 bewegen in de richting van de kop van de wachtrijbuffer. Als een datapakket arriveert aan de kop van de wachtrijbuffer 36 dan wordt een signaal AH gegenereerd, welk signaal ervoor zorgt dat de verzoektellerwaarde, die toegevoegd was aan het betreffende datapakket op het tijdstip waarop dit datapakket door de wachtrijbuffer werd ontvangen, wordt geladen in de aftelteller 32. Vanaf dat moment zal de stand in de aftelteller 32 telkens met 1 worden verminderd bij elk leeg tijdslot dat op de bus A passeert en wel onder invloed van het signaal ES. Dit signaal ES wordt gegenereerd telkens als een leeg tijdslot over de bus A passeert. Het signaal ES wordt toegevoerd aan de aftelteller 32 via de poort 42. De poort 42 wordt gebruikt om het aftel proces te stoppen zodra de aftelteller de nul stand heeft bereikt. Als de aftelteller 32 de nul stand bereikt dan genereert de aftelteller 32 een signaal CZ, dat niet alleen wordt toegevoerd aan de poort 42 om het aftel proces te stoppen maar ook wordt toegevoerd aan twee verdere poorten 43 en 44. In poort 44 wordt het signaal CZ gecombineerd met het reeds genoemde signaal AH (gegenereerd op het tijdstip waarop het respectievelijke pakket de kop van de wachtrijbuffer heeft bereikt) leidend tot een uitgangssignaal van de poort 44 door middel waarvan het pakket kan worden ingevoegd in het eerstvolgende lege tijdslot door middel van de schakeling 45. In de poort 43 wordt het signaal CZ gecombineerd met het signaal RZ van de verzoekteller en het lege tijdslotsignaal ES met als gevolg dat, zolang CZ en RZ aanwezig zijn, lege tijdslotsignalen ES worden gebruikt voor het in stand verlagen van de verzoekteller 30. Zolang echter de wachtrijbuffer nog verdere data-pakketten ter uitzending bevat, zal de aftel tel Ier 32 direct worden herladen met de waarde die toegevoegd is aan het nieuwe uit te zenden datapakket, waardoor het signaal CZ zal verdwijnen en waardoor vervolgens de poort 43 zal worden geblokkeerd zodat er geen aftel signalen meer toegevoerd zullen worden aan de verzoekteller 30.
Alhoewel de implementatie van de werkwijze, die beschreven is met verwijzing naar de figuren 3 en 4, iets meer complex is dan de implementatie van de werkwijze uit de stand der techniek, geïllustreerd in figuur 2, wordt door het handhaven van een strikt eerste-in/eerste-uit protocol de kortste maximale vertraging per datapakket verzekerd. Bovendien resulteert een verkeerspiek op een willekeurige ingangsverbin-ding ook in een verkeerspiek op de uitgangsbus. Bij toepassing van de bekende werkwijze, beschreven aan de hand van figuur 2, worden dergelijke verkeerspieken echter geeffend door het busbesturingsmechanisme hetgeen zal leiden tot een veel grotere variatie in de vertraging.
Om een strikte eerste-in/eerste-uit strategie te implementeren verdient het de voorkeur dat de snelheid waarmee de verzoekbits worden uitgezonden over de stroomopwaartse bus voldoet aan de volgende vereisten: 1. De transmissiesnelheid van de verzoekbits moet tenminste zo hoog zijn als de maximaal mogelijke stroom van lege sloten over de stroomafwaartse bus A om de uitgangscapacaiteit volledig te kunnen benutten. Het is niet nodig om een hogere verzoekbit-transmissiesnel heid te selecteren omdat het geen zin heeft om lege tijdsloten aan te vragen met een hogere snelheid dan de snelheid waarmee deze tijdsloten door de tijdslotgenerator kunnen worden opgewekt.
2. De verzoekbitdichtheid in een communicatienetwerk met n in-gangsverbindingen is afhankelijk van de verkeersdichtheid van de (n-1) stroomafwaartse ingangsverbindingen. Met andere woorden, de verzoekbitdichtheid is afhankelijk van de maximale snelheid waarmee momentaan de datapakketten arriveren. Het is natuurlijk voldoende om de verzoekbit-transmissiesnelheid op de stromopwaartse bus B in de pas te laten lopen met de verwachte totale maximale datapakket-aankomstsnelheid van de (n-1) stroomafwaartse ingangsverbindingen.
Wordt uitgegaan van een communicatienetwerk met 16 ingangsverbindingen, elk met een bandbreedte van 1 Gigabit/sec, en een datapakket-lengte van 100 bits, dan ligt de maximale stroom van lege sloten in de orde van 10 lege sloten per microseconde, en de totale maximale momentane ingangsdatapakketsnelheid is op zijn slechtst 160 pakketten/micro- seconde. De maximale verzoekbitsnelheid die op de stroomopwaartse bus B nodig zal zijn bedraagt dus in het slechtste geval 150 Mbit/sec indien de verzoekbits direct bij aankomst van de datapakketten in de ingangs-wachtrijen worden uitgezonden zoals nodig is om een strikte eerste-in/ eerste-uit strategie te handhaven.
De aftel tel Ier 32 moet in staat zijn om telkens elke 100 ns een aftel signaal te verwerken en de verzoekbitteller 30 moet in staat zijn om telkens elke 100 ns een aftel signaal te verwerken en in het slechtste geval te verwerken telkens om de 6 ns.
Het kan voorkomen dat toegangseenheden tegelijkertijd verzoekbits willen uitzenden via de stroomopwaartse bus B. Het lezen en schrijven op deze bus moet echter unidirectioneel zijn. Een geschikte eerste implementatiemethode is het gebruik van een tijdbitslotstructuur voor de stroomopwaartse bus B.
Een ander type toegangsmechanisme voor de verzoekbitbus B is het gebruik van pakketten waarin een aantal verzoekbits op de bus B worden gecombineerd. Als bijvoorbeeld 16 toegansgeenheden in het stelsel aanwezig zijn dan kunnen reeksen van 4 bits synchroon stroomopwaarts worden uitgezonden vanaf de meest stroomafwaartse toegansgeenheid waarin dan de 4 bit reeksen worden gegenereerd. Elke reeks wordt telkens door alle stroomopwaartse toegangseenheden gelezen. Als er in de betreffende toegansgeenheid geen verzoekbit staat te wachten dan wordt de bitreeks ongewijzigd doorgezonden. Als er een verzoekbit staat te wachten dan wordt de waarde van de reeks met 1 opgehoogd voordat de reeks wordt doorgezonden naar de volgende toegangseenheid. Deze werkwijze verzekert betrouwbaarheid ten koste van enig bandbreedteverlies, maar de maximale incremental esnel heid in de verzoekbittellers wordt vier keer kleiner dan in het bovengenoemde geval waarin een tijdbitslotstructuur op de stroomopwaartse bus B wordt gebruikt.

Claims (7)

1. Werkwijze voor het overdragen van datapakketten in tijdsloten via een communicatienetwerk met een eerste en een tweede unidirectionele bus, welke bussen tegengesteld gericht zijn, en met een aantal toe-gangseenheden die tussen de bussen zijn aangesloten, welke werkwijze stappen omvat voor het vormen van een gedistribueerde wachtrij van datapakketten door in elke toegangseenheid de datapakketten die daarin ter overdracht over de eerste unidirectionele bus worden ontvangen in een wachtrij te plaatsen, voor elke toegangseenheid een verzoekvlag te laten uitzenden over de tweede unidirectionele bus voor elk datapakket in de wachtrij in de respectievelijke toegangseenheid, in elke toegangseenheid het totaal bij te houden van alle verzoekvlaggen die deze toegangseenheid over de tweede unidirectionele bus passeren, en een datapakket uit de wachtrij in een toegangseenheid te laten uitzenden indien een vooraf bepaald aantal lege tijdsloten deze toegangseenheid over de eerste bus heeft gepasseerd, met het kenmerk, dat op het tijdstip waarop een verder datapakket in een toegangseenheid binnenkomt en wordt toegevoegd aan de daarin aanwezige wachtrij een verzoekvlag wordt uitgezonden over de tweede bus door de genoemde toegangseenheid en dat het genoemde verdere datapakket door deze toegangseenheid in het eerste lege tijdslot op de eerste bus wordt uitgezonden nadat een aantal vrije tijdsloten op de eerste bus de toegangseenheid is gepasseerd, welk aantal vrije tijdsloten gelijk is aan het totale aantal datapakketten in de gedistribueerde wachtrij op het tijdstip van aankomst van het verdere datapakket in de genoemde toegangseenheid, zodat voorafgaand aan het uitzenden van het verdere datapakket alleen die datapakketten worden uitgezonden (eerste in/ eerste uit principe).
2. Werkwijze voor het overdragen van datapakketten in tijdsloten via een communicatienetwerk volgens conclusie 1, met het kenmerk, dat het totale aantal datapakketten in de gedistribueerde wachtrij wordt bepaald door aan het verdere datapakket, op het tijdstip waarop dit binnenkomt in de toegangseenheid en wordt toegevoegd aan de daarin aanwezige wachtrij, een waarde toe te voegen die gelijk is aan het aantal verzoekvlaggen dat door de toegangseenheid is gedetecteerd sinds de aankomst van het laatste datapakket voorafgaand aan het genoemde verdere datapakket, waarbij de som van alle waarden toegevoegd aan de datapakketten in de wachtrij binnen de toegangseenheid gelijk is aan het totaal aantal datapakketten in de stroomafwaartse toegangseenheden.
3. Werkwijze voor het overdragen van gebufferde datapakketten via een communicatienetwerk volgens conclusie 1 of 2, met het kenmerk, dat nadat een datapakket de kop van de wachtrij in de toegangseenheid heeft bereikt, het betreffende datapakket door de respectievelijke toegangseenheid over de eerste bus wordt overgedragen in het eerste vrije tijd-slot na de passage van een aantal tijdsloten gelijk aan de waarde die aan het betreffende datapakket is toegevoegd.
4. Werkwijze voor het overdragen van datapakketten in tijdsloten via een communicatienetwerk volgens een der voorgaande conclusies, met het kenmerk, dat de verzoekvlaggen worden uitgezonden in de vorm van verzoekbits en dat de snelheid waarmee deze verzoekbits worden uitgezonden over de tweede bus tenminste zo hoog is als de maximale transmissiesnelheid van de tijdsloten over de eerste bus.
5. Werkwijze voor het overdragen van datapakketten via een communicatienetwerk volgens een der conclusies 1-4, met het kenmerk, dat de verzoekvlaggen worden uitgezonden over de tweede bus door middel van reeksen van verzoekbits, waarbij de waarde van een reeks het aantal verzoekvlaggen vertegenwoordigt, welke bitreeksen achtereenvolgens worden ontvangen door elke stroomopwaartse toegangseenheid langs de tweede bus en ofwel ongewijzigd opnieuw worden uitgezonden indien de ontvangende toegangseenheid geen verzoekvlag klaar heeft staan om uitgezonden te worden danwel opnieuw worden uitgezonden na met 1 te zijn verhoogd indien de ontvangende toegangseenheid een verzoekvlag klaar heeft staan om te worden uitgezonden.
6. Werkwijze voor het overdragen van datapakketten in tijdsloten via een communicatienetwerk volgens conclusie 5, met het kenmerk, dat de waarde die wordt vertegenwoordigd door de reeks van verzoekbits op het tijdstip waarop de reeks van verzoekbits wordt ontvangen dooreen toegansgeenheid waarin reeds een verzoekvlag gereed staat voor uitzending, omdat een verder datapakket is toegevoegd aan de wachtrij in de betreffende toegangseenheid, wordt toegevoegd aan dit verdere datapakket in de zin van de bovengenoemde toegevoegde waarde.
7. Stelsel voor het overdragen van datapakketten in tijdsloten via een communicatienetwerk met een eerste en een tweede unidirectionele bus, welke bussen tegengesteld gericht zijn, en met een aantal toe-gangseenheden die tussen de bussen zijn aangesloten, welk stelsel in elke toegangseenheid voorzien is van een verzoekvlagteller die zodanig is aangesloten dat de tellerstand met 1 wordt opgehoogd voor elke verzoekvlag die over de tweede bus passeert, een aftel tel Ier die zodanig is aangesloten dat, vanaf een aanvankelijk vooringestelde waarde, tel- . lerstand tot aan een vooraf bepaalde eindwaarde telkens met 1 wordt verminderd voor elk vrij tijdslot dat over de eerste bus passeert, een wachtrijbuffer voor het in een waehtrij plaatsen van de pakketten die in de toegangseenheid worden ontvangen voor overdracht over de eerste bus, en een logische interface, ontworpen voor het uitzenden van ver-zoekvlaggen voor elk datapakket in de wachtrijbuffer en voor het initiëren van de transmissie van het datapakket aan de kop van de waehtrij nadat de aftel teil er de genoemde vooraf bepaalde eindwaarde heeft bereikt en voor het herladen van de genoemde afteltelIer op basis van een waarde, die in de verzoekvlagteller is geaccumuleerd, met het kenmerk, dat de wachtrijbuffer zodanig is uitgevoerd dat in combinatie met elk datapakket een toegevoegde waarde kan worden opgeslagen en door de buffer kan worden geschoven, en dat de logische interface zodanig is uitgevoerd dat een verzoekvlag wordt uitgezonden over de tweede bus op het tijdstip waarop een verder datapakket binnenkomt in de toegangseenheid, het verdere datapakket in de wachtrijbuffer wordt opgeslagen in combinatie met de huidige geaccumuleerde waarde in de verzoekteller, de ver-zoekteller daarna, zodra het betreffende datapakket de kop van de wachtrijbuffer in de toegangseenheid heeft bereikt wordt teruggesteld en de aftel telIer wordt vooringesteld op de waarde die aan een datapakket in de wachtrijbuffer is toegevoegd.
NL8802884A 1988-11-22 1988-11-22 Werkwijze en stelsel voor het overdragen van gebufferde datapakketten via een communicatienetwerk. NL8802884A (nl)

Priority Applications (6)

Application Number Priority Date Filing Date Title
NL8802884A NL8802884A (nl) 1988-11-22 1988-11-22 Werkwijze en stelsel voor het overdragen van gebufferde datapakketten via een communicatienetwerk.
US07/433,637 US5038346A (en) 1988-11-22 1989-11-08 Method and system for transmitting data packets buffered in a distributed queue on a communication network
EP89202902A EP0370568B1 (en) 1988-11-22 1989-11-16 Method and system for transmitting buffered data packets on a communications network
DE68917562T DE68917562T2 (de) 1988-11-22 1989-11-16 Verfahren und System zum Übertragen gepufferter Datenpakete über ein Kommunikationsnetzwerk.
CA002003219A CA2003219C (en) 1988-11-22 1989-11-17 Method and system for transmitting buffered data packets on a communications network
JP29943789A JP2995414B2 (ja) 1988-11-22 1989-11-17 バッファされたデータパケットを通信ネットワーク上に送信する方法及びシステム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL8802884A NL8802884A (nl) 1988-11-22 1988-11-22 Werkwijze en stelsel voor het overdragen van gebufferde datapakketten via een communicatienetwerk.
NL8802884 1988-11-22

Publications (1)

Publication Number Publication Date
NL8802884A true NL8802884A (nl) 1990-06-18

Family

ID=19853275

Family Applications (1)

Application Number Title Priority Date Filing Date
NL8802884A NL8802884A (nl) 1988-11-22 1988-11-22 Werkwijze en stelsel voor het overdragen van gebufferde datapakketten via een communicatienetwerk.

Country Status (6)

Country Link
US (1) US5038346A (nl)
EP (1) EP0370568B1 (nl)
JP (1) JP2995414B2 (nl)
CA (1) CA2003219C (nl)
DE (1) DE68917562T2 (nl)
NL (1) NL8802884A (nl)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2833796B2 (ja) * 1989-10-11 1998-12-09 日本電気株式会社 バス調停装置
US5214645A (en) * 1990-06-06 1993-05-25 At&T Bell Laboratories TDM system and method having time slot request signaling
US5319641A (en) * 1990-12-03 1994-06-07 Echelon Systems Corp. Multiaccess carrier sensing network communication protocol with priority messages
US5420572A (en) * 1990-12-03 1995-05-30 Echelon Corporation Configuration device for use in a networked communication system
US5297143A (en) * 1990-12-03 1994-03-22 Echelon Systems, Corp. Network communication protocol including a reliable multicasting technique
DE69117487T2 (de) * 1991-03-27 1996-10-02 Ibm Verfahren zum Zugriff auf den Übertragungsweg lokaler Netze
US5128937A (en) * 1991-04-17 1992-07-07 Bell Communications Research, Inc. Adaptive bandwidth balancing for distributed queue dual bus networks
US5450547A (en) * 1992-10-01 1995-09-12 Xerox Corporation Bus interface using pending channel information stored in single circular queue for controlling channels of data transfer within multiple FIFO devices
US5832310A (en) * 1993-12-30 1998-11-03 Unisys Corporation Serial I/O channel having dependent and synchronous sources of control data and user defined data
US5475754A (en) * 1994-04-22 1995-12-12 Thomson Consumer Electronics, Inc. Packet video signal inverse transport processor memory address circuitry
US6049541A (en) * 1997-12-04 2000-04-11 Alcatel Usa Sourcing, L.P. Distributed telecommunications switching system and method
US6279044B1 (en) * 1998-09-10 2001-08-21 Advanced Micro Devices, Inc. Network interface for changing byte alignment transferring on a host bus according to master and slave mode memory and I/O mapping requests
US6253260B1 (en) * 1998-10-22 2001-06-26 International Business Machines Corporation Input/output data access request with assigned priority handling
US7194567B2 (en) * 2005-02-24 2007-03-20 International Business Machines Corporation Method and system for ordering requests at a bus interface
US7275125B2 (en) * 2005-02-24 2007-09-25 International Business Machines Corporation Pipeline bit handling circuit and method for a bus bridge
US7234017B2 (en) * 2005-02-24 2007-06-19 International Business Machines Corporation Computer system architecture for a processor connected to a high speed bus transceiver
US7330925B2 (en) * 2005-02-24 2008-02-12 International Business Machines Corporation Transaction flow control mechanism for a bus bridge
US7206886B2 (en) * 2005-02-24 2007-04-17 International Business Machines Corporation Data ordering translation between linear and interleaved domains at a bus interface
US7275124B2 (en) * 2005-02-24 2007-09-25 International Business Machines Corporation Method and system for controlling forwarding or terminating of a request at a bus interface based on buffer availability
US20060190655A1 (en) * 2005-02-24 2006-08-24 International Business Machines Corporation Apparatus and method for transaction tag mapping between bus domains
US7870232B2 (en) 2005-11-04 2011-01-11 Intermatic Incorporated Messaging in a home automation data transfer system
US7640351B2 (en) 2005-11-04 2009-12-29 Intermatic Incorporated Application updating in a home automation data transfer system
US7698448B2 (en) 2005-11-04 2010-04-13 Intermatic Incorporated Proxy commands and devices for a home automation data transfer system
US7694005B2 (en) 2005-11-04 2010-04-06 Intermatic Incorporated Remote device management in a home automation data transfer system
US8775684B1 (en) * 2006-10-30 2014-07-08 Google Inc. Content request optimization
US7657611B2 (en) * 2006-10-30 2010-02-02 Google Inc. Content request optimization
US8306858B2 (en) 2010-07-14 2012-11-06 Google Inc. Consolidated content item request for multiple environments
CN107273053A (zh) * 2017-06-22 2017-10-20 郑州云海信息技术有限公司 一种数据读取的方法与装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4320502A (en) * 1978-02-22 1982-03-16 International Business Machines Corp. Distributed priority resolution system
US4560985B1 (en) * 1982-05-07 1994-04-12 Digital Equipment Corp Dual-count, round-robin ditributed arbitration technique for serial buses
US4532626A (en) * 1982-07-19 1985-07-30 At&T Bell Laboratories Collision avoiding system and protocol for a two path multiple access digital communications system
US4569044A (en) * 1983-05-25 1986-02-04 Case Western Reserve University Distributed data communication system
US4581735A (en) * 1983-05-31 1986-04-08 At&T Bell Laboratories Local area network packet protocol for combined voice and data transmission
US4542502A (en) * 1983-12-30 1985-09-17 At&T Bell Laboratories Reconfigurable collision avoiding system, station and protocol for a two path multiple access digital communications system
ATE82097T1 (de) * 1984-12-03 1992-11-15 Univ Western Australia Protokoll fuer warteschlange.
GB8525591D0 (en) * 1985-10-17 1985-11-20 British Telecomm Communications network
GB8529369D0 (en) * 1985-11-29 1986-01-08 Mark Jon W Integrated voice/data networking
US4774707A (en) * 1986-09-10 1988-09-27 General Electric Company Random access communication system with scheduled data transmission and asynchronous contention scheduling
US4926418A (en) * 1989-04-11 1990-05-15 International Business Machines Corporation Fairness algorithm for full-duplex buffer insertion ring

Also Published As

Publication number Publication date
EP0370568A1 (en) 1990-05-30
JPH02188046A (ja) 1990-07-24
CA2003219C (en) 1999-10-05
CA2003219A1 (en) 1990-05-22
JP2995414B2 (ja) 1999-12-27
EP0370568B1 (en) 1994-08-17
DE68917562D1 (de) 1994-09-22
US5038346A (en) 1991-08-06
DE68917562T2 (de) 1995-03-02

Similar Documents

Publication Publication Date Title
NL8802884A (nl) Werkwijze en stelsel voor het overdragen van gebufferde datapakketten via een communicatienetwerk.
US8135024B2 (en) Method and system to reduce interconnect latency
JP2962673B2 (ja) 通信制御装置
US6078564A (en) System for improving data throughput of a TCP/IP network connection with slow return channel
US8151067B2 (en) Memory sharing mechanism based on priority elevation
US5787071A (en) Hop-by-hop flow control in an ATM network
US6785236B1 (en) Packet transmission scheduling with threshold based backpressure mechanism
EP0381868B1 (en) Method and system for transmitting buffered data packets on a communications network
EP0241113B1 (en) Traffic scheduler for multiple access communication channels
US4616359A (en) Adaptive preferential flow control for packet switching system
US8051197B2 (en) Network congestion management systems and methods
US5886992A (en) Frame synchronized ring system and method
US6249756B1 (en) Hybrid flow control
EP0664629A2 (en) Network bridge
JPH10313342A (ja) パケット送信デジタルネットワークにおける資源割り当て方法および装置
KR20030051433A (ko) 스위칭 시스템
EP0818941A2 (en) Communication links for transmission of data in fixed size packets
JPH0716200B2 (ja) 通信ネツトワークアクセス方法及び装置
JPH07177179A (ja) パケットスイッチ
US8306047B2 (en) Packet switch with separate look ahead, computation, and shift phases
CN118368337A (zh) 无阻塞片上网络的数据传输方法、装置以及存储介质
Kermani et al. A congestion control scheme for window flow controlled computer networks
Suda Protocol architecture of a tree network with collision avoidance switches
Tanno et al. Performance evaluation of high-speed self-token ring LAN
WO2000042745A1 (en) Switching arrangement

Legal Events

Date Code Title Description
A1B A search report has been drawn up
BV The patent application has lapsed