CN1602015A - 数字用户线接入复用器的媒体访问控制地址学习方法 - Google Patents
数字用户线接入复用器的媒体访问控制地址学习方法 Download PDFInfo
- Publication number
- CN1602015A CN1602015A CN 03143325 CN03143325A CN1602015A CN 1602015 A CN1602015 A CN 1602015A CN 03143325 CN03143325 CN 03143325 CN 03143325 A CN03143325 A CN 03143325A CN 1602015 A CN1602015 A CN 1602015A
- Authority
- CN
- China
- Prior art keywords
- mac address
- subscriber line
- port
- 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.)
- Granted
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
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 (9)
1.一种数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述数字用户线接入复用器包含两个表,其中,第一表包含媒体访问控制地址字段和端口号字段,第二表包含端口号字段、实际媒体访问控制地址数字段和配置的最大媒体访问控制地址数字段;
所述方法在收到上行报文时包含以下步骤:
A根据所述上行报文的源媒体访问控制地址在所述第一表中进行匹配查找,并判断是否匹配命中,如果不是则进入步骤B;
B根据所述上行报文的端口号在所述第二表中匹配查找,并根据查找结果判断实际媒体访问控制地址数是否小于配置的最大媒体访问控制地址数,如果是则进入步骤C;
C将所述第二表中的所述实际媒体访问控制地址数加1,并且在第一表中增加一个新的表项,该表项中填写所述上行报文的信息。
2、根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述数字用户线接入复用器还包含第三表,该表包含端口号字段、虚拟局域网号字段和永久虚拟线路字段;
所述方法在收到下行报文时包含以下步骤:
D根据所述下行报文的目的媒体访问控制地址在所述第一表中进行匹配查找,判断是否匹配命中,如果是则根据所述下行报文的端口号和虚拟局域网号在所述第三表中查找对应的永久虚拟线路。
3.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述第一表中还包含以所述媒体访问控制地址为关键字的哈希散列索引,所述步骤A中的所述匹配查找是使用该哈希散列索引根据所述上行报文的源媒体访问控制地址进行的哈希查找。
4.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述步骤A中,当匹配命中时,使用所述上行报文的信息更新命中的表项。
5.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述第一表中还包含表示表项是否有效的字段,所述匹配查找仅针对有效的表项进行。
6.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述第一表包含表示表项老化程度的字段,所述数字用户线接入复用器定时对所述第一表中所有的表项进行老化处理。
7.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述步骤B还包含以下子步骤,
当实际媒体访问控制地址数大于或等于配置的最大媒体访问控制地址数时,丢弃所述上行报文。
8.根据权利要求2所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述步骤D还包含以下子步骤:
根据所述下行报文的端口号和查找到的永久虚拟线路转发所述下行报文。
9.根据权利要求1所述的数字用户线接入复用器的媒体访问控制地址学习方法,其特征在于,所述第二表中的端口号字段可以用固定的数据存储地址来替代。
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 true CN1602015A (zh) | 2005-03-30 |
CN100459609C 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) |
Cited By (6)
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转换规则的查找方法及装置 |
CN111950000A (zh) * | 2020-07-30 | 2020-11-17 | 新华三技术有限公司 | 一种接入访问控制方法及设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2002214230A1 (en) * | 2000-10-31 | 2002-05-15 | Firebit Ltd. | A router-based system for providing multi-level data filtering and security services in a broadband environment |
CN1129272C (zh) * | 2000-12-15 | 2003-11-26 | 华为技术有限公司 | 以太网接入网中的虚拟局域网接入方法 |
-
2003
- 2003-09-25 CN CNB031433251A patent/CN100459609C/zh not_active Expired - Fee Related
Cited By (7)
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转换规则的查找方法及装置 |
CN111950000A (zh) * | 2020-07-30 | 2020-11-17 | 新华三技术有限公司 | 一种接入访问控制方法及设备 |
CN111950000B (zh) * | 2020-07-30 | 2022-10-21 | 新华三技术有限公司 | 一种接入访问控制方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN100459609C (zh) | 2009-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9871728B2 (en) | Exact match hash lookup databases in network switch devices | |
CN108337172B (zh) | 大规模OpenFlow流表加速查找方法 | |
Gupta et al. | Packet classification using hierarchical intelligent cuttings | |
EP2643762B1 (en) | Method and apparatus for high performance, updatable, and deterministic hash table for network equipment | |
Yu et al. | Efficient multimatch packet classification and lookup with TCAM | |
US8433695B2 (en) | System architecture for integrated hierarchical query processing for key/value stores | |
US7089240B2 (en) | Longest prefix match lookup using hash function | |
US8335231B2 (en) | Hardware based zoning in fibre channel networks | |
US7536476B1 (en) | Method for performing tree based ACL lookups | |
US6792423B1 (en) | Hybrid longest prefix match and fixed match searches | |
US20120275466A1 (en) | System and method for classifying packets | |
CN1875585A (zh) | 利用mac限制来控制动态未知l2泛滥 | |
US8195832B2 (en) | Facilitating management of layer 2 hardware address table based on packet priority information | |
GB2365666A (en) | Controlling data packet transmission through a computer system by means of filter rules | |
EP1063827A2 (en) | Method for address lookup | |
US7739445B1 (en) | Circuit, apparatus, and method for extracting multiple matching entries from a content addressable memory (CAM) device | |
US20030152092A1 (en) | Multilevel hierarchical addressing and routing mechanism for high-speed internet | |
CN1677982A (zh) | 虚拟局域网标识的可个别地编程的最高有效位 | |
EP1526699B1 (en) | Method and system for accelerated packet processing | |
CN1602015A (zh) | 数字用户线接入复用器的媒体访问控制地址学习方法 | |
CN1885820A (zh) | 一种路由转发表地址查找引擎装置 | |
CN1152516C (zh) | Ip网络节点发现方法 | |
CN100352233C (zh) | 路由表的组织与查找方法 | |
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 |
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 |