报文中继方法、装置及基站的制作方法

文档序号:7570373阅读:148来源:国知局
专利名称:报文中继方法、装置及基站的制作方法
技术领域
本发明涉及通信领域,具体而言,涉及一种报文中继方法、装置及基站。
背景技术
动态主机配置协议(DynamicHost Configuration Protocol,简称为 DHCP)的前 身是BOOTP协议。协议的运作分为两端服务器端(DHCP Server)和客户端(DHCP Client)。 客户端通过发送DHCP报文到服务器端请求配置,服务器接收到报文后,将分配给客户端的 配置通过应答报文发送给客户端,这些配置参数可以包括但不限于IP地址、子网掩码和 网关等信息。虚拟局域网(Virtual Local Area Network,简称为VLAN)是一种将物理网络划 分成多个逻辑局域网(LAN)的技术,每个VLAN都有一个局域网标识符(VLAN ID)。利用 VLAN技术,网络管理者能够根据实际应用需要,把同一物理局域网中的用户逻辑划分成不 同的广播域(每一个VLAN对应一个广播域),使具有相同业务的用户处于同一广播域。每 个VLAN在逻辑上就像一个独立的局域网,与物理上的LAN有相同的属性。同一个VLAN中 的所有广播和单播流量都被限制在该VLAN中而不会转发到其它VLAN中。当不同VLAN的 设备要进行通信时,必须经过三层的路由转发。如果在网络拓扑中,当DHCP客户端与DHCP服务器端处于不同的子网时,而连接 DHCP客户端与服务器端的路由器不支持DHCP Relay或者不允许配置Relay功能时,那么客 户端的广播报文就无法通过路由器到达服务器端,客户端就无法通过DHCP协议获取IP地
址配置信息。如果在网络拓扑中,当DHCP客户端与DHCP服务器端处于不同的VLAN时,而连接 客户端与服务器端的路由器不支持DHCP中继(Relay)或者不允许配置Relay功能时,客户 端也无法通过DHCP协议获取IP地址配置。

发明内容
针对相关技术中当DHCP客户端与DHCP服务器端处于不同的子网或VLAN时,由于 连接DHCP客户端与DHCP服务器的路由器不支持Relay功能或者不允许配置Relay功能, 导致客户端设备无法通过DHCP报文获取IP地址配置的问题,本发明提供了一种报文中继 方法、装置及基站,以解决上述问题至少之一。根据本发明的一个方面,提供了 一种报文中继方法。根据本发明的报文中继方法包括配置一个基站作为中继基站;采用配置的中继 基站在DHCP服务器和客户端设备之间转发报文。根据本发明的另一方面,提供了 一种报文中继装置。根据本发明的报文中继装置包括配置模块,用于配置中继功能;中继模块,用于 采用中继功能在DHCP服务器和客户端设备之间转发报文。根据本发明的又一方面,提供了一种基站。
根据本发明的基站包括上述报文中继装置。通过本发明,采用一个基站来中继客户端设备和DHCP服务器之间的DHCP报文,解 决了相关技术中当DHCP客户端与DHCP服务器端处于不同的子网或VLAN时,由于连接DHCP 客户端与DHCP服务器的路由器不支持Relay功能或者不允许配置Relay功能,导致客户端 设备无法通过DHCP报文获取IP地址配置的问题,进而使得客户端设备通过DHCP报文获取 IP地址配置,有效提高了用户体验。


