CN104584467A - Clock synchronization using multiple network paths - Google Patents

Clock synchronization using multiple network paths Download PDF

Info

Publication number
CN104584467A
CN104584467A CN201380024941.2A CN201380024941A CN104584467A CN 104584467 A CN104584467 A CN 104584467A CN 201380024941 A CN201380024941 A CN 201380024941A CN 104584467 A CN104584467 A CN 104584467A
Authority
CN
China
Prior art keywords
path
clock
time synchronized
packet
address
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201380024941.2A
Other languages
Chinese (zh)
Other versions
CN104584467B (en
Inventor
T·米兹拉希
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Marvell Israel MISL Ltd
Original Assignee
Marvell Israel MISL Ltd
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
Priority claimed from US13/764,732 external-priority patent/US9172485B2/en
Application filed by Marvell Israel MISL Ltd filed Critical Marvell Israel MISL Ltd
Publication of CN104584467A publication Critical patent/CN104584467A/en
Application granted granted Critical
Publication of CN104584467B publication Critical patent/CN104584467B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/0664Clock or time synchronisation among packet nodes using timestamps unidirectional timestamps
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A network device includes one or more ports coupled to a network, and a time synchronization module. The time synchronization module processes (i) respective path information, and (ii) respective time synchronization information included in each of at least some of a plurality of time synchronization packets received from a master clock device over two or more different communication paths and via at least one of the one or more ports, wherein the respective path information indicates a respective communication path in the network via which the respective time synchronization packet was received. The time synchronization module determines a system time clock responsive to the processing of the path information and the time synchronization information included in the at least some of the plurality of time synchronization packets.

Description

Use the clock synchronous of multiple network path
the cross reference of related application
Present disclosure requires the rights and interests of the following:
In on May 9th, 2012 submit to, be entitled as " Slave Diversity:Using MultiplePaths to Improve the Accuracy of Clock Synchronization Protocols " the 61/644th, No. 722 U.S. Provisional Patent Application;
In on May 15th, 2012 submit to, be entitled as " Slave Diversity:Using MultiplePaths to Improve the Accuracy of Clock Synchronization Protocols " the 61/647th, No. 123 U.S. Provisional Patent Application;
In on May 15th, 2012 submit to, be entitled as " Running PTP Over MultiplePaths:A Proposed Extension to the IEEE 1588 " the 61/647th, No. 173 U.S. Provisional Patent Application;
In on August 31st, 2012 submit to, be entitled as " Multi-Path Time Protocols " the 61/695th, No. 367 U.S. Provisional Patent Application;
In on August 31st, 2012 submit to, be entitled as " Multi-Masters Precision TimeProtocols " the 61/695th, No. 371 U.S. Provisional Patent Application; And
In on September 27th, 2012 submit to, be entitled as " Multi-Path Time Protocols " the 61/706th, No. 526 U.S. Provisional Patent Application.
In on October 15th, 2012 submit to, be entitled as " Running PTP Over MultiplePaths:A Proposed Extension to the IEEE 1588 " the 61/713rd, No. 818 U.S. Provisional Patent Application;
In addition, the application on February 11st, 2013 submit to, be entitled as " ClockSynchronization Using Multiple Network Paths " the 13/764th, the part continuation application of No. 732 U.S. Patent applications, 13/764th, No. 732 U.S. Patent applications especially require that submit on February 9th, 2012, that be entitled as " Time Synchronization Diversity " the 61/597th, the rights and interests of No. 092 U.S. Provisional Patent Application.
The full content of the disclosure of all applications cited above is integrated into herein by reference.
Technical field
Present disclosure relates generally to the equipment maintaining clock, and relates more specifically to the technology for across a network synchronised clock.
Background technology
Background provided herein describes for the purpose of the situation presenting present disclosure generally.In the degree that it is described in this background technology part, the work of the inventor of current signature and specification may not yet become when submitting to prior art in, be not both impliedly regarded as the prior art for present disclosure clearly yet.
Based on generally using clock synchronization protocol to carry out synchronously the clock be maintained at heterogeneous networks equipment place in the network of packet.In such clock synchronization protocol, the protocol message comprising master clock time is sent to the second network equipment maintained from clock by the first network equipment maintaining master clock.The network delay of second network equipment use master clock time and estimation adjusts from clock, to make from clock and master clock.
Summary of the invention
In an embodiment, a kind of network equipment comprises: the one or more ports being coupled to network; And time synchronized module.Time synchronized module is configured to: process at the communication path different by two or more and (i) that comprise from each time synchronized packet at least some time synchronized packet multiple time synchronized packets that clock equipment receives via at least one port in one or more port respective routing information and (ii) respective time synchronization information, time synchronized packet respective in wherein respective routing information indication network is via its received respective communication path.Time synchronized module is also configured to: in response to the process of the routing information comprised at least some time synchronized packet in multiple time synchronized packet and time synchronization information and certainty annuity time clock.
In another embodiment, one method comprises: via the one or more ports being coupled to network, multiple time synchronized packet is received from clock equipment by two or more different communication paths, wherein each time synchronized packet comprises (i) respective routing information and (ii) respective time synchronization information, and time synchronized packet respective in wherein respective routing information indication network is via its received respective communication path.The method also comprises: for each time synchronized packet at least some time synchronized packet in multiple time synchronized packet, process (i) respective routing information and (ii) respective time synchronization information.In addition, the method comprises: in response to the process of the routing information comprised at least some time synchronized packet in multiple time synchronized packet and time synchronization information and certainty annuity time clock.
In another embodiment, a kind of system comprises: first network equipment, is coupled to the second network equipment of first network equipment via communication network in communication.First network equipment comprises: one or more first ports being coupled to communication network; And master.Master is configured to: generate multiple time synchronized packet, each time synchronized packet has (i) respective routing information and (ii) respective time synchronization information, the respective communication path that time synchronized packet respective in wherein respective routing information indication network is sent out via it; And multiple time synchronized packet (i) is sent out via the multiple different communication path in communication network via at least one first port in one or more first port and (ii).Second network equipment comprises: one or more second ports being coupled to communication network; And time synchronized module.Time synchronized module is configured to: process the respective routing information of each time synchronized packet (i) that comprise at least some time synchronized packet in the multiple time synchronized packets sent via at least one port in one or more port by clock equipment and (ii) respective time synchronization information; And in response to the process of the routing information comprised at least some time synchronized packet in multiple time synchronized packet and time synchronization information and certainty annuity time clock.
Accompanying drawing explanation
Figure 1A is the block diagram of the example system according to embodiment, is wherein maintained via the signal of the multiple paths transmission network from clock based on master clock and based on by master clock.
Figure 1B is the block diagram of another example system according to embodiment, is wherein maintained via the signal of the multiple paths transmission network from clock based on master clock and based on by master clock.
Fig. 2 A and Fig. 2 B be according to embodiment for using the flow chart maintaining the exemplary method from clock via the multiple paths in network from multiple clock signals that master clock receives.
Fig. 3 is via at the sequential chart of exchanged signal from the multiple path between clock and master clock according to the diagram of embodiment.
Fig. 4 be according to embodiment for using the flow chart maintaining the exemplary method from clock via the multiple paths in network from multiple clock signals that master clock receives.
Fig. 5 is the flow chart for using the packet received from master clock to maintain the exemplary method from clock according to embodiment.
Fig. 6 is the flow chart of the exemplary method of the clock value for promoting to determine across a network according to embodiment.
Fig. 7 is the flow chart of another exemplary method of the clock value for promoting to determine across a network according to embodiment.
Fig. 8 A is the block diagram of another example system according to embodiment, is wherein maintained via the signal of the multiple paths transmission network from clock based on master clock and based on by master clock.
Fig. 8 B is the block diagram of another example system according to embodiment, is wherein maintained via the signal of the multiple paths transmission network from clock based on master clock and based on by master clock.
Fig. 9 is the flow chart of another exemplary method of the clock value for promoting to determine across a network according to embodiment.
Embodiment
Figure 1A is the block diagram of the example system 100 according to embodiment, and example system 100 has the first network equipment 104 being coupled to second network equipment 108 via communication network 112 in communication.First network equipment 104 realizes master clock, and first network equipment 104 is in this article sometimes referred to as clock equipment 104.Second network equipment 108 realizes from clock, and second network equipment 108 is in this article sometimes referred to as from clockwork 108.
Clock equipment 104 comprises the clock module 120 being configured to maintain master clock.In an embodiment, master clock is Time of Day (time-of-day) clock.In another embodiment, master clock is the counter not being directly linked to Time of Day.In an embodiment, clock module 120 comprises or uses the counter circuit maintaining master clock.In an embodiment, clock module 120 is application layer module of the application layer operation in multilayer communication protocol stack.In an embodiment, multilayer communication protocol stack (such as TCP/IP (TCP/IP) protocol groups) comprises link layer, internetwork layer, transport layer and application layer, wherein on the transport layer of application layer in protocol stack, internetwork layer and link layer.In another embodiment, multilayer communication protocol stack (such as corresponding to open system interconnection (OSI) model) comprises physical layer, data link layer, network layer, transport layer, session layer, presentation layer and application layer, wherein on the presentation layer of application layer in protocol stack, session layer, transport layer, network layer, data link layer and physical layer.In other embodiments, clock module 120 is at another suitable layer operation of the 4th at least in multilayer communication protocol stack layer.
Clock module 120 is configured to the packet of multiple time mark is sent to from clockwork 108 from clock equipment 104 via communication paths different separately by network 112.In an embodiment, the packet of multiple time mark use the master clock maintained by clock module 120 one or more value and by time mark.
Network 112 comprises the one or more networks in dedicated network, public network, backbone network, provider network, internet etc.In an embodiment, network 112 comprises multiple network switch and/or router one 24 (hereinafter in order to be called as switch for simplicity and only), and the first path 128 corresponds to via switch 124c from switch 124a to the link of switch 124b.Second path 132 corresponds to via switch 124f from switch 124d to the link of switch 124e.
The packet that clock module 120 is configured to the very first time is marked is sent to from clockwork 108 from clock equipment 104 via path 128, and the packet of the second time mark is sent to from clockwork 108 from clock equipment 104 via path 132.In an embodiment, clock equipment 104 comprises multiple port one 40, and the packet that clock module 120 is configured to the very first time is marked is sent out via path 140a, and the packet of the second time mark is sent out via path 140b.In other embodiment and/or scene, the packet of each time mark in the packet of at least some time mark in the packet of time mark is sent out (not shown in Figure 1A) via identical port one 40.Although illustrate two port ones 40 in Figure 1A, but in other embodiments, clock equipment 104 comprises the port one 40 (such as only a port or more than two ports) of another suitable number.
In one embodiment, clock equipment 104 only comprises single port 140, and Path diversity (path diversity) is provided by network 112 completely.Such as, in certain embodiments, in the network 112 of local management, but switch/router can be configured to use different paths when sending and going to identical endpoint device comprise the packet of different header (such as source address, destination address, layer 4 port etc.).As another example, in certain embodiments, public network and/or provider network (some switch/router at least in network 112) application load balancing technique, the packet wherein going to same endpoints equipment is directed along different paths based on headers (such as source address, destination address, layer 4 port etc.) different in packet.Therefore, in certain embodiments, in order to make network 112 send packet via different paths to from clockwork 108, clock equipment 104 changes the header (such as source address, destination address, layer 4 port etc.) in packet.
Be different from the description in Figure 1A (it illustrates the different port 140 of the different switches be coupled in switch 124), in certain embodiments, two or more ports in port one 40 are coupled to single switch 124.In such embodiments, at least some network path in heterogeneous networks path is through the different port of single switch 124 of two or more port ones 40 being coupled to clock equipment 104.Such as, in certain embodiments, in the network 112 of local management, but switch/router can be configured to go to identical endpoint device in transmission use different paths when comprising the packet of different headers (such as source address, destination address, layer 4 port etc.) and/or when the different physical ports via switch/router receive packet.As another example, in certain embodiments, public network and/or provider network (some switch/router at least in network 112) application load balancing technique, the packet wherein going to identical endpoint device based on headers (such as source address, destination address, layer 4 port etc.) different in packet and/or based on switch/router physical port (packet is received via it) and be directed along different paths.Therefore, in certain embodiments, packet is sent via different paths to from clockwork 108 in order to make network 112, clock equipment 104 changes the header (such as source address, destination address, layer 4 port etc.) in packet and/or sends packet via the different physical port of clock equipment 104, and wherein the different physical port of clock equipment 104 is coupled respectively to the different physical port of switch 124.
From the clock synchronization module 150 of clockwork 108 be configured to determine corresponding from the packet of the multiple time marks sent by clock equipment 104 and with by different clock results corresponding to the multiple different communication path of network 112.Such as, the second clock result that clock synchronization module 150 is configured to determine the first clock result corresponding with the packet that the very first time be sent out via the first path 128 marks and the packet of the second time mark that is sent out via the second path 132 is corresponding.In an embodiment, comprise multiple port one 54 from clockwork 108, and the packet of very first time mark is received via port one 54a, and the packet of the second time mark is received via port one 54b.In other embodiment and/or scene, the packet of each time mark in the packet of at least some time mark in the packet of time mark is via identical port one 54 received (not shown in Figure 1A).Although illustrate two port ones 54 in Figure 1A, but in other embodiments, comprise the port one 54 (such as, only or more than two) of another suitable number from clockwork 108.In an embodiment, single port 154 is only comprised from clockwork 108.
Clock synchronization module 150 is configured to respective timestamp in the packet based on the respective time mark be sent out via respective path and determines each clock result.In an embodiment, each clock result generated by clock synchronization module be included in master clock that clock equipment 104 is maintained and be maintained from clockwork 108 from the side-play amount between clock.Such as, in an embodiment, clock synchronization module 150 is configured to determine each side-play amount based on the following: timestamp respective in the packet of the respective time mark that (i) is sent out via respective path, and (ii) at the packet of respective time mark by the value from clock of respective time received from clockwork 108.As illustrated examples, in an embodiment, clock synchronization module 150 determines the first side-play amount based on the following: the very first time stamp in the packet of the very first time mark that (i) is sent out via the first path 128, and (ii) packet of marking in the very first time is by first value from clock of the very first time received from clockwork 108; And clock synchronization module 150 determines the second side-play amount based on the following: the second timestamp in the packet of the second time mark that (i) is sent out via the second path 132, and (ii) at the packet of the second time mark by second value from clock of the second time received from clockwork 108.
In another embodiment, each clock result generated by clock synchronization module 150 comprises the clock value (such as Time of Day value) corresponding with the master clock be maintained in clock equipment 104.Such as, in an embodiment, during clock synchronization module 150 is configured to based on the respective time mark be sent out via respective path packet, respective timestamp determines each clock value.As illustrated examples, in an embodiment, clock synchronization module 150 determines the first clock value based on the very first time stamp in the packet of the very first time mark be sent out via the first path 128, and determines second clock value based on the second timestamp in the packet of the second time mark be sent out via the second path 132.In an embodiment, clock synchronization module 150 is application layer module of the application layer operation in multilayer communication protocol stack.In other embodiments, clock synchronization module 150 is at another suitable layer operation of the 4th at least in multilayer communication protocol stack layer.In other embodiments, clock synchronization module 150 be in multilayer communication protocol stack application layer below another suitable layer and/or the suitable layer operation of less than the 4th layer in multilayer communication protocol stack.
As the following more detailed description, in certain embodiments, clock synchronization module 150 is configured to for each path, maintain respective path time data acquisition system, it comprises the respective clock depending on path or the information for generating respective clock result (such as respective measurement in the path delay of time, respective clock offset etc.).In certain embodiments, clock synchronization module 150 uses path time data acquisition system to carry out generated clock result.In other embodiments, clock result is path time data acquisition system, or is included in path time data acquisition system.Clock synchronization module 150 is configured to remain respective and depends in some embodiments of the clock in path wherein, the respective counter circuit depending on the clock in path that clock synchronization module 150 comprises or uses maintenance different.
In certain embodiments, be configured to maintain from clock from the clock module 160 clockwork 108.In an embodiment, from clock be Time of Day clock.In another embodiment, from clock be the counter not being directly linked to Time of Day.In an embodiment, clock module 160 comprises or uses the counter circuit maintained from clock.In an embodiment, clock module 160 is application layer module of the application layer place operation in multilayer communication protocol stack.In other embodiments, clock module 160 is at another suitable layer operation of the 4th at least in multilayer communication protocol stack layer.Clock synchronization module 150 is configured to remain respective and depends in some embodiments of the clock in path wherein, clock module 160 be configured to select one of clock depending on path as from clock non-maintenance independent from clock.
In certain embodiments, clock module 160 is configured to use the multiple clock results generated by clock synchronization module 150 to determine from clock value.In an embodiment, clock module 160 is configured at least by carrying out mathematical combination to determine from clock value to the multiple clock results generated by clock synchronization module 150.In another embodiment, clock module 160 is configured at least by selecting one of multiple clock results of being generated by clock synchronization module 150 to determine from clock value.Such as, in certain embodiments, one of clock result is confirmed as being the most accurate by the Accuracy Measure (such as path, changeability in the path delay of time (or perceived noisiness) etc.) determined independently based on each path.In another embodiment, clock module 160 is configured at least determine from clock value by following operation: (i) in some cases, combines at least some clock result in the multiple clock results generated by clock synchronization module 150; And (ii) in other cases, select one of multiple clock results generated by clock synchronization module 150.In another embodiment, clock module 160 is configured at least determine from clock value by following operation: (i) selects the subset of the multiple clock results generated by clock synchronization module 150; And (ii) subset to clock result combines.Such as, in certain embodiments, selected subset is confirmed as suitably accurate clock result by the Accuracy Measure (such as path, changeability in the path delay of time (or perceived noisiness) etc.) determined independently based on each path.
The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of side-play amount, clock module 160 is configured at least determine from clock value by carrying out mathematical combination to two or more side-play amounts in multiple side-play amount to generate combination side-play amount, and then uses combination side-play amount to arrange from clock value.The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of side-play amount, and clock module 160 is configured to select one of multiple side-play amount, and then uses selected side-play amount to arrange from clock value.Such as, in certain embodiments, one of side-play amount is confirmed as being the most accurate by the Accuracy Measure (such as path, changeability in the path delay of time (or perceived noisiness) etc.) determined independently based on each path.The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of side-play amount, clock module 160 is configured to: (i) in some cases, mathematical combination is carried out to generate combination side-play amount to multiple side-play amount, and then uses combination side-play amount to arrange from clock value; And (ii) in other cases, select one of multiple side-play amount, and then use selected side-play amount to arrange from clock value.In an embodiment, clock module 160 is configured at least determine from clock value by following operation: (i) selects the subset of multiple side-play amount, and (ii) subset to side-play amount combines.Such as, in certain embodiments, selected subset is confirmed as suitably accurate side-play amount by the Accuracy Measure (such as path, changeability in the path delay of time (or perceived noisiness) etc.) determined independently based on each path.
The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of the different clock values (path clock value) corresponding from different paths, clock module 160 is configured at least determine from clock value by carrying out mathematical combination to two or more path clock values in different path clock values to generate combination clock value, and then uses combination clock value to arrange from clock value.The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of path clock value, and clock module 160 is configured to one of selecting paths clock value and then uses selected path clock value to arrange from clock value.Such as, in certain embodiments, one of clock value is confirmed as being the most accurate by the Accuracy Measure (such as path, changeability in the path delay of time (or perceived noisiness) etc.) determined independently based on each path.The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of path clock value, clock module 160 is configured to: (i) in some cases, mathematical combination is carried out to generate combination clock value at least some path clock value in the clock value of path, and then uses combination clock value to arrange from clock value; And (ii) is in other cases, one of selecting paths clock value, and then use selected path clock value to arrange from clock value.
In an embodiment, clock module 160 is configured to the mean value of at least some clock result calculated in the clock result that generated by clock synchronization module 150, and determines from clock value based on average clock result.The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of side-play amount, and clock module 160 is configured to: the mean value calculating at least some side-play amount in side-play amount, and determines from clock value based on mean deviation amount.The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of the different clock values (path clock value) corresponding from different paths, clock module 160 is configured to the mean value of at least some path clock value in calculating path clock value, and determines from clock value based on average clock value.In an embodiment, clock module 160 is configured at least determine from clock value by following operation: (i) selects the subset of multiple paths clock value, and (ii) subset to path clock value combines.Such as, in certain embodiments, selected subset is confirmed as suitably accurate path clock value by the Accuracy Measure (such as path, changeability in the path delay of time (or perceived noisiness) etc.) determined independently based on each path.
In certain embodiments, clock module 160 is configured to the weighted average of at least some clock result calculated in clock result.In an embodiment, the weight that uses being determined by the Accuracy Measure (such as path, changeability in the path delay of time (or perceived noisiness) etc.) determined independently based on each path when calculating weighted average.Such as, in an embodiment, relatively little weight is given the path with relatively long length, and relatively large weight is given the path with relatively short length.As another example, in an embodiment, relatively little weight is given the path in the path delay of time with relatively high changeability (or perceived noisiness), and relatively large weight is given the path in the path delay of time with relatively low changeability (or perceived noisiness).
Such as, in an embodiment, clock synchronization module 150 comprises and is configured to generation by variable respective measured value in the path delay of time in the different paths of network 112.In an embodiment, clock synchronization module 150 is configured to the different weights that use is determined by the variable measured value in the path delay of time in the different paths of network 112 to use when calculating weighted average.Such as, in an embodiment, relatively little weight is given the path in the path delay of time with relatively high changeability (or perceived noisiness), and relatively large weight is given the path in the path delay of time with relatively low changeability (or perceived noisiness).
In an embodiment, the path delay of time, changeability determination module 170 was configured to generate the respective measured value in the path delay of time by the different paths of network 112.In an embodiment, each path delay of time, measured value was from clock equipment 104 to the measured value of the One Way Delay from clockwork 108 via respective path.In an embodiment, the path delay of time, changeability determination module 170 was configured to for each path, generate One Way Delay by following operation: (i) determine via respective path from from clockwork 108 to clock equipment 104 and get back to from clockwork 108 come and go (round-trip) time delay, and (ii) based on round-trip delay calculate One Way Delay.In an embodiment, One Way Delay is calculated as the half of round-trip delay.
In an embodiment, the path delay of time, changeability determination module 170 was configured to generate the respective average path time delay by the different paths of network 112.In an embodiment, the path delay of time, changeability determination module 170 was configured to for each path, and the measured value in the path delay of time based on respective average path time delay and respective (such as nearest) recently generates variable measured value in the respective path delay of time.In an embodiment, the path delay of time, changeability determination module 170 was configured to for each path, generated variable measured value in the respective path delay of time based on the difference of the path delay of time between measured value calculating respective average path time delay and respective (such as nearest) recently.In an embodiment, the value of the difference calculated for path indicates the changeability degree in the path delay of time in this path usually.Such as, in an embodiment, if be greater than for second of the second path computing the poor value for the value of the first difference of the first path computing, then suppose that the path delay of time in the first path has larger changeability degree compared with the path delay of time in the second path.
The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of side-play amount, clock module 160 is configured to select one of side-play amount based on the variable measured value in the path delay of time in different path, and then uses selected side-play amount to arrange from clock value.Such as, in an embodiment, clock module 160 is configured to select the side-play amount corresponding with the path with variable minimum measured value in the path delay of time, and then uses selected side-play amount to arrange from clock value.
The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of side-play amount, clock module 160 is configured to select set that the is respective and side-play amount that the path delay of time meeting one or more criterion, variable measured value associated, and uses the set of selected side-play amount to determine side-play amount.Such as, in an embodiment, clock module 160 is configured to select separately and meet threshold value (such as, to be less than threshold value, be less than or equal to threshold value etc.) the set of side-play amount of variable measured value association in the path delay of time, and use the set of selected side-play amount to determine side-play amount.Such as, in an embodiment, if having multiple side-play amount in set, then clock module 160 is configured to the mean value calculating selected side-play amount, and uses mean deviation amount to determine from clock value.In an embodiment, do not consider that when calculating mean value there is high variable path, make only to use when calculating mean value there is the variable path of the measurement being less than suitable variability threshold.In an embodiment, if only have one to have the variable path of the measurement being less than suitable variability threshold, then a corresponding side-play amount is used to arrange from clock value (namely not calculating the mean value of multiple side-play amount).In other words, in an embodiment, if only there is a side-play amount in set, then clock module 160 is configured to use selected side-play amount to arrange from clock.
The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of the different clocks value (path clock value) corresponding from different path, clock module 160 is configured to carry out one of selecting paths clock value based on the variable measured value in the path delay of time in different path, and then uses selected path clock value to arrange from clock value.Such as, in an embodiment, clock module 160 is configured to select the path clock value corresponding with the path with variable minimum measured value in the path delay of time, and then uses selected path clock value to arrange from clock value.
The clock result generated by clock synchronization module 150 wherein comprises in some embodiments of the different clocks value (path clock value) corresponding from different path, clock module 160 is configured to select set that is respective and the path clock value that the path delay of time meeting one or more criterion, variable measured value associated, and uses the set of selected path clock value to determine average path clock value.Such as, in an embodiment, clock module 160 is configured to select separately and meet threshold value (such as, be less than threshold value, be less than or equal to threshold value etc.) the set of path clock value of variable measured value association in the path delay of time, and use the set of selected path clock value to determine from clock value.Such as, in an embodiment, if having multiple paths clock value in set, then clock module 160 is configured to the mean value calculating selected path clock value, and uses average path clock value to determine from clock value.As another example, in an embodiment, if only have a path clock value in set, then clock module 160 is configured to use selected path clock value to arrange from clock.
In certain embodiments, clock synchronization module 150 is configured to the characteristic (degree of such as shaking) measuring the respective path characteristics (such as path, changeability in the path delay of time (or perceived noisiness) etc.) in each path and/or the respective path clock value of measurement.In an embodiment, path is measured with the form of jumping figure.Such as, in certain embodiments, the jumping figure using the path discovery technology of following the tracks of based on route to determine in path.In certain embodiments, clock synchronization module 150 is configured to the characteristic (degree of such as shaking) measuring the respective path characteristics (such as path, changeability in the path delay of time (or perceived noisiness) etc.) in each path and/or the respective path clock value of measurement.
Figure 1B is the block diagram of another example system 180, and wherein clock equipment 104 only comprises single port 140a and only comprises single port 154a from clockwork 108.Path diversity is provided by network 112 completely.As discussed above, in certain embodiments, such as switch 124 is configured to use different paths 184,188 when but transmission is gone to same endpoints equipment comprised the packet of different header (such as source address, destination address, layer 4 port etc.).As another example, in certain embodiments, switch 124 application load balancing technique, the packet wherein going to same endpoints equipment is directed along different paths 184,188 based on the different headers (such as source address, destination address, layer 4 port etc.) in packet.Therefore, in certain embodiments, in order to make network 112 send packet via different paths 184,188 to from clockwork 108, clock equipment 104 changes the header (such as source address, destination address, layer 4 port etc.) in packet.
Fig. 2 A and Fig. 2 B be according to embodiment for using the flow chart maintaining the exemplary method 200 from clock via the multiple paths in network from multiple clock signals that master clock receives.In an embodiment, Figure 1A or Figure 1B is configured to implementation method 200 from clockwork 108, and for purposes of illustration, with reference to Figure 1A and Figure 1B discussion method 200.But in other embodiments, method 200 is realized by another suitable equipment.
At block 204 place, state variable is initialized to value COMBINED.State variable usually indicates and will how to arrange from clock.Such as, in an embodiment, when state variable is for value COMBINED, arrange from clock according to the first technology (as described below), and when state variable is for value SWITCHING, will arrange from clock according to the second technology (as described below).
At block 208 place, for clock signal via it from each path the received multiple paths of clock equipment 104, determine respective clock (such as respective Time of Day clock (TOD i)).Such as, TOD is determined for the clock signal received from clock equipment 104 via path 128 1, and TOD is determined for the clock signal received from clock equipment 104 via path 132 2.In an embodiment, block 208 comprises: when the clock signal carrying out master clock is received via respective path i, determine respective TOD i.
At block 212 place, for each path i, determine from clock equipment 104 via path i to the nearest measured value (LastDelay of the time delay from clockwork 108 i).Such as, in an embodiment, in order to measure the LastDelay in the i-th path, from clockwork 108 to clock equipment 104 transmit path latency measurement packet (such as Internet Control Message agreement (ICMP) echo request packet), its prompting clock equipment 104 at once via path i to sending response data packet (such as ICMP response) from clockwork 108.In an embodiment, then when to be sent out via path i based on ICMP echo request packet from clockwork 108 and when ICMP response is received via path i and measures the round-trip delay corresponding with path i, and to determine LastDelay ias the half of round-trip delay.In various embodiments, such measurement is periodically carried out according to scheduled plan etc.
Or at block 212 place, for each path i, to determine from clock equipment 104 via path i to the average delay (AvgDelay from clockwork 108 i).Such as, in an embodiment, AvgDelay iby to multiple LastDelay ivalue is averaging to calculate in time.In an embodiment, along with each LastDelay in calculating i-th path i, with new LastDelay ivalue upgrades AvgDelay i.
At block 216 place, calculate the variable respective measured value in the path delay of time in different path.Such as, in an embodiment, for each path i, AvgDelay is calculated iwith LastDelay ibetween difference (DelayDiff i) absolute value.Such as, in an embodiment, with less DelayDiff icompare, larger DelayDiff ithe changeability that instruction is relatively many.In an embodiment, as discussed above, along with each LastDelay in calculating i-th path i, upgrade AvgDelay i, and then calculate new DelayDiff i.
In certain embodiments, the path delay of time in different path, variable respective measured value also provided respective TOD ithe measured value of perceived noisiness.Such as, in an embodiment, along with the changeability in the path delay of time in the i-th path increases, the shake (or perceived noisiness) of the TOD in the i-th path also will increase.In other embodiments, respective TOD ithe respective measured value of perceived noisiness by analyzing respective TOD in time iand determined.
At block 220 place, select main path as the path with variable measured value in the minimum path delay of time.Such as, select main path as having minimum DelayDiff ipath.In other embodiments, main path is selected based on the one or more suitable measurement characteristics (such as degree of jitter) of each TOD.
At block 224 place, a TOD (SwitchingTOD) is set to the TOD corresponding with main path (place is determined at block 220) i(at block 208, place is determined).As will be explained, SwitchingTOD is used when state variable being arranged to SWITCHING.In an embodiment, SwitchingTOD and the TOD in path with variable measured value in the minimum path delay of time icorresponding.In other embodiments, SwitchingTOD and the measurement characteristics (such as degree of jitter) based on each TOD are by the TOD in path selected icorresponding.
At block 228 place, the 2nd TOD (CombinedTOD) is arranged to the TOD in all paths ithe mean value of (place is determined at block 208).As will be explained, CombinedTOD is used when state variable being arranged to COMBINED.In an embodiment, block 228 comprises calculating weighted average.In an embodiment, for the weight that calculates weighted average based at the calculated DelayDiff in block 216 place ivalue is determined.Therefore, in certain embodiments, be configurable for calculating the weight of weighted average, and determined based on the path characteristics (such as path, changeability in the path delay of time (or perceived noisiness) etc.) measured and/or the measurement characteristics (such as degree of jitter) of each TOD.
At block 232 place, determine whether state variable is set to COMBINED.If determine that state variable is set to COMBINED, then flow process continues to block 236.At block 236 place, block 228 will be arranged in by the CombinedTOD determined from clock (DynamicTOD).
At block 240 place, the absolute value of the difference between SwitchingTOD and CombinedTOD and threshold value are compared.In an embodiment, threshold value is that the DelayDiff of main path is multiplied by suitable scalar ce.If determine that the absolute value of the difference between SwitchingTOD and CombinedTOD does not meet threshold value (being such as less than or equal to threshold value), then state variable keeps being set to COMBINED, and flow process turns back to block 208.
On the other hand, if the absolute value of the difference determined between SwitchingTOD and CombinedTOD at block 240 place meets threshold value (being such as greater than threshold value), then this can indicate the changeability in the path delay of time in one or more path to increase, and flow process continues to block 244.At block 244 place, SwitchingTOD is arranged to CombinedTOD.In an embodiment, block 244 assists in ensuring that the continuity of DynamicTOD.At block 248 place, state variable is arranged to SWITCHING.In an embodiment, state variable is configured to SWITCHING, because indicate the changeability in the path delay of time in one or more path to increase in the comparison at block 240 place, this adversely may affect CombinedTOD.After block 248, flow process turns back to block 208.
Refer again to block 232, in an embodiment, if determine that state variable has value SWITCHING, then flow process continues to block 260.At block 260 place, block 224 will be arranged in by the SwitchingTOD determined from clock (DynamicTOD).
At block 264 place, determine whether state variable has been configured to value SWITCHING and has at least continued one section of time-out time.In an embodiment, if determine that state variable has been configured to value SWITCHING and has continued to be less than one section of time-out time, then state variable keeps being configured to SWITCHING, and flow process turns back to block 208.
In an embodiment, on the other hand, if determine that state variable has been configured to value SWITCHING and has continued at least one section of time-out time, then flow process continues to block 268.At block 268 place, by the TOD of each path i ibe arranged to SwitchingTOD.In an embodiment, block 268 assists in ensuring that the continuity of DynamicTOD.At block 272 place, state variable is arranged to COMBINED.After block 272, flow process turns back to block 208.
In certain embodiments, the TOD of each path i i, SwitchingTOD and CombinedTOD be as calculated at master clock and from the side-play amount between clock.In an embodiment, CombinedTOD side-play amount (block 236) or SwitchingTOD side-play amount (block 260) is used to upgrade from clock (DynamicTOD).Such as, in an embodiment, upgrade from clock from the currency of clock by side-play amount is added to.
Fig. 3 is the sequential chart 300 be shown in from signal exchanged between clockwork 108 and clock equipment 104 according to embodiment, and it is as the part maintained from the example of clock.Scene shown in Fig. 3 relates to the different path of in network 112 two: path 0 and path 1.At least in certain embodiments, in other scene, use the path more than the suitable number of two.
In an embodiment, at time T 0place, send the first path latency measurement packet (such as ICMP echo request packet) from clockwork 108 to clock equipment 104, with point out clock equipment 104 at once via path 0 to sending the first response data packet (such as ICMP response) from clockwork 108.In an embodiment, at time T 1place, the first response data packet sent via path 0 by clock equipment 104 (such as ICMP response) is being received from clockwork 108.
At time T 1afterwards, from the time delay (Δ clockwork 108 calculating path 0 0) as the half of round-trip delay:
Δ 0=(T 1-T 0)/2。(equation 1)
In an embodiment, at time T 2place, sent for second measurement data bag in the path delay of time (such as ICMP echo request packet) from clockwork 108 to clock equipment 104, with point out clock equipment 104 at once via path 1 to sending the second response data packet (such as ICMP response) from clockwork 108.In an embodiment, at time T 3place, the second response data packet sent via path 1 by clock equipment 104 (such as ICMP response) is being received from clockwork 108.
At time T 3afterwards, from the time delay (Δ clockwork 108 calculating path 1 1) as the half of round-trip delay:
Δ 1=(T 3-T 2)/2。(equation 2)
At time T 4place, clock equipment 104 via path 0 to send from clockwork 108 very first time mark packet.In an embodiment, the packet of very first time mark comprises and equals (or being substantially equal to) and time T 4the timestamp of corresponding value.At time T 5place, receives the packet of very first time mark via path 0 from clockwork 108.At time T 5afterwards, the time delay (Δ the packet marked from clockwork 108 based on the very first time and the path 0 calculated 0) calculate the clock offset corresponding with path 0.In an embodiment, corresponding with path 0 clock offset (Offset 0) calculate according to following formula:
Offset 0=T 4-T 50。(equation 3)
At time T 6place, clock equipment 104 via path 1 to the packet sending the second time mark from clockwork 108.In an embodiment, the packet of the second time mark comprises and equals (or being substantially equal to) and time T 6the timestamp of corresponding value.At time T 7place, receives the packet of the second time mark via path 1 from clockwork 108.At time T 7afterwards, from clockwork 108 based on the time delay (Δ the packet of the second time mark and the path 1 that calculates 1) calculate the clock offset corresponding with path 1.In an embodiment, corresponding with path 1 clock offset (Offset 1) calculate according to following formula:
Offset 1=T 6-T 71。(equation 4)
Then, the clock offset corresponding with path 0 and the clock offset corresponding with path 1 is used to upgrade from clock.Such as, then, according to all technology as described above (mean value of the side-play amount of such as calculating path 0 and the side-play amount in path 1, based on the path delay of time changeability selecting paths 0 side-play amount and the first-class of side-play amount in path 1) and so on technology, use the clock offset corresponding with path 0 and the clock offset corresponding with path 1 to upgrade from clock.
As discussed above, various packet is transmitted in clock equipment 104 and between clockwork 108 through the different paths of network 112.The clock equipment 104 and path that packet will be advanced via it after the transmission should be determined separately from clockwork 108, and can identification data bag via its received path.Use description to now to be configured the different paths by network 112, identify, specify, the various technology of use etc.
Distribute different addresses (such as IP address) and/or to from the different address (such as IP address) of clock distribution for specifying and/or using at least some technology in the technology in different path to relate to master clock, wherein different addresses and/or different addresses are pair corresponding from the different paths by network 112.
In an embodiment, in the network 112 of local management, switch/router can be configured to use different paths when but transmission is gone to same endpoints equipment comprised the packet of different address information (such as source address and/or destination address).Such as, the route/transmit of across a network can be equipped with at master clock and from the multiple paths designed by the traffic between clock.By configuration router/switch within such networks, diversified path is created transmits packet at master clock and between clock.
On the other hand, in the network (such as public network and provider network) of other type, configuration switch/router is impossible or unpractical to provide different paths.In certain embodiments, in some networks 112, at least some switch/router application load balancing technique in network 112, the packet wherein going to same endpoints equipment is directed along different paths.In order to the load balance ability using such switch/router when sending packet from clockwork 108, clock equipment 104 such as uses different addresses (such as destination address) and/or address to (such as { main, from }) in the packet.
In some embodiments and/or scene, although multiple address and/or address are to corresponding from multiple different path as a whole, but two or more addresses of such address or address centering or address are to can be corresponding with identical network path, the address/address making them such is to being redundancy.Therefore, in certain embodiments, clock equipment 104 and/or from clockwork 108 be configured to use based on route follow the tracks of path discovery determine the address/address pair corresponding with redundant path, and then omit and/or filtered addresses/address to avoid use redundant path." Paris traceroute " (can obtain at WWW.paris-traceroute.net) and " TraceFlow " (people such as Viswannathan, " TraceFlowdraft-ziniuvadia-traceflow-02.txt ", Internet-Draft, internet engineering task group (IETF), in August, 2008, can obtain at tools.ietf.org/html/draft-zinjuvadia-traceflow-02) be the example of the instrument in the path found in network between 2.In an embodiment, the filtration followed the tracks of based on route realizes by clock equipment 104 with from both clockworks 108.In another embodiment, only realize from clockwork 108 based on route follow the tracks of filtration to reduce the expense in clock equipment 104.In other embodiments, other the suitable instrument for finding the path in network between 2 is used.
In an embodiment, multiple IP address is used from clock.In an embodiment, corresponding from different paths from each IP address at least some IP address multiple IP addresses of clock.In an embodiment, master clock uses multiple IP address.In an embodiment, at least some different main IP, pair corresponding from different paths from IP} address.In other embodiments, master clock uses multiple VLAN ID, and wherein each VLAN ID is corresponding from different paths.
In certain embodiments, other the suitable field alternatively or additionally in usage data packet header determines different paths.It is one or more that example for other field determining path comprises in the following: the label field etc. in the flow label field in User Datagram Protoco (UDP) (UDP) peer-port field, transmission control protocol (TCP) peer-port field, IPv6 head, the VLAN id field in Ethernet head, multiprotocol label switching (MPLS) head.In various embodiments, the path that the combination in any of the random subset of the flow label field in use primary ip address, secondary IP address, udp port field, tcp port field, IPv6 head, the VLAN id field in Ethernet head, the label field in MPLS head is determined and/or identification data bag is to be sent via it or sent.
In certain embodiments, the information using other suitable from clockwork 108 is to determine packet via which path is sent out.Such as, in an embodiment, be configured to flag data bag via its received physical port 154 from clockwork 108, and at least determine packet via which path is sent out based on packet via its received physical port 154.
Fig. 4 be according to embodiment for using the flow chart maintaining the exemplary method 400 from clock via the multiple paths in network from multiple clock signals that master clock receives.In an embodiment, the system 100 of Figure 1A and/or the system 180 of Figure 1B are configured to implementation method 400, and for purposes of illustration, carry out discussion method 400 with reference to Figure 1A and Figure 1B.But, in other embodiments, carry out implementation method 400 by another suitable system.
For purposes of illustration, with reference to message like the classes of messages used in Precision Time Protocol (PTP) to describe Fig. 4.In other embodiments, use and message like the classes of messages used in NTP (Network Time Protocol) (NTP).
In an embodiment, multiple IP address (secondary IP address) associates with from clock, and one of secondary IP address is designated as main secondary IP address.Similarly, in an embodiment, at least one IP address (primary ip address) associates with master clock.One of at least one primary ip address is designated as main primary ip address.In an embodiment, if only there is a primary ip address, then this single primary ip address is designated as main secondary IP address.
In an embodiment, at block 404 place, periodically send multiple notification message from clockwork 108, each notification message in multiple notification message has different secondary IP address.Multiple notification message is received by clock equipment 104, and clock equipment 104 marks different secondary IP address included in multiple notification message.
In an embodiment, at block 408 place, in clock equipment 104 periodically to after sending multiple synchronization message from clockwork 108, each synchronization message in multiple synchronization message has one of multiple secondary IP address of the multiple notification messages from block 404.In an embodiment, each synchronization message is sent out via different paths, and each secondary IP address is corresponding from the corresponding path in different paths.In an embodiment, each synchronization message comprises main primary ip address.In an embodiment, each synchronization message is included in timestamp corresponding with the value of master clock when clock equipment 104 sends synchronization message.
At block 412 place, from clockwork 108 in response to each synchronization message to clock equipment 104 transmission delay request message.Each time delay request message comprises one of multiple secondary IP address.
At block 416 place, clock equipment 104 in response to each DELAY RESPONSE message come since clockwork 108 to from clockwork 108 transmission delay response message.In an embodiment, each DELAY RESPONSE message comprises one of multiple secondary IP address, and each DELAY RESPONSE message is sent out via different paths.In an embodiment, each DELAY RESPONSE message comprises main primary ip address.
At block 420 place, be received in from clockwork 108 multiple DELAY RESPONSE message that block 416 sends by clock equipment 104.For each DELAY RESPONSE message received at block 420 place, determine with DELAY RESPONSE message via time delay corresponding to its received path from clockwork 108.In an embodiment, time delay is determined based on the following: when (i) DELAY RESPONSE message is being received from clockwork 108, and when the time delay request message (block 412) of (ii) correspondence is sent by from clockwork 108 from clockwork 108.In an embodiment, for each DELAY RESPONSE message received at block 420 place, determine that this message is via its received path from the secondary IP address clockwork 108 Effect-based operation.
At block 424 place, be received in from clockwork 108 multiple synchronization messages that block 408 periodically sends by clock equipment 104.For by each synchronization message received from clockwork 108, determine with synchronization message via clock offset corresponding to its received path from clockwork 108.In an embodiment, clock offset is determined based on the following: (i) is when synchronization message value from clock when being received from clockwork 108 from clockwork 108, (ii) the master clock time stamp in synchronization message, and the time delay of (iii) respective path (block 420).In an embodiment, for by each synchronization message received from clockwork 108, determine that this message is via its received path from the secondary IP address clockwork 108 Effect-based operation.
In an embodiment, at block 428 place, upgrade from clock from clockwork 108 according to the different side-play amounts corresponding from different path determined at block 424.
In certain embodiments, multiple primary ip address associates with master clock, and wherein in an embodiment, one of at least one primary ip address is designated as main primary ip address.In certain embodiments, each main IP, the respective synchronization message right from IP} address is periodically sent by clock equipment 104 at block 408, and different main IP, pair corresponding from different paths from IP} address.In certain embodiments, corresponding time delay request message is sent at block 412 to the primary ip address comprised at time delay request message from clockwork 108.In certain embodiments, for each DELAY RESPONSE message received at block 420 place, from clockwork 108 Effect-based operation { main IP, from IP} address to determining that this message is via its received path.In certain embodiments, for by each synchronization message received from clockwork 108, from clockwork 108 Effect-based operation { main IP, from IP} address to determining that this message is via its received path.
Fig. 5 is the flow chart for arranging the exemplary method 500 from clock according to embodiment.In an embodiment, Figure 1A and/or Figure 1B is configured to implementation method 500 from clockwork 108, and for illustrative purposes, carrys out discussion method 500 with reference to Figure 1A and Figure 1B.But in other embodiments, method 500 is realized by another suitable equipment.
At block 504 place, receiving packet from clockwork 108, this packet is sent by clock equipment 104.This packet comprises the timestamp corresponding with master clock.In an embodiment, timestamp is corresponding with the value of the master clock when master clock sends packet.
At block 508 place, determine packet is received via which path in multiple path at block 504 from clockwork 108.Which in an embodiment, determine via the path in multiple path from clockwork 108 based on the address packet.Which in an embodiment, determine via the path in multiple path from clockwork 108 based on the secondary IP address packet.In an embodiment, from clockwork 108 based on the address packet to determining via which path in multiple path.In an embodiment, from clockwork 108 based on packet { main IP, from IP} address to determining via which path multiple path.
In an embodiment, be configured to determine packet via which path in multiple path is received at block 504 from the clock synchronization module 150 of clockwork 108.In an embodiment, be configured to determine packet via which path in multiple path is received at block 504 from certain other module of clockwork 108.In certain embodiments, the application layer operation of the module realizing block 508 in multilayer communication protocol stack (such as ICP/IP protocol stack), and/or at another the suitable layer operation of the 4th layer at least in multilayer communication protocol stack (such as corresponding with osi model).In an embodiment, the module realizing block 508 is application layer module and/or in multilayer communication protocol stack the 4th layer or more operation, and determines packet is received via which network path in multiple network path at block 504 place.In other embodiments, below the application layer of the module realizing block 508 in multi layer protocol stack and/or the layer operation of less than the 4th layer.Such as, in certain embodiments, the IP layer of the module realizing block 508 in multi layer protocol stack or layer 3 operate.As another example, in certain embodiments, the MAC layer of the module realizing block 508 in multi layer protocol stack or layer 2 operate.
At block 512 place, be used in from clockwork 108 routing information that block 508 determines and timestamp in the packet that receives at block 504 place is arranged from clock value.In an embodiment, the application layer of block 512 in multilayer communication protocol stack is performed, and/or at another suitable layer operation of the 4th at least in multilayer communication protocol stack layer, and use network route information to arrange from clock value.In an embodiment, block 512 is realized by clock synchronization module and/or clock module 160.In other embodiments, below the application layer of the module realizing block 512 in multi layer protocol stack and/or the layer operation of less than the 4th layer.Such as, in certain embodiments, the IP layer of the module realizing block 512 in multi layer protocol stack or layer 3 operate.As another example, in certain embodiments, the MAC layer of the module realizing block 512 in multi layer protocol stack or layer 2 operate.
In certain embodiments, arranging from clock value at block 512 place is that the various technology discussed according to above reference diagram 1, Fig. 2 A, Fig. 2 B and Fig. 3 realize.Such as, in certain embodiments, as discussed above, determine to use it to arrange from clock from by different clock results corresponding to the multiple different communication path of network 112.
Fig. 6 is the flow chart of the exemplary method 600 of the clock value for promoting to determine across a network according to embodiment.In an embodiment, the clock equipment 104 of Figure 1A and/or Figure 1B is configured to implementation method 600, and for purposes of illustration, carrys out discussion method 600 with reference to Figure 1A and Figure 1B.But, in other embodiments, carry out implementation method 600 by another suitable equipment.
At block 604 place, multiple first address associates with master clock.Such as, in an embodiment, multiple IP address (primary ip address) is associated with master clock by clock module 120.
At block 608 place, clock equipment 104 is to the packet sending multiple time mark from clockwork 108, and wherein each packet comprises the different address in multiple addresses of block 604.Different primary ip address in the packet of multiple time mark makes the packet being sent multiple time mark by the different paths in network 112 at least partly.In certain embodiments, multiple packet comprises multiple secondary IP address, and different { main IP, from IP} address to making the packet being sent multiple time mark by the different paths network 112 at least partly.
Fig. 7 is the flow chart of the exemplary method 700 of the clock value for promoting to determine across a network according to embodiment.In an embodiment, Figure 1A and/or Figure 1B is configured to implementation method 700 from clockwork 108, and for purposes of illustration, carrys out discussion method 700 with reference to Figure 1A and Figure 1B.But, in other embodiments, carry out implementation method 700 by another suitable equipment.
At block 704 place, multiple first address associates with from clock.Such as, in an embodiment, multiple IP address (secondary IP address) is associated with from clock by clock module 160.
At block 708 place, multiple request is sent to clock equipment 104, multiple request comprises multiple address to make clock equipment 104 via the different paths in network 112 to send the packet of multiple time mark, with make from clockwork 108 via the different paths network 112 to receive the packet of multiple time mark.Different secondary IP address in request makes the packet being received multiple time mark by the different paths in network 112 at least partly.In certain embodiments, multiple packet comprises multiple primary ip address, and different { main IP, from IP} address to making the packet being received multiple time mark by the different paths network 112 at least partly.
Fig. 8 is the block diagram of another example system 800 according to embodiment, and system 800 has the first network equipment 804 being coupled to second network equipment 808 via communication network 812 in communication.First network equipment 804 realizes master clock, and first network equipment 804 is called as clock equipment 804 sometimes in this article.Second network equipment 808 realizes from clock, and second network equipment 808 is called as sometimes in this article from clockwork 808.
Clock equipment 804 comprises the clock module 820 being configured to maintain master clock.In an embodiment, master clock is Time of Day clock.In another embodiment, master clock is the counter not being directly linked to Time of Day.In an embodiment, clock module 820 comprises or uses the counter circuit maintaining master clock.In an embodiment, clock module 820 is application layer module of the application layer operation in multilayer communication protocol stack.In an embodiment, multilayer communication protocol stack (such as TCP/IP (TCP/IP) protocol groups) comprises link layer, internetwork layer, transport layer and application layer, wherein in protocol stack, application layer is on transport layer, internetwork layer and link layer.In another embodiment, multilayer communication protocol stack (such as corresponding to open system interconnection (OSI) model) comprises physical layer, data link layer, network layer, transport layer, session layer, presentation layer and application layer, wherein in protocol stack, application layer is on presentation layer, session layer, transport layer, network layer, data link layer and physical layer.In other embodiments, clock module 820 is at another suitable layer operation of the 4th at least in multilayer communication protocol stack layer.In other embodiments, clock module 820 another suitable layer in multilayer communication protocol stack (such as in the second layer or third layer) operation.
Clock module 820 is configured to the respective different communication path making the packet of multiple time mark through network 812, is sent to from clockwork 808 from clock equipment 804.In an embodiment, the packet of multiple time mark use the master clock maintained by clock module 820 one or more value and by time mark.
Network 812 comprises the one or more networks in dedicated network, public network, backbone network, provider network, internet etc.In an embodiment, network 812 comprises multiple switch 824, and the first path 828 corresponds to from switch 824a to the link of switch 824b.Second path 830 corresponds to from switch 824c to the link of switch 824d.3rd path 832 corresponds to from switch 824e to the link of switch 824f.
The packet that clock module 820 is configured to the very first time is marked is sent to from clockwork 808 via path 828 from clock equipment 804, the packet of the second time mark is sent to from clockwork 808 from clock equipment 804 via path 830, and the packet of the 3rd time mark is sent to from clockwork 808 from clock equipment 804 via path 832.In an embodiment, clock equipment 804 comprises multiple port 840, and the packet that clock module 820 is configured to make the very first time mark is sent out via port 840a, the packet of the second time mark is sent out via port 840b, and the packet of the 3rd time mark is sent out via port 840c.In other embodiment and/or scene, the packet of each time mark in the packet of at least some time mark in the packet of time mark is sent out via identical port 840.Although illustrate three ports 840 in Fig. 8, but in other embodiments, clock equipment 804 comprises the port 840 of the suitable number being greater than or less than three.In one embodiment, clock equipment 804 only comprises single port 840, and Path diversity is provided by network 812 completely.Such as, in certain embodiments, in the network 812 of local management, switch/router can be configured to use different paths when but transmission is gone to same endpoints equipment comprised the packet of different header (such as source address, destination address, layer 4 port etc.).As another example, in certain embodiments, public network and/or provider network (some switch/router at least in network 812) application load balancing technique, the packet wherein going to same endpoints equipment is directed along different paths based on headers (such as source address, destination address, layer 4 port etc.) different in packet.Therefore, in certain embodiments, in order to make network 812 send packet via different paths to from clockwork 808, clock equipment 804 changes the header (such as source address, destination address, layer 4 port etc.) in packet.
In an embodiment, clock module 820 comprises path selection module 844, and path selection module 844 is configured to make the packet of time mark to be sent out via path selected by network.In certain embodiments, path selection module 844 is configured to make routing information be added into the packet of time mark, wherein the network path that is sent out via it of routing information designation data bag.
Such as, in certain embodiments, path selection module 844 is configured to make virtual local area network identifiers (VID) be added into packet, wherein the network path that is sent out via it of VID designation data bag.Such as, the Multiple Spanning Tree Protocol (MSTP) defined in IEEE (IEEE) standard 802.1s and ieee standard 802.1Q-2005 defines the independent spanning tree for each VLAN group.
Use shortest path bridging-VID (SPBV), the switch 824 in network 812 passes according to the VID in packet and carries out orientation by the particular path of network 812 to packet.Therefore, in an embodiment, when using SPBV, in the packet, VID is the instruction in the path that packet is sent out via it.Similarly, in another embodiment, when using SPBV, VID is a part for the combination (instruction) of the out of Memory in the path that the packet comprised in packet is sent out via it.Similarly, in shortest path bridging-MAC (SPBM), the switch 824 in network 812 carries out orientation through the particular path in network 812 to packet according to the VID in packet.Therefore, in an embodiment, when using SPBM, in the packet, VID is the instruction in the path that packet is sent out via it.Similarly, in another embodiment, when using SPBM, VID is a part for the combination (this is combined as instruction) of the out of Memory in the path that the packet comprised in packet is sent out via it.In an embodiment, when using mac-in-mac encapsulation, the VID being used to indicate network path is key VID (B-VID), and switch 824 in network 812 according to B-VID through carrying out orientation by the particular path of network 812 to packet.Therefore, in an embodiment, when using mac-in-mac encapsulation, in the packet, B-VID is the instruction in the path that packet is sent out via it.Similarly, in another embodiment, when using mac-in-mac encapsulation, VID is a part for the combination (instruction) of the out of Memory comprising the path that packet is sent out via it in packet.
In certain embodiments, the routing information being added into the packet of time mark comprises VID and the one or more addresses corresponding with the layer below Internet protocol (IP) layer in multi layer protocol stack.Such as, in an embodiment, the routing information being added into the packet of time mark comprises VID and one or more layer 2 address.In an embodiment, when using mac-in-mac encapsulation, the routing information being added into the packet of time mark comprises B-VID and key destination address (B-DA), and switch 824 in network 812 according to B-VID and B-DA in packet through carrying out orientation by the particular path of network 812 to packet.
In certain embodiments, the routing information be added in the packet of time mark comprises one or more IP address.Such as, as discussed above, clock equipment 804 and multiple IP address information, and/or from clockwork 808 and multiple IP address information, and Path selection is at least partly by realizing the selection of primary ip address and/or secondary IP address.Such as, in an embodiment, network 812 is designed to the packet along different path routes with different secondary IP address.In another embodiment, network 812 is designed to the packet along different path routes with different primary ip address.In another embodiment, network 812 is designed to have the right packet of different primary ip address/secondary IP address along different path routes.
In other embodiments, clock equipment 804 and/or from clockwork 808 be configured to use based on route follow the tracks of path discovery determine from different primary ip address, secondary IP address and/or primary ip address/secondary IP address corresponding path." Paris traceroute " and " TraceFlow " are the examples of the instrument in the path found in network between 2.In other embodiments, other the suitable instrument for finding the path in network between 2 is used.
Therefore, clock module 820 makes multiple packet 848 be sent out along different paths 828,830,832 by network 812.Such as, packet 848a is sent out along path 828; Packet 848b is sent out along path 830; And packet 848c is sent out along path 832.In certain embodiments, each packet 848 comprises respective routing information (such as, layer 2 information (such as VLAN-ID, one or more addresses etc.) and/or layer 3 or more high layer information (such as one or more IP addresses etc.)) and respective temporal information (such as timestamp).As discussed above, the path that respective routing information indicates each packet 848 to be sent out via it.
Be configured to process from the time synchronized module 850 of clockwork 808 the respective routing information and respective temporal information that each packet at least some packet packet 848 comprises, and carry out certainty annuity time clock in response to the process of routing information and temporal information.Such as, in an embodiment, time synchronized module 850 is configured to the respective clock information maintaining each path, and uses at least some clock information in the clock information in different path to carry out certainty annuity time clock.Such as, time synchronized module 850 is configured to maintain first clock information, with second path 830 corresponding second clock information and with three path 832 corresponding three clock information corresponding with path 828.
In an embodiment, comprise multiple port 854 from clockwork 808, and packet 848a is received via port 854a; Packet 848b is received via port 854b; And packet 848c is received via port 854c.In other embodiment and/or scene, each packet at least some packet in packet 848 is received via identical port 854.Although Fig. 8 illustrates three ports 854, but, in other embodiments, comprise the port one 54 of the suitable number be less than or more than three from clockwork 808.In an embodiment, single port 854 is only comprised from clockwork 808.
Time synchronized module 850 is configured to the respective clock information upgrading each path based on the temporal information in the packet 848 of the respective time mark be sent out via respective path.In an embodiment, the clock information in each path maintained by time synchronized module 850 be included in master clock that clock equipment 804 is maintained and be maintained from clockwork 808 from the respective side-play amount between clock.
In another embodiment, the clock information in each path generated by time synchronized module 150 comprises the respective clock value (such as Time of Day value) corresponding with the master clock be maintained in clock equipment 804.Such as, in an embodiment, time synchronized module 850 is configured to determine each clock value based on the respective timestamp in the packet 848 of the respective time mark be sent out via respective path.
In an embodiment, time synchronized module 850 is application layer module of the application layer operation in multilayer communication protocol stack.In other embodiments, clock synchronization module 850 is at another suitable layer operation of the 4th at least in multilayer communication protocol stack layer.In other embodiments, clock synchronization module 850 is in another suitable layer of below the application layer in multilayer communication protocol stack, and/or the suitable layer operation of less than the 4th layer in multilayer communication protocol stack.
In an embodiment, time synchronized module comprises Path Recognition module 870.Path Recognition module 870 is configured to analyze the routing information in each packet 848, is sent out via specific path with identification data bag 848.Such as, in an embodiment, Path Recognition module 870 is configured to analyze layer 2 information in packet 848, is sent out via specific path with identification data bag 848.As illustrated examples, in an embodiment, Path Recognition module 870 is configured to analyze the VLAN ID in packet 848, is sent out via specific path with identification data bag 848.Such as, in an embodiment, different VLAN ID indicates the different path in path 828,830,832.In other embodiments, Path Recognition module 870 is configured to analyze the VLAN ID in packet 848 and other layer 2 information (such as one or more address), is sent out via specific path with identification data bag 848.
In another embodiment, Path Recognition module 870 is configured to analyze layer 3 information in packet 848, is sent out via specific path with identification data bag 848.As illustrated examples, in an embodiment, Path Recognition module 870 is configured to the IP address at least analyzed in packet 848, is sent out via specific path with identification data bag 848.Such as, in various embodiments, different source IP addresss, object IP address or source IP/ object IP are to the different paths in instruction path 828,830,832.In other embodiments, Path Recognition module 870 is configured to analyze one or more IP address in packet 848 and other layer 3 or more high layer information, is sent out via specific path with identification data bag 848.
In certain embodiments, be configured to maintain from clock from the time synchronized module 850 clockwork 808.In an embodiment, from clock be Time of Day clock.In another embodiment, from clock be the counter not being directly linked to Time of Day.In an embodiment, time synchronized module 850 comprises or uses the counter circuit maintained from clock.Time synchronized module 850 is configured to remain respective and depends in some embodiments of the clock in path wherein, time synchronized module 850 be configured to one of selective dependency clock in path as from clock non-maintenance independent from clock.
In certain embodiments, time synchronized module 850 is configured to use the technology of such as above-mentioned technology and so on, uses the clock information depending on path to determine from clock value.Such as, in an embodiment, time synchronized module 850 is configured at least determine from clock value by mathematically combining at least some clock information depended in the clock information in path.In another embodiment, time synchronized module 850 is configured at least by selecting one of multiple clock result depending on path to determine from clock value.In another embodiment, time synchronized module 850 is configured at least determine from clock value by following operation: (i) in some cases, combines multiple at least some clock result depended in the clock result in path; And (ii) selects one of multiple clock result depending on path.In another embodiment, clock module time synchronized module 850 is configured at least determine from clock value by following operation: (i) selects multiple subset depending on the clock result in path; And (ii) combination depends on the subset of the clock result in path.
Fig. 8 B is the block diagram of another example system 880, and wherein clock equipment 804 only comprises single port 840b, and only comprises single port 854b from clockwork 808.Path diversity is provided by network 812 completely.As discussed above, such as, in certain embodiments, switch 824 is configured to use different paths 884,888,892 when but transmission is gone to same endpoints equipment comprised the packet of different header (such as source address, destination address, layer 4 port etc.).As another example, in certain embodiments, switch 824 application load balancing technique, the packet wherein going to same endpoints equipment is directed along different paths 884,888,892 based on headers (such as source address, destination address, layer 4 port etc.) different in packet.Therefore, in certain embodiments, in order to make network 812 send packet via different paths 884,888,892 to from clockwork 808, clock equipment 804 changes the header (such as source address, destination address, layer 4 port etc.) in packet.
Fig. 9 is the flow chart of the exemplary method 900 of the clock value for promoting to determine across a network according to embodiment.In an embodiment, Fig. 8 A and/or Fig. 8 B is configured to implementation method 900 from clockwork 808, and for purposes of illustration, carrys out discussion method 900 with reference to figure 8A and Fig. 8 B.But, in other embodiments, carry out implementation method 900 by another suitable equipment (such as Fig. 8 A and/or Fig. 8 B from clockwork 808).
At block 904 place, receive the time synchronized packet of master clock via multiple communication path.Such as, via path 828,830 and 832 time of reception synchronization packets 848.Each time synchronized packet comprises routing information and temporal information.In an embodiment, the path that routing information (such as layer 2 information (such as VLAN-ID, one or more addresses etc.), and/or layer 3 or more high layer information (such as one or more IP addresses etc.)) designation data bag is sent out via it.In certain embodiments, temporal information is the timestamp, clock value etc. corresponding with master clock.
At block 908 place, for each packet received at block 904 place, the routing information in usage data bag comes the path that identification data bag is sent out via it.In various embodiments, one or more in the following in usage data bag identifies path: (i) VLANID, (ii) layer 2 destination address, (iii) layer 2 source address, (iv) source IP address and/or (v) object IP address.Such as, packet 848a is identified as being sent out via path 828 by the routing information analyzed in packet 848a; Packet 848b is identified as being sent out via path 830 by the routing information analyzed in packet 848b; And packet 848c is identified as being sent out via path 832 by the routing information analyzed in packet 848c.
At block 912 place, the respective temporal information in usage data bag upgrades the respective time synchronization information in the path be identified at block 908 place.Such as, the temporal information in usage data bag 848a upgrades the time synchronization information corresponding with path 828; Temporal information in usage data bag 848b upgrades the time synchronization information corresponding with path 830; And the temporal information in usage data bag 848c upgrades the time synchronization information corresponding with path 832.
At block 916 place, be at least used in block 912 place and carried out certainty annuity time clock by the subset of the time synchronization information in different paths determined.In certain embodiments, at least use the subset of the time synchronization information in different path, use the technology of such as above-mentioned technology and so on to carry out certainty annuity time clock.
In an embodiment, the algorithm being similar to best master clock algorithm (BMCA) is used.Such as, be configured to run BMCA to find the preferred example of identical master clock from clockwork, different examples is corresponding from different paths.Then, use the technology of such as above-mentioned technology and so on, use example selected by master clock from clock.
Above-mentioned various pieces, operation and technology at least some can use hardware, perform the processor of firmware instructions, the processor of executive software instruction or its combination in any realize.When using the processor of executive software or firmware instructions to realize, software or firmware instructions can be stored in any tangible, in non-Transient calculation machine readable memory (such as disk, CD, random access memory, read-only memory, flash memory etc.).Software or firmware instructions can be included in when being performed by processor and make processor perform the machine readable instructions of various action.
When implemented in hardware, what hardware can comprise in the following is one or more: discrete component, integrated circuit, application-specific integrated circuit (ASIC) (ASIC), programmable logic device etc.
Although describe various embodiment (it is only intended to be illustrative and nonrestrictive) with reference to concrete example, can change the disclosed embodiments, add and/or delete when not departing from the scope of claim.

Claims (25)

1. a network equipment, comprising:
Be coupled to one or more ports of network;
Time synchronized module, described time synchronized module is configured to:
The routing information that (i) that process comprises at the communication path different by two or more and via at least one port in described one or more port from each time synchronized packet at least some time synchronized packet multiple time synchronized packets that clock equipment receives is respective and (ii) respective time synchronization information, wherein said respective routing information indicates time synchronized packet respective described in described network via its received respective communication path, and
In response to the described process of the described routing information comprised the described at least some time synchronized packet in described multiple time synchronized packet and described time synchronization information and certainty annuity time clock.
2. the network equipment according to claim 1, wherein:
Described respective routing information comprises the respective set of one or more address; And
Described time synchronized module comprises path determination module, and described path determination module is configured to identify that described respective time synchronized packet uses the described set separately of one or more address to be received via specific communication path.
3. the network equipment according to claim 2, wherein:
The described set separately of one or more address comprises (i) respective source IP address and (ii) respective object IP address; And
Described path determination module is configured to identify that described respective time synchronized packet uses (i) described respective source IP address and (ii) described respective object IP address to be received via described specific communication path.
4. the network equipment according to claim 2, wherein:
The described set separately of one or more address comprises respective object IP address; And
Described path determination module is configured to identify that described respective time synchronized packet uses described respective object IP address to be received via described specific communication path.
5. the network equipment according to claim 2, wherein:
The described set separately of one or more address comprises respective source IP address; And
Described path determination module is configured to identify that described respective time synchronized packet uses described respective source IP address to be received via described specific communication path.
6. the network equipment according to claim 1, wherein:
Described respective routing information comprises respective virtual local area network identifiers (VLAN ID); And
Described time synchronized module comprises path determination module, and described path determination module is configured to identify that described respective time synchronized packet uses described respective VLAN ID to be received via specific communication path.
7. the network equipment according to claim 6, wherein:
Described respective routing information comprises respective layer 2 address; And
Described path determination module is configured to identify that described respective time synchronized packet also uses described layer 2 address to be received via described specific communication path.
8. the network equipment according to claim 7, wherein:
Described layer 2 address is separately key destination address (B-DA).
9. the network equipment according to claim 1, wherein:
Described respective routing information comprises respective User Datagram Protoco (UDP) (UDP) peer-port field; And
Described time synchronized module comprises path determination module, and described path determination module is configured to identify that described respective time synchronized packet uses described respective udp port field to be received via specific communication path.
10. the network equipment according to claim 1, wherein:
Described respective routing information is included in dedicated path identifier (ID) field in described respective time synchronized packet; And
Described time synchronized module comprises path determination module, and described path determination module is configured to identify that described respective time synchronized packet uses described respective dedicated path id field to be received via specific communication path.
11. network equipments according to claim 1, wherein:
The described network equipment comprises the multiple ports being coupled to described network; And
Described time synchronized module comprises path determination module, and described path determination module is configured to identify that described respective time synchronized packet also via which port in described multiple port is received based on described respective time synchronized packet and is received via specific communication path.
12. 1 kinds of methods, comprising:
Via the one or more ports being coupled to network, multiple time synchronized packet is received from clock equipment by two or more different communication paths, wherein each time synchronized packet comprises (i) respective routing information and (ii) respective time synchronization information, and wherein said respective routing information indicates time synchronized packet respective described in described network via its received respective communication path;
For each time synchronized packet at least some time synchronized packet in described multiple time synchronized packet, process (i) respective routing information and (ii) respective time synchronization information; And
In response to the described process of the described routing information comprised the described at least some time synchronized packet in described multiple time synchronized packet and described time synchronization information and certainty annuity time clock.
13. methods according to claim 12, wherein:
Described respective routing information comprises the respective set of one or more address; And
Described method also comprises: for each time synchronized packet at least some time synchronized packet in described multiple time synchronized packet, identifies that described respective time synchronized packet uses the described set separately of one or more address to be received via specific communication path.
14. methods according to claim 13, wherein:
The described set separately of one or more address comprises (i) respective source IP address and (ii) respective object IP address; And
Identify that described respective time synchronized packet is received via described specific communication path to comprise: use (i) described respective source IP address and (ii) described respective object IP address, to identify that described respective time synchronized packet is received via described specific communication path.
15. methods according to claim 13, wherein:
The described set separately of one or more address comprises respective object IP address; And
Identify that described respective time synchronized packet is received via described specific communication path to comprise: use described respective object IP address, to identify that described respective time synchronized packet is received via described specific communication path.
16. methods according to claim 13, wherein:
The described set separately of one or more address comprises respective source IP address; And
Identify that described respective time synchronized packet is received via described specific communication path to comprise: use described respective source IP address, to identify that described respective time synchronized packet is received via described specific communication path.
17. methods according to claim 12, wherein:
Described respective routing information comprises respective VLAN ID; And
Identify that described respective time synchronized packet is received via described specific communication path to comprise: use described respective VLAN ID, to identify that described respective time synchronized packet is received via described specific communication path.
18. methods according to claim 17, wherein:
Described respective routing information comprises respective layer 2 address; And
Identify that described respective time synchronized packet is received via described specific communication path to comprise: also use described layer 2 address separately.
19. methods according to claim 18, wherein:
Described layer 2 address is separately key destination address (B-DA).
20. methods according to claim 12, wherein:
Described respective routing information comprises respective User Datagram Protoco (UDP) (UDP) peer-port field; And
Identify that described respective time synchronized packet is received via described specific communication path to comprise: also use described respective udp port field.
21. methods according to claim 12, wherein:
Described respective routing information is included in dedicated path identifier (ID) field in described respective time synchronized packet; And
Identify that described respective time synchronized packet is received via described specific communication path to comprise: also use described respective dedicated path id field.
22. methods according to claim 12, wherein:
Receive described multiple time synchronized packet by two or more different communication paths from described clock equipment to comprise: via multiple time synchronized packet described in the multiple port accepts being coupled to described network; And
Identify described respective time synchronized packet via described specific communication path received also based on: described respective time synchronized packet via which port in described multiple port is received.
23. 1 kinds of systems, comprising:
First network equipment, described first network equipment comprises:
Be coupled to one or more first ports of communication network, and
Master, described master is configured to:
Generate multiple time synchronized packet, each time synchronized packet has (i) respective routing information and (ii) respective time synchronization information, the respective communication path that wherein said respective routing information indicates time synchronized packet respective described in described network to be sent out via it, and
Described multiple time synchronized packet (i) is sent out via the multiple different communication path in described communication network via at least one first port in described one or more first port and (ii); And
Second network equipment, described second network equipment is coupled to described first network equipment via described communication network in communication, and described second network equipment comprises:
Be coupled to one or more second ports of described communication network;
Time synchronized module, described time synchronized module is configured to:
Process the respective routing information of each time synchronized packet (i) that comprise at least some time synchronized packet in the described multiple time synchronized packets sent via at least one port in described one or more port by described clock equipment and (ii) respective time synchronization information, and
In response to the described process of the described routing information comprised the described at least some time synchronized packet in described multiple time synchronized packet and described time synchronization information and certainty annuity time clock.
24. systems according to claim 23, also comprise described communication network at least partially.
25. systems according to claim 24, also comprise the whole of described communication network.
CN201380024941.2A 2012-05-09 2013-05-09 It is synchronous using the clock of multiple network paths Active CN104584467B (en)

Applications Claiming Priority (17)

Application Number Priority Date Filing Date Title
US201261644722P 2012-05-09 2012-05-09
US61/644,722 2012-05-09
US201261647123P 2012-05-15 2012-05-15
US201261647173P 2012-05-15 2012-05-15
US61/647,123 2012-05-15
US61/647,173 2012-05-15
US201261695367P 2012-08-31 2012-08-31
US201261695371P 2012-08-31 2012-08-31
US61/695,367 2012-08-31
US61/695,371 2012-08-31
US201261706526P 2012-09-27 2012-09-27
US61/706,526 2012-09-27
US201261713818P 2012-10-15 2012-10-15
US61/713,818 2012-10-15
US13/764,732 US9172485B2 (en) 2012-02-09 2013-02-11 Clock synchronization using multiple network paths
US13/764,732 2013-02-11
PCT/IB2013/001506 WO2013167977A1 (en) 2012-05-09 2013-05-09 Clock synchronization using multiple network paths

Publications (2)

Publication Number Publication Date
CN104584467A true CN104584467A (en) 2015-04-29
CN104584467B CN104584467B (en) 2018-04-27

Family

ID=49550216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380024941.2A Active CN104584467B (en) 2012-05-09 2013-05-09 It is synchronous using the clock of multiple network paths

