CN105282102B - 数据流处理方法和系统以及IPv6数据处理设备 - Google Patents
数据流处理方法和系统以及IPv6数据处理设备 Download PDFInfo
- Publication number
- CN105282102B CN105282102B CN201410302969.4A CN201410302969A CN105282102B CN 105282102 B CN105282102 B CN 105282102B CN 201410302969 A CN201410302969 A CN 201410302969A CN 105282102 B CN105282102 B CN 105282102B
- Authority
- CN
- China
- Prior art keywords
- ipv6
- upstream
- address
- data flow
- data
- 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.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开一种数据流处理方法和系统以及IPv6数据处理设备,涉及IP领域。本发明实施例对于具有对应关系的上下行数据,如同一数据流的上下行数据使用同一流标签,这样通过IPv6固定包头中的流标签以及源IPv6地址和目的IPv6地址就可以识别出具有对应关系的上下行数据,如识别出一个IPv6数据流的上下行数据,不需要利用IPv6扩展包头中的端口信息进行识别,因此,提高了IPv6数据流的识别效率,特别是提高了同一IPv6数据流的上下行数据的识别效率。
Description
技术领域
本发明涉及IP(Internet Protocol,互联网协议)领域,特别涉及一种数据流处理方法和系统以及IPv6数据处理设备。
背景技术
在IPv6(Internet Protocol Version6,互联网协议版本6)中,流标签(FlowLabel)是IPv6包头中的一个关键字段。目前,针对同一数据流不同方向的数据分别采用不同的流标签进行标识,因此,流标签能够标识单向的数据流,仅通过流标签很难确定是不同的数据流,还是同一数据流不同方向的数据。
为了识别同一数据流不同方向的数据,可以采用五元组的识别方法。对于IPv4(Internet Protocol Version4,互联网协议版本4)来说,五元组信息均位于IPv4包头中,路由器通过匹配五元组可以很容易地识别出同一数据流不同方向的数据。但是,对于IPv6来说,由于TCP(Transmission Control Protocol,传输控制协议)/UDP(User DatagramProtocol,用户数据包协议)端口数据位于IPv6的扩展包头中,因此,基于五元组来识别数据流的效率比较低。
因此,需要提出一种适用于IPv6的数据流识别方案,以提高数据流特别是同一数据流不同方向的数据的识别效率。
发明内容
本发明实施例所要解决的一个技术问题是:解决IPv6数据流的识别效率问题,特别是针对同一IPv6数据流不同方向的数据的识别效率问题。
根据本发明的一个方面,提出一种数据流处理方法,包括:IPv6数据接收端接收来自IPv6数据发起端的上行数据流,所述上行数据流中携带有流标签;所述IPv6数据接收端提取并存储所述上行数据流中的流标签;所述IPv6数据接收端将所述流标签添加到由所述IPv6数据接收端发送到所述IPv6数据发起端的下行数据流中。
在一个实施例中,所述IPv6数据接收端将所述流标签添加到由所述IPv6数据接收端发送到所述IPv6数据发起端的下行数据流中包括:所述IPv6数据接收端通过匹配下行数据流和上行数据流的五元组信息确定与所述下行数据流对应的上行数据流;IPv6数据接收端将与所述下行数据流对应的上行数据流的流标签添加到所述下行数据流中。
在一个实施例中,IPv6数据接收端通过匹配下行数据流和上行数据流的五元组信息确定与所述下行数据流对应的上行数据流包括:
当所述IPv6数据发起端为源IPv6主机,所述IPv6数据接收端为目的IPv6主机时,目的IPv6主机通过匹配下行数据流和上行数据流的IPv6五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;
或者,
当所述IPv6数据发起端为IPv6主机,所述IPv6数据接收端为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,NAT64设备通过匹配下行数据流和上行数据流的IPv4五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv4五元组信息包括源IPv6地址经NAT64设备映射后的IPv4地址、源端口经NAT64设备映射后的端口、传输层协议号、目的IPv4地址、目的端口;
或者,
当所述IPv6数据发起端为用户侧设备CPE,所述IPv6数据接收端为地址族转换路由器AFTR时,AFTR通过匹配下行数据流和上行数据流内层的IPv4五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv4五元组信息包括源IPv4地址经AFTR映射后的公网IPv4地址、源端口经AFTR映射后的端口、传输层协议号、目的IPv4地址、目的端口。
在一个实施例中,所述IPv6数据发起端可以采用以下方法生成流标签:
当所述IPv6数据发起端为源IPv6主机,所述IPv6数据接收端为目的IPv6主机时,源IPv6主机根据所述上行数据流的IPv6五元组信息随机生成所述流标签,其中,所述上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;
或者,
当所述IPv6数据发起端为IPv6主机,所述IPv6数据接收端为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,IPv6主机根据所述上行数据流的IPv6五元组信息随机生成所述流标签,其中,所述上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv4地址经NAT64设备映射后的IPv6地址、目的端口经NAT64设备映射后的端口;
或者,
当所述IPv6数据发起端为用户侧设备CPE,所述IPv6数据接收端为地址族转换路由器AFTR时,CPE根据所述上行数据流内层的IPv4五元组信息随机生成所述流标签,其中,所述上行数据流内层的IPv4五元组信息包括源IPv4地址、源端口、传输层协议号、目的IPv4地址、目的端口。
在一个实施例中,网络设备可以根据所述流标签以及源IPv6地址和目的IPv6地址识别具有对应关系(如属于同一IPv6数据流)的上行数据流和下行数据流,将具有对应关系(如属于同一IPv6数据流)的上行数据流和下行数据流均衡到同一条链路。
根据本发明的再一个方面,提出一种IPv6数据处理设备,包括:数据流接收模块,用于接收来自IPv6数据发起端的上行数据流,所述上行数据流中携带有流标签;流标签存储模块,用于提取并存储所述上行数据流中的流标签;流标签处理模块,用于将所述流标签添加到由所述IPv6数据接收端发送到所述IPv6数据发起端的下行数据流中。
在一个实施例中,流标签处理模块,包括:数据流关联单元,用于通过匹配下行数据流和上行数据流的五元组信息确定与所述下行数据流对应的上行数据流;流标签处理单元,用于将与所述下行数据流对应的上行数据流的流标签添加到所述下行数据流中。
在一个实施例中,数据流关联单元,具体用于:
当所述IPv6数据发起端为源IPv6主机,所述IPv6数据处理设备为目的IPv6主机时,通过匹配下行数据流和上行数据流的IPv6五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;
或者,
当所述IPv6数据发起端为IPv6主机,所述IPv6数据处理设备为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,通过匹配下行数据流和上行数据流的IPv4五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv4五元组信息包括源IPv6地址经NAT64设备映射后的IPv4地址、源端口经NAT64设备映射后的端口、传输层协议号、目的IPv4地址、目的端口;
或者,
当所述IPv6数据发起端为用户侧设备CPE,所述IPv6数据处理设备为地址族转换路由器AFTR时,通过匹配下行数据流和上行数据流内层的IPv4五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv4五元组信息包括源IPv4地址经AFTR映射后的公网IPv4地址、源端口经AFTR映射后的端口、传输层协议号、目的IPv4地址、目的端口。
在一个实施例中,所述IPv6数据处理设备可以为IPv6主机、IPv6与IPv4之间的网络地址与协议转换NAT64设备、或者地址族转换路由器AFTR。
根据本发明的另一个方面,提出一种数据流处理系统,包括:第一IPv6数据处理设备和第二IPv6数据处理设备;
其中,所述第一IPv6数据处理设备包括流标签生成模块,用于根据上行数据流生成流标签;以及,数据发送模块,用于将所述流标签添加到所述上行数据流后传送给所述第二IPv6数据处理设备;
其中,所述第二IPv6数据处理设备如前述的IPv6数据处理设备。
在一个实施例中,流标签生成模块具体用于:
当所述第一IPv6数据处理设备为源IPv6主机,所述第二IPv6数据处理设备为目的IPv6主机时,根据所述上行数据流的IPv6五元组信息随机生成所述流标签,其中,所述上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;
或者,
当所述第一IPv6数据处理设备为IPv6主机,所述第二IPv6数据处理设备为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,根据所述上行数据流的IPv6五元组信息随机生成所述流标签,其中,所述上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv4地址经NAT64设备映射后的IPv6地址、目的端口经NAT64设备映射后的端口;
或者,
当所述第一IPv6数据处理设备为用户侧设备CPE,所述第二IPv6数据处理设备为地址族转换路由器AFTR时,根据所述上行数据流内层的IPv4五元组信息随机生成所述流标签,其中,所述上行数据流内层的IPv4五元组信息包括源IPv4地址、源端口、传输层协议号、目的IPv4地址、目的端口。
在一个实施例中,该系统还包括:网络设备,用于根据所述流标签以及源IPv6地址和目的IPv6地址识别属于同一IPv6数据流具有对应关系(如属于同一IPv6数据流)的上行数据流和下行数据流;将具有对应关系(如属于同一IPv6数据流)的上行数据流和下行数据流均衡到同一条链路。
本发明实施例对于具有对应关系的上下行数据,如同一数据流的上下行数据使用同一流标签,这样通过IPv6固定包头中的流标签以及源IPv6地址和目的IPv6地址就可以识别出具有对应关系的上下行数据,如识别出一个IPv6数据流的上下行数据,不需要利用IPv6扩展包头中的端口信息进行识别,因此,提高了IPv6数据流的识别效率,特别是提高了具有对应关系的上下行数据的识别效率,如提高了同一IPv6数据流的上下行数据的识别效率。
另外,在识别出具有对应关系的上下行数据后,如识别出一个IPv6数据流的上下行数据后,可以方便地对具有对应关系的上下行数据进行关联控制,例如,可以将同一数据流的上下行流量均衡到同一条链路,提升网络流量识别设备的识别精度,并且,对高优先级用户来说,无论通信对端是高优先级用户还是低优先级用户,上下行流量均会得到高级别的保障,反之,对低优先级用户来说,无论通信对端是高优先级用户还是低优先级用户,上下行流量会得到低级别的保障,从而实现高低级别用户的差异化保障。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明数据流处理方法一个实施例的流程示意图。
图2为本发明数据流处理方法再一个实施例的流程示意图。
图3为DS-Lite网络环境示意图。
图4为NAT64网络环境示意图。
图5为端到端IPv6网络环境示意图。
图6为本发明数据流处理系统一个实施例的结构示意图。
图7为本发明数据流处理系统的其中一个IPv6数据处理设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为了提高IPv6数据流的识别效率,特别是提高同一IPv6数据流的上下行数据的识别效率,本发明提出对于具有对应关系的上下行数据,如同一数据流的上下行数据使用同一流标签,这样通过IPv6固定包头中的流标签以及源IPv6地址和目的IPv6地址就可以识别出具有对应关系的上下行数据,如识别出一个IPv6数据流的上下行数据,不需要利用IPv6扩展包头中的端口信息进行识别,因此,提高了IPv6数据流的识别效率,特别提高了具有对应关系的上下行数据的识别效率,如提高了同一IPv6数据流的上下行数据的识别效率。
图1为本发明数据流处理方法一个实施例的流程示意图。如图1所示,本实施例的方法包括:
步骤S102,IPv6数据接收端接收来自IPv6数据发起端的上行数据流,上行数据流中携带有流标签;
步骤S104,IPv6数据接收端提取并存储上行数据流中的流标签;
步骤S106,IPv6数据接收端将流标签添加到由IPv6数据接收端发送到IPv6数据发起端的下行数据流中。
作为上下行数据流的其中一种对应关系,如果下行数据流和上行数据流的五元组信息匹配,则认为下行数据流和上行数据流属于同一数据流,否则,如果不匹配,则认为下行数据流和上行数据流是两个独立的数据流。针对同一数据流的流标签处理方法,参见图2所示的实施例。
图2为本发明数据流处理方法再一个实施例的流程示意图。如图2所示,步骤S106的一种实现方法例如包括:
步骤S2062,IPv6数据接收端通过匹配下行数据流和上行数据流的五元组信息确定与下行数据流对应的上行数据流。
其中,五元组信息包括源地址、源端口、传输层协议号、目的地址、目的端口。在本发明中,下行数据流和上行数据流的五元组信息匹配是指:上行数据流的源地址、源端口与下行数据流的目的地址、目的端口相同,上行数据流的目的地址、目的端口与下行数据流的源地址、源端口相同,上行数据流与下行数据流的传输层协议号相同。
步骤S2064,IPv6数据接收端将与下行数据流对应的上行数据流的流标签添加到下行数据流中。即,具有对应关系的上行数据流使用同一流标签,如,同一数据流的上下行数据使用同一流标签。
本发明实施例对于具有对应关系的上下行数据,如同一数据流的上下行数据使用同一流标签,这样通过IPv6固定包头中的流标签以及源IPv6地址和目的IPv6地址就可以识别出具有对应关系的上下行数据,如识别出一个IPv6数据流的上下行数据,不需要利用IPv6扩展包头中的端口信息进行识别,因此,提高了IPv6数据流的识别效率,特别是提高了具有对应关系的上下行数据的识别效率,如提高了同一IPv6数据流的上下行数据的识别效率。
另外,在识别出具有对应关系的上下行数据后,如识别出一个IPv6数据流的上下行数据后,可以对具有对应关系的上下行数据进行关联控制,例如,可以将同一数据流的上下行流量均衡到同一条链路,提升网络流量识别设备的识别精度,并且,对高优先级用户来说,无论通信对端是高优先级用户还是低优先级用户,上下行流量均会得到高级别的保障,反之,对低优先级用户来说,无论通信对端是高优先级用户还是低优先级用户,上下行流量会得到低级别的保障,从而实现高低级别用户的差异化保障。
本发明提出的数据流处理方法可以应用于端到端IPv6网络环境、NAT64(IPv6与IPv4之间的网络地址与协议转换)网络环境、DS-Lite(轻型双栈)网络环境中。下面分别针对每种网络环境具体说明数据流处理过程。
图3为DS-Lite网络环境示意图。如图3所示,IPv4主机(IPv4Host1\2\n)位于CPE(用户侧设备)后面,CPE与AFTR(地址族转换路由器)之间是纯IPv6网络,AFTR上联的是传统的IPv4网络,IPv4网络的用户例如可以是IPv4CP(内容提供商)或者IPv4主机。其中,IPv6数据发起端为CPE,IPv6数据接收端为AFTR,所有的IPv4数据均被封装在CPE与AFTR之间的IPv6隧道中。
在DS-Lite网络环境中,数据流处理过程如下:
假设用户IPv4Host1要访问IPv4CP,Host1通过DNS(域名系统)请求获取到IPv4CP的公网IPv4地址,Host1就发出源地址为IPv4-Host1,目标地址为IPv4-CP的IPv4数据流(IPv4上行数据流)。
IPv4上行数据流到达CPE,由CPE根据IPv4上行数据流的IPv4五元组信息,即,源IPv4地址(IPv4-Host1)、源端口、传输层协议号、目的IPv4地址(IPv4-CP)、目的端口,随机生成该IPv4上行数据流外层的IPv6Flow Label值,不同的IPv4五元组信息对应不同的IPv6Flow Label,IPv6Flow Label的取值要尽可能随机化,在取值范围内广泛均衡分布,因此,随机生成算法例如可以采用哈希算法。CPE对IPv4上行数据流进行IPv6封装,将IPv4上行数据流封装在源地址是CPE IPv6地址,目的地址是AFTR IPv6地址的IPv6数据包中,并在IPv6数据包的固定包头的流标签域嵌入IPv6Flow Label值,然后通过纯IPv6网络转发给AFTR。
IPv6上行数据流到达AFTR,AFTR进行IPv6解封装以及NAT转换(源IPv4地址经AFTR映射为公网IPv4地址、源端口经AFTR映射后的端口),然后通过IPv4网络转发给IPv4CP。AFTR将IPv6上行数据流的信息记录到映射表(在现有的映射表的基础上增加流标签列)的相应表项。映射表的表项内容例如包括:流标签、源IPv4地址经AFTR映射后的公网IPv4地址、源端口经AFTR映射后的端口、传输层协议号、目的IPv4地址、目的端口,以及,源IPv4地址(IPv4-Host1)、源端口、源IPv6地址(CPE IPv6地址)等,但不限于此。映射表的部分表项内容如表1所示:
表1
从IPv4CP返回的下行IPv4数据流到达AFTR,AFTR通过匹配下行数据流和上行数据流内层的IPv4五元组信息确定与下行数据流对应(如属于同一数据流)的上行数据流,其中,IPv4五元组信息包括源IPv4地址经AFTR映射后的公网IPv4地址、源端口经AFTR映射后的端口、传输层协议号、目的IPv4地址、目的端口。通过匹配找到对应(如属于同一数据流)的上行数据流的记录后,根据记录中的外层源IPv6地址、源IPv4地址、源端口以及流标签的值,对下行IPv4数据流进行NAT转换和IPv6封装,并将记录中的流标签的值作为封装后的下行IPv6数据流的流标签(可以将记录中的流标签拷贝到下行IPv6数据流的固定包头中的流标签域),然后下发给CPE。
IPv6网络中的网络设备(如路由器设备等)可以根据IPv6固定包头中的字段(IPv6源地址、目的地址、IPv6Flow Label)对同一IPv6流的上下行数据进行识别、关联分析或者控制等处理,提升运营商对IPv6数据流的管控能力。
图4为NAT64网络环境示意图。如图4所示,IPv6主机(IPv6Host)与NAT64(IPv6与IPv4之间的网络地址与协议转换)设备是IPv6网络,NAT64设备上联的是传统的IPv4网络IPv4网络的用户例如可以是IPv4CP(内容提供商)或者IPv4主机。其中,IPv6数据发起端为IPv6主机,IPv6数据接收端为NAT64设备。
在NAT64网络环境中,数据流处理过程如下:
假设用户IPv6Host要访问IPv4CP,IPv6Host通过DNS(域名系统)请求获取到IPv4CP映射后的IPv6地址(设为IPv6’-CP)和端口,IPv6Host根据上行数据流的IPv6五元组信息随机生成流标签,其中,上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv4地址经NAT64设备映射后的IPv6地址、目的端口经NAT64设备映射后的端口,将生成的流标签嵌入IPv6上行数据流的固定包头的流标签域,IPv6Host发出源地址为IPv6-Host,目标地址为IPv6’-CP的IPv6数据流(IPv6上行数据流)。
IPv6上行数据流通过IPv6网络到达NAT64设备,NAT64设备将IPv6数据流转换成IPv4数据流,然后通过IPv4网络转发给IPv4CP。NAT64设备将IPv6上行数据流的信息记录到映射表(在现有的映射表的基础上增加流标签列)的相应表项。映射表的表项内容例如包括:流标签、源IPv6地址(IPv6-Host)、源端口、源IPv6地址经NAT64设备映射后的IPv4地址(设为IPv4’-Host)、源端口经NAT64设备映射后的端口、传输层协议号、目的IPv4地址(设为IPv4-CP)、目的端口、目的IPv4地址经NAT64设备映射后的IPv6地址(IPv6’-CP)、目的端口经NAT64设备映射后的端口等,但不限于此。映射表的部分表项内容如表2所示:
表2
从IPv4CP返回的下行IPv4数据流到达NAT64设备,NAT64设备通过匹配下行数据流和上行数据流的IPv4五元组信息确定与下行数据流对应(如属于同一数据流)的上行数据流,其中,IPv4五元组信息包括:源IPv6地址经NAT64设备映射后的IPv4地址、源端口经NAT64设备映射后的端口、传输层协议号、目的IPv4地址、目的端口。NAT64设备通过匹配找到对应(如属于同一数据流)的上行数据流的记录后,根据记录中的源IPv6地址、源端口、目的IPv4地址经NAT64设备映射后的IPv6地址、目的端口经NAT64设备映射后的端口以及流标签的值,对下行IPv4数据流进行NAT转换和IPv6封装,并将记录中的流标签的值作为封装后的下行IPv6数据流的流标签(可以将记录中的流标签拷贝到下行IPv6数据流的固定包头中的流标签域),然后下发给IPv6Host。
IPv6网络中的网络设备(如路由器设备等)可以根据IPv6固定包头中的字段(IPv6源地址、目的地址、IPv6Flow Label)对同一IPv6流的上下行数据进行识别、关联分析或者控制等处理,提升运营商对IPv6数据流的管控能力。
图5为端到端IPv6网络环境示意图。如图5所示,两个IPv6主机(设为IPv6Host1和IPv6Host2)通过IPv6网络进行通信。
在端到端IPv6网络环境中,数据流处理过程如下:
假设用户IPv6Host1要访问IPv6Host2,IPv6Host1根据上行数据流的IPv6五元组信息随机生成流标签(IPv6Flow Label),其中,上行数据流的IPv6五元组信息包括:源IPv6地址(设为IPv6-Host1)、源端口、传输层协议号、目的IPv6地址(设为IPv6-Host2)、目的端口。IPv6Flow Label的取值要尽可能随机化,在取值范围内广泛均衡分布,因此,随机生成算法例如可以采用哈希算法。在IPv6数据包的固定包头的流标签域嵌入IPv6Flow Label值,然后通过IPv6网络转发给IPv6Host2。
上行IPv6数据流到达IPv6Host2,IPv6Host2记录IPv6五元组信息。对于IPv6Host2发出的下行IPv6数据流,IPv6Host2通过匹配下行数据流和上行数据流的IPv6五元组信息确定与下行数据流对应(如属于同一数据流)的上行数据流,其中,IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口。通过匹配找到对应(如属于同一数据流)的上行IPv6数据流的记录后,将记录中的流标签的值作为下行IPv6数据流的流标签(可以将记录中的流标签拷贝到下行IPv6数据流的固定包头中的流标签域),然后下发给IPv6Host1。
IPv6网络中的网络设备(如路由器设备等)可以根据IPv6固定包头中的字段(IPv6源地址、目的地址、IPv6Flow Label)对同一IPv6流的上下行数据进行识别、关联分析或者控制等处理,提升运营商对IPv6数据流的管控能力。
根据本发明的另一个方面,提出一种数据流处理系统,如图6所示,数据流处理系统包括:第一IPv6数据处理设备602和第二IPv6数据处理设备604。其中,第一IPv6数据处理设备602的数据流处理过程可以参考前述的IPv6数据发起端,第二IPv6数据处理设备604的数据流处理过程可以参考前述的IPv6数据接收端。
在一个实施例中,第一IPv6数据处理设备602包括流标签生成模块,用于根据上行数据流生成流标签;以及,数据发送模块,用于将流标签添加到上行数据流后传送给第二IPv6数据处理设备。
在一个实施例中,流标签生成模块具体用于:当第一IPv6数据处理设备为源IPv6主机,第二IPv6数据处理设备为目的IPv6主机时,根据上行数据流的IPv6五元组信息随机生成流标签,其中,上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;随机生成算法例如可以采用哈希算法。
在一个实施例中,流标签生成模块具体用于:当第一IPv6数据处理设备为IPv6主机,第二IPv6数据处理设备为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,根据上行数据流的IPv6五元组信息随机生成流标签,其中,上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv4地址经NAT64设备映射后的IPv6地址、目的端口经NAT64设备映射后的端口。随机生成算法例如可以采用哈希算法。
在一个实施例中,流标签生成模块具体用于:当第一IPv6数据处理设备为用户侧设备CPE,第二IPv6数据处理设备为地址族转换路由器AFTR时,根据上行数据流内层的IPv4五元组信息随机生成流标签,其中,上行数据流内层的IPv4五元组信息包括源IPv4地址、源端口、传输层协议号、目的IPv4地址、目的端口。随机生成算法例如可以采用哈希算法。
上述流标签的随机生成方法,可以使流标签的取值要尽可能随机化,在取值范围内广泛均衡分布。
在一个实施例中,该系统还包括:网络设备,用于根据流标签以及源IPv6地址和目的IPv6地址识别具有对应关系(属于同一IPv6数据流)的上行数据流和下行数据流;将具有对应关系(属于同一IPv6数据流)的上行数据流和下行数据流均衡到同一条链路。
网络设备对数据流的关联控制,可以提升网络流量的识别精度,并且,对高优先级用户来说,无论通信对端是高优先级用户还是低优先级用户,上下行流量均会得到高级别的保障,反之,对低优先级用户来说,无论通信对端是高优先级用户还是低优先级用户,上下行流量会得到低级别的保障,从而实现高低级别用户的差异化保障。
在一个实施例中,如图7所示,第二IPv6数据处理设备604包括:数据流接收模块702,用于接收来自IPv6数据发起端的上行数据流,上行数据流中携带有流标签;流标签存储模块704,用于提取并存储上行数据流中的流标签;流标签处理模块706,用于将流标签添加到由IPv6数据接收端发送到IPv6数据发起端的下行数据流中。
在一个实施例中,流标签处理模块706,包括:
数据流关联单元,用于通过匹配下行数据流和上行数据流的五元组信息确定与所述下行数据流对应的上行数据流;以及,
流标签处理单元,用于将与所述下行数据流对应的上行数据流的流标签添加到所述下行数据流中。
在一个实施例中,数据流关联单元具体用于:当IPv6数据发起端为源IPv6主机,IPv6数据处理设备为目的IPv6主机时,通过匹配下行数据流和上行数据流的IPv6五元组信息确定与下行数据流属于同一数据流的上行数据流,其中,IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口。
在一个实施例中,数据流关联单元具体用于:当IPv6数据发起端为IPv6主机,IPv6数据处理设备为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,通过匹配下行数据流和上行数据流的IPv4五元组信息确定与下行数据流属于同一数据流的上行数据流,其中,IPv4五元组信息包括源IPv6地址经NAT64设备映射后的IPv4地址、源端口经NAT64设备映射后的端口、传输层协议号、目的IPv4地址、目的端口。
在一个实施例中,数据流关联单元具体用于:当IPv6数据发起端为用户侧设备CPE,IPv6数据处理设备为地址族转换路由器AFTR时,通过匹配下行数据流和上行数据流内层的IPv4五元组信息确定与下行数据流属于同一数据流的上行数据流,其中,IPv4五元组信息包括源IPv4地址经AFTR映射后的公网IPv4地址、源端口经AFTR映射后的端口、传输层协议号、目的IPv4地址、目的端口。
在一个实施例中,IPv6数据处理设备可以为IPv6主机、IPv6与IPv4之间的网络地址与协议转换NAT64设备、或者地址族转换路由器AFTR。
上述第二IPv6数据处理设备对于具有对应关系的上下行数据,如同一数据流的上下行数据使用同一流标签,这样通过IPv6固定包头中的流标签以及源IPv6地址和目的IPv6地址就可以识别出具有对应关系的上下行数据,如识别出一个IPv6数据流的上下行数据,不需要利用IPv6扩展包头中的端口信息进行识别,因此,提高了IPv6数据流的识别效率,特别提高了具有对应关系的上下行数据的识别效率,如提高了同一IPv6数据流的上下行数据的识别效率。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据流处理方法,包括:
IPv6数据接收端接收来自IPv6数据发起端的上行数据流,所述上行数据流中携带有流标签;
所述IPv6数据接收端提取并存储所述上行数据流中的流标签;
所述IPv6数据接收端将所述流标签添加到由所述IPv6数据接收端发送到所述IPv6数据发起端的下行数据流中;
网络设备根据所述流标签以及源IPv6地址和目的IPv6地址识别具有对应关系的上行数据流和下行数据流;
网络设备将具有对应关系的上行数据流和下行数据流均衡到同一条链路,以便为具有对应关系的上行数据流和下行数据流提供一致的服务保障。
2.根据权利要求1所述的方法,其特征在于,所述IPv6数据接收端将所述流标签添加到由所述IPv6数据接收端发送到所述IPv6数据发起端的下行数据流中包括:
所述IPv6数据接收端通过匹配下行数据流和上行数据流的五元组信息确定与所述下行数据流对应的上行数据流;
所述IPv6数据接收端将与所述下行数据流对应的上行数据流的流标签添加到所述下行数据流中。
3.根据权利要求2所述的方法,其特征在于,所述IPv6数据接收端通过匹配下行数据流和上行数据流的五元组信息确定与所述下行数据流对应的上行数据流包括:
当所述IPv6数据发起端为源IPv6主机,所述IPv6数据接收端为目的IPv6主机时,目的IPv6主机通过匹配下行数据流和上行数据流的IPv6五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;
或者,
当所述IPv6数据发起端为IPv6主机,所述IPv6数据接收端为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,NAT64设备通过匹配下行数据流和上行数据流的IPv4五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv4五元组信息包括源IPv6地址经NAT64设备映射后的IPv4地址、源端口经NAT64设备映射后的端口、传输层协议号、目的IPv4地址、目的端口;
或者,
当所述IPv6数据发起端为用户侧设备CPE,所述IPv6数据接收端为地址族转换路由器AFTR时,AFTR通过匹配下行数据流和上行数据流内层的IPv4五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv4五元组信息包括源IPv4地址经AFTR映射后的公网IPv4地址、源端口经AFTR映射后的端口、传输层协议号、目的IPv4地址、目的端口。
4.根据权利要求1所述的方法,其特征在于,还包括:所述IPv6数据发起端采用以下方法生成流标签:
当所述IPv6数据发起端为源IPv6主机,所述IPv6数据接收端为目的IPv6主机时,源IPv6主机根据所述上行数据流的IPv6五元组信息随机生成所述流标签,其中,所述上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;
或者,
当所述IPv6数据发起端为IPv6主机,所述IPv6数据接收端为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,IPv6主机根据所述上行数据流的IPv6五元组信息随机生成所述流标签,其中,所述上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv4地址经NAT64设备映射后的IPv6地址、目的端口经NAT64设备映射后的端口;
或者,
当所述IPv6数据发起端为用户侧设备CPE,所述IPv6数据接收端为地址族转换路由器AFTR时,CPE根据所述上行数据流内层的IPv4五元组信息随机生成所述流标签,其中,所述上行数据流内层的IPv4五元组信息包括源IPv4地址、源端口、传输层协议号、目的IPv4地址、目的端口。
5.一种IPv6数据处理设备,包括:
数据流接收模块,用于接收来自IPv6数据发起端的上行数据流,所述上行数据流中携带有流标签;
流标签存储模块,用于提取并存储所述上行数据流中的流标签;
流标签处理模块,用于将所述流标签添加到由所述IPv6数据接收端发送到所述IPv6数据发起端的下行数据流中,使得网络设备根据所述流标签以及源IPv6地址和目的IPv6地址识别具有对应关系的上行数据流和下行数据流,将具有对应关系的上行数据流和下行数据流均衡到同一条链路,以便为具有对应关系的上行数据流和下行数据流提供一致的服务保障。
6.根据权利要求5所述的IPv6数据处理设备,其特征在于,所述流标签处理模块,包括:
数据流关联单元,用于通过匹配下行数据流和上行数据流的五元组信息确定与所述下行数据流对应的上行数据流;
流标签处理单元,用于将与所述下行数据流对应的上行数据流的流标签添加到所述下行数据流中。
7.根据权利要求6所述的IPv6数据处理设备,其特征在于,所述数据流关联单元,具体用于:
当所述IPv6数据发起端为源IPv6主机,所述IPv6数据处理设备为目的IPv6主机时,通过匹配下行数据流和上行数据流的IPv6五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;
或者,
当所述IPv6数据发起端为IPv6主机,所述IPv6数据处理设备为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,通过匹配下行数据流和上行数据流的IPv4五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv4五元组信息包括源IPv6地址经NAT64设备映射后的IPv4地址、源端口经NAT64设备映射后的端口、传输层协议号、目的IPv4地址、目的端口;
或者,
当所述IPv6数据发起端为用户侧设备CPE,所述IPv6数据处理设备为地址族转换路由器AFTR时,通过匹配下行数据流和上行数据流内层的IPv4五元组信息确定与所述下行数据流对应的上行数据流,其中,IPv4五元组信息包括源IPv4地址经AFTR映射后的公网IPv4地址、源端口经AFTR映射后的端口、传输层协议号、目的IPv4地址、目的端口。
8.根据权利要求5所述的IPv6数据处理设备,其特征在于,
所述IPv6数据处理设备为IPv6主机、IPv6与IPv4之间的网络地址与协议转换NAT64设备、或者地址族转换路由器AFTR。
9.一种数据流处理系统,包括:第一IPv6数据处理设备和第二IPv6数据处理设备以及网络设备;
其中,所述第一IPv6数据处理设备包括流标签生成模块,用于根据上行数据流生成流标签;以及,数据发送模块,用于将所述流标签添加到所述上行数据流后传送给所述第二IPv6数据处理设备;
其中,所述第二IPv6数据处理设备如权利要求5-8任一项所述;
其中,所述网络设备,用于根据所述流标签以及源IPv6地址和目的IPv6地址识别具有对应关系的上行数据流和下行数据流;将具有对应关系的上行数据流和下行数据流均衡到同一条链路,以便为具有对应关系的上行数据流和下行数据流提供一致的服务保障。
10.根据权利要求9所述的系统,其特征在于,所述流标签生成模块,具体用于:
当所述第一IPv6数据处理设备为源IPv6主机,所述第二IPv6数据处理设备为目的IPv6主机时,根据所述上行数据流的IPv6五元组信息随机生成所述流标签,其中,所述上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv6地址、目的端口;
或者,
当所述第一IPv6数据处理设备为IPv6主机,所述第二IPv6数据处理设备为IPv6与IPv4之间的网络地址与协议转换NAT64设备时,根据所述上行数据流的IPv6五元组信息随机生成所述流标签,其中,所述上行数据流的IPv6五元组信息包括源IPv6地址、源端口、传输层协议号、目的IPv4地址经NAT64设备映射后的IPv6地址、目的端口经NAT64设备映射后的端口;
或者,
当所述第一IPv6数据处理设备为用户侧设备CPE,所述第二IPv6数据处理设备为地址族转换路由器AFTR时,根据所述上行数据流内层的IPv4五元组信息随机生成所述流标签,其中,所述上行数据流内层的IPv4五元组信息包括源IPv4地址、源端口、传输层协议号、目的IPv4地址、目的端口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410302969.4A CN105282102B (zh) | 2014-06-30 | 2014-06-30 | 数据流处理方法和系统以及IPv6数据处理设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410302969.4A CN105282102B (zh) | 2014-06-30 | 2014-06-30 | 数据流处理方法和系统以及IPv6数据处理设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105282102A CN105282102A (zh) | 2016-01-27 |
CN105282102B true CN105282102B (zh) | 2019-03-15 |
Family
ID=55150441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410302969.4A Active CN105282102B (zh) | 2014-06-30 | 2014-06-30 | 数据流处理方法和系统以及IPv6数据处理设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105282102B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111083792B (zh) * | 2018-10-22 | 2021-09-07 | 华为技术有限公司 | WiFi网络中的数据传输方法、装置及设备 |
CN111371909B (zh) * | 2018-12-25 | 2022-04-26 | 深圳市中兴微电子技术有限公司 | 实现4in6 DS Lite数据流转发方法、系统 |
CN114697271A (zh) * | 2020-12-31 | 2022-07-01 | 华为技术有限公司 | 确定数据流标签的方法、装置以及相关设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1722524A1 (en) * | 2005-05-11 | 2006-11-15 | Samsung Electronics Co., Ltd. | Method and apparatus for processing packet in IPv4/IPv6 combination network |
CN102158514A (zh) * | 2010-02-11 | 2011-08-17 | 中兴通讯股份有限公司 | 一种通信系统以及关联业务策略信息的方法 |
CN102244688A (zh) * | 2010-05-11 | 2011-11-16 | 华为技术有限公司 | 一种报文转发的方法、装置及系统 |
CN102938736A (zh) * | 2012-11-20 | 2013-02-20 | 杭州迪普科技有限公司 | 一种实现IPv4报文穿越IPv6网络的方法和设备 |
CN103348740A (zh) * | 2011-09-29 | 2013-10-09 | 华为技术有限公司 | 一种接入处理方法、设备和系统 |
CN103428303A (zh) * | 2012-05-22 | 2013-12-04 | 中兴通讯股份有限公司 | IPv6主机访问IPv4服务器的方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1521405A1 (en) * | 2003-09-30 | 2005-04-06 | Sony International (Europe) GmbH | Bidirectional QoS reservation within an in-band signaling mechanism |
US7941512B2 (en) * | 2004-12-13 | 2011-05-10 | Cisco Technology, Inc. | Use of IPv6 in access networks |
CN102025593B (zh) * | 2009-09-21 | 2013-04-24 | 中国移动通信集团公司 | 分布式用户接入系统及方法 |
-
2014
- 2014-06-30 CN CN201410302969.4A patent/CN105282102B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1722524A1 (en) * | 2005-05-11 | 2006-11-15 | Samsung Electronics Co., Ltd. | Method and apparatus for processing packet in IPv4/IPv6 combination network |
CN102158514A (zh) * | 2010-02-11 | 2011-08-17 | 中兴通讯股份有限公司 | 一种通信系统以及关联业务策略信息的方法 |
CN102244688A (zh) * | 2010-05-11 | 2011-11-16 | 华为技术有限公司 | 一种报文转发的方法、装置及系统 |
CN103348740A (zh) * | 2011-09-29 | 2013-10-09 | 华为技术有限公司 | 一种接入处理方法、设备和系统 |
CN103428303A (zh) * | 2012-05-22 | 2013-12-04 | 中兴通讯股份有限公司 | IPv6主机访问IPv4服务器的方法及系统 |
CN102938736A (zh) * | 2012-11-20 | 2013-02-20 | 杭州迪普科技有限公司 | 一种实现IPv4报文穿越IPv6网络的方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN105282102A (zh) | 2016-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105871565B (zh) | 用于组播转发的方法及装置 | |
US10205657B2 (en) | Packet forwarding in data center network | |
JP2015523788A5 (zh) | ||
US9276853B2 (en) | Hashing of network packet flows for efficient searching | |
CN107046506B (zh) | 一种报文处理方法、流分类器和业务功能实例 | |
CN102136989B (zh) | 报文传输的方法、系统和设备 | |
US8724630B2 (en) | Method and system for implementing network intercommunication | |
WO2013155959A1 (en) | Accessing ip network and edge devices | |
CN109714274B (zh) | 一种获取对应关系的方法和路由设备 | |
WO2016045608A1 (en) | Processing a flow entry in vxlan | |
CN102333039B (zh) | 一种转发报文的方法、生成表项的方法及装置 | |
CN101645851B (zh) | 一种ip分片报文的重组方法和装置 | |
CN106254256A (zh) | 基于三层vxlan网关的数据报文转发方法和设备 | |
CN105791214A (zh) | 一种RapidIO报文和以太网报文之间的转换方法和设备 | |
JP7228030B2 (ja) | パッケージ送信方法、パッケージ受信方法及びネットワークデバイス | |
CN109150673A (zh) | 基于bras系统的报文封装方法及装置 | |
CN102710485B (zh) | 透明代理方法及代理服务器 | |
CN102739502B (zh) | 一种实现网络标识转换的方法、装置及系统 | |
CN105282102B (zh) | 数据流处理方法和系统以及IPv6数据处理设备 | |
CN107888710A (zh) | 一种报文转发方法及装置 | |
CN107317752A (zh) | 一种转发数据报文的方法及装置 | |
CN103685032B (zh) | 报文转发方法及网络地址转换服务器 | |
CN104780090B (zh) | Vpn组播传输的方法、装置、pe设备 | |
CN107733765B (zh) | 映射方法、系统和相关设备 | |
CN104601463B (zh) | 一种vxlan网络中报文转发方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |