CN115606121A - 网络设备中的一步时间戳 - Google Patents
网络设备中的一步时间戳 Download PDFInfo
- Publication number
- CN115606121A CN115606121A CN202180034977.3A CN202180034977A CN115606121A CN 115606121 A CN115606121 A CN 115606121A CN 202180034977 A CN202180034977 A CN 202180034977A CN 115606121 A CN115606121 A CN 115606121A
- Authority
- CN
- China
- Prior art keywords
- timing
- timing packet
- phy
- packet
- network device
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0685—Clock or time synchronisation in a node; Intranode synchronisation
- H04J3/0697—Synchronisation in a packet node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/28—Timers or timing mechanisms used in protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
网络设备的媒体访问控制(MAC)处理器接收要由网络设备传输的定时分组。MAC处理器生成要由网络设备的PHY设备使用的、用于将定时信息嵌入定时分组中的一个或多个指示符。一个或多个指示符至少包括指示定时分组是定时信息要嵌入其中的分组类型的指示符、定时信息要在此被嵌入的定时分组中的字段的位置的指示符、定时分组中的定时信息是否要更新的指示符。MAC处理器将定时分组和一个或多个指示符传送到PHY设备以用于对定时分组进一步处理以及对来自网络设备的定时分组进行后续传输。
Description
相关申请的交叉引用
本申请要求于2020年3月23日提交的题为“1Step PTP Time-Stamping OverUSXGMII/USGMII Interfaces”的美国临时专利申请第62/993524号的权益,该临时专利申请的公开内容通过引用整体明确并入本文。
技术领域
本公开总体上涉及通信网络,并且更具体地涉及网络设备中的时间戳分组。
背景技术
时钟同步协议通常用于基于分组的网络中,以同步在不同网络设备处维护的时钟。在这种时钟同步协议中,维护主时钟(master clock)的第一网络设备向维护从时钟(slave clock)的第二网络设备传输包括基于主时钟时间而生成的传输时间戳的定时分组。第二网络设备利用定时分组的传输时间戳和经估计的网络延时来调节从时钟,以便使从时钟与主时钟同步。在两步时间戳场景中,与定时分组的传输时间相对应的时间戳在随后分组中传输。因为与定时分组相对应的时间戳在随后分组中传输,所以两步时间戳系统不需要将时间戳“动态(on-the-fly)”硬件嵌入分组中。然而,两步时间戳需要附加分组的传输,这会增加开销,并且至少在某些情况下会影响网络的吞吐量。此外,两步时间戳要求随后分组与第二网络设备处的对应定时分组匹配,这增加了实现复杂性,并且当匹配被不正确执行时有时会导致同步错误。
一些系统利用一步时间戳机制,其中当分组从网络设备被传输时,与定时分组的传输时间相对应的时间戳被动态地嵌入定时分组中。一步时间戳消除了与两步时间戳相关的一些低效率和复杂性,但是一步时间戳通常会增加网络设备中物理层模块的硬件需求、成本和功耗,因为网络设备通常需要以线速度对分组执行解析和定时计算操作,以便在定时分组从网络设备被传输时将时间戳或其他定时信息动态嵌入定时分组中。
发明内容
在一个实施例中,一种用于处理在网络设备中的用于同步网络设备的定时分组的方法,包括:在网络设备的媒体访问控制(MAC)处理器处接收要由网络设备传输的定时分组;由MAC处理器执行定时分组的初始处理,包括生成要由网络设备的PHY设备使用的、用于将定时信息嵌入定时分组中的一个或多个参数的一个或多个指示符,一个或多个指示符至少包括i)指示定时分组是要由PHY设备向其中嵌入定时信息的分组类型的指示符,ii)定时分组中的字段的位置的指示符,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新的指示符;以及将i)定时分组和ii)一个或多个指示符从MAC处理器传送到PHY设备,以用于基于一个或多个指示符对定时分组进一步处理以及来自网络设备的定时分组进行后续传输。
在另一实施例中,一种被配置为在网络中运行的网络设备包括媒体访问控制(MAC)处理器,该MAC处理器被配置为:接收要由网络设备传输的定时分组;生成要由网络设备的PHY设备使用的、用于将定时信息嵌入定时分组中的一个或多个参数的一个或多个指示符,一个或多个指示符至少包括i)指示定时分组是要由PHY设备向其中嵌入定时信息的分组类型的指示符,ii)定时分组中的字段的位置的指示符,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新的指示符;以及将i)定时分组和ii)一个或多个指示符传送到PHY设备,以用于基于一个或多个指示符对定时分组进一步处理以及对来自网络设备进行定时分组的后续传输。
在又一实施例中,一种被配置为在网络中运行的网络设备,包括耦合到物理层(PHY)设备的媒体访问控制(MAC)处理器,其中MAC处理器被配置为:接收要由网络设备传输的定时分组;生成要由网络设备的PHY设备使用的、用于将定时信息嵌入定时分组中的一个或多个参数的一个或多个指示符,一个或多个指示符至少包括i)指示定时分组是要由PHY设备向其中嵌入定时信息的分组类型的指示符,ii)定时分组中的字段的位置的指示符,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新的指示符;以及将i)定时分组和ii)一个或多个指示符传送到PHY设备。PHY设备被配置为:接收i)来自MAC处理器的定时分组和ii)来自MAC处理器的一个或多个指示符;基于一个或多个指示符将定时信息嵌入定时分组中;以及将定时分组转发给网络设备的一个或多个网络端口以用于来自网络设备的定时分组的传输。
在另一实施例中,一种用于将定时信息嵌入要由网络设备传输的定时分组中的方法,包括:在网络设备的物理层(PHY)设备处接收要由网络设备传输的定时分组,定时分组包括由i)媒体访问控制(MAC)处理器和ii)网络设备的主机处理器中的一项或两项提供的初始定时信息;在PHY设备处从MAC处理器接收要由PHY设备使用的、用于将定时信息嵌入定时分组中的一个或多个参数的一个或多个指示符,一个或多个指示符至少包括i)指示定时分组是要由PHY设备向其中嵌入定时信息的分组类型的指示符,ii)定时分组中的字段的位置的指示符,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新的指示符;由PHY设备基于一个或多个指示符更新定时分组中的初始定时信息以将最终定时信息嵌入定时分组中;以及由PHY设备将定时分组转发给网络设备的一个或多个网络端口以用于来自网络设备的定时分组的传输。
在另一实施例中,一种被配置为在网络中运行的网络设备,包括物理层(PHY)设备处理器,该PHY设备处理器被配置为:接收要由网络设备传输的定时分组,定时分组包括由i)媒体访问控制(MAC)处理器和ii)网络设备的主机处理器中的一项或两项提供的初始定时信息;接收要由PHY设备使用的、用于将定时信息嵌入定时分组中的一个或多个参数的一个或多个指示符,一个或多个指示符至少包括i)指示定时分组是要由PHY设备向其中嵌入定时信息的分组类型的指示符,ii)定时分组中的字段的位置的指示符,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新的指示符;基于一个或多个指示符更新定时分组中的初始定时信息以将最终定时信息嵌入定时分组中;以及将定时分组转发给网络设备的一个或多个网络端口以用于来自网络设备的定时分组的传输。
附图说明
图1是根据一个实施例的被配置为生成和/或更新定时分组以允许网络中的一个或多个其他设备与网络中的主时钟同步的示例网络设备的框图。
图2是根据一个实施例的由图1的网络设备生成和/或更新的定时分组的图。
图3A-图3B是根据各种实施例的插入图2的定时分组中的控制报头的图。
图4是根据一个实施例的图3B的控制报头中包括的物理层(PHY)标签的图。
图5是示出根据一个实施例的用于处理在网络设备中的用于同步网络设备的定时分组的示例方法的流程图。
图6是示出根据一个实施例的用于将定时信息嵌入要由网络设备传输的定时分组中的示例方法的流程图。
具体实施方式
在下面描述的实施例中,网络设备包括物理层(PHY)处理器,该PHY处理器被配置为通过在定时分组从网络设备被传输时动态地嵌入与定时分组相对应的定时信息来实现定时分组的一步时间戳。在一个实施例中,网络设备的一个或多个高层处理器(诸如媒体访问控制(MAC)处理器和/或主机处理器)被配置为执行与将时间戳嵌入分组中相关联的操作的一部分,诸如以将初始定时信息嵌入定时分组中,并且向PHY设备提供包含相关信息的一个或多个标签以使得PHY设备能够在定时分组从网络设备被传输时动态地高效地将最终定时信息嵌入定时分组中。例如,在一个实施例中,网络设备的主机处理器被配置为在定时分组中设置时间戳字段和校正字段,以指示与来自网络设备的定时分组的传输时间相对应的初始时间。作为另一示例,网络设备的MAC处理器被配置为更新定时分组中的校正字段,以将校正字段设置为与网络设备中定时分组的驻留时间相对应的初始值。
在一个实施例中,MAC处理器被配置为:当向PHY设备传送定时分组时,还提供要由PHY设备使用的、用于将定时信息嵌入定时分组中的一个或多个参数的一个或多个指示符。在一个实施例中,一个或多个指示符或标签向PHY设备至少指示:i)定时分组是要由PHY设备向其中嵌入定时信息的分组类型,ii)定时分组中的字段的位置,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新。作为更具体的示例,在一个实施例中,MAC处理器被配置为向PHY设备提供定时分组中的校正字段的位置的指示符。作为另一示例,在一个实施例中,MAC处理器被配置为向PHY设备提供定时分组中的校验和(checksum)尾部字段是否需要由PHY设备更新的指示符。PHY设备被配置为利用由MAC处理器提供的一个或多个指示符来将定时信息嵌入定时分组中。例如,PHY设备被配置为利用一个或多个指示符来快速定位和更新定时分组中的校正字段,以反映来自网络设备的定时分组的准确传输时间或网络设备中定时分组的准确驻留时间,以确定是否需要更新校验和尾部字段,并且如果需要,则快速更新校验和尾部字段等。
在网络设备的MAC和/或主机处理器处执行定时分组的初始处理和时间戳,并且向网络设备的PHY设备提供用于将定时信息最终嵌入定时分组中的相关信息使得PHY设备能够在分组从网络设备被传输时动态地高效且准确地将定时信息嵌入定时分组中,利用MAC和/或主机处理器的硬件和/或处理能力(这可以是MAC和/或主机处理器执行通用MAC和/和主机处理操作所必需的),以执行与时间戳分组相关联的操作,并且与其中PHY设备被配置为将定时信息动态地嵌入定时分组中而没有相关信息从MAC处理器被提供和/或MAC处理器和/或主机处理器没有将初始定时信息嵌入定时分组中的系统相比,促进执行一步类型时间戳(其中时间戳信息被嵌入传出分组(outgoing packet)中)的PHY设备的硬件的减少和相应的功耗、成本等的减少。
图1是根据一个实施例的示例网络设备100的框图,网络设备100被配置为在网络中传输带时间戳的分组以允许一个或多个其他设备与网络中的主时钟同步。网络设备100被配置为根据用于定时同步的同步协议来运行。在一个实施例中,网络设备100被配置为根据电气和电子工程师协会(IEEE)1588标准(通常称为“精确时间协议”或“PTP”)来运行。网络设备100被配置为根据另一同步协议来运行,诸如网络时间协议(NTP)或另一合适的同步协议。在一个实施例中,网络设备100被配置为实现一步时间戳。在该实施例中,网络设备100被配置为在定时分组从网络设备100被传输时动态地将与定时分组的传输时间相对应的定时信息直接嵌入定时分组中。
在各种实施例中,网络设备100被配置为作为以下各项来运行:在网络上实现主时钟或从时钟的普通时钟设备、与主时钟同步并且将主时钟中继到网络上的一个或多个从设备的边界时钟设备、或者作为被配置为将系统驻留时间从主设备中继到网络上的一个或多个从设备的中间设备的透明时钟。通常,在各种实施例中,网络设备100被配置为生成定时分组和/或更新所接收的定时分组中的定时信息,并且向网络上的一个或多个其他设备传输定时分组,以允许一个或多个其他设备与网络上的主时钟同步。如本文中使用的,术语“定时分组”是指网络数据分组,其包括由网络中的网络设备生成和传输并且用于在网络中指导与时间相关的过程(诸如网络中的网络设备之间的时钟同步)的定时消息。
网络设备100包括被配置为耦合到相应的一个或多个网络链路106以将网络设备100耦合到网络中的一个或多个其他设备的一个或多个网络端口104。在一个实施例中,网络设备100还包括耦合到一个或多个网络端口104的一个或多个物理层(PHY)处理器108。尽管网络设备100在图1中示出为具有耦合到相应网络端口104的相应PHY设备108,但在一些实施例中,网络设备100包括耦合到多个(例如,所有)网络端口104的PHY设备108。在另一实施例中,网络设备100是仅包括耦合到单个端口104的单个PHY设备108的单端口设备。为了简洁起见,一个或多个PHY设备106在本文中有时称为“PHY设备108”。
在各种实施例中,PHY设备108包括数模转换器(DAC)、放大器、调制器等(未示出)中的一个、或两个或更多个的任何合适的组合,以将与分组相对应的数字信号转换为适合于经由通信链路106进行传输的模拟信号。PHY设备108还包括被配置为实现定时同步操作的一个或多个定时模块。例如,在一个实施例中,PHY设备108-1包括出口(egress)定时模块110,并且PHY设备108-2包括入口(ingress)定时模块112。在一个实施例中,PHY设备108-1的出口定时模块110被配置为将基于由PHY时钟113维护的时钟的定时信息嵌入定时分组中,该定时信息对应于来自网络设备100的定时分组的传输时间。在一个实施例中,PHY设备108-2的入口定时模块112被配置为基于由PHY时钟113维护的时钟来为所接收的定时分组生成时间戳,该时间戳对应于网络设备100对定时分组的接收时间。在另一实施例中,PHY设备108-1和PHY设备108-2是维护相应PHY时钟113的独立实体。在一些这样的实施例中,采用合适的时钟同步机制来同步相应PHY时钟113。
在一个实施例中,出口定时模块110和入口定时模块112在被配置为以线速度执行动态操作的硬件中实现。例如,在一个实施例中,PHY设备108-1的出口定时模块110被配置为在分组从网络设备100被传输时动态地嵌入与该分组的传输时间相对应的定时信息。在一个实施例中,入口定时模块112被配置为在网络设备100接收到分组时动态地针对该分组生成时间戳。尽管PHY设备108-1在图1中被示出为包括出口定时模块,并且PHY设备108-2在图1中被示出为包括入口定时模块,但是在一个实施例中,PHY设备108包括被配置为将定时信息嵌入从网络设备100传输的分组中的出口定时模块和被配置为针对由网络设备100接收的分组生成时间戳的入口定时模块两者。
在一个实施例中,网络设备100还包括媒体访问控制(MAC)处理器114和主机处理器116。在一个实施例中,MAC处理器114使用一个或多个集成电路(例如,一个或多个专用集成电路(ASIC))来实现。在一个实施例中,主机处理器116是诸如网络设备100的中央处理单元(CPU)等处理单元或由其实现。在一个实施例中,主机处理器116被配置为实现存储在网络设备100的存储器(未示出)中的计算机可读指令。MAC处理器114耦合到一个或多个PHY设备108和主机处理器116。在一个实施例中,MAC处理器被配置为从一个或多个PHY设备108接收分组,对从一个或多个PHY设备108接收的分组执行MAC操作,例如解析和解封装分组,并且将分组传送到主机处理器116以进行进一步处理。在一个实施例中,MAC处理器114还被配置为从主机处理器116接收分组,对从主机处理器116接收的分组执行MAC操作,例如用一个或多个协议报头封装分组,并且将分组传送到适当的一个或多个PHY设备108以从网络设备100进行传输。如下面将更详细讨论的,在各种实施例中,MAC处理器114被配置为执行定时分组的初始处理,并且向PHY设备(例如,PHY设备108-2)提供一个或多个指示符或标签,该指示符或标签包含用于由PHY设备更新定时分组中的初始定时信息的相关信息。
在网络设备100作为普通时钟设备或边界时钟设备进行运行的实施例和/或场景中,主机处理器116被配置为生成源自网络设备100的定时分组。在一个实施例中,网络设备100包括或实现定时模块118,定时模块118被配置为生成定时分组以用于从网络设备100进行传输。在一个实施例中,定时模块118被配置为生成定时分组以包括指示定时分组的传输时间的初始定时信息。在一个实施例中,初始定时信息基于由主机处理器116维护的主机时钟120来确定。在一个实施例中,定时模块118被配置为将由定时模块118生成的定时分组中的时间戳字段设置为由主机处理器116维护的主机时钟120的当前值。定时模块118还被配置为将定时分组中的校正字段设置为初始校正值,以补偿在当前时间与定时分组从网络设备100被实际传输的时间之间定时分组预期将经历的主机时钟120的当前值的传输延迟。主机处理器被配置为将定时分组传送到MAC处理器114。MAC处理器114被配置为进而将定时分组传送到适当的PHY设备108,以用于来自网络设备100的网络端口104的分组的传输。
在一个实施例中,由主机处理器116使用以生成定时分组的初始定时信息的主机时钟120不如PHY时钟113准确。例如,在一个实施例中,主机时钟120以一毫秒或几毫秒内的精度维持一天中的时间,而PHY时钟113以一纳秒或几纳秒内的精度维持一天中的时间。如下面将更详细解释的,在来自网络设备100的定时分组的传输时,定时分组的校正字段后续由PHY设备108中的出口定时模块基于PHY时钟113来更新。在至少一些实施例中,由PHY设备108基于PHY时钟113更新校正字段可以补偿主机时钟120的不准确度。
继续参考图1,在网络设备100作为透明时钟设备进行运行的实施例和/或场景中,PHY设备108被配置为接收由网络设备100经由第一网络端口104接收的定时分组,用定时分组的入口时间对定时分组加时间戳,并且将定时分组与时间戳一起传送给MAC处理器114。MAC处理器114被配置为处理定时分组,定位具有定时分组的校正字段,并且更新定时分组中的校正字段以反映网络设备100中定时分组的驻留时间。MAC处理器114被配置为然后将定时分组传送到适当的PHY设备108,以用于来自网络设备100的第二网络端口104的定时分组的传输。
仍然参考图1,MAC处理器114被示出为将定时分组119传送到PHY设备108-2。在一个实施例中,定时分组119是以太网分组,例如,作为互联网协议版本六(IPv6)上的用户数据报协议(UDP)分组。在另一实施例中,定时分组119是另一种合适类型的分组,诸如互联网协议版本六(IPv4)上的UDP或数据链路(L2)层协议分组。定时分组119包括定时消息122。在一个实施例中,定时消息122是PTP消息,诸如PTP同步(Sync)消息或PTP延迟请求消息。在其他实施例中,定时消息122是另一种合适类型的定时消息。在一个实施例中,定时分组119是由主机处理器116的定时模块118生成的定时分组。在另一实施例中,定时模块116生成定时消息122,并且MAC处理器114用一个或多个协议报头、标签等封装定时消息122以生成定时分组119。在另一实施例中,定时分组119是由MAC处理器114从PHY设备108接收的定时分组。
简要参考图2,在一个实施例中,示例定时消息200对应于定时消息122。在另一实施例中,定时消息122不同于定时消息200。定时消息200包括报头202和数据部分204。在一个实施例中,报头202包括校正字段206。在一些实施例中,除了校正字段206之外,报头字段202还包括一个或多个其他字段。数据部分204包括时间戳字段208。在一些实施例中,除了时间戳字段206之外,数据部分204包括一个或多个其他字段。例如,数据部分206包括校验和尾部字段210,诸如UDP尾部字段或另一类型的校验和尾部字段。在一些实施例中,数据部分204省略校验和尾部字段。
现在参考图1和图2,在定时消息122由主机处理器116生成的实施例中,诸如在网络设备100作为普通时钟或边界时钟设备进行运行的实施例中,在一个实施例中,主机处理器116的定时模块118将定时消息122的时间戳字段208设置为主机时钟120的当前值。定时模块118还选择性地针对定时消息122生成校正字段值,并且将定时消息122的校正字段206设置为所生成的校正字段值。在一个实施例中,定时模块118生成校正字段值以等于时间戳字段208中的时间戳的纳秒部分的负值,使得在来自网络设备100的定时分组119的传输时,时间戳的纳秒部分后续可以由PHY设备108基于PHY时钟113来更新。在一个实施例中,定时模块118还向校正字段值添加出口管线延迟,其中出口管线延迟是从PHY设备108对定时分组加时间戳的点到PHY设备的出口引脚的静态延迟的预配置值,定时分组经由该出口引脚从PHY设备108被出口。在一个实施例中,定时消息122包括校验和尾部字段,诸如校验和尾部210,定时模块118基于时间戳字段208和校正字段206的值来设置定时分组119的校验和尾部字段210,以维持定时分组119中的校验和(诸如UDP校验和)的正确性。
仍然参考图1和图2,在一个实施例中,定时分组119是由PHY设备108(例如,PHY设备108-1)从网络端口104(例如,网络端口104-1)接收的定时分组。在一个实施例中,当网络设备100接收到定时分组119时,PHY设备108-1的入口定时模块112生成定时分组119的时间戳,该时间戳对应于网络设备100对定时分组119的接收时间或定时分组119的入口时间。然后,PHY设备108-1将定时分组119与为定时分组119而生成的时间戳一起传送到MAC处理器114。在一个实施例中,PHY设备108-1为定时分组119生成控制报头,将时间戳嵌入控制报头中,并且将定时分组119与控制报头一起传送到MAC处理器114。在一个实施例中,PHY设备108-1用针对定时分组119而生成的控制报头替换定时分组119的前导码,并且将定时分组与控制报头一起传送到MAC处理器114。在其他实施例中,PHY设备108-1以其他合适的方式将针对定时分组119而生成的时间戳传送到MAC处理器114。
在一个实施例中,MAC处理器114包括出口重标记引擎124,出口重标记引擎124被配置为处理由MAC处理器114从PHY设备108(例如,PHY设备108-1)接收的定时分组,以定位和更新定时分组中包括的定时消息中的校正字段,以指示网络设备100中定时分组的驻留时间。在一个实施例中,出口重标记引擎124被配置为处理从PHY设备108-1接收的定时分组119,并且定位和更新定时分组119中的定时消息122的校正字段206,以指示网络设备100中定时分组119的驻留时间。在一个实施例中,出口重标记引擎124被配置为通过从校正字段206的当前校正值中减去由为定时分组119而生成的时间戳指示的定时分组119的入口时间来更新定时消息122的校正字段206。在一个实施例中,出口重标记引擎124被配置为还向校正字段206的校正字段值添加出口管线延迟,其中出口管线延迟是从PHY设备108对定时分组加时间戳的点到PHY设备的出口引脚的静态延迟的预配置值,定时分组经由该出口引脚从PHY设备108被出口。
继续参考图1,MAC处理器114被配置为将定时分组119传送到适当的PHY设备108(例如,PHY设备108-2),以用于来自网络端口104(例如,网络端口104-2)的定时分组119的传输。在一个实施例中,MAC处理器114被配置为还向PHY设备108-2提供一个或多个参数的一个或多个指示符,以使得PHY设备108-2能够快速且高效地将定时信息嵌入定时分组119中。在一个实施例中,由MAC处理器114提供给PHY设备108-2的一个或多个参数使得PHY设备108-2能够确定定时分组119需要定时信息更新并且快速定位定时分组119中用于嵌入定时信息更新的字段,而不执行定时分组119的分类和/或解析。在一个实施例中,一个或多个指示符或标签向PHY设备至少指示i)定时分组是要由PHY设备向其中嵌入定时信息的分组类型,ii)定时分组中的字段的位置,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新。在一些实施例中,MAC处理器114向PHY设备108-2提供一个或多个附加指示符,以促进由PHY设备108-2进行的定时信息更新。例如,由MAC处理器114提供给PHY设备108-2的一个或多个指示符包括以下中的一项或多项:i)定时分组119中的定时消息122中的校正字段206的位置的指示符,其用于使得PHY设备108能够定位和更新校正字段206,而不解析定时分组119以确定定时分组119中的校正字段206的位置,ii)定时分组119中的定时消息122中是否存在校验和尾部字段(例如,校验和尾部字段210)的指示符,iii)要用于将定时信息嵌入定时分组119中的时间应用接口(TAI)域的指示符,以及iv)是否需要结合将定时信息嵌入定时分组119中来说明(account for)环绕式处理(wraparound)的指示符。在其他实施例中,由MAC处理器114另外地或备选地向PHY设备108-2提供其他合适的指示符,以使得PHY设备108-2能够在定时分组119从网络设备100被传输时动态地高效地将定时信息嵌入定时分组119中。
在一个实施例中,MAC处理器114被配置为将一个或多个参数的一个或多个指示符包括在为定时分组119而生成的控制报头中(控制报头包括PHY标签126),并且将控制报头插入定时分组119中。MAC处理器114包括控制报头引擎128,控制报头引擎128被配置为生成定时分组119的控制报头(例如,在定时分组119是由网络设备100发起的定时分组的实施例中),或者被配置为修改定时分组119中已经存在的控制报头(例如,在定时分组119是由MAC处理器114从网络设备100的PHY设备108接收的定时分组的实施例中)。在定时分组119是由MAC处理器114从主机处理器116接收的实施例中,控制报头引擎128被配置为针对定时分组119生成控制报头,并且将PHY标签126嵌入针对定时分组119而生成的控制报头中。在一个实施例中,当主机处理器116生成定时分组119时,PHY标签126由主机处理器116配置用于定时分组119。在定时分组119是由MAC处理器114从PHY设备108(例如,PHY设备108-1)接收的实施例中,控制报头引擎120被配置为针对定时分组119生成PHY标签128,并且将PHY标签128插入PHY设备108针对定时分组119而生成的控制报头中。在各种实施例中,由PHY设备108或MAC处理器114针对定时分组119而生成的示例控制报头将在下面参考图3A-图3B更详细地描述。根据一个实施例,插入定时分组119的控制报头中的示例PHY标签在下面参考图4更详细地描述。
仍然参考图1,PHY设备108-2被配置为从MAC处理器114接收定时分组119,并且基于由MAC处理器114提供给PHY设备108-2的一个或多个指示符将定时信息嵌入定时分组119中。在一个实施例中,PHY设备108-2的出口定时模块110被配置为将定时信息嵌入定时分组119中。在一个实施例中,因为初始定时信息已经由MAC处理器114或PHY设备108嵌入定时分组119中,所以PHY设备108仅需要更新定时分组119中的相关定时信息以指示来自网络设备100的定时分组119的实际传输时间或网络设备100中定时分组119的驻留时间。例如,在一个实施例中,出口定时模块110被配置为更新定时分组119中的定时消息122中的校正字段值以向校正值添加PHY时钟113的当前值(例如,当前纳秒值)。
在一个实施例中,出口定时模块110被配置为基于由MAC处理器114提供给PHY设备108-2的一个或多个指示符将定时信息嵌入定时分组119中。例如,出口定时模块110被配置为基于由MAC处理器114提供的校正字段的位置的指示符(例如,被包括在PHY标签126中)来更新由PHY设备108-2确定的位置处的校正字段206的校正值。作为另一示例,在一个实施例中,PHY设备108-2被配置为基于由MAC处理器114提供的指示符来确定定时分组119中是否存在校验和尾部字段(例如,校验和尾部字段210)并且需要由PHY设备108-2更新,并且如果是,则更新定时分组119中的校验和尾部字段。
与其中不通过更高级别处理器(诸如MAC处理器或主机处理器)将初始定时信息嵌入定时分组中的系统相比,通过更新定时分组119中已经包括的定时信息来将最终定时信息嵌入分组119中(如由PHY设备108-1执行的)的计算强度较小。此外,在各种实施例中,由于由MAC处理器114向PHY设备108-2提供了用于将定时信息嵌入定时分组119中的相关指示符,PHY设备108-2不需要解析定时分组119,例如以确定定时分组119中的定时消息122中的校正字段206的位置和/或确定定时分组119中的定时消息122中是否存在校验和尾部字段并且需要由PHY设备108-2更新。因此,在至少一些实施例中,与其中PHY设备被配置为动态地执行一步时间戳而没有指示符由MAC处理器提供和/或没有初始定时信息由MAC处理器或主机处理器嵌入定时分组中的系统相比,PHY设备108-2可以使用减少的硬件来实现,这减少了功耗、成本等。
仍然参考图1,应当注意,尽管网络设备100在图1中被示出为包括耦合到网络端口104-1的PHY设备108-1和耦合到网络接口104-2的PHY设备108-2,但在一些实施例中,网络设备100省略了PHY设备108-1和PHY设备108-1和/或108-2中的一者或两者。例如,在一些实施例中,MAC处理器114直接耦合到网络端口104-1和/或网络端口104-2中的一者或两者。在MAC处理器114直接耦合到网络端口104-1的实施例中,MAC处理器114针对由MAC处理器114从网络端口104-1接收的定时分组生成入口时间戳。另外,在MAC处理器114直接耦合到网络端口104-2的实施例中,MAC处理器114在将定时分组转发给网络端口104-2以用于定时分组的传输之前更新定时分组中的定时信息。例如,在各种实施例中,MAC处理器114基于由MAC处理器114维护的MAC时钟(未示出)来更新定时分组中的校正字段,以指示来自网络设备100的传输时间或定时分组,或者以添加网络设备100中定时分组的驻留时间。
现在转到图3A,根据一个实施例,由PHY设备108(例如,PHY设备108-1)为定时分组生成控制报头300。在一个实施例中,控制报头300通常符合为诸如通用串行10GE媒体独立接口(USXGMII)或通用串行千兆媒体独立接口(USGMII)等媒体独立接口而指定的已知控制报头格式。然而,在一个实施例中,控制报头300相对于为媒体独立接口而指定的已知控制报头格式被修改。在所示实施例中,控制报头300包括分组类型字段302、子端口标识符(Id)字段304、扩展字段类型指示符字段306、扩展字段308和循环冗余校验(CRC)字段310。在一些实施例中,控制报头300省略了图3A所示的字段302-字段310中的一个或多个,和/或包括图3A中未示出的一个或多个附加字段。
在一个实施例中,PHY设备(例如,PHY设备108-1)被配置为针对所接收的定时分组生成控制报头300,并且在定时分组内的预定位置处插入控制报头。例如,PHY设备108-1被配置为用控制报头300替换定时分组的开始处的前导码。PHY设备108-1被配置为在控制报头300的扩展字段308中包括与分组的接收时间相对应的时间戳。PHY设备108-1还被配置为设置扩展字段类型字段306的值以指示扩展字段308包括时间戳。在一个实施例中,扩展字段308中包括的时间戳占据扩展字段306的32位。在另一实施例中,扩展字段307中包括的时间戳占据不同于32位的位数(例如,16位、48位、64位或任何其他合适的位数)。在一个实施例中,PHY设备108-1被配置为将时间戳包括为分组接收时的PHY时钟113的32位无符号值(以纳秒为单位)。在另一实施例中,PHY设备108-1被配置为以另一合适的格式包括时间戳。例如,在一个实施例中,在PHY设备108-1被配置为利用IEEE时间应用接口(TAI)格式的实施例中,PHY设备108-1被配置为将分组接收时的PHY时钟113的纳秒值转换为2比特秒值,随后是29比特纳秒值,其包括纳秒值的二进制补码(two’scompliment)。
MAC处理器114被配置为从PHY设备108-1接收定时分组以及控制报头300,并且从控制报头300的扩展字段308获取时间戳。在一个实施例中,MAC处理器114被配置为以合适的格式将时间戳值传递到主机处理器116。在一个实施例中,MAC处理器114被配置为将时间戳值转换为适于传送到主机处理器116的格式。例如,MAC处理器114被配置为在一些实施例中,MAC处理器114被配置为修改时间戳值,例如以从时间戳值中减去入口管线延迟,并且将修改后的时间戳值传送到主机处理器116。在一个实施例中,MAC处理器114被配置为针对分组生成时间戳标签(TST)以便以合适的格式将时间戳值包括在时间戳值中,并且将时间戳标签与分组一起传递给MAC处理器114。在一个实施例中,主机处理器116被配置为利用从控制报头300获取的时间戳以用于与主时钟的同步。在另一实施例中,MAC处理器114被配置为在内部利用从控制报头300获取的时间戳,例如以更新定时分组119中的校正字段以反映定时分组119的驻留时间,如上所述。
图3B是根据一个实施例的控制报头350的图。参考图1,在一个实施例中,MAC处理器114被配置为在将分组传送到PHY设备(例如,PHY设备108-2)以用于经由网络端口104(例如,网络端口104-2)的分组的传输之前,将控制报头350插入从主机控制器116接收的定时分组中。在另一实施例中,MAC处理器114被配置为修改已经存在于定时分组中的控制报头(例如,控制报头300)以生成控制报头350。在一个实施例中,控制报头350在定时分组内的预定位置处插入定时分组中。例如,在一个实施例中,控制报头350替换定时分组的开始处的前导码。
在一个实施例中,控制报头350通常与控制报头300相同,接受控制字段350的扩展字段308包括PHY标签314。在一个实施例中,PHY标签314对应于图1的PHY标签126。在一个实施例中,MAC处理器114被配置为针对从主机处理器116接收的定时分组生成PHY标签314,并且将PHY标签304包括在为该分组而生成的控制报头350的扩展字段308中。在一个实施例中,MAC处理器114还被配置为在控制报头350的分组类型字段302中包括指示符,该指示符指示定时分组是要由PHY设备向其中嵌入定时信息的分组类型。在一个实施例中,PHY设备108-2被配置为基于分组类型字段302确定定时分组是PHY设备要向其中嵌入定时信息的分组类型。在一个实施例中,PHY设备108-2被配置为响应于基于分组类型字段302确定定时分组是PHY设备要向其中嵌入定时信息的分组类型而执行定时信息到定时分组中的嵌入。
MAC处理器114被配置为生成PHY标签314以包括PHY设备108-2将定时信息嵌入分组中所需要的一个或多个参数的一个或多个指示符,定时信息指示与来自网络设备100的分组的传输相对应的时间或网络设备100中定时分组的驻留时间。在一个实施例中,MAC处理器114被配置为插入PHY标签314,以代替为媒体独立接口而指定的控制报头格式的签名字段。
在一个实施例中,PHY设备108-2被配置为从控制报头350和/或PHY标签314获取一个或多个指示符,该指示符用于将定时信息嵌入定时分组中,而不解析定时分组以确定控制报头320和/或PHY标签314在定时分组中的位置。例如,在其中控制报头350在定时分组内的预定位置处(诸如在定时分组的开始处)插入定时分组中的实施例中,PHY设备108-2被配置为从在定时分组的开始处的控制报头350和/或从位于控制报头350内的预定位置的PHY标签314中检索一个或多个指示符。如上所述,在至少一些实施例中,与其中PHY设备实现一步时间戳而不从诸如MAC处理器等上层处理器接收这样的一个或多个指示符的系统相比,控制报头350中包括的一个或多个指示符使得PHY设备108-2能够以降低的硬件需求来高效地将一步时间戳应用于分组。
图4是根据一个实施例的PHY标签400的图。在一个实施例中,PHY标签400对应于图3B的PHY标签314。在各种实施例中,MAC处理器114被配置为针对从主机处理器116接收的定时分组或为从PHY设备108接收的定时分组生成PHY标签400。在所示实施例中,PHY标签400包括保留字段402、校正字段偏移字段404、TAI域选择字段406、校验和更新字段408和时间戳最低有效位(LSB)字段410。在一些实施例中,PHY标签400省略了图4所示的字段402-字段410中的一个或多个字段和/或包括图4中未示出的一个或多个附加字段。
PHY标签400的校正字段偏移字段404被设置为指示定时分组中的校正字段(例如,图2的校正字段206)的位置。例如,在一个实施例中,校正字段偏移字段404被设置为校正字段的开始从定时分组的开始或从定时分组中的开始帧定界符(SFD)字段的开始的偏移值(例如,比特数、字节数或另一合适的偏移值)。在另一实施例中,校正字段偏移指示符字段包括定时分组中的校正字段的位置的另一合适的指示符。TAI选择字段406包括要由PHY设备108-2用于以对定时分组加时间戳的TAI域的指示。
校验和更新指示符字段408被设置为指示校验和尾部字段更新是否将由PHY设备108-2针对定时分组执行。例如,在一个实施例中,如果定时分组是IPv6上的UDP分组,则MAC处理器114将校验和更新字段408设置为指示PHY设备108-2要更新分组中的校验和尾部字段的值(例如,逻辑1)。否则,在一个实施例中,如果定时分组定时分组不是IPv6上的UDP分组,则MAC处理器114将校验和更新指示符字段408设置为指示不需要校验和尾部字段更新的值(例如,逻辑0)。在一个实施例中,PHY设备108-2基于校验和更新指示符字段408来确定是否需要校验和尾部字段更新,并且响应于确定需要校验和尾部字段更新,对位于定时分组中的定时消息内的预定位置处(诸如在定时分组中的定时消息的末尾处)的校验和尾部字段(例如,图2的校验和尾部字段210)执行增量更新。
在一个实施例中,时间戳LSB字段410包括定时分组中的时间戳的最低有效位,诸如定时分组中的入口或起始时间戳。在一个实施例中,定时分组中的时间戳的最低有效位向PHY设备108-2指示定时分组的校正字段中的环绕式处理是否需要由PHY设备108-2说明。在一个实施例中,PHY设备108-2被配置为将PHY时钟113的当前值的最低有效位与时间戳LSB字段410的值进行比较。在一个实施例中,如果PHY时钟113的当前值的最低有效位等于时间戳LSB字段410的值,则PHY设备108-2确定不需要环绕式处理校正。在这种情况下,PHY设备108-2(例如,出口定时模块110)通过将PHY时钟113的纳秒值与校正字段的当前值相加来确定定时分组中的校正字段的新值。另一方面,在一个实施例中,如果PHY时钟113的当前值的最低有效位不等于时间戳LSB字段410的值,则PHY设备108-2确定已经发生环绕式处理。在这种情况下,在一个实施例中,PHY设备108-2(例如,出口定时模块110)通过将PHY时钟113的纳秒值和额外的秒或109纳秒与校正字段的当前值相加来确定定时分组中的校正字段的新值。
图5是示出根据一个实施例的网络设备中的用于处理用于同步网络设备的定时分组的示例方法500的流程图。在一个实施例中,图1的网络设备100实现方法500。例如,在一个示例中,网络设备100的MAC处理器114实现方法500。为了便于解释,参考图1的网络设备100描述方法500。在其他实施例中,方法500由其他合适的网络设备实现。
在框502,在网络设备的MAC处理器处接收要由网络设备传输的定时分组。在一个实施例中,定时分组由图1的MAC处理器114接收。在一个示例中,图1的定时分组119由MAC处理器接收。在另一实施例中,由MAC处理器接收与图1的定时分组119不同的定时分组。在网络设备100作为普通时钟或边界时钟设备进行运行的实施例中,在框502处接收的定时分组是由主机处理器116生成的定时分组。在网络设备100作为透明时钟设备进行运行的实施例中,在框502处接收的定时分组是由MAC处理器从网络设备的网络端口或从耦合到网络设备的网络端口的PHY设备接收的定时分组。
在框504,由MAC处理器处理定时分组。在一个实施例中,由MAC处理器处理定时分组包括生成要由PHY设备使用的、用于将定时信息嵌入从MAC处理器提供给PHY设备的定时分组中的一个或多个参数的一个或多个指示符。在一个实施例中,一个或多个指示符使得PHY设备能够在定时分组从网络设备被传输时动态地高效地将定时信息嵌入定时分组中。在一个实施例中,一个或多个指示符至少包括i)指示定时分组是要由PHY设备向其中嵌入定时信息的分组类型的指示符,ii)定时分组中的字段的位置的指示符,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新的指示符。作为更具体的示例,在一个实施例中,一个或多个指示符包括要由PHY设备更新的定时分组中的定时字段的位置的指示符、定时分组中的这样的校正字段、定时分组中是否存在校验和尾部字段的指示符等。在其他实施例中,一个或多个指示符另外地或备选地包括相关信息的一个或多个其他指示符,以使得PHY设备能够在定时分组从网络设备被传输时动态地高效地将定时信息嵌入定时分组中。
在框506,将定时分组和一个或多个指示符从MAC处理器传送到PHY设备。在一个实施例中,MAC处理器通过将一个或多个参数包括在控制报头(例如,图3B的控制报头350)中并且在将定时分组传送到PHY设备之前将控制报头插入定时分组中来传送PHY设备中的一个或多个指示符。在一个实施例中,控制报头350在定时分组内的预定位置处被插入定时分组中。例如,在一个实施例中,控制报头替换定时分组的开始处的前导码。在另一实施例中,MAC处理器以其他合适的方式向PHY设备提供一个或多个指示符,诸如经由控制信号或由MAC处理器提供给PHY设备的一个或多个标签,其与由MAC处理器提供给PHY设备的定时分组分开。
在各种实施例中,从MAC处理器向PHY设备提供一个或多个指示符使得PHY设备能够快速且高效地将定时信息嵌入分组中,例如通过更新定时分组的定时字段的初始值,而不解析定时分组以确定定时分组中的校正字段的位置和/或确定定时分组中是否存在校验和尾部字段。因此,在至少一些实施例中,与其中PHY设备被配置为动态地执行一步时间戳而没有这样的指示符从MAC处理器被提供给PHY设备和/或没有初始定时信息由MAC处理器或主机处理器嵌入定时分组中的系统相比,从MAC处理器向PHY设备提供一个或多个指示符促进用减少的硬件实现PHY设备,这减少了功耗、成本等。
图6是示出根据一个实施例的用于将定时信息嵌入要由网络设备传输的定时分组中的示例方法600的流程图。在一个实施例中,图1的网络设备100实现方法600。例如,在一个示例中,网络设备100的PHY设备108(例如,PHY设备108-2)实现方法800。为了便于解释,参考图1的设备100描述方法600。在其他实施例中,方法600由其他合适的网络设备实现。
在框602,网络设备的PHY设备接收定时分组,该定时分组后续要由网络设备传输。在一个实施例中,定时分组在PHY设备处从网络设备的MAC处理器接收。在一个实施例中,定时分组包括由i)MAC处理器和ii)网络设备的主机处理器中的一者或两者提供的初始定时信息。
在框604,在PHY设备处接收要由PHY设备使用的、用于将定时信息嵌入定时分组中的一个或多个参数的一个或多个指示符。在一个实施例中,一个或多个指示符至少包括i)指示定时分组是要由PHY设备向其中嵌入定时信息的分组类型的指示符,ii)定时分组中的字段的位置的指示符,定时信息要由PHY设备在该位置处被嵌入定时分组中,以及iii)定时分组中的定时信息是否需要由PHY设备更新的指示符。在其他实施例中,一个或多个指示符另外地或备选地包括相关信息的一个或多个其他指示符,以使得PHY设备能够在定时分组从网络设备被传输时动态地高效地将定时信息嵌入定时分组中。在一个实施例中,由PHY设备从MAC处理器接收控制报头(例如,图3B的控制报头350),控制报头包括由MAC处理器提供给PHY设备的一个或多个指示符。在其他实施例中,一个或多个参数的一个或多个指示符由PHY设备以其他合适的方式接收,诸如经由控制信号或由MAC处理器提供给PHY设备的一个或多个标签,其与由MAC处理器提供给PHY设备的定时分组分开。
在框更新606,由PHY设备更新定时分组中的初始定时信息,以将最终定时信息嵌入定时分组中。例如,在框602处接收定时分组包括接收包括i)时间戳和ii)基于由网络设备的主机处理器维护的时钟而生成的校正字段值的定时分组,并且更新定时分组中的定时信息包括基于由PHY设备维护的时钟来更新定时分组中的初始校正字段值。在一个实施例中,由PHY设备基于在框604由PHY设备从MAC处理器接收的一个或多个指示符来更新定时信息。例如,在一个实施例中,PHY设备基于在框604处从MAC处理器接收的校正字段的位置的指示符来更新校正字段的初始值,并且不解析定时分组以确定定时分组中的校正字段的位置。作为另一示例,PHY设备基于由MAC处理器提供的指示符来确定定时分组中是否存在校验和尾部字段,并且如果定时分组中存在校验和尾部字段,则更新校验和尾部。
在框610,由PHY设备将定时分组转发给网络设备的一个或多个网络端口,以用于从网络设备到网络上的一个或多个其他设备的传输,以允许一个或多个其他网络设备与网络中的主时钟同步。
在各种实施例中,由PHY设备基于在PHY设备处从MAC处理器接收的一个或多个指示符来更新定时分组中的定时信息,使得PHY设备能够通过更新定时分组的定时字段的初始值来快速且高效地将定时信息嵌入分组中,而不解析定时分组以确定定时分组中的校正字段的位置和/或确定定时分组中是否存在校验和尾部字段。因此,在至少一些实施例中,与其中PHY设备被配置为动态地执行一步时间戳而没有这样的指示符从MAC处理器被提供给PHY设备和/或没有初始定时信息由MAC处理器或主机处理器嵌入定时分组中的系统相比,PHY设备可以用减少的硬件实现,这减少了功耗、成本等。
在一个实施例中,一种用于处理在网络设备中的用于同步网络设备的定时分组的方法,包括:在所述网络设备的媒体访问控制(MAC)处理器处接收要由所述网络设备传输的定时分组;由所述MAC处理器执行所述定时分组的初始处理,包括生成要由所述网络设备的PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;以及将i)所述定时分组和ii)所述一个或多个指示符从所述MAC处理器传送到所述PHY设备,以用于基于所述一个或多个指示符的对所述定时分组进一步处理以及对来自所述网络设备的所述定时分组进行后续传输。
在其他实施例中,所述方法包括以下特征中的一个或多个特征的任何合适的组合。
所述方法还包括由所述MAC处理器生成控制报头以包括针对所述定时分组生成的所述一个或多个指示符,以及在将所述定时分组传送到所述PHY设备之前,由所述MAC处理器将所述控制报头插入所述定时分组中。
所述方法还包括由所述MAC处理器生成PHY标签以被包括在所述控制报头中,由所述MAC处理器生成所述控制报头以将PHY标签包括在所述控制报头的扩展字段中,以及在将所述定时分组传送到所述PHY设备之前,在所述定时分组内的预定位置处插入所述控制报头。
在所述定时分组中的所述预定位置处插入所述控制报头包括:用所述控制报头替换所述定时分组的开始处的前导码。
生成所述PHY标签包括生成所述PHY标签以包括以下中的一项或多项:i)偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,ii)校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,以及iii)时间戳最低有效位(LSB)字段,其中所述时间戳LSB字段向所述PHY设备指示校正字段值的环绕式处理是否将由所述PHY设备说明。
接收所述定时分组包括接收以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)接收由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段。
要被嵌入所述定时分组中的所述定时信息指示以下中的一项:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
在另一实施例中,一种被配置为在网络中运行的网络设备包括:媒体访问控制(MAC)处理器,被配置为:接收要由所述网络设备传输的定时分组,生成要由所述网络设备的PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;以及将i)所述定时分组和ii)所述一个或多个指示符传送到所述PHY设备,以用于基于所述一个或多个指示符对所述定时分组进一步处理以及对来自所述网络设备的所述定时分组进行后续传输。
在其他实施例中,所述网络设备包括以下特征中的一个或多个特征的任何合适的组合。
所述MAC处理器还被配置为:生成控制报头以包括所述一个或多个指示符,以及在将所述定时分组传送到所述PHY设备之前,将所述控制报头插入所述定时分组中。
所述MAC处理器还被配置为:生成PHY标签以被包括在所述控制报头中,生成所述控制报头以将所述PHY标签包括在所述控制报头的扩展字段中,以及在将所述定时分组传送到所述PHY设备之前,在所述定时分组内的预定位置处插入所述控制报头。
所述MAC处理器被配置为用所述控制报头替换所述定时分组的开始处的前导码。
所述MAC处理器被配置为生成所述PHY标签以包括以下中的一项或多项:i)偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,ii)校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,以及iii)时间戳最低有效位(LSB)字段,其中所述时间戳LSB字段被设置为向所述PHY设备指示校正字段值的环绕式处理是否将由所述PHY设备说明。
所述定时分组是以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)接收由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段。
要被嵌入所述定时分组中的所述定时信息指示以下中的一项:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
在又一实施例中,一种被配置为在网络中运行的网络设备,包括媒体访问控制(MAC)处理器,耦合到物理层(PHY)设备,其中所述MAC处理器被配置为:接收要由所述网络设备传输的定时分组,生成要由所述网络设备的PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;以及将i)所述定时分组和ii)所述一个或多个指示符传送到所述PHY设备。所述PHY设备被配置为:接收i)来自所述MAC处理器的所述定时分组和ii)来自所述MAC处理器的所述一个或多个指示符;基于所述一个或多个指示符将定时信息嵌入所述定时分组中;以及将所述定时分组转发给所述网络设备的一个或多个网络端口以用于来自所述网络设备的所述定时分组的传输。
在其他实施例中,所述网络设备包括以下特征中的一个或多个特征的任何合适的组合。
所述定时分组是以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段。
要被嵌入所述定时分组中的所述定时信息指示以下中的一项:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
所述MAC处理器被配置为接收定时分组,所述定时分组包括i)时间戳,以及ii)基于由所述网络设备的主机处理器维护的时钟而生成的校正字段的值。
所述PHY设备被配置为至少通过基于由所述网络设备的所述PHY设备维护的时钟更新所述校正字段的所述值来将所述定时信息嵌入所述定时分组中。
所述MAC处理器被配置为:生成PHY标签以包括偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,生成控制报头以将所述PHY标签包括在所述控制报头的扩展字段中,以及在将所述定时分组传送到所述PHY设备之前,用所述控制报头替换所述定时分组的开始处的前导码。
所述PHY设备被配置为在由所述偏移指示符字段指示的所述偏移处更新所述校正字段,并且不解析所述定时分组以在所述定时分组内定位所述校正字段。
所述MAC处理器被配置为生成所述PHY标签以还包括校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新。
所述PHY设备被配置为基于所述校验和更新指示符字段确定所述定时分组是否需要校验和更新,以及响应于确定所述定时分组需要校验和更新,执行所述定时分组中的校验和尾部字段的增量更新。
所述MAC处理器被配置为生成所述PHY标签以还包括时间戳最低有效位(LSB)字段,其中所述时间戳LSP字段指示校正字段值的环绕式处理是否将由所述PHY设备说明。
所述PHY设备被配置为:基于所述时间戳LSB字段确定所述校正字段值的环绕式处理是否将由所述PHY设备说明,以及响应于确定所述校正字段值的所述环绕式处理将由所述PHY设备说明,更新所述校正字段以说明所述校正字段中的环绕式处理。
在另一实施例中,一种用于将定时信息嵌入要由网络设备传输的定时分组中的方法,包括:在所述网络设备的物理层(PHY)设备处接收要由所述网络设备传输的定时分组,所述定时分组包括由i)媒体访问控制(MAC)处理器和ii)所述网络设备的主机处理器中的一者或两者提供的初始定时信息;在所述PHY设备处从所述MAC处理器接收要由所述PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;由所述PHY设备基于所述一个或多个指示符更新所述定时分组中的所述初始定时信息以将最终定时信息嵌入所述定时分组中;以及由所述PHY设备将所述定时分组转发给所述网络设备的一个或多个网络端口以用于来自所述网络设备的所述定时分组的传输。
在其他实施例中,所述方法包括以下特征中的一个或多个特征的任何合适的组合。
接收所述一个或多个指示符包括:接收由所述MAC处理器插入所述定时分组中的控制报头,其中所述控制报头包括所述一个或多个指示符,以及
更新所述定时分组中的所述定时信息包括:基于包括在所述控制报头中的所述一个或多个指示符来更新所述定时信息,并且不由所述PHY设备将所述定时分组分类为定时分组。
接收所述定时分组包括接收包括以下项的定时分组:i)时间戳和ii)基于由所述网络设备的主机处理器维护的时钟而生成的校正字段值。
更新所述定时分组中的所述定时信息包括:基于由所述PHY设备维护的时钟来更新所述定时分组中的所述校正字段值。
接收所述定时分组包括接收以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)接收由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段。
更新所述定时分组中的所述初始定时信息以将最终定时信息嵌入所述定时分组中包括更新指示以下中的一项的初始定时信息:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
接收所述一个或多个指示符包括在所述定时分组内的预定位置处接收包括在控制报头中的PHY标签,以及所述方法还包括由所述PHY设备在所述PHY设备的所述定时分组内的所述预定位置处从所述控制报头中检索所述PHY标签。
检索所述PHY标签包括:从替换所述定时分组的开始处的前导码的所述控制报头中检索所述PHY标签。
所述PHY标签包括偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,以及
更新所述定时分组中的所述初始定时信息以嵌入所述最终定时信息包括:在由所述偏移指示符字段指示的所述偏移处更新所述校正字段,并且不由所述PHY设备解析所述定时分组以在所述定时分组内定位所述校正字段。
所述PHY还包括校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,
更新所述定时分组中的所述初始定时信息以嵌入所述最终定时信息包括:基于所述校验和更新指示符字段确定所述定时分组是否需要校验和更新,以及响应于确定所述定时分组需要校验和更新,执行所述定时分组中的校验和尾部字段的增量更新。
所述PHY还包括时间戳最低有效位(LSB)字段,其中所述时间戳LSP字段指示校正字段值的环绕式处理是否将由所述PHY设备说明。
更新所述定时分组中的所述初始定时信息以嵌入所述最终定时信息包括:基于所述时间戳LSB字段确定所述校正字段值的环绕式处理是否将由所述PHY设备说明,以及响应于确定所述校正字段值的所述环绕式处理将由所述PHY设备说明,更新所述校正字段以说明所述校正字段中的环绕式处理。
在另一实施例中,一种被配置为在网络中运行的网络设备,包括物理层(PHY)设备处理器,被配置为:接收要由所述网络设备传输的定时分组,所述定时分组包括由i)媒体访问控制(MAC)处理器和ii)所述网络设备的主机处理器中的一者或两者提供的初始定时信息;接收要由所述PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;基于所述一个或多个指示符更新所述定时分组中的所述初始定时信息以将最终定时信息嵌入所述定时分组中;以及将所述定时分组转发给所述网络设备的一个或多个网络端口以用于来自所述网络设备的所述定时分组的传输。
在其他实施例中,所述网络设备包括以下特征中的一个或多个特征的任何合适的组合。
所述PHY设备被配置为:接收包括i)时间戳和ii)基于由所述网络设备的主机处理器维护的时钟而生成的校正字段值的定时分组,以及基于由所述PHY设备维护的时钟来更新所述定时分组中的所述校正字段值。
所述PHY设备被配置为:接收以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)接收由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段。
所述PHY设备被配置为:至少通过更新指示以下中的一项的初始定时信息来更新所述定时分组中的所述初始定时信息以将最终定时信息嵌入所述定时分组中:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
所述PHY设备被配置为:从所述MAC处理器接收由所述MAC处理器插入所述定时分组中的控制报头,其中所述控制报头包括所述一个或多个指示符,以及基于所述控制报头中的所述一个或多个指示符来更新所述定时信息,并且不由所述PHY设备将所述定时分组分类为定时分组。
所述控制报头i)在所述定时分组内的预定位置处被插入所述定时分组中,并且ii)在所述控制报头的扩展字段中包括PHY标签,以及所述PHY设备被配置为在所述PHY设备的所述定时分组内的所述预定位置处从所述控制报头中检索所述PHY标签。
所述PHY设备被配置为从替换所述定时分组的开始处的前导码的所述控制报头中检索所述PHY标签。
所述PHY标签包括偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,以及所述PHY设备被配置为在由所述偏移指示符字段指示的所述偏移处更新所述校正字段,并且不解析所述定时分组以在所述定时分组内定位所述校正字段。
所述PHY标签还包括校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,以及所述PHY设备被配置为:基于所述校验和更新指示符字段确定所述定时分组是否需要校验和更新,以及响应于确定所述定时分组需要校验和更新,执行所述定时分组中的校验和尾部字段的增量更新。
所述PHY标签还包括时间戳最低有效位(LSB)字段,其中所述时间戳LSP字段指示校正字段值的环绕式处理是否将由所述PHY设备说明,以及所述PHY设备被配置为:基于所述时间戳LSB字段确定所述校正字段值的环绕式处理是否将由所述PHY设备说明,以及响应于确定所述校正字段值的所述环绕式处理将由所述PHY设备说明,更新所述校正字段以说明所述校正字段中的环绕式处理。
上述各种框、操作和技术中的至少一些是利用专用硬件适当实现的,诸如以下中的一种或多种:分立组件、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、执行固件指令的处理器、执行软件指令的处理器、或其任何组合。当利用执行软件或固件指令的处理器来实现时,软件或固件命令可以存储在任何合适的计算机可读存储器中,诸如磁盘、光盘或其他存储介质等。软件或固件指令可以包括机器可读指令,该机器可读指令在由一个或多个处理器执行时引起一个或多个处理器执行各种动作。
虽然已经参考特定示例描述了本发明,这些示例仅用于说明而非限制本发明,但在不脱离本发明的范围的情况下,可以对所公开的实施例进行改变、添加和/或删除。
Claims (37)
1.一种用于处理在网络设备中的用于同步网络设备的定时分组的方法,所述方法包括:
在所述网络设备的媒体访问控制(MAC)处理器处接收要由所述网络设备传输的定时分组;
由所述MAC处理器执行所述定时分组的初始处理,包括生成要由所述网络设备的PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;以及
将i)所述定时分组和ii)所述一个或多个指示符从所述MAC处理器传送到所述PHY设备,以用于基于所述一个或多个指示符对所述定时分组进一步处理以及对来自所述网络设备的所述定时分组进行后续传输。
2.根据权利要求1所述的方法,还包括:
由所述MAC处理器生成控制报头以包括针对所述定时分组生成的所述一个或多个指示符,以及
在将所述定时分组传送到所述PHY设备之前,由所述MAC处理器将所述控制报头插入所述定时分组中。
3.根据权利要求2所述的方法,还包括:
由所述MAC处理器生成PHY标签以被包括在所述控制报头中,
由所述MAC处理器生成所述控制报头以将PHY标签包括在所述控制报头的扩展字段中,以及
在将所述定时分组传送到所述PHY设备之前,在所述定时分组内的预定位置处插入所述控制报头。
4.根据权利要求3所述的方法,其中在所述定时分组中的所述预定位置处插入所述控制报头包括:用所述控制报头替换所述定时分组的开始处的前导码。
5.根据权利要求4所述的方法,其中生成所述PHY标签包括生成所述PHY标签以包括以下中的一项或多项:i)偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,ii)校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,以及iii)时间戳最低有效位(LSB)字段,其中所述时间戳LSB字段向所述PHY设备指示校正字段值的环绕式处理是否将由所述PHY设备说明。
6.根据权利要求1所述的方法,其中接收所述定时分组包括接收以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)接收由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段,并且其中要被嵌入所述定时分组中的所述定时信息指示以下中的一项:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
7.一种被配置为在网络中运行的网络设备,所述网络设备包括:
媒体访问控制(MAC)处理器,被配置为
接收要由所述网络设备传输的定时分组,
生成要由所述网络设备的PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;以及
将i)所述定时分组和ii)所述一个或多个指示符传送到所述PHY设备,以用于基于所述一个或多个指示符对所述定时分组进一步处理以及对来自所述网络设备的所述定时分组进行后续传输。
8.根据权利要求7所述的网络设备,其中所述MAC处理器还被配置为
生成控制报头以包括所述一个或多个指示符,以及
在将所述定时分组传送到所述PHY设备之前,将所述控制报头插入所述定时分组中。
9.根据权利要求8所述的网络设备,其中所述MAC处理器还被配置为
生成PHY标签以被包括在所述控制报头中,
生成所述控制报头以将所述PHY标签包括在所述控制报头的扩展字段中,以及
在将所述定时分组传送到所述PHY设备之前,在所述定时分组内的预定位置处插入所述控制报头。
10.根据权利要求9所述的网络设备,其中所述MAC处理器被配置为用所述控制报头替换所述定时分组的开始处的前导码。
11.根据权利要求8所述的网络设备,其中所述MAC处理器被配置为生成所述PHY标签以包括以下中的一项或多项:i)偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,ii)校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,以及iii)时间戳最低有效位(LSB)字段,其中所述时间戳LSB字段被设置为向所述PHY设备指示校正字段值的环绕式处理是否将由所述PHY设备说明。
12.根据权利要求7所述的网络设备,其中
所述定时分组是以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)接收由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段。
13.根据权利要求7所述的网络设备,其中要被嵌入所述定时分组中的所述定时信息指示以下中的一项:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
14.一种被配置为在网络中运行的网络设备,所述网络设备包括:
媒体访问控制(MAC)处理器,耦合到物理层(PHY)设备,其中所述MAC处理器被配置为
接收要由所述网络设备传输的定时分组,
生成要由所述网络设备的PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;以及
将i)所述定时分组和ii)所述一个或多个指示符传送到所述PHY设备;其中
所述PHY设备被配置为
接收i)来自所述MAC处理器的所述定时分组和ii)来自所述MAC处理器的所述一个或多个指示符;
基于所述一个或多个指示符将定时信息嵌入所述定时分组中;以及
将所述定时分组转发给所述网络设备的一个或多个网络端口以用于来自所述网络设备的所述定时分组的传输。
15.根据权利要求14所述的网络设备,其中
所述定时分组是以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段,以及
要被嵌入所述定时分组中的所述定时信息指示以下中的一项:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
16.根据权利要求14所述的网络设备,其中
所述MAC处理器被配置为接收定时分组,所述定时分组包括i)时间戳,以及ii)基于由所述网络设备的主机处理器维护的时钟而生成的校正字段的值,以及
所述PHY设备被配置为至少通过基于由所述网络设备的所述PHY设备维护的时钟更新所述校正字段的所述值来将所述定时信息嵌入所述定时分组中。
17.根据权利要求16所述的网络设备,其中
所述MAC处理器被配置为
生成PHY标签以包括偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,
生成控制报头以将所述PHY标签包括在所述控制报头的扩展字段中,以及
在将所述定时分组传送到所述PHY设备之前,用所述控制报头替换所述定时分组的开始处的前导码,以及
所述PHY设备被配置为在由所述偏移指示符字段指示的所述偏移处更新所述校正字段,并且不解析所述定时分组以在所述定时分组内定位所述校正字段。
18.根据权利要求17所述的网络设备,其中
所述MAC处理器被配置为生成所述PHY标签以还包括校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,以及
所述PHY设备被配置为
基于所述校验和更新指示符字段确定所述定时分组是否需要校验和更新,以及
响应于确定所述定时分组需要校验和更新,执行所述定时分组中的校验和尾部字段的增量更新。
19.根据权利要求17所述的网络设备,其中
所述MAC处理器被配置为生成所述PHY标签以还包括时间戳最低有效位(LSB)字段,其中所述时间戳LSP字段指示校正字段值的环绕式处理是否将由所述PHY设备说明,以及
所述PHY设备被配置为
基于所述时间戳LSB字段确定所述校正字段值的环绕式处理是否将由所述PHY设备说明,以及
响应于确定所述校正字段值的所述环绕式处理将由所述PHY设备说明,更新所述校正字段以说明所述校正字段中的环绕式处理。
20.一种用于将定时信息嵌入要由网络设备传输的定时分组中的方法,所述方法包括:
在所述网络设备的物理层(PHY)设备处接收要由所述网络设备传输的定时分组,所述定时分组包括由i)媒体访问控制(MAC)处理器和ii)所述网络设备的主机处理器中的一项或两项提供的初始定时信息;
在所述PHY设备处从所述MAC处理器接收要由所述PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;
由所述PHY设备基于所述一个或多个指示符更新所述定时分组中的所述初始定时信息以将最终定时信息嵌入所述定时分组中;以及
由所述PHY设备将所述定时分组转发给所述网络设备的一个或多个网络端口以用于来自所述网络设备的所述定时分组的传输。
21.根据权利要求20所述的方法,其中
接收所述一个或多个指示符包括:接收由所述MAC处理器插入所述定时分组中的控制报头,其中所述控制报头包括所述一个或多个指示符,以及
更新所述定时分组中的所述定时信息包括:基于包括在所述控制报头中的所述一个或多个指示符来更新所述定时信息,并且不由所述PHY设备将所述定时分组分类为定时分组。
22.根据权利要求20所述的方法,其中
接收所述定时分组包括接收包括以下项的定时分组:i)时间戳和ii)基于由所述网络设备的主机处理器维护的时钟而生成的校正字段值,以及
更新所述定时分组中的所述定时信息包括:基于由所述PHY设备维护的时钟来更新所述定时分组中的所述校正字段值。
23.根据权利要求20所述的方法,其中接收所述定时分组包括接收以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)接收由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段,以及
更新所述定时分组中的所述初始定时信息以将最终定时信息嵌入所述定时分组中包括更新指示以下中的一项的初始定时信息:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
24.根据权利要求20所述的方法,其中
接收所述一个或多个指示符包括在所述定时分组内的预定位置处接收包括在控制报头中的PHY标签,以及
所述方法还包括由所述PHY设备在所述PHY设备的所述定时分组内的所述预定位置处从所述控制报头中检索所述PHY标签。
25.根据权利要求24所述的方法,其中检索所述PHY标签包括:从替换所述定时分组的开始处的前导码的所述控制报头中检索所述PHY标签。
26.根据权利要求24所述的方法,其中
所述PHY标签包括偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,以及
更新所述定时分组中的所述初始定时信息以嵌入所述最终定时信息包括:在由所述偏移指示符字段指示的所述偏移处更新所述校正字段,并且不由所述PHY设备解析所述定时分组以在所述定时分组内定位所述校正字段。
27.根据权利要求26所述的方法,其中
所述PHY还包括校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,
更新所述定时分组中的所述初始定时信息以嵌入所述最终定时信息包括
基于所述校验和更新指示符字段确定所述定时分组是否需要校验和更新,以及
响应于确定所述定时分组需要校验和更新,执行所述定时分组中的校验和尾部字段的增量更新。
28.根据权利要求26所述的方法,其中
所述PHY还包括时间戳最低有效位(LSB)字段,其中所述时间戳LSP字段指示校正字段值的环绕式处理是否将由所述PHY设备说明,
更新所述定时分组中的所述初始定时信息以嵌入所述最终定时信息包括
基于所述时间戳LSB字段确定所述校正字段值的环绕式处理是否将由所述PHY设备说明,以及
响应于确定所述校正字段值的所述环绕式处理将由所述PHY设备说明,更新所述校正字段以说明所述校正字段中的环绕式处理。
29.一种被配置为在网络中运行的网络设备,所述网络设备包括:
物理层(PHY)设备处理器,被配置为
接收要由所述网络设备传输的定时分组,所述定时分组包括由i)媒体访问控制(MAC)处理器和ii)所述网络设备的主机处理器中的一项或两项提供的初始定时信息;
接收要由所述PHY设备使用的、用于将定时信息嵌入所述定时分组中的一个或多个参数的一个或多个指示符,所述一个或多个指示符至少包括i)指示所述定时分组是要由所述PHY设备向其中嵌入定时信息的分组类型的指示符,ii)所述定时分组中的字段的位置的指示符,所述定时信息要由所述PHY设备在所述位置处被嵌入所述定时分组中,以及iii)所述定时分组中的定时信息是否需要由所述PHY设备更新的指示符;
基于所述一个或多个指示符更新所述定时分组中的所述初始定时信息以将最终定时信息嵌入所述定时分组中;以及
将所述定时分组转发给所述网络设备的一个或多个网络端口以用于来自所述网络设备的所述定时分组的传输。
30.根据权利要求29所述的网络设备,其中所述PHY设备被配置为
接收包括i)时间戳和ii)基于由所述网络设备的主机处理器维护的时钟而生成的校正字段值的定时分组,以及
基于由所述PHY设备维护的时钟来更新所述定时分组中的所述校正字段值。
31.根据权利要求29所述的网络设备,其中所述PHY设备被配置为
接收以下中的一项:i)由所述网络设备的主机处理器生成的定时分组,或者ii)接收由所述网络设备先前接收的定时分组,由所述网络设备先前接收的所述定时分组包括用于指示所述网络设备中所述定时分组的驻留时间的校正字段,以及
至少通过更新指示以下中的一项的初始定时信息来更新所述定时分组中的所述初始定时信息以将最终定时信息嵌入所述定时分组中:i)与来自所述网络设备的所述定时分组的传输相对应的时间,或者ii)所述网络设备中所述定时分组的驻留时间。
32.根据权利要求29所述的网络设备,其中所述PHY设备被配置为
从所述MAC处理器接收由所述MAC处理器插入所述定时分组中的控制报头,其中所述控制报头包括所述一个或多个指示符,以及
基于所述控制报头中的所述一个或多个指示符来更新所述定时信息,并且不由所述PHY设备将所述定时分组分类为定时分组。
33.根据权利要求32所述的网络设备,其中
所述控制报头i)在所述定时分组内的预定位置处被插入所述定时分组中,并且ii)在所述控制报头的扩展字段中包括PHY标签,以及
所述PHY设备被配置为在所述PHY设备的所述定时分组内的所述预定位置处从所述控制报头中检索所述PHY标签。
34.根据权利要求33所述的网络设备,其中所述PHY设备被配置为从替换所述定时分组的开始处的前导码的所述控制报头中检索所述PHY标签。
35.根据权利要求34所述的方法,其中
所述PHY标签包括偏移指示符字段,所述偏移指示符字段被设置为指示所述定时分组中的校正字段相对于所述定时分组的定界符字段的偏移,以及
所述PHY设备被配置为在由所述偏移指示符字段指示的所述偏移处更新所述校正字段,并且不解析所述定时分组以在所述定时分组内定位所述校正字段。
36.根据权利要求35所述的方法,其中
所述PHY标签还包括校验和更新指示符字段,所述校验和更新指示符字段被设置为指示所述定时分组是否需要校验和更新,以及
所述PHY设备被配置为
基于所述校验和更新指示符字段确定所述定时分组是否需要校验和更新,以及
响应于确定所述定时分组需要校验和更新,执行所述定时分组中的校验和尾部字段的增量更新。
37.根据权利要求35所述的方法,其中
所述PHY标签还包括时间戳最低有效位(LSB)字段,其中所述时间戳LSP字段指示校正字段值的环绕式处理是否将由所述PHY设备说明,以及
所述PHY设备被配置为
基于所述时间戳LSB字段确定所述校正字段值的环绕式处理是否将由所述PHY设备说明,以及
响应于确定所述校正字段值的所述环绕式处理将由所述PHY设备说明,更新所述校正字段以说明所述校正字段中的环绕式处理。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202062993524P | 2020-03-23 | 2020-03-23 | |
US62/993,524 | 2020-03-23 | ||
PCT/US2021/023777 WO2021195147A1 (en) | 2020-03-23 | 2021-03-23 | One-step timestamping in network devices |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115606121A true CN115606121A (zh) | 2023-01-13 |
Family
ID=75478333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180034977.3A Pending CN115606121A (zh) | 2020-03-23 | 2021-03-23 | 网络设备中的一步时间戳 |
Country Status (4)
Country | Link |
---|---|
US (3) | US11575495B2 (zh) |
EP (1) | EP4128589A1 (zh) |
CN (1) | CN115606121A (zh) |
WO (1) | WO2021195147A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11483127B2 (en) | 2018-11-18 | 2022-10-25 | Mellanox Technologies, Ltd. | Clock synchronization |
US11283454B2 (en) | 2018-11-26 | 2022-03-22 | Mellanox Technologies, Ltd. | Synthesized clock synchronization between network devices |
US11543852B2 (en) | 2019-11-07 | 2023-01-03 | Mellanox Technologies, Ltd. | Multihost clock synchronization |
WO2021195147A1 (en) | 2020-03-23 | 2021-09-30 | Marvell Israel (M.I.S.L) Ltd. | One-step timestamping in network devices |
US11552871B2 (en) * | 2020-06-14 | 2023-01-10 | Mellanox Technologies, Ltd. | Receive-side timestamp accuracy |
US11606427B2 (en) | 2020-12-14 | 2023-03-14 | Mellanox Technologies, Ltd. | Software-controlled clock synchronization of network devices |
US11588609B2 (en) | 2021-01-14 | 2023-02-21 | Mellanox Technologies, Ltd. | Hardware clock with built-in accuracy check |
US11907754B2 (en) | 2021-12-14 | 2024-02-20 | Mellanox Technologies, Ltd. | System to trigger time-dependent action |
US11835999B2 (en) | 2022-01-18 | 2023-12-05 | Mellanox Technologies, Ltd. | Controller which adjusts clock frequency based on received symbol rate |
US11706014B1 (en) | 2022-01-20 | 2023-07-18 | Mellanox Technologies, Ltd. | Clock synchronization loop |
WO2023161883A1 (en) * | 2022-02-24 | 2023-08-31 | Marvell Israel (M.I.S.L) Ltd. | Dynamic one-step/two-step timestamping per packet in network devices |
US11924318B2 (en) | 2022-02-24 | 2024-03-05 | Marvell Israel (M.I.S.L) Ltd. | Timestamping for multiple synchronization domains in a network device |
US11917045B2 (en) | 2022-07-24 | 2024-02-27 | Mellanox Technologies, Ltd. | Scalable synchronization of network devices |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2001261848A1 (en) * | 2000-05-18 | 2001-11-26 | Brix Networks, Inc. | Method and system for transmit time stamp insertion in a hardware time stamp system for packetized data networks |
US8023976B2 (en) * | 2007-05-03 | 2011-09-20 | Samsung Electronics Co., Ltd. | Method and system for accurate clock synchronization for communication networks |
US8102787B2 (en) * | 2008-06-17 | 2012-01-24 | Samsung Electronics Co., Ltd. | MAC layer timestamping approach for emerging wireless sensor platform and communication architecture |
KR101133256B1 (ko) * | 2009-02-27 | 2012-04-09 | 한국과학기술원 | 시그니처 정보를 이용한 물리계층에서의 타임스탬프 처리장치 및 그 방법 |
GB0908883D0 (en) | 2009-05-22 | 2009-07-01 | Zarlink Semiconductor Inc | Multi input timing recovery over packet networks |
US9392565B2 (en) | 2010-03-05 | 2016-07-12 | Samsung Electronics Co., Ltd. | Method and system for accurate clock synchronization through interaction between communication layers and sub-layers for communication systems |
FR2967535B1 (fr) | 2010-11-15 | 2012-11-02 | Alcatel Lucent | Procede de synchronisation d'horloges maitre et esclave d'un reseau a commutation de paquets et a liaisons agregees entre noeuds, et dispositifs de synchronisation associes |
US8948037B1 (en) | 2011-07-01 | 2015-02-03 | Marvell Israel (M.I.S.L) Ltd. | Checksum trailer in timing protocols |
CN104247309B (zh) | 2012-02-09 | 2017-11-10 | 马维尔以色列(M.I.S.L.)有限公司 | 使用多个网络路径的时钟同步 |
US9806835B2 (en) | 2012-02-09 | 2017-10-31 | Marvell International Ltd. | Clock synchronization using multiple network paths |
US9407733B1 (en) | 2012-11-09 | 2016-08-02 | Marvell Israel (M.I.S.L) Ltd. | Time correction using extension fields |
US10148796B2 (en) | 2015-10-20 | 2018-12-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Checksum friendly timestamp update |
US11689440B2 (en) | 2019-02-06 | 2023-06-27 | Marvell Israel (M.I.S.L) Ltd. | Method and apparatus for transmit time timestamping |
WO2021195147A1 (en) | 2020-03-23 | 2021-09-30 | Marvell Israel (M.I.S.L) Ltd. | One-step timestamping in network devices |
-
2021
- 2021-03-23 WO PCT/US2021/023777 patent/WO2021195147A1/en unknown
- 2021-03-23 CN CN202180034977.3A patent/CN115606121A/zh active Pending
- 2021-03-23 EP EP21718447.2A patent/EP4128589A1/en active Pending
- 2021-03-23 US US17/210,347 patent/US11575495B2/en active Active
-
2023
- 2023-02-02 US US18/105,156 patent/US11818241B2/en active Active
- 2023-11-13 US US18/507,951 patent/US20240089075A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20210297230A1 (en) | 2021-09-23 |
WO2021195147A1 (en) | 2021-09-30 |
US11818241B2 (en) | 2023-11-14 |
US20240089075A1 (en) | 2024-03-14 |
US20230188313A1 (en) | 2023-06-15 |
EP4128589A1 (en) | 2023-02-08 |
US11575495B2 (en) | 2023-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115606121A (zh) | 网络设备中的一步时间戳 | |
US9571376B2 (en) | Timestamp predictor for packets over a synchronous protocol | |
US8971352B2 (en) | High accuracy 1588 timestamping over high speed multi lane distribution physical code sublayers | |
US20190089615A1 (en) | Indirect packet classification timestamping system and method | |
US20110305307A1 (en) | Network node, communication system, and method for transmitting clock packet through tunnel | |
CN101459691A (zh) | 一种实现ieee1588协议中边界时钟的方法和系统 | |
WO2019036943A1 (zh) | 一种报文处理的方法和网络设备 | |
CN103138887A (zh) | 一种1588事件报文的处理方法及系统 | |
EP2751941B1 (en) | A system and a method for identifying a point in time of receipt of a data packet | |
WO2017177751A1 (zh) | 时间同步方法和装置 | |
US20220360350A1 (en) | Method and apparatus for acquiring timestamp of data stream, storage medium, and electronic apparatus | |
WO2014044487A1 (en) | Synchronization method and electronic apparatus | |
WO2018166223A1 (zh) | 一种在otn设备间实现1588时间同步的系统及方法 | |
US20230269161A1 (en) | Dynamic one-step/two-step timestamping per packet in network devices | |
US20230269018A1 (en) | Dynamic one-step/two-step timestamping per packet in network devices | |
CN114221733B (zh) | 一种时间戳同步的误差补偿方法 | |
WO2023161883A1 (en) | Dynamic one-step/two-step timestamping per packet in network devices | |
US8984092B2 (en) | Method for transmitting telegrams in an automation system | |
CN109995453B (zh) | 一种信息处理方法、装置、设备及计算机可读存储介质 | |
CN109150350B (zh) | 设备延时补偿方法、系统及存储介质 | |
CN113708912B (zh) | 一种时钟同步方法及其系统 | |
US20230269015A1 (en) | Timestamping over media independent interfaces | |
EP3288197B1 (en) | System and method of synchronizing clocks in a computer network | |
US11888587B2 (en) | Tolerant PCS for accurate timestamping in disaggregated network elements and synchronization method | |
Oh et al. | The Time Synchronization of CAN-FD and Ethernet for Zonal E/E Architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |