分布式的ip处理模块的实现方法

文档序号:7957193阅读:239来源:国知局
专利名称:分布式的ip处理模块的实现方法
技术领域
本发明涉及一种具有电信级的接入服务器,特别是一种互联网协议IP处理模块的实现方法。
背景技术
现有的接入服务器采用的是分布式的硬件体系结构,有主控板(SMB)、转发板(HRB)和接入板三种基本类型的单板,其中接入板可以有多种。为了增强系统的适应性和扩展性,适应各种业务,同时使业务处理分散化,各个接入板都可以独立处理业务,使系统具有很强的扩展性和适应大规模处理的能力。而以前的TCP/IP(传输控制协议/网间协议)协议栈提供的TCP(传输控制协议)及UDP(用户数据报协议)的socket(套接字)主要用于上层控制数据的发送,因此在普通的分布式路由设备中,socket(套接字)都是集中在主控板上处理,没有考虑分布式和大规模的处理能力问题。而在L2TP(二层隧道协议)、H.323 IP电话应用中,主要的业务数据是基于TCP/UDP的,这时集中处理的方式就存在很多问题,系统的处理瓶颈就集中在一块单板上而没有分布到整个系统中的各个单板上去进行负荷分担。

发明内容
本发明的目的是提供一种分布式的IP(互联网协议)处理模型。这个模型中不仅IP转发具有分布式的特性,基于TCP、UDP的上层本地业务(UDP和TCP之上的业务用的都是本地IP地址)也可以分布到各个接入板上处理,从而使L2TP、H.323(ITU-T标准)、Radius(远程认证拨号用户服务)等上层业务实现了分布式处理。根据上层应用的特点,通过端口号预分配的方式支持了作为客户端(Client)的TCP/UDP分布式应用,又通过端口号动态注册的方式解决了做为服务器端(Server)的分布式应用。并且通过一定的机制,使这种分布式的结构对外表现为一个完整的实体。该分布式的IP处理模块的实现方法包括以下步骤a.建立TCP/UDP端口号预分配的协议;b.建立全局端口动态注册的协议;c.建立支持虚拟专用拨号网L2TP业务的协议;d.建立支持IP电话业务的协议;e.进行IP数据包的本地分发。
其中上述步骤a中建立TCP/UDP端口号预分配的协议包括以下步骤a1.在系统初始化时,系统管理模块为每个独立的IP上层实体分配一个不同范围的端口号a2.将端口号范围分配的结果信息收集到集中的管理模块;a3将端口号范围分配的结果信息散发到各转发板上;a4.转发板根据收到的信息完成对IP包的本地分发操作。
上述步骤a1中系统管理模块为每个独立的IP上层实体分配一个不同范围的端口号是由主控板上的一个控制模块集中分配端口号,每个接入板从主控板申请一个动态的端口号范围,主控板上的控制模块记录所述的申请,并将其散发给转发板作为本地分发的依据。
上述步骤b中建立全局端口号动态注册的协议的方法包括以下步骤b1.每个单板通过绑定(Bind)命令固定一个端口号;b2.将上述Bind命令操作的结果由集中管理模块收集;b3.系统将收集的分布信息散发到各个转发板上;b4.转发板根据收到的信息完成IP的本地分发。
上述步骤C中建立支持虚拟专用拨号网L2TP业务的协议包括以下步骤
c1.主控板上的一个控制模块集中给每个L2TP实体预分一个不同范围的会话标识;c2.每个接入板从主控板申请一个动态的L2TP的会话标识范围;c3.主控板上的控制模块记录所述的申请并将其散发给转发板作为IP本地分发的依据;c4.IP处理模块将本地的L2TP数据系统根据会话标识分给相应的实体处理。
上述步骤d中建立支持IP电话业务的协议包括以下步骤d1.对呼叫数据进行集中处理和对话音数据进行分布式处理;d2.IP处理模块根据动态的本地端口号的目的端口号将IP数据包分发给相应的实体进行处理。
上述步骤e中进行IP数据包的本地分发包括以下步骤e1.系统接收IP数据包;e2.判断IP数据包的目的地址是否属于本设备,如果不是转到e8;否则e3.判断IP数据包承载的协议类型是否为TCP或UDP,如果不是转到e7;否则e4.判断IP数据包的端口号是否为L2TP的端口号,如果不是转到e6;否则e5.分析L2TP的内容,根据会话标识和系统收集的会话标识分布信息将其转发到目的单板;e6.根据TCP/UDP板文中的端口号和系统收集的端口号分布信息将其转发到目的单板;e7.根据IP数据包承载的协议,将IP数据包交给相应的ICMP或其它协议进行处理;e8.根据IP数据包的目的地址,将IP数据包进行转发操作。
以下结合附图和实施例详细本发明的实现方法及原理


图1是本发明所述IP处理模块的组成示意图;图2是本发明进行本地分发的流程图。
具体实施例方式
如图1所示,本发明为一种分布式的IP处理模块的实现方法,传统的本地上层处理实体只有一个,根据IP包承载的内容交给相应的上层协议模块(如TCP,UDP,ICMP(网间控制报文协议)去处理。在分布式处理模型中,可能有多个上层实体,它们分布在不同的物理板上,甚至分布在独立的设备上。对于这种情况,在进行上层协议处理前,需要确定IP包属于哪个上层实体,即进行IP包的本地分发。
IP上层协议的分布是随协议而不同,如ICMP协议就只有一个处理实体,而TCP和UDP就可能有多个处理实体。基于TCP/UDP的高层应用也随协议而定,如远程登录服务器(Telnet Server)或超文本协议服务器(Http server)配置管理模块只有一个,而远程拨号客户端(Telnet Client)、Radius客户端等就可能有多个。为了将本地IP包正确地分发到各个上层实体,本发明所述的实现方法包括以下步骤a.建立TCP/UDP端口号预分配的协议,该步骤中建立TCP/UDP端口号预分配的协议包括以下步骤a1.在系统初始化时,系统管理模块为每个独立的IP上层实体分配一个不同范围的端口号上层实体在发起对外的TCP.UDP连接请求时,从分配给自己的端口号中选择本地端口号,其中系统管理模块为每个独立的IP上层实体分配一个不同范围的端口号是由主控板上的一个控制模块集中分配端口号,每个接入板从主控板申请一个动态的端口号范围,主控板上的控制模块记录所述的申请,并将其发给转发板作为本地分发的依据。
a2.将端口号范围分配的结果信息收集到集中的管理模块;
a3.系统将端口号范围分配的结果信息散发到各转发板上;a4.转发板根据收到的信息完成对IP包的本地分发操作。
b.建立全局端口动态注册的协议,本步骤中建立全局端口号动态注册的协议的方法包括以下步骤b1.每个单板通过绑定(Bind)命令固定一个端口号,即每个单板通过绑定(Bind)一个固定端口号的方式对外提供服务;b2.将上述绑定(Bind)操作的结果由集中管理模块收集;b3.系统将管理模块收集的分布信息散发到各个转发板上;b4.转发板根据收到的信息完成IP的本地分发从而实现上层应用服务的分布式。
c.建立支持虚拟专用拨号网(VPDN)L2TP业务的协议,本步骤中建立支持VPDN L2TP业务的协议包括以下步骤c1.主控板上的一个控制模板集中给每个L2TP实体预分一个不同范围的会话标识(Session Id);c2.每个接入板从主控板申请一个动态的L2TP的Session Id范围;c3.主控板上的控制模块记录所述的申请并将其散发给转发板作为IP本地分发的依据;c4.IP处理模块将本地的L2TP数据系统根据Session Id分给相应的实体处理。由于L2TP实体位于UDP之上,多个实体对外表现为一个IP实体,与某个LNS(L2TP网络服务器)只建立一条UDP隧道,在它上面通过Session Id实现PPP(点到点)复用。IP处理模块可以将本地的L2TP数据流根Session Id分给相应的实体去处理。
d.建立支持IP电话业务的协议,本步骤中建立支持IP电话业务的协议包括以下步骤d1.对呼叫数据进行集中处理和对话音数据进行分布式处理;
d2.对于H.245 TCP通道和RTP(实时传输协议)、RTCP(实时传输控制协议)UDP通道,由于本地端口号是动态的,可以分布给各个实体去处理。IP处理模块会根据目的端口号将IP数据包分发给相应的处理实体。IP处理模块根据动态的本地端口号的目的端口号将IP数据包分发给相应的实体进行处理。
e.进行IP数据包的本地分发,本步骤中IP转发模块根据系统收集的端口号和Session Id分布信息以及板文内容来实现TCP/UDP的分布式,如图2所示,对于IP数据包进行进行IP数据包的本地分发包括以下步骤e1.系统接收IP数据包;e2.判断IP数据包的目的地址是否属于本设备,如果不是转到e8;否则e3.判断IP数据包承载的协议类型是否为TCP或UDP,如果不是转到e7;否则e4.判断IP数据包的端口号是否为L2TP的端口号,如果不是转到e6;否则e5.分析L2TP的内容,根据Session Id和系统收集的Session Id分布信息将其转发到目的单板;e6.根据TCP/UDP板文中的端口号和系统收集的端口号分布信息将其转发到目的单板;e7.根据IP数据包承载的协议,将IP数据包交给相应的ICMP或其它协议进行处理;e8.根据IP数据包的目的地址,将IP数据包进行转发操作。
上面所述为报文的下行分发流程,即本设备接收其它设备发来的IP报文的流程,对于本地产生的报文流程处理更简单,各个单板都可以产生自己的基于TCP/UDP的报文,使用系统分配给本板的端口号范围,组包完毕后直接发出即可。
权利要求
1.一种分布式的IP处理模块的实现方法,其特征在于所述的实现方法包括以下步骤a.建立TCP/UDP端口号预分配的协议;b.建立全局端口动态注册的协议;c.建立支持虚拟专用拨号网L2TP业务的协议;d.建立支持IP电话业务的协议;e.进行IP数据包的本地分发。
2.根据权利要求1所述分布式的IP处理模块的实现方法,其特征在于所述步骤a中建立TCP/UDP端口号预分配的协议包括以下步骤a1.在系统初始化时,系统管理模块为每个独立的IP上层实体分配一个不同范围的端口号a2.将端口号范围分配的结果信息收集到集中的管理模块;a3.将端口号范围分配的结果信息散发到各转发板上;a4.转发板根据收到的信息完成对IP包的本地分发操作。
3.根据权利要求2所述分布式的IP处理模块的实现方法,其特征在于所述步骤a1中系统管理模块为每个独立的IP上层实体分配一个不同范围的端口号是由主控板上的一个控制模块集中分配端口号,每个接入板从主控板申请一个动态的端口号范围,主控板上的控制模块记录所述的申请,并将其散发给转发板作为本地分发的依据。
4.根据权利要求1所述分布式的IP处理模块的实现方法,其特征在于所述步骤b中建立全局端口号动态注册的协议的方法包括以下步骤b1.每个单板绑定一个固定端口号;b2.将上述绑定操作的结果由集中管理模块收集;b3系统将收集的分布信息散发到各个转发板上;b4.转发板根据收到的信息完成IP的本地分发。
5.根据权利要求1所述分布式的IP处理模块的实现方法,其特征在于所述步骤C中建立支持虚拟专用拨号网L2TP业务的协议包括以下步骤c1.主控板上的一个控制模块集中给每个L2TP实体预分一个不同范围的会话标识;c2.每个接入板从主控板申请一个动态的L2TP的会话标识范围;c3.主控板上的控制模块记录所述的申请并将其散发给转发板作为IP本地分发的依据;c4.IP处理模块将本地的L2TP数据系统根据会话标识分给相应的实体处理。
6.根据权利要求1所述分布式的IP处理模块的实现方法,其特征在于所述步骤d中建立支持IP电话业务的协议包括以下步骤d1.对呼叫数据进行集中处理和对话音数据进行分布式处理;d2.IP处理模块根据动态的本地端口号的目的端口号将IP数据包分发给相应的实体进行处理。
7.根据权利要求1所述分布式的IP处理模块的实现方法,其特征在于所述步骤e中进行IP数据包的本地分发包括以下步骤e1.系统接收IP数据包;e2.判断IP数据包的目的地址是否属于本设备,如果不是转到e8;否则e3.判断IP数据包承载的协议类型是否为TCP或UDP,如果不是转到e7;否则e4.判断IP数据包的端口号是否为L2TP的端口号,如果不是转到e6;否则e5.分析L2TP的内容,根据会话标识和系统收集的会话标识分布信息将其转发到目的单板;e6.根据TCP/UDP报文中的端口号和系统收集的端口号分布信息将其转发到目的单板;e7.根据IP数据包承载的协议,将IP数据包交给相应的ICMP或其它协议进行处理;e8.根据IP数据包的目的地址,将IP数据包进行转发操作。
全文摘要
本发明涉及一种分布式的IP处理模块的实现方法,其包括以下步骤首先建立TCP/UDP端口号预分配的协议和全局端口动态注册的协议;再建立支持VPDN L2TP业务的协议及支持IP电话业务的协议;最后进行IP数据包的本地分发。本发明所述分布式的IP处理模块中不仅IP转发具有分布式的特性,基于TCP、UDP的上层本地业务(UDP和TCP之上的业务用的都是本地IP地址)也可以分布到各个接入板上处理,从而使L2TP、H.323、Radius等上层业务实现了分布式处理。
文档编号H04L29/06GK1412997SQ0113567
公开日2003年4月23日 申请日期2001年10月17日 优先权日2001年10月17日
发明者马云 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1