CN112199100A - 一种微码的升级方法及装置 - Google Patents
一种微码的升级方法及装置 Download PDFInfo
- Publication number
- CN112199100A CN112199100A CN201910611232.3A CN201910611232A CN112199100A CN 112199100 A CN112199100 A CN 112199100A CN 201910611232 A CN201910611232 A CN 201910611232A CN 112199100 A CN112199100 A CN 112199100A
- Authority
- CN
- China
- Prior art keywords
- forwarding table
- table entry
- line card
- forwarding
- chip
- 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
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 10
- 238000013459 approach Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本文公开了一种微码的升级方法及装置,包括:线卡转发芯片接收来自线卡控制芯片的微码版本升级信息;在备指令空间加载微码版本升级信息;从主指令空间切换至备指令空间;其中,主指令空间和备指令空间是线卡转发芯片对自身中用于加载微码版本信息的指令空间预先进行划分得到的。本申请能够在备指令空间中加载微码版本升级信息,在主指令空间进行业务转发,因此实现了微码版本升级信息加载和正常业务转发的同步进行,从而提高了业务的转发效率。
Description
技术领域
本发明实施例涉及计算机技术领域,尤指一种微码的升级方法及装置。
背景技术
线卡微码的升级包括两方面,一方面是微码版本的升级,另一方面是微 码版本对应的转发表项的重新计算和下发。这两方面的处理都涉及线卡转发 芯片和线卡控制芯片。
相关技术中,在进行微码版本的升级时,线卡控制芯片获取微码版本升 级信息,然后将微码版本升级信息发送给线卡转发芯片,由线卡转发芯片在 自身的指令空间中进行加载。
然而,这种方法是将原有的微码版本信息删除,然后加载微码版本升级 信息,由于信息的重新加载需要时间,因此会使得业务转发中断。
发明内容
本发明实施例提供了一种微码的升级方法,能够避免因加载微码版本升 级信息而引起的业务转发中断,提高业务的转发效率。
本发明实施例提供了一种微码的升级方法,包括:
线卡转发芯片接收来自线卡控制芯片的微码版本升级信息;
所述线卡转发芯片在备指令空间加载所述微码版本升级信息;
所述线卡转发芯片从主指令空间切换至所述备指令空间;其中,所述主 指令空间和所述备指令空间是所述线卡转发芯片对自身中用于加载微码版本 信息的指令空间预先进行划分得到的。
本发明实施例提供了一种微码的升级方法,包括:
线卡控制芯片获取微码版本升级信息;
所述线卡控制芯片将所述微码版本升级信息发送给线卡转发芯片,以使 所述线卡转发芯片在备指令空间中加载所述微码版本升级信息,并从主指令 空间切换至所述备指令空间;其中,所述主指令空间和所述备指令空间是所 述线卡转发芯片对自身中用于加载微码版本信息的指令空间预先进行划分得 到的。
本发明实施例还提供了一种一种线卡,包括:
线卡控制芯片以及线卡转发芯片;
其中,所述线卡控制芯片用于获取微码版本升级信息,并将所述微码版 本升级信息发送给线卡转发芯片;
所述线卡转发芯片用于接收来自线卡控制芯片的微码版本升级信息;在 备指令空间加载所述微码版本升级信息;从主指令空间切换至所述备指令空 间;其中,所述主指令空间和所述备指令空间是所述线卡转发芯片对自身中 用于加载微码版本信息的指令空间预先进行划分得到的。
由于微码版本升级信息在备指令空间中进行加载,主指令空间中的微码 版本可以正常进行业务转发,因此避免了因加载微码版本升级信息而引起的 业务转发中断,提高了业务的转发效率。
本发明实施例的其它特征和优点将在随后的说明书中阐述,并且,部分 地从说明书中变得显而易见,或者通过实施本发明实施例而了解。本发明实 施例的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出 的结构来实现和获得。
附图说明
附图用来提供对本发明实施例技术方案的进一步理解,并且构成说明书 的一部分,与本申请的实施例一起用于解释本发明实施例的技术方案,并不 构成对本发明实施例技术方案的限制。
图1为本发明实施例提供的一种微码的升级方法的流程示意图;
图2为本发明实施例提供的另一种微码的升级方法的流程示意图;
图3为本发明实施例提供的一种线卡转发芯片的结构示意图;
图4为本发明实施例提供的一种线卡控制芯片的结构示意图;
图5为本发明实施例提供的一种线卡的结构示意图;
图6为本发明实施例提供的一种线卡转发芯片中用于存储转发表项的存 储空间的结构示意图;
图7为本发明实施例提供的另一种线卡转发芯片中用于存储转发表项的 存储空间的结构示意图;
图8为本发明实施例提供的又一种线卡转发芯片中用于存储转发表项的 存储空间的结构示意图;
图9为本发明实施例提供的又一种线卡转发芯片中用于存储转发表项的 存储空间的结构示意图;
图10为本发明实施例提供的一种以预留字段进行表项兼容的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下文中将结 合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下, 本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机 系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下, 可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例提供一种微码的升级方法,如图1所示,包括:
步骤101、线卡转发芯片接收来自线卡控制芯片的微码版本升级信息。
步骤102、线卡转发芯片在备指令空间加载微码版本升级信息。
步骤103、线卡转发芯片从主指令空间切换至备指令空间。
其中,主指令空间和备指令空间是线卡转发芯片对自身中用于加载微码 版本信息的指令空间预先进行划分得到的。
在一种示例性实例中,在切换指令空间时会有业务瞬断,但中断时间相 较于重新加载微码版本升级信息所需的时间非常短。
在一种示例性实例中,线卡转发芯片将自身中用于加载微码版本信息的 指令空间进行对半划分,得到空间大小相同的主指令空间和备指令空间。
在一种示例性实例中,线卡转发芯片接收来自线卡控制芯片的微码版本 升级信息之后,还包括:
首先、线卡转发芯片接收来自线卡控制芯片的目标转发表项。
其中,目标转发表项是表项内容与已有转发表项不同的计算得到的转发 表项。
其次、线卡转发芯片存储目标转发表项。
在一种示例性实例中,相关技术往往是由线卡控制芯片重新计算所有转 发表项,然后将计算得到的所有转发表项下发给线卡转发芯片,由线卡转发 芯片进行全部刷新(即由重新计算得到的转发表项替换所有已有转发表项)。 然而大多数情况下,只有个别转发表项发生了改变,因此全部重新刷新转表 项会造成资源的浪费,且使得刷新过程中业务中断。相比之下,本发明实施 例提供的微码的升级方法,只保存表项内容发生了变化的转发表项,然后当 微码版本信息加载完成后,可以只刷新保存的转发表项,而不是刷新所有的转发表项,因此极大程度地缩短了转发表项的刷新时间。
在一种示例性实例中,由线卡控制芯片重新计算的转发表项和已有转发 对象是一一对应的。
在一种示例性实例中,由于线卡转发芯片接收来自线卡控制芯片的内容 发生变化的目标转发表项并予以存储,而并未对目标转发表项对应已有转发 表项进行删除,从而使得在切换至升级的微码版本前可以进行业务转发,在 切换至升级的微码版本后也可以进行进行业务转发。
在一种示例性实例中,线卡转发芯片接收来自线卡控制芯片的微码版本 升级信息之后,还包括:
首先、线卡转发芯片接收来自线卡控制芯片的经过兼容处理的转发表项 和无法被兼容的转发表项。
其中,经过兼容处理的转发表项是当计算得到的转发表项的表项内容与 已有转发表项不同,由已有转发表项经过兼容性处理后得到的能够兼容计算 得到的转发表项的转发表项,无法被兼容的转发表项是表项内容与已有转发 表项不同,且无法由已有转发表项进行兼容性处理后兼容的计算得到的转发 表项。
在一种示例性实例中,可以用第一标识信息标识经过兼容处理的转发表 项,第二标识信息标识无法被兼容的转发表项,从而让线卡转发芯片能够知 晓哪些是需要做覆盖处理的经过兼容处理的转发表项,哪些是需要做存储处 理的无法被兼容的转发表项,其中,第一标识信息用于标识能够兼容对应的 已有转发表项的转发表项,第二标识信息用于标识无法兼容对应的已有转发 表项的转发表项。
然后、线卡转发芯片在用于存储已有转发表项的第一转发表项存储空间 中以经过兼容处理的转发表项覆盖对应的已有转发表项。
最后、转发芯片在用于存储与已有转发表项无法兼容的转发表项的第二 转发表项存储空间中存储无法被兼容的转发表项。
其中,第一转发表项存储空间和第二转发表项存储空间是转发芯片将自 身中用于存储转发表项的存储空间按照预设空间比例进行划分得到的。
在一种示例性实例中,预设空间比例包括:预设空间比例包括:第一转 发表项存储空间与第二转发表项存储空间的空间比例为9:1。
本发明实施例提供的微码的升级方法,由于微码版本升级信息在线卡转 发单元的备指令空间中进行加载,主指令空间中的微码版本可以正常进行业 务转发,因此避免了因加载微码版本升级信息而引起的业务转发中断,提高 了业务的转发效率。
本发明实施例提供一种微码的升级方法,如图2所示,包括:
步骤201、线卡控制芯片获取微码版本升级信息。
步骤202、线卡控制芯片将微码版本升级信息发送给线卡转发芯片,以使 线卡转发芯片在备指令空间中加载微码版本升级信息,并从主指令空间切换 至备指令空间。
其中,主指令空间和备指令空间是线卡转发芯片对自身中用于加载微码 版本信息的指令空间预先进行划分得到的。
在一种示例性实例中,线卡控制芯片获取微码升级信息之后,还包括:
首先、线卡控制芯片获取业务配置数据,并根据业务配置数据计算转发 表项。
在一种示例性实例中,线卡控制芯片获取微码升级信息后一方面要将获 得的微码升级信息发送给线卡转发芯片,一方面要重新获取业务配置数据, 并根据业务配置数据重新计算转发表项。
然后、线卡控制芯片获取计算得到的转发表项中表项内容与对应的已有 转发表项不同的若干个目标转发表项。
在一种示例性实例中,当所有计算得到的转发表项中存在内容与对应的 已有转发表项相同的转发表项,线卡控制芯片获取计算得到的转发表项中内 容与对应的已有转发表项不同的若干个目标转发表项。
在一种示例性实例中,当所有计算得到的转发表项中不存在内容与对应 的已有转发表项相同的转发表项(即所有已有转发表项的内容都发生了变化), 线卡控制芯片会向线卡转发芯片发送所有计算得到的转发表项以使线卡转发 芯片进行转发表项的全部刷新。
最后、线卡控制芯片将目标转发表项发送给线卡转发芯片。
在一种示例性实例中,线卡控制芯片获取微码升级信息之后,还包括:
首先、线卡控制芯片获取业务配置数据,并根据业务配置数据计算转发 表项;线卡控制芯片获取计算得到的转发表项中内容与对应的已有转发表项 不同的若干个目标转发表项。
其次、线卡控制芯片从若干个目标转发表项中获取能够由经过兼容性处 理的对应的已有转发表项兼容的待兼容处理转发表项,以及无法被兼容的转 发表项。
在一种示例性实例中,待兼容处理转发表项是目标转发表项中能够由对 应的已有转表项经过兼容性处理后对其(指待兼容处理转发表项)进行兼容 的转发表项。
在一种示例性实例中,无法被兼容的转发表项是指取无法由已有表项进 行兼容性处理以得到能够兼容该转发表项的转发表项。
然后、线卡控制芯片根据待兼容处理转发表项对待兼容处理转发表项对 应的已有转发表项进行兼容性处理,得到经过兼容处理的转发表项。
在一种示例性实例中,获得的经过兼容处理的转发表项由于是根据待兼 容处理转发表项对待兼容处理转发表项对应的已有转发表项进行兼容性处理 得到的,因此获得的经过兼容处理的转发表项既能够兼容待兼容处理转发表 项,又能够兼容待兼容处理转发表项对应的已有转发表项。
最后、线卡控制芯片将经过兼容处理的转发表项和无法被兼容的转发表 项发送给线卡转发芯片。
在一种示例性实例中,线卡控制芯片根据待兼容处理转发表项对待兼容 处理转发表项对应的已有转发表项进行兼容性处理,包括:
线卡控制芯片通过预留字段的方式根据待兼容处理转发表项对待兼容处 理转发表项对应的已有转发表项进行兼容性处理。
或者,线卡控制芯片通过除预留字段以外的其他兼容编码的方式根据待 兼容处理转发表项对待兼容处理转发表项对应的已转发有表项进行兼容性处 理。
在一种示例性实例中,线卡控制芯片通过预留字段的方式根据待兼容处 理转发表项对待兼容处理转发表项对应的已有转发表项进行兼容性处理,包 括:
首先、线卡控制芯片获取待兼容处理转发表项和待兼容处理转发表项对 应的已有转发表项每一行之间的不同字段。
然后、线卡控制芯片在待兼容处理转发表项对应的已有转发表项的每一 行字段后面增加预留字段。
最后、线卡控制芯片用获得的每一行之间的的不同字段填充在对应行的 预留字段中。
在一种示例性实例中,除预留字段以外的其他兼容编码的方式包括:类 型长度值(Type Length Value,TLV)编码、编解码框架Google Protobuf、直 译式脚本语言对象标记(JavaScript Object Notation,JSON)、可扩展标记语 言(Extensible Markup Language,XML)。
本发明实施例提供的微码的升级方法,由于微码版本升级信息在线卡转 发单元的备指令空间中进行加载,主指令空间中的微码版本可以正常进行业 务转发,因此避免了因加载微码版本升级信息而引起的业务转发中断,提高 了业务的转发效率。
本发明实施例还提供一种线卡转发芯片,如图3所示,该线卡转发芯片3 包括:
接收模块31,用于接收来自线卡控制芯片的微码版本升级信息。
第一处理模块32,用于将微码版本升级信息在备指令空间中进行加载。
第一处理模块32,还用于从主指令空间切换至备指令空间;其中,主指 令空间和备指令空间是线卡转发芯片对自身中用于加载微码版本信息的指令 空间预先进行划分得到的。
在一种示例性实例中,接收模块31,还用于接收来自线卡控制芯片的目 标转发表项;其中,目标转发表项是表项内容与已有转发表项不同的计算得 到的转发表项。
第一处理模块32,还用于存储目标转发表项。
在一种示例性实例中,接收模块31,还用于接收来自线卡控制芯片的经 过兼容处理的转发表项和无法被兼容的转发表项;其中,经过兼容处理的转 发表项是当计算得到的转发表项的表项内容与已有转发表项不同,由已有转 发表项经过兼容性处理后得到的能够兼容计算得到的转发表项的转发表项, 无法被兼容的转发表项是表项内容与已有转发表项不同,且无法由已有转发 表项进行兼容性处理后兼容的计算得到的转发表项。
第一处理模块32,还用于在用于存储已有转发表项的第一转发表项存储 空间中以经过兼容处理的转发表项覆盖对应的已有转发表项;在用于存储与 已有转发表项无法兼容的转发表项的第二转发表项存储空间中存储无法被兼 容的转发表项;其中,第一转发表项存储空间和第二转发表项存储空间是转 发芯片将自身中用于存储转发表项的存储空间按照预设空间比例进行划分得 到的。
在一种示例性实例中,预设空间比例包括:预设空间比例包括:第一转 发表项存储空间与第二转发表项存储空间的空间比例为9:1。
本发明实施例提供的线卡转发芯片,由于微码版本升级信息在线卡转发 单元的备指令空间中进行加载,主指令空间中的微码版本可以正常进行业务 转发,因此避免了因加载微码版本升级信息而引起的业务转发中断,提高了 业务的转发效率。
在实际应用中,所述接收模块31和第一处理模块32均位于线卡转发芯 片中的中央处理器(Central Processing Unit,CPU)、微处理器(Micro Processor Unit,MPU)、数字信号处理器(Digital Signal Processor,DSP)或现场可编 程门阵列(FieldProgrammable Gate Array,FPGA)等实现。
本发明实施例还提供一种线卡控制芯片,如图4所示,该线卡控制芯片4 包括:
第二处理模块41,用于获取微码版本升级信息;
发送模块41,用于将微码版本升级信息发送给线卡转发芯片,以使线卡 转发芯片在备指令空间中加载微码版本升级信息,并从主指令空间切换至备 指令空间;其中,主指令空间和备指令空间是线卡转发芯片对自身中用于加 载微码版本信息的指令空间预先进行划分得到的。
在一种示例性实例中,第二处理模块41,还用于获取业务配置数据,并 根据业务配置数据计算转发表项;获取计算得到的转发表项中表项内容与对 应的已有转发表项不同的若干个目标转发表项。
发送模块41,还用于将目标转发表项发送给线卡转发芯片。
在一种示例性实例中,第二处理模块41,还用于获取业务配置数据,并 根据业务配置数据计算转发表项;获取计算得到的转发表项中内容与对应的 已有转发表项不同的若干个目标转发表项;从若干个目标转发表项中获取能 够由经过兼容性处理的对应的已有转发表项兼容的待兼容处理转发表项,以 及无法被兼容的转发表项;根据待兼容处理转发表项对待兼容处理转发表项 对应的已有转发表项进行兼容性处理,得到经过兼容处理的转发表项。
发送模块41,还用于将经过兼容处理的转发表项和无法被兼容的转发表 项发送给线卡转发芯片。
在一种示例性实例中,第二处理模块41具体用于通过预留字段的方式根 据待兼容处理转发表项对待兼容处理转发表项对应的已有转发表项进行兼容 性处理。
在一种示例性实例中,第二处理模块41具体用于通过除预留字段以外的 其他兼容编码的方式根据待兼容处理转发表项对待兼容处理转发表项对应的 已有转发表项进行兼容性处理。
在一种示例性实例中,第二处理模块41具体用于:
获取待兼容处理转发表项和待兼容处理转发表项对应的已有转发表项每 一行之间的不同字段。
在待兼容处理转发表项对应的已有转发表项的每一行字段后面增加预留 字段。
用获得的每一行之间的的不同字段填充在对应行的预留字段中。
在一种示例性实例中,除预留字段以外的其他兼容编码的方式包括: TLV编码、Google Protobuf、JSON和XML。
本发明实施例提供的线卡控制芯片,由于微码版本升级信息在线卡转发 单元的备指令空间中进行加载,主指令空间中的微码版本可以正常进行业务 转发,因此避免了因加载微码版本升级信息而引起的业务转发中断,提高了 业务的转发效率。
在实际应用中,所述第二处理模块41和发送模块42均位于线卡控制芯 片中的CPU、MPU、DSP或FPGA等实现。
本发明实施例还提供一种线卡,如图5所示,包括:线卡控制芯片和线 卡转发芯片。其中,线卡控制芯片和线卡转发芯片可以独立复位,也即线卡 控制芯片复位不会影响线卡转发芯片正常转发业务报文。线卡控制芯片负责 根据主控板下发的业务配置数据生成转发表项下发给线卡转发芯片,线卡转 发芯片根据转发表项进行业务报文转发。具体过程如下:
首先、主控板上传微码版本升级信息到自身的版本库;主控板向线卡控 制芯片发送升级复位命令。
其次、线卡控制芯片接收到升级复位命令后,进行当前业务配置数据的 备份;线卡控制芯片触发复位,重新上电后向主控板获取微码版本升级信息 并发送给线卡转发芯片运行;线卡控制芯片从备份中获取业务配置数据,重 新计算转发表项。
在一种示例性实例中,线卡控制芯片通过版本号标识转发表项的具体情 况,以使线卡转发芯片能够根据版本号的不同确定该如何处理转发表项。例 如,线卡转发芯片通过大版本号的不同标识确定微码版本无法兼容,加载升 级的微码版本需要刷新全部转发表项;通过中版本号的不同标识确定转发表 项无法兼容,在预留的转发表项存储空间(对应上述实施例中的第二转发表 项存储空间)存储转发表项;通过小版本号的不同标识确定转发表项能够兼 容,重新计算的转发表项数据可以覆盖当前转发表项数据。
在一种示例性实例中,假设未升级时用于存储转发表项的存储空间的结 构如图6所示,已有转发表项存储在第一转发表项存储空间中,此时第二转 发表项存储空间为空。当进行第一次微码升级,假设重新计算的转发表项C、 转发表项E、和转发表项F发生了变化,其中重新计算的转发表项C(属于上 述实施例中的待兼容处理转发表项)能够由已有转发表项C(版本号为V1.1.1) 经过兼容性处理得到兼容的转发表项C(版本号为V1.1.2)(属于上述实施 例中的经过兼容处理的转发表项),重新计算的转发表项E(属于上述实施例中的待兼容处理转发表项)能够由已有转发表项E(版本号为V1.1.1)经过 兼容性处理得到兼容的转发表项E(版本号为V1.1.2)(属于上述实施例中 的经过兼容处理的转发表项),重新计算的转发表项F(版本号为V1.2.1) 无法被兼容(属于上述实施例中的无法被兼容的转发表项),因此线卡转发 芯片在第一转发表项存储空间中将转发表项C(版本号为V1.1.2)覆盖已有 转发表项C(版本号为V1.1.1),将转发表项E(版本号为V1.1.2)覆盖已 有转发表项E(版本号为V1.1.1),将转发表项F(版本号为V1.2.1)存储 在第二转发表项存储空间中,存储空间的结构如图7所示。当进行第二次微 码升级,假设重新计算的转发表项B、转发表项C、和转发表项E发生了变 化,其中重新计算的转发表项B(属于上述实施例中的待兼容处理转发表项) 能够由已有转发表项B(版本号为V1.1.1)经过兼容性处理得到兼容的转发表项B(版本号为V1.1.2)(属于上述实施例中的经过兼容处理的转发表项), 重新计算的转发表项C(属于上述实施例中的待兼容处理转发表项)能够由 已有转发表项C(版本号为V1.1.2)经过兼容性处理得到兼容的转发表项C (版本号为V1.1.3)(属于上述实施例中的经过兼容处理的转发表项),重 新计算的转发表项E(版本号为V1.2.1)无法被兼容(属于上述实施例中的 无法被兼容的转发表项),因此线卡转发芯片在第一转发表项存储空间中将转发表项B(版本号为V1.1.2)覆盖已有转发表项B(版本号为V1.1.1), 将转发表项C(版本号为V1.1.3)覆盖已有转发表项C(版本号为V1.1.2), 将转发表项E(版本号为V1.2.1)存储在第二转发表项存储空间中,存储空 间的结构如图8所示。当进行第三次微码升级,假设重新计算的转发表项与 已有的转发表项都不同,因此所有转发表项的大版本号发生改变,线卡转发 芯片进行全部刷新,存储空间的结构如图9所示。因此对转发表项的处理方 式与不同版本号的对应关系可以如图如下表1所示:
表1
在一种示例性实例中,微码的每一次升级,线卡转发芯片都进行主备指 令空间的切换,微码从图6升级到图7,线卡转发芯片从主指令空间切换至备 指令空间,微码从图7升级到图8,线卡转发芯片从备指令空间切换至主指令 空间,微码从图8升级到图9,线卡转发芯片从主指令空间切换至备指令空间。
在一种示例性实例中,转发表项的兼容可以通过预留字段的方式实现, 所生成的兼容的转发表项需要满足一下要求:不能删除字段,只能将该字段 废弃;新增字段只能增加在末尾,中间不能插入字段;如果需要对字段进行 扩充修改(比如BYTE修改为INT),需要按照新增字段的方式在尾部增加, 但是需要保留原字段的值(给老版本使用)。
在一种示例性实例中,以预留字段的方式进行表项兼容的示意图如图10 所示。假设表项只有一行字段,预留字段为64bit,以这行字段的不同版本号 为例进行说明,假设包含V1.1.1、V 1.1.2和V1.1.3和V1.2.1,如图10所示, V1.1.2修改字段B(扩充1个字节),V1.1.3增加字段Z。
然后、线卡控制芯片根据大中小三个版本号选择对应的转发表项下发方 式,将重新计算的转发表项下发到线卡转发芯片。
最后、线卡转发芯片接收转发表项,并对转发表项进行处理;将微码版 本升级信息加载到备指令空间;当前的主指令空间切换至所述备指令空间。
本发明实施例还提供一种线卡,包括:线卡控制芯片以及线卡转发芯片。 其中,线卡控制芯片用于获取微码版本升级信息,并将微码版本升级信息发 送给线卡转发芯片。
线卡转发芯片用于接收来自线卡控制芯片的微码版本升级信息;在备指 令空间加载微码版本升级信息;从主指令空间切换至备指令空间;其中,主 指令空间和备指令空间是线卡转发芯片对自身中用于加载微码版本信息的指 令空间预先进行划分得到的。
在一种示例性实例中,线卡控制芯片还用于获取业务配置数据,并根据 业务配置数据计算转发表项;获取计算得到的转发表项中表项内容与对应的 已有转发表项不同的若干个目标转发表项;将目标转发表项发送给线卡转发 芯片。
线卡转发芯片还用于接收来自线卡控制芯片的目标转发表项;其中,目 标转发表项是表项内容与已有转发表项不同的计算得到的转发表项;存储目 标转发表项。
在一种示例性实例中,线卡控制芯片还用于获取业务配置数据,并根据 业务配置数据计算转发表项;获取计算得到的转发表项中表项内容与对应的 已有转发表项不同的若干个目标转发表项;从若干个目标转发表项中获取能 够由经过兼容性处理的对应的已有转发表项兼容的待兼容处理转发表项,以 及无法被兼容的转发表项;根据待兼容处理转发表项对待兼容处理转发表项 对应的已有转发表项进行兼容性处理,得到经过兼容处理的转发表项;将经 过兼容处理的转发表项和无法被兼容的转发表项发送给线卡转发芯片。
线卡转发芯片还用于接收来自线卡控制芯片的经过兼容处理的转发表项 和无法被兼容的转发表项;在用于存储已有转发表项的第一转发表项存储空 间中以经过兼容处理的转发表项覆盖对应的已有转发表项;在用于存储与已 有转发表项无法兼容的转发表项的第二转发表项存储空间中存储无法被兼容 的转发表项;其中,第一转发表项存储空间和第二转发表项存储空间是转发 芯片将自身中用于存储转发表项的存储空间按照预设空间比例进行划分得到 的。
在一种示例性实例中,预设空间比例包括:第一转发表项存储空间与第 二转发表项存储空间的空间比例为9:1。
在一种示例性实例中,线卡控制芯片具体用于通过预留字段的方式根据 待兼容处理转发表项对待兼容处理转发表项对应的已有转发表项进行兼容性 处理。
在一种示例性实例中,线卡控制芯片具体用于通过除预留字段以外的其 他兼容编码的方式根据待兼容处理转发表项对待兼容处理转发表项对应的已 有转发表项进行兼容性处理。
在一种示例性实例中,线卡控制芯片具体用于获取待兼容处理转发表项 和待兼容处理转发表项对应的已有转发表项每一行之间的不同字段;在待兼 容处理转发表项对应的已有转发表项的每一行字段后面增加预留字段;用获 得的每一行之间的的不同字段填充在对应行的预留字段中。
在一种示例性实例中,除预留字段以外的其他兼容编码的方式包括: TLV编码、Google Protobuf、JSON和XML。
虽然本发明实施例所揭露的实施方式如上,但所述的内容仅为便于理解 本发明实施例而采用的实施方式,并非用以限定本发明实施例。任何本发明 实施例所属领域内的技术人员,在不脱离本发明实施例所揭露的精神和范围 的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明实 施例的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (11)
1.一种微码的升级方法,包括:
线卡转发芯片接收来自线卡控制芯片的微码版本升级信息;
所述线卡转发芯片在备指令空间加载所述微码版本升级信息;
所述线卡转发芯片从主指令空间切换至所述备指令空间;其中,所述主指令空间和所述备指令空间是所述线卡转发芯片对自身中用于加载微码版本信息的指令空间预先进行划分得到的。
2.根据权利要求1所述的升级方法,其特征在于,所述线卡转发芯片接收来自线卡控制芯片的微码版本升级信息之后,还包括:
所述线卡转发芯片接收来自所述线卡控制芯片的目标转发表项;其中,所述目标转发表项是表项内容与已有转发表项不同的计算得到的转发表项;
所述线卡转发芯片存储所述目标转发表项。
3.根据权利要求1所述的升级方法,其特征在于,所述线卡转发芯片接收来自线卡控制芯片的微码版本升级信息之后,还包括:
所述线卡转发芯片接收来自线卡控制芯片的经过兼容处理的转发表项和无法被兼容的转发表项;其中,所述经过兼容处理的转发表项是当计算得到的转发表项的表项内容与已有转发表项不同,由已有转发表项经过兼容性处理后得到的能够兼容计算得到的转发表项的转发表项,所述无法被兼容的转发表项是表项内容与已有转发表项不同,且无法由已有转发表项进行兼容性处理后兼容的计算得到的转发表项;
所述线卡转发芯片在用于存储已有转发表项的第一转发表项存储空间中以所述经过兼容处理的转发表项覆盖对应的已有转发表项;
所述转发芯片在用于存储与已有转发表项无法兼容的转发表项的第二转发表项存储空间中存储所述无法被兼容的转发表项;其中,所述第一转发表项存储空间和所述第二转发表项存储空间是所述转发芯片将自身中用于存储转发表项的存储空间按照预设空间比例进行划分得到的。
4.根据权利要求3所述的升级方法,其特征在于,所述预设空间比例包括:所述第一转发表项存储空间与所述第二转发表项存储空间的空间比例为9:1。
5.一种微码的升级方法,包括:
线卡控制芯片获取微码版本升级信息;
所述线卡控制芯片将所述微码版本升级信息发送给线卡转发芯片,以使所述线卡转发芯片在备指令空间中加载所述微码版本升级信息,并从主指令空间切换至所述备指令空间;其中,所述主指令空间和所述备指令空间是所述线卡转发芯片对自身中用于加载微码版本信息的指令空间预先进行划分得到的。
6.根据权利要求5所述的升级方法,其特征在于,所述线卡控制芯片获取版本升级信息之后,还包括:
所述线卡控制芯片获取业务配置数据,并根据所述业务配置数据计算转发表项;
所述线卡控制芯片获取计算得到的转发表项中表项内容与对应的已有转发表项不同的若干个目标转发表项;
所述线卡控制芯片将所述目标转发表项发送给所述线卡转发芯片。
7.根据权利要求5所述的升级方法,其特征在于,所述线卡控制芯片获取版本升级信息之后,还包括:
所述线卡控制芯片获取业务配置数据,并根据所述业务配置数据计算转发表项;
所述线卡控制芯片获取计算得到的转发表项中表项内容与对应的已有转发表项不同的若干个目标转发表项;
所述线卡控制芯片从若干个目标转发表项中获取能够由经过兼容性处理的对应的已有转发表项兼容的待兼容处理转发表项,以及无法被兼容的转发表项;
所述线卡控制芯片根据所述待兼容处理转发表项对所述待兼容处理转发表项对应的已有转发表项进行兼容性处理,得到经过兼容处理的转发表项;
所述线卡控制芯片将经过兼容处理的转发表项和无法被兼容的转发表项发送给所述线卡转发芯片。
8.根据权利要求7所述的升级方法,其特征在于,所述线卡控制芯片根据待兼容处理转发表项对待兼容处理转发表项对应的已有转发表项进行兼容性处理,包括:
所述线卡控制芯片通过预留字段的方式根据所述待兼容处理转发表项对所述待兼容处理转发表项对应的已有转发表项进行兼容性处理;
或者,
所述线卡控制芯片通过除预留字段以外的其他兼容编码的方式根据所述待兼容处理转发表项对所述待兼容处理转发表项对应的已有转发表项进行兼容性处理。
9.根据权利要求8所述的升级方法,其特征在于,所述线卡控制芯片通过预留字段的方式根据待兼容处理转发表项对待兼容处理转发表项对应的已有转发表项进行兼容性处理,包括:
所述线卡控制芯片获取所述待兼容处理转发表项和所述待兼容处理转发表项对应的已有转发表项每一行之间的不同字段;
所述线卡控制芯片在所述待兼容处理转发表项对应的已有转发表项的每一行字段后面增加所述预留字段;
所述线卡控制芯片用获得的每一行之间的的不同字段填充在对应行的所述预留字段中。
10.根据权利要求8所述的升级方法,其特征在于,所述除预留字段以外的其他兼容编码的方式包括:类型长度值TLV编码、编解码框架Google Protobuf、直译式脚本语言对象标记JSON和可扩展标记语言XML。
11.一种线卡,其特征在于,包括:线卡控制芯片以及线卡转发芯片;
其中,所述线卡控制芯片用于获取微码版本升级信息,并将所述微码版本升级信息发送给线卡转发芯片;
所述线卡转发芯片用于接收来自线卡控制芯片的微码版本升级信息;在备指令空间加载所述微码版本升级信息;从主指令空间切换至所述备指令空间;其中,所述主指令空间和所述备指令空间是所述线卡转发芯片对自身中用于加载微码版本信息的指令空间预先进行划分得到的。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910611232.3A CN112199100A (zh) | 2019-07-08 | 2019-07-08 | 一种微码的升级方法及装置 |
PCT/CN2020/097549 WO2021004265A1 (zh) | 2019-07-08 | 2020-06-22 | 一种微码的升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910611232.3A CN112199100A (zh) | 2019-07-08 | 2019-07-08 | 一种微码的升级方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112199100A true CN112199100A (zh) | 2021-01-08 |
Family
ID=74004280
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910611232.3A Pending CN112199100A (zh) | 2019-07-08 | 2019-07-08 | 一种微码的升级方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112199100A (zh) |
WO (1) | WO2021004265A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114185587A (zh) * | 2021-12-13 | 2022-03-15 | 平安壹账通云科技(深圳)有限公司 | 微码升级方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858718A (zh) * | 2005-11-03 | 2006-11-08 | 华为技术有限公司 | 一种使用软件补丁修改微码程序的方法 |
CN101729428A (zh) * | 2010-01-07 | 2010-06-09 | 中兴通讯股份有限公司 | 微码切换方法和装置 |
CN103986660A (zh) * | 2014-05-30 | 2014-08-13 | 华为技术有限公司 | 加载微码的装置以及加载微码的方法 |
CN108777723A (zh) * | 2018-06-11 | 2018-11-09 | 深圳市风云实业有限公司 | Arl表管理系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6650880B1 (en) * | 2000-06-12 | 2003-11-18 | Broadcom Corporation | Wireless data communications using FIFO for synchronization memory |
CN100542103C (zh) * | 2006-10-25 | 2009-09-16 | 华为技术有限公司 | 一种热升级网络处理器的方法及装置 |
CN101561760B (zh) * | 2008-04-14 | 2012-04-25 | 环旭电子股份有限公司 | 接口卡固件升级方法 |
CN102104546B (zh) * | 2011-02-23 | 2015-06-10 | 中兴通讯股份有限公司 | 一种转发表的同步方法及系统 |
-
2019
- 2019-07-08 CN CN201910611232.3A patent/CN112199100A/zh active Pending
-
2020
- 2020-06-22 WO PCT/CN2020/097549 patent/WO2021004265A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1858718A (zh) * | 2005-11-03 | 2006-11-08 | 华为技术有限公司 | 一种使用软件补丁修改微码程序的方法 |
CN101729428A (zh) * | 2010-01-07 | 2010-06-09 | 中兴通讯股份有限公司 | 微码切换方法和装置 |
CN103986660A (zh) * | 2014-05-30 | 2014-08-13 | 华为技术有限公司 | 加载微码的装置以及加载微码的方法 |
CN108777723A (zh) * | 2018-06-11 | 2018-11-09 | 深圳市风云实业有限公司 | Arl表管理系统 |
Non-Patent Citations (1)
Title |
---|
胡宁等: "基于网络处理器的 IPSec 协议实现技术研究", 《计算机工程》, 5 March 2006 (2006-03-05), pages 97 - 99 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114185587A (zh) * | 2021-12-13 | 2022-03-15 | 平安壹账通云科技(深圳)有限公司 | 微码升级方法、装置、设备及存储介质 |
CN114185587B (zh) * | 2021-12-13 | 2023-08-25 | 平安壹账通云科技(深圳)有限公司 | 微码升级方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021004265A1 (zh) | 2021-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11868785B2 (en) | Application program page processing method and device | |
US10740114B2 (en) | Component invoking method and apparatus, and component data processing method and apparatus | |
CN110597595B (zh) | 多语言信息的提供方法、配置方法、装置、设备和介质 | |
US8863129B2 (en) | Automated caching and mirroring of immutable data in distributed virtual machines via native interface components | |
CN103581008B (zh) | 路由器及其软件升级方法 | |
US11979300B2 (en) | Standardized format for containerized applications | |
US11122110B2 (en) | Blockchain-based file processing method, apparatus, and device, and storage medium | |
US20170358051A1 (en) | Providing variants of digital assets based on device-specific capabilities | |
CN108073423A (zh) | 一种加速器加载方法、系统和加速器加载装置 | |
CN113791917A (zh) | 延迟消息处理方法、装置与系统 | |
US20170177603A1 (en) | Compressed data rearrangement to optimize file compression | |
CN109918381B (zh) | 用于存储数据的方法和装置 | |
CN109302639B (zh) | 一种弹幕消息的分发方法、装置、终端和存储介质 | |
CN112199100A (zh) | 一种微码的升级方法及装置 | |
CN113127430B (zh) | 镜像信息处理方法、装置、计算机可读介质及电子设备 | |
US20120284478A1 (en) | Managing storage extents and the obtaining of storage blocks within the extents | |
CN117435569A (zh) | 缓存系统动态扩容方法、装置、设备、介质和程序产品 | |
CN106484375B (zh) | 一种指令块加载方法、软交换设备及系统 | |
CN108959285B (zh) | 数据库主键获取方法及装置、存储介质、电子设备 | |
CN110019148B (zh) | 数据库容量管理方法、装置、存储介质及计算机设备 | |
CN113741913A (zh) | 图片配置方法、装置、系统和存储介质 | |
CN111309380A (zh) | 服务实例的配置方法、装置及系统 | |
CN113268267B (zh) | 一种数据包生成方法、装置、计算机设备及存储介质 | |
CN109726053B (zh) | 数据库控制中心的切换方法、装置及计算机设备 | |
CN116991600B (zh) | 图形调用指令的处理方法、装置、设备及存储介质 |
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 |