DSL(DigitalSubscriber Line数字用户线路),使用现在的电话设施,只投入非常少的改造成本,将传统电话通信线缆中没有使用的部分用作高速数据传输服务,使得通信基础设施更充分的被使用,让语音与数据共存,这是DSL网络的核心基础。
DSL网络对传输距离相当敏感,它会随着用户到电话中心局(CO)的距离增大,传输质量与速率将随之下降,通常用户到电话中心局的距离在5500米左右。
为了能更好的理解DSL的基本原理与配置过程,首先拟订一个清晰的学习线路如下:
n理解DSL的基本分类
n以ADSL为例理解DSL网络的物理架构
n关于在ADSL网络中使用PPPOE协议
n理解并取证PPPOE的工作原理
n演示:计算机、CPE通过PPPOE拨号到运营商的聚合路由器以获取ADSL连接。
理解DSL的基本分类
目前DSL网络的表现形式非常多,但是大致可以归类为两种:ADSL(Asymmetric Digital Subscriber Line)非对称数字用户线路和SDSL(SymmetricDigital Subscriber Line)对称数字用户线路。
ADSL(Asymmetric Digital Subscriber Line)非对称数字用户线路,它提供不对称的上传和下载速度,通常下载速度远高于上传的速度,它是目前在DSL市场上部署得最多的一种宽带技术,用户与电话中心局的距离在5500左右,提供1.5~8Mbit/s的下载速率,以及16Kbit/s-1Mbit/s的上传速率。它允许在电话线上传输语音的同时传输数据。所以用户在使用ADSL网络时,既能打电话同时又能上网,这里需要注意的是在实际ADSL的应用环境中,通常我们会认为上传数据的速率比下载速率低很多,这也是正常现象。
SDSL(SymmetricDigital Subscriber Line)对称数字用户线路,它提供对称的上传与下载速度,其速率范围在128Kbit/s-2.32Mbit/s之间,最常见的实现速率为768Kbit/s,在本书中不以描述SDAL(SDSL)为重点,如果需要获得更多关于SDSL的描述,请参考CCNP的远程接入或者关于ISP相关的更多手册。
以ADSL为例理解DSL网络的物理架构
ADSL(AsymmetricDigital Subscriber Line)非对称数字用户线路。欧洲发达国家称为“现代化信息高速公路”。ADSL网络的物理架构如下图8.93所示。现在来理解在ADSL网络基础结构中,每个网络元件的定义与作用以及其它相关的专业术语:
nCPE:即CustomerPremise Equipment用户前端设备的缩写,在DSL网络中的CPE通常是指DSL的调制解调器,或者是带DSL调制解调的路由器;对于ADSL宽带的家庭用户,CPE事实上就是ADSL modem,通常将这类用户接入设备称之为ATU-R(ADSL Transmission Unit-Remote ADSL传输单元远程端)
n分离器:将DSL的数据流量从语音流量中分离出来,如果是语音流量就交给传统的PSTN网络进行转发,如果是数据流量就交给DSLAM来负责终结物理层的DSL连接。
nDSLAM:即DigitalSubscriber Line Access Multiplexer数字用户线路接入复用器的缩写,DSLAM起到的作用是汇聚所有用户的DSL链路,相当于是一个二层交换机。如果更形象的讲:是一个包含多个ATU-C单元的机箱;ATU-C(ADSLTransmission Unit-Central Office ADSL的传输单元中心)是ADSL传输单元中心,位于提供商中心电话局(CO),它负责连接ATU-R。
nDSL汇聚路由器:负责汇聚ADSL用户的接入认证服务,并转向三层工作。
关于ADSL的信道使用情况:
ADSL的信道使用如下图 8.94所示,0-4kHz分配给传统的电话使用,25kHz-160kHz分配置给上传数据使用,240kHz-1.1MHz分配给下载数据使用。它的特点:一条电话线可同时接听,拨打电话并进行数据传输,两者互不影响;ADSL的宽带业务与电话费用是分隔开的,这与传统的PSTN有所不同;对于VOD视屏点播与语音传递是一个很好的选择。
关于在ADSL网络中使用PPPOE协议
如下图8.95所示,在CPE与DSL汇聚路由器之间是一种桥接式体系架构(纯二层连接),单纯的桥接存在大量的安全漏洞,为了在某种程度上解决这些安全漏洞,并且便于运营商对用户做接入验证,计费等工作,PPP将是一个不错的选则择,因为它内嵌了安全机制(PAP或者CHAP),所以ADSL网络决定将PPPOE协议运行在CPE与DSL汇聚路由器之间。
提问:为什么是PPPOE而不是PPP?什么是PPPOE?
PPPOE:PPP overEthernet 即运行在以太网上的PPP,此时需要提出的问题:“为什么要将PPP运行在以太网链路上?那是因为传统的PPP协议是针对点对点链路所设计的广域网协议。它能方便、简单的对用户进行认证、监控、计时,因为线路上只有两个点,一个为用户PPP的接入端;另一个就是ISP接收PPP接入的服务端。如下图8.95所示,比如:基于传统的PSTN拨号的PPP接入,可以非常方便、清楚的对各个PPP接入的用户进行记账、认证,因为每个PPP接入链路只有两个点。但现今的宽带接入多为桥接式、共享介质、多路访问类型的接入。比如:ADSL,如下图8.96所示。
现在需要进行Internet的接入点在一个桥接式、共享介质、多路访问的以太网上,那么,既然是一个多路访问的链路,在链路上就不止一个网络接点,如图8.96所示,有A、B、C、D四个接入点。那么这就为运营商接入认证与计费提出了考验。因为链路上的接入点有多个,可控性也就下降,这一切都面对一些相互矛盾的目标,多个用户既要通过同一个用户前置接入设备(CPE)连接,又要提供类似拨号一样的接入控制、认证、计费等功能,而且要尽可能地减少用户的配置操作。
解决的办法是使用PPPOE将多路访问上的多点接入模拟成点对点的接入,如下图8.97所示,要模拟点对点的接入,就要将PPP这个点对点的协议进行扩展,让PPP运行在多路访问的链路上。将多路访问的网络变成点对点的网络,这样既提高了可控性,又能使用PPP的认证功能对接入点进行身份验证。当A、B、C、D四个主机发起ADSL的拨号时,就会与ADSL的接入服务器(实际就是DSL网络的汇聚路由器)建立一个运行在以太网上的PPP连接,也就是PPPOE。然后将接入点与接入服务器形成一个点对点的会话;而且每一个PPPOE的会话都分配一个唯一的会话ID,所以PPPOE的服务器就能根据各个PPPOE的会话ID去认证或维护一个点对点的用户接入。
注意:PPPOE的实质还是PPP,它只是PPP协议的一种应用扩展!
理解并取证PPPOE的工作原理
PPPOE的报文结构如下图8.98所示,现在来理解数据报文的各个字段:
n目标MAC:PPOE发现阶段的目标MAC是FFFF.FFFF.FFFF属于以太网广播帧。
n源MAC:用户CPE设备(接入计算机或者路由器)的MAC。
n以太网类型:该字段在PPPOE的发现阶段是0x8863,指示发现阶段的PPPOE控制帧,在PPP会话阶段是0x8864。
n净荷:在以太网帧净荷中的是一个完整的PPPOE结构,它需要使用于头部中的附加信息字段,各个字段的意义如下:
n版本(VER):4个比特,对于现在正在使用的PPPOE而言,它总是0X1。
n类型:4个比特,这里的类型是在以太网净荷,真正的PPPOE结构中的类型,并不是以太网数据帧头部中的类型,它对于PPPOE而言,总是0X1。
n代码:8个比特,它在PPPOE的发现阶段,它会随着发现阶段所使用的控制消息不同,而有所不同,在发现阶段常见的4种代码:PPPOE的ActiveDiscovery Initiation(PPPOE的发现初始化),代码为0x09;PPPOE的ActiveDiscovery Offer(PPPOE的发现提供),代码为0x07;PPPOE的Active Discovery Request(PPPOE的发现请求),代码为0x19;PPPOE的分配SESSION_ID(PPPOE分配会话ID),代码为0x65;而在PPPOE正式的会话阶段代码值总是为0x00。
n会话ID(session_ID):该字段在不同的进程时期是可变的,它是在PPPOE发现阶段的最后一步,由汇聚路由器分配给CPE设备的值,但是请注意该值一但分配给某个PPP会话,那么该值在这个PPP会话中必须是固定的,在没有分配会话ID前该字段为0x0000。
n长度:16个比特,指示PPPOE的净荷长度,它不包括以太网头部和PPPOE头部。
n净荷:PPPOE的净荷。
nCRC:整个以太网帧的校验和。
理解并取证PPPOE的工作过程:
第一步:如上图8.99所示环境,PPPOE的客户端(CPE设备)发送请求服务的PPPOE Active Discovery Initiation(PADI)初始化控制消息,源MAC为发送CPE的MAC,目标MAC为广播MAC(FFFF.FFFF.FFFF),PPPOE的代码字段为0x09,PADI的真实的数据帧如下图8.100所示。
第二步:DSL网络的汇聚路由器会回送PPPOE的Active Discovery Offer(PADO)的提供控制消息,源MAC为DSL网络汇聚路由器的MAC,目标MAC为用户CPE的MAC。代码为0x07;PAD0的真实的数据帧如下图8.101所示。
第三步:用户CPE设备收到PADO消息后,会发送PPPOE的ActiveDiscovery Request(PADR)的请求消息,源MAC为用户CPE设备的MAC,目标MAC为DSL网络汇聚路由器的MAC。代码为0x19;PADR的真实的数据帧如下图8.102所示。
第四步:当DSL网络的汇聚路由器收到CPE设备的PADR请求后,它会为CEP设备分配一个会话ID,至此,以后的PPP会话全部建立在这个会话ID之上,该PPPOE消息的代码是0x65,源MAC地址是DLS网络汇聚路由器的MAC,目标MAC是用户CPE设备的MAC,PADS的真实的数据帧如下图8.103所示。
本文转自 kingsir827 51CTO博客,原文链接:http://blog.51cto.com/7658423/1296937,如需转载请自行联系原作者