DATA COMMUNICATIESYSTEEM
De onderhavige uitvinding heeft betrekking op een data communicatiesysteem welke omvat : een pakketschakelnetwerk, een aantal gebruikerketens, en een aantal zender/ontvangerketens elk gekoppeld tussen dit netwerk en minstens één van deze gebruikerketens, waarbij elke zenderketen van een uitgaande zender/ontvangerketen in staat is om pakketten ontvangen van een uitgaande gebruikerketen op dit netwerk over te dragen en waarbij elke ontvangerketen van een zender/ontvangerketen van bestemming gekoppeld is met een gebruikerketen van bestemming die een tijdtelketen omvat om ontvangen pakketten aan een vertraging te onderwerpen.
Een dergelijk systeem is reeds bekend uit het artikel "Analysis and Optimal Design of a Packet-Voice Receiver" door G. Barberis en D. Pazzaglia, gepubliceerd in de IEEE Transactions on Communications, Vol. Com. 28, No. 2, februari 1980, blz. 217-227.
In dit bekend data communicatiesysteem vormt de zender datapakketten uit de spraakperioden, die in een uitgaande gebruikersketen worden opgewekt. Gezien deze spraakperioden van elkaar door stille perioden gescheiden zijn, wordt een stel van onderscheiden reeksen datapakketten voortgebracht. In een eerste uitvoering van dit bekend systeem wordt geen informatie verzameld over de vertraging waaraan de pakketten in het netwerk onderworpen worden en een klok in de ontvangerketen wordt ingesteld in overeenstemming met de klok in de zenderketen een tijdsinterval gelijk aan de hierboven vermelde vertraging na de ontvangst van een eerste pakket van een reeks.
Gezien de netwerkvertraging een willekeurige waarde heeft kan het in een slechtste geval gebeuren, d.w.z. als de netwerkvertraging ondergaan door een eerste pakket van een reeks zeer klein is, dat één of meer van de volgende pakketten van de reeks niet meer op tijd in de ontvanger toekomen omdat ze in het netwerk een te grote vertraging hebben ondergaan. Voor elk van deze pakketten wacht men tot het volledig ontvangen is vooraleer het aan de gebruikerketen van bestemming toe te voeren. Aldus wordt elk van deze pakketten onderworpen aan een bijkomende veranderlijke vertraging, die een nadelige invloed heeft op de werkingskwaliteit van het
<EMI ID=1.1>
netwerkvertraging groter wordt dan het tijdsinterval dat de reeks onder beschouwing scheidt van een volgende in een stel, is het duidelijk dat bits verloren zullen gaan. In het hierboven vermelde artikel is een dergelijk slechtste geval niet beschouwd, misschien omdat een verminderde kwaliteit in het geval van spraak toelaatbaar is en waarschijnlijk vooral omdat het optreden van een dergelijk slechtste geval dan zeer twijfelachtig is omdat het tijdsinterval tussen twee opeenvolgende reeksen pakketten gemiddeld gelijk is aan de duur van elk van deze reeksen, zoals in het artikel is vermeld. Ook heeft het slechts invloed op de betrekkelijk kleine overeenkomstige reeks pakketten en niet op de andere.
Dit zou echter niet het geval zijn indien de reeks pakketten betrekkelijk zeer lang zou zijn en indien de aard van de data onbekend zou zijn en bijvoorbeeld bestaan uit een continu bitstroom van spraak, video of andere data of een mengsel daarvan. Inderdaad, dan zou het verlies van bits niet toelaatbaar zijn gezien deze bits een groot belang zouden kunnen hebben en omdat de verminderde kwaliteit dan de hele reeks pakketten zou beïnvloeden.
Een doelstelling van de onderhavige uitvinding bestaat erin een data communicatiesysteem van het hierboven beschreven type te verschaffen, maar dat een goede werkingskwaliteit heeft onafhankelijk van de aard van de overgedragen data en van de lengte daarvan.
Volgens de uitvinding wordt deze doelstelling bereikt doordat deze vertraging zodanig gekozen is dat met een voorafbepaalde waarschijnlijkheid de fout in een vertraagd pakket altijd kleiner is dan een voorafbepaalde waarde.
Op deze wijze wordt een gewenste werkingskwaliteit verzekerd.
De onderhavige uitvinding heeft eveneens betrekking op een data communicatiesysteem welke omvat :
een pakketschakelnetwerk, een aantal gebruikerketens, en een aantal zender/ontvangerketens die elk een klok bevatten en elk tussen dit netwerk en minstens één van deze gebruikerketens gekoppeld zijn, waarbij elke zenderketen van een uitgaande zender/ontvangerketen in staat is om pakketten die zenderklokpositie-informatie bevatten op dit netwerk over te dragen en waarbij elke ontvangerketen van een zender/ontvangerketen van bestemming in staat is om zijn klok met deze van de zender te synchroniseren in functie van de informatie die met deze pakketten ontvangen wordt.
Een dergelijk data communicatiesysteem is ook uit het hierboven vermeld artikel bekend. Daarin wordt zenderklokpositie in de datapakketten opgenomen zodat databits in de ontvanger verloren kunnen geraken als de klok daarvan met deze van de zender gesynchroniseerd wordt.
Een andere doelstelling van de onderhavige uitvinding bestaat erin een data communicatiesysteem van het laatst beschreven type te verschaffen, maar welke dit nadeel niet vertoont.
Volgens de uitvinding wordt deze doelstelling bereikt doordat hoogstens het laatste van deze pakketten data bevat die naar deze gebruikerketen van bestemming moeten overgedragen worden.
Aldus is er geen gevaar van databits te verliezen gedurende de synchronisatie van de klokken.
De hierboven vermelde en andere doeleinden en kenmerken van de uitvinding zullen duidelijker worden en de uitvinding zelf zal het best begrepen worden aan de hand van de hiernavolgende beschrijving van uitvoeringsvoorbeelden en van de bijbehorende tekeningen waarin :
Fig. 1 een schematisch zicht is van een eerste uitvoering van een data communicatiesysteem volgens de uitvinding; Fig. 2 een tijdsdiagram is dat de werking van deze uitvoering illustreert; Fig. 3 een schematisch zicht is van een tweede uitvoering van dit systeem; Fig. 4 een tijdsdiagram is dat de werking van deze uitvoering illustreert; Fig. 5 een diagram is dat de variatie van de grootte van de buffer BU van Fig. 3 in functie van het aantal klokpositie bevattende pakketten voorstelt; Fig. 6 de vertraging Ts + Tr in functie van Ts toont, waarbij Ts en Tr respektievelijk door DTs en BU van Fig. 3 verschaft worden.
Het in Fig. 1 getoonde data communicatiesysteem
<EMI ID=2.1>
aantal gebruikerketens, zoals UC, gekoppeld is via een zender/ontvangerketen SEND/REC, een bus SMB en een netwerktoegangstussenketen NAI.
De zender/ontvangerketen SEND/REC omvat een zender SEND, een ontvanger REC en een gemeenschappelijke computer CC met een bijbehorende klok CL. Deze computer CC bestuurt zowel de zender als de ontvanger en de klok CL is met verscheidene ketens van het systeem verbonden, hoewel dit niet getoond is.
De zender SEND omvat een pakketvormingsketen PA en een uitwisselgeheugen EM1, die in serie tussen een uitgang van de gebruikerketen UC en de bus SMB verbonden zijn en door de computer CC bestuurd worden. De ontvanger REC omvat een uitwisselgeheugen EM2, een buffereenheid BU van grootte Tr, een
pakketherkenningsketen PRC, een tijdtelketen TC, een pakketopzoekketen PSC en een pakketontvormingsketen DPA, die samen met EM2 door de computer CC bestuurd wordt. EM2, BU en DPA zijn in serie tussen de bus SMB en een ingang van UC verbonden en EM2, PRC en TC zijn in serie verbonden tussen SMB en een ingang van PSC wiens uitgangen respektievelijk BU en TC besturen.
De gebruikerketen UC kan aan de computer CC adresinformatie verschaffen en kan een continu bitstroom, die door spraak, video of andere data of een mengsel daarvan gevormd wordt, opwekken en ontvangen. Deze bitstroom heeft een bitsnelheid van B bits/sec, bijv. 2 Mbit/sec, en begint met een startcode. Er dient opgemerkt dat de inhoud van de bitstroom voor de werking van het systeem zonder belang is.
De netwerktoegangstussenketen NAI bestuurt de
<EMI ID=3.1>
EM1 naar het netwerk via de bus SMB en de overdracht van data van dit netwerk naar EM2 via de bus SMB. In de PSN gebeurt de overdracht van data bijvoorbeeld door het gebruik van een procedure met pas (tokén).
Het hierboven beschreven systeem werkt als volgt. Hierbij wordt verwezen naar de Fig. 1 en 2.
Als de uitgaande gebruikerketen UC een continu data bitstroom maar een gebruikerketen van bestemming wenst over te dragen, deelt hij het adres van deze bestemming mee aan de gemeenschappelijke computer CC waar het in het computergeheugen (niet getoond) wordt opgeslagen. De computer CC verwittigt dan de UC dat hij de overdracht van de continu bitstroom van data op een snelheid van M bits/sec kan starten.
In de pakketvormingsketen PA wordt deze bitstroom verdeeld in pakketten DPO, DP1, ..., DPk, ... enz. van lengte L of duur Tl = L/B, en deze pakketten worden aan het uitwisselgeheugen EM1 toegevoerd. Daarin voegt de computer CC aan elk pakket een hoofding toe bestaande uit het adres van de gebruikerketen van bestemming en een pakketserienummer, dat functie is van de stand van de zenderklok CL. Bijvoorbeeld wordt het serienummer van
<EMI ID=4.1>
k die overeenstemt met de positie van de klok CL. Elk dergelijk pakket wordt dan vanuit EM1 op het netwerk PSN overgedragen via de bus SMB, onder de besturing van de tussenketen NAI.
Als het adres van een dergelijk pakket door de tussenketen NAI van bestemming wordt herkend, wordt dit pakket naar het uitwisselgeheugen EM2 via de bus SMB overgedragen, onder de besturing van NAI. Omdat het netwerk PSN een stochastisch gedrag heeft komen de pakketten in EM2 toe na een willekeurige vertraging, die gelijk is aan tO, tl, ..., tk, ... voor respektievelijk de pakketten DPO, DP1, DPk, ... Als gevolg hiervan komen de pakketten in EM2 al of niet in de goede volgorde toe. Onder de besturing van de computer CC worden deze pakketten dan in de buffereenheid BU opgeslagen en aan de pakketherkenningsketen PRC toegevoerd. In de pakketherkenningsketen PRC wordt de aankomst van het eerste pakket DPO gedetecteerd aan de hand van het serienummer 0, dat in de hoofding van dit pakket is gecodeerd.
Als dit gebeurt start de PRC de tijdtelketen TC, welke na een tijd Tm geteld te hebben, de pakketopzoekketen PSC in werking stelt. Deze keten PSC zoekt dan in de buffereenheid BU naar het eerste pakket DPO en draagt dit op de kloktik 0' naar de pak�etontvormingsketen DPA over. De PSC start ook opnieuw de tijdtelketen TC, die na een tijd Tl (kloktik 1') geteld te hebben opnieuw de pakketopzoekketen PSC in werking stelt. De laatstgenoemde keten zoekt dan in de buffereenheid BU het tweede pakket DP1 op en draagt het in de buffer opgeslagen gedeelte daarvan naar de DPA over. Ingeval het pakket niet beschikbaar is op de kloktik l' wordt het nadien afgewezen. Al de volgende pakketten DP2, ... worden op dezelfde wijze als het pakket DP1 verwerkt.
Uit hetgeen voorafgaat volgt dat het eerste pakket DPO aan een totale vertraging T2 = tO + Tm onderworpen wordt en dat al de volgende pakketten DP1, ... een zelfde vertraging ondergaan. Het is echter duidelijk dat in de buffereenheid BU de pakketten een langere tijd kunnen worden opgeslagen, met een maximum gelijk aan de buffergrootte Tr, uitgedrukt in tijdseenheden.
De vertraging Tm wordt ingevoerd om de invloed van de willekeurige netwerkvertraging te verzachten, gezien een dergelijke willekeurige vertraging aan de ingang van de gebruikerketen van bestemming om reden van kwaliteit onaanvaardbaar is, in het bijzonder als het gaat om video of spraak.
Er wordt nu uiteengezet hoe de bovengenoemde waarde Tm van de vertraging T van het eerste pakket DPO en de buffergrootte Tr, uitgedrukt in tijdseenheden, gekozen werden.
Als men noemt :
<EMI ID=5.1>
de totale vertraging ondergaan door het eerste pakket DPO;
P(t) de cumulatieve waarschijnlijkheidsfunctie van de vertraging van een pakket in het netwerk;
p(t) de waarschijnlijkheidsdichtheidsfunctie van P(t);
kunnen de volgende toestanden optreden voor het pakket DPk :
<EMI ID=6.1>
In dit geval komt het pakket DPk op tijd toe in de ontvanger van bestemming, zodat het daarin volledig gebruikt kan worden. Dit gebeurt met een waarschijnlijkheid P(T2).
<EMI ID=7.1>
in dit geval komt een eerste deel (i bits) van het
<EMI ID=8.1>
bits) daarvan op tijd is gezien het vóór de kloktik van het volgende pakket toekomt. Slechts L-i bits van dit pakket kunnen in de ontvanger van bestemming gebruikt worden als
<EMI ID=9.1>
<EMI ID=10.1>
Dit gebeurt met een waarschijnlijkheid PI gegeven door :
<EMI ID=11.1>
Er dient opgemerkt dat de ontbrekende i bits door een opvulcode vervangen worden.
<EMI ID=12.1>
In dit geval komt het gehele pakket DPk niet op tijd toe en dient verworpen te worden. Dit gebeurt met een waarschijnlijkheid
<EMI ID=13.1>
Uit hetgeen voorafgaat volgt dat de gemiddelde pakketlengte, die in de ontvanger van bestemming gebruikt kan worden en die L(T2) genoemd wordt omdat ze afhangt
<EMI ID=14.1>
<EMI ID=15.1>
of, met de betrekking (2), door
<EMI ID=16.1>
Een waarschijnlijkheidsfunctie die een goed model is van de vertraging ondergaan in vele pakketnetwerken is de gammadistributie met een k-factor (de macht van t in de hiernavolgende formule) gelijk aan 1. In dit geval heeft men :
<EMI ID=17.1>
waarin 2/q de gemiddelde vertraging over het netwerk is.
De betrekking (5) kan daarom geschreven worden :
<EMI ID=18.1>
De waarde van T2 wordt zodanig bepaald dat er een bitfoutwaarde BER hoogstens gelijk aan A of een minimum kwaliteit 1-A verkregen wordt, waarbij de BER het omge-
<EMI ID=19.1>
ontbrekende bit vertoont. Dit gebeurt als T2 minstens een minimum waarde Tm heeft die voldoet aan
<EMI ID=20.1>
of, met de betrekking (8), als
<EMI ID=21.1>
-6
Bijvoorbeeld, voor A = 10
L = 5000 bits
<EMI ID=22.1>
<EMI ID=23.1>
wordt er gevonden dat Tm gelijk is aan 3,57 milliseconden.
Wegens de betrekking (1) en gezien de vertraging van het eerste pakket over het netwerk onbekend is, is T2 een willekeurige veranderlijke, zodat het onmogelijk is om T2 gelijk aan Tm te hebben voor elke waarde van to. Nochtans dient T2 gelijk te zijn aan Tm, zelfs als to zijn minimum waarde heeft, die gelijk is aan nul
(theoretisch) in het geval van de gammadistributie. Om deze reden wordt de waarde van T gelijk gekozen aan Tm zodat
<EMI ID=24.1>
<EMI ID=25.1>
pakketten niet te verliezen is het duidelijk dat ze tijdelijk in een buffer BU (Fig. 1) opgeslagen moeten worden tot het eerste pakket DPO aan de DPA werd toegevoerd, en met dit doel dient de grootte Tr (in tijdseenheden) van de buffer BU gelijk te zijn aan T2. Omdat T2 echter een willekeurige veranderlijke is, zoals reeds vermeld, werd aan de buffer BU een maximum grootte gegeven die overeenkomt met Tr, zodanig dat de waarschijnlijkheid dat Tr groter blijft dan of gelijk is aan T2 (zodat geen pakketten verloren gaan) een welbepaalde waarde Q heeft, die zo dicht mogelijk bij één ligt en gegeven wordt door :
<EMI ID=26.1>
wegens de betrekking (13)
<EMI ID=27.1>
Voor de waarschijnlijkheidsdichtheidsfunctie gegeven door de betrekking (6) wordt de betrekking (16)
<EMI ID=28.1>
Bijvoorbeeld, als Q = 0,999999 en met Tm = 3,57 milliseconden, zoals hierboven berekend, vindt men Tr = 7,75 milliseconden.
Voor een kleinere Q daalt de waarde van Tr betrekkelijk snel en is bijvoorbeeld gelijk aan 5,89 milliseconden als Q = 0,999.
In de hierboven beschreven eerste uitvoering wordt de vertraging T2 bepaald zonder enige kennis te hebben van de netwerkvertraging waaraan het eerste pakket DPO onderworpen wordt.
In een tweede uitvoering van het systeem, getoond in Fig. 3, wordt van een schattingsalgoritme voor de netwerkvertraging gebruik gemaakt, waarbij het minimum van deze vertraging gelijk is aan nul (theoretisch) in het geval van de beschouwde gammadistributie. Dit algoritme is in het hierboven vermeld artikel beschreven en gesteund op het gebruik van het serienummer of de klokpositie-informatie, hierboven vermeld, voor de synchronisatie van de ontvangerklok en de zenderklok. Meer in het bijzonder wordt gebruik gemaakt van de klokpositie-informatie bevat in n synchronisatiepakketten SPO tot SPn-1 en eventueel ook in het eerste (DPO) van de datapakketten, die op deze synchronisatiepakketten volgen.
Het in Fig. 3 getoonde data communicatiesysteem verschilt van dit van Fig. 1 doordat de zender SEND bovendien een vertragingseenheid DTs, een synchronisatieketen SC en een poortketen GC1 omvat. De ketens DTs, PA, GC1 en EM1 zijn in serie tussen een uitgang van de gebruikerketen UC en de bus SMB verbonden, en DTs, PA en EM1 worden door de computer CC bestuurd.
De synchronisatieketen SC heeft een toelatingsingang E bestuurd door UC, een verhinderingsingang D bestuurd door PA en een uitgang verbonden met EM1 via de poortketen GC1.
De ontvangerketen REC van Fig. 3 verschilt van deze van Fig. 1 doordat hij bovendien een poortketen GC2 omvat, die de uitgang van EM2 met de ingang van BU koppelt en door de pakketherkenningsketen PRC bestuurd wordt. Er dient echter opgemerkt dat de functie van PRC verschilt van deze in het systeem van Fig. 1. Ook de klokingang CL van de PRC is nu uitdrukkelijk getoond.
Het zojuist beschreven systeem werkt als volgt, waarbij verwezen wordt naar de Fig. 3 en 4.
Als de uitgaande gebruikerketen UC een continu databitstroom naar een gebruikerketen van bestemming wenst over te dragen, deelt hij het adres van deze bestemming mee aan de gemeenschappelijke computer CC waar het in het computergeheugen (niet getoond) wordt opgeslagen. De computer CC deelt dan aan de UC mee dat hij de overdracht van de continu data bitstroom aan een snelheid van M bits/sec kan starten. Deze bitstroom wordt toegevoerd aan de vertragingseenheid DTs waarin hij aan een vertraging gelijk aan Ts onderworpen wordt, vooraleer aan de pakketvormingsketen PA toegevoerd te worden. Ondertussen activeert de startcode van deze bitstroom de toelatingsingang E van de synchronisatieketen SC.
Als deze keten in werking is gesteld brengt hij n synchronisatiepakketten SPO tot SPn-1 voort op een snelheid van M pakketten/sec, warbij elk dergelijk pakket een code omvat die aangeeft dat het een synchronisatiepakket is. Elk dergelijk synchronisatiepakket wordt aan het uitwisselgeheugen EM1 via de poortketen GC1 toegevoerd, en in EM1 wordt een hoofding bestaande uit het adres van de gebruikerketen van bestemming en een serienummer, dat betrekking heeft op de positie van de klok CL, aan het
synchronisatiepakket toegevoegd onder de besturing van de computer CC. Dit gebeurt op dezelfde wijze als beschreven met betrekking tot het systeem van Fig. 1 voor een datapakket. In Fig. 4 zijn de klokposities van de n synchronisatiepakketten SPO tot SPn-1 respektievelijk met o tot n-1 aangeduid, terwijl deze van de datapakketten DPO, ..., enz. met DO, ... enz. zijn aangeduid.
Op het ogenblik dat alle bits van het eerste datapakket DPO in de pakketvormingsketen PA werden ingevoerd, d.w.z. na een tijd Ts + Tl, en dat dit eerste datapakket klaar is voor overdracht naar het uitwisselgeheugen EM1, activeert PA de verhinderingsingang D van de synchronisatieketen SC om de overdracht van synchronisatiepakketten SPO tot SPn-1 stop te zetten.
Uit hetgeen voorafgaat volgt dat in de zender de synchronisatiepakketten gedurende een tijdsinterval
Ts + Tl met Tl = L/B
overgedragen worden, zodat
<EMI ID=29.1>
waarbij :
n het grootste geheel getal is dat kleiner is dan
<EMI ID=30.1>
Ieder van de synchronisatie- en datapakketten, dat in het uitwisselgeheugen EM1 wordt opgeslagen, wordt naar het uitwisselgeheugen EM2 van de ontvanger van bestemming overgedragen op de wijze hierboven beschreven met betrekking tot Fig. 1.
Onder de besturing van de computer CC worden de in EM2 ontvangen pakketten toegevoerd aan de pakketherkenningsketen PRC en aan de poortketen GC2, die verondersteld wordt geblokkeerd te zijn.
In de PRC worden de n synchronisatiepakketten SPO tot SPn-1 herkend uit de informatie en serienummers of kloktikken 0 tot n-1, die in de hoofdingen van deze pakketten gecodeerd zijn. Zolang de PRC de aanwezigheid van synchronisatiepakketten herkent, houdt hij de poortketen GC2 in de geblokkeerde positie. Integendeel, als de PRC nadien de aankomst van het eerste datapakket DPO herkent opent hij de poortketen GC2, teneinde de doorgang van alle datapakketten naar de buffereenheid BU mogelijk te maken.
In de PRC, die (niet getoonde)
tijdvergelijkingsmiddelen omvat, worden de n synchronisatiepakketten SPO tot SPn-1 en het onmiddellijk volgende eerste datapakket DPO als volgt verwerkt, waarbij vooral verwezen wordt naar Fig. 4 die een voorbeeld van dergelijke pakketten toont :
- de PRC herkent het eerste synchronisatiepakket SPO met klokpositie 0 en brengt de ontvangerklok in de overeenkomstige positie 0'. Aldus is het verschil tussen de zender en ontvangerklokken gelijk aan de willekeurige vertraging van het eerste synchronisatiepakket SPO over het netwerk PSN;
- bij de ontvangst van één van de volgende synchronisatiepakketten SPI tot SPn-1 vergelijkt de PRC de klokposities 1 tot ,n-l, die in deze pakketten gecodeerd zijn, met de positie van de lopende ontvangerklok en stelt deze positie af telkens en slechts als het synchronisatiepakket
<EMI ID=31.1>
wordt. Meer in het bijzonder :
- omdat het tweede synchronisatiepakket SPI, met klokpositie 1, na de overeenkomstige klokpositie l' van de lopende ontvangerklok ontvangen wordt, wordt deze positie niet afgesteld;
- omdat het derde synchronisatiepakket, met klokpositie 2, ontvangen wordt in de klokpositie 2" die de klokpositie 2' van de lopende ontvangerklok voorafgaat, wordt deze positie gebracht op 2";
- gezien het vierde synchronisatiepakket SP3, met klokpositie 3, na de overeenkomstige klokpositie 3" (gelijk aan 3' + T3) van de
lopende ontvangerklok ontvangen wordt, wordt
deze positie niet afgesteld;
- enz. Hierbij wordt verondersteld dat na de ontvangst van het synchronisatiepakket SPn-2 de ontvangerklok zich in de positie (n-2)" bevindt;
- omdat het laatste synchronisatiepakket SPn-1, met klokpositie n-1, ontvangen wordt in de klokpositie (n-l)"' die de overeenkomstige klokpositie (n-1)" van de lopende klok
voorafgaat, wordt deze positie op (n-1)"' gebracht.
Zoals reeds hierboven vermeld opent de PRC de poortketen GC2 na de ontvangst van het laatste synchronisatiepakket, zodat de datapakketten dan gelijktijdig aan de buffereenheid BU en aan de PRC toegevoerd worden. De PRC start dan een tijdtelling Tl en aan het einde daarvan (kloktik DO') bekrachtigt hij de tijdtelketen TC. Laatstgenoemde keten telt dan een tijdsinterval Tm, waarna hij de pakketopzoekketen PSC in werking stelt. De functie van PSC, BU, TC, DPA en UC zijn dezelfde als deze hierboven beschreven met betrekking tot Fig. 1.
In een voorkeursuitvoering maakt de PRC ook gebruik van de klokpositie-informatie, die in de hoofding van het eerste datapakket DPO aanwezig is, om een uiteindelijke afstelling van de ontvangerklok te verwezenlijken indien de DPO voor de hogervermelde kloktik DO' ontvangen wordt, bv. op de kloktik DO'(l).
In dit geval stelt de PRC de ontvangerklok af op DO'(1) vooraleer de tijdtelketen TC, die het tijdsinterval Tm telt, te activeren. Indien het pakket DPO na DO' ontvangen wordt, bv. in DO'(2), wordt de klok niet afgesteld.
Uit hetgeen voorafgaat volgt dat door het gebruik van de n synchronisatiepakketten, en in de voorkeursuitvoering ook van het eerste datapakket, de ontvangerklok op de zenderklok werd afgesteld en dat het eerste datapakket DPO dan over een tijdsinterval Tm werd vertraagd. Het is duidelijk dat deze afstelling niet perfekt is en dat er een zekere fout overblijft, die -te genoemd wordt, zodat de totale vertraging van het eerste datapakket gelijk is aan Tm - te.
Er wordt nu uiteengezet hoe de genoemde waarde Tm van de vertraging T van het eerste datapakket DPO en de buffergrootte Tr gekozen werden.
Het is duidelijk dat de kwaliteit van de schatting van de netwerkvertraging, verkregen op de hierboven beschreven wijze, afhankelijk is van het aantal gebruikte pakketten dat klokpositie-informatie bevat. Uit het hierboven vermeld artikel en meer in het bijzonder uit de betrekking (41) daarvan volgt dat de
waarschijnlijkheidsdichtheidsfunctie van het verschil tussen de zender- en ontvangerklokken, en daarom van de schattingsfout, na de ontvangst van n + 1 dergelijke pakketten gegeven wordt door
pl (t) = (n + 1) p(-t) [1 - P(-t) ] voor t =< 0 (19)
De laatste uitdrukking is enkel bepaald voor negatieve waarden van t, omdat de schattingsfout bepaald wordt als het verschil tussen een onderschatting van de willekeurige netwerkvertraging en de werkelijke waarde daarvan.
In het geval van de gammadistributie, zoals gedefinieerd door de betrekkingen (6) en (7), wordt de betrekking (19)
<EMI ID=32.1>
Uit hetgeen voorafgaat volgt dat in plaats van de klokken een tijd T na de ontvangst van het eerste datapakket te synchroniseren, d.w.z. na T2 = to + T zoals in het systeem van Fig. 1, de beide klokken nu gesynchroniseerd worden, met een fout -te, nadat een aantal synchronisatiepakketten en een eerste datapakket werden ontvangen, waarbij het laatstgenoemd datapakket dan aan de vertraging T werd onderworpen. Aldus wordt de totale vertraging T2 gegeven door
<EMI ID=33.1>
Gezien T en te onafhankelijke willekeurige veranderlijken zijn, die door de betrekking (21)
<EMI ID=34.1>
waarschijnlijkheidsdistributiedichtheid van T2 gegeven wordt door :
<EMI ID=35.1>
Op een analoge wijze als hierboven beschreven voor het systeem van Fig. 1 kan de minimum waarde Tm van T2 uit de betrekking (12) berekend worden, hetgeen resulteert in een zelfde waarde als in het laatstgenoemd systeem. Anderzijds, en opnieuw op een analoge wijze als
<EMI ID=36.1>
zodanig berekend dat de waarschijnlijkheid dat Tr groter dan of geli jk blijft aan T2 een waarde Q heeft, die zo dicht mogelijk bij 1 ligt en gegeven wordt door de betrekking
(14) of
<EMI ID=37.1>
Door rekening te houden met de betrekking (22) kan deze waarschijnlijkheid geschreven worden :
<EMI ID=38.1>
waarin
<EMI ID=39.1>
en
<EMI ID=40.1>
Uit de betrekkingen (24), (25) and (26) kan men Tr berekenen in functie van n voor verscheidene waarden van Q, waarbij de andere veranderlijken q, BER en L constant zijn. Fig. 5 toont meer in het bijzonder Tr in functie van n voor de waarden Q = 0,999; Q = 0,995 en Q = 0,95,
-6 in het geval dat 1/q = 250 microseconden, BER = 10 en L = 5000. Uit deze figuur volgt dat het verschil in Tr klein is voor verscheidene waarden van Q en dat Tr snel daalt als n stijgt vanaf 0, maar dat voor grotere n de stijging van Tr klein is als n stijgt. Het blijkt ook dat een nagenoeg constante Tr reeds voor een betrekkelijk kleine waarde van n verkregen wordt.
Omdat de vertraging Tr in de ontvanger functie is van het aantal n + 1 pakketten met klokpositie-informatie uitgezonden door de zender en omdat n functie is van de vertraging Ts in deze zender, zoals volgt uit de betrekking (18), is de vertraging Tr functie van Ts.
Fig. 6 toont Ts + Tr in functie van Ts voor
Q = 0,999
M = 1000
Tl = 2,5 milliseconden
L = 5000
Uit deze figuur volgt dat Ts + Tr een algemeen stijgende functie is waarvan het minimum optreedt voor Ts = 0. Dit betekent dat voor de hoger vermelde waarden er geen bijkomende vertraging Ts vereist is in de zender, zodat het voldoende is om synchronisatiepakketten enkel gedurende de tijd Tl over te dragen. Wanneer echter een analoge figuur getekend wordt voor een veel hoger Q, bv. Q = 0,999999, maar voor dezelfde waarden van M, Tl en L, is de minimum waarde van Ts + Tr nog steeds Ts = 0 maar er is een andere waarde van Ts voor dewelke Ts + tr zeer dicht bij dit minimum is. Het kan daarom gebeuren dat voor andere waarden van de veranderlijken, zoals Q nagenoeg gelijk aan 1, de minimum waarde van Ts + Tr verschillend van nul is. In dit geval zou het gebruik van de bijkomende vertragingseenheid DTs gerechtvaardigd zijn.
Hoewel de principes van de uitvinding hierboven zijn beschreven aan de hand van bepaalde uitvoeringsvormen en wijzigingen daarvan, is het duidelijk dat de beschrijving slechts bij wijze van voorbeeld is gegeven en de uitvinding niet daartoe is beperkt.
DATA COMMUNICATION SYSTEM
The present invention relates to a data communication system comprising: a packet switching network, a number of user chains, and a number of transmitter / receiver chains each coupled between this network and at least one of these user chains, each transmitter chain of an outgoing transmitter / receiver chain capable of to receive packets received from an outgoing user chain on this network, and each destination transmitter of a destination sender / receiver chain is coupled to a destination user chain that includes a time chain to delay received packets.
Such a system is already known from the article "Analysis and Optimal Design of a Packet Voice Receiver" by G. Barberis and D. Pazzaglia, published in the IEEE Transactions on Communications, Vol. Com. 28, no. 2, February 1980, pages 217-227.
In this known data communication system, the transmitter forms data packets from the speech periods, which are generated in an outgoing user chain. Since these speech periods are separated from each other by silent periods, a set of distinct sets of data packets is produced. In a first embodiment of this known system, no information is collected about the delay to which the packets in the network are subjected and a clock in the receiver chain is set in accordance with the clock in the transmitter chain a time interval equal to the above-mentioned delay after reception of a first package of a series.
Since the network delay has an arbitrary value, it can happen in the worst case, ie if the network delay experienced by a first packet of a series is very small, one or more of the following packets of the series will no longer arrive in time in the receiver because they have experienced too much delay in the network. For each of these packets, wait until it is fully received before feeding it to the destination user chain. Thus, each of these packets is subject to an additional variable delay, which adversely affects the operating quality of the
<EMI ID = 1.1>
network delay becomes greater than the time interval separating the sequence from a next in a set, it is clear that bits will be lost. In the article mentioned above, such a worst case has not been considered, perhaps because a reduced quality is permissible in the case of speech and probably mainly because the occurrence of such a worst case is then very doubtful because the time interval between two successive sets of packets is on average equal is up to the duration of each of these strings, as stated in the article. Also, it only affects the relatively small corresponding set of packets and not the others.
However, this would not be the case if the series of packets were relatively very long and if the nature of the data were unknown and consist, for example, of a continuous bitstream of speech, video or other data or a mixture thereof. Indeed, the loss of bits would not be permissible since these bits could be of great importance and because the degraded quality would affect the whole set of packets.
An object of the present invention is to provide a data communication system of the type described above, but which has good operating quality regardless of the nature of the data transferred and the length thereof.
According to the invention, this object is achieved in that this delay is chosen such that with a predetermined probability the error in a delayed packet is always less than a predetermined value.
In this way, a desired operating quality is ensured.
The present invention also relates to a data communication system which includes:
a packet switching network, a plurality of user chains, and a plurality of transmitter / receiver chains each containing a clock and each coupled between this network and at least one of these user chains, each transmitter chain of an outgoing transmitter / receiver chain capable of receiving packets containing transmitter clock position information on this network and each receiver chain of a transmitter / receiver chain of destination is able to synchronize its clock with that of the transmitter according to the information received with these packets.
Such a data communication system is also known from the above-mentioned article. In it, transmitter clock position is included in the data packets so that data bits in the receiver may be lost if its clock is synchronized with that of the transmitter.
Another object of the present invention is to provide a data communication system of the last described type, but which does not present this drawback.
According to the invention, this object is achieved in that at most the last of these packets contains data to be transferred to this destination user chain.
Thus, there is no danger of losing data bits during the synchronization of the clocks.
The above-mentioned and other objects and features of the invention will become more apparent and the invention itself will be best understood by reference to the following description of embodiments and the accompanying drawings, in which:
Fig. 1 is a schematic view of a first embodiment of a data communication system according to the invention; Fig. 2 is a time chart illustrating the operation of this embodiment; Fig. 3 is a schematic view of a second embodiment of this system; Fig. 4 is a timing chart illustrating the operation of this embodiment; Fig. 5 is a diagram showing the variation of the size of the buffer BU of FIG. 3 in function of the number of clock position containing packets; Fig. 6 shows the delay Ts + Tr as a function of Ts, where Ts and Tr are shown by DTs and BU of FIG. 3 are provided.
The process shown in FIG. 1 data communication system shown
<EMI ID = 2.1>
number of user chains, such as UC, are linked via a transmitter / receiver chain SEND / REC, a bus SMB and a network access intermediate chain NAI.
The transmitter / receiver chain SEND / REC comprises a transmitter SEND, a receiver REC and a common computer CC with an associated clock CL. This computer CC controls both the transmitter and the receiver and the clock CL is connected to several chains of the system, although this is not shown.
The transmitter SEND comprises a packetization circuit PA and an exchange memory EM1, which are connected in series between an output of the user circuit UC and the bus SMB and are controlled by the computer CC. The receiver REC comprises an exchange memory EM2, a buffer unit BU of size Tr, one
packet recognition circuit PRC, a timing circuit TC, a packet lookup chain PSC and a packet deformation circuit DPA, which is controlled by the computer CC together with EM2. EM2, BU and DPA are connected in series between the bus SMB and an input of UC and EM2, PRC and TC are connected in series between SMB and an input of PSC whose outputs control BU and TC, respectively.
The user chain UC can provide the computer CC with address information and can generate and receive a continuous bitstream formed by speech, video or other data or a mixture thereof. This bit stream has a bit rate of B bits / sec, eg 2 Mbit / sec, and starts with a start code. It should be noted that the bitstream content is of no importance for the operation of the system.
The network access intermediate chain NAI controls the
<EMI ID = 3.1>
EM1 to the network via the bus SMB and the transfer of data from this network to EM2 via the bus SMB. In the PSN, for example, data is transferred using a procedure with pas (tokén).
The system described above works as follows. Reference is made to Figs. 1 and 2.
If the outgoing user chain UC wishes to transfer a continuous data bitstream but a destination user chain, it communicates the address of this destination to the common computer CC where it is stored in the computer memory (not shown). The computer CC then notifies the UC that it can start the transmission of the continuous bitstream of data at a rate of M bits / sec.
In the packetization circuit PA, this bitstream is divided into packets DPO, DP1, ..., DPk, ... etc. of length L or duration T1 = L / B, and these packets are supplied to the exchange memory EM1. In it, the computer CC adds to each packet a header consisting of the address of the destination user chain and a packet serial number, which is a function of the position of the transmitter clock CL. For example, the serial number of
<EMI ID = 4.1>
k corresponding to the position of the clock CL. Each such packet is then transferred from EM1 to the network PSN via the bus SMB, under the control of the intermediate chain NAI.
If the address of such a packet is recognized by the destination intermediate chain NAI, this packet is transferred to the exchange memory EM2 via the bus SMB, under the control of NAI. Because the network PSN has a stochastic behavior, the packets arrive in EM2 after a random delay, which is equal to tO, tl, ..., tk, ... for the packets DPO, DP1, DPk, etc., respectively. As a result, the packages in EM2 may or may not arrive in the correct order. Under the control of the computer CC, these packets are then stored in the buffer unit BU and supplied to the packet recognition circuit PRC. In the packet recognition chain PRC, the arrival of the first packet DPO is detected by the serial number 0, which is coded in the header of this packet.
When this happens, the PRC starts the timing circuit TC, which, after counting a time Tm, activates the packet lookup chain PSC. This chain PSC then searches in the buffer unit BU for the first packet of DPO and transfers it on the clock tick 0 'to the packet deforming circuit DPA. The PSC also restarts the time-chain TC, which, after counting a time T1 (clock tick 1 '), again activates the packet look-up chain PSC. The latter chain then searches for the second packet DP1 in the buffer unit BU and transfers the portion thereof stored in the buffer to the DPA. If the package is not available on the clock tick l 'it will be rejected afterwards. All the following packets DP2, ... are processed in the same way as the packet DP1.
From the foregoing it follows that the first packet DPO is subjected to a total delay T2 = t0 + Tm and that all subsequent packets DP1, ... are subjected to the same delay. It is clear, however, that in the buffer unit BU the packages can be stored for a longer time, with a maximum equal to the buffer size Tr, expressed in units of time.
The delay Tm is introduced to mitigate the influence of the random network delay, since such random delay at the input of the destination user chain is unacceptable for reasons of quality, particularly when it comes to video or voice.
It is now explained how the above value Tm of the delay T of the first packet DPO and the buffer size Tr, expressed in units of time, were chosen.
If one mentions:
<EMI ID = 5.1>
the total delay suffered by the first package of DPO;
P (t) the cumulative probability function of the delay of a packet in the network;
p (t) the probability density function of P (t);
the following states can occur for the DPk package:
<EMI ID = 6.1>
In this case, the package DPk arrives in time at the destination recipient, so that it can be fully used there. This is done with a probability P (T2).
<EMI ID = 7.1>
in this case a first part (i bits) comes from it
<EMI ID = 8.1>
bits) is timely since it is due before the clock tick of the next packet. Only L-i bits of this packet can be used in the destination receiver as
<EMI ID = 9.1>
<EMI ID = 10.1>
This is done with a probability PI given by:
<EMI ID = 11.1>
It should be noted that the missing i bits are replaced by a fill code.
<EMI ID = 12.1>
In this case, the entire package DPk does not arrive on time and must be rejected. This is done with a probability
<EMI ID = 13.1>
From the foregoing it follows that the average packet length which can be used in the destination receiver and which is called L (T2) because it depends
<EMI ID = 14.1>
<EMI ID = 15.1>
or, with the relation (2), by
<EMI ID = 16.1>
A probability function that is a good model of the delay experienced in many packet networks is the gamma distribution with a k factor (the power of t in the following formula) equal to 1. In this case one has:
<EMI ID = 17.1>
where 2 / q is the average delay over the network.
The relationship (5) can therefore be written:
<EMI ID = 18.1>
The value of T2 is determined such that a bit error value BER at most equal to A or a minimum quality 1-A is obtained, the BER being the
<EMI ID = 19.1>
missing bit. This happens if T2 has at least a minimum value Tm that meets
<EMI ID = 20.1>
or, with the relation (8), if
<EMI ID = 21.1>
-6
For example, for A = 10
L = 5000 bits
<EMI ID = 22.1>
<EMI ID = 23.1>
Tm is found to be equal to 3.57 milliseconds.
Because of the relationship (1) and since the delay of the first packet across the network is unknown, T2 is an arbitrary variable, so that it is impossible to have T2 equal to Tm for any value of to. However, T2 should be equal to Tm even if to has its minimum value equal to zero
(theoretically) in the case of gamma distribution. For this reason, the value of T is chosen equal to Tm such that
<EMI ID = 24.1>
<EMI ID = 25.1>
not to lose packets it is clear that they must be temporarily stored in a buffer BU (Fig. 1) until the first packet of DPO has been fed to the DPA, and for this purpose the size Tr (in units of time) of the buffer BU should be equal to be at T2. However, since T2 is an arbitrary variable, as already mentioned, the buffer BU was given a maximum size corresponding to Tr, such that the probability that Tr remains greater than or equal to T2 (so that no packets are lost) is a given value Q, which is as close to one as possible and is given by:
<EMI ID = 26.1>
because of the job (13)
<EMI ID = 27.1>
For the probability density function given by the relationship (6), the relationship (16) is
<EMI ID = 28.1>
For example, if Q = 0.9999999 and with Tm = 3.57 milliseconds, as calculated above, Tr = 7.75 milliseconds.
For a smaller Q, the value of Tr drops relatively quickly and is, for example, equal to 5.89 milliseconds if Q = 0.999.
In the first embodiment described above, the delay T2 is determined without having any knowledge of the network delay to which the first packet DPO is subjected.
In a second embodiment of the system, shown in Fig. 3, a network delay estimation algorithm is used, the minimum of this delay being zero (theoretical) in the case of the gamma distribution considered. This algorithm has been described in the above article and relies on the use of the serial number or clock position information, mentioned above, for synchronizing the receiver clock and the transmitter clock. More specifically, use is made of the clock position information contained in n synchronization packets SPO to SPn-1 and optionally also in the first (DPO) of the data packets following these synchronization packets.
The process shown in FIG. 3 data communication system shown differs from that of FIG. 1 in that the transmitter SEND additionally comprises a delay unit DTs, a synchronization circuit SC and a gate circuit GC1. The circuits DTs, PA, GC1 and EM1 are connected in series between an output of the user circuit UC and the bus SMB, and DTs, PA and EM1 are controlled by the computer CC.
The synchronization circuit SC has an admission input E controlled by UC, an inhibition input D controlled by PA and an output connected to EM1 through the gate circuit GC1.
The receiver chain REC of FIG. 3 differs from that of FIG. 1 in that it additionally comprises a gate circuit GC2 which couples the output of EM2 to the input of BU and is controlled by the packet recognition circuit PRC. However, it should be noted that the function of PRC differs from that in the system of FIG. 1. The clock input CL of the PRC is now also explicitly shown.
The system just described works as follows, referring to Figs. 3 and 4.
If the outgoing user chain UC wishes to transfer a continuous data bit stream to a destination user chain, it communicates the address of this destination to the common computer CC where it is stored in the computer memory (not shown). The computer CC then informs the UC that it can start the transmission of the continuous data bitstream at a rate of M bits / sec. This bitstream is supplied to the delay unit DTs in which it is delayed equal to Ts before being supplied to the packetizing circuit PA. Meanwhile, the start code of this bitstream activates the admission input E of the synchronization circuit SC.
When this circuit is enabled, it generates n synchronization packets SPO to SPn-1 at a rate of M packets / sec, each such packet containing a code indicating that it is a synchronization packet. Each such synchronization packet is supplied to the exchange memory EM1 through the gate circuit GC1, and in EM1 a header consisting of the address of the destination user chain and a serial number relating to the position of the clock CL is added to the
synchronization package added under the control of the computer CC. This is done in the same manner as described with respect to the system of FIG. 1 for a data packet. In FIG. 4, the clock positions of the n synchronization packets SPO to SPn-1 are indicated by o to n-1, respectively, while those of the data packets DPO, ..., etc. are indicated by DO, ... etc.
As soon as all bits of the first data packet DPO have been entered into the packetization circuit PA, ie after a time Ts + T1, and this first data packet is ready for transfer to the exchange memory EM1, PA activates the inhibit input D of the synchronization circuit SC to stop the transfer of synchronization packets SPO to SPn-1.
From the foregoing it follows that in the transmitter the synchronization packets during a time interval
Ts + Tl with Tl = L / B
be transferred so that
<EMI ID = 29.1>
at which :
n is the largest integer less than
<EMI ID = 30.1>
Each of the synchronization and data packets stored in the exchange memory EM1 is transferred to the exchange memory EM2 of the destination receiver in the manner described above with reference to FIG. 1.
Under the control of the computer CC, the packets received in EM2 are supplied to the packet recognition circuit PRC and to the gate circuit GC2, which is supposed to be blocked.
In the PRC, the n synchronization packets SPO to SPn-1 are recognized from the information and serial numbers or clock ticks 0 to n-1 encoded in the headings of these packets. As long as the PRC recognizes the presence of synchronization packets, it keeps the gate chain GC2 in the blocked position. On the contrary, if the PRC subsequently recognizes the arrival of the first data packet DPO, it opens the gate chain GC2 to allow the passage of all data packets to the buffer unit BU.
In the PRC, which (not shown)
time comparison means, the n synchronization packets SPO to SPn-1 and the immediately following first data packet DPO are processed as follows, with particular reference to FIG. 4 showing an example of such packages:
- the PRC recognizes the first synchronization packet SPO with clock position 0 and sets the receiver clock to the corresponding position 0 '. Thus, the difference between the transmitter and receiver clocks is equal to the random delay of the first synchronization packet SPO over the network PSN;
upon receipt of one of the following synchronization packets SPI to SPn-1, the PRC compares the clock positions 1 to, n-1 encoded in these packets with the position of the running receiver clock and adjusts this position each time and only as the synchronization packet
<EMI ID = 31.1>
is becoming. More particularly :
because the second synchronization packet SPI, with clock position 1, is received after the corresponding clock position 1 'of the running receiver clock, this position is not adjusted;
- because the third synchronization packet, with clock position 2, is received in the clock position 2 "which precedes the clock position 2 'of the running receiver clock, this position is set to 2";
- having regard to the fourth synchronization packet SP3, with clock position 3, after the corresponding clock position 3 "(equal to 3 '+ T3) of the
receiving receiver clock is being received
this position not adjusted;
- etc. It is assumed here that after the reception of the synchronization packet SPn-2 the receiver clock is in the position (n-2) ";
- because the last synchronization packet SPn-1, with clock position n-1, is received in the clock position (n-1) "which is the corresponding clock position (n-1)" of the running clock
preceded, this position is brought to (n-1) "".
As already mentioned above, the PRC opens the gate circuit GC2 after receipt of the last synchronization packet, so that the data packets are then simultaneously fed to the buffer unit BU and to the PRC. The PRC then starts a time count T1 and at the end thereof (clock tick DO ') it energizes the time chain TC. The latter chain then counts a time interval Tm, after which it activates the packet search chain PSC. The function of PSC, BU, TC, DPA and UC are the same as those described above with respect to Fig. 1.
In a preferred embodiment, the PRC also uses the clock position information contained in the header of the first data packet DPO to effect a final adjustment of the receiver clock if the DPO is received for the above clock tick DO ', e.g. on the clock tick DO '(1).
In this case, the PRC sets the receiver clock to DO '(1) before activating the timing circuit TC, which counts the time interval Tm. If the package DPO is received after DO ', e.g. in DO' (2), the clock is not adjusted.
From the foregoing, it follows that by using the n synchronization packets, and in the preferred embodiment also the first data packet, the receiver clock was set to the transmitter clock and the first data packet DPO was then delayed by a time interval Tm. It is clear that this adjustment is not perfect and that a certain error remains, which is called -t, so that the total delay of the first data packet equals Tm-te.
It is now explained how the said value Tm of the delay T of the first data packet DPO and the buffer size Tr were chosen.
Obviously, the quality of the network delay estimate obtained in the manner described above depends on the number of packets used that contain clock position information. It follows from the article mentioned above and, more particularly, from its relation (41) that the
probability density function of the difference between the transmitter and receiver clocks, and therefore of the estimation error, after the reception of n + 1 such packets is given by
pl (t) = (n + 1) p (-t) [1 - P (-t)] for t = <0 (19)
The last expression is only determined for negative values of t, because the estimation error is determined as the difference between an underestimation of the random network delay and its actual value.
In the case of the gamma distribution, as defined by relations (6) and (7), the relation (19)
<EMI ID = 32.1>
From the foregoing it follows that instead of synchronizing the clocks a time T after the reception of the first data packet, i.e. after T2 = to + T as in the system of FIG. 1, both clocks are now synchronized, with an error -te, after a number of synchronization packets and a first data packet have been received, the latter data packet then being delayed T. Thus, the total delay T2 is given by
<EMI ID = 33.1>
Given T and too independent arbitrary variables, which are due to the relationship (21)
<EMI ID = 34.1>
probability distribution density of T2 is given by:
<EMI ID = 35.1>
In an analogous manner as described above for the system of FIG. 1, the minimum value Tm of T2 can be calculated from the relationship (12), resulting in the same value as in the latter system. On the other hand, and again in an analogous way as
<EMI ID = 36.1>
calculated so that the probability that Tr greater than or equal to T2 has a value Q, which is as close to 1 as possible and is given by the relationship
(14) or
<EMI ID = 37.1>
By taking into account the relation (22) this probability can be written:
<EMI ID = 38.1>
in which
<EMI ID = 39.1>
and
<EMI ID = 40.1>
From relations (24), (25) and (26) one can calculate Tr as a function of n for several values of Q, the other variables q, BER and L being constant. Fig. 5 more specifically shows Tr as a function of n for the values Q = 0.999; Q = 0.995 and Q = 0.95,
-6 in case 1 / q = 250 microseconds, BER = 10 and L = 5000. From this figure it follows that the difference in Tr is small for several values of Q and that Tr decreases rapidly as n increases from 0, but that for larger n, the rise of Tr is small if n rises. It also appears that a substantially constant Tr is already obtained for a relatively small value of n.
Since the delay Tr in the receiver is a function of the number of n + 1 packets of clock position information transmitted by the transmitter and because n is a function of the delay Ts in this transmitter, as follows from the relationship (18), the delay Tr function of Ts.
Fig. 6 shows Ts + Tr in function of Ts for
Q = 0.999
M = 1000
Tl = 2.5 milliseconds
L = 5000
From this figure it follows that Ts + Tr is a generally increasing function whose minimum occurs for Ts = 0. This means that for the values mentioned above no additional delay Ts is required in the transmitter, so that it is sufficient to only synchronize packets during the time to transfer Tl. However, when an analog figure is drawn for a much higher Q, eg Q = 0.999999, but for the same values of M, Tl and L, the minimum value of Ts + Tr is still Ts = 0 but there is another value of Ts for which Ts + tr is very close to this minimum. It can therefore happen that for other values of the variables, such as Q substantially equal to 1, the minimum value of Ts + Tr is different from zero. In this case, the use of the additional delay unit DTs would be justified.
Although the principles of the invention have been described above with reference to certain embodiments and modifications thereof, it is clear that the description is given by way of example only and the invention is not limited thereto.