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ätverkInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000004590 computer program Methods 0.000 claims abstract 4
- 238000005259 measurement Methods 0.000 claims description 37
- 230000005540 biological transmission Effects 0.000 claims description 20
- 230000006855 networking Effects 0.000 claims 2
- 238000004364 calculation method Methods 0.000 claims 1
- 238000006073 displacement reaction Methods 0.000 claims 1
- 230000004044 response Effects 0.000 description 31
- 239000013598 vector Substances 0.000 description 15
- 238000013461 design Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 102100030045 Calcium-binding and spermatid-specific protein 1 Human genes 0.000 description 3
- 101000794467 Homo sapiens Calcium-binding and spermatid-specific protein 1 Proteins 0.000 description 3
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 229910052760 oxygen Inorganic materials 0.000 description 2
- 239000001301 oxygen Substances 0.000 description 2
- 239000000523 sample Substances 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- XNPKNHHFCKSMRV-UHFFFAOYSA-N 4-(cyclohexylamino)butane-1-sulfonic acid Chemical compound OS(=O)(=O)CCCCNC1CCCCC1 XNPKNHHFCKSMRV-UHFFFAOYSA-N 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
- H04L43/0858—One way delays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0682—Clock or time synchronisation in a network by delay compensation, e.g. by compensation of propagation delay or variations thereof, by ranging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/067—Generation of reports using time frame reporting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/65—Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/04—Speed or phase control by synchronisation signals
- H04L7/10—Arrangements for initial synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2212/00—Encapsulation of packets
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
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.
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 |
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 |
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 |
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 (18)
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 |
WO2011000041A1 (en) * | 2009-06-30 | 2011-01-06 | Avega Systems Pty Ltd | 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 |
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 |
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 |
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 | 华为技术有限公司 | 一种通信方法及装置 |
US10887432B2 (en) * | 2019-05-20 | 2021-01-05 | Google Llc | Trip time estimation for transport control protocol |
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)
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 |
JP3444804B2 (ja) * | 1998-11-27 | 2003-09-08 | 沖電気工業株式会社 | 伝送装置 |
US6545979B1 (en) | 1998-11-27 | 2003-04-08 | Alcatel Canada Inc. | Round trip delay measurement |
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 |
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 |
US7286482B2 (en) * | 2002-11-29 | 2007-10-23 | Alcatel Lucent | Decentralized SLS monitoring in a differentiated service environment |
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 |
-
2004
- 2004-09-22 SE SE0402280A patent/SE528374C2/sv not_active IP Right Cessation
-
2005
- 2005-09-09 WO PCT/SE2005/001307 patent/WO2006033611A1/en active Application Filing
- 2005-09-09 EP EP05779215.2A patent/EP1807962A4/en not_active Withdrawn
- 2005-09-09 US US11/662,646 patent/US8218576B2/en active Active
-
2012
- 2012-06-12 US US13/494,652 patent/US8705577B2/en active Active
-
2014
- 2014-03-03 US US14/194,885 patent/US8948210B2/en active Active
- 2014-12-19 US US14/576,972 patent/US9094427B2/en active Active
-
2015
- 2015-06-22 US US14/745,676 patent/US9300556B2/en active Active
-
2016
- 2016-03-01 US US15/057,224 patent/US9544210B2/en active Active
- 2016-11-02 US US15/341,514 patent/US9736049B2/en active Active
-
2017
- 2017-07-18 US US15/652,630 patent/US10178009B2/en active Active
-
2018
- 2018-07-04 US US16/027,335 patent/US10425309B2/en active Active
-
2019
- 2019-06-19 US US16/445,351 patent/US10680924B2/en active Active
-
2020
- 2020-03-12 US US16/816,793 patent/US10938698B2/en active Active
-
2021
- 2021-01-26 US US17/158,222 patent/US11516101B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US10178009B2 (en) | 2019-01-08 |
EP1807962A4 (en) | 2013-10-30 |
US20190306043A1 (en) | 2019-10-03 |
US20120257641A1 (en) | 2012-10-11 |
US20200213213A1 (en) | 2020-07-02 |
US8948210B2 (en) | 2015-02-03 |
US10680924B2 (en) | 2020-06-09 |
US20150288582A1 (en) | 2015-10-08 |
US20150106534A1 (en) | 2015-04-16 |
US9736049B2 (en) | 2017-08-15 |
US9544210B2 (en) | 2017-01-10 |
WO2006033611A1 (en) | 2006-03-30 |
US20170126526A1 (en) | 2017-05-04 |
US20180006919A1 (en) | 2018-01-04 |
US20210152452A1 (en) | 2021-05-20 |
US10425309B2 (en) | 2019-09-24 |
US20160182332A1 (en) | 2016-06-23 |
US9300556B2 (en) | 2016-03-29 |
SE0402280D0 (sv) | 2004-09-22 |
EP1807962A1 (en) | 2007-07-18 |
US9094427B2 (en) | 2015-07-28 |
US20180316586A1 (en) | 2018-11-01 |
US20140177654A1 (en) | 2014-06-26 |
SE0402280L (sv) | 2006-03-23 |
US8705577B2 (en) | 2014-04-22 |
US20070268850A1 (en) | 2007-11-22 |
US11516101B2 (en) | 2022-11-29 |
US8218576B2 (en) | 2012-07-10 |
US10938698B2 (en) | 2021-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10666371B2 (en) | System for establishing and maintaining a clock reference indicating one-way latency in a data network | |
SE528374C2 (sv) | Metod, en dataprogramprodukt samt en bärare för att ange envägslatens i ett datanätverk | |
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 |