CN103780494A - 一种用户信息获取方法和装置 - Google Patents
一种用户信息获取方法和装置 Download PDFInfo
- Publication number
- CN103780494A CN103780494A CN201410047121.1A CN201410047121A CN103780494A CN 103780494 A CN103780494 A CN 103780494A CN 201410047121 A CN201410047121 A CN 201410047121A CN 103780494 A CN103780494 A CN 103780494A
- Authority
- CN
- China
- Prior art keywords
- arp
- list item
- user profile
- message
- request message
- 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
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种用户信息获取方法,该方法包括:在使能N:1VLAN映射的交换设备上使能ARP监听功能,在通过下行口接收到ARP报文时,学习ARP报文所属的CVLAN、发送端IP地址、发送端MAC地址的对应关系,以指导ARP报文和数据报文的转发。基于同样的发明构思,本发明还提出一种装置,能够在不受应用场景限制的条件下获取用户信息,以使使能N:1VLA映射的交换设备上能够进行数据通信。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种用户信息获取方法和装置。
背景技术
虚拟局域网(VLAN)映射也叫做VLAN转换,它可以修改报文携带的VLAN标签(Tag)或为报文添加VLAN Tag,实现不同VLAN标识ID之间的相互转换。
由于汇聚层网络接入设备可提供的VLAN数量有限,为了节省VLAN资源,需要警醒VLAN的汇聚,将用户网络的VLAN进行N:1映射,即将来自多个VLAN的报文所携带的不同VLAN Tag替换为相同的VLAN Tag。
N:1VLAN映射的难点在于从上行口收到下行数据流后,如何将运营商虚拟局域网(Service VLAN,SVLAN)转换为用户虚拟局域网(Custom VLAN,CVLAN)。SVLAN和CVLAN的对应关系是一对多关系,因此单纯依赖SVLAN是无法完成SVLAN向CVLAN的转换的。
为了解决这个问题,目前有两种解决方案:
第一种:记录用户媒体访问控制(MAC)和CVLAN的对应关系,上行口收到报文后,根据目的MAC找到对应的CVLAN信息,完成SVLAN向CVLAN的转换。
该种方案在实现时,MAC地址的学习受到硬件的限制,要想根据MAC实现CVLAN和SVLAN的转换,用户MAC除了要学习到CVLAN,还要学习到SVLAN,如何将用户MAC学习到SVLAN比较难以实现。如果使用硬件ACL资源,对系统硬件资源的消耗太大,因为用户网络中的设备的数目会非常庞大。
当用户MAC还没学习到时,对于从SVLAN主动发起的数据通信不支持。由于VLAN的转换完全依赖于用户MAC,因此,限制不同CVLAN中的用户MAC不能够相同。
第二种:使用动态主机配置协议侦听(DHCP Snooping)学习到的表项指导下行数据流的转发。客户端通过DHCP学习到地址,在使能N:1VLAN映射的交换设备上使能DHCP Snooping特性,学习到用户信息因特网协议(IP)、MAC和CVLAN。上行口收到下行数据流后,复用三层转发的流程,根据目的IP走一次三层转发,把SVLAN信息换成CVLAN信息。
该方案的实现依赖于客户端通过DHCP申请IP地址,对于静态配置IP地址的场景不适用。这个对于数据中心组网影响很大,数据中心组网中服务器地址一般是静态配置的;并且不同CVLAN中MAC地址不允许相同,也限制了应用场景。
由上可见,现有实现中还未能提供一种不受应用场景限制的用户信息获取方法。
发明内容
有鉴于此,本发明提供一种用户信息获取方法和装置,在能够不受应用场景限制的条件下获取用户信息,以使使能N:1VLA映射的交换设备上能够进行数据通信。
为解决上述技术问题,本发明的技术方案是这样实现的:
一种用户信息获取方法,应用于一配置有用户局域网CVLAN到运营商虚拟局域网SVLAN的N:1虚拟局域网VLAN映射的交换设备上,所述方法包括:
通过上行口接收到地址解析协议ARP请求报文时,根据该ARP请求报文携带的目标端因特网协议IP地址,查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的SVLAN内和映射到该SVLAN的所有CVLAN内广播该ARP请求报文;
通过下行口接收到ARP应答报文时,根据接收该ARP报文的端口,以及该ARP应答报文所属的CVLAN、发送端媒体访问控制MAC地址和发送端IP地址绑定生成用户信息表项;并根据该ARP应答报文的目标端IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,将该ARP应答报文在其所属的CVLAN映射到的SVLAN内广播发送;
其中,所述用户信息表项包括:用户终端的IP地址和MAC地址、以及该用户终端对应的CVLAN和到该用户终端的出接口。
一种装置,可应用于一配置有用户局域网CVLAN到运营商虚拟局域网SVLAN的N:1虚拟局域网VLAN映射的交换设备上,该装置包括:接收单元、处理单元和生成单元;
所述接收单元,用于通过上行口接收地址解析协议ARP请求报文;通过下行口接收ARP应答报文;
所述处理单元,用于当所述接收单元通过上行口接收到ARP请求报文时,根据该ARP请求报文的目标端因特网协议IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的SVLAN内和映射到该SVLAN的所有用户虚拟局域网CVLAN内广播该ARP请求报文;当所述接收单元通过下行口接收到ARP应答报文时,根据该ARP应答报文的目标端IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,将该ARP应答报文在其所属的CVLAN映射到的SVLAN内广播发送;
所述生成单元,用于所述接收单元通过下行口接收到ARP应答报文时,根据接收该ARP应答报文的端口,以及该ARP应答报文所属的CVLAN ID、发送端媒体访问控制MAC地址和发送端IP地址绑定生成用户信息表项,其中,所述用户信息表项包括:用户终端的IP地址和MAC地址、以及该用户终端对应的CVLAN和到该用户终端的出接口。
综上所述,本发明通过在使能N:1VLAN映射的交换设备上使能ARP监听功能,在通过下行口接收到ARP报文时,学习ARP报文所属的CVLAN、发送端IP地址、发送端MAC地址的对应关系,以指导ARP报文和数据报文的转发,能够在不受应用场景限制的条件下获取用户信息,以使使能N:1VLA映射的交换设备上能够进行数据通信。
附图说明
图1为本发明实施例一中用户信息获取方法流程示意图;
图2为本发明实施例二中用户信息获取方法流程示意图;
图3为本发明实施例三的组网示意图;
图4为本发明实施例四组网示意图;
图5为本发明具体实施例中应用于上述技术的装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
本发明实施例中提出一种用户信息获取方法,应用于一配置有CVLAN到SVLAN的N:1VLAN映射的交换设备上。在该交换设备上使能地址解析协议(ARP,Address Resolution Protocol)监听功能,在通过下行口接收到ARP报文时,学习ARP报文所属的CVLAN、发送端IP地址、发送端MAC地址的对应关系,以指导ARP报文和数据报文的转发,在能够不受应用场景限制的条件下获取用户信息,以使使能N:1VLA映射的交换设备上能够进行数据通信。
如在数据中心领域和传统的运营商、企业网领域内均可使用;同时不限制不同CVLAN下的MAC地址必须不同,也不需要用户设备的IP地址一定是动态IP地址。
在本发明实施例中,从用户网络发往汇聚层网络或服务提供商(SP)网络的数据流称为上行数据流;从汇聚层网络或SP网络发往用户网络的数据流称为下行数据流。将发送上行数据流和接收下行数据流的端口,称为上行口;将发送下行数据流和接收上行数据流的端口,称为下行口。
通过任一端口(上行口或下行口)接收到的ARP报文时,如果该ARP报文中携带VLAN ID,则确定携带的VLAN ID为该ARP报文所属的VLAN,如果该ARP报文中未携带VLAN ID,则根据接收该ARP报文的端口类型确定该ARP报文所属的VLAN,例如,
当该端口为Access口时,由于该类型端口只能属于一个VLAN,因此,使用该端口的PVID作为该ARP报文所属的VLAN;
当该端口为Trunk口或hybrid口时,由于该类型端口可以加入多个VLAN,因此,通常使用该端口配置的默认VLAN作为该ARP报文所属的VLAN。
在具体实现时,可以根据实际应用环境确定在ARP报文中是否携带VLAN ID,以及如何确定ARP报文所属的VLAN,本发明具体实现时,并不做具体限制。
实施例一
参见图1,图1为本发明实施例一中用户信息获取方法流程示意图。具体步骤为:
步骤101,交换设备通过上行口接收到ARP请求报文时,根据该ARP请求报文携带的目标端IP地址,查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的SVLAN内和映射到该SVLAN的所有CVLAN内广播该ARP请求报文。
该交换设备在根据查找到的用户信息表项转发该ARP请求报文时,如果用户信息表项中的VLAN ID和该ARP请求报文所属的VLAN的VLAN ID不相同,则使用用户信息表项中的VLAN ID替换该ARP请求报文中的VLANID,并通过用户信息表项中的端口ID对应的端口转发。
该交换设备在与该ARP请求报文所属的VLAN不同的VLAN内广播该ARP请求报文时,如果在该ARP请求报文中携带VLAN ID,则需要替换该ARP请求报文中携带的VLAN,或删除携带的VLAN通过对应端口转发即可。具体实现时,由收发ARP请求报文的端口的类型确定具体实现方式。
本步骤中在映射到该SVLAN的所有CVLAN内广播该ARP请求报文时,对于每个CVLAN,确定该CVLAN是否有下行口加入,如果是,在该CVLAN内广播该ARP请求报文;否则,不在该CVLAN内复制该ARP请求报文且不发送。
由于在配置CVLAN到SVLAN的映射时,CVLAN都是一个相对大的范围区间,这样,会有很多CVLAN当前未被使用,即没有下行口加入,在这样的CVLAN下就不需要复制ARP请求报文,这样大大节省了CPU资源。
本步骤中接收到的ARP请求报文为,上游设备,如网关设备接收到汇聚层网络或SP网络发送的数据报文,且未查找到该数据报文的目的IP地址对应的MAC地址时,而发送的ARP请求报文。
步骤102,该交换设备通过下行口接收到ARP应答报文时,根据接收该ARP应答报文的端口,以及该ARP应答报文所属的CVLAN、发送端MAC地址和发送端IP地址绑定生成用户信息表项;并根据该ARP应答报文的目标端IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,将该ARP应答报文在其所属的CVLAN映射到的SVLAN内广播发送。
本发明实施例中用户信息表项包括的内容为:用户终端的IP地址和MAC地址、以及该用户终端对应的CVLAN和出接口。
其中,用户终端IP地址对应发送端IP地址,用户终端MAC地址对应发送端MAC地址,该用户终端对应的CVLAN为所述ARP应答报文所属的CVLAN,该用户终端对应的出接口为接收所述ARP应答报文的端口。
这里根据目标端IP地址查找不到对应的用户信息表项时,只在该ARP应答报文所属的CVLAN映射到的SVLAN内广播即可,因为,如果该ARP应答报文应答的是某个CVLAN设备发送的ARP请求报文,该交换设备就一定会在接收到请求报文时建立对应的用户信息表项,不可能存在查不到对应表项的情况。
本步骤中接收到的ARP应答报文为,用户网络中的设备接收到ARP请求报文而响应的ARP应答报文。
本步骤中生成的用户信息表项,用于指导ARP报文,以及数据报文的转发。
实施例二
参见图2,图2为本发明实施例二中用户信息获取方法流程示意图。具体步骤为:
步骤201,交换设备通过下行口接收到ARP请求报文时,根据接收该ARP请求报文的端口,以及该ARP请求报文所属的CVLAN、发送端MAC地址和发送端IP地址绑定生成用户信息表项;并根据该ARP请求报文的目标端IP地址查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的CVLAN内,以及该CVLAN映射到的SVLAN内广播该ARP请求报文。
本发明实施例中用户信息表项中用户终端IP地址对应发送端IP地址,用户终端MAC地址对应发送端MAC地址,该用户终端对应的CVLAN为所述ARP请求报文所属的CVLAN,该用户终端对应的出接口为接收所述ARP请求报文的端口。
本步骤中通过下行口接收到的ARP请求报文,为用户网络中的设备需要向其他设备(用户网络中、汇聚层网络中或SP网络中的设备)发送数据报文,在本地根据要发送的数据报文的IP地址未查找到对应的MAC地址而发送的ARP请求报文。
本步骤中生成的用户信息表项,用于指导ARP报文,以及数据报文的转发。
步骤202,该交换设备通过上行口接收到ARP应答报文时,根据该ARP应答报文携带的目标端IP地址,查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,在该ARP应答报文所属的SVLAN内和映射到该SVLAN的所有CVLAN内广播该ARP应答报文。
本步骤中接收到的ARP应答报文为,汇聚层网络或SP网络中的设备,如网关,接收到ARP报文而响应的ARP应答报文。
本步骤实现时,在该ARP报文所属的SVLAN内也要广播一份该ARP请求报文,可能存在不同的设备在该VLAN内,如该网关设备还存在备份网关设备的时候。
由实施例一和实施例二可见,本发明具体实现时,在下行端口接收到ARP请求报文或ARP应答报文时,才会进行用户信息表项的学习;上行口接收到ARP请求报文和ARP应答报文时,不会进行用户信息表项的学习。
由于本发明具体实现时,ARP报文不仅仅在同一个VLAN内进行广播,很多时候需要在不同VLAN内都进行广播,因此,无论通过上行口还是下行口接收到ARP报文时,都需上送CPU进行处理。
现有实现时,ARP报文不需上送CPU处理,直接通过硬件实现在同一VLAN内的广播。
该交换设备还可以对用户信息表项进行老化,在老化时间内,如15分钟,接收到该用户信息表项相关的报文时,刷新该用户信息表项的老化时间。
这里与用户信息相关的报文包括ARP报文,以及数据报文。
该交换设备在老化时间到,且未接收到该用户信息表项相关的报文时,根据该用户信息表项中用户信息发起ARP探测报文。
在具体实现时,连续发送预设个数个ARP探测报文,如连续发送5个ARP探测报文。
该探测报文根据对应的用户信息表项进行封装。
该交换设备在预设时间内,接收到该用户信息表项相关的报文时,刷新该用户信息表项的老化时间;否则,删除该用户信息表项。
在通过下行口接收到ARP应答报文或ARP请求报文时,本地如果已存在该ARP应答报文或ARP请求报文对应的用户信息表项时,将该用户信息表项的老化时间刷新即可;如果不存在,则直接生成即可。
在具体实现时,使能N:1VLAN映射的交换设备可能是边缘交换设备,也可能是核心交换设备,本发明在实施例三和实施例四中分别举例说明这两种实现方式。
实施例三
以核心交换设备上使能N:1VLAN映射为例,具体描述核心交换设备获取用户信息的过程。
参见图3,图3为本发明实施例三的组网示意图。图3中核心交换设备上使能N:1VLAN映射,并使能ARP监听功能。
以Internet访问者访问设备A为例,具体处理过程如下:
第一步,网关设备接收到Internet访问者发送的数据报文时,根据该数据报文的目的IP地址查找到对应的转发表项时,根据转发表项中的信息封装数据报文并转发给设备A;如果在本地未查找到该数据报文的目的IP地址对应的MAC地址时,根据该数据报文的目的IP地址查找到下一跳对应的出接口,将与该出接口绑定的SVLAN携带在ARP请求报文中,广播发送ARP请求报文。
转发表项的内容包含:IP地址、MAC地址和出接口。
如果是首次访问设备A,则需要获知设备A的MAC地址,在本地如果没有学习到设备A的MAC地址,则会发起ARP请求。
ARP请求报文的L2头中的源MAC地址为网关设备的MAC地址,目的MAC地址为全F的地址(即广播MAC地址);ARP请求报文体中的发送端IP地址为网关的IP地址1.1.1.100,目标端IP地址为设备A的IP地址1.1.1.1;发送端MAC地址为网关的MAC地址,目标端MAC地址为全0的地址(即无效MAC地址)。
与接口绑定的SVLAN内,可能配置多个IP地址,这里选择一个与数据报文的目的IP地址网段匹配的IP地址作为网关设备的IP地址。
第二步,核心交换设备从上行口收到该ARP请求报文,根据该ARP请求报文的目标端IP地址1.1.1.1在本地查找是否存在对应的用户信息表项,如果是,执行第三步;否则,执行第四步。
用户信息表项包括的内容为:用户终端的IP地址和MAC地址、以及该用户终端对应的CVLAN和和出接口,即IP地址、MAC地址、VLAN ID和端口号。
第三步,核心交换设备将该ARP请求报文根据查找到的用户信息表项转发该ARP请求报文,执行第五步。
如查找到的用户信息表项为:CVLAN1,IP地址1.1.1.1,MAC地址1-1-1和端口1,则将SVLAN100替换为CVLAN1,通过端口1发送。
第四步,核心交换设备确定映射到SVLAN ID100的CVLAN ID(1,2,3),且确定各CVLAN都有下行口接入,复制该ARP请求报文,并分别将复制后的ARP请求报文的VLAN标签分别换为1,2,3,分别在CVLAN1,2,3中广播该ARP请求报文。
第五步,边缘交换设备1接收到该ARP请求报文时,由于ARP请求报文的目的MAC地址为广播MAC地址,直接在ARP请求报文所属的CVLAN内广播。
边缘交换设备1无论接收到携带CVLAN1还是CVLAN2的ARP请求报文,都在加入对应CVLAN的端口广播。这里分别只有一个端口加入CVLAN1和CVLAN2,从对应端口发送即可。
边缘交换设备1未使能ARP监听功能,因此,在边缘交换设备1上接收到ARP请求报文时,进行源MAC地址学习,同现有实现。即将该ARP请求报文所属的CVLAN1、源MAC地址(网关设备的MAC地址),以及接收该ARP请求报文的端口绑定存储为MAC地址表项。
边缘交换设备2的处理同边缘交换设备1的处理类似,这里不再一一描述。
第六步,设备A收到该ARP请求报文,确定目标端IP地址是自身的IP地址,回应一个ARP应答报文。
回应的ARP应答报文L2头中的目的MAC地址为网关设备的MAC地址,源MAC地址为设备A的MAC地址1-1-1;ARP应答报文的报文体中的目标端IP为网关设备的IP地址1.1.1.100,发送端IP地址为设备A的IP地址1.1.1.1,发送端MAC地址为设备A的MAC地址1-1-1,目的端MAC地址为接收到的ARP请求报文的源MAC地址,即设备A的MAC地址。
设备B和设备C也能够收到目标端IP为1.1.1.1的ARP请求报文,确定目标端IP地址不是自身的IP地址,不回应ARP应答报文。
第七步,边缘交换设备1接收到ARP应答报文时,本地未查找到该ARP应答报文的目的MAC地址对应的MAC地址表项,直接通过其上行口发送。
第八步,核心交换设备从下行接口接收到ARP应答报文,将接收该ARP应答报文的端口1,所属的CVLAN1,以及发送端IP地址1.1.1.1和发送端MAC地址1-1-1绑定生成用户信息表项;并且根据目标端IP地址1.1.1.100未查找到对应的用户信息表项时,在CVLAN1内和CVLAN1映射到的SVLAN100内广播该ARP应答报文。
由于通过上行口接收到ARP请求报文或ARP应答报文时,不进行用户信息表项的学习,因此,使用网关设备的IP地址查找用户信息表项时,查找不到。
由于CVLAN1中只有一个接口,因此可以不用广播。
SVLAN100中广播时,修改ARP应答报文的VLAN标签为100。
第八步,网关设备收到ARP应答报文时,在本地生成转发表项,并根据生成的转发表项封装该用户的数据报文并转发。
在封装时,将设备A的MAC地址封装,并通过接收ARP应答报文的接口发送封装后的数据报文。
以设备B首次向Internet发送报文为例。
第一步,设备B广播发送ARP请求报文。
该ARP请求报文的L2头中目的MAC地址为广播MAC地址,源MAC地址为设备B的MAC地址2-2-2;报文体中发送端IP地址为设备B的IP地址2.2.2.2,发送端MAC地址为2-2-2;目标端IP地址为网关设备的IP地址2.2.2.100,目标端IP地址为全0的无效MAC地址。
设备B需要接入Internet网络或其他本地设备,而不知道对方MAC地址时,需要向对端设备发起ARP请求。
当设备B需要和Internet网络通信时,设备B发送ARP请求报文的目标端IP地址为网关的IP地址,CVLAN内的设备通信时,AEP请求报文的目标端IP地址是对应设备的IP地址。
第二步,边缘交换设备1接收到该ARP请求报文时,进行MAC表项学习,并通过上行口广播该ARP请求报文。
将该ARP请求报文中的源MAC地址2-2-2、CVLAN ID2,以及接收该ARP请求报文的端口绑定生成MAC地址表项。
由于该ARP请求报文为广播报文,因此在CVLAN2内进行广播,由于CVLAN2内除了接收端口,只有一个上行端口,因此,从上行端口发送出去。
第三步,核心交换设备接收到该ARP请求报文时,生成用户信息表项信息;并根据该报文的目标端IP地址查找对应的用户信息表项,未查找到时,则在CVLAN2和CVLAN3内,以及SVLAN100内广播该ARP请求报文。
核心交换设备接收到该ARP请求报文时,将接收该ARP请求报文的端口,该ARP请求报文所属的CVLAN2,发送端IP地址2.2.2.2,发送端MAC地址2-2-2,绑定生成IP地址为2.2.2.2对应的用户信息表项。
在向其他VLAN内广播该报文时,进行VLAN的替换。
设备B和设备C接收到该ARP请求报文时,确定目标端IP地址不是自身的IP地址,不进行响应。
由于目标端IP地址是网关设备的IP地址,不会对网关设备发送的ARP报文进行用户信息表项的学习,因此,不会查找到网关设备的IP地址对应的用户信息表项。
第四步,网关设备接收到该ARP请求报文时,确定目标端IP地址为自身时,进行转发表项的学习,并发送ARP应答报文。
该ARP应答报文的L2头中源MAC地址为网关设备的地址,目的MAC地址为设备B的MAC地址,报文体中发送端IP地址为网关设备的MAC地址,发送端MAC地址为网关设备的MAC地址;目标端IP地址为设备B的IP地址,目标端MAC地址为设备B的MAC地址。
第五步,核心交换设备接收到网关设备发送的ARP应答报文时,根据该报文的目标端IP地址匹配对应的用户信息表项,并根据匹配到的用户信息表项将该ARP应答报文转发给边缘交换设备1。
第六步,边缘交换设备1根据ARP应答报文的目的MAC地址1-1-1查找MAC转发表项,根据查找到的MAC地址表项将该ARP应答报文转发给设备B。
第七步,设备B接收到该ARP应答报文时,获知网关设备的MAC地址,进行数据报文的封装,进行转发。
N:1VLAN映射统一在核心交换设备上配置,边缘交换设备上不用处理N:1VLAN映射,配置简单。
实施例四
以边缘交换设备上使能N:1VLAN映射为例,具体描述边缘交换设备获取用户信息的过程。
每个使能N:1VLAN映射的边缘交换设备都需使能ARP监听功能,进行用户信息的学习。
参见图4,图4为本发明实施例四组网示意图。图4中在边缘交换设备1和边缘交换设备2上使能N:1VLAN映射功能,实现本发明时,在边缘交换设备1和边缘交换设备2上使能ARP监听功能。
以Internet访问者首次访问设备A为例,具体处理过程如下:
第一步,网关设备接收到Internet访问者发送的数据报文时,根据该数据报文的目的IP地址查找本地是否存在对应的转发表项,如果存在,根据转发表项中的信息封装数据报文,转发给设备A;否则,通过路由匹配到对应的出接口,将与该出接口绑定的SVLAN携带在ARP请求报文中,广播发送ARP请求报文。
转发表项的内容包含:IP地址、MAC地址和出接口。
如果是首次访问设备A,则需要获知设备A的MAC地址,在本地如果没有学习到设备A的MAC地址,则会发起ARP请求。
ARP请求报文的L2头中的源MAC地址为网关设备的MAC地址,目的MAC地址为全F的地址(即广播MAC地址);ARP请求报文体中的发送端IP地址为网关的IP地址1.1.1.100,目标端IP地址为设备A的IP地址1.1.1.1;发送端MAC地址为网关的MAC地址,目标端MAC地址为全0的地址(即无效MAC地址)。
与接口绑定的SVLAN内,可能配置多个IP地址,这里选择一个与数据报文的目的IP地址网段匹配的IP地址作为网关设备的IP地址。
第二步,核心交换设备从端口3收到该ARP请求报文,在端口1和端口2上广播一份该ARP请求报文。
核心交换设备处理该ARP应答报文,同现有处理相同,进行源MAC地址表项学习,并在该ARP应答报文所属的SVLAN内广播该ARP应答报文。
第三步,边缘交换设备1会收到这个ARP请求报文,根据该ARP请求报文的目标端IP地址查找对应用户信息表项,如果查找到,根据用户信息表项将该ARP请求报文发送给设备A;否则,确定映射到SVLAN100的CVLAN(CVLAN1和CVLAN2)。边缘交换设备1复制ARP请求报文,并将ARP请求报文的VLAN标签分别换为CVLAN1和CVLAN2,在CVLAN1,2中广播该ARP请求报文。
边缘交换设备2进行类似的处理。
第四步,设备A收到该ARP请求报文,发现目标端IP地址是自己的,回应一个ARP应答报文。
回应的ARP应答报文L2头中的目的MAC地址为网关设备的MAC地址,源MAC地址为设备A的MAC地址1-1-1;ARP应答报文的报文体中的目标端IP为网关设备的IP地址1.1.1.100,发送端IP地址为设备A的IP地址1.1.1.1,发送端MAC地址为设备A的MAC地址1-1-1,目的端MAC地址为接收到的ARP请求报文的源MAC地址,即设备A的MAC地址。
设备B和设备C也能够收到目标端IP为1.1.1.1的ARP请求报文,确定目标端IP地址不是自身的IP地址,不回应ARP应答报文。
第五步,边缘交换设备1从下行接口收到ARP应答报文,根据该ARP应答报文生成用户信息表项,并根据目标端IP地址1.1.1.100查找对应的用户信息表项,若查找不到,将该ARP应答报文先在CVLAN1中广播一份,本实施例中CVLAN1中只有一个端口,因此,可以不用广播;并根据CVLAN1得到映射后的SVLAN100,然后修改ARP应答报文的VLAN标签为100,在SVLAN100中广播出去。
边缘交换设备1将接收该ARP应答报文的端口1,所属的CVLAN1,以及发送端IP地址1.1.1.1和发送端MAC地址1-1-1绑定生成用户信息表项。
第六步,核心交换设备从端口1收到ARP应答报文,直接走普通的VLAN内二层转发,转发给网关设备处理。
第七步,网关设备收到ARP应答报文时,在本地生成转发表项,并根据生成的转发表项封装该用户的数据报文并转发。
在封装时,将设备A的MAC地址封装,并通过接收ARP应答报文的接口发送封装后的数据报文。
边缘交换设备1收到网关设备发送给设备A的数据报文时,根据目的IP地址查找到出端口和对应的CVLAN,把SVLAN换成CVLAN从端口1转发出去。
本方案的优点是核心交换设备不用软件复制ARP报文,由边缘交换设备来进行复制。由于边缘交换设备对应的接入CVLAN数量不多,复制压力比较小。
基于同样的发明构思,本申请还提出一种装置,可应用于一配置有CVLAN到SVLAN的N:1虚拟局域网VLAN映射的交换设备上。参见图5,图5为本发明具体实施例中应用于上述技术的装置结构示意图。该装置包括:接收单元501、处理单元502和生成单元503。
接收单元501,用于通过上行口接收ARP请求报文;通过下行口接收ARP应答报文;
处理单元502,用于当接收单元501通过上行口接收到ARP请求报文时,根据该ARP请求报文的目标端IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的SVLAN内和映射到该SVLAN的所有CVLAN内广播该ARP请求报文;当接收单元501通过下行口接收到ARP应答报文时,根据该ARP应答报文的目标端IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,将该ARP应答报文在其所属的CVLAN映射到的SVLAN内广播发送;
生成单元503,用于接收单元501通过下行口接收到ARP应答报文时,根据接收该ARP应答报文的端口,以及该ARP应答报文所属的CVLAN、发送端MAC地址和发送端IP地址绑定生成用户信息表项;其中,所述用户信息表项包括:用户终端的IP地址和MAC地址、以及该用户终端对应的CVLAN和出接口。。
较佳地,
接收单元501,进一步用于通过下行口接收ARP请求报文;通过上行口接收ARP应答报文;
处理单元502,进一步用于当接收单元501通过下行口接收到ARP请求报文时,根据该ARP请求报文的目标端IP地址查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的CVLAN内,以及该CVLAN映射到的SVLAN内广播该ARP请求报文;当接收单元501通过上行口接收到ARP应答报文时,根据该ARP应答报文的目标端IP地址,查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,在该ARP应答报文所属的SVLAN内和映射到该SVLAN的所有CVLAN内广播该ARP应答报文;
生成单元503,进一步用于当接收单元501通过下行口接收到ARP请求报文时,根据接收该ARP报文的端口,以及该ARP应答报文所属的CVLAN、发送端MAC地址和发送端IP地址绑定生成用户信息表项。
较佳地,
处理单元502,具体用于在映射到该SVLAN的所有CVLAN内广播该ARP请求报文时,对于每个CVLAN,确定该CVLAN是否有下行口加入,如果是,在该CVLAN内广播该ARP请求报文;否则,不在该CVLAN内复制该ARP请求报文且不发送。
较佳地,
生成单元503,进一步用于对用户信息表项进行老化,在老化时间内,接收到该用户信息表项相关的报文时,刷新该用户信息表项的老化时间;在老化时间到,且未接收到该用户信息表项相关的报文时,根据该用户信息表项中用户信息发起ARP探测报文;在预设时间内,接收到该用户信息表项相关的报文时,刷新该用户信息表项的老化时间;否则,删除该用户信息表项。
较佳地,
生成单元503,用于根据该用户信息表项中用户信息发起ARP探测报文时,连续发送预设个数个ARP探测报文。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
综上所述,本发明通过在使能N:1VLAN映射的交换设备上使能ARP监听功能,该交换设备通过下行口接收到ARP报文时,学习ARP报文所属的CVLAN、发送端IP地址和发送端MAC地址的对应关系,以指导ARP报文和数据报文的转发,在能够不受应用场景限制的条件下获取用户信息,以使使能N:1VLA映射的交换设备上能够进行数据通信。
如在数据中心领域和传统的运营商、企业网领域内均可使用;同时不限制不同CVLAN下的MAC地址必须不同,也不需要用户设备的IP地址一定是动态IP地址。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种用户信息获取方法,应用于一配置有用户虚拟局域网CVLAN到运营商虚拟局域网SVLAN的N:1虚拟局域网VLAN映射的交换设备上,其特征在于,所述方法包括:
通过上行口接收到地址解析协议ARP请求报文时,根据该ARP请求报文携带的目标端因特网协议IP地址,查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的SVLAN内和映射到该SVLAN的所有CVLAN内广播该ARP请求报文;
通过下行口接收到ARP应答报文时,根据接收该ARP报文的端口,以及该ARP应答报文所属的CVLAN、发送端媒体访问控制MAC地址和发送端IP地址绑定生成用户信息表项;并根据该ARP应答报文的目标端IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,将该ARP应答报文在其所属的CVLAN映射到的SVLAN内广播发送;
其中,所述用户信息表项包括:用户终端的IP地址和MAC地址、以及该用户终端对应的CVLAN和出接口。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
通过下行口接收到ARP请求报文时,根据接收该ARP请求报文的端口,以及该ARP请求报文所属的CVLAN、发送端MAC地址和发送端IP地址绑定生成用户信息表项;并根据该ARP请求报文的目标端IP查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的CVLAN内,以及该CVLAN映射到的SVLAN内广播该ARP请求报文;
通过上行口接收到ARP应答报文时,根据该ARP应答报文携带的目标端IP地址,查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,在该ARP应答报文所属的SVLAN内和映射到该SVLAN的所有CVLAN内广播该ARP应答报文。
3.根据权利要求1所述的方法,其特征在于,所述在映射到该SVLAN的所有CVLAN内广播该ARP请求报文,包括:
对于每个CVLAN,确定该CVLAN是否有下行口加入,如果是,在该CVLAN内广播该ARP请求报文;否则,不在该CVLAN内复制该ARP请求报文且不发送。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法进一步包括:
对用户信息表项进行老化,在老化时间内,接收到该用户信息表项相关的报文时,刷新该用户信息表项的老化时间;
在老化时间到,且未接收到该用户信息表项相关的报文时,根据该用户信息表项中用户信息发起ARP探测报文;
在预设时间内,接收到该用户信息表项相关的报文时,刷新该用户信息表项的老化时间;否则,删除该用户信息表项。
5.根据权利要求4所述的方法,其特征在于,
所述根据该用户信息表项中用户信息发起ARP探测报文时,连续发送预设个数个ARP探测报文。
6.一种装置,可应用于一配置有用户虚拟局域网CVLAN到运营商虚拟局域网SVLAN的N:1虚拟局域网VLAN映射的交换设备上,其特征在于,该装置包括:接收单元、处理单元和生成单元;
所述接收单元,用于通过上行口接收地址解析协议ARP请求报文;通过下行口接收ARP应答报文;
所述处理单元,用于当所述接收单元通过上行口接收到ARP请求报文时,根据该ARP请求报文的目标端因特网协议IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的SVLAN内和映射到该SVLAN的所有用户虚拟局域网CVLAN内广播该ARP请求报文;当所述接收单元通过下行口接收到ARP应答报文时,根据该ARP应答报文的目标端IP地址,查找是否存在对应的用户信息表项;如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,将该ARP应答报文在其所属的CVLAN映射到的SVLAN内广播发送;
所述生成单元,用于所述接收单元通过下行口接收到ARP应答报文时,根据接收该ARP应答报文的端口,以及该ARP应答报文所属的CVLAN ID、发送端媒体访问控制MAC地址和发送端IP地址绑定生成用户信息表项,其中,所述用户信息表项包括:用户终端的IP地址和MAC地址、以及该用户终端对应的CVLAN和出接口。
7.根据权利要求6所述的装置,其特征在于,
所述接收单元,进一步用于通过下行口接收ARP请求报文;通过上行口接收ARP应答报文;
所述处理单元,进一步用于当所述接收单元通过下行口接收到ARP请求报文时,根据该ARP请求报文的目标端IP地址查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP请求报文;否则,在该ARP请求报文所属的CVLAN内,以及该CVLAN映射到的SVLAN内广播该ARP请求报文;当所述接收单元通过上行口接收到ARP应答报文时,根据该ARP应答报文的目标端IP地址,查找是否存在对应的用户信息表项,如果是,根据查找到的用户信息表项转发该ARP应答报文;否则,在该ARP应答报文所属的SVLAN内和映射到该SVLAN的所有CVLAN内广播该ARP应答报文;
所述生成单元,进一步用于当所述接收单元通过下行口接收到ARP请求报文时,根据接收该ARP报文的端口,以及该ARP应答报文所属的CVLAN、发送端MAC地址和发送端IP地址绑定生成用户信息表项。
8.根据权利要求6所述的装置,其特征在于,
所述处理单元,具体用于在映射到该SVLAN的所有CVLAN内广播该ARP请求报文时,对于每个CVLAN,确定该CVLAN是否有下行口加入,如果是,在该CVLAN内广播该ARP请求报文;否则,不在该CVLAN内复制该ARP请求报文且不发送。
9.根据权利要求6-8任意一项所述的装置,其特征在于,
所述生成单元,进一步用于对用户信息表项进行老化,在老化时间内,接收到该用户信息表项相关的报文时,刷新该用户信息表项的老化时间;在老化时间到,且未接收到该用户信息表项相关的报文时,根据该用户信息表项中用户信息发起ARP探测报文;在预设时间内,接收到该用户信息表项相关的报文时,刷新该用户信息表项的老化时间;否则,删除该用户信息表项。
10.根据权利要求9所述的装置,其特征在于,
所述生成单元,用于根据该用户信息表项中用户信息发起ARP探测报文时,连续发送预设个数个ARP探测报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410047121.1A CN103780494B (zh) | 2014-02-11 | 2014-02-11 | 一种用户信息获取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410047121.1A CN103780494B (zh) | 2014-02-11 | 2014-02-11 | 一种用户信息获取方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103780494A true CN103780494A (zh) | 2014-05-07 |
CN103780494B CN103780494B (zh) | 2016-09-07 |
Family
ID=50572348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410047121.1A Active CN103780494B (zh) | 2014-02-11 | 2014-02-11 | 一种用户信息获取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103780494B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105490911A (zh) * | 2014-09-19 | 2016-04-13 | 杭州华三通信技术有限公司 | 虚拟局域网的映射方法和装置 |
CN106487677A (zh) * | 2015-09-02 | 2017-03-08 | 华为技术有限公司 | 运营商边缘设备及数据转发方法 |
CN107547346A (zh) * | 2017-07-24 | 2018-01-05 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CN107633386A (zh) * | 2017-09-21 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 网络终端信息的管理方法、系统、设备及存储介质 |
CN108183863A (zh) * | 2017-12-22 | 2018-06-19 | 新华三技术有限公司 | 一种广播报文发送系统、方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101119275A (zh) * | 2007-09-19 | 2008-02-06 | 杭州华三通信技术有限公司 | 使业务提供商设备获取信息的方法、设备和系统 |
US20080195700A1 (en) * | 2005-05-23 | 2008-08-14 | Telefonaktiebolaget Lm Ericsson ( Publ) | Method and System for Local Peer-to-Peer Traffic |
CN103024852A (zh) * | 2012-11-27 | 2013-04-03 | 华为技术有限公司 | 业务转发的方法及设备 |
CN103107934A (zh) * | 2013-01-25 | 2013-05-15 | 杭州华三通信技术有限公司 | 一种报文处理控制方法及装置 |
-
2014
- 2014-02-11 CN CN201410047121.1A patent/CN103780494B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080195700A1 (en) * | 2005-05-23 | 2008-08-14 | Telefonaktiebolaget Lm Ericsson ( Publ) | Method and System for Local Peer-to-Peer Traffic |
CN101119275A (zh) * | 2007-09-19 | 2008-02-06 | 杭州华三通信技术有限公司 | 使业务提供商设备获取信息的方法、设备和系统 |
CN103024852A (zh) * | 2012-11-27 | 2013-04-03 | 华为技术有限公司 | 业务转发的方法及设备 |
CN103107934A (zh) * | 2013-01-25 | 2013-05-15 | 杭州华三通信技术有限公司 | 一种报文处理控制方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105490911A (zh) * | 2014-09-19 | 2016-04-13 | 杭州华三通信技术有限公司 | 虚拟局域网的映射方法和装置 |
CN106487677A (zh) * | 2015-09-02 | 2017-03-08 | 华为技术有限公司 | 运营商边缘设备及数据转发方法 |
CN106487677B (zh) * | 2015-09-02 | 2019-10-01 | 华为技术有限公司 | 运营商边缘设备及数据转发方法 |
CN107547346A (zh) * | 2017-07-24 | 2018-01-05 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CN107547346B (zh) * | 2017-07-24 | 2021-02-26 | 新华三技术有限公司 | 一种报文传输方法和装置 |
CN107633386A (zh) * | 2017-09-21 | 2018-01-26 | 携程旅游信息技术(上海)有限公司 | 网络终端信息的管理方法、系统、设备及存储介质 |
CN107633386B (zh) * | 2017-09-21 | 2021-03-05 | 携程旅游信息技术(上海)有限公司 | 网络终端信息的管理方法、系统、设备及存储介质 |
CN108183863A (zh) * | 2017-12-22 | 2018-06-19 | 新华三技术有限公司 | 一种广播报文发送系统、方法和装置 |
CN108183863B (zh) * | 2017-12-22 | 2021-05-07 | 新华三技术有限公司 | 一种广播报文发送系统、方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103780494B (zh) | 2016-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104283980B (zh) | 一种地址解析协议代答方法和装置 | |
US9832168B2 (en) | Service discovery within multi-link networks | |
EP2905930B1 (en) | Processing method, apparatus and system for multicast | |
US8982707B2 (en) | Interoperability of data plane based overlays and control plane based overlays in a network environment | |
US9648005B2 (en) | Method and system for extending network resources campus-wide based on user role and location | |
TWI538461B (zh) | 用於在虛擬區域網路中管理雲端裝置之管理伺服器及其管理方法 | |
CN106559292A (zh) | 一种宽带接入方法和装置 | |
KR101995145B1 (ko) | Ue들 및 고정 액세스 네트워크에서 작동하는 방법 | |
CN104243269A (zh) | 一种虚拟扩展局域网报文的处理方法及装置 | |
CN104935516A (zh) | 基于软件定义网络的通信系统及方法 | |
CN103841023A (zh) | 数据转发的方法和设备 | |
US20130182651A1 (en) | Virtual Private Network Client Internet Protocol Conflict Detection | |
CN104104747A (zh) | 报文传输方法及装置 | |
CN106899500B (zh) | 一种跨虚拟可扩展局域网的报文处理方法及装置 | |
CN107094110B (zh) | 一种dhcp报文转发方法及装置 | |
CN103248720A (zh) | 一种查询物理地址的方法及装置 | |
CN108063716B (zh) | 用于以太虚拟专用网的方法和设备 | |
CN103780494A (zh) | 一种用户信息获取方法和装置 | |
CN105187311B (zh) | 一种报文转发方法及装置 | |
CN103763407A (zh) | 二层虚拟局域网实现地址解析协议代理方法及局域网系统 | |
US20160080318A1 (en) | Dynamic host configuration protocol release on behalf of a user | |
CN105099847A (zh) | 一种多归属接入方法和装置 | |
CN109076019A (zh) | 用于客户驻地lan扩展的寻址 | |
CN103973833A (zh) | 一种arp缓存更新方法和装置 | |
CN104283783A (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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |