本文档介绍使用以太网点对点协议(PPPoE)的端到端非对称数字用户线路(ADSL)架构。
在当前的接入技术环境中,希望通过同一客户驻地接入设备连接远程站点上的多个主机。此外,还必须以类似于使用点对点协议(PPP)的拨号服务的方式提供访问控制和计费功能。在许多接入技术中,将多台主机连接到客户驻地接入设备的最经济高效的方法是通过以太网。此外,最好将此设备成本保持在尽可能低的水平上,并且配置要求更低或者为零。
在部署ADSL时,客户必须在大量现有桥接客户端设备(CPE)上支持PPP式身份验证和授权。PPPoE能够通过简单的桥接接入设备将主机网络连接到远程访问集中器或聚合集中器。使用此模式时,每台主机都使用自己的PPP堆栈。因此,它向用户呈现熟悉的用户界面。您可以按用户(而不是按站点)访问控制、计费和服务类型。
基线架构假设提供以下项目:
对使用PPPoE的最终用户进行高速Internet访问和企业访问。
ATM作为核心主干技术,由Cisco 6400通用接入集中器(UAC)实施。
这种设计实施限制可能会限制此架构在其他平台上的使用,但PPPoE会不断演变。请阅读相关产品的最新版本说明,以利用新的和更新的功能。
本文基于当前部署以及使用Cisco 6400 UAC的内部测试。本文是PPPoA基准体系结构文档的继续,并且经常引用它。假设您已阅读PPPoA基准体系结构白皮书并了解PPP的基本原理,而且您已经阅读了最新软件版本的发行说明。
如RFC 2516中所述,PPPoE有两个不同的阶段:发现阶段和PPP会话阶段。当主机发起PPPoE会话时,它必须首先执行发现以确定哪台服务器可以满足客户端的请求。其次,它需要确定对等体的以太网MAC地址并建立PPPoE会话ID。虽然PPP定义了点对点关系,但发现在本质上是客户端 — 服务器关系。
在发现过程中,主机(客户端)发现一个或多个访问集中器(服务器)并选择一个。当发现成功完成后,主机和所选访问集中器都会获取信息,以便通过以太网建立其点对点连接。建立PPP会话后,主机和访问集中器都必须为PPP虚拟接口分配资源(并非所有实施都如此)。有关PPPoE规范的详细信息,请参阅RFC 2516。
PPPoE架构继承了拨号模式和PPPoA架构中使用的PPP的大部分优势。以下各节列出了PPPoE的一些主要优点和缺点,以及它们与PPPoA的不同之处。
以下是PPPoE的一些主要优势,以及它们与PPPoA的不同之处:
基于密码身份验证协议(PAP)或质询握手身份验证协议(CHAP)的每会话身份验证。这是PPPoE的最大优势,因为身份验证可以克服桥接架构中的安全漏洞。
根据每个会话进行记帐是可能的,它允许服务提供商根据提供各种服务的会话时间收取用户的费用。服务提供商也可以要求最低的接入费用。
您可以在当前无法升级到PPP或无法运行PPPoA的CPE安装中使用PPPoE,PPPoA将PPP会话通过桥接以太网LAN扩展到PC。
PPPoE保留当前拨号模式中Internet服务提供商(ISP)使用的点对点会话。PPPoE是唯一一种无需中间IP协议栈即可通过以太网进行点对点运行的协议。
网络接入提供商(NAP)或网络服务提供商(NSP)可以提供对公司网关的安全访问,而无需管理端到端永久虚电路(PVC),也无需使用第3层路由和/或第2层隧道协议(L2TP)隧道。这使批发服务和虚拟专用网络(VPN)销售的业务模式具有可扩展性。
PPPoE可以在给定时间为主机(PC)提供到多个目标的访问。每个PVC可以有多个PPPoE会话。
在行业标准远程身份验证拨入用户服务(RADIUS)服务器的帮助下,NSP可以通过部署空闲和会话超时来超订用。
您可以将PPP与服务选择网关(SSG)功能配合使用。
以下是PPPoE的一些主要缺点以及它们与PPPoA的不同之处:
必须在连接到以太网段的所有主机(PC)上安装PPPoE客户端软件。这意味着访问提供商必须在PC上维护CPE和客户端软件。
由于PPPoE实施使用RFC 1483桥接,因此容易受到广播风暴和可能的拒绝服务攻击。
在实施此类架构之前,需要考虑以下几个要点。
支持的用户数。所需的PPPoE服务器数量取决于会话数量。
PPP会话是在服务提供商的汇聚路由器上终止,还是转发到其他企业网关或ISP。
服务提供商还是最终服务目的地提供IP地址。
对于多个用户,无论所有用户都需要到达同一个最终目标或服务,还是他们都拥有不同的服务目标。终端用户是否需要同时访问多个目标?
接入提供商使用的PPPoE客户端软件、软件是否已经过测试、主机使用的操作系统,以及该操作系统是否能够作出智能路由决策。
服务提供商如何根据固定费率、每会话使用情况或使用的服务对用户计费。
部署和调配CPE、DSLAM和汇聚在线状态点(POP)。
NAP的业务模式。该模式是否还包括批发服务(如安全企业接入)和增值服务(如语音和视频)的销售?NAP和NSP是否属于同一个实体?
公司的业务模式。它是否可以与独立的本地交换运营商(ILEC)、具有竞争力的本地交换运营商(CLEC)或ISP相比?
NSP为最终用户提供的应用类型。
预期的上游和下游数据流量。考虑NRP吞吐量、流量工程和任何QoS问题。
本文档讨论PPPoE架构如何适合和扩展为服务提供商的不同业务模式,以及提供商如何借助此架构获益。
本节介绍特别适用于PPPoE架构的问题。
在部署任何架构之前,必须了解服务提供商的业务模式以及提供商提供的服务。您需要了解PC上使用的客户端软件。最常见的软件来自Routerware。由于客户端软件安装在PC上,服务提供商技术人员需要很好地了解PC及其操作系统。
如RFC 2516中所述,最大接收单元(MRU)选项不能协商为大于1492的大小。以太网的最大负载大小为1500个二进制八位数。PPPoE报头是6个二进制八位数,PPP协议ID是2个二进制八位数,因此PPP最大传输单位(MTU)不得大于1492。这通过为PPPoE虚拟模板接口配置IP MTU 1492来实现。
默认情况下,配置PPPoE VPDN组时不会预克隆虚拟访问接口。用户可以通过发出virtual-template <number> pre-clone <number>全局命令更改预克隆虚拟访问接口的最大数量。
为了保护路由器免受拒绝服务攻击,PPPoE(默认)仅允许通过VC从MAC地址发起一个会话。用户可以发出pppoe session-limit per-mac和pppoe session-limit per-vc命令以更改默认值。
记帐、授权和身份验证过程与PPPoA相同。唯一的区别是,当前基于VPI/VCI的身份验证(可用于PPPoA,不可用于PPPoE)可以使用L2TP和SSG架构进行批发服务。
CPE配置为纯RFC 1483桥接。每个CPE仅占用一个VPI/VCI对,此CPE后面的主机发起的所有PPPoE会话都在此单一VC中进行。
运行PPPoE客户端的单个主机的IP地址分配基于拨号模式IPCP协商中的PPP相同原理。IP地址来源取决于用户购买的服务类型以及PPP会话终止的位置。PPPoE利用Microsoft Windows的拨号联网功能,分配的IP地址反映在PPP适配器中。
IP地址分配可以来自终止PPPoE会话的接入集中器,如果是L2TP,可以来自主网关。IP地址分配给每个PPPoE会话。
CPE无法执行网络地址转换/动态主机配置协议(NAT/DHCP),因为它已桥接,并且没有为其分配IP地址。
以下是到达服务目的地的方法:
服务提供商的PPP会话终止
L2TP隧道
使用SSG
有关这些体系结构的详细解释将在单独的论文中介绍。
此版本的PPPoE客户端软件支持RFC 2516中描述的发现和会话阶段。到发现阶段有四个步骤。完成后,两个对等体都知道PPPoE会话ID和对等体的以太网地址,它们一起唯一地定义PPPoE会话。这些步骤如下:
主机广播一个初始数据包。
主机发送destination_addr设置为广播地址的PPPoE主动发现启动(PADI)数据包。PADI包含一个标记,指示它请求哪种服务类型。
一个或多个接入集中器发送提供数据包。
当接入集中器或路由器收到其可服务的PADI时,它会发送PPPoE主动发现提议(PADO)数据包。destination_addr是发送PADI的主机的单播地址。如果访问集中器无法为PADI提供服务,则它不得使用PADO进行响应。由于PADI已广播,因此主机可以接收多个PADO。
主机发送单播会话请求数据包。
主机查看收到的PADO数据包并选择一个。选择取决于每个接入集中器提供的服务。然后,主机将一个PADR数据包发送到其选择的访问集中器。destination_addr字段设置为接入集中器或发送PADO的路由器的单播以太网地址。
所选访问集中器发送确认数据包。
当接入集中器收到PADR数据包时,它将准备开始PPP会话。它为PPPoE会话生成一个唯一的会话ID,并使用PPPoE主动发现会话确认(PADS)数据包回复主机。destination_addr字段是发送PADR的主机的单播以太网地址。
一旦PPPoE会话开始,PPP数据就会像任何其他PPP封装一样发送。所有以太网数据包都是单播数据包。
在会话建立后,主机或接入集中器可以随时发送PPPoE主动发现终止(PADT)数据包,以指示PPPoE会话已终止。
有关更详细的说明,请参阅RFC 2516。
对于ADSL,PPPoE更受欢迎,仅次于PPPoA。
RFC 2516 — 一种通过以太网(PPPoE)传输PPP的方法
RFC 1483 - ATM适配第5层上的多协议封装
RFC 2364 — 基于AAL5的点对点
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
10-Dec-2001 |
初始版本 |