[0043] 下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
[0044] 现有技术中的灵活QinQ技术,通常包括了两种处理方案:
[0045] 方案一的灵活QinQ的实现为基于单逻辑链路标记(Logical Link Identifier,LLID)单用户目标(subscriber)的实现方法,即1:1的实现方式,通过用户目标的分类规则实现。在
[0046] 方案一中,为每条LLID所对应的所有上行数据流对应分配一个固定唯一的subscriber,并根据该subscriber查找对应的分类规则。随后根据上述查找到的分类规则对该subscriber下的数据流进行处理,包括添加SVLAN(Service VLAN,服务提供商VLAN)、删除SVLAN以及其他VLAN转换等。方案一的缺陷在于,在对上行数据流进行处理时,由于对同一个LLID下可能存在的多条上行数据流统一匹配一个固定唯一的subscriber,因此对于N:1转换情况来说(即同一个LLID下有多条数据流),当同一个LLID下的上行数据流的内层标签分别为CVLAN10-18(Custom VLAN,用户端VLAN),对应的要转换为的SVLAN为SVLAN100时;则当对应的下行数据流以目标地址(MAC地址)为MAC1被发送时,进行相应转换的下行数据流均会被匹配为第一条规则,即将SVLAN100转换成CVLAN10,无法实现下行数据流中1:N的正确转换。
[0047] 在方案二中,为每条LLID所对应的所有上行数据流对应分配一个subscriber,并结合全局的NNI VLAN转换表(预设于上层中并通过NNI接口影响OLT设备的VLAN转换表)实现数据流的VLAN转换。方案二中,当下行存在对应新增的CVLAN的数据流,即该数据流并不包括在预设于上层中的VLAN转换表中,由于存在于上层中的VLAN转换表并没有学习到该数据流的CVLAN值,因此无法根据预设的VLAN转换表对其进行转换,整个转换过程会出现问题。
[0048] 针对在灵活QinQ技术中进行VLAN转换的过程中产生的上述问题,本发明的较佳的实施例中提供了一种改进的实现VLAN转换的方法。
[0049] 如图1所示,本发明的较佳的实施例中,实现VLAN转换的方法适用于EPON系统中。该EPON系统包括了OLT设备1和ONU设备2。OLT设备1中包括了一PON(Passive Optical Network,无源光网络)接口11和一NNI(Network Node Interface,网络结点接口)接口12,OLT设备1通过PON接口11连接ONU设备2,进一步地,OLT设备1通过PON接口11接收由ONU设备
2发送的数据流。OLT设备1通过NNI接口12向外输出经过处理的数据流,进一步地,OLT设备1通过NNI接口12连接外部网络3,并通过NNI接口12向外部网络3输出数据流。
[0050] 本发明的较佳的实施例中,在每个OLT设备中设置一交换模块13,对数据流的VLAN转换过程均在交换模块13中进行。
[0051] 本发明的较佳的实施例中,在EPON系统中传输的数据流被区分为上行数据流和下行数据流。所谓上行数据流即从ONU设备2发送至OLT设备1的数据流。OLT设备1通过PON接口11接收该数据流并进行处理,随后将经过处理的数据流通过NNI接口输出;所谓下行数据流即OLT设备1从NNI接口12接收的数据流,经过处理后从OLT设备1的PON接口11发送至ONU设备2。
[0052] 本发明的较佳的实施例中,每条数据流对应于一个数据流序号。本发明的较佳的实施例中,该数据流序号依数据流的分类而定,具体为:当数据流为上行数据流时,上述数据流序号具体为传输序号信息,即LLID,所谓LLID即为指定一逻辑传输链路的序号。一个LLID下可以包括多条数据流。当数据流为下行数据流时,上述数据流序号具体为数据流的目标地址信息(即MAC地址信息)。
[0053] 本发明的较佳的实施例中,可以采用多个ONU连接的方式组成一个EPON系统(图1中仅示出包括一个ONU设备的系统结构)。其中一个OLT设备通过PON接口与对端多个ONU设备的PON接口连接。
[0054] 在上行时,数据流在用户端时被添加一用户端的VLAN标签(即内层VLAN标签);随后数据流被送入OLT设备的PON接口。在PON接口上对该上行的数据流添加一公共端的VLAN标签(即外层VLAN标签),并根据该被添加的公共端的VLAN标签进行相应的处理;经过处理的数据流通过NNI接口被输出,在输出的同时,去除该数据流上的外层VLAN标签。
[0055] 同样的,在下行时,当对端的OLT设备通过NNI接口接收到上述数据流时,该OLT设备根据数据流中包括的目标地址信息(即目标的MAC地址)添加一相应的外层VLAN标签,并进行相应的处理;随后,OLT设备通过PON接口将经过处理的数据流发送至相应的ONU设备,在发送的同时去除上述外层VLAN标签。这样在整个传输过程中,发送设备和接收设备都无需得知中转OLT设备所添加的外层VLAN标签。
[0056] 本发明的较佳的实施例中,根据图1中的基础结构进行的实现VLAN转换的方法具体如图2所示,为:
[0057] 步骤1,OLT设备读取数据流;
[0058] 本发明的较佳的实施例中,针对上行数据流,OLT设备从PON接口读取数据;针对下行数据流,OLT设备从NNI接口读取数据。
[0059] 步骤2,对于每条数据流对应的数据流序号,匹配一相应的地址域信息;并根据地址域信息匹配查找对应每条上行数据流的预设的用户目标信息;
[0060] 本发明的较佳的实施例中,如上文所述,当数据流为上行数据流时,数据流序号相应为传输序号信息(LLID);当数据流为下行数据流时,数据流序号相应为数据流的目标地址信息(MAC地址)。
[0061] 步骤3,根据每个用户目标信息,对每条数据流匹配一个预设的处理规则集;
[0062] 本发明的较佳的实施例中,上述处理规则集中包括了数据规则(key域)和操作规则(fib域)。本发明的较佳的实施例中,数据规则中包括了对数据流的VLAN值、优先级、以太网类型、VLAN选择范围等一系列字段的一项或多项限制;操作规则中包括对依照数据规则对数据流的相关字段进行的一种或多种操作,例如对VLAN进行添加删除转换、修改优先级等。因此,本发明的较佳的实施例中,上述数据规则和操作规则一一对应。
[0063] 步骤4,根据每个处理规则集,对每条数据流进行相应的处理;随后OLT设备输出经过处理的数据流。
[0064] 本发明的较佳的实施例中,对上述步骤1做进一步展开,具体如图3所示:
[0065] 步骤21,根据传输序号信息,查找预设于交换模块中的地址域信息的匹配范围;
[0066] 本发明的较佳的实施例中,在交换模块中预先设置多个地址域信息(VLAN Domain)。每个地址域信息对应一个传输序号信息(LLID)。本发明的较佳的实施例中,当交换模块读取到包括在单个LLID下的一条或多条上行数据流时,交换模块根据该LLID信息,查找可能存在对应地址域信息的匹配范围。
[0067] 步骤22,根据上行数据流中包括的VLAN序号,在匹配范围中查找与传输序号信息对应的地址域信息;
[0068] 本发明的较佳的实施例中,确定了的匹配范围内包括了多个地址域信息。
[0069] 本发明的较佳的实施例中,上行数据流中包括的VLAN序号即VLANID。当根据上述VLAN序号进行匹配时,其匹配方式为顺序匹配,即若本发明的较佳的实施例中,在上述匹配范围中包括了X个地址域信息(VLAN Domain_0至VLAN Domain_X),则按照VLAN Domain_0至VLAN Domain_X的顺序依次往下匹配。当匹配到相应的地址域信息,则停止匹配过程,并提取相应的地址域信息作为对应该数据流的地址域信息。本发明的较佳的实施例中,上述匹配查找地址域的过程可以在一个第二查找单元中完成。本发明的较佳的实施例中,上述第二查找单元可以为一地址域信息查找表(VLAN Domain Table)。
[0070] 步骤23,根据地址域信息,获取对应的一用户目标信息作为上行数据流的用户目标信息。
[0071] 本发明的较佳的实施例中,每个地址域信息对应一个用户目标信息(Subscriber ID)。当匹配得到一个地址域信息后,根据该地址域信息查找到对应的一用户目标信息。本发明的较佳的实施例中,上述查找用户目标信息的过程可以在一第三查找单元中完成。本发明的较佳的实施例中,上述第三查找单元可以为一VLAN用户查找列表(VLAN Map Table)。
[0072] 进一步地,本发明的较佳的实施例中,如图4所示,上述确定匹配范围的过程具体包括:
[0073] 步骤221,查找匹配范围中的第一个地址域信息;
[0074] 步骤222,查找匹配范围中包括的地址域信息的数量;
[0075] 步骤223,以步骤221的结果和步骤222的结果限定匹配范围。
[0076] 本发明的较佳的实施例中,上述确定匹配范围的过程可以在一第一查找单元中完成。本发明的较佳的实施例中,第一查找单元可以为一记录有LLID与地址域信息的对应关系的查找列表(LLID Table)。因此,本发明的较佳的实施例中,上述步骤221中,确定第一个地址域信息的操作可以是确定该匹配范围的起始地址。且由于在本发明的较佳的实施例中,每个地址域信息的长度被限定为1,因此上述步骤222中,查找匹配范围中包括的地址域信息的数量的操作可以是确定匹配范围的长度。即本发明的较佳的实施例中,可以根据地址域信息的起始位置确定第一个地址域信息的位置,根据其长度确定匹配范围中包括的地址域信息的数量。
[0077] 本发明的较佳的实施例中,在每个地址域信息中包括了多个用户目标信息(Subscriber ID_1-Subscriber ID_X)。查找用户目标信息的过程也采用顺序查找的方式进行。
[0078] 本发明的较佳的实施例中,在第二查找单元中添加一个缺省的地址域信息,该缺省的地址域信息可以排列在所有地址域信息中的最后一位。本发明的较佳的实施例中,当根据通过PON接口输入OLT设备的上行数据流所对应的传输序号信息无法匹配到相应的地址域信息,即该上行数据流所对应的VLAN序号为新增加的,或者是OLT设备尚未学习到的VLAN序号,此时系统自动将缺省的地址域信息匹配给该上行数据流。
[0079] 同时,本发明的较佳的实施例中,缺省的地址域信息对应一个缺省的用户目标信息。因此,本发明的较佳的实施例中,可以根据缺省的地址域信息,为对应于不预设在OLT设备中的VLAN序号的上行数据流分配一个默认的用户目标信息。
[0080] 本发明的较佳的实施例中,在每个用户目标信息下包括了多个对应的目标属性,这些目标属性被设置于一对应的存储单元中。进一步地,该存储单元中包括多个独立的存储模块,每个存储模块对应保存有一个用户目标信息下的所有目标属性。本发明的较佳的实施例中,上述存储单元可以为一属性列表(Per Subscribe Behavior Table)。
[0081] 接下来对下行数据流的用户目标分配做详细阐述。
[0082] 本发明的较佳的实施例中,对应上行数据流的OLT设备通过其NNI接口输出经过处理的上行数据流,则对端的OLT设备通过NNI接口接收到从外部网络传来的下行数据流。因此,本发明的较佳的实施例中,一个EPON系统中,一条上行数据流总是对应于一条下行数据流的。
[0083] 进一步地,本发明的较佳的实施例中,对下行数据流分配用户目标信息主要通过下行数据流所携带的目标地址信息(MAC地址)实现匹配。目标地址信息通常表示了下行数据流所要传输至的用户设备的MAC地址。交换模块根据下行数据流中包括的目标地址信息,为该条下行数据流分配该地址MAC上行学习分配的用户目标信息,做到下行用户目标信息一致。
[0084] 本发明的较佳的实施例中,若下行数据流中未包括相应的目标地址信息,或者下行数据流中包括的目标地址信息不能与预设的目标地址信息相匹配,即下行数据流为广播或未知单播,则不为该下行数据流分配用户目标信息,不进行下行规则的处理。
[0085] 本发明的较佳的实施例中,上述从PON接口输入ONU设备的数据流,均被检测为上行数据流。
[0086] 上文中所述的实现VLAN转换的过程已可以如图5-6所示。图5中示出了本发明的较佳的实施例中对上行数据流进行处理的流程,其中Rx llid为接收LLID的步骤,在LLID Table中查找VLAN Domain的起始位置(start)和长度(length),并确定如VLAN Domain Table中所示的匹配范围(包括了VLAN Domain_0-VLAN Domain_X)。随后顺序查找匹配范围中的地域值信息,并确定对应的用户目标信息(Subscriber ID)。图5中,subscriber ID之后连接的为其对应的各个属性。
[0087] 于上述技术方案的基础上,本发明的核心思想在于,根据预设的转换规则,对对应于同一个LLID下(即从一个ONU发送而来的)的设置有不同CVLAN标签的上行数据流,按照其CVLAN标签的不同分配对应的不同的Subscriber ID;对于下行数据流来说,根据每个下行数据流中包括的目标地址信息(目标设备的MAC地址)对其分配一个相应的Subscriber ID,该Subscriber ID与该下行数据流在上行时被分配的Subscriber ID相匹配。在实现上述转换规则时,可以做到单个Subscrbier ID只对应于单一的上下行数据流,对于同一LLID下需要被转换成同一SVLAN(例如SVLAN100)的多条数据流,由于其目标设备的MAC地址不同,相应被分配了不同的Subscriber ID,因此可以采用不同的Subscriber ID实现同一LLID下具有不同的CVLAN标签的数据流的不同转换,完全能够解决无法在下行N:1的情况下对同一ONU设备中发出的上下行数据流进行不同转换的问题。
[0088] 确定用户目标信息后,根据该用户目标信息在处理规则集中找到相应的数据规则(Subscriber ID keys),以确定对该用户目标信息下的属性做何种限制;本发明的较佳的实施例中,如图5中所示,Long rule,short rule以及VLANrule等均为数据规则中的相应规则;L2key为二层VLAN的数据规则,相应的L3key为三层VLAN的数据规则,以此类推。随后查找该数据规则所对应的操作规则(Subscriber ID fib),并根据查找到的数据规则和操作规则,对该上行数据流做相应的操作。本发明的较佳的实施例中,如图5所示,Subscriber ID fib之后连接的为操作规则中的具体规则。
[0089] 图6中示出了本发明的较佳的实施例中对下行数据流进行处理的流程。其中Rx nni表示从NNI接口接收下行数据流。本发明的较佳的实施例中,该下行数据流所携带的目标地址信息为MAC1,如图6所示,该下行数据流的目标地址(DA)为MAC1,用户目标信息(SUB)为subscriber1(sub1)。本发明的较佳的实施例中,通过该目标地址信息MAC1获取相应的用户目标信息(Subscriber ID),上述查找过程在二层VLAN查找列表(L2Table)中进行。随后,类似于图5中所示的,获取对应的数据规则和操作规则,并进行相应的操作。
[0090] 以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。