CN111181852A - 一种发送方法、接收方法及其装置 - Google Patents
一种发送方法、接收方法及其装置 Download PDFInfo
- Publication number
- CN111181852A CN111181852A CN201911394844.8A CN201911394844A CN111181852A CN 111181852 A CN111181852 A CN 111181852A CN 201911394844 A CN201911394844 A CN 201911394844A CN 111181852 A CN111181852 A CN 111181852A
- Authority
- CN
- China
- Prior art keywords
- segment
- flag bit
- type length
- length value
- control
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/34—Source routing
-
- 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/22—Parsing or analysis of headers
Abstract
本发明公开了一种接收方法,包括:接收IPv6段路由SRv6数据包;每个控制Segment与所述SRv6传输路径中的中间节点一一对应;根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理,并根据所述控制Segment中包含的参数,以及相应数据Segment中的数据进行所述处理。还公开了一种发送方法,包括:分别设置与各中间节点对应的控制段Segment,并相应设置所述控制Segment中的标志位和参数;根据所述标志位和参数在相应的控制Segment后插入数据段Segment或可选类型长度值对象;将各控制Segment和数据Segment或可选类型长度值对象设置在IPv6段路由SRv6数据包的段路由头SRH中;发送所述SRv6数据包。本发明提供的发送和接收方法可以在SRv6数据包的传输过程中增加更多功能。
Description
技术领域
本发明涉及计算机网络及网络安全领域,尤其涉及基于SRv6(Segment Routingover IPv6 data plane,即IPv6数据平台上的段路由)的一种发送方法和接收方法。
背景技术
在Segment Routing(SR)技术出现之前,综合业务网为了实现服务质量控制,会应用Resource Reservation Protocol(RSVP,具体可见RFC 2205)协议。在RSVP协议中,网络中的各个节点均需维护大量的路径状态信息,以确定从某一个源地址到某一个目的地址的数据流应该走哪一条路径,并通过这种方式为不同优先级的数据流提供不同质量的传输服务。但是也正是由于每个节点均需维护大量的路径状态信息,所以应用RSVP协议后,网络的可扩展性变差,每次网络拓扑结构变化时均需更新各个节点的路由状态信息,并且大型网络的节点需要维护的状态信息表过于庞杂,这些都违背了互联网协议设计中可扩展性的原则。
Segment Routing技术则是以另一种方式来解决服务质量控制问题,它规定数据包在一开始被转发时可以指定中间过程经过的节点,这样中间节点就无需维护路径状态信息,只需根据已有的指示进行数据包转发。具体地讲,所有的路径指示都存放在Segment这种数据结构中,每个Segment可以指示该数据包下一跳应该去往哪一个节点,而各个中间节点就是根据这些Segment来确定将该数据包发往哪里。相对于RSVP协议,Segment Routing技术是一种无状态的协议,中间节点无需维护路径状态信息,只需根据Segment中的路径指示进行转发等操作,网络拓扑结构变化时也无需更新任何状态信息,可扩展性好,通用性强。
目前,Segment Routing技术通常与两种数据平面相结合,一种是与Multi-Protocol Label Switching(MPLS,具体可见RFC 3031)数据平面相结合,另一种是与IPv6数据平面相结合。当Segment Routing与MPLS数据平面结合时,Segment中存放着下一跳节点的MPLS标签,该标签可以指示数据包下一跳应该去往哪一个节点;而当Segment Routing与IPv6数据平面结合时,Segment中存放着下一跳节点的IPv6地址,可以指示该数据包下一跳应去往哪个节点。本发明基于Segment Routing与IPv6数据平面的结合来做进一步工作,即在Segment Routing over IPv6 data plane(SRv6)的基础上,进行安全性的改善和位置路由功能的扩展。
在应用SRv6技术时,数据包头部有一个额外的Segment Routing Header(SRH),它的结构如图1所示。与经典的Routing Headers(定义于RFC 8200)类似,SRH中也有NextHeader、Hdr Ext Len、Routing Type等字段,另外SRH中还包含许多Segment,每个Segment可以指示该数据包下一跳应该去往哪一个节点,而各个中间节点就是根据SRH中相应的Segment来确定将该数据包发往哪里。一般SRH中有一个Segment List,排列顺序按照Segment Left确定,例如Segment Left为0时,Segment List[0]就指示了最后一跳要去往的节点。
关于Segment的具体格式,有一些标准草案提出,一个Segment即为一个128比特的IPv6地址,该地址可以精确地确定下一跳路由器的具体网络地址,比如https://tools.ietf.org/html/draft-ietf-6man-segment-routing-header-22,这种方式简单易懂,易于实施,但无法进行功能扩展;也有一些标准草案提出将一个Segment分成32比特的Locator和96比特的Function,其中32位的Locator用于确定下一跳节点所在的子网,而每个子网都设有默认路由器,因此根据该子网地址即可确定下一跳路由器,后面96比特的Function部分可以进行一些功能扩展,这样的技术草案主要有https://tools.ietf.org/html/draft-ietf-spring-srv6-network-programming-01等标准。本专利基于第二种Segment格式,在后面的Function部分进行身份验证及授权机制扩展。
发明内容
本发明要解决的技术问题是提供一种发送方法、接收方法及其装置,可以在SRv6数据包的传输过程中增加更多功能。
为了解决上述技术问题,本发明实施例提供了一种接收方法,包括:
接收IPv6段路由SRv6数据包;其中,所述SRv6数据包包括段路由头SRH;所述SRH包括多个段Segment;所述Segment包括控制Segment和数据Segment或所述Segment包括控制Segment和可选类型长度值对象;
每个控制Segment与所述SRv6传输路径中的中间节点一一对应;
根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理,并根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理。
一种示例性的实施例中,上述方法还具有下面特点:
所述标志位包括身份验证标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述身份验证标志为预定值时,确定要对源节点进行身份验证;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的哈希算法,以及相应数据Segment或可选类型长度值对象中的预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值,对源节点进行身份验证。
一种示例性的实施例中,上述方法还具有下面特点:
根据所述哈希算法对本中间节点的密值以及数据包中的源节点IPv6地址和目的节点IPV6地址进行哈希操作,将哈希操作所得的哈希值与数据Segment或可选类型长度值对象中的哈希值比较,若两者一致,则表明源节点的身份合法。
一种示例性的实施例中,上述方法还具有下面特点:
所述标志位包括第一授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第一授权管理标志位为预定值时,确定要对源节点进行授权管理;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的对称密钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用对称密钥加密的授权级别信息,对源节点进行授权管理;
所述对源节点进行授权管理包括:
根据所述对称密钥加密算法以及本中间节点的对称密钥对相应数据Segment或可选类型长度值对象中使用对称密钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
一种示例性的实施例中,上述方法还具有下面特点:
所述标志位包括第二授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第二授权管理标志位为预定值时,确定要对源节点进行授权管理;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的公钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用公钥加密的授权级别信息,对源节点进行授权管理;
所述对源节点进行授权管理包括:
根据所述公钥加密算法以及本中间节点的私钥对相应数据Segment或可选类型长度值对象中使用公钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
为了解决上述技术问题,本发明实施例提供了一种发送方法,包括:
分别设置与各中间节点对应的控制段Segment,并相应设置所述控制Segment中的标志位和参数;根据所述标志位和参数在相应的控制Segment后插入数据段Segment或可选类型长度值对象;
将各控制Segment和数据Segment设置在IPv6段路由SRv6数据包的段路由头SRH中;
或者将各控制Segment和可选类型长度值对象设置在IPv6段路由SRv6数据包的段路由头SRH中;
发送所述SRv6数据包。
一种示例性的实施例中,上述方法还具有下面特点:
当所述标志位包括身份验证标志位时,所述参数包括用于指示所使用的哈希算法的参数,相应数据Segment或可选类型长度值对象中包括预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值。
一种示例性的实施例中,上述方法还具有下面特点:
当所述标志位包括第一授权管理标志位时,所述参数包括用于指示所使用的对称密钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用对称密钥加密的授权级别信息。
一种示例性的实施例中,上述方法还具有下面特点:
当所述标志位包括第二授权管理标志位时,所述参数包括用于指示所使用的公钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用公钥加密的授权级别信息。
为了解决上述技术问题,本发明实施例提供了一种接收装置,包括:包括:存储器和处理器;
所述存储器,用于保存用于接收的程序;
所述处理器,用于读取执行所述用于接收的程序,执行以下操作:
接收IPv6段路由SRv6数据包;其中,所述SRv6数据包包括段路由头SRH;所述SRH包括多个段Segment;所述Segment包括控制Segment和数据Segment或所述Segment包括控制Segment和可选类型长度值对象;
每个控制Segment与所述SRv6传输路径中的中间节点一一对应;
根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理,并根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理。
所述标志位包括身份验证标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述身份验证标志为预定值时,确定要对源节点进行身份验证;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的哈希算法,以及相应数据Segment或可选类型长度值对象中的预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值,对源节点进行身份验证。
根据所述哈希算法对本中间节点的密值以及数据包中的源节点IPv6地址和目的节点IPV6地址进行哈希操作,将哈希操作所得的哈希值与数据Segment或可选类型长度值对象中的哈希值比较,若两者一致,则表明源节点的身份合法。
所述标志位包括第一授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第一授权管理标志位为预定值时,确定要对源节点进行授权管理;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的对称密钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用对称密钥加密的授权级别信息,对源节点进行授权管理;
所述对源节点进行授权管理包括:
根据所述对称密钥加密算法以及本中间节点的对称密钥对相应数据Segment或可选类型长度值对象中使用对称密钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
所述标志位包括第二授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第二授权管理标志位为预定值时,确定要对源节点进行授权管理;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的公钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用公钥加密的授权级别信息,对源节点进行授权管理;
所述对源节点进行授权管理包括:
根据所述公钥加密算法以及本中间节点的私钥对相应数据Segment或可选类型长度值对象中使用公钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
为了解决上述技术问题,本发明实施例提供了一种发送装置,包括:存储器和处理器;
所述存储器,用于保存用于发送的程序;
所述处理器,用于读取执行所述用于发送的程序,执行以下操作:
分别设置与各中间节点对应的控制段Segment,并相应设置所述控制Segment中的标志位和参数;根据所述标志位和参数在相应的控制Segment后插入数据段Segment或可选类型长度值对象;
将各控制Segment和数据Segment设置在IPv6段路由SRv6数据包的段路由头SRH中;或者将各控制Segment和可选类型长度值对象设置在IPv6段路由SRv6数据包的段路由头SRH中;
发送所述SRv6数据包。
当所述标志位包括身份验证标志位时,所述参数包括用于指示所使用的哈希算法的参数,相应数据Segment或可选类型长度值对象中包括预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值。
当所述标志位包括第一授权管理标志位时,所述参数包括用于指示所使用的对称密钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用对称密钥加密的授权级别信息。
当所述标志位包括第二授权管理标志位时,所述参数包括用于指示所使用的公钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用公钥加密的授权级别信息。
综上,本发明实施例提供的发送和接收方法,实现了对SRv6数据包的段路由头SRH进行扩展,从而可以在SRv6数据包的传输过程中增加更多功能。
附图说明
图1为Segment Routing Header(SRH)的结构。
图2为根据本发明实施例一的接收方法的示意图。
图3为根据本发明实施例二的发送方法的示意图。
图4为根据本发明实施例三的控制Segment结构的示意图。
图5为根据本发明实施例三的对后续需要进行身份验证的节点对应的控制Segment的处理。
图6为根据本发明实施例三的对后续需要进行授权管理的节点对应的控制Segment的处理。
图7为根据本发明实施例三的对后续需要进行授权管理的节点对应的控制Segment的处理。
图8为根据本发明实施例五的接收装置的示意图。
图9为根据本发明实施例六的发送装置的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
实施例一
图2为本发明实施例一的接收方法的示意图,如图2所示,本实施例的接收方法包括:
S21、接收IPv6段路由SRv6数据包。
一种示例性的实施例中,所述SRv6数据包包括段路由头SRH;所述SRH包括多个段Segment;所述Segment包括控制Segment和数据Segment或所述Segment包括控制Segment和可选类型长度值对象。
一种示例性的实施例中,每个控制Segment与所述SRv6传输路径中的中间节点一一对应。
S22、根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理。
一种示例性的实施例中,所述标志位包括身份验证标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述身份验证标志为预定值时,确定要对源节点进行身份验证。
一种示例性的实施例中,所述标志位包括第一授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第一授权管理标志位为预定值时,确定要对源节点进行授权管理。
一种示例性的实施例中,所述标志位包括第二授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第二授权管理标志位为预定值时,确定要对源节点进行授权管理。
S23、根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理。
一种示例性的实施例中,根据所述控制Segment的参数中指示的哈希算法,以及相应数据Segment或可选类型长度值对象中的预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值,对源节点进行身份验证。
一种示例性的实施例中,根据所述哈希算法对本中间节点的密值以及数据包中的源节点IPv6地址和目的节点IPV6地址进行哈希操作,将哈希操作所得的哈希值与数据Segment或可选类型长度值对象中的哈希值比较,若两者一致,则表明源节点的身份合法。
一种示例性的实施例中,所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的对称密钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用对称密钥加密的授权级别信息,对源节点进行授权管理;
一种示例性的实施例中,所述对源节点进行授权管理包括:
根据所述对称密钥加密算法以及本中间节点的对称密钥对相应数据Segment或可选类型长度值对象中使用对称密钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
一种示例性的实施例中,所述根据所述控制Segment中包含的参数,以及相应数据Segment中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的公钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用公钥加密的授权级别信息,对源节点进行授权管理;
一种示例性的实施例中,所述对源节点进行授权管理包括:
根据所述公钥加密算法以及本中间节点的私钥对相应数据Segment或可选类型长度值对象中使用公钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
实施例二
图3为本发明实施例二的发送方法的示意图,如图3所示,本实施例的发送方法包括:
S31、分别设置与各中间节点对应的控制段Segment,并相应设置所述控制Segment中的标志位和参数;根据所述标志位和参数在相应的控制Segment后插入数据段Segment或可选类型长度值对象Optional Type Length Value objects。
一种示例性的实施例中,将控制Segment划分为Locator、Function两个部分。其中,如图4所示,Locator可以为32位,标志位可以为16位,参数位可以为80位,Locator、标志位、参数位长度加起来应为128比特。在实际应用中,Locator、标志位和参数位的长度都可以视需求而定,只要源节点和中间节点约定相同即可。
一种示例性的实施例中,可以使用前5位表示使用哪种哈希算法,用00000表示使用DSA哈希算法,00001表示使用SHA-2哈希算法。可以使用第6位到第10位表示使用哪一种对称密钥加密方式,如用00000表示使用RC4加密方式,00001表示使用AES加密方式,00002表示使用Chacha20加密方式。可以使用第11位到第15位表示使用哪一种非对称密钥加密方式,如用00000表示使用RSA加密方式,00001表示使用ECC加密方式。应当理解,以上对标志位的规定只是作为一个实施例,实际情况中可以根据需求设定。
一种示例性的实施例中,当所述标志位包括身份验证标志位时,所述参数包括用于指示所使用的哈希算法的参数,相应数据Segment或可选类型长度值对象中包括预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值。
一种示例性的实施例中,当所述标志位包括第一授权管理标志位时,所述参数包括用于指示所使用的对称密钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用对称密钥加密的授权级别信息。
一种示例性的实施例中,当所述标志位包括第二授权管理标志位时,所述参数包括用于指示所使用的公钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用公钥加密的授权级别信息。
S32、将各控制Segment和数据Segment设置在IPv6段路由SRv6数据包的段路由头SRH中。
S33、发送所述SRv6数据包。
实施例三
源节点构造SRH中各个控制Segment、数据Segment或或可选类型长度值对象的步骤如下:
步骤401:划分标志位、功能参数位。
将控制Segment划分为Locator、Function两个部分。首先确定Locator有多少位,然后确定后面的Function部分中标志位和功能参数位各有多少位,分别有什么含义和对应关系。这一标准需要在数据传输之前确定,并在所有节点中一致地实施。Locator、标志位、功能和参数长度加起来应为128比特,并且可以按照需要制定。
特别的,一种实施方案中,如图4所示,Locator有32位,标志位共有16位,功能及参数位共有80位。应当理解,这里的Locator和标志位、功能位的长度都可以视需求而定,只要源节点和中间节点约定相同即可。
其中一个标志位标识是否需要在控制Segment后面插入额外的数据Segment或者可选类型长度值对象Optional Type Length Value objects,内容为某一密值(该密值只有源节点和特定中间节点知晓,已经预先分发)、源节点IPv6地址、目的节点IPv6地址的哈希值,用于中间节点的身份验证,对应的,后面功能和参数部分的特定位表示使用哪种哈希算法,例如,使用前5位表示使用哪种哈希算法,用00000表示使用DSA哈希算法,00001表示使用SHA-2哈希算法;
其中一个标志位标识是否需要在控制Segment后面插入额外的数据Segment或者可选类型长度值对象,内容为使用对称密钥加密的某个授权级别信息,用于中间节点进行授权管理,与之对应,功能及参数位的特定位标识使用哪一种对称密钥加密方式,例如使用第6位到第10位,用00000表示使用RC4加密方式,00001表示使用AES加密方式,00002表示使用Chacha20加密方式;
其中一个标志位标识是否需要在控制Segment后面插入额外的数据Segment或者可选类型长度值对象,内容为使用公钥加密的某个授权级别信息,用于中间节点进行授权管理,与之对应,功能及参数位的特定位标识使用哪一种非对称密钥加密方式,例如使用第11位到第15位,00000表示使用RSA加密方式,00001表示使用ECC加密方式。
应当理解,以上对标志位的规定只是作为一个实施样例,实际情况中可以根据需求进行其他设定。
步骤402:在需要进行身份验证的节点位置额外插入身份验证信息。
对于所有后续需要进行身份验证的中间节点,将相应控制Segment的约定的标志位置为1,并在每个控制Segment的后面插入一个额外的数据Segment或者可选类型长度值对象Optional Type Length Value objects,内容为某一密值(该密值只有源节点和特定中间节点知晓,已经预先分发)、源节点IPv6地址、目的节点IPv6地址的哈希值,用于中间节点验证数据包发出者是不是合法的源节点。按照约定将功能参数若干位设定为某个值,比如00001,表示使用SHA-2哈希算法。对所有后续需要身份验证的节点对应的控制Segment的处理如图5所示。
步骤403:加密所有需要进行对称密钥加密的授权级别信息。
对于所有后续需要进行授权级别声明的中间节点,将相应控制Segment的约定的标志位置为1,后面功能参数特定位设定为某个值,比如00001,表示使用AES加密方式。然后在控制Segment之后插入数据Segment或者可选类型长度值对象Optional Type LengthValue objects,内容为使用对称密钥加密的某个授权级别信息,用于中间节点进行授权管理。添加数据Segment的图示如图6所示。
步骤404:加密所有需要进行公钥加密的授权级别信息。
对于所有后续需要进行授权级别声明的中间节点,将相应控制Segment的约定的标志位置为1,后面功能参数特定位设定为某个值,比如00001,表示使用ECC加密方式。然后在控制Segment之后插入数据Segment或可选类型长度值对象,内容为使用公钥加密的某个授权级别信息,用于中间节点进行授权管理。由于公钥加密方式的特殊性,得到的数据Segment可能大于一个Segment的长度。添加数据Segment的图示如图7所示。
实施例四
中间节点接收SRv6数据包的接收方法,包括:
查看自己对应的控制Segment中功能和参数位的约定位,确定相应的哈希算法,然后结合存储在自己这里的密值以及数据包中的源节点IPv6地址、目的节点IPv6地址,进行哈希操作,并与数据Segment或可选类型长度值对象中的哈希值比对,如果两者一致,则说明源节点也拥有密值,身份合法,应根据控制Segment的Locator部分中的信息继续进行转发;如果两者不一致,则说明源节点没有正确的密值,身份不合法,不再进行后续的转发操作。
或者
查看自己对应的控制Segment中功能和参数位的约定位,确定相应的对称解密算法,然后结合预置在自己这里的对称密钥(对称密钥事先预置在各个路由器节点中。),进行解密操作,得到授权级别信息。随后根据该授权级别信息确定后续的服务质量,比如选择哪种优先级的链路,后续可以转发到哪个子网,不能进入哪个子网。对称密钥密码体制容易部署,计算简单迅速,但是需要定期更新预置的密钥。
或者
查看自己对应的控制Segment中功能和参数位的约定位,确定相应的公钥算法,然后结合自己的私钥,进行解密操作,得到授权级别信息。随后根据该授权级别信息确定后续的服务质量,比如选择哪种优先级的链路,后续可以转发到哪个子网,不能进入哪个子网。公钥密码体制计算量较大,耗时较长,但是无需繁琐的密钥更新维护,可扩展性较好。
需要说明的是,使用公钥密码体制时,对授权级别信息进行加密后得到的数据Segment长度可能比较长,已经大于128比特,需要多个Segment来容纳。
基于SRv6技术为中间节点提供了对源节点进行合法身份验证的机制,也提供了对特定源节点进行授权管理和服务质量控制的机制,可以在IPv6数据平面下实现源地址验证和细粒度的授权管理,加速IPv4到IPv6的演进。并且可以在路由器等网络基础设施上实现。
实施例五
图8为本发明实施例五的接收装置的示意图,如图8所示,本实施例的接收装置包括:存储器和处理器;
所述存储器,用于保存用于接收的程序;
所述处理器,用于读取执行所述用于接收的程序,执行以下操作:
接收IPv6段路由SRv6数据包;其中,所述SRv6数据包包括段路由头SRH;所述SRH包括多个段Segment;所述Segment包括控制Segment和数据Segment或所述Segment包括控制Segment和可选类型长度值对象;
每个控制Segment与所述SRv6传输路径中的中间节点一一对应;
根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理,并根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理。
所述标志位包括身份验证标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述身份验证标志为预定值时,确定要对源节点进行身份验证;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的哈希算法,以及相应数据Segment或可选类型长度值对象中的预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值,对源节点进行身份验证。
根据所述哈希算法对本中间节点的密值以及数据包中的源节点IPv6地址和目的节点IPV6地址进行哈希操作,将哈希操作所得的哈希值与数据Segment或可选类型长度值对象中的哈希值比较,若两者一致,则表明源节点的身份合法。
所述标志位包括第一授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第一授权管理标志位为预定值时,确定要对源节点进行授权管理;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的对称密钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用对称密钥加密的授权级别信息,对源节点进行授权管理;
所述对源节点进行授权管理包括:
根据所述对称密钥加密算法以及本中间节点的对称密钥对相应数据Segment或可选类型长度值对象中使用对称密钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
所述标志位包括第二授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第二授权管理标志位为预定值时,确定要对源节点进行授权管理;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的公钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用公钥加密的授权级别信息,对源节点进行授权管理;
所述对源节点进行授权管理包括:
根据所述公钥加密算法以及本中间节点的私钥对相应数据Segment或可选类型长度值对象中使用公钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
其他实现方式可参见实施例一中任一示例性实施例。
实施例六
图9为本发明实施例六的发送装置的示意图,如图9所示,本实施例的发送装置包括存储器和处理器;
所述存储器,用于保存用于发送的程序;
所述处理器,用于读取执行所述用于发送的程序,执行以下操作:
分别设置与各中间节点对应的控制段Segment,并相应设置所述控制Segment中的标志位和参数;根据所述标志位和参数在相应的控制Segment后插入数据段Segment或可选类型长度值对象;
将各控制Segment和数据Segment设置在IPv6段路由SRv6数据包的段路由头SRH中;或者将各控制Segment和可选类型长度值对象设置在IPv6段路由SRv6数据包的段路由头SRH中;
发送所述SRv6数据包。
当所述标志位包括身份验证标志位时,所述参数包括用于指示所使用的哈希算法的参数,相应数据Segment或可选类型长度值对象中包括预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值。
当所述标志位包括第一授权管理标志位时,所述参数包括用于指示所使用的对称密钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用对称密钥加密的授权级别信息。
当所述标志位包括第二授权管理标志位时,所述参数包括用于指示所使用的公钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用公钥加密的授权级别信息。
其他实现方式可参见实施例一中任一示例性实施例。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
以上仅为本发明的优选实施例,当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (11)
1.一种接收方法,其特征在于,包括:
接收IPv6段路由SRv6数据包;其中,所述SRv6数据包包括段路由头SRH;所述SRH包括多个段Segment;所述Segment包括控制Segment和数据Segment或所述Segment包括控制Segment和可选类型长度值对象;
每个控制Segment与所述SRv6传输路径中的中间节点一一对应;
根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理,并根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理。
2.如权利要求1所述的方法,其特征在于,
所述标志位包括身份验证标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述身份验证标志为预定值时,确定要对源节点进行身份验证;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的哈希算法,以及相应数据Segment或可选类型长度值对象中的预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值,对源节点进行身份验证。
3.如权利要求2所述的方法,其特征在于,
根据所述哈希算法对本中间节点的密值以及数据包中的源节点IPv6地址和目的节点IPV6地址进行哈希操作,将哈希操作所得的哈希值与数据Segment或可选类型长度值对象中的哈希值比较,若两者一致,则表明源节点的身份合法。
4.如权利要求1所述的方法,其特征在于,
所述标志位包括第一授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第一授权管理标志位为预定值时,确定要对源节点进行授权管理;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的对称密钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用对称密钥加密的授权级别信息,对源节点进行授权管理;
所述对源节点进行授权管理包括:
根据所述对称密钥加密算法以及本中间节点的对称密钥对相应数据Segment或可选类型长度值对象中使用对称密钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
5.如权利要求1所述的方法,其特征在于,
所述标志位包括第二授权管理标志位;
所述根据与本中间节点对应的控制Segment中包含的标志位,确定所要进行的处理包括:
当所述第二授权管理标志位为预定值时,确定要对源节点进行授权管理;
所述根据所述控制Segment中包含的参数,以及相应数据Segment或可选类型长度值对象中的数据,进行所述处理包括:
根据所述控制Segment的参数中指示的公钥加密算法,以及相应数据Segment或可选类型长度值对象中的使用公钥加密的授权级别信息,对源节点进行授权管理;
所述对源节点进行授权管理包括:
根据所述公钥加密算法以及本中间节点的私钥对相应数据Segment或可选类型长度值对象中使用公钥加密的授权级别信息进行解密,根据解密所得的授权级别信息进行授权管理。
6.一种发送方法,其特征在于,包括:
分别设置与各中间节点对应的控制段Segment,并相应设置所述控制Segment中的标志位和参数;根据所述标志位和参数在相应的控制Segment后插入数据段Segment或可选类型长度值对象;
将各控制Segment和数据Segment设置在IPv6段路由SRv6数据包的段路由头SRH中;或者将各控制Segment和可选类型长度值对象设置在IPv6段路由SRv6数据包的段路由头SRH中;
发送所述SRv6数据包。
7.如权利要求6所述的方法,其特征在于,包括:
当所述标志位包括身份验证标志位时,所述参数包括用于指示所使用的哈希算法的参数,相应数据Segment或可选类型长度值对象中包括预设密值的哈希值、源节点IPv6地址的哈希值和目的节点IPV6地址的哈希值。
8.如权利要求6所述的方法,其特征在于,包括:
当所述标志位包括第一授权管理标志位时,所述参数包括用于指示所使用的对称密钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用对称密钥加密的授权级别信息。
9.如权利要求6所述的方法,其特征在于,包括:
当所述标志位包括第二授权管理标志位时,所述参数包括用于指示所使用的公钥加密算法的参数,相应数据Segment或可选类型长度值对象中包括使用公钥加密的授权级别信息。
10.一种接收装置,包括:存储器和处理器;其特征在于:
所述存储器,用于保存用于接收的程序;
所述处理器,用于读取执行所述用于接收的程序,执行如权利要求1-5中任一项所述的方法。
11.一种发送装置,包括:存储器和处理器;其特征在于:
所述存储器,用于保存用于发送的程序;
所述处理器,用于读取执行所述用于发送的程序,执行如权利要求6-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911394844.8A CN111181852B (zh) | 2019-12-30 | 2019-12-30 | 一种发送方法、接收方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911394844.8A CN111181852B (zh) | 2019-12-30 | 2019-12-30 | 一种发送方法、接收方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111181852A true CN111181852A (zh) | 2020-05-19 |
CN111181852B CN111181852B (zh) | 2021-04-02 |
Family
ID=70655894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911394844.8A Active CN111181852B (zh) | 2019-12-30 | 2019-12-30 | 一种发送方法、接收方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111181852B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111726368A (zh) * | 2020-07-02 | 2020-09-29 | 清华大学 | 一种基于SRv6的域间源地址验证的方法 |
CN112422435A (zh) * | 2020-11-13 | 2021-02-26 | 新华三技术有限公司合肥分公司 | 报文转发控制方法、装置和电子设备 |
WO2023272498A1 (zh) * | 2021-06-29 | 2023-01-05 | 新华三技术有限公司 | 一种报文转发方法、装置、网络节点及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106330714A (zh) * | 2015-07-02 | 2017-01-11 | 中兴通讯股份有限公司 | 一种实现业务功能链的方法和装置 |
CN107567704A (zh) * | 2015-04-27 | 2018-01-09 | 思科技术公司 | 使用带内元数据的网络路径通过验证 |
CN109688057A (zh) * | 2018-12-13 | 2019-04-26 | Ut斯达康通讯有限公司 | 基于ipv6的段路由网络的报文转发方法及装置 |
US20190223047A1 (en) * | 2018-01-16 | 2019-07-18 | Cisco Technology, Inc. | Methods And Apparatus For Use In Adaptively Rerouting User Plane Traffic For Mobility Using Segment Routing for IPv6 |
CN110266592A (zh) * | 2019-06-21 | 2019-09-20 | Ut斯达康通讯有限公司 | Srv6网络与ip mpls网络的通信方法及装置 |
CN110535782A (zh) * | 2019-06-15 | 2019-12-03 | 华为技术有限公司 | 一种实现QoS保障的报文处理方法、设备和系统 |
CN110557329A (zh) * | 2018-05-30 | 2019-12-10 | 中兴通讯股份有限公司 | 一种报文转发的方法、装置和节点 |
CN110611616A (zh) * | 2019-09-18 | 2019-12-24 | 下一代互联网重大应用技术(北京)工程研究中心有限公司 | 一种基于Radius服务器的流量调度方法、系统、设备和介质 |
US20190394211A1 (en) * | 2018-06-26 | 2019-12-26 | Cisco Technology, Inc. | Providing Processing and Network Efficiencies in Protecting Internet Protocol Version 6 Segment Routing Packets and Functions Using Security Segment Identifiers |
-
2019
- 2019-12-30 CN CN201911394844.8A patent/CN111181852B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107567704A (zh) * | 2015-04-27 | 2018-01-09 | 思科技术公司 | 使用带内元数据的网络路径通过验证 |
CN106330714A (zh) * | 2015-07-02 | 2017-01-11 | 中兴通讯股份有限公司 | 一种实现业务功能链的方法和装置 |
US20190223047A1 (en) * | 2018-01-16 | 2019-07-18 | Cisco Technology, Inc. | Methods And Apparatus For Use In Adaptively Rerouting User Plane Traffic For Mobility Using Segment Routing for IPv6 |
CN110557329A (zh) * | 2018-05-30 | 2019-12-10 | 中兴通讯股份有限公司 | 一种报文转发的方法、装置和节点 |
US20190394211A1 (en) * | 2018-06-26 | 2019-12-26 | Cisco Technology, Inc. | Providing Processing and Network Efficiencies in Protecting Internet Protocol Version 6 Segment Routing Packets and Functions Using Security Segment Identifiers |
CN109688057A (zh) * | 2018-12-13 | 2019-04-26 | Ut斯达康通讯有限公司 | 基于ipv6的段路由网络的报文转发方法及装置 |
CN110535782A (zh) * | 2019-06-15 | 2019-12-03 | 华为技术有限公司 | 一种实现QoS保障的报文处理方法、设备和系统 |
CN110266592A (zh) * | 2019-06-21 | 2019-09-20 | Ut斯达康通讯有限公司 | Srv6网络与ip mpls网络的通信方法及装置 |
CN110611616A (zh) * | 2019-09-18 | 2019-12-24 | 下一代互联网重大应用技术(北京)工程研究中心有限公司 | 一种基于Radius服务器的流量调度方法、系统、设备和介质 |
Non-Patent Citations (2)
Title |
---|
FILSFILS等: ""SRv6 Network Programming"", 《DRAFT-IETF-SPRING-SRV6-NETWORK-PROGRAMMING-01》 * |
张千里等: ""IPv6地址结构标准化研究综述"", 《计算机学报》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111726368A (zh) * | 2020-07-02 | 2020-09-29 | 清华大学 | 一种基于SRv6的域间源地址验证的方法 |
CN111726368B (zh) * | 2020-07-02 | 2021-05-11 | 清华大学 | 一种基于SRv6的域间源地址验证的方法 |
CN112422435A (zh) * | 2020-11-13 | 2021-02-26 | 新华三技术有限公司合肥分公司 | 报文转发控制方法、装置和电子设备 |
CN112422435B (zh) * | 2020-11-13 | 2022-03-25 | 新华三技术有限公司合肥分公司 | 报文转发控制方法、装置和电子设备 |
WO2023272498A1 (zh) * | 2021-06-29 | 2023-01-05 | 新华三技术有限公司 | 一种报文转发方法、装置、网络节点及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111181852B (zh) | 2021-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3289727B1 (en) | Network path proof of transit using in-band metadata | |
CN111181852B (zh) | 一种发送方法、接收方法及其装置 | |
Gredler et al. | North-bound distribution of link-state and traffic engineering (te) information using bgp | |
US7995593B2 (en) | System and method for retrieving computed paths from a path computation element using encrypted objects | |
Le Faucheur | Protocol extensions for support of Diffserv-aware MPLS traffic engineering | |
US7865717B2 (en) | Method and apparatus for dynamic, seamless security in communication protocols | |
Bradford et al. | Preserving topology confidentiality in inter-domain path computation using a path-key-based mechanism | |
US10205706B2 (en) | System and method for programmable network based encryption in software defined networks | |
US10298493B2 (en) | Processing route data | |
US10104050B2 (en) | Authenticated group context in transitive IP network domains | |
WO2016082275A1 (zh) | 一种基于逐跳监督的bgp路由验证方法 | |
US11362837B2 (en) | Generating trustable RPL messages having root-signed rank values | |
US9647876B2 (en) | Linked identifiers for multiple domains | |
CN103188351A (zh) | IPv6 环境下IPSec VPN 通信业务处理方法与系统 | |
CN111726368B (zh) | 一种基于SRv6的域间源地址验证的方法 | |
JP2016051921A (ja) | 通信システム | |
CN114884873A (zh) | 一种转发路径的确定方法及装置 | |
US20190068762A1 (en) | Packet Parsing Method and Device | |
CN106209401B (zh) | 一种传输方法及装置 | |
JP2018174550A (ja) | 通信システム | |
CN116866014A (zh) | 通信方法及装置 | |
Yang et al. | CLID: A general approach to validate security policies in a dynamic network | |
Bernier et al. | Inter-Domain Routing Internet-Draft Intended status: Standards Track G. Dawra, Ed. Expires: May 3, 2018 C. Filsfils Cisco Systems | |
Gredler et al. | North-Bound Distribution of Link-State and TE Information using BGP draft-ietf-idr-ls-distribution-13 | |
Dhody et al. | RFC 7897: Domain Subobjects for the Path Computation Element Communication Protocol (PCEP) |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |