本公开大体上涉及用于网络分组处理的系统及方法。特定来说,本公开涉及用于解析网络分组中的类型-长度-值(tlv)标头的系统及方法。
背景技术:
1、类型-长度-值(tlv)标头通过在无需是固定长度或在预定位置处的数据流内包含任选元素来为通信协议提供灵活性。类型代码可指示值类型,且值的长度可经编码于长度字段中。举例来说,因特网协议语音服务系统可与连接到传统或普通的老式电话系统(pots)的网关通信,且可传输具有包含tlv元祖的标头的分组,tlv元组具有用于电话号码的类型代码、指示10个数字(或在许多实施方案中以二进制半八位位组编码的10个数字)的长度代码及将呼叫的电话号码的值。未经配置用于此类操作的其它系统仍可以正确转发tlv选项,从而忽略了值。其它用途包含装置或网络监测数据及仪器、简单远程控制件、安全功能、对可靠传输协议等的选择性确认或其中可能无需更高协议层有效负载的任何其它用途。由于经编码长度标识符,多个tlv标头可经序连且包含于标头的选项字段或其它部分中,且可随着装置处理及转发分组流而被它们提取、解析及利用。
技术实现思路
1、一方面,本申请案提供一种用于灵活解析通信分组的tlv标头的方法,其包括:(a)由tlv提取器识别通信分组的标头中tlv序列的存在及对应于所述tlv序列的位置的锚定偏移;(b)由所述tlv提取器确定所述tlv序列的类型;(c)由所述tlv提取器基于所述锚定偏移计算对应于所述标头内的所述tlv序列的位置偏移;及(d)由所述tlv提取器用经确定类型及位置偏移填入存在位图。
2、另一方面,本申请案提供一种用于灵活解析通信分组的tlv标头的电路,其包括:tlv提取器,其经配置以接收从通信分组提取的tlv标头且进一步经配置以:(a)识别所述tlv标头中tlv序列的存在及对应于所述tlv序列的位置的锚定偏移;(b)确定所述tlv序列的类型;(c)基于所述锚定偏移计算对应于所述标头内的所述tlv序列的位置偏移;及(d)用经确定类型及位置偏移填入存在位图。
3、另一方面,本申请案提供一种用于修改通信分组的tlv标头的电路,其包括:tlv处理器,其经由第一总线与tlv提取器通信,所述tlv处理器经配置以:经由所述第一总线从所述tlv提取器接收存在位图,所述存在位图包括识别经由第二总线接收的通信分组中的tlv序列类型的元组及所述分组内的所述tlv序列的位置偏移;根据所述存在位图中的所述位置偏移修改所述通信分组中的所述tlv序列;根据经修改tlv序列更新所述存在位图;经由所述第一总线传输经更新存在位图;及经由所述第二总线传输经修改通信分组。
1.一种用于灵活解析通信分组的类型-长度-值tlv标头的方法,其包括:
2.根据权利要求1所述的方法,其中确定所述tlv序列的类型进一步包括:
3.根据权利要求2所述的方法,其中所述多个匹配电路包括多个内容可寻址存储器电路。
4.根据权利要求1所述的方法,其中所述tlv序列是多个tlv序列中的第一tlv序列,且所述方法进一步包括:
5.根据权利要求4所述的方法,其中计算对应于所述第二tlv序列的所述位置偏移进一步包括:
6.根据权利要求5所述的方法,其中推进所述通信分组的所述标头进一步包括将所述标头推进基于所述第一tlv序列的所述经提取长度的量。
7.根据权利要求1所述的方法,其中所述存在位图包括所述通信分组的所述标头中的多个对应tlv序列的类型的多个元组及位置偏移。
8.根据权利要求1所述的方法,其进一步包括经由总线将所述存在位图传输到tlv处理器。
9.根据权利要求8所述的方法,其进一步包括从所述tlv序列的值提取至少一个字及经由所述总线将经提取至少一个字传输到所述tlv处理器。
10.一种用于灵活解析通信分组的类型-长度-值tlv标头的电路,其包括:
11.根据权利要求10所述的电路,其中所述tlv提取器进一步包括多个匹配电路,每一匹配电路与多个对应类型中的类型相关联;且
12.根据权利要求11所述的电路,其中所述多个匹配电路包括多个内容可寻址存储器电路。
13.根据权利要求10所述的电路,其中所述tlv序列是多个tlv序列中的第一tlv序列,且其中所述tlv提取器进一步经配置以:
14.根据权利要求13所述的电路,其中所述tlv提取器进一步经配置以通过提取识别于所述第一tlv序列中的长度及基于所述第一tlv序列的所述锚定偏移及经提取长度计算对应于所述第二tlv序列的所述位置偏移来计算对应于所述第二tlv序列的所述位置偏移。
15.根据权利要求14所述的电路,其中所述tlv提取器进一步经配置以将所述标头推进基于所述第一tlv序列的所述经提取长度的量。
16.根据权利要求11所述的电路,其中所述存在位图包括所述通信分组的所述标头中的多个对应tlv序列的类型的多个元组及位置偏移。
17.根据权利要求11所述的电路,其中所述tlv提取器经由总线与tlv处理器通信,且进一步经配置以经由所述总线将所述存在位图传输到所述tlv处理器。
18.根据权利要求17所述的电路,其中所述tlv提取器进一步经配置以从所述tlv序列的值提取至少一个字及经由所述总线将所述经提取至少一个字传输到所述tlv处理器。
19.一种用于修改通信分组的类型-长度-值tlv标头的电路,其包括:
20.根据权利要求19所述的电路,其中所述tlv处理器进一步经配置以通过将第二tlv序列插入于所述通信分组中来修改所述tlv序列及基于所述第二tlv序列的长度用所述tlv序列的新位置偏移更新所述存在位图。