CN100459609C - 数字用户线接入复用器的媒体访问控制地址学习方法 - Google Patents

数字用户线接入复用器的媒体访问控制地址学习方法 Download PDF

Info

Publication number
CN100459609C
CN100459609C CNB031433251A CN03143325A CN100459609C CN 100459609 C CN100459609 C CN 100459609C CN B031433251 A CNB031433251 A CN B031433251A CN 03143325 A CN03143325 A CN 03143325A CN 100459609 C CN100459609 C CN 100459609C
Authority
CN
China
Prior art keywords
mac address
port
subscriber line
digital subscriber
control address
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.)
Expired - Fee Related
Application number
CNB031433251A
Other languages
English (en)
Other versions
CN1602015A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB031433251A priority Critical patent/CN100459609C/zh
Publication of CN1602015A publication Critical patent/CN1602015A/zh
Application granted granted Critical
Publication of CN100459609C publication Critical patent/CN100459609C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

本发明涉及通信系统中媒体访问控制地址的学习方法,公开了一种数字用户线接入复用器的媒体访问控制地址学习方法,使得在保证较高处理效率的前提下,既支持一个用户端口多条PVC对应同一个MAC地址的功能,又限制每个ADSL用户端口下的最大MAC地址数。这种方法在IPDSLAM中设置了三张表,即MAC地址和端口的学习表、端口MAC地址数表和用户端口信息表。通过在MAC地址和端口的学习表对上行报文的源MAC地址进行匹配查找,获知该MAC地址是否新接入的;通过在端口MAC地址数表中记录每一个端口的实际MAC地址数和配置的最大MAC地址数来控制最大接入的MAC地址数;通过用户端口信息表来查找下行报文对应的PVC。

Description

数字用户线接入复用器的媒体访问控制地址学习方法
技术领域
本发明涉及通信系统中媒体访问控制地址的学习方法,特别涉及网际协议上行的数字用户线接入复用器中媒体访问控制地址的学习方法。
背景技术
随着不对称数字用户线(Asymmetry Digital Subscriber Line,简称为“ADSL”)接入的规模使用和网际协议(Internet Protocol,简称为“IP”)技术在城域网的广泛应用,具有IP内核的IP上行的数字用户线接入复用器(IP Digital Subscriber Line Access Multiplexer,简称为“IPDSLAM”设备)得到极大认可。
IPDSLAM的原理是要实现异步传输模式(Asynchronous Transfer Mode,简称为“ATM”)到IP的转换,实现永久虚拟线路(Permanent Virtual Circuit,简称为“PVC”)到媒体访问控制(Medium Access Control,简称“MAC”)地址、虚拟局域网(Virtual Local Area Network,简称为“VLAN”)的映射。IPDSLAM的ATM侧通常对应多个ADSL用户端口(简称为“PORT”),每个端口包含多条PVC,多个PVC中可能包含同一个MAC地址,也可能一条PVC中包含多个MAC地址;IP侧通常是高速以太网或千兆以太网接口,包含多个VLAN。通常将信元从ATM到IP称为“上行”,反之则称为“下行”。
为实现IPDSLAM,上行时需要学习PVC、PORT和报文源MAC地址、VLAN的映射关系,生成MAC地址表,下行时需要用报文目的MAC地址、VLAN查找对应的MAC地址表得到PVC、PORT。出于商业利益等考虑,通常运营商需要限制每个ADSL用户端口下的最大MAC地址数。
为了实现限制每个ADSL用户端口下的最大MAC地址数的功能,目前的方案主要有两种:
现有方案一:
系统中存在两个表,第一个表的第一个字段是将MAC地址通过HASH函数生成的哈希散列索引(简称“HASH桶索引”),此外还包含MAC地址、PVC、PORT等字段。第二个表保存每个端口学习到的MAC地址数和配置的最大允许MAC地址数。当收到一个报文,需要进行上行学习时,先根据报文的源MAC地址在第一个表中利用HASH桶索引进行匹配,如果命中,则说明该MAC地址原先已经学习过,继续其他的操作;如果不命中,则说明这是一个新的MAC地址,需要根据该报文的端口号在第二个表中查找该端口已经学习到的MAC地址数和配置的最大允许MAC地址数,判断已经学习到的MAC地址数是否已经达到配置的最大允许MAC地址数,如果是则拒绝本次接入,丢弃该报文,如果不是则将已经学习到的MAC地址数加1,继续处理该报文。
这种方案的问题在于不支持一个用户端口多条PVC对应同一个MAC地址的情况,因为该方案中每一个MAC地址只有一条对应的表项,在下行查找时只能够根据MAC地址找到一个端口和PVC。
现有方案二:
系统中也存在两个表,第一个表的第一个字段是将MAC地址和VLAN通过HASH函数生成的HASH桶索引,此外还包含MAC地址、PVC、VLAN、PORT等字段;第二个表保存每个端口学习到的MAC地址数和配置的最大允许MAC地址数。当收到一个报文,需要进行上行学习时,先根据报文的源MAC地址和VLAN号在第一个表中利用HASH桶索引进行匹配,如果匹配命中,则说明该MAC地址原先已经学习过,继续其他的操作;如果不命中,则根据该报文的端口号在第二个表中查找该端口已经学习到的MAC地址数和配置的最大允许MAC地址数,判断已经学习到的MAC地址数是否已经达到配置的最大允许MAC地址数,如果是则拒绝本次接入,丢弃该报文,如果不是则将已经学习到的MAC地址数加1,继续处理该报文。
这种方案的问题在于,实质上被限制的不是MAC地址数,而是MAC地址与VLAN号组合的数目,在不少场合这种限制方法不尽合理。造成这种问题的原因在于,在第一个表进行匹配的时候使用的是MAC地址和VLAN号的组合,当没有命中时候很有可能该MAC地址已经学习过了,只是VLAN号的不同才导致没有命中,但是在本方案中也将这种情况作为MAC地址没有命中进行处理了。
发明内容
本发明要解决的技术问题是提供一种数字用户线接入复用器的媒体访问控制地址学习方法,使得在保证较高处理效率的前提下,既支持一个用户端口多条PVC对应同一个MAC地址的功能,又限制每个ADSL用户端口下的最大MAC地址数。
为了解决上述技术问题,本发明提供了一种数字用户线接入复用器的媒体访问控制地址学习方法,所述数字用户线接入复用器包含两个表,其中,第一表包含媒体访问控制地址字段和端口号字段,第二表包含端口号字段、实际媒体访问控制地址数字段和配置的最大媒体访问控制地址数字段;
所述方法在收到上行报文时包含以下步骤:
A根据所述上行报文的源媒体访问控制地址在所述第一表中进行匹配查找,并判断是否匹配命中,如果不是则进入步骤B;
B根据所述上行报文的端口号在所述第二表中匹配查找,并根据查找结果判断实际媒体访问控制地址数是否小于配置的最大媒体访问控制地址数,如果是则进入步骤C;
C将所述第二表中的所述实际媒体访问控制地址数加1,并且在第一表中增加一个新的表项,该表项中填写所述上行报文的信息。
其中,所述数字用户线接入复用器还包含第三表,该表包含端口号字段、虚拟局域网号字段和永久虚拟线路字段;
所述方法在收到下行报文时包含以下步骤:
D根据所述下行报文的目的媒体访问控制地址在所述第一表中进行匹配查找,判断是否匹配命中,如果是则根据所述下行报文的端口号和虚拟局域网号在所述第三表中查找对应的永久虚拟线路。
其中,所述第一表中还包含以所述媒体访问控制地址为关键字的哈希散列索引,所述步骤A中的所述匹配查找是使用该哈希散列索引根据所述上行报文的源媒体访问控制地址进行的哈希查找。
所述步骤A中,当匹配命中时,使用所述上行报文的信息更新命中的表项。
所述第一表中还包含表示表项是否有效的字段,所述匹配查找仅针对有效的表项进行。
所述第一表包含表示表项老化程度的字段,所述数字用户线接入复用器定时对所述第一表中所有的表项进行老化处理。
所述步骤B还包含以下子步骤,
当实际媒体访问控制地址数大于或等于配置的最大媒体访问控制地址数时,丢弃所述上行报文。
所述步骤D还包含以下子步骤:
根据所述下行报文的端口号和查找到的永久虚拟线路转发所述下行报文。
所述第二表中的端口号字段可以用固定的数据存储地址来替代。
通过比较可以发现,本发明的技术方案与现有技术的区别在于,在系统中设置了三张表,即MAC地址和端口的学习表、端口MAC地址数表和用户端口信息表。通过在MAC地址和端口的学习表对上行报文的源MAC地址进行匹配查找,获知该MAC地址是否新接入的;通过在端口MAC地址数表中记录每一个端口的实际MAC地址数和配置的最大MAC地址数来控制最大接入的最大MAC地址数;通过用户端口信息表来查找下行报文对应的PVC。
这种技术方案上的区别,带来了较为明显的有益效果,即相对于现有方案一,增加了对一个用户端口多条PVC对应同一个MAC地址的支持。相对于现有方案二,本发明的技术方案可以准确地控制一个端口实际接入的MAC地址数。另外通过对被较频繁访问的MAC地址和端口的学习表建立HASH索引,进行HASH检索,保证了较高的处理效率。
附图说明
图1是根据本发明的一个实施例的DSLAM的MAC地址学习方法中上行学习的处理方式流程图;
图2是根据本发明的一个实施例的DSLAM的MAC地址学习方法中下行查找的处理方式流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
在本发明中,IPDSLAM存储三张表,分别是MAC地址和端口的学习表、端口MAC地址数表和用户端口信息表。
MAC地址和端口的学习表包含MAC地址、端口号、有效性和老化程度等字段,用于根据MAC地址查找该MAC地址所对应的端口、有效性、老化程度等属性,在本发明的一个较佳实施例中,对MAC地址和端口的学习表建立了MAC地址的HASH索引,这样在知道MAC地址时可以通过HASH函数的运算迅速找到相应的表项。在HASH索引的使用中可能会遇到一些键值冲突的问题,这种问题的解决方法目前已经很成熟,在这里不作详细论述。熟悉本发明领域的技术人员会理解,可以对MAC地址使用其他索引和查找的方法,而不会超出本发明的实质和范围。在MAC地址和端口的学习表中,MAC地址和端口号是必要的字段,其他是可选字段,当然可选字段还可以更多些,不限于有效性字段和老化程度字段。有效性字段用于标识表项是否有效,所有的匹配查询操作都是针对有效表项的。老化程度字段用于标识表项的老化程度,一般表项刚被新增或刷新时老化程度最低,系统定时增加每一个表项的老化程度,老化程度增加到一定水平以上时,系统会将该表项设置为无效,同时更新端口MAC地址数表中的相应内容。
端口MAC地址数表用于保存每个端口号对应的实际MAC地址数和配置的最大MAC地址数。在本发明的一个较佳实施例中,每一个端口号对应一个固定的地址,通过这个地址可以访问到该端口号对应的实际MAC地址数和配置的最大MAC地址数。熟悉本发明领域的技术人员会理解,可以使用其他的存储方法,只要能够根据端口号迅速查找到相应的实际MAC地址数和配置的最大MAC地址数机可。
用户端口信息表用于端口号、VLAN号和PVC号的对应关系。例如可以根据端口号和VLAN号查找对应的PVC号。
在以上三张表的基础上,IPDSLAM可以进行上行学习和下行查找的操作。
图1示出了IPDSLAM的上行学习流程。当IPDSLAM收到上行的报文时,可以知道该报文的源MAC地址和端口号。在步骤110中,根据源MAC地址在MAC地址和端口的学习表中通过HASH算法进行匹配查找。如上文所述,在MAC地址和端口的学习表中已经建立了MAC地址的HASH索引,因此可以根据源MAC地址进行高效的查找,查找的结果只有命中和不命中两种。
此后进入步骤120,判断是否匹配命中,如果是则进入步骤140,否则进入步骤130。
在步骤130中,根据端口号查找端口MAC地址数表,获得该端口号对应的实际MAC地址数和配置的最大MAC地址数,然后进入步骤150。
在步骤140中,更新命中的MAC地址和端口的学习表的表项。在MAC地址和端口的学习表中,对本发明而言,MAC地址和端口号是必须的,其他表项可以根据实际应用的需要选用。本步骤中的更新也是根据实际的需要更新部分属性,例如可以重新设置老化程度等。此后结束本流程。需要说明的是,这里所说的结束本流程,仅针对本发明要解决的技术问题而言,在实际处理中,往往还有其他的步骤,例如报文的转发等等,因为这些与现有技术相同并且对解决本发明要解决的技术问题没有贡献,因此不作详细论述,本文中其他地方提到的结束本流程也是这个意思。
在步骤150中,判断实际MAC地址数是否小于配置的最大MAC地址数,如果是则进入步骤160,否则结束本流程。如果实际MAC地址数小于配置的最大MAC地址数,说明还没有达到允许的接入上限,可以将该上行的报文转发。如果实际MAC地址数大于或等于配置的最大MAC地址数,则说明已经达到预先设置的接入上限,不再允许新的接入,一般将该上行的报文丢弃。
在步骤160中,实际MAC地址数加1,更新端口MAC地址数表中该表项,接着进入步骤170。
在步骤170中,在MAC地址和端口的学习表中添加一个表项。因为允许一个新的MAC地址接入,所以需要将该MAC地址对应的相关属性记录到MAC地址和端口的学习表中。结束本流程。
另外,在图2中示出了IPDSLAM下行查找的流程。当IPDSLAM收到下行报文时,可以知道该报文的目的MAC地址和VLAN号。在步骤210中,根据目的MAC地址在MAC地址和端口的学习表中通过HASH算法进行匹配查找。
此后进入步骤220,判断是否匹配命中,如果是则进入步骤230,否则停止查找,结束本流程。
在步骤230中,根据端口号和VLAN号在用户端口信息表中查找PVC,然后根据端口号和PVC转发所述下行报文。结束本流程。
从IPDSLAM下行查找的流程中可以看出本发明能够高效地支持一个用户端口多条PVC对应同一个MAC地址的功能。
虽然通过参照本发明的某些优选实施例,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种各样的改变,而不偏离所附权利要求书所限定的本发明的精神和范围。

Claims (8)

1.一种数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述数字用户线接入复用器包含两个表,其中,第一表包含媒体访问控制地址字段和端口号字段,第二表包含端口号字段、实际媒体访问控制地址数字段和配置的最大媒体访问控制地址数字段;
所述方法在收到上行报文时包含以下步骤:
A根据所述上行报文的源媒体访问控制地址在所述第一表中进行匹配查找,并判断是否匹配命中,如果不是则进入步骤B;
B根据所述上行报文的端口号在所述第二表中匹配查找,并根据查找结果判断实际媒体访问控制地址数是否小于配置的最大媒体访问控制地址数,如果是则进入步骤C;
C将所述第二表中的所述实际媒体访问控制地址数加1,并且在第一表中增加一个新的表项,该表项中填写所述上行报文的信息;所述数字用户线接入复用器还包含第三表,该表包含端口号字段、虚拟局域网号字段和永久虚拟线路字段;
所述方法在收到下行报文时包含以下步骤:
D根据所述下行报文的目的媒体访问控制地址在所述第一表中进行匹配查找,判断是否匹配命中,如果是则根据所述下行报文的端口号和虚拟局域网号在所述第三表中查找对应的永久虚拟线路。
2.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述第一表中还包含以所述媒体访问控制地址为关键字的哈希散列索引,所述步骤A中的所述匹配查找是使用该哈希散列索引根据所述上行报文的源媒体访问控制地址进行的哈希查找。
3.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述步骤A中,当匹配命中时,使用所述上行报文的信息更新命中的表项。
4.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述第一表中还包含表示表项是否有效的字段,所述匹配查找仅针对有效的表项进行。
5.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述第一表包含表示表项老化程度的字段,所述数字用户线接入复用器定时对所述第一表中所有的表项进行老化处理。
6.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述步骤B还包含以下子步骤,
当实际媒体访问控制地址数大于或等于配置的最大媒体访问控制地址数时,丢弃所述上行报文。
7.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述步骤D还包含以下子步骤:
根据所述下行报文的端口号和查找到的永久虚拟线路转发所述下行报文。
8.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述第二表中的端口号字段可以用固定的数据存储地址来替代。
CNB031433251A 2003-09-25 2003-09-25 数字用户线接入复用器的媒体访问控制地址学习方法 Expired - Fee Related CN100459609C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB031433251A CN100459609C (zh) 2003-09-25 2003-09-25 数字用户线接入复用器的媒体访问控制地址学习方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB031433251A CN100459609C (zh) 2003-09-25 2003-09-25 数字用户线接入复用器的媒体访问控制地址学习方法