此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发 明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是根据本发明实施例的中继基站所处的系统的架构图;图2是根据本发明实施例的报文中继方法的流程图;图3是根据本发明优选实施例的中继基站中继DHCP客户端报文的流程图;图4是根据本发明优选实施例的中继基站中继DHCP服务器端报文的流程图;图5是根据本发明优选实施例的中继基站构建MAC-VLAN对应关系的流程图;图6是根据本发明实施例的报文中继装置的结构框图;图7是根据本发明优选实施例的报文中继装置的结构框图。
具体实施例方式下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的 情况下,本申请中的实施例及实施例中的特征可以相互组合。图1是根据本发明实施例的中继基站所处的系统的架构图。如图1所示,该系统 主要包括DHCP服务器(krver)、BSC、客户端设备(基站(Base Transceiver Mation,简 称为BTS)1、BTS 2),中继基站(DHCP Relay)以及路由器和交换机。由图1可知,当基站子系统(Base Station Systems,简称为BSS)的网元客户端设 备(BTS1或BTS 2)与DHCP Server之间处于不同的子网或者不同的VLAN时,DHCP Server 无法收到客户端设备的广播报文,那么BTS就无法通过DHCP报文获取网络IP地址配置。但是,采用图1中所示的中继基站(DHCP Relay)通来中继客户端设备和DHCP服 务器之间的DHCP报文,可以使BTS通过DHCP报文获取网络IP地址配置。以下结合图2进 行描述。图2是根据本发明实施例的报文中继方法的流程图。如图2所示,该报文中继方 法包括以下处理步骤S202 配置一个基站作为中继基站;其中,该中继基站与DHCP服务器之间是路由可达的。步骤S204 采用配置的中继基站在动态主机配置协议(DHCP)服务器和客户端设 备之间转发报文。在上述方法中,采用一个基站来中继客户端设备和DHCP服务器之间的报文,解决 了相关技术中由于连接DHCP客户端与DHCP服务器的路由器不支持Relay功能或者不允许 配置Relay功能,导致客户端设备无法通过DHCP报文获取IP地址配置的问题,进而使得客户端设备通过DHCP报文获取IP地址配置,有效提高了用户体验。其中,配置一个基站作为中继基站,可以包括但不限于以下处理在某个接口上 开启或者关闭DHCP Relay、在本接口配置的VLAN或者是所有的VLAN上转发DHCP报文、 DHCPServer的IP地址以及到DHCP Server的路由。优选地,步骤S204中,中继基站在DHCP服务器和客户端设备之间转发报文可以进 一步包括以下处理(1)中继基站接收来自于客户端设备的第一报文,其中,第一报文携带有客户端设 备的MAC地址;(2)中继基站学习客户端设备所处的VLAN ;(3)中继基站根据第一报文中携带的MAC地址以及客户端设备所处的VLAN构建对 应关系;(4)中继基站构建新的报文并发送至DHCP服务器,其中,该报文中填充有中继基 站的IP地址信息。以下结合图3描述上述优选实施方式。图3是根据本发明优选实施例的中继基站中继DHCP客户端报文的流程图。如图 3所示,中继基站中继DHCP客户端报文可以进一步包括以下处理步骤S302 从UDP 67号端口接收客户端设备的报文;步骤S304 判断UDP报文中的报文类型是否是Bootp Request,如果是,执行步骤 S306,否则,执行步骤S314 ;步骤S306 确定进入DHCP客户端报文中继处理流程;步骤S308 根据报文的Hop与Sec字段判断该报文是否合法,如果是,执行步骤 S310,否则,流程结束;步骤S310 学习该客户端设备所处的VLAN ;在具体实施过程中,中继基站可以根据上述报文中携带的MAC地址以及客户端设 备所处的VLAN构建MAC-VLAN的对应关系。步骤S312 构造一份新的DHCP报文,直接拷贝原始报文的用户负载并将新的报文 转发到DHCP Server,其中,该报文中填充有中继基站的IP地址信息。步骤S314 判断UDP报文中的报文类型是否是Bootp R印ly,如果是,执行步骤 S316,否则,流程结束;步骤S316 确定进入DHCP服务器端报文中继处理流程。优选地,步骤S204中,中继基站在DHCP服务器和客户端设备之间转发报文可以进 一步包括以下处理(1)中继基站接收来自于动态主机配置协议DHCP服务器的第二报文,其中,第二 报文携带有客户端设备的媒体接入控制MAC地址;(2)中继基站在对应关系中查找与客户端设备的MAC地址对应的VLAN ;(3)中继基站构建新的报文并发送至客户端设备,其中,该报文中填充有对应的 VLAN0以下结合图4描述上述优选实施方式。图4是根据本发明优选实施例的中继基站中继DHCP服务器端报文的流程图。如图4所示,该中继基站中继DHCP服务器端报文主要包括以下处理步骤S402 从UDP 67号端口接收DHCP服务器的报文;步骤S404 判断UDP报文中的报文类型是否是Bootp Request,如果是,执行步骤 S406,否则,执行步骤S422 ;步骤S406 确定进入DHCP服务器端报文中继处理流程;步骤S408 根据报文的Hop与Sec字段判断该报文是否合法,如果是,执行步骤 S410,否则,流程结束;步骤S410 通过报文中携带的客户端设备的MAC地址查找该DHCP客户端设备的 原始VLAN,如果能够找到,则执行步骤S412,否则直接丢弃该报文,流程结束;步骤S412 构造一份新的DHCP报文;步骤S414 判断客户端设备的原始VLAN是否有效,如果是,执行步骤S416,否贝U, 执行步骤S418 ;步骤S416 在报文的MAC头中填充客户端的原始VLAN,之后,执行步骤S420 ;步骤S418 在报文的MAC头中填充客户端的原始VLAN,之后,执行步骤S420 ;步骤S420 发送该新的DHCP报文给客户端设备。步骤S422 判断UDP报文中的报文类型是否是Bootp Request,如果是,执行步骤 S424,否则,流程结束;步骤S4M 确定进入DHCP客户端报文中继处理流程。由图3和图4可知,在中继基站接收到报文之后,还可以包括以下处理(1)中继基站根据接收到的报文的类型确定向客户端设备或DHCP服务器转发报 文,即,是进入DHCP客户端报文中继处理流程还是进入DHCP服务器报文中继处理流程。(2)中继基站根据接收到的报文的字段判定该报文的合法性,如果不合法,则直接 丢弃该报文。通过合法性判定操作,可以有效增强系统的安全性。上面提到中继基站可以根据上述报文中携带的MAC地址以及客户端设备所处的 VLAN构建MAC-VLAN的对应关系。优选地,在中继基站构建对应关系之后,还可以包括以下 处理中继基站以哈希(HASH)表的形式存储对应关系,其中,HASH表中以客户端设备的MAC 地址为主键。以下结合图5描述中继基站构建MAC-VLAN对应关系的优选实施方式。图5是根据本发明优选实施例的中继基站构建MAC-VLAN对应关系的流程图。如 图5所示,中继基站构建MAC-VLAN对应关系主要包括以下处理步骤S502 从UDP 67号端口接收DHCP客户端设备的报文;步骤S504 解析报文中的用户的MAC地址;步骤S506 针对用户的MAC地址计算HASH索引值;步骤S508 判断该HASH索引值是否有效,如果是,执行步骤S510,否则,流程结 束;步骤S510 在HASH表对应的索引下查找该用户的MAC地址;步骤S512 判断该MAC是否已经存在,如果是,执行步骤S514,否则,执行步骤 S516 ;
步骤S514 更新记录中的VLAN以及时间戳;步骤S516 构造新的对应关系,并将该对应关系添加到HASH表中。在优选实施过程中,在中继基站存储上述对应关系之后,还可以包括以下处理逐 个判断HASH表中对应关系未发生更新的时长是否超过阈值;如果对应关系中的一个对应 关系未发生更新的时长超过阈值,则删除该对应关系。例如,可以设置HASH表超时检测定时器,HASH表超时检测定时器超时就触发检测 HASH条目是否超时的操作。如果Hash表为空,就直接退出检测流程;否则就循环遍历Hash 表中的所有的条目(即对应关系),逐个判断对应关系未发生更新的时长是否超时,如果超 时就删除该节点,如果没有超时就跳过该节点并判断下一个节点直到完成遍历Hash表。通过上述处理,可以有效降低中继基站内存中不必要的信息存储量,从而节省系 统资源。优选地,第一报文为DHCP发现报文,第二报文为DHCP提供报文;或者第一报文为 DHCP请求报文,第二报文为DHCP响应报文。以下结合一个实例上述优选实施方式。实例首先在网络上通过手工的方式配置一个基站并让该基站与BSC建立连接,然后将 该基站当作DHCP RelayAgent (即上述中继基站)在网络上运行。客户端启动时不知道DHCP Server的IP地址,所以通过发送广播的DHCP Discovery报文的方式发现DHCP Server。作为Relay的基站(即中继基站)接收到DHCP发现(Discovery)报文后,先自 动学习这个DHCP客户端所处的VLAN并保存在内存中,然后构建一份新的DHCP报文,填充 DHCPRelayAgent的IP地址、修改报文中的Hop字段,将报文发送给DHCP Server(服务器)。DHCP Server收到这个报文后,将回复一个DHCP提供(Offer)报文给DHCP Relay。 DHCPRelay接收到这个报文后,根据报文负载中的客户端的MAC地址查找客户端所处的 VLAN,如果找到,就将该VLAN填充到MAC头中,并通过广播的方式发送给客户端设备。如果 没有查找到,直接丢弃这个报文。客户端接收到服务器应答的DHCP offer报文后,发送广播DHCP请求(Request) 报文,Relay的基站按照处理DHCP Discovery报文的方式继续中继这个报文,将该报文发 3 ^ DHCPServer0当DHCP Server发送DHCP响应(ACK)报文给客户端并且客户端接收到该报文后, 客户端就可以获取IP地址配置,后续客户端与服务器端的DHCP通信都是单播报文,可以通 过路由器进行传输。Relay的工作就此完成。需要注意的是,上述处理过程中,如果客户端设备可以根据DHCP提供(Offer)报 文获取IP地址配置,则客户端设备无需广播DHCP请求(Request)报文,流程到此结束。图6是根据本发明实施例的报文中继装置的结构框图。如图6所示,该报文中继 装置包括配置模块60,用于配置中继功能;中继模块62,与配置模块60相连接,用于采用上述中继功能在DHCP服务器和客户 端设备之间转发报文。
上述装置的中继模块中继客户端设备和DHCP服务器之间的DHCP报文,解决了相 关技术中由于连接DHCP客户端与DHCP服务器的路由器不支持Relay功能或者不允许配置 Relay功能,导致客户端设备无法通过DHCP报文获取IP地址配置的问题,进而使得客户端 设备通过DHCP报文获取IP地址配置,有效提高了用户体验。优选地,如图7所示,中继模块62可以进一步包括第一接收单元620,用于接收 来自于客户端设备的第一报文,其中,第一报文携带有客户端设备的MAC地址;学习单元 622,用于学习客户端设备所处的VLAN ;构建单元624,分别与第一接收单元620和学习单元 622相连接,用于根据第一报文中携带的MAC地址以及客户端设备所处的VLAN构建对应关 系;第一发送单元626,与构建单元6M相连接,用于构建新的报文并发送至DHCP服务器, 其中,该报文中填充有中继基站的IP地址信息。优选地,如图7所示,上述中继模块还包括存储单元634,与构建单元6M相连 接,用于以HASH表的形式存储对应关系,其中,HASH表中以客户端设备的MAC地址为主键。 判断单元636,与存储单元634相连接,用于逐个判断HASH表中对应关系未发生更新的时长 是否超过阈值;处理单元638,与判断单元636相连接,用于在对应关系中的一个对应关系 未发生更新的时长超过阈值时,删除该对应关系。优选地,如图7所示,中继模块62可以进一步包括第二接收单元628,用于接收 来自于DHCP服务器的第二报文,其中,第二报文携带有客户端设备的媒体接入控制MAC地 址;查找单元630,与存储单元634相连接,用于在上述构建的MAC地址与VLAN的对应关 系中查找与客户端设备的MAC地址对应的虚拟局域网VLAN ;第二发送单元632,与查找单 元630相连接,用于构建新的报文并发送至客户端设备,其中,新的报文中填充有对应的 VLAN0优选地,如图7所示,上述中继模块还包括确定单元640,分别与第一接收单元 620和第二接收单元6 相连接,用于根据接收到的报文的类型确定向客户端设备或DHCP 服务器转发报文;合法性判定单元642,与确定单元640相连接,用于根据接收到的报文的 字段判定该报文的合法性。优选地,上述第一报文为DHCP发现报文,上述第二报文为DHCP提供报文;或者上 述第一报文为DHCP请求报文,上述第二报文为DHCP响应报文。需要注意的是,上述报文中继装置中各模块以及各单元相互结合的优选实施方式 具体可以参见图2至图5、以及上述实例的描述,此处不再赘述。在优选实施过程中,上述任一种报文中继装置可以设置在一个基站中。综上所述,借助本发明提供的上述实施例,在基站系统与服务器端处于不同的子 网或者不同的VLAN时,使用另外一个基站来中继客户端和服务器端之间的广播DHCP报文 以及自学习客户端原始VLAN的方式,使客户端通过使用DHCP协议获取配置,有效提高了用 户体验。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用 的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成 的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储 在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示 出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人 员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、 等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种报文中继方法,其特征在于,包括 配置一个基站作为中继基站;采用所述配置的中继基站在动态主机配置协议DHCP服务器和客户端设备之间转发报文。
2.根据权利要求1所述的方法,其特征在于,所述中继基站在所述DHCP服务器和客户 端设备之间转发报文包括所述中继基站接收来自于所述客户端设备的第一报文,其中,所述第一报文携带有所 述客户端设备的MAC地址;所述中继基站学习所述客户端设备所处的VLAN ;所述中继基站根据所述第一报文中携带的MAC地址以及所述客户端设备所处的VLAN 构建对应关系;所述中继基站构建新的报文并发送至所述DHCP服务器,其中,该报文中填充有所述中 继基站的IP地址信息。
3.根据权利要求2所述的方法,其特征在于,所述中继基站构建所述对应关系之后,还 包括所述中继基站以哈希HASH表的形式存储所述对应关系,其中,所述HASH表中以所述 客户端设备的MAC地址为主键。
4.根据权利要求3所述的方法,其特征在于,所述中继基站存储所述对应关系之后,还 包括逐个判断所述HASH表中所述对应关系未发生更新的时长是否超过阈值;如果所述对应关系中的一个对应关系未发生更新的时长超过阈值,则删除该对应关系。
5.根据权利要求3所述的方法,其特征在于,所述中继基站在所述DHCP服务器和客户 端设备之间转发报文包括中继基站接收来自于动态主机配置协议DHCP服务器的第二报文,其中,所述第二报文 携带有客户端设备的媒体接入控制MAC地址;所述中继基站在所述对应关系中查找与所述客户端设备的MAC地址对应的VLAN ; 所述中继基站构建新的报文并发送至所述客户端设备,其中,该报文中填充有所述对 应的VLAN。
6.根据权利要求5所述的方法,其特征在于,在所述中继基站接收所述第一报文或所 述第二报文之后,还包括所述中继基站根据接收到的报文的类型确定向所述客户端设备或所述DHCP服务器转 发报文;所述中继基站根据所述接收到的报文的字段判定该报文的合法性。
7.根据权利要求5或6所述的方法,其特征在于,所述第一报文为DHCP发现报文,所述第二报文为DHCP提供报文;或者 所述第一报文为DHCP请求报文,所述第二报文为DHCP响应报文。
8.一种报文中继装置,其特征在于,包括 配置模块,用于配置中继功能;中继模块,用于采用所述中继功能在动态主机配置协议DHCP服务器和客户端设备之间转发报文。
9.根据权利要求8所述的装置,其特征在于,所述中继模块包括第一接收单元,用于接收来自于所述客户端设备的第一报文,其中,所述第一报文携带 有所述客户端设备的MAC地址;学习单元,用于学习所述客户端设备所处的VLAN ;构建单元,用于根据所述第一报文中携带的MAC地址以及所述客户端设备所处的VLAN 构建对应关系;第一发送单元,用于构建新的报文并发送至所述DHCP服务器,其中,该报文中填充有 所述中继基站的IP地址信息。
10.根据权利要求9所述的装置,其特征在于,所述中继模块还包括存储单元,用于以HASH表的形式存储所述对应关系,其中,所述HASH表中以所述客户 端设备的MAC地址为主键。判断单元,用于逐个判断所述HASH表中所述对应关系未发生更新的时长是否超过阈值;处理单元,用于在所述对应关系中的一个对应关系未发生更新的时长超过阈值时,删 除该对应关系。
11.根据权利要求10所述的装置,其特征在于,所述中继模块还包括第二接收单元,用于接收来自于所述DHCP服务器的第二报文,其中,所述第二报文携 带有客户端设备的媒体接入控制MAC地址;查找单元,用于在所述对应关系中查找与所述客户端设备的MAC地址对应的虚拟局域 网 VLAN ;第二发送单元,用于构建新的报文并发送至所述客户端设备,其中,所述新的报文中填 充有所述对应的VLAN。
12.根据权利要求11所述的装置,其特征在于,所述中继模块还包括确定单元,用于根据接收到的报文的类型确定向所述客户端设备或所述DHCP服务器 转发报文;合法性判定单元,用于根据所述接收到的报文的字段判定该报文的合法性。
13.一种基站,其特征在于,所述基站包括如权利要求8至12中任一项所述的报文中继装置。
全文摘要
本发明公开了一种报文中继方法、装置及基站,上述方法包括配置一个基站作为中继基站;采用上述配置的中继基站在DHCP服务器和客户端设备之间转发DHCP报文。根据本发明提供的技术方案,解决了相关技术中当DHCP客户端与DHCP服务器端处于不同的子网或VLAN时,由于连接DHCP客户端与DHCP服务器的路由器不支持Relay功能或者不允许配置Relay功能,导致客户端设备无法通过DHCP报文获取IP地址配置的问题,进而使得客户端设备通过DHCP报文获取IP地址配置,有效提高了用户体验。
文档编号H04L29/12GK102143164SQ201110025619
公开日2011年8月3日 申请日期2011年1月24日 优先权日2011年1月24日
发明者唐国栋, 廖俊锋, 柳锋 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1