CN101114981B - 在现有的epon网络上实现ipv6组播过滤的方法 - Google Patents

在现有的epon网络上实现ipv6组播过滤的方法 Download PDF

Info

Publication number
CN101114981B
CN101114981B CN2006100295200A CN200610029520A CN101114981B CN 101114981 B CN101114981 B CN 101114981B CN 2006100295200 A CN2006100295200 A CN 2006100295200A CN 200610029520 A CN200610029520 A CN 200610029520A CN 101114981 B CN101114981 B CN 101114981B
Authority
CN
China
Prior art keywords
multicast
mld
onu
chip
classifier
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
Application number
CN2006100295200A
Other languages
English (en)
Other versions
CN101114981A (zh
Inventor
李进
刘浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai B Star Technology Co ltd
Original Assignee
Shanghai B Star Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai B Star Co Ltd filed Critical Shanghai B Star Co Ltd
Priority to CN2006100295200A priority Critical patent/CN101114981B/zh
Publication of CN101114981A publication Critical patent/CN101114981A/zh
Application granted granted Critical
Publication of CN101114981B publication Critical patent/CN101114981B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种在EPON网络上实现MLD Snooping的方法,其首先用户端(STB或者PC)发送MLD的报告消息,经过VLAN(虚拟局域网)Switch后分两路同时送至处理器ARM922T和上行EPON口,处理器ARM922T收到MLD报告消息后进行处理后,生成一张组播过滤地址表;然后通过ONU PAS6201芯片提供的API发控制指令给DA Classifier,当下行的数据经过DAClassifier时,DA Classifier根据组播地址表完成对非本ONU的组播数据过滤。本发明利用Passave芯片的API接口可以针对特定VLAN上行或下行的所有数据包进行抓包的特性,通过对ONU芯片PAS6201上的API,进行二次开发。通过这些API接口,来控制其ONU芯片的某些行为,并达到实现MLD snooping功能的目的。

Description

在现有的EPON网络上实现IPV6组播过滤的方法
技术领域
本发明涉及一种在千兆无源光网络(以下称为EPON)上实现IPV6组播过滤的方法,更具体地说是一种在EPON网络上实现MLD Snooping的方法。
背景技术
在网络传输过程中,IP组播(将相同的信息包同时传送给多个目的地)比单播(向每个目的地单独发送一份)的效率高得多。如果网络中没有某种类型组播控制,网络将会把组播作为广播处理,这意味着目的地网络上的所有主机都必须处理发送给该网络的所有组播。在组播应用类型较多的环境中,这可能需要能够抢夺网络上所有主机CPU周期的性能,极大的影响网络的传输性能。
IGMP snooping和MLD snooping技术就是为了解决二层设备在端口上过滤该端口不需要的组播数据包,防止组播包泛滥,节省端口有效带宽问题而产生的技术。
IPv4组播侦听的技术被称为IGMP Snooping,是一个用于组播组的管理和控制的技术。它使用IGMP报文。IGMP协议运行在网络层,而IGMP Snooping运行在链路层。如图1所示,IGMP Snooping允许交换机监听主机和路由器之间的IGMP会话。当交换机监听到主机发往某个组的IGMP report,交换机将主机的端口数加入到这个组的转发列表中,同样,当交换机收听到IGMP leave消息,它就将主机的端口从转发表中删除。如果一段时间内没有成员的报告,交换机将端口从组中删除。当IGMP Snooping启动之后,组播路由器周期地向所有VLAN发送IGMP查询报文,VLAN下的主机响应查询报文,发送加入或报告报文,因此这个主机所在端口被加入到组播转发表中,关键字是VLAN和组播MAC地址,当有组播数据时,直接根据组播转发表进行相应的转发,并不是向所有端口转发,因此有效地节省了交换机的带宽。
M1D snooping的基本工作原理与IGMP snooping相同,差别只在于MLD Snooping是侦听IPv6的组播包。而所谓MLD snooping,是指ONU设备通过侦听STB(机顶盒)与路由器之间的IPv6组播协议消息(MLD协议)交互,可以确定连接在自己某端口的STB当前加入的组播组,从而只转发该STB需要的组播组数据,过滤掉其余不需要的组播组数据的功能。
为了在无源光网络(EPON)中实现EPON的MlD snooping功能,EPON除了要为每一个点到点的逻辑链路指定一个LLID(Logical Link ID)外,EPON中还要定义一个通用的广播LLID。OLT对于下行数据包,如果是单播包,就在地址表中查找对应的LLID,将对应的LLID值插入到数据包中。如果这个包是一个广播包,那么就使用一个通用的广播LLID值。而ONU在接收到下行包后,要将不属于自己的数据包过滤掉。当有一个新的下行包到达时,如果该包是单播包,且LLID与ONU的LLID相匹配,就接收这个包,否则就丢弃这个包;如果该包是广播包,且LLID为通用的广播LLID,就接收这个包。
如图二所示,ONU的下行端口为FE口,由于IPv6还属于新兴技术,大多数EPON Switch芯片上还无法实现MLD snooping功能。因此也无法对不属于本ONU下属终端的组播进行过滤,而EPON口的数据速率达到1G,下行的数据口只有FE,就很容易在此导致端口拥塞。
发明内容
本发明的目的在于提供一种在EPON网络上实现MLD Snooping的方法,该方法是在IPTV业务中基于Passave芯片功能而开发的,在EPON网络中使用的MLD snooping功能。通过在ONU侧实现MLD Snooping功能,可以允许IPv6的组播数据在ONU侧被过滤,使得ONU设备可直接输出100M的FE接口,从而节省了网络带宽。该方法在没有组播snooping功能的二层交换设备中,对从某端口收到的组播数据包(该数据包的目的MAC地址为一个组播MAC地址)的处理与对广播包的处理相同,即将组播数据包向除源端口外的所有端口拷贝转发。而组播snooping功能,使得交换机可以通过在设备中建立的组播地址与端口的映射表,决定是否向某个端口转发组播数据包,从而实现端口上的组播数据包过滤。
作为实现本发明目的的一种在EPON网络上实现MLD Snooping的方法,其特征在于,该方法包含如下步骤:
首先用户端发送MLD的报告消息,经过VLAN(虚拟局域网)Switch后分两路同时送至处理器和上行EPON口,处理器收到MLD报告消息后进行处理后,生成一张组播过滤地址表;
然后通过ONU芯片提供的API发控制指令给DA Classifier(图中Ctrl所示),当下行的数据经过DA Classifier时,DA Classifier根据组播地址表完成对非本ONU的组播数据过滤。
本发明所述的用户端为STB或者PC。
本发明所述的ONU芯片为PAS6201,其内嵌有1个ARM922T的CPU内核,1个Switch内核。
本发明是基于IPv6中只有广播流走IPv6组播协议的现状,根据QoS原则,将IPTV业务节点(也就是STB)放到特定的某一个VLAN,而IPTV业务只有少量的上行数据流,这就意味着只有一个VLAN需要进行较少数量的上行数据包抓包。同时,利用Passave芯片的API(Application Programming Interface应用编程接口)接口可以针对特定VLAN上行或下行的所有数据包进行抓包的特性,通过对ONU芯片PAS6201(EPON光网络单元芯片)上的API,进行二次开发。通过这些API接口,来控制其ONU芯片的某些行为,并达到实现MLDsnooping功能的目的。
附图说明
以下结合附图和具体实施方式来进一步说明本发明。
图1为目前MLD、IGMP snooping实现示意图。
图2为现有千兆无源光网络(EPON)的EPON结构图。
图3为本发明具体实施方式中的PAS6201实现MLD Snooping原理图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施例,进一步阐述本发明。
参看图3,一种在EPON网络上实现MLD Snooping的方法,该方法包含如下步骤:
首先用户端(STB或者PC)发送MLD的报告消息,经过VLAN(虚拟局域网)Switch后分两路同时送至处理器ARM922T和上行EPON口,处理器ARM922T收到MLD报告消息后进行处理后,生成一张组播过滤地址表;
然后通过ONU芯片PAS6201提供的API发控制指令给DA Classifier(图中Ctrl所示),当下行的数据经过DA Classifier时,DA Classifier根据组播地址表完成对非本ONU的组播数据过滤。
上述方法是基于IPv6只有广播流走IPv6组播协议的现状,根据QoS原则,将IPTV业务节点(也就是STB)放到特定的某一个VLAN,而IPTV业务只有少量的上行数据流,这就意味着只有一个VLAN需要进行较少数量的上行数据包抓包。同时,利用Passave芯片的API(Application Programming Interface应用编程接口)接口可以针对特定VLAN上行或下行的所有数据包进行抓包的特性,通过对ONU芯片PAS6201(EPON光网络单元芯片)上的API,进行二次开发。通过这些API接口,来控制其ONU芯片的某些行为,并达到实现MLDsnooping功能的目的。
下面通过对MLDS实现详细功能的描述来进一步说明本发明。
1、初始化时,禁止视频组播数据从ONU芯片的UNI口流出
为了达到过滤视频组播数据流的目的,芯片ONU初始化时,应该禁止视频IPv6的组播数据从UNI口(用户网络接口)流出。
可以通过调用API:
PASONU_ip_multicast_enable(
PASONU_direction_t direction,
BOOLEAN enable
);
禁止下行的IPv6组播数据通过到UNI端口。
但是,不应该禁止出于管理目的而发往UNI侧的组播数据,例如路由器发往Host的地址分配协议报文等。
2、初始化时,设置特定VLAN的上行数据能够被ONU的CPU捕获
为了能够捕获STB发往路由器的MLD协议包,需要将STB的上行端口设置在某个VLAN中。这样通过芯片ONU初始化时,设置此VLAN的上行数据即从数据通道流到EPON口,又能流向PAS6201的CPU内核。从而被CPU捕获。
可以利用PAS6201提供的用于设置进行数据通道过滤的API来实现:
PASONU_CLASSIFIER_add_filter(PASONU_direction_t direction,
PASONU_frame_qualifier_t qualifier,
INT16U value,
PASONU_forwarding_action_t action,
PASONU_flow_desc_t fd);
指定direction为上行,qualifier为按照VLAN进行过滤,value为需要过滤的VLANID,action为允许数据能够向PAS6201的CPU复制,即数据转发模式设为PASONU_PASS_BOTH。
3、初始化时,设置特定的MLD Query组播报文数据能够被ONU的CPU捕获
为了能够实现Snooping功能,芯片ONU的CPU应该捕获路由器发给HOST(主机)的MLD Query消息。因此芯片ONU初始化时,需要根据目的MAC地址,设置捕获MLD snooping报文的组播组数据。
可以通过调用PASONU_CLASSIFIER_add_DA_filter,将下行数据链路中DA为33-33-00-00-00-01的数据转发模式设为PASONU_PASS_BOTH。这样运行在CPU上我们的应用程序MLD_APP可以获取到路由器发送的MLD Query通用查询协议包。
4、能够根据捕获的VLAN上行报文,建立组播过滤表
STB上行的VLAN报文,不全是MLD的Report、Done协议报文。因此MLDS模块需要分析所有STB上行的VLAN报文,根据MLD协议规定,找出其中的Report、Done协议报文。之后,根据报文中加入或离开某个组播组的请求,建立一张组播过滤表。该表的每一条记录表示STB目前加入的组播组。
5、能够根据组播过滤表,进行IPv6组播数据的过滤
MLDS模块应该根据组播过滤表,向PAS6201设置基于目的MAC地址的ACL(访问控制),即允许在组播过滤表中有记录的组播数据,能够流向UNI接口;
可以通过调用API:
PASONU_CLASSIFIER_add_DA_filter(GENERAL_mac_address_t*address,
PASONU_forwarding_action_t action,
PASONU_flow_desc_t fd),
将下行数据链路中指定DA为组播过滤表中组播组的数据转发模式设为PASONU_PASS_DATAPATH,允许该组播目的地址的IPv6组播数据通过.
6、能够根据查询情况,动态维护组播过滤表
MLDS模块应该根据捕获到的路由器发向HOST的MLD Query消息,来启动定时机制,判断在规定时间内是否收到STB返回的MLD Report应答。若收不到,则认为ONU的UNI端口下面已没有该组播组成员,因此需要动态更新组播过滤表。

Claims (6)

1.一种在EPON网络上实现MLD Snooping的方法,其特征在于,该方法包含如下步骤:
首先用户端发送MLD的报告消息,经过VLAN的Switch后分两路同时送至处理器和上行EPON口,处理器收到MLD的报告消息进行处理后,生成一张组播过滤地址表;
然后通过ONU芯片提供的API发控制指令给DA Classifier,当下行的数据经过DA Classifier时,DA Classifier根据组播地址过滤表完成对非本ONU的组播数据过滤;
所述的控制指令为:
PASONU_CLASSIFIER_add_filter(PASONU_direction_t direction,
PASONU_frame_qualifier_t qualifier,
INT16U value,
PASONU_forwarding_action_t action,
PASONU_flow_desc_t fd)。
2.根据权利要求1所述的方法,其特征在于,所述的用户端为STB或者PC。
3.根据权利要求1所述的方法,其特征在于,所述的处理器为ARM922T。
4.根据权利要求1所述的方法,其特征在于,所述的ONU芯片为PAS6201。
5.根据权利要求4所述的方法,其特征在于,所述PAS6201芯片,其内嵌有1个ARM922T的CPU内核,1个Switch内核。
6.根据权利要求1所述的方法,其特征在于,只有一个VLAN需要进行较少数量的上行数据包抓包。
CN2006100295200A 2006-07-28 2006-07-28 在现有的epon网络上实现ipv6组播过滤的方法 Active CN101114981B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2006100295200A CN101114981B (zh) 2006-07-28 2006-07-28 在现有的epon网络上实现ipv6组播过滤的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2006100295200A CN101114981B (zh) 2006-07-28 2006-07-28 在现有的epon网络上实现ipv6组播过滤的方法

Publications (2)

Publication Number Publication Date
CN101114981A CN101114981A (zh) 2008-01-30
CN101114981B true CN101114981B (zh) 2011-08-31

Family

ID=39023111

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006100295200A Active CN101114981B (zh) 2006-07-28 2006-07-28 在现有的epon网络上实现ipv6组播过滤的方法

Country Status (1)

Country Link
CN (1) CN101114981B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1518289A (zh) * 2003-01-17 2004-08-04 华为技术有限公司 一种基于以太网交换机的安全过滤方法
CN1578200A (zh) * 2003-07-14 2005-02-09 三星电子株式会社 千兆位性能的无源光网络中的组播传输方法及处理帧的方法
US7050430B2 (en) * 2000-06-09 2006-05-23 Broadcom Corporation Gigabit switch with fast filtering processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7050430B2 (en) * 2000-06-09 2006-05-23 Broadcom Corporation Gigabit switch with fast filtering processor
CN1518289A (zh) * 2003-01-17 2004-08-04 华为技术有限公司 一种基于以太网交换机的安全过滤方法
CN1578200A (zh) * 2003-07-14 2005-02-09 三星电子株式会社 千兆位性能的无源光网络中的组播传输方法及处理帧的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
林予松, 贺磊, 汪斌强.IPv6组管理协议MLD研究.计算机工程与应用 36.2004,(36),131-133.
林予松, 贺磊, 汪斌强.IPv6组管理协议MLD研究.计算机工程与应用 36.2004,(36),131-133. *

Also Published As

Publication number Publication date
CN101114981A (zh) 2008-01-30

Similar Documents

Publication Publication Date Title
US8064449B2 (en) Methods and apparatus for managing multicast traffic
US8416777B2 (en) Method for managing multicast traffic in a data network and network equipment using said method
US7835276B2 (en) Admission control mechanism for multicast receivers
CN101163093B (zh) 在综合接入设备上实现集中组播管理的方法
CN101094087A (zh) 一种无源光网络环境下可控组播系统及其实现方法
CN101951323A (zh) 吉比特无源光网络中实现上行组播的装置及方法
CN101184023A (zh) 在gepon中实现组播vlan归并的方法及装置和光网络单元
CN2938596Y (zh) 一种在现有epon网络中实现ipv6组播过滤的装置
CN101399820A (zh) 一种吉比特以太网无源光网络系统组播业务控制方法
CN101098287B (zh) 采用硬件扩展方式在epon上实现ipv6组播过滤的装置和方法
CN2912126Y (zh) 用硬件环回方式在epon网络上实现ipv6组播过滤的装置
CN100512186C (zh) 用硬件环回方式在EPON网络上实现IPv6组播过滤的装置及方法
CN101114981B (zh) 在现有的epon网络上实现ipv6组播过滤的方法
CN101827037A (zh) 组播数据流的发送方法、装置和二层交换设备
CN2922305Y (zh) 采用硬件扩展方式在epon上实现ipv6组播过滤的装置
CN103595645B (zh) 一种组播流量管理方法及装置
CN103200470B (zh) 一种吉比特无源光网络系统组播业务的分发装置及方法
CN100452867C (zh) 一种平滑切换iptv频道的方法
CN201004649Y (zh) 在gepon中实现组播vlan归并的装置
CN101170464A (zh) 在基于802.1q VLAN技术的接入网中实现组播优化的方法及装置
Phonphoem et al. Performance analysis and comparison between multicast and unicast over infrastructure wireless LAN
CN200962602Y (zh) 在基于802.1q VLAN技术的接入网中实现组播优化的装置
CN101605275B (zh) 一种受控组播系统及其使用方法
CN103259675B (zh) 一种交互式网络电视业务报文在端口间隔离的实现方法
WO2012097646A1 (zh) 组播业务的隔离方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: SHANGHAI FUTURE BROADBAND TECHNOLOGY CO., LTD.

Free format text: FORMER NAME: SHANGHAI FUTURE BROADBAND TECHNOLOGY AND APPLICATION ENGINEERING RESEARCH CENTER CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 200336 Shanghai city Changning District Honggu Road No. 150

Patentee after: SHANGHAI B-STAR TECHNOLOGY CO.,LTD.

Address before: 200336 Shanghai city Changning District Honggu Road No. 150

Patentee before: Shanghai B-STAR Co.,Ltd.

PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method for realizing IPv6 Multicast filtering on existing EPON Network

Effective date of registration: 20220121

Granted publication date: 20110831

Pledgee: Hongkou Branch of Shanghai Rural Commercial Bank Co.,Ltd.

Pledgor: SHANGHAI B-STAR TECHNOLOGY CO.,LTD.

Registration number: Y2021310000130

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20231026

Granted publication date: 20110831

Pledgee: Hongkou Branch of Shanghai Rural Commercial Bank Co.,Ltd.

Pledgor: SHANGHAI B-STAR TECHNOLOGY CO.,LTD.

Registration number: Y2021310000130

PC01 Cancellation of the registration of the contract for pledge of patent right