CN102340547B - 运营级IPv4向IPv6的平滑过渡方法、设备和系统 - Google Patents
运营级IPv4向IPv6的平滑过渡方法、设备和系统 Download PDFInfo
- Publication number
- CN102340547B CN102340547B CN201010233838.7A CN201010233838A CN102340547B CN 102340547 B CN102340547 B CN 102340547B CN 201010233838 A CN201010233838 A CN 201010233838A CN 102340547 B CN102340547 B CN 102340547B
- Authority
- CN
- China
- Prior art keywords
- ipv4
- address
- user
- packet
- link
- 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.)
- Active
Links
Abstract
本发明公开了一种运营级IPv4向IPv6的平滑过渡方法、设备和系统,包括:AR在接收到发自用户域的上行IPv4数据包后,从中提取本地链路标识、源IP地址和端口信息,查找会话映射表,获得对应的公有IPv4地址及端口号信息,将IPv4数据包中的原有源IPv4地址及端口信息替换为所述公有IPv4地址及端口号信息,并转发到ISP网络中;AR对于收到的通信对端发送的下行的IPv4数据包,根据该IPv4数据包中的公有目的IPv4地址及目的端口查找会话映射表,获得对应的用户侧的IP地址及端口信息,并将所述公有目的IPv4地址及目的端口转换成用户侧的IPv4地址、端口,获取本地链路标识,转发到用户域的设备中。
Description
技术领域
本发明涉及网络通信技术,特别是指一种运营级IPv4向IPv6的平滑过渡方法、设备和系统。
背景技术
目前,IPv4地址已经呈现越来越紧缺的态势,据分配机构(IANA)根据最近3年的地址使用数据,预测全球IPv4地址资源将于2011年底前后耗尽,在我国IPv4地址短缺问题尤为严重。
同时,随着IPv4地址的进一步消耗,互联网中逐步出现了多层NAPT的现象,即用户侧NAPT与运营商侧NAPT共存的现象。多层NAPT的出现不仅进一步破坏了互联网端对端的特征,而且复杂多样的NAPT也大大阻碍了互联网业务开展,造成了网络中路由及地址规划的复杂混乱的局面,并对网络及业务的性能造成较大的影响。如何避免多层NAPT并存的局面,摆脱运营商对于IPv4私网地址的管理分配,实现由IPv4向IPv6平滑过渡,已成为当前互联网发展中的关键问题。
由于各种原因,目前绝大多数的互联网业务只位于IPv4互联网上,即服务器只支持利用IPv4协议进行访问,而且全球互联网业务短期内也难全部迁移到IPv6网络上。在IPv4地址即将出现紧缺的情况下,如何保证用户已有的IPv4客户端仍可正常访问IPv4互联网网络的资源,是网络运营商(ISP)实现宽带业务正常运营的关键。
针对如上问题,目前业界已提出了多种方案,如NAT444和A+P等。
NAT444方案需要在用户侧和网络侧同时部署NAPT与运营商侧NAPT设备,然而多层NAPT的出现不仅进一步破坏了互联网端对端的特征,而且复杂多样的NAPT也大大阻碍了互联网业务开展。A+P方案实现了一个公有IPv4地址被多个用户共享,不同用户之间采用端口区间进行区隔,但不同用户的传输层端口资源采用静态分配的方法,因此资源利用率低。而且,以上方案并没有从运营的角度提出包含地址分配管理、用户认证、业务流程等方面的综合性解决方案,因此,很难短期内在商用网络上真正得到实施。
发明内容
为解决以上现有技术中存在的问题,本发明提出一种运营级IPv4向IPv6的平滑过渡方法、设备和系统。
基于上述目的本发明提供的一种运营级IPv4向IPv6的平滑过渡方法,包括:
AR在接收到发自用户域的上行IPv4数据包后,从中提取本地链路标识、源IPv4地址和端口信息,查找会话映射表,获得对应的公有IPv4地址及端口号信息,将所述IPv4数据包中的原有源IPv4地址及端口信息替换为所述公有IPv4地址及端口号信息,并转发到ISP网络中;其中,所述会话映射表中包含有同一用户的本地链路标识、源IPv4、源端口信息、与公有IPv4地址、端口号信息的映射关系;
AR对于收到的通信对端发送的下行的IPv4数据包,根据该IPv4数据包中的公有目的IPv4地址及目的端口查找会话映射表,获得对应的用户侧的IPv4地址及端口信息,并将所述公有目的IPv4地址及目的端口转换成用户侧的IPv4地址、端口,获取本地链路标识,在相应的用户链路上转发到用户域的设备中。
可选的,该方法进一步包括:预先在用户终端通过网络侧认证后,网络侧的CPE向用户终端下发IPv6地址前缀。
可选的,该方法进一步包括:用户终端开始IPv4的通信过程,并发送上行的IPv4数据包达到CPE,CPE判断若该IPv4数据包采用IPv6的标识方式,则用户终端通过建立的IPv6隧道向CPE发送IPv4数据包,在该数据包的IPv4报头前加上CPE下发的所述IPv6地址前缀。
可选的,该方法进一步包括:CPE向AR发送包含有为用户终端预配置的IPv4地址块的用户地址注册请求消息;
AR收到所述的用户地址注册请求消息后,提取所述IPv4地址块保,并提取用户的本地链路标识与所述IPv4地址块绑定保存在本地。
可选的,该方法所述AR在接收到上行IPv4数据包,从中提取其本地链路标识、源IPv4地址和端口信息后,进一步判断本IPv4源地址是否在该用户注册IPv4块范围内,若是,则进入下一步,否则拒绝。
可选的,该方法在用户认证系统中保存用户的最大会话数目信息,所述AR在收到所述CPE发来的用户地址注册请求消息后,进一步通过与用户认证系统的交互获取该用户的最大会话数目信息;
所述AR在收到所述上行IPv4数据包后,进一步判断如果在会话映射表中查找到对应的会话记录,则直接转到下一步;否则继续判断当前该用户的会话总数是否大于所述最大会话数目,若是,则拒绝本次会话的建立;否则会话映射表中生成新的记录。
可选的,该方法进一步包括:CPE基于本地中预配置的IPv4地址块,给用户终端分配IPv4地址、网关地址,并向用户终端下发DNS服务器地址。
可选的,该方法CPE若采用二层标识作为本地链路标识的方式,则给用户终端只分配IPv4地址,或者同时分配IPv4地址和IPv6地址;
如果CPE采用IPv6的标识方式,则给用户终端只分配IPv6地址,或者同时分配IPv4地址和IPv6地址。
可选的,该方法进一步包括:CPE向AR转发来自用户域的所述IPv4数据包过程中,CPE判断若采用二层标识作为本地链路标识的方式,则根据默认路由直接转发用户的IPv4数据包;若采用IPv6的标识方式,则需采用4in6的隧道方式进行封装,并转发IPv6数据包。
可选的,该方法所述AR将所述下行的IPv4数据包在用户链路上转发到用户域的设备后,该方法进一步包括:当返回的所述IPv4数据包到达CPE时,CPE判断若所述IPv4数据包是采用二层标识的方式,将该数据报直接进行转发;若是采用IPv6标识的方式,则进行4in6隧道的解封装,然后进行转发。
基于上述目的,本发明还提供了一种接入路由器(AR),包括:
会话映射表存储模块,用于存储会话映射表,所述会话映射表中包含有同一用户的本地链路标识、源IPv4、源端口信息、与公有IPv4地址、端口号信息的映射关系;
路由管理模块,用于在接收到发自用户域的上行IPv4数据包后,从中提取本地链路标识及源IPv4地址和端口信息,查找会话映射表,获得对应的公有IPv4地址及端口号信息,将所述IPv4数据包中的原有源IP地址及端口信息替换为所述公有IPv4地址及端口号信息,传输给数据包路由转发模块;对于收到的通信对端发送的下行的IPv4数据包,根据该IPv4数据包中的公有目的IPv4地址及目的端口查找会话映射表,获得对应的用户侧的IPv4地址及端口信息,并将所述公有目的IPv4地址及目的端口转换成用户侧的IPv4地址、端口,获取本地链路标识;
数据包路由转发模块,用于将所述路由管理模块输出的上行IPv4数据包转发到ISP网络中;将所述路由管理模块输出的下行IPv4数据包在用户链路上转发到用户域的设备中。
可选的,该接入路由器还包括IPv4地址注册模块,用于在接收到CPE发来的包含有为用户终端预配置的IPv4地址块的用户地址注册请求消息后,提取所述IPv4地址块保,并提取用户的本地链路标识与所述IPv4地址块绑定保存在本地。
可选的,该接入路由器所述路由管理模块在接收到上行IPv4数据包,从中提取其本地链路标识、源IPv4地址和端口信息后,进一步判断本IPv4源地址是否在该用户注册IPv4块范围内,若是,则继续后续处理,否则拒绝。
可选的,该接入路由器所述IPv4地址注册模块,还用于通过与用户认证系统的交互获取该用户的最大会话数目信息;
所述路由管理模块,在收到所述上行IPv4数据包后,进一步判断如果在会话映射表中查找到对应的会话记录,则直接转到下一步;否则继续判断当前该用户的会话总数是否大于所述最大会话数目,若是,则拒绝本次会话的建立;否则会话映射表中生成新的记录。
基于上述目的本发明还提供了一种用户端前置设备(CPE),包括:
链路建立模块,用于在用户终端和所述的AR之间建立点到点链路;
IPv4/IPv6数据包路由转发模块,用于将用户终端发来的上行IPv4数据包进行用户IPv4数据包的封装转发到所述AR;将AR发来的下行IPv4数据包按照IPv4数据包的目的地址转发到用户终端。
可选的,该用户端前置设备还包括:
IPv6地址分配模块,用于在用户终端通过网络侧认证后,向用户终端下发IPv6地址前缀;
IPv4地址分配模块,用于基于本地的预配置为用户终端分配IPv4地址和网关地址;
DNS代理及DNS配置模块,用于向用户终端下发DNS服务器地址。
可选的,该用户端前置设备还包括:IPv4地址注册模块,用于向AR发送包含有为用户终端预配置的IPv4地址块的用户地址注册请求消息;
基于上述目的,本发明还提供了一种运营级IPv4向IPv6的平滑过渡系统,包括:所述的AR,以及所述的CPE;
所述AR,用于存储会话映射表,所述会话映射表中包含有同一用户的本地链路标识、源IPv4、源端口信息、与公有IPv4地址、端口号信息的映射关系;在接收到发自用户域的上行IPv4数据包后,从中提取本地链路标识及源IPv4地址和端口信息,查找会话映射表,获得对应的公有IPv4地址及端口号信息,将所述IPv4数据包中的原有源IPv4地址及端口信息替换为所述公有IPv4地址及端口号信息,将上行IPv4数据包转发到ISP网络中;对于收到的通信对端发送的下行的IPv4数据包,根据该IPv4数据包中的公有目的IPv4地址及目的端口查找会话映射表,获得对应的用户侧的IPv4地址及端口信息,并将所述公有目的IPv4地址及目的端口转换成用户侧的IPv4地址、端口,获取本地链路标识,将下行IPv4数据包在用户链路上转发到用户域的设备中;
所述CPE,用于在用户终端和所述的AR之间建立点到点链路,将用户终端发来的上行IPv4数据包进行用户IPv4数据包的封装转发到所述AR;将AR发来的下行IPv4数据包按照IP包的目的地址转发到用户终端。
可选的,该系统还包括AAA服务器:用于存储每个用户享受的最大的会话数目。
从上面所述可以看出,本发明提供的运营级IPv4向IPv6的平滑过渡方法、设备和系统,从最大程度上简化运营商对于IPv4地址的分配管理过程,网络运商者只向采用路由型客户网关(路由型CPE)的宽带用户分配IPv6地址,延缓IPv4地址消耗,并实现用户对于IPv4和IPv6互联网的访问。这种方案无IPv4地址的分配过程,减少了NAPT的层级及其带来的业务提供风险,并支持逐步实现向IPv6网络的过渡。
网络运营商不需再为用户分配IPv4地址,由用户自主选择网络IPv4地址或者在CPE中进行预配置,并保证户网络仍能接入宽带IPv4网络。为了防止不同用户选择地址重叠而引起冲突,本发明利用网络中的链路标识(如二层链路标识、IPv6隧道标识)来实现用户IPv4数据包的隔离。这种方案使运营商能够摆脱IPv4地址的分配管理,通过单个IPv4地址的共享技术来延缓IPv4地址的消耗,同时,本方案可以去除路由型CPE中的NAPT功能,减少了网络中网络NAPT的层数,提升了网络的数据传输性能、业务的穿透性。本方案提出的配套的用户认证、IPv6地址分配、业务使用等全过程,可保证网络业务全面过渡到IPv6以前,支持互联网的互通性,并可实现运营级IPv4向IPv6的平滑过渡。
附图说明
图1为本发明实施例本发明实施例的运营级IPv4向IPv6的平滑过渡系统架构示意图;
图2为本发明实施例AR中的地址/标识处理示意图;
图3为本发明实施例CPE内部模块结构示意图;
图4为本发明实施例AR端模块结构示意图;
图5为本发明实施例本发明实施例的运营级IPv4向IPv6的平滑过渡方法通信流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
本发明方案主要面向采用路由型客户网关的IP宽带用户(包括家庭用户和企业用户),为宽带用户提供向IPv6平滑过渡的解决方案。着重解决用户网络和ISP网络如何配合,实现IPv4地址紧缺而无法分配公有地址时,用户网络仍能接IPv4资源,并可实现向IPv6的过渡。由于接入网直接关系到用户的网络地址实施和使用,是IP地址消耗最多的环节,因此,接入部分的IPv6过渡是最为关键也是难度最大的部分。
本发明方案的实现思路
公网IPv4地址出现紧缺时,本发明方案突破传统的用户IP地址使用模式,提出不再向用户分配IPv4地址、只分配IPv6地址的思路模式。用户可自行在CPE上设置IPv4地址块,也可以由CPE提供商预先配置在设备中,但不必由ISP在用户上线时分配给用户。为了便于下面的讨论,配置在CPE中的地址块表示为IPv4_AddrBlock_CPE,这种地址可以为运营商统一预置的公网IPv4地址或私网IPv4地址。
一般情况下,不同用户自行配置的CPE的IPv4_AddrBlock_CPE可能出现冲突,因此需结合本地链路标识LinkID来识别用户数据报的来源。在本方案中,对于通过二层链路可实现用户的唯一标识时,LinkID即为二层标识号(如PPPoE标识号或VLAN标识号等);对于无法使用二层链路实现用户的唯一标识时,可以利用IPv6唯一标识用户的特性,建立4in6的点到点隧道,从而将IPv4数据包封装在IPv6隧道中进行传输,此时的LinkID即为IPv6地址,从而实现了IPv4用户数据流的唯一性区分。
在本方面方案中,在网络的AR中实现多个用户共享单个IP地址等,其主要功能是:结合网络层链路信息实现地址/端口的映射、IPv4数据包的转换和状态的维护。在本发明方案中,AR对于上行的用户IPv4数据包转换一方面结合用户的源IP(即IPv4)和端口信息,同时还要结合用户的本地链路标识。经过NAPT转换后,上行数据流的地址/端口转换为公有IPv4地址和端口。由于采用动态的IPv4地址共享技术,单IP地址、端口等资源可在多个用户间进行复用,因此可以实现延缓IPv4地址的消耗。与其他的LSN方案不同,本方案中的IPv4数据包转换过程引入了本地链路标识ID,从而使得IPv4_AddrBlock_CPE不再由ISP进行分配成为可能。
尽管用户IP地址不由ISP分配,但为了方便网络管理,并制定相关路由策略,本方案中要求CPE将IPv4_Addr_CPE地址在网络设备上AR上提前进行注册。
对于用户的IPv6端到端通信可采用现有的全球可路由IPv6地址进行通信。
为了支持IPv4数据的传输,本方案需要有完备的用户管理、认证、计费等机制,以实现该过渡方案的可控可管性,后面将会详细介绍。
由于单个地址被多个用户共享,为了防止端口资源被部分用户有意或者无意消耗光,本方案中同时引入了最大会话数目Max_session_number属性,该属性可以规定每个用户可建立的最大的映射会话的数目,也即可使用的最大的“NAPT公共端口资源”,该属性的原始数据在ISP网络设定后可以保留在认证系统AAA中,因此本方案也需要对于AAA系统进行一定扩展,增加Max_session_number属性。
基于以上方案设计,用户发出的上行IPv4数据包经过CPE直接路由转发后,通过CPE和AR之间的点到点链路到达AR,然后其源地址/端口经过AR内部的NAPT转换成公有地址/端口号(详细流程见下一部分),并转发到公网上,实现对于IPv4资源的访问。通信对端发出的下行数据过程则基于同样的映射数据库进行转换。在这个过程中,用户发出的数据流在进入ISP网络前只经过了一次NAPT转换处理,而不是NAT444方案中的两次。
对于用户的IPv6端到端通信可采用现有的全球可路由IPv6地址进行通信;在本方案中,可以利用IPv6唯一标识用户的特性,建立4in6的点到点隧道,从而将IPv4数据包封装在IPv6隧道中进行传输,将隧道标识作为链路标识,实现了IPv4用户数据流的唯一性区分。
本发明运营级IPv4向IPv6的平滑过渡系统的一个实施例,参见图1所示。主要包括:用户端前置设备(CPE,CustompremiseEquipment)、接入路由器(AR,AccessRouter)和认证、授权与计费(AAA,Authentication,Authorization,Accouting)服务器等三部分,分别介绍如下:
CPE,为支持三层路由功能的用户网关,实现用户数据流的中继和路由功能,在本发明实施例的运营级IPv4向IPv6的平滑过渡系统中,CPE网关实现链路建立、用户认证、地址配置及IPv4数据包转发的功能。
AR:ISP侧实现接入用户的IP网络设备,AR除配合用户网关实现相关功能外,还需完成地址端口映射、协议翻译、IPv4数据包路由转发等相关功能,并通过与AAA系统的配合,共同完成用户的计费和管理。
AAA服务器:在传统的宽带认证服务器上进行了一定的扩展,为了防止用户过渡消耗网络端口资源,本发明实施例的方案规定每个用户享受的最大的地址/端口映射会话(后面简称“会话”)数目,该属性的原始数据在ISP网络设定后可以保留在认证系统AAA中。
此外,与本系统组成相关的概念介绍如下:
本地链路:对于特定用户来说,需要在CPE和AR之间建立点到点通信链路,为了防止不同用户的IPv4地址冲突而影响正常路由,需要不同用户之间的链路相互隔离。这种链路可以是二层的链路,如PPPoE链路和VLAN链路等,也可以是网络层实现的链路隔离,如通过将IPv4数据流封装在IPv6隧道中,通过IPv6地址的唯一性实现不同用户的IPv4流量的隔离。
本地链路标识:用来区分不同本地链路的数字标识,在本报告中用LinkID(userA)来代表特定用户userA的本地链路。
用户终端:用户终端设备可以为双栈IPv4/IPv6终端设备或未升级、纯IPv4终端设备或者纯IPv6终端网络通信设备,在本发明实施例运营级IPv4向IPv6的平滑过渡系统中对于用户终端无特殊要求。
本发明实施例的运营级IPv4向IPv6的平滑过渡系统重点是在CPE和AR增加相应的客户端相关功能模块和网络端相关功能模块,并和已有网络模块之间建立相关接口,从而实现IPv4地址极度紧缺时,用户能够继续接入IPv4网络。本发明实施例的运营级IPv4向IPv6的平滑过渡系统不用修改用户终端以及网络中的其他设备。
为了便于说明,这里将数据通信的过程分为两个域:用户域和网络域,AR以下的部分属于用户域,AR以上的部分属于网络域,如图2所示。
IPv4地址及端口等标识转换处理是本方案中的核心内容之一,是用户侧数据路由到网络侧的基础,在此以用户发起的传输层(TCP/UDP)的源端口和IP地址的信息映射处理过程。
对于由用户侧发起的传输层会话,用户终端发出的IP包(即IPv4数据包)中含有一个IPv4源地址User_src_addr4和源端口User_src_port。由于CPE不必进行NAPT转换,终端产生的IPv4数据包的源地址/端口组合在穿越CPE时不进行转换。AR在收到该IPv4数据包后,除了检查该IP包的地址和端口信息外,同时提取该用户的本地链路标识LinkID,该三个属性联合可以唯一区分本会话,即:LinkID+User_src_addr4+User_src_port联合标识本会话。映射规则如下:
AR根据用户IPv4数据包所在链路标识查找地址数据库,看用户地址User_src_addr4是否在注册登记的范围以内,其次检查是否超过用户会话的总数(从Radius用户数据库中提取),如果符合以上要求,在AR会话数据库中建立起对应的会话映射表;否则,拒绝该IPv4数据包。该会话映射表的结构如下:
其会话映射表中包括:用户域的本地链路标识LinkID、用户地址User_src_addr4、端口号User_src_port,以及网络域的公有地址Public_src_addr4、公有端口号Public_src_port等信息之间的映射关系。主要结构如表1所示:
表1
由于IP地址的紧缺,多个用户的IPv4会话将共享相同的IPv4地址,因此网络侧的公有IP地址+端口成了网络上的一种重要资源。对于同一个用户,在一次上线过程中将对应多个“公有IPv4地址+端口号”的不同组合。而且基于同样的原因,并防止恶意消耗公共端口资源,需要将用户能使用的IPv4地址会话数进行限制,这是上面过程中查询AAA数据库中用户最大会话数的原因。
对于IPv4数据传输而言,本地传输标识主要有两类:二层链路标识和IPv6地址标识。IPv6地址标识具有全局唯一性,能够唯一标识IPv4数据包的属性来源。如果在现网的二层链路不足以区分用户的前提下,可以考虑采用第二种方案,即利用IPv6隧道封装IPv4数据流,并实现对于用户的区分。
本发明系统重点在于对CPE和AR已有的设备进行一定的扩展,下面对本发明实施例的CPE和AR内部结构进行详细说明:
(1)CPE:
CPE本身是一个支持IPv4和IPv6的双栈路由型网关,业界已有CPE网关通过PPPoE等协议实现与网络侧AR建立点到点通信链路过程,因此相关技术也可适用于本系统。这里只进行介绍本发明相关的部分。
如图3所示,CPE功能的主要在两部分,IPv4地址注册模块以及无NAPT的IPv4数据包转发,相关功能模块描述如下:
链路建立模块,用于CPE和AR之间通过现有协议建立点到点链路,并实施用户的认证和鉴权,接收AR下发的IPv6地址。
IPv6地址分配模块,通过有状态方式或者无状态方式给用户终端分配IPv6地址。
IPv4地址分配模块,基于CPE中的预配置的IPv4_AddrBlock_CPE,利用DHCPv4协议为用户终端分配IPv4地址和网关等信息;
IPv6地址分配模块,用于在用户终端通过网络侧认证后,向用户终端下发IPv6地址前缀;
DNS代理及DNS配置模块,基于DHCP协议向用户终端下发DNS服务器地址等相关信息,也可以作为本地用户网络的DNSProxy代理。
IPv4地址注册模块,向AR地址注册发出请求,注册IPv4地址前缀IPv4_AddrBlock_CPE到AR中,并实现和本地链路ID的关联;由于用户侧网关和网络侧网关将会建立起点对点链路,因此仅需自动建立AR内部的静态路由即可。
IPv4/IPv6数据包路由转发模块,接受用户终端发送的上行IPv4数据包,进行用户IPv4数据包的封装。支持IPv4数据包的转发操作。若使用传统二层链路封装,则按照已有方式进行二层封装;若使用了IPv6的隧道封装方式,则需做进一步的隧道封装;对于从AR转发过来的下行数据包,则直接按照IPv4数据包的目的地址直接向用户终端进行转发。
(2)AR:
网络侧AR是一个支持IPv4和IPv6的双栈网关。网络侧AR和用户侧CPE网关配合,完成用户本地链路建立、用户认证、IPv6地址和DNS服务器下发分配等过程。这些为典型网络通信过程,不再详述。其主要模块组成如图4所示:
IPv4地址注册模块,用于接收客户端IPv4地址注册请求:网络侧AR接受用户侧CPE的客户IPv4地址IPv4_AddrBlock_CPE注册请求消息,提取用户的本地链路标识,并从用户认证系统中提取该用户的最大会话数信息,以方便做进一步的用户会话管理。
路由管理模块,用于上行IPv4数据包接收,在接收到CPE发送的上行数据后,将去除其二层相关字段,并提取其本地链路标识及源IP地址和端口信息,即IP包中的所对应的LinkID、User_src_addr4和User_src_port,并判定本IP源地址是否在该用户注册IPv4_AddrBlock_CPE块范围内,若是,则进入下一步,否则拒绝。
路由管理模块,还用于完成用户会话记录的建立。如果在会话映射表中查找到对应的会话记录,则直接转到下一步。否则就可判定本IP包是本次会话的首个IPv4数据包,则需要继续判定当前该用户的会话总数是否大于Max_session_number,若是,则拒绝本次会话的建立;否则会话映射表中生成新的记录。
IPv4/IPv6数据包路由转发模块,用于数据包格式的转换与转发:在根据上行IP包中的LinkID、User_src_addr4、User_src_port和查找到对应的会话记录后,获得对应的公有IPv4地址及端口号信息“Public_src_addr4Public_src_port”,替换IPv4包中的原有源IP地址及端口信息进行转换,并进行转发。
该IPv4/IPv6数据包路由转发模块,对于下行(即回程)的数据包,查找会话映射表,根据该IP包的公有目的IPv4地址和目的端口查找到对应的会话记录,并转换成用户侧的IP地址、端口,并获取本地链路标识,并进一步转换成二层的链路信息,形成二层的报文。然后在用户链路上进行转发。
会话映射表存储模块,用于存储会话映射表,所述会话映射表中包含有同一用户的本地链路标识、源IPv4、源端口信息、与公有IPv4地址、端口号信息的映射关系。
会话映射表建立模块,用于建立所述会话映射表。
会话映射表查找模块,用于查询所述会话映射表,所述路由管理模块可通过该模块向所述会话映射表进行查询。
参见图5所示,本发明实施例本发明实施例的运营级IPv4向IPv6的平滑过渡方法通信包括如下步骤:
步骤501,用户终端可提前在CPE中配置好自己的接入帐号/密码信息。然后CPE根据已配置的信息通过AR向用户认证系统(如AAA服务器)完成用户的认证,并建立CPE到用户终端、CPE到AR的点对点通信链路。
步骤502,AR向CPE下发包括IPv6地址前缀在内的IPv6地址参数。其中,如果本地链路采用隧道的方式,则需要在IPv4数据包通信之前打通IPv6的通路。
步骤503,CPE通过与AR之间建立的用户本地链路向AR发送IPv4地址注册请求消息,该请求消息中包含有为用户终端预配置的IPv4地址块,即IPv4_AddrBlock_CPE;
AR收到用户侧CPE发来的客户IPv4地址注册请求消息后,将该IPv4地址块IPv4_AddrBlock_CPE保存到本地,提取用户的本地链路标识,并通过与用户认证系统的交互获取该用户的最大会话数信息。其中,可将提取的用户本地链路标识与所述IPv4地址块绑定保存在本地。
其中,所述IPv4地址块一般代表的是一个IPv4地址范围。所述本地链路标识是用来区分不同本地链路的数字标识,可以是如:二层链路标识、IPv6地址标识等,其中IPv6地址标识具有全局唯一性,能够唯一标识IPv4数据包的属性来源。由于CPE向AR发送IPv4地址注册请求消息前已与AR建立用户本地链路,因此AR在本地就可以提取用户的本地链路标识。
步骤504,CPE基于本地中预配置的IPv4_AddrBlock_CPE,通过有状态方式或者无状态方式给用户终端分配IPv6地址、IPv4地址、以及网关地址等信息,基于DHCP协议向用户终端下发DNS服务器地址等信息。
其中,所述有状态方式指的是DHCPv6有状态IPv6地址分配的过程;无状态方式指的是ND方式的IPv6无状态地址分配过程。CPE若采用二层标识作为本地链路标识的方式,则可以不给用户终端分配IPv6地址;同样,如果CPE采用IPv6的标识方式,则也可以不给用户终端IPv4地址。
步骤505,用户终端开始IPv4的通信过程,并发送IPv4数据包达到CPE。
其中,根据预先的设置,若采用IPv6的标识方式,则用户终端通过建立的IPv6隧道向CPE发送IPv4数据包,在该数据包的IPv4报头前还需加上CPE下发的所述IPv6地址前缀。
步骤506,CPE向AR转发所述IPv4数据包。
根据CPE与AR建立的用户本地链路形式,若采用二层标识作为本地链路标识的方式,则根据默认路由直接转发用户的IPv4数据包;若采用IPv6的标识方式,则需采用4in6的隧道方式进行封装,并转发IPv6数据包。
步骤507,AR在接收到CPE发送的上行数据,即所述IPv4数据包后,从中提取其本地链路标识、源IP地址和端口信息,即IP包中的LinkID、User_src_addr4和User_src_port,并判断本IP源地址是否在该用户注册IPv4_AddrBlock_CPE块范围内,若是,则进入下一步,否则拒绝。
步骤508,用户会话记录的建立。首先判断如果在会话映射表中查找到对应的会话记录,则直接转到下一步。否则就可判定本IP包是本次会话的首个IPv4数据包,则需要继续判断当前该用户的会话总数是否大于最大会话数目“Max_session_number”,若是,则拒绝本次会话的建立;否则会话映射表中生成新的记录,其格式参见表1所示。
步骤509,数据包格式的转换与转发,在根据上行IP包中的LinkID、User_src_addr4、User_src_port和查找到对应的会话记录后,获得对应的公有IPv4地址“Public_src_addr4”及端口号信息Public_src_port”,并用该公有IPv4地址和端口号替换IPv4包中的原有源IP地址及端口号,并转发到ISP网络中。
步骤510,对于收到的通信对端发送的下行的数据包,AR查找会话映射表,根据该IP包的公有目的IPv4地址和目的端口查找到对应的会话记录。如果AR与CPE之间采用二层标识作为本地链路标识的方式,则进一步转换成二层的链路信息,形成二层的报文;若采用IPv6的标识方式,则需采用4in6的隧道方式进行封装,并转发IPv6数据包。然后在用户链路上转发到用户域的设备中。
步骤511,当返回的IPv4数据包到达CPE时,CPE若判断该IPv4数据包是采用二层标识的方式,该IPv4数据包可直接进行转发;若判断是采用IPv6标识的方式,则需进行4in6隧道的解封装,然后直接进行转发。
步骤512,IPv4数据通信过程结束。
本发明实施例中,IPv6数据包的通信过程可以采用已有的IPv6接入方案,在此不再重复。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本发明提供的运营级IPv4向IPv6的平滑过渡方法和系统,在网络侧为用户只分IPv6地址的方式。在用户认证通过后,网络侧网关为用户侧网关仅仅下发IPv6地址前缀,本方案不需要AR分配IPv4地址给用户。从用户终端到网络侧,取消了CPE侧的NAPT转换,提高数据转发的效率,比两次NAPT方案减小了业务穿越的风险。
用户网关只上报注册自身IP地址的机制设计,提高了地址管理的能力,实现了对于IP公有地址资源在多个用户间的的集中式复用,从而也节省了地址资源。
对于用户终端的透明管理和监控机制。由于CPE不用对用户IPv4数据包的IP地址进行转换,因此运营商网络可以直接看到用户终端的IP地址信息,因此直接掌握用户的终端数量信息,并确定用户终端使用网络的合法性。
AR中基于(本地链路标识+源IPv4地址+源端口)组合映射表建立机制,实现了网络层信息和链路层信息的结合,不同用户间即便是地址重复也不会发生冲突,避免了CPE中用户地址相同情况下的地址冲突及网络路由混乱。
AR中基于(本地链路标识+源IPv4地址+源端口)组合的映射表查找、数据包转换及转发机制,这是一种不同于其他的LSN中纯粹基于IP地址及端口转换的新型NAPT设计。
基于IPv6隧道来封装用户自己定义的IP地址的数据包,充分发挥了IPv6地址唯一性标识用户的特性,从而避免了不同用户间网络地址的冲突。
基于这种机制的不同用户终端间互通方法,不同用户间的互通访问机制。不同用户的IP地址即使相同,也不会发生通信障碍,因为在网络侧AR上进行了地址转换,每个终端看到对方的地址都是公有IP地址,相互之间可以通信。
本发明提出的用户最大会话数限制机制,在认证服务器中增加用户的最大会话属性,从而在AR中限制用户的最大会话数,防止用户过分占用资源,将地址资源管理的颗粒度从以前的IP层面上升到传输层的会话端口层面,这是一种地址紧缺情况下精细化使用地址资源的新方法。
通过本发明提供的运营级IPv4向IPv6的平滑过渡方法和系统还包括有如下优点:
1)不用给用户CPE网关不分配IPv4地址,仅分配IPv6地址,减轻网络运营商的地址管理的负担,并且能保证IPv4/IPv6网络的可达性。
2)由于CPE不进行IP地址和端口的转换,因此网络运营商可以直接看到用户终端的IP地址信息,因此直接掌握用户的终端数量信息,方便对于用户的管理。
3)本发明方案从用户终端到骨干网只经过一次NAPT转换,比NAT444中的两次NAPT方案提高了数据转发的效率,业务穿越一次NAPT也比两次NAPT的成本低,稳定性高。
4)基于用户会话总数属性以及地址注册信息,可增加新的功能,提高系统的安全性,并为建立新的资源使用模式打下基础,如在IPv4地址紧缺的时代,可以基于用户可使用的最大会话数收费。
所属领域的普通技术人员应当理解:以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种运营级IPv4向IPv6的平滑过渡方法,其特征在于,包括:
接入路由器AR在接收到发自用户域的上行IPv4数据包后,从中提取本地链路标识、源IPv4地址和源端口信息,查找会话映射表,获得对应的公有IPv4地址及端口号信息,将所述IPv4数据包中的源IPv4地址及源端口信息替换为所述公有IPv4地址及端口号信息,并转发到网络运营商ISP网络中;其中,所述会话映射表中包含有同一用户的本地链路标识、源IPv4地址、源端口信息、与公有IPv4地址、端口号信息的映射关系;
AR对于收到的通信对端发送的下行IPv4数据包,根据该IPv4数据包中的表示目的的公有IPv4地址及端口号信息查找会话映射表,获得对应的用户侧的源IPv4地址及源端口信息,并将所述公有IPv4地址及端口号信息转换成用户侧的源IPv4地址及源端口信息,获取本地链路标识,在相应的用户链路上转发到用户域的设备中;
其中,本地链路标识是用来区分不同本地链路的数字标识。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括:预先在用户终端通过网络侧认证后,网络侧的用户端前置设备CPE向用户终端下发IPv6地址前缀。
3.根据权利要求2所述的方法,其特征在于,该方法进一步包括:用户终端开始IPv4的通信过程,并发送上行IPv4数据包到达CPE,CPE判断若该IPv4数据包采用IPv6的标识方式,则用户终端通过建立的IPv6隧道向CPE发送IPv4数据包,在该数据包的IPv4报头前加上CPE下发的所述IPv6地址前缀。
4.根据权利要求1所述的方法,其特征在于,该方法进一步包括:用户端前置设备CPE向AR发送包含有为用户终端预配置的IPv4地址块的用户地址注册请求消息;
AR收到所述的用户地址注册请求消息后,提取所述IPv4地址块,并提取用户的本地链路标识与所述IPv4地址块绑定保存在本地。
5.根据权利要求4所述的方法,其特征在于,所述AR在接收到上行IPv4数据包,从中提取其本地链路标识、源IPv4地址和源端口信息后,进一步判断本源IPv4地址是否在该用户注册IPv4块范围内,若是,则进入下一步,否则拒绝。
6.根据权利要求4所述的方法,其特征在于,在用户认证系统中保存用户的最大会话数目信息,所述AR在收到所述CPE发来的用户地址注册请求消息后,进一步通过与用户认证系统的交互获取该用户的最大会话数目信息;
所述AR在收到所述上行IPv4数据包后,进一步判断如果在会话映射表中查找到对应的会话记录,则直接转到下一步;否则继续判断当前该用户的会话总数是否大于所述最大会话数目,若是,则拒绝本次会话的建立;否则会话映射表中生成新的记录。
7.根据权利要求1所述的方法,其特征在于,该方法进一步包括:用户端前置设备CPE基于本地中预配置的IPv4地址块,给用户终端分配IPv4地址和网关地址,并向用户终端下发DNS服务器地址。
8.根据权利要求7所述的方法,其特征在于,CPE若采用二层标识作为本地链路标识的方式,则给用户终端只分配IPv4地址,或者同时分配IPv4地址和IPv6地址;
如果CPE采用IPv6的标识方式,则给用户终端只分配IPv6地址,或者同时分配IPv4地址和IPv6地址。
9.根据权利要求1所述的方法,其特征在于,该方法进一步包括:用户端前置设备CPE向AR转发来自用户域的所述IPv4数据包过程中,CPE判断若采用二层标识作为本地链路标识的方式,则根据默认路由直接转发用户的IPv4数据包;若采用IPv6的标识方式,则需采用4in6的隧道方式进行封装,并转发IPv6数据包。
10.根据权利要求1所述的方法,其特征在于,所述AR将所述下行IPv4数据包在用户链路上转发到用户域的设备后,该方法进一步包括:当返回的所述IPv4数据包到达用户端前置设备CPE时,CPE判断若所述IPv4数据包是采用二层标识的方式,将该数据包直接进行转发;若是采用IPv6标识的方式,则进行4in6隧道的解封装,然后进行转发。
11.一种接入路由器AR,其特征在于,包括:
会话映射表存储模块,用于存储会话映射表,所述会话映射表中包含有同一用户的本地链路标识、源IPv4地址、源端口信息、与公有IPv4地址、端口号信息的映射关系;其中,本地链路标识是用来区分不同本地链路的数字标识;
路由管理模块,用于在接收到发自用户域的上行IPv4数据包后,从中提取本地链路标识及源IPv4地址和源端口信息,查找会话映射表,获得对应的公有IPv4地址及端口号信息,将所述IPv4数据包中的源IPv4地址及源端口信息替换为所述公有IPv4地址及端口号信息,传输给数据包路由转发模块;对于收到的通信对端发送的下行IPv4数据包,根据该IPv4数据包中的表示目的的公有IPv4地址及端口号信息查找会话映射表,获得对应的用户侧的源IPv4地址及源端口信息,并将所述公有IPv4地址及端口号信息转换成用户侧的源IPv4地址及源端口信息,获取本地链路标识;
数据包路由转发模块,用于将所述路由管理模块输出的上行IPv4数据包转发到网络运营商ISP网络中;将所述路由管理模块输出的下行IPv4数据包在用户链路上转发到用户域的设备中。
12.根据权利要求11所述的接入路由器,其特征在于,还包括IPv4地址注册模块,用于在接收到用户端前置设备CPE发来的包含有为用户终端预配置的IPv4地址块的用户地址注册请求消息后,提取所述IPv4地址块,并提取用户的本地链路标识与所述IPv4地址块绑定保存在本地。
13.根据权利要求12所述的接入路由器,其特征在于,所述路由管理模块在接收到上行IPv4数据包,从中提取其本地链路标识、源IPv4地址和端口信息后,进一步判断本源IPv4地址是否在该用户注册IPv4块范围内,若是,则继续后续处理,否则拒绝。
14.根据权利要求12所述的接入路由器,其特征在于,所述IPv4地址注册模块,还用于通过与用户认证系统的交互获取该用户的最大会话数目信息;
所述路由管理模块,在收到所述上行IPv4数据包后,进一步判断如果在会话映射表中查找到对应的会话记录,则直接转到下一步;否则继续判断当前该用户的会话总数是否大于所述最大会话数目,若是,则拒绝本次会话的建立;否则会话映射表中生成新的记录。
15.一种运营级IPv4向IPv6的平滑过渡系统,其特征在于,包括:权利要求11-14任意一项所述的AR,以及用户端前置设备CPE,所述CPE包括:
链路建立模块,用于在用户终端和权利要求11-14任意一项所述的AR之间建立点到点链路;
IPv4/IPv6数据包路由转发模块,用于将用户终端发来的上行IPv4数据包进行用户IPv4数据包的封装转发到所述AR;将AR发来的下行IPv4数据包按照下行IPv4数据包的目的地址转发到用户终端。
16.根据权利要求15所述的系统,其特征在于,该用户端前置设备还包括:
IPv6地址分配模块,用于在用户终端通过网络侧认证后,向用户终端下发IPv6地址前缀;
IPv4地址分配模块,用于基于本地的预配置为用户终端分配IPv4地址和网关地址;
DNS代理及DNS配置模块,用于向用户终端下发DNS服务器地址。
17.根据权利要求15所述的系统,其特征在于,该用户端前置设备还包括:IPv4地址注册模块,用于向AR发送包含有为用户终端预配置的IPv4地址块的用户地址注册请求消息。
18.根据权利要求15所述的系统,其特征在于,还包括AAA服务器:用于存储每个用户享受的最大的会话数目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010233838.7A CN102340547B (zh) | 2010-07-22 | 2010-07-22 | 运营级IPv4向IPv6的平滑过渡方法、设备和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010233838.7A CN102340547B (zh) | 2010-07-22 | 2010-07-22 | 运营级IPv4向IPv6的平滑过渡方法、设备和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102340547A CN102340547A (zh) | 2012-02-01 |
CN102340547B true CN102340547B (zh) | 2015-11-25 |
Family
ID=45516044
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010233838.7A Active CN102340547B (zh) | 2010-07-22 | 2010-07-22 | 运营级IPv4向IPv6的平滑过渡方法、设备和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102340547B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111246453A (zh) * | 2018-11-28 | 2020-06-05 | 华为技术有限公司 | 一种数据传输方法、用户面网元及控制面网元 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102761440B (zh) | 2012-06-28 | 2015-01-28 | 华为终端有限公司 | 管理IPv4终端的通道的建立方法及网络网关 |
CN103889019A (zh) * | 2012-12-20 | 2014-06-25 | 联想(北京)有限公司 | 一种发送数据的方法及装置 |
CN103796191B (zh) * | 2014-03-05 | 2017-09-26 | 大唐移动通信设备有限公司 | 向用户终端发送数据的方法、装置及终端 |
CN106603435B (zh) * | 2016-12-28 | 2019-10-15 | 北京华为数字技术有限公司 | 分配端口块资源的方法及装置 |
CN109428950B (zh) * | 2017-08-31 | 2021-11-02 | 中国电信股份有限公司 | Ip地址池自动调度方法和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004045183A1 (en) * | 2002-11-13 | 2004-05-27 | Thomson Licensing S.A. | Method and device for supporting a 6to4 tunneling protocol across a network address translation mechanism |
CN1706155A (zh) * | 2002-10-22 | 2005-12-07 | 思科技术公司 | 作为nat&nat-pt网关的路由器上的共享端口地址转换 |
CN1893394A (zh) * | 2005-07-05 | 2007-01-10 | 华为技术有限公司 | 一种穿越网络地址转换的方法 |
CN101610285A (zh) * | 2009-06-15 | 2009-12-23 | 北京邮电大学 | IPv4与IPv6共存网络中的P2P通信方法 |
CN101753466A (zh) * | 2008-12-18 | 2010-06-23 | 大唐移动通信设备有限公司 | 传输无线宽带业务报文的方法和装置 |
-
2010
- 2010-07-22 CN CN201010233838.7A patent/CN102340547B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1706155A (zh) * | 2002-10-22 | 2005-12-07 | 思科技术公司 | 作为nat&nat-pt网关的路由器上的共享端口地址转换 |
WO2004045183A1 (en) * | 2002-11-13 | 2004-05-27 | Thomson Licensing S.A. | Method and device for supporting a 6to4 tunneling protocol across a network address translation mechanism |
CN1893394A (zh) * | 2005-07-05 | 2007-01-10 | 华为技术有限公司 | 一种穿越网络地址转换的方法 |
CN101753466A (zh) * | 2008-12-18 | 2010-06-23 | 大唐移动通信设备有限公司 | 传输无线宽带业务报文的方法和装置 |
CN101610285A (zh) * | 2009-06-15 | 2009-12-23 | 北京邮电大学 | IPv4与IPv6共存网络中的P2P通信方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111246453A (zh) * | 2018-11-28 | 2020-06-05 | 华为技术有限公司 | 一种数据传输方法、用户面网元及控制面网元 |
CN111246453B (zh) * | 2018-11-28 | 2021-06-15 | 华为技术有限公司 | 一种数据传输方法、用户面网元及控制面网元 |
Also Published As
Publication number | Publication date |
---|---|
CN102340547A (zh) | 2012-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102025591B (zh) | 虚拟专用网络的实现方法及系统 | |
CN102340547B (zh) | 运营级IPv4向IPv6的平滑过渡方法、设备和系统 | |
JP5497901B2 (ja) | 匿名通信の方法、登録方法、メッセージ受発信方法及びシステム | |
CN104396192B (zh) | 不对称网络地址封装 | |
CN101399742B (zh) | 数据业务网络系统及数据业务的处理方法 | |
CN100484083C (zh) | 一种地址转换方法及实现该方法的混合地址转换路由器 | |
CN103841024B (zh) | 一种家庭网关实现数据分流的方法和家庭网关 | |
JP5488591B2 (ja) | 通信システム | |
CN101110745A (zh) | 衔接二层网络和三层网络的方法、装置和系统 | |
CN102572008B (zh) | 通信业务处理方法与系统、网关设备 | |
CN102055637B (zh) | 宽带网络系统及其实现方法 | |
CN102025589A (zh) | 虚拟专用网络的实现方法及系统 | |
CN101150566B (zh) | 异构网络系统中实现网络地址转换协议转换的装置及方法 | |
WO2011160367A1 (zh) | 网络地址转换转发方法及装置 | |
CN101459698A (zh) | 域内和域间的网络互连方法及其系统 | |
CN102413199B (zh) | 一种宽带接入服务器创建和上报地址映射关系的系统和方法 | |
CN101461198A (zh) | 中继网络系统及终端适配装置 | |
Iannone et al. | Implementing the locator/id separation protocol: Design and experience | |
CN103227787B (zh) | 一种基于ARP代理的4over6隧道自动建立方法 | |
CN102238075A (zh) | 基于以太网点对点协议的IPv6路由建立方法及接入服务器 | |
CN107317752A (zh) | 一种转发数据报文的方法及装置 | |
CN101800781A (zh) | 一种穿越nat的隧道过渡方法及系统 | |
CN102546362A (zh) | 报文处理方法、系统和用户前端设备 | |
CN101908996A (zh) | 接入私有网络的方法、数据传输方法及装置和系统 | |
CN102571375A (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 |