[发明专利]在多个MAC中实现1588UDP封装包的校验和更新的方法及系统无效
申请号: | 201110349104.X | 申请日: | 2011-11-08 |
公开(公告)号: | CN102447552A | 公开(公告)日: | 2012-05-09 |
发明(设计)人: | 廖继平;杨崇朋 | 申请(专利权)人: | 盛科网络(苏州)有限公司 |
主分类号: | H04L1/24 | 分类号: | H04L1/24;H04L1/00 |
代理公司: | 苏州威世朋知识产权代理事务所(普通合伙) 32235 | 代理人: | 杨林洁;陆敏勇 |
地址: | 215021 江苏省苏州市苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | mac 实现 1588 udp 封装 校验 更新 方法 系统 | ||
技术领域
本发明涉及网络通讯技术领域,尤其涉及一种在多个MAC中实现1588UDP封装包的校验和更新的方法及系统。
背景技术
为了解决以太网定时同步能力不足以及测量和控制应用中分布网络定时同步的需要,IEEE 1588标准定义了一个网络测量和控制系统的精密时间协议,即PTP协议,在不增加额外硬件投入的情况下,利用网络的通信链路实现时钟同步,可达到微秒级的同步精度。在以太网中实现PTP时,每个PTP报文封装时会加上MAC(Media Access Control, 媒体访问控制)封装包头,IP(Internet Protocol, 网络互连协议)封装包头,UDP(User Datagram Protocol, 用户数据包协议)封装包头,如图1所示。具体地,MAC封装包头中包括MAC目的地址,MAC源地址及类型,IP封装包头中包括IP头长度,服务类型,IP数据长度,IP目的地址等。UDP封装包头中包括源端口,目的端口,UDP长度以及UDP 校验和。对于16比特UDP 校验和计算会包括UDP 校验和域后面的所有数据负载。由于PTP报文通过MAC端发送时会打上新的时间戳或更改时间修正域的值,这就需要重新计算新的16比特UDP 校验和。但是对于不同PTP报文打时间戳或更改时间修正的位置并不固定,所以这里涉及到如何去实现UDP 校验和更新的问题。
目前采用的一种UDP 校验和更新计算方法是在MAC中放置一块大的存储器,将进MAC端的报文数据逐渐累加计算16比特UDP 校验和的值,等收到该报文的最后一个字节之后就得到最终新的16比特UDP 校验和的值。此时再将该数据报文通过MAC发送出去。
但是,该方案在MAC中放置一块大的存储器会耗费芯片相当多的资源,对于以太网报文最大可能要支持到9600字节,这对于芯片设计来说是不大现实的。而且这对于通常有多个MAC(如现在主流的都有24个、48个或以上)的以太网交换芯片来说,芯片的尺寸会变得相当大,这直接关系到芯片的成本。
目前采用的另一种UDP 校验和更新计算方法是根据原16比特UDP 校验和的值以及报文中变化后的数据与原有数据的差值,通过增量计算方法得到新的16比特UDP 校验和。报文进MAC端时要同时给出16比特原UDP 校验和的值和报文被修改之前原64比特时间戳值或64比特时间域修正值。在MAC端,用寄存器或存储器去记录这16比特原UDP 校验和的值和64比特被修改前的原数据值,当MAC发送UDP 校验和时,从寄存器或存储器中取得这些原有数据值,并根据得到的当前时间戳,计算出新的16比特UDP 校验和的值。
这种方案虽然改进了第一种方案中MAC要放置一块能存储整个报文的存储器的缺点,但是它仍然要用寄存器或存储器记录被修改前的原64比特时间戳值或64比特时间修正域值。对于单个MAC来说,这种实现方案是可以接受的,但是通常一个以太网交换芯片会包含多个MAC,所以这也会带来芯片成本的上升。
因此,有必要提供一种在多个MAC中实现1588UDP封装包的校验和更新的方法及系统以克服上述问题。
发明内容
本发明的目的在于提供一种在多个MAC中实现1588UDP封装包的校验和更新的方法。
本发明的另一目的在于提供一种在多个MAC中实现1588UDP封装包的校验和更新的系统,该系统应用于所述在多个MAC中实现1588UDP封装包的校验和更新的方法。
相应地,本发明的一种在多个MAC中实现1588UDP封装包的校验和更新的方法,包括以下步骤:
S10,报文出口处理模块读取报文数据,进行报文头编辑及报文数据修改,将被修改的64比特时间戳或时间修正域值用0代替,经计算得到原16比特UDP校验和的值;
S20,通过报文时间标识点从PTP引擎得到当前64比特时间戳,并结合所述原16比特UDP校验和的值采用增量计算方式得到新的16比特UDP校验和的值;
S30,MAC发送报文到被修改数据位置时,将新的16位校验和的值以及64比特时间戳替换原有数据。
作为本发明的进一步改进,在S10前还包括接收MAC端报文及存储报文数据的步骤。
作为本发明的进一步改进,S10中进行报文头编辑及报文数据修改时,能够得到PTP报文需要修改的信息,确定需要替换时间戳或修改时间修正域以及报文修改的位置。
作为本发明的进一步改进,所述报文时间标识点为以太网帧起始分界符后第1比特第1位的前边沿。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于盛科网络(苏州)有限公司,未经盛科网络(苏州)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110349104.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种直流供电的LED灯泡
- 下一篇:灯管支架