理解并取证:DLS网络架构和PPPOE数据帧
理解并取證:DLS網絡架構和PPPOE數據幀
對應的教學錄像在:
http://edu.51cto.com/lecturer/user_id-7648423.html9.9發布,待管理員24小時審核后
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所示。
總結
以上是生活随笔為你收集整理的理解并取证:DLS网络架构和PPPOE数据帧的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 用于matplotlib对齐很有用的算法
- 下一篇: 奇异值和奇异值分解