SE528374C2 - Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk - Google Patents

Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk

Info

Publication number
SE528374C2
SE528374C2 SE0402280A SE0402280A SE528374C2 SE 528374 C2 SE528374 C2 SE 528374C2 SE 0402280 A SE0402280 A SE 0402280A SE 0402280 A SE0402280 A SE 0402280A SE 528374 C2 SE528374 C2 SE 528374C2
Authority
SE
Sweden
Prior art keywords
node
time
predetermined message
synchronization
latency
Prior art date
Application number
SE0402280A
Other languages
English (en)
Other versions
SE0402280L (sv
SE0402280D0 (sv
Inventor
Olof Hagsand
Kjell Hansson
Original Assignee
Prosilient Technologies Ab
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
Publication of SE0402280D0 publication Critical patent/SE0402280D0/sv
Priority to SE0402280A priority Critical patent/SE528374C2/sv
Application filed by Prosilient Technologies Ab filed Critical Prosilient Technologies Ab
Priority to PCT/SE2005/001307 priority patent/WO2006033611A1/en
Priority to US11/662,646 priority patent/US8218576B2/en
Priority to EP05779215.2A priority patent/EP1807962A4/en
Publication of SE0402280L publication Critical patent/SE0402280L/sv
Publication of SE528374C2 publication Critical patent/SE528374C2/sv
Priority to US13/494,652 priority patent/US8705577B2/en
Priority to US14/194,885 priority patent/US8948210B2/en
Priority to US14/576,972 priority patent/US9094427B2/en
Priority to US14/745,676 priority patent/US9300556B2/en
Priority to US15/057,224 priority patent/US9544210B2/en
Priority to US15/341,514 priority patent/US9736049B2/en
Priority to US15/652,630 priority patent/US10178009B2/en
Priority to US16/027,335 priority patent/US10425309B2/en
Priority to US16/445,351 priority patent/US10680924B2/en
Priority to US16/816,793 priority patent/US10938698B2/en
Priority to US17/158,222 priority patent/US11516101B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0858One way delays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0682Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/067Generation of reports using time frame reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets

Description

nyckelegenskap hos uppfinningen som beslcrivs i US-dokumentet är att varje nod styr en virtuell klocka för varje annan nod den synkroniserar med.
REDOGÖRELSE FÖR UPPFINNINGEN Enligt föreliggande uppfinning och en första aspekt beskrivs en metod för att ange envägslatens i ett datanâtverk utan kontinuerlig klocksynkronisering mellan en första nod och en andra nod. Metoden innefattar: - ett försynkroniseringssteg - ett mätningssteg - ett efiersyiilcroriiseringssteg - ett inteipoleringssteg, och ~ generering av en latensprofil.
På grundval av föreliggande uppfinning beskrivs även en dataprogramprodukt som kan laddas i en dators intemminne, innefattande koddelar för programvaran för att genomföra metoden, en bärare innefattande dataprogramprodukten och en metod för att ange serverfunktionaliteten. Detta innebär att föreliggande uppfinning kan användas för mätning och övervakning, en servers egenskaper.
Föreliggande uppfinning presenterar i överensstämmelse med föreliggande uppfinning ett antal fördelar järnfört med känd teknik. Exempelvis är precisionen i mätningarna enligt föreliggande uppfinning högre än precisionen i NTP-mekanismen. Föreliggande uppfinning handlar om en metod att göra envägslatensmätningar i realtid med hög precision mellan noder sammankopplade medelst ett meddelandeöverförande nätverk där klocksynkronisering med den precisionen inte är tillgänglig, vilket är i motsats till den kända teknik som kort beskrivs ovan. Metoden kan även erbjuda individuella latensvärden per datapaket. Föreliggande uppfinning genomför med hög precision latensmämingar av datapaket som går mellan två noder under en begränsad tidsperiod.
Eftersom latenser kan vara asymmetriska, kan RTT-berälming ej användas utan den måste grundas på absolut och synkron tid. Kontinuerlig klocksynkronisering behöver 10 15 20 25 30 ts2s 3?4 således varken installeras eller underhållas. Istället gör föreliggande uppfinning två synkroniseringar (före och efter) med det enda målet att interpolera mätningsresultaten.
Enligt en föredragen utföringsform innefattar försynkroniseringssteget sändning av ett förutbestämt meddelande fiån den första noden till den andra noden. Ett förutbestämt meddelande som sänts av den andra noden mottas därefter vid den första noden. Nästa steg är att beräkna en förskjutning enligt ((T2 - Tl) + (Tg - T4))/2, varvid Ti Ufgöl' sändningstidpunkten från den första noden, T; utgör mottagningstidpunkten vid den andra noden, T; utgör sändningstidpunkten vid den andra noden och T4 utgör mottagningstidpunkten vid den första noden. Därefter ställs en klockdifferens in för törskjutningen. Även en absolut klocka ställs in för T4.
Enligt en föredragen uttöringsfonn innefattar försynkroniseringssteget sändning av det förutbestämda meddelandet N gånger och det förutbestämda meddelandet tas emot N gånger. Det kan emellertid finnas tillfällen när alla N meddelanden inte tas emot. I sådana fall blir det skillnader i överensstämmelsen mellan sända och mottagna data.
Detta kan hanteras genom att man inte använder de uppmätta värden som är associerade med de felande meddelandena. Däreñer genereras N, eller ett antal mindre än N, tur- och returtidsvärden/RTT-värden. Detta görs enligt TM - TM - (Tu - Tu), varvid i ligger i intervallet [l . . .N]. N förskjutningsposter, eller ett antal törskjutningsposter mindre än N, genereras såsom beskrivs ovan. Det minsta RTT-värdet plockas upp och klockdifferensen ställs in på den förskjutning som hänför sig till det minsta RTT-värdet, och den absoluta klockan ställs in på TM så att i får det minsta RTT-värdet.
Enligt en föredragen utföringsfonn innefattar metoden dessutom steget att mäta redundansen för att göra mätningar vid sändaren.
Enligt en töredragen utföringsfonn innefattar metoden dessutom steget att mäta redundansen för att genomföra mätningar vid mottagaren.
Enligt en föredragen utföringsform innefattar mätningssteget sändning av ett förutbestämt meddelande från den första noden till den andra noden och lagring av 10 20 25 30 v 5.23 374 I sändningstiden för sändningen. Det förutbestämda meddelandet tas emot vid den andra noden, mottagningstiden för mottagningen lagras.
Enligt en föredragen utföringsforrn innefattar mätningssteget kronologisk ekvidistant sändning av ett förutbestämt meddelande från den första noden till den andra noden N gånger, och sändningstiden för varje sändning lagras. Det förutbestämda meddelandet tas emot vid den andra noden, mottagningstiden för varje mottagning lagras.
Förhoppningsvis tas meddelandet emot N gånger vid den andra noden. Armars kan detta hanteras såsom beskrivs ovan.
I en föredragen utföringsform utgörs efiersynkroniseringssteget av försynkroniseringssteget såsom definieras ovan.
Enligt en föredragen utföringsform innefattar interpoleringssteget beräkning av envägslatensen i datanätverket mellan en första nod och en andra nod enligt följande villkor: hastighetsdifferens = (förskjutning för efiersynkroniseringssteget - förskjutning för försynlcroniseringsstegefi/(absolut klocka för efiersynkroriiseringssteget - absolut klocka för försyrilcroniseringen), och latens = den tidpunkt vid vilken den andra noden tog emot det förutbestämda meddelandet- (den tidpunkt vid vilken den första noden sände det förutbestämda meddelandet + försynkroniseringsstegets förskjutning + (den tidpunkt vid vilken den första noden sände det förutbestämda meddelandet - den absoluta klockan för försynkroniseringsstegefl) - .
Enligt en föredragen utföringsforrn innefattar interpoleringssteget beräkning av envägslatensen i datanätverket mellan en första nod och en andra nod enligt ovan för meddelanden sända mellan den första och andra noden. 10 15 20 25 30 aszs 374i Enligt en föredragen utföringsform innefattar metoden dessutom en redundanstid motsvarande redundansen för att göra mätningar vid åtminstone någon av den första och andra noden, och envägslatensen i datanätverket mellan en första nod och en andra nod beräknas enligt: latens = den tidpunkt vid vilken den andra noden tog emot det förutbestämda meddelandet - (den tidpunkt vid vilken den första noden sände det förutbestämda meddelandet + förskjutningen för försynlcronisering-SSICSCÉ + hastighetsdífïerens (den tidpunkt vid vilken den första noden sände det förutbestämda meddelandet - den absoluta klockan för törsynla-oniseringsstegefi) - redundanstiden.
Enligt en föredragen utfóringsfonn beräknas i interpoleringssteget envägslatensen i datanätverket mellan en första nod och en andra nod enligt ovan för N meddelanden sända mellan den första och andra noden. I den händelse inte alla N meddelanden tagits emot, görs detta alternativt för de mottagna meddelandena.
Det ligger även inom ramen för föreliggande uppfinning att det är möjligt att arbeta i förhållande till flera noder än en enda. Naturligtvis kan föreliggande uppfinning användas för att arbeta mot ett flertal noder.
KORT F IGURBESKRIVNING I Fig. 1 visas schematiskt en utföringsform med tvâ noder, A och B, sammankopplade via ett nätverk N.
I F ig. 2 visas schematiskt en utföringsforrn aven uppbyggnad av en nod.
I F ig. 3 visas schematiskt en utföringsfonn av nätverksmodul.
I Fig. 4 visas schematiskt en utformning av ett flödesschema för presynkronisering av en klientnot.
I Fig. 5 visas schematiskt en utformning av ett flödesschema för presynkronisering av en svarsnod.
I Fig. 6 visas schematiskt en utformning av ett flödesschema för den begärande noden/klienmoden i mätningsfasen. 10 20 25 30 523 334 I Fig. 7 visas schematiskt en utformning av ett flödesschema för den svarande noden/svarsnoden i mätningsfasen.
I Fig. 8 visas schematiskt en utformning av ett flödesschema för interpoleringsmetoden.
BESKRIVNING Av FÖREDRAGNA UTFöRmGsFoRMBR Enligt en första utföringsfonn visas i Fig. 1 ett system med två noder A och B som är hopkopplade medelst ett kommunikationsnätverk N. Noderna kommunicerar genom att sända meddelanden (paket) via nätverket N. En mätning genomförs från en nod A till en nod B, varvid A kallas klientnod och B kallas svarsnod. Varje nod kan arbeta både som klientnod och svarsnod. En nod kan även genomföra mätningar med mer än en annan nod. Exempelvis kan A samtidigt genomföra en mätning med en tredje nod C (visas ej i Fig. 1). Nätverket N kan vara ett internätverk som kör IP-protokollet. Detta gör det möjligt för varje nod i ett IP-gränssnitt och en IP-protokollstack att kommunicera med varandra via N.
I Fig. 2 visas en utföringsforrn av en nod. Datomoden är utrustad med ett nätverkskort som kan kommunicera med användning av IP. En sådan nod har en CPU, minnesbussar, diskar etc. som gör att den kan arbeta som en dator. Noden kör ett operativsystem, i vilket systemprograrnvaran kan vara implementerad. Denna utföringsforrn implementeras som en programvarumodul som verkar i ett operativsystem för en sådan nod.
I Fig. 3 visas en utföringsfonn av en nätverksmodul. Den programvarumodul som implementerar den metod som beskrivsi detta dokument behöver få tillgång till en nätverksmodul. Nätverksmodulen som visas i F ig. 3 består vanligen av ett nâtverksgränssnittskort, en styrenhet, en IP-stack och en socket API. Nätverkskortet gör det möjligt för noden att fysiskt ansluta sig till ett accessnätverk. Styrenheten innehåller programvara som ger IP-stacken access till nätverkstjänster på nätverkskortet. IP- stacken innehåller full implementering av det kommunikationsprotokoll som gör det möjligt för noden att kommunicera via Intemet. Detta kan vara en uppsättning protokoll 10 15 20 25 30 szs :satt som hänvisas till som TCP/IP. Socketen API är ett funktionellt gränssnitt som systemmodulen kan komma åt för att sända och ta emot paket till och från nätverket.
Enligt en utiöringsform kan en systemmodul som implementerat uppfinningen implementeras som en användarapplikation i ett operativsystem. Det kräver en socket API för att komma åt nätverket för att sända och ta emot paket via nätverket.
Noderna kommunicerar med meddelanden via nätverket. Det finns två slag av meddelanden: 0 Synkroniseringsmeddelanden o Mätningsmeddelanden Båda typema av meddelande kan vara inkapslade via IP-protokollet med användning av UDP/IP-transportprotokollet eller någon annan icke tillförlitlig datagramtjänst. Enligt en utföringsform kodas båda typerna av meddelande med RTP-protokollet.
Ett synkroniseringsmeddelande är antingen en begäran (synkbegäran) eller ett svar (synksvar). Begäran-meddelandet sänds medelst klientnoden och tas emot av en svarsnod. Ett svar sänds medelst en svarsnod när den tar emot ett synkbegäran- meddelande. Synksvar-meddelandet tas emot av klientnoden.
Synkbegäran-meddelandet innehåller följande tält: ett sekvensnummer och en tidsmärluting Tl.
Synksvar-meddelandet innehåller följande fált: ett sekvensnummer och tre tidsmärkningar: Tl, T2 och T3.
Semantiken för meddelandefälten är följande: 0 Sekvensnummer - Klientnoden sätter sekvensnumret inkrementellt (0, l, 2 etc.). Svararen kopierar sekvenstalet från ett synkbegäran- till ett synksvars- meddelande. Sekvensnumret används för att upptäcka paketförlust, ombeställning eller duplikat i nätverket. 10 15 20 25 30 :sas 314 0 Tidsmärkning Tl. Den tidpunkt när synkbegäran-meddelandet sändes av klientnoden. 0 Tidsmärkning T2. Den tidpunkt när synkbegäran-meddelaridet mottogs av svarsnoden. 0 Tidsmärkning T3. Den tidpunkt när synksvar-meddelandet sändes av svarsnoden.
Mätningsmeddelandena sänds enbart från klientnoden till svarsnoden.
Mätningsmeddelandena innehåller ett sekvensfált och ett tidsmärloiingsfált T1.
Semantiken för meddelandetälten är följ ande: 0 Sekvensnumret. Klientnoden sätter sekvensnumret inkrementellt (0, 1, 2 etc.). 0 Tidsmärkriing Tl. Den tidpunkt när mätningsmeddelandet sändes av klientnoden.
Med hänvisning till den uppfinningsenliga metoden har båda noderna klockor med hög precision som inte synkroniseras med varandra. Hög precision betyder att de är linjära relativt varandra under en begränsad tidsperiod räknad i minuter och att de har hög upplösning, åtminstone upp till 1 mikrosekund. Detta betyder att klockoma har olika hastigheter men hastighetsskillnaden är konstant över tiden.
Metoden delas in i fem steg: 0 Pl - Synkronisering l 0 P2 - Mätning 0 P3 - Synkronisering 2 0 P4 - Interpolering, och 0 Genereríng av en latensprofil.
I Tabell l nedan anges en utformning av konstanter som används för att parameterisera metoden. De värden som angivits fór konstanterna utgör endast ett exempel; metoden kan användas även för andra värden.
Tabell 1 Konstantnamn Beskrivning Exempelvärden SNR Antal sända synkbegäran-meddelanden S0 NM Antal sända rnätningsmeddelanden 10000 DT Fördröjning mellan sändning av 20 ms mätningsmeddelanden I Tabell 2 nedan förklaras variabler som används i denna metod.
Tabell 2 Variabelnamn Beskrivning NSREQ Antal sända synkbegäran-meddelanden NSRESP Antal mottagna synksvar-meddelanden Tl Tidpunkt när meddelande sändes av klientnod.
T2 Tidpunkt när meddelande togs emot av svarsnod.
T3 Tidpunkt när meddelande sändes av svarsnod.
T4 Tidpunkt när meddelande togs emot av klientnod.
RTT Tur- och returtid RTTMIN Det minsta RTT-värdet under en synkroniseringsfas CABSO Väggklocka för ett synkroniseringsmeddelande i Pl-fasen.
CDIFFO Differens/förslcjuniing mellan de båda klockorna vid ett synkroniseringsmeddelande i Pl-fasen.
CABSI Väggklocka för ett synkroniseringsmeddelande i PB-fasen.
CDIFFz niffefens/fzsfskjuming mellan de bada kieckorna vid en synkroniseringsmeddelande i P3-fasen.
SEQ Sekvensnummer satt av klientnoden.
A[] Vektor innehållande T1 för alla mätningsmeddelanden.
B[] Vektor innehållande T2 för alla mätningsmeddelanden.
L[] Vektor innehållande de resulterande envägslateriserna eller latensprofilen.
Ks Redundans för sändning av ett meddelande Kr Redundans för mottagning av ett meddelande 10 20 25 - 5.23 3174 10 RATEBIAS Differens i hastighet mellan de båda klockorna Vektor för booliska värden som fastställer giltigheten på ingângarna i A[], B[] och L[] VALIDU Utdata utgör med föreliggande uppfinning en latensprofil, som är den vektor som innehåller de resulterande envägslatensema eller L[].
I Fig. 4 visas schematiskt en utformning av ett flödesschema för presynkronisering av en klientnot. Noden sänder en synkbegäran till svarsnoden. Den sätter sekvensnummer och T1 -tidsmärluiingen i synkbegäran-meddelandet. Därefter väntar den på att ett svar skall komma tillbaka från svarsnoden eller att en tídsutlösning skall inträffa. Om ett synkbegäran-meddelande mottagits, registreras en tidsmärkning T4 när synksvar- meddelandet mottagits. Tillsammans med de tre tidsmärkningama Tl, T2, T3 försöker modulen finna meddelandet med det minsta RTT-värdet. Detta meddelande används för att finna de båda värdena CABSO and CDIFFO och används i interpoleringsmetoden P4.
Metoden använder två variabler NSREQ och NSRESP för att registrera antalet sända synkbegäran-meddelanden respektive mottagna synksvar-meddelanden. Dessa variabler används som ett avslutande villkor. Om modulen sänder 2SNR synkbegäran- meddelanden utan att ha mottagit SNR synksvar-meddelande, så är detta ett fel. Så snart som modulen mottagit SNR synksvar-rneddelanden, fortsätter den till nästa fas, P2A.
SNR är en fördefinierad konstant, vanligen 50 meddelanden. Metoden kan även använda variablema RTT och RTT_MIN. RTT__MIN är i förväg satt till ett stort värde och används för att finna syrikbegärart/synksvar-paret med det minsta RTT-värdet.
Demia mätning används därefter ßr att beräkna CABS- och CDIFF-värdena. Med andra ord gör vi gällande att den bästa mätningen är den med minsta RTT. Många andra metoder använder medelvärdet. Observera att den metod som beskrivs i Fig. 4 kan implementeras något annorlunda. Exempelvis kan sändning och mottagning av meddelanden göras samtidigt, inte sekventiellt såsom visas i figuren. I det fallet skapas två processer, en som sänder synkbegäran-meddelanden regelbundet och en som väntar på synksvar-meddelanden. I det fallet behöver inte tidsntlösning göras. Istället måste en försening mellan sändning av synkbegâran-meddelanden införas. 10 15 20 25 30 ll I Fig. 5 visas schematiskt en utformning av ett flödesschema för presynkronisering av en svarsnod. Noden väntar på en synkbegäran från klientnoden. När ett sådant meddelande tas emot, skapar den ett synksvar-meddelande, kopierar sekvensnumret och TI från synkbegäran-meddelandet, registrerar T2 och T3 och sänder synksvar- meddelandet tillbaka till klientnoden. Om det mottagna meddelandet inte är ett synkbegäran-meddelande, antas det att det är ett mätningsmeddelande som hanteras i P2B. Storleken på vektonerna är lika med antalet sända mätningsmeddelanden.
Mätningsfasen består av att klientnoden periodiskt sänder mätningsmeddelanden till svarsnoden. Svarsnoden registrerar tidsmärkriingarna fór tidpunkten för sändning och tidpunkten för mottagning av meddelanden i två vektorer A[] respektive B[]. Storleken på vektorerna är lika med antalet sända mätningsmeddelanden, NM. De båda vektorerna används senare i P4.
I Fig. 6 visas schematiskt en utformning av ett flödesschema för klientnoden i mätningsfasen. Klientnoden sänder NM meddelanden (t ex 10 000) med intervall DT mellan varje paket (t ex 20 ms). Varje syrikbegäran-meddelande kommer att innehålla SEQ, sekvensnummer, och Tl, den tidpunkt meddelandet sändes. Redundansen för sändning av ett meddelande Ks beräknas initialt. Detta är skillnaden i tid från när tidmärkningen togs och när meddelandet i själva verket sändes. Ks kan sättas till 0, om noden saknar förmåga att beräkna denna tid.
I Fig. 7 visas en utformning av ett flödesschenia för svarsnoden. Svarsnoden lagrar den avsändande tidmärkningen Tl i en vektor A och den mottagande tidmärkningen T2 i vektorn B. Sekvensnumret används som ett index i vektom. Redundansen för sändning av ett meddelande Kr beräknas initialt. Detta är skillnaden i tid från när tidmärkningen togs och när meddelandets i själva verket sändes. Kr kan sättas till 0, om noden saknar förmåga att beräkna denna tid.
Den andra synkroniseringsfasen är i denna utíöringsfonn lika med fas Pl som beskrivs ovan. skinnaaema ar följande; i 20 25 ears 374 1. De båda processerna kallas P3A respektive P3B i stället för PlA respektive Pl B. 2. De resulterande variablema kallas CABSl respektive CDIFFI i stället för CABSO respektive CDIFFO. 3. Efter framgångsrikt fullbordande av processema går båda flödeschernana till P4 i stället för till P2A och P2B.
I interpoleringsfasen används de mätningar som samlats i fas P2 i vektorerna A[] och B[] samt synkroniseringsvärdena CABSO, CDIFFO, CABS1 och CDIFF1 i faserna P1 och P3 för att interpolera en sekvens avseende envägslatensvärden. Denna metod kan i sig genomföras på klientnoden, svarsnoden eller någon annan nod och kan genomförs vid vilken tidpunkt som helst efter de andra tre fasema. Exempelvis kan denna fas göras som ett steg efter behandlingeni en server. Data måste emellertid överföras till den plats där metoden är implernenterad. Slutresultatet för denna metod är en vektor L[], dvs latensprofilen, med storleken NM innehållande de faktiska envägslatensvärdena för mätningen mellan klient- och svarsnoden.
I Fig. 8 visas schematiskt en utformning av ett flödesschema för interpoleringsmetoden.
Först beräknas differenserna i hastighet RATEBIAS enligt följande: RATEBIAS = (CDIFFI - CDIFFO) / (CABS1 - CABSO), Metoden beräknar upprepade gånger värdena för envägslatensvektorn L[] från samlade eller beräknade värden enligt följande: L[i] = B[i] - (A[i] + CDIFFO + RATEBIAS*(A[i] - CABSO)) - Ks - Kr

Claims (1)

1. 0 15 20 25 30 æaza z74 KRAV l. Metod att indikera envägslatens i ett datanätverk (N), utan kontinuerlig klocksynkronisering, mellan en första nod (A) och en andra nod (B), innefattande: ett ñrsynkroniseringssteg Bestämning av klockförslcjutriing mellan nod(A) och nod(B) vid en tidpunkt innan mätningssteget. ett mätningssteg En sekvens av mätningsmeddelanden skickas från nod(A) till nod(B). Meddelandena tidstämplas vid både sändning och mottagning. ett eftersynkroniseringssteg Bestämning av klockförskjutrring mellan nod(A) och nod(B) vid en tidpunkt efter rnätningssteget. ett interpoleringssteg, och Beräkning av hastighetsdifïerens ur synkroniseringsstegen. Latensvârden beräknas genom interpolering av hastighetsdifferensen över de individuella mätvärdena. generering av en latensprofil. Resultatet av interpolerssteget är en sekvens av envägslatenser från nod(A) till nod(B). . Metod enligt krav 1, varvid försynlcroniseringssteget innefattar: sändning av ett förutbestämt meddelande från den första noden (A) till den andra noden (B), mottagande vid den första noden (A) av ett förutbestämt meddelande skickat av den andra noden (B), beräkning av en förskjutning enligt ((Tz - Ti) + (Ts - T4))/2, varvid T; utgör sändningstidpurikten från den första noden (A), T; utgör mottagningstidpunkten vid den andra noden (B), T; utgör sändningstidpunkten vid den andra noden (B) och T., utgör mottagningstidpunkten vid den första noden (A), och inställning av klockdifferens i förhållande till förskjutning, och inställning av absolut klocka relativt T4. 10 15 20 25 30 b) UI i 528 374, 14 . Metod enligt krav 2, varvid försynkroniseringssteget innefattar: sändning av det förutbestämda meddelandet N gånger, mottagande av det förutbestämda meddelandet, generering av N tur- och returtidsvärden/RTT-värden enligt T (4 - TU - (Tu - Ti 1), varvid i ligger i intervallet [l ...N], generering av N förskjutningsposter, hämtning av det minsta RTT-värdet, inställning av klockdifferensen på den förskjutning som hänför sig till det minsta RTT-värdet, och inställning av den absoluta klockan till TM så att i har det minsta RTT-värdet. . Metod enligt krav 1, vilken dessutom innefattar: mätning av redundansen för att göra mätningar vid sändaren. . Metod enligt krav l, vilken dessutom innefattar: mätning av redundansen för att göra mätningar vid mottagaren. . Metod enligt krav 1, varvid rnätnirrgssteget innefattar: sändning av ett förutbestämt meddelande fiån den första noden (A) till den andra noden (B), lagring av sändningstiden för sändningen, mottagning av det förutbestämda meddelandet vid den andra noden (B), och lagring av mottagningstidpunkten för mottagandet. . Metod enligt krav 6, varvid rnämingssteget innefattar: kronologisk, ekvidistant sändning av ett förutbestämt meddelande från den första noden (A) till den andra noden (B) N gånger, lagring av sändningstiden för varje sändning, mottagning av det förutbestämda meddelandet vid den andra noden (B), och lagring av mottagningstidpunkten för varje mottagande. 10 15 20 25 30 8. Metod enligt krav 1, varvid eftersynkroriiseringssteget utgörs av försynkroniseringssteget enligt något av kraven 2-5. 9. Metod enligt krav 1, varvid interpoleringssteget innefattar: - beräkning av envägslatensen i datanätverket mellan en första nod (A) och en andra nod (B) enligt: hastighetsdiñerens = (förskjutning för efiersynkroniseringssteget - förskjutning för försynkroniseringssteget)/(absolut klocka för eftersynkroniseringssteget - absolut klocka för försynkroniseringen), och latens = den tidpunkt vid vilken den andra noden (B) tog emot det förutbestämda meddelandet - (den tidpunkt vid vilken den första noden (A) sände det förutbestämda meddelandet + förskjutning för försynkroniseringssteget + hastighetsdífferens * (den tidpunkt vid vilken den första noden (A) sände det förutbestämda meddelandet - den absoluta klockan för försynlcroniseringsstegefi). 10. Metod enligt krav 1, varvid interpoleringssteget innefattar: - beräkning av envägslatensen i datanätverket (N) mellan en första nod (A) och en andra nod (B) enligt krav 9 för N meddelanden sända mellan den första och andra noden (A, B). 11. Metod enligt krav 1, vilken dessutom innefattar: - en redundanstid motsvarande redundansen för att göra mätningar vid åtminstone någon av den första och andra noden (A, B). - beräkning av envägslatensen i datanätverket mellan en första nod (A) och en andra nod (B) enligt: latens = den tidpunkt vid vilken den andra noden (B) tog emot det förutbestämda meddelandet - (den tidpunkt vid vilken den första noden (A) sände det förutbestämda meddelandet + förskjutningen för försynkronsieringssteget + hastighetsdifïerens * (den 10 15 *S2s s74e 16 tidpunkt vid vilken den första noden (A) sände det förutbestämda meddelandet - den absoluta klockan för försynluoniseringssteget» - redundanstiden. 12. Metod enligt krav 11, varvid interpoleringssteget innefattar: - beräkning av envägslatensen i datanätverket mellan en första nod (A) och en andra nod (B) enligt krav 9 för N meddelanden sända mellan den första och andra noden (A, B)- 13. Datorprogramprodukt som kan laddas i intemminnet på en dator, innefattande koddelar för programvaran för att genomföra metoden(ema) enligt något av föregående krav, när den körs i en dator. 14. Bärare innefattande datorprogramprodukten enligt lcrav 13. 15. Metod för att ange serverfunktionalitet enligt något av kraven 1-12.
SE0402280A 2004-09-22 2004-09-22 Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk SE528374C2 (sv)

Priority Applications (15)

Application Number Priority Date Filing Date Title
SE0402280A SE528374C2 (sv) 2004-09-22 2004-09-22 Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk
PCT/SE2005/001307 WO2006033611A1 (en) 2004-09-22 2005-09-09 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US11/662,646 US8218576B2 (en) 2004-09-22 2005-09-09 Method, a computer program product, and a carrier for indicating one-way latency in a data network
EP05779215.2A EP1807962A4 (en) 2004-09-22 2005-09-09 METHOD, COMPUTER PROGRAM PRODUCT AND CARRIER FOR INDICATING UNIDIRECTIONAL LATENCY IN A DATA NETWORK
US13/494,652 US8705577B2 (en) 2004-09-22 2012-06-12 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US14/194,885 US8948210B2 (en) 2004-09-22 2014-03-03 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US14/576,972 US9094427B2 (en) 2004-09-22 2014-12-19 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US14/745,676 US9300556B2 (en) 2004-09-22 2015-06-22 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US15/057,224 US9544210B2 (en) 2004-09-22 2016-03-01 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US15/341,514 US9736049B2 (en) 2004-09-22 2016-11-02 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US15/652,630 US10178009B2 (en) 2004-09-22 2017-07-18 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US16/027,335 US10425309B2 (en) 2004-09-22 2018-07-04 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US16/445,351 US10680924B2 (en) 2004-09-22 2019-06-19 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US16/816,793 US10938698B2 (en) 2004-09-22 2020-03-12 Method, a computer program product, and a carrier for indicating one-way latency in a data network
US17/158,222 US11516101B2 (en) 2004-09-22 2021-01-26 Method, a computer program product, and a carrier for indicating one-way latency in a data network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
SE0402280A SE528374C2 (sv) 2004-09-22 2004-09-22 Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk

Publications (3)

Publication Number Publication Date
SE0402280D0 SE0402280D0 (sv) 2004-09-22
SE0402280L SE0402280L (sv) 2006-03-23
SE528374C2 true SE528374C2 (sv) 2006-10-31

Family

ID=33308791

Family Applications (1)

Application Number Title Priority Date Filing Date
SE0402280A SE528374C2 (sv) 2004-09-22 2004-09-22 Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk

Country Status (4)

Country Link
US (12) US8218576B2 (sv)
EP (1) EP1807962A4 (sv)
SE (1) SE528374C2 (sv)
WO (1) WO2006033611A1 (sv)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE528374C2 (sv) 2004-09-22 2006-10-31 Prosilient Technologies Ab Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk
US20080031283A1 (en) * 2006-08-07 2008-02-07 Martin Curran-Gray Time synchronization for network aware devices
EP1936867B1 (en) * 2006-12-22 2013-02-20 Corvil Limited Delay measurements in network traffic
US20100293243A1 (en) * 2009-05-14 2010-11-18 Fluke Corporation method and apparatus for measuring directionally differentiated (one-way) network latency
EP2449728B1 (en) * 2009-06-30 2019-02-20 D&M Holdings, Inc. Systems and methods for providing synchronization in a networked environment
US8554951B2 (en) * 2011-03-08 2013-10-08 Rackspace Us, Inc. Synchronization and ordering of multiple accessess in a distributed system
EP2627040B1 (en) * 2012-02-12 2018-02-28 Hochschule Anhalt (FH) Method for eliminating systematical error components in a set of one-way delay measurement results for communications between two or more computing systems in a communication network, apparatus for performing the method and computer program product
US8830860B2 (en) 2012-07-05 2014-09-09 Accedian Networks Inc. Method for devices in a network to participate in an end-to-end measurement of latency
US10999171B2 (en) 2018-08-13 2021-05-04 Accedian Networks Inc. Method for devices in a network to participate in an end-to-end measurement of latency
US8792380B2 (en) 2012-08-24 2014-07-29 Accedian Networks Inc. System for establishing and maintaining a clock reference indicating one-way latency in a data network
US9826493B2 (en) * 2013-12-04 2017-11-21 Mitsubishi Electric Research Laboratories, Inc. Synchronized multi-sink routing for wireless networks
US10250474B2 (en) * 2014-03-31 2019-04-02 Cisco Technology, Inc. Calculating latency in computer networks
US10979332B2 (en) 2014-09-25 2021-04-13 Accedian Networks Inc. System and method to measure available bandwidth in ethernet transmission system using train of ethernet frames
CN106341205B (zh) * 2016-08-31 2019-02-22 上海交通大学 低延时时间触发网络系统及优化方法
CN111757391B (zh) * 2019-03-29 2024-04-12 华为技术有限公司 一种通信方法及装置
EP3745651B8 (en) 2019-05-29 2022-02-23 Rohde & Schwarz GmbH & Co. KG Measuring system and measuring method for measuring interactivity
CN115174979B (zh) * 2022-06-20 2023-12-29 阿里巴巴(中国)有限公司 流媒体传输网络及传输控制方法、装置、设备及存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6157646A (en) * 1998-01-26 2000-12-05 Adc Telecommunications, Inc. Circuit and method for service clock recovery
US6545979B1 (en) * 1998-11-27 2003-04-08 Alcatel Canada Inc. Round trip delay measurement
JP3444804B2 (ja) * 1998-11-27 2003-09-08 沖電気工業株式会社 伝送装置
FI20002607A (sv) * 2000-11-28 2002-05-29 Nokia Corp Upprätthållande av från terminal till terminal - synkronisering med en telekommunikationsförbindelse
US7023816B2 (en) * 2000-12-13 2006-04-04 Safenet, Inc. Method and system for time synchronization
US7113485B2 (en) * 2001-09-04 2006-09-26 Corrigent Systems Ltd. Latency evaluation in a ring network
US7283568B2 (en) * 2001-09-11 2007-10-16 Netiq Corporation Methods, systems and computer program products for synchronizing clocks of nodes on a computer network
US20030093513A1 (en) * 2001-09-11 2003-05-15 Hicks Jeffrey Todd Methods, systems and computer program products for packetized voice network evaluation
KR20030039428A (ko) * 2001-11-13 2003-05-22 학교법인대우학원 패킷 지연을 기반으로 하는 라우팅 방법
US7114091B2 (en) * 2002-03-18 2006-09-26 National Instruments Corporation Synchronization of distributed systems
US7286482B2 (en) * 2002-11-29 2007-10-23 Alcatel Lucent Decentralized SLS monitoring in a differentiated service environment
US7292537B2 (en) * 2002-11-29 2007-11-06 Alcatel Lucent Measurement architecture to obtain per-hop one-way packet loss and delay in multi-class service networks
SE528374C2 (sv) * 2004-09-22 2006-10-31 Prosilient Technologies Ab Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk

Also Published As

Publication number Publication date
EP1807962A4 (en) 2013-10-30
US8218576B2 (en) 2012-07-10
US10680924B2 (en) 2020-06-09
US10178009B2 (en) 2019-01-08
US20170126526A1 (en) 2017-05-04
US8705577B2 (en) 2014-04-22
US9544210B2 (en) 2017-01-10
US11516101B2 (en) 2022-11-29
US10425309B2 (en) 2019-09-24
US8948210B2 (en) 2015-02-03
WO2006033611A1 (en) 2006-03-30
US20160182332A1 (en) 2016-06-23
US20150288582A1 (en) 2015-10-08
US20180316586A1 (en) 2018-11-01
US10938698B2 (en) 2021-03-02
SE0402280L (sv) 2006-03-23
EP1807962A1 (en) 2007-07-18
US20200213213A1 (en) 2020-07-02
US20070268850A1 (en) 2007-11-22
SE0402280D0 (sv) 2004-09-22
US20180006919A1 (en) 2018-01-04
US20140177654A1 (en) 2014-06-26
US20190306043A1 (en) 2019-10-03
US20210152452A1 (en) 2021-05-20
US9094427B2 (en) 2015-07-28
US20150106534A1 (en) 2015-04-16
US20120257641A1 (en) 2012-10-11
US9300556B2 (en) 2016-03-29
US9736049B2 (en) 2017-08-15

Similar Documents

Publication Publication Date Title
US10666371B2 (en) System for establishing and maintaining a clock reference indicating one-way latency in a data network
US10938698B2 (en) Method, a computer program product, and a carrier for indicating one-way latency in a data network
US8451867B2 (en) Network time protocol precision timestamping service
CN102104475B (zh) 基于ieee1588的同步系统及其同步方法
EP3903454A2 (en) A tsn enabled controller
US20230163871A1 (en) Network interface card structure and clock synchronization method to precisely acquire heterogeneous ptp synchronization information for ptp synchronization network extension
JP2006148774A (ja) 同期装置

Legal Events

Date Code Title Description
NUG Patent has lapsed