Country Status (2)

Country Link
CN (1) CN104584467B (en)
WO (1) WO2013167977A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017107519A1 (en) * 2015-12-22 2017-06-29 中兴通讯股份有限公司 Clock synchronization method and device
CN113556221A (en) * 2020-04-23 2021-10-26 西门子股份公司 Method and device for timing in redundant network

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9806835B2 (en) 2012-02-09 2017-10-31 Marvell International Ltd. Clock synchronization using multiple network paths
US9112630B1 (en) 2012-02-09 2015-08-18 Marvell Israel (M.I.S.L) Ltd. Clock synchronization in the presence of security threats
WO2013117997A2 (en) 2012-02-09 2013-08-15 Marvell Israel (M.I.S.L) Ltd. Clock synchronization using multiple network paths
AT518674B1 (en) * 2016-06-06 2018-02-15 Sprecher Automation Gmbh Method for the synchronized detection of measured data required for controlling differential protective devices of electrical power lines
CN109218007B (en) * 2017-07-03 2022-11-01 中兴通讯股份有限公司 Path selection method, device and storage medium
EP3766195A4 (en) * 2018-03-14 2021-06-16 Telefonaktiebolaget Lm Ericsson (Publ) A method and a first device for clock synchronization

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090147806A1 (en) * 2007-11-02 2009-06-11 Nortel Networks Limited Synchronization of network nodes
US20100296524A1 (en) * 2009-05-22 2010-11-25 Zarlink Semiconductor Inc. Multi input timing recovery over packet network

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2967535B1 (en) * 2010-11-15 2012-11-02 Alcatel Lucent METHOD FOR SYNCHRONIZING MASTER AND SLAVE CLOCKS OF A PACKET SWITCHING NETWORK AND WITH CONNECTED LINKS BETWEEN NODES, AND ASSOCIATED SYNCHRONIZATION DEVICES
WO2013117997A2 (en) * 2012-02-09 2013-08-15 Marvell Israel (M.I.S.L) Ltd. Clock synchronization using multiple network paths

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090147806A1 (en) * 2007-11-02 2009-06-11 Nortel Networks Limited Synchronization of network nodes
US20100296524A1 (en) * 2009-05-22 2010-11-25 Zarlink Semiconductor Inc. Multi input timing recovery over packet network

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017107519A1 (en) * 2015-12-22 2017-06-29 中兴通讯股份有限公司 Clock synchronization method and device
CN106911414A (en) * 2015-12-22 2017-06-30 中兴通讯股份有限公司 Clock synchronizing method and device
CN113556221A (en) * 2020-04-23 2021-10-26 西门子股份公司 Method and device for timing in redundant network

