YD/T 3234-2017
基本信息
标准号:
YD/T 3234-2017
中文名称:支持端口信息下发的IPCP协议扩展选项技术要求
标准类别:通信行业标准(YD)
标准状态:现行
出版语种:简体中文
下载格式:.zip .pdf
下载大小:1541876
相关标签:
端口
信息
协议
扩展
技术
标准分类号
关联标准
出版信息
相关单位信息
标准简介
YD/T 3234-2017.Technique requirements of the IPCP configuration options for port information assigned to subscriber.
1范围
YD/T 3234定义PPP协议的IPCP配置选项,用于在IPCP选项中下发端口范围信息或端口块信息。
YD/T 3234适用于基于PPP或PPPoE的宽带接入(包括固网宽带、移动宽带等)。
2规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
YD/T 1097-2009 路由器设备技术要求核心路由器
YD/T 1148-2005 网络接入服务器技术要求一宽带网络接入服务器
YD/T 2809-2015 基于端口信息下发的双栈接入技术要求
BBF TR-177在TR-101环境下迁移到IPv6 (Migration to IPv6 in the context ofTR-101 )
BBF TR-187IPv6 PPP宽带接入(IPv6 for PPP broadband access)
IETF RFC1332PPP IPCP控制协议(The PPP Internet protocol control protocol (IPCP))
IETF RFC1661点到点协议(The point-to-point protocol (PPP))
IETF RFC1877PPP IPCP 的名字服务器扩展( PPP Internet Protocol Control Protocol Extensions for Name Server Addresses )
IETF RFC2153PPP厂商扩展(PPP Vendor Extensions )
IETF RFC2290PPP IPCP协议的移动IPv4配置选项(Mobile-IPv4 Configuration Option for PPP IPCP)
标准内容
ICS33.040.40
中华人民共和国通信行业标准
YD/T3234—2017
支持端口信息下发的IPCP协议
扩展选项技术要求
Technique requirements of the IPCP configuration options for portinformation assigned to subscriber2017-04-12发布
中华人民共和国工业和信息化部2017-07-01实施
2规范性引用文件,
术语、定义与缩略语
3.1术语和定义
3.2缩略语..
PPP接入概述.
PPPoE拨号接入模型
IPCP报文结构
4.4IPCP配置协商过程
4.5端口块或端口范围。
5IPCP配置选项
5.1端口块(Port-Block)配置选项5.2端口范围(Port-Range)配置选项5.3IPCP配置选项协商
6功能要求,
家庭网关
主机功能要求
YD/T3234—2017
YD/T3234—2017
本标准按照GB/T1.1—2009给出的规则起草请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任。本标准由中国通信标准化协会提出并归口。本标准起草单位:中国电信集团股份有限公司、华为技术有限公司、中兴通讯股份有限公司。本标准主要起草人:李阳春、伍佑明、谭景华、李小洋、黄灿灿、朱永庆、杜宗鹏、孟伟。
1范围
YD/T3234—2017
支持端口信息下发的IPCP协议扩展选项技术要求本标准定义PPP协议的IPCP配置选项,用于在IPCP选项中下发端口范围信息或端口块信息。本标准适用于基于PPP或PPPoE的宽带接入(包括固网宽带、移动宽带等)。2规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。YD/T1097—2009
YD/T1148—2005
YD/T2809—2015
BBFTR-177
BBFTR-187
IETFRFC1332
IETFRFC1661
IETFRFC1877
IETFRFC2153
IETFRFC2290
IETFRFC2472
IETFRFC2516
IETFRFC3818
IETFRFC6346
IETFRFC6431
路由器设备技术要求核心路由器网络接入服务器技术要求一宽带网络接入服务器基于端口信息下发的双栈接入技术要求在TR-101环境下迁移到IPv6(MigrationtoIPv6inthecontextofTR-101)IPv6PPP宽带接入(IPv6forPPPbroadbandaccess)PPPIPCP控制协议(ThePPPInternetprotocolcontrolprotocol(IPCP))点到点协议(Thepoint-to-pointprotocol(PPP))PPPIPCP的名字服务器扩展(PPPInternetProtocolControlProtocolExtensions for Name Server Addresses)PPP厂商扩展(PPPVendorExtensions)PPPIPCP协议的移动IPv4配置选项(Mobile-IPv4ConfigurationOptionforPPPIPCP)
IPv6PPP(IPversion6overPPP)一种在以太网传送PPP顿的方法(AMethodforTransmittingPPPoverEthernet (PPPoE))
IANA对PPP协议的考虑(IANAConsiderations for thePoint-to-PointProtocol(PPP))
地址加端口解决IPv4地址短缺的方法(Theaddressplusport(A+P)approachto the IPv4 address shortage)华为端口范围配置选项在IPCP中的定义(Huaweiportrangeconfigurationoptions for PPPIPcontrol protocol (IPCP))YD/T3234—2017
3术语、定义与缩略语
3.1术语和定义
下列术语和定义适用于本文件。3.1.1
termina
接入网络的用户侧设备。在宽带接入中通常指家庭网关(CPE)或PC主机等。3.1.2
A+Paddressplusport
BNG为终端分配IPv4地址和端口块(或端口范围),由端口范围与IPv4地址一起标识终端或用户。3.1.3
双栈A+PdualstackAplusP
BNG等系统提供的双栈接入方式,为终端同时分配(IPv4地址,端口范围)和IPv6地址或前缀3.1.4
端口块
portblock
TCP/UDP端口块,由开始端口号、结束端口号指定的连续的端口号集合。3.1.5
[开始端口号,结束端口号][startportnumber,endportnumber]或[Ps,Pe]TCP/UDP端口块的描述形式,由开始端口号和结束端口号指定的连续的端口号集合。Ps、Pe分别表示开始端口号和结束端口号。一个端口号大于或等于Ps,同时小于或等于Pe,则该端口号属于该端口块。
端口范围
portrange
TCP/UDP端口范围。采用RFC6431的描述方式,即端口范围值/端口范围掩码。3.1.7
(端口范围初始值,端口范围掩码)(portrangevalueportrangemask)或(Pv,Pm)TCP/UDP端口范围的描述形式。端口范围值表示端口范围的初始值,端口范围掩码指定端口范围值的有效位,其余位可以为0或1。一个端口号在端口范围掩码制定的有效位与端口范围值相同,则该端口号属于该端口范围
端口块选项
port-block option
为IPCP定义的端口块选项,用于传递端口块信息。3.1.9
端口范围选项
port-range option
为IPCP定义的端口安慰选型,用于传递端口块信息。3.2缩略语
下列缩略语适用于本文件。
DS-Lite
NAT444
宽带网络网关
宽带远程接入服务器
运营级地址转换
用户端设备
轻型双栈接入
互联网数字分配机构
互联网控制消息协议
互联网工程任务组
互联网控制协议
互联网协议第四版
互联网协议第六版
链路控制协议
多业务引擎
网络地址转换
私网双栈接入
网络控制协议
个人电脑
结束端口号
分组数据服务节点
端口范围掩码
点对点协议
PPPoE封装
开始端口号
端口范围初始值
传输控制协议
用户数据报协议
Broadband Network Gateway
Broadband Remote Access ServerCarrier Grade NAT
Customer premises equipment
YD/T3234—2017
Dual Stack Lite/LightweightDual StackThe InternetAssigned Number AuthorityInternet Control Message ProtocolThe Internet Engineering Task ForceInternet Protocol Control ProtocolInternet Protocol Version 4
Internet Protocol Version 6
Link Control Protocol
Multi-Service Engine
Network Address Translation
PrivateNetworkDualStackAccessNetwork Control Protocol
Personal Computer
end port number
Packet Data Serving Node
port range mask
Point-to-Point Protocol
point-to-point Protocol over Ethernetstart port number
port range value
Transfer Control Protocol
User Datagram Protocol
YD/T3234—2017
4PPP接入概述
4.1背景
NAT444、DS-Lite等下一代互联网过渡技术基于PPPoE拨号提供宽带终端接入服务,已经在运营商网络大规模商用。这些技术的核心是终端使用私有地址,网络部署CGN、AFTR等,维持用户地址映射关系表项和会话表项,提供运营级地址转换等功能,通过IPv4公有地址复用,访问各种互联网应用。其中,CGN、AFTR等设备支持数万、数十万并发用户,会话数、容量等性能指标与用户规模、用户流量同步增长,导致CGN、AFTR设备越来越大,部署部署难度、成本和复杂性也逐步增长YD/T2809一2015提出了一种BNG下发端口块或端口范围的双栈A+P宽带接入技术。这种技术要求BNG为终端分配端口块或端口范围等参数。同时下发复用的IPv4公有地址:通过把CGN、AFTR的原有功能地址转换功能下放到终端设备,网络侧不再部署CGN、AFTR,简化网络结构。与这种技术带来的好处相比,现有标准仍然还没有定义端口块、端口范围等配置选项和协商机制。IETFRFC1661定义了PPP协议的实现方法、选项协商自动机,LCP报文格式、LCP配置选项:IETFRFC2516提出了PPPoE的实现方法,包括PPPoE帧结构等;IETFRFC1332进一步定义了IPCP的配置选项。截止目前,IANA为IPCP选项只分配了多IP地址选项(IP-Addresses)、IP压缩协议选项(IP-Compression-Protocol)、单IP地址选项(IP-Address)、移动IPv4选项(Mobile-IPv4)、主DNS服务器地址选项(PrimaryDNSServerAddress)、主NBNS服务器地址选项(PrimaryNBNSServerAddress)等配置选项类型。这些配置选项类型没有任何一个与端口块、端口范围等参数相关。因此,本标准定义端口块、端口范围两个参数,描述端口块、端口范围的协商机制,弥补了现有标准的缺陷。从1992年的IETFRFC1661开始,PPP协议发展至今已经成熟,但IPCP配置选项仍然可以继续折展。IETFRFC3818列出了IETFPPpext工作组针对PPP协议的相关工作计划,包括IANA为PPPIPCPconfigurationoptiontypes、PPPIPv6CPconfigurationoptions等配置选项分配新的类型值,不再改变PPP协议本身。
本标准定义PPPIPCP配置选项和协商,定义的内容不区分PPP和PPPoE,也不受PPP和PPPoE顿结构差异的影响。
4.2PPPoE拨号接入模型
PPPoE拨号接入由终端发起PPPoe拨号,从网关设备BNG获得IPv4地址、IPv6地址/前缀等配置参数。PPPoE拨号接入模型由终端(如路由型家庭网关CPE、PC等)、BNG、AAA服务器等设备和系统组成。其模型如图1所示。
AAA服务器
互联网
图1PPPoE拨号接入场景
YD/T3234—2017
终端(如PC、路由型家庭网关CPE等):PC或路由型家庭网关CPE运行IPv4或IPv6协议栈,发起连接PPPoE拨号,与BNG建立PPP连接,完成用户认证,并从BNG获得并配置(IPv4地址,端口块)或(IPv4地址,端口范围)、IPv6地址/前缀等。BNG:运行IPv4和IPv6协议栈:响应终端的PPPoE拨号,与终端建立PPP连接,配合Radius服务器完成用户认证,为终端分配IPv4地址和IPv6地址/前缀等配置参数。AAA:维护用户信息,负责用户认证、授权和计费:支持对特定用户下发IPv4地址、IPv6地址/前缀等配置参数;支持用户溯源等。4.3IPCP报文结构
RFC2516把PPPoE分成discovery和PPP会话两个阶段,并通过ethertype字段区分PPPoE的不同阶段。在discover阶段,主机发现BNG及其MAC地址、协商PPPoE会话ID,如设置Ether_type设置为十六进制的Ox8864、分配SESSIONID值;在PPP会话阶段,终端和BNG执行LCP协议,建立PPP链路,执行IPCP配置IP协议模块。IPCP协议的PPPoE帧结构如图2所示。01234567890123456789012345678901BNG端口MAC地址
BNG端口MAC地址(续)
Ether_Type=0x8864
SESSION_ID-0x1234wwW.bzxz.Net
PPP_Protocol=0x8021
PPPPayload.
图2IPCP协议的PPPoE帧结构
主机MAC地址
LENGTH-0x????
PPPPayload
Code-0x00
其中,PPPProtocol=Ox8021表示PPPPayload封装IPCP报文。在LCP阶段,PPPProtocol设置为Oxco21,ppppayload封装LCP报文。PPPLCP报文用于PPP链路的配置和测试,PPPIPCP用于配置、激活或去激活IP协议模块。两者采用了相同的报文结构和交换机制,但仍有如下几点不同:IPCP的协议类型号是0x8021,LCP的协议类型号是0xc021。IPCP报文的code字段只采用codel~code7,分别代表Configure-Request,Configure-Ack,Configure-Nak,Configure-Reject,Terminate-Request, Terminate-Ack 和 Code-Reject。LCP 协议除这些code,还定义了4个不同的code号(IETFRFC1661)。IETFRFC2153还定义了code0用于厂商私有的配置;
只有PPP协议进入协商网络层协议阶段,IPCP协议才能交换报文,在此之前接收的任何报文都会被丢掉。
IPCP定义了与LCP不同的配置选项类型。图2的PPPoE顿在PPPpayload中封装IPCP报文,PPP_protocol字段必须设置为Ox8021。IPCP报文的结构如图3所示。
YD/T3234—2017
0|1|2|3[4|5|6|7|8|9|0|1|23|4|5|6||8|9|0|1|2|3|4|5|6|7|8|9|01Code
Identifier
图3IPCP报文结构
Length
其中,code描述报文类型,identifier用于维护IPCP报文请求和响应报文对。IPCP报文在图3中的data字段协商配置选项,IPCP配置选项采用TLV格式,如图4所示。0|1|2|3|4|5|6||8|9|0|1|2|3|4|5|6|7|8|9|0|1|2|3|4|56|7|8|9|0|1type
Length
图4IPCP配置选项TLV结构
本标准继承如图2、图3、图4的PPP帧结构、IPCP报文结构和IPCP配置选项,并只定义如图4的新的IPCP配置选项:端口块配置选项和端口范围配置选项。截至目前,已经定义的IPCP配置选项共有8项,分别由IETFRFC1332、IETFRFC1877和IETFRFC2290定义。IANA为现有IPCP配置选项分配的type值见表1。
表1已分配的IPCP配置选项类型值类型值(type)
配置选项
IP-Address(废止)
IP-Compression-Protocol
IP-Address
Mobile-IPv4
未分配
主DNS服务器地址
主NBNS服务器地址
从DNS服务器地址
congNBNS服务器地址
参考文献
RFC1332
RFC2290
RFC1877
本标准从上表选择未使用的类型值作为新定义的IPCP配置选项类型值。除了表1定义的IPCP协议的配置选项外,IETFRFC6431还定义了厂商私有的端口范围IPCP配置选项PortRange。本标准把IETFRFC6431定义的portrangeIPCP配置选项重新定义为code1的配置选项。4.4IPCP配置协商过程
在PPPoE接入过程中,终端与BNG动态协商终端的IP地址、DNS服务器和BNG设备的IP地址。图5列出了IPCP配置选项的协商过程示例。6
动态协商
终端的IP
地址和
DNS服务
器地址
Config-Request
IP:0.0.0.0
DNS:0.0.0.0
Config-NAK
IP:120.18.88.10
DNS:202.96.128.68
Config-Request
IP:120.18.88.10
DNS:202.96.128.68
Config-ACK
IP:120.18.88.10
DNS:202.96.128.68
Config-Request
IP:202.18.88.10
Config-ACK
IP:202.18.88.10
图5IPCP配置选项的协商过程
协商BNG
的IP地址
YD/T3234—2017
如图5所示,IPCP的配置请求报文(config-Request)携带配置选项IP-Address、主DNS服务器地址,所有配置选项同步协商。IP地址和主DNS服务器地址的初始值设置为0.0.0.0。BNG接收Config-Request请求,为终端分配IP地址和DNS服务器地址,通过Config-Nak返回;终端通过Config-Ruest/Config-ACK确认BNG指定的IP地址和DNS服务器地址。同时,IPCP配置选项的协商过程是双向的,BNG也需要Config-Ruest/Config-ACK确认IP地址。本标准遵守对IPCP现有协商过程的现有各种要求。4.5端口块或端口范围
在缺省情况下,BNG为一个用户分配一个IPv4地址,对应的端口范围是[0,65535]。NAT444、DS-Lite等下一代互联网过渡技术以用户为单位指定IPv4地址和端口块。当BNG为用户分配IPv4私有地址时,CGN/AFTR创建用户地址映射关系,为每个用户地址指定一个IPv4公有地址和端口块,如为用户地址100.64.0.100指定120.18.88.10和[1024,2047]。其中120.18.88.10是复用的IPv4公有地址,由多个用户使用:[1024,2047]用于选择用户报文经CGN/AFTR转换后的端口号。复用同一个IPv4公有地址的用户终端使用的端口块和端口范围唯一,相互间没有交集。CGN/AFTR设备维护所有用户的地址映射关系和会话表。
端口块和端口范围由TCP/UDP端口号组成,缺省取值范围是[0,65535]的子集。端口块和端口范围的主要差异在于两者的描述方式不同,两者描述如下。a)端口块
端口块用[Ps,Pe]表示。Ps、Pe分别表示开始端口号和结束端口号。Ps,Pe大于等于0,小于等于65535,并且Ps必须小于Pe。一个端口号p属于该端口块时,端口号p必须大于或等于Ps,小于或等于Pe。
YD/T2809一2015已经对双栈A+P接入技术提出了定义IPCP配置选项、携带如下信息等要求,但没有具体定义IPCP配置选项:
Startportnumber:携带开始端口号:7
YD/T3234—2017
-Lastportnumber:携带结束端口号。b)端口范围值和掩码表示的方式RFC6431定义了厂商私有的IPCP配置选项,携带端口范围值(portrangevalue)和端口范围掩码(port range mask):
-Portrangevalue:携带portrange的初始值:Portrangemask:表示portrangevalue中有效位(bit)。当一个端口号属于一个端口范围,它与portrangevalue在portrangemask指定的有效位相同。5IPCP配置选项
5.1端口块(Port-Block)配置选项5.1.1描述
端口块配置选项定义一种IPCP配置选项,提供终端与BNG协商端口块的方法,并限定后续通信的端口号选择范围。终端通过LCP与BNG建立PPP链路,完成用户做认证,通过IPCPConfig-request发送和协商端口块port-block,或者请求BNG提供端口块信息。在宽带接入时,终端设置IPCPconfig-request的配置选项port-block初始值[O,O],BNG通过config-Nak返回一个有效的端口块,终端再通过config-request/config-ack确认该端口块信息,完成对port-block配置选项的协商。终端在协商port-block时,同时协商IP地址,从BNG动态获得IP地址。当终端设置IPCPconfig-request的配置选项port-block初始值[O,O]或者非零[Ps,Pe],但BNG不支持分配端口块,BNG通过config-reject返回终端,并通知终端不再请求分配端口块信息。端口块配置选项的简要格式如图6所示。01|2345678901|23456890112345678901类型(type)
5.1.2类型
结束端口号(Pe)
长度(length)
图6IPCP的端口块配置选项结构
开始端口号(Ps)
类型取值5,即type=5。IANA和IETF等标准组织只分配使用了类型值1~4和129~132,类型值5128和133~255仍然未分配使用。本标准暂定从5128中选择type=5作为IPCP配置选项port-block的类型值。如果IANA和IETF中type=5,并用于描述其他的IPCP配置选项,本标准应进行相应调整或者与IANA或IETF协商后再调整。5.1.3长度
6字节,包括类型、长度、开始端口号、结束端口号等字段。o
5.1.4端口块
YD/T3234—2017
端口块(port-block)或[Ps,Pe]由开始端口号Ps和结束端口号Pe决定,任何大于Ps并且小于Pe的端口号都属于本端口块。Ps和Pe长度为16位取值范围[0,65535]。5.1.5缺省值
缺省情况port-block为[0,65535],即Ps=0,Pe=65535。终端与BNG之间不协商本端口块信息。5.2端口范围(Port-Range)配置选项5.2.1描述
端口块配置选项定义一种IPCP配置选项,提供终端与BNG协商协商端口块的方法,并限定后续通信的端口号选择范围
端口范围配置选项定义一种IPCP配置选项,提供终端与BNG协商端口范围的方法,并限定后续通信的端口号选择范围。终端通过LCP与BNG建立PPP链路,完成用户做认证,通过IPCP协议的Config-request发送port-range,或者请求BNG提供端口范围。在宽带接入中,终端设置IPCPconfig-request的配置选项port-range初始值为[OO],BNG通过config-Nak返回一个有效的端口范围,终端再通过config-request/config-ack确认该端口范围参数,完成对port-range配置选项的协商。终端在协商port-range时,同时协商IP地址,从BNG动态获得IP地址和DNS服务器地址。
当终端设置IPCPconfig-request的配置选项port-range初始值为[O,O]或者非零[Pv,Pm],但BNG不支持分配端口范围,BNG通过config-reject返回终端,并通知终端不再请求分配端口范围。端口范围配置选项的简要格式如下图:01234567890123456789012345678901类型(type)
长度(length)
端口范围掩码(portmask,Pm
端口范围值(portwalue,P)
图7IPCP的端口范围配置选项结构5.2.2类型
类型取值6,即type=6。在IANA和IETF等标准组织分配使用的类型值中,类型值5~128和133~255未分配使用。本标准暂定选择type=6作为IPCP配置选项port-range的类型值。如果IANA和IETF中type-6并用于描述其他的IPCP配置选项,本标准应进行相应调整或者与IANA或IETF协商后再调整。5.2.3长度
6字节,包括类型、长度、端口范围值、端口范围掩码等字段。5.2.4端口范围
端口范围(port-range)由端口范围值portvalue和端口范围掩码portamask决定。端口范围配置选项定义与RFC6431定义的私有配置选项相同,但不作为厂商私有配置选项定义。端口号掩码指定端口9
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。