Publications (2)

Publication Number Publication Date
CN1602015A CN1602015A (zh) 2005-03-30
CN100459609C true CN100459609C (zh) 2009-02-04

Family

ID=34659376

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB031433251A Expired - Fee Related CN100459609C (zh) 2003-09-25 2003-09-25 数字用户线接入复用器的媒体访问控制地址学习方法

Country Status (1)

Country Link
CN (1) CN100459609C (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100414885C (zh) * 2005-06-27 2008-08-27 华为技术有限公司 一种实现网络攻击隔离的方法
CN101098291B (zh) * 2006-06-29 2010-04-14 中兴通讯股份有限公司 在接入设备上防止介质访问控制地址表扰乱的方法
CN101312410B (zh) * 2007-05-24 2011-12-28 上海贝尔阿尔卡特股份有限公司 一种控制同一用户侧接口多项服务接入的控制装置及方法
CN102413028A (zh) * 2011-11-22 2012-04-11 江苏亿通高科技股份有限公司 MoCA系统的用户终端设备接入数量限制方法
CN105656784A (zh) * 2014-11-13 2016-06-08 中兴通讯股份有限公司 一种vlan转换规则的查找方法及装置
CN111950000B (zh) * 2020-07-30 2022-10-21 新华三技术有限公司 一种接入访问控制方法及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002037730A2 (en) * 2000-10-31 2002-05-10 Firebit Ltd. A router-based system for providing multi-level data filtering and security services in a broadband environment
CN1357997A (zh) * 2000-12-15 2002-07-10 华为技术有限公司 以太网接入网中的虚拟局域网接入方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002037730A2 (en) * 2000-10-31 2002-05-10 Firebit Ltd. A router-based system for providing multi-level data filtering and security services in a broadband environment
CN1357997A (zh) * 2000-12-15 2002-07-10 华为技术有限公司 以太网接入网中的虚拟局域网接入方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
一种获取IP_DSLAM端口信息的协议方法与实现. 王爱宝,许文秀,曹磊,郭茂文.广东通信技术,第Vol.23卷第No.7期. 2003
一种获取IP_DSLAM端口信息的协议方法与实现. 王爱宝,许文秀,曹磊,郭茂文.广东通信技术,第Vol.23卷第No.7期. 2003 *
基于MAC地址的网络访问控制方案. 卢春鹏.中国数据通信. 2003
基于MAC地址的网络访问控制方案. 卢春鹏.中国数据通信. 2003 *

Also Published As

Publication number Publication date
CN1602015A (zh) 2005-03-30

Similar Documents

Publication Publication Date Title
JP4482259B2 (ja) 4ウェイハッシュ表のための方法および装置
US7089240B2 (en) Longest prefix match lookup using hash function
US8335231B2 (en) Hardware based zoning in fibre channel networks
Gupta et al. Packet classification using hierarchical intelligent cuttings
EP1358739B1 (en) Method and apparatus for routing table management
US6950434B1 (en) Arrangement for searching packet policies using multi-key hash searches in a network switch
US7149214B2 (en) Dynamic unknown L2 flooding control with MAC limits
US6792423B1 (en) Hybrid longest prefix match and fixed match searches
US20120106553A1 (en) Packet forwarding apparatus and method
US20050013300A1 (en) Packet forwarding device equipped with statistics collection device and statistics collection method
JP5594171B2 (ja) 通信処理装置、アドレス学習プログラムおよびアドレス学習方法
US20040153573A1 (en) Distributed router for dynamically managing forwarding information and method thereof
CN103248582A (zh) 用于在网络装置中执行包流查找的流缓存器机制
WO2012071992A1 (en) Method and apparatus for high performance, updatable, and deterministic hash table for network equipment
US20090158006A1 (en) Facilitating management of layer 2 hardware address table based on packet priority information
EP1063827A2 (en) Method for address lookup
CN107276916A (zh) 基于协议无感知转发技术的交换机流表管理方法
CN100459609C (zh) 数字用户线接入复用器的媒体访问控制地址学习方法
US6201755B1 (en) Method and system for storing and retrieving information in a communications node
US20160142316A1 (en) Apparatus and method for scalable and flexible table search in a network switch
EP1594258B1 (en) Method and system for receiving and transmitting different data frames on digital transmission network
KR20050066903A (ko) 고속 라우팅 시스템에서의 패킷 포워딩 처리장치 및 그를이용한 라우팅 룩업 방법
US8279877B2 (en) Method for processing ATM cells and a device having ATM cell processing capabilities
Gopakumar et al. An adaptive algorithm for searching in flow tables of openflow switches
CN108650180A (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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090204

Termination date: 20180925