Also Published As

Publication number Publication date
WO2013167977A1 (en) 2013-11-14
CN104584467B (en) 2018-04-27

Similar Documents

Publication Publication Date Title
US10205547B2 (en) Clock synchronization using multiple network paths
US9209920B2 (en) Clock synchronization using multiple network paths
CN104584467A (en) Clock synchronization using multiple network paths
US11133998B2 (en) Method, apparatus, and system for measuring network delay
CN102904775B (en) Method, apparatus and system for measuring network packet loss
US20210119718A1 (en) Symmetric path/link over lag interface using lldp for time synchronization between two nodes using ptp
US8730868B2 (en) Network node, time synchronization method and network system
US9450846B1 (en) System and method for tracking packets in a network environment
CN107113236B (en) Transmitting residence time information in a network
JP4987346B2 (en) System and method for time synchronization over a network
US9112630B1 (en) Clock synchronization in the presence of security threats
JP6147467B2 (en) Frame transmission apparatus and synchronization method
KR20150038127A (en) A method for synchronizing distributed clocks by the precision time protocol, in a telecommunication network
Weibel High precision clock synchronization according to IEEE 1588 implementation and performance issues
WO2014044487A1 (en) Synchronization method and electronic apparatus
CN103051439A (en) Method and device for selecting clock source
EP2458757B1 (en) A method for transmitting IEEE 1588V2 synchronization packets over ethernet in link-by-link mode, via network elements having a transparent clock, and associated help device
Ferrari et al. High availability IEEE 1588 nodes over IEEE 802.1 aq shortest path bridging networks
Kálmán et al. Time synchronization challenges in industrial networks

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant