摘要:探討了“TCP/IP協(xié)議”教學(xué)現(xiàn)狀,提出將可視分析應(yīng)用于“TCP/IP協(xié)議”課程教學(xué),模擬仿真了基于OSPF的LSA分析,結(jié)合理論知識(shí)和實(shí)踐內(nèi)容使協(xié)議分析課程教學(xué)生動(dòng)、易于理解,更有利于學(xué)生應(yīng)用能力的培養(yǎng)。
關(guān)鍵詞:可視分析;協(xié)議;課程教學(xué)
中圖分類號(hào):G642.0 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-0079(2014)23-0067-03
“TCP/IP協(xié)議”是邵陽(yáng)學(xué)院為網(wǎng)絡(luò)工程、物聯(lián)網(wǎng)工程專業(yè)高年級(jí)本科生所開設(shè)的一門必修課程。該課程為“計(jì)算機(jī)網(wǎng)絡(luò)”的后續(xù)課程,旨在讓學(xué)生學(xué)完網(wǎng)絡(luò)體系結(jié)構(gòu)之后,深入掌握協(xié)議核心技術(shù),理解協(xié)議原理,能設(shè)計(jì)簡(jiǎn)單的網(wǎng)絡(luò)協(xié)議,為網(wǎng)絡(luò)互聯(lián)與設(shè)計(jì)打好基礎(chǔ)。[1,2]在課程教學(xué)中,教師難教和學(xué)生難學(xué)成為了大家的共識(shí)。
一、課程教學(xué)狀況
TCP/IP作為現(xiàn)代網(wǎng)絡(luò)運(yùn)行的基礎(chǔ)協(xié)議,課程要求學(xué)生能理解和深入掌握協(xié)議的相關(guān)知識(shí),理解協(xié)議的思想,并能加以應(yīng)用,最終提高學(xué)生的網(wǎng)絡(luò)應(yīng)用程序開發(fā)能力與網(wǎng)絡(luò)安全防護(hù)能力,增強(qiáng)網(wǎng)絡(luò)分析能力。
目前各高校的“TCP/IP協(xié)議”教學(xué)主要采取協(xié)議軟件分析、多媒體技術(shù)輔助及網(wǎng)絡(luò)編程方式進(jìn)行。如將wireshark等軟件用于協(xié)議分析教學(xué);[3]利用多媒體技術(shù)輔助教學(xué);[4]通過(guò)網(wǎng)絡(luò)編程模擬仿真方式進(jìn)行協(xié)議教學(xué)等。[5]另外,有研究人員提出將舉例教學(xué)法、[6]開放源碼教學(xué)[7]用于“TCP/IP網(wǎng)絡(luò)協(xié)議”課程教學(xué)中。文獻(xiàn)[8]探討了計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議分析與開發(fā)試驗(yàn)的一種新教學(xué)方法。
雖然有不少針對(duì)“TCP/IP協(xié)議”課程的教學(xué)改革,也取得了一定的成果。但由于課程的重要性和特殊性,“TCP/IP協(xié)議”課程教學(xué)內(nèi)容難免抽象與枯燥乏味,學(xué)生難學(xué)、教師難教仍然是高校相關(guān)教師普遍的共識(shí)。
本文在深入分析協(xié)議課程教學(xué)特點(diǎn)的基礎(chǔ)上,探索了一種協(xié)議可視分析與仿真相結(jié)合的辦法,提供模擬圖示例,進(jìn)行圖形可視化交互分析,增強(qiáng)教學(xué)過(guò)程的趣味性,化抽象為生動(dòng),以通俗淺顯的圖形化方式傳達(dá)學(xué)生協(xié)議的核心思想。
二、基于可視的協(xié)議分析教學(xué)概述
1.可視分析基礎(chǔ)
可視分析是利用圖形學(xué)和圖像處理相關(guān)技術(shù),將數(shù)據(jù)轉(zhuǎn)換成圖形顯示出來(lái)。不同領(lǐng)域需要不同的可視分析技術(shù),在“TCP/IP協(xié)議”課程教學(xué)方面,將某種拓?fù)浣Y(jié)構(gòu)下節(jié)點(diǎn)之間通信的協(xié)議直觀表示出來(lái),節(jié)點(diǎn)之間數(shù)據(jù)包交換過(guò)程中繁雜的數(shù)據(jù)用圖形的方式顯示,能夠使得網(wǎng)絡(luò)通信變得更直觀,也有助于協(xié)議的開發(fā)及應(yīng)用。
2.鏈路狀態(tài)路由教學(xué)的圖形化表示
在路由選擇協(xié)議的教學(xué)過(guò)程中,OSPF協(xié)議是典型的鏈路狀態(tài)協(xié)議,其原理與距離向量路由選擇的原理不同。學(xué)生往往對(duì)路由表的構(gòu)造非常陌生。以圖1為例,描述了一個(gè)簡(jiǎn)單的有五個(gè)結(jié)點(diǎn)的域。每個(gè)結(jié)點(diǎn)用相同的拓?fù)鋪?lái)創(chuàng)建路由表,但是每個(gè)結(jié)點(diǎn)的路由表卻是獨(dú)一無(wú)二的。通過(guò)對(duì)圖1稍加轉(zhuǎn)換,從A和B的角度去看各自的鏈路狀態(tài),可見,結(jié)點(diǎn)A知道它以度量6連接到結(jié)點(diǎn)B,以度量2連接到C,以度量3連接到D;結(jié)點(diǎn)B知道它以度量6連接到A,以度量4連接到C,以度量5連接到E。A和B所看到的鏈路狀態(tài)如圖2所示。
當(dāng)多個(gè)路由器通過(guò)一個(gè)LAN連接起來(lái)時(shí),此時(shí)情況會(huì)變得很復(fù)雜,圖3顯示了一個(gè)LAN直接連接到兩個(gè)路由器A和C上的情形,每個(gè)路由器都連接到一個(gè)或者多個(gè)其他的路由器上。此時(shí)需要對(duì)LAN進(jìn)行可視化建模,將LAN本身當(dāng)成節(jié)點(diǎn)來(lái)考慮。通過(guò)對(duì)圖3的分析,可引入新的節(jié)點(diǎn)(比如偽節(jié)點(diǎn)N,圖4中的云),它與A、C連接起來(lái)。并且在LAN上從A到C是可能的,可以表示為路徑ANC,這樣可以使得復(fù)雜的問題簡(jiǎn)單化。
3.路由表的構(gòu)造
路由表構(gòu)造過(guò)程中,每個(gè)節(jié)點(diǎn)需要使用最短路徑樹產(chǎn)生一個(gè)最短路徑。最短路徑樹通過(guò)Dijkstra算法實(shí)現(xiàn),教師教學(xué)過(guò)程中一般會(huì)給學(xué)生展示一個(gè)簡(jiǎn)化的算法版本:一是初始化。選擇作為樹的根的節(jié)點(diǎn),把它加入到路徑中。為根的所有鄰站設(shè)置從根到這些鄰站之間的最短距離。設(shè)根到自己的最短距離為0。二是循環(huán)。重復(fù)下面兩個(gè)步驟,直至所有節(jié)點(diǎn)都被加入到路徑中。三是加入下一個(gè)結(jié)點(diǎn)到路徑中。搜索不在路徑中的節(jié)點(diǎn),選擇一個(gè)具有最短距離的結(jié)點(diǎn),把它加入到路徑中。四是更新。用上述步驟中移到路徑中的節(jié)點(diǎn)來(lái)更新所有剩余節(jié)點(diǎn)的最短距離。
算法描述的是最短路徑樹的得到,其實(shí)就是經(jīng)過(guò)一個(gè)初始化步驟和若干次的循環(huán),該算法可以用可視化的圖形進(jìn)行表述。如圖5所示,假設(shè)以節(jié)點(diǎn)A為例創(chuàng)建最短路徑樹,其初始化步驟和循環(huán)過(guò)程不難從上述簡(jiǎn)化算法中得出,圖6給出了以節(jié)點(diǎn)A和B為根的最短路徑樹構(gòu)造結(jié)果。由于篇幅原因,這里沒有給出詳細(xì)構(gòu)造過(guò)程,可讓學(xué)生進(jìn)行課堂或課外練習(xí)??傊ㄟ^(guò)圖形化的表示,最短路徑樹構(gòu)造過(guò)程能清楚呈現(xiàn)在學(xué)生面前,也有助于對(duì)該算法的深層次理解。
三、基于OSPF的LSA仿真模擬教學(xué)
1.OSPF及其LSA簡(jiǎn)述
開放最短路徑優(yōu)先(Open Shortest Path First,簡(jiǎn)稱OSPF)是一種基于鏈路狀態(tài)路由選擇的域內(nèi)路由選擇協(xié)議。OSPF里定義了不同的鏈路,如點(diǎn)對(duì)點(diǎn)鏈路、穿越鏈路等,也有自治系統(tǒng)等概念,這些都可以用圖形化方式進(jìn)行描述,幫助學(xué)生對(duì)這些專業(yè)術(shù)語(yǔ)進(jìn)行理解。
OSPF運(yùn)行的核心實(shí)際就是鏈路狀態(tài)更新分組(link state update packet),路由器正是用它來(lái)通過(guò)各自的鏈路狀態(tài)的,每個(gè)更新分組可能包含幾個(gè)不同的LSA(鏈路狀態(tài)通告)。獲得并分析LSA,可實(shí)現(xiàn)網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)。完整的LSA信息被封裝在報(bào)文中,而其LSA類型多,對(duì)于每一類型具體條目的分析十分復(fù)雜和枯燥。6種基本類型的LSA如表1所示。
表1 6種基本類型的LSA及作用
類型作用
類型1路由器鏈路公告
類型2網(wǎng)絡(luò)鏈路公告
類型3網(wǎng)絡(luò)摘要鏈路公告
類型4AS邊界路由器摘要鏈路公告
類型5AS外部鏈路公告
類型7非純殘域網(wǎng)絡(luò)公告
因此,可以通過(guò)對(duì)LSA仿真,使學(xué)生對(duì)OSPF協(xié)議有更深入的理解和應(yīng)用。
2.仿真實(shí)驗(yàn)配置
本文采用GNS 3模擬器,仿真OSPF四級(jí)組網(wǎng)情形,并對(duì)表1中的一、二、三、四、五、七等六類LSA予以仿真實(shí)現(xiàn)。網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)如圖7所示。由圖7可知,主要有三個(gè)OSPF區(qū)域以及一個(gè)外部區(qū)域,骨干區(qū)域?yàn)閍rea0,所有區(qū)域都與骨干區(qū)域相連,是OSPF四級(jí)網(wǎng)的核心,相當(dāng)于是一個(gè)市級(jí)中心網(wǎng),而其他區(qū)域是所連的地縣。圖中區(qū)域2配置為NSSA區(qū)域,因?yàn)?類LSA本身在特殊區(qū)域才有。
仿真過(guò)程中,首先規(guī)劃好整個(gè)網(wǎng)絡(luò)的IP地址,對(duì)路由器基本信息進(jìn)行配置,接下來(lái)對(duì)接口進(jìn)行配置及鏈路進(jìn)行測(cè)試。例如對(duì)RT1的接口配置如下:
RT1:
interface loopback0
ip address 1.1.1.1 255.255.255.255 //回環(huán)地址
interface serial0/2
ip address 10.0.15.1 255.255.255.252 //鏈路地址
interface ethernet3/0
ip address 10.1.1.1.1 255.255.255.0 //業(yè)務(wù)地址
同理,對(duì)其他路由器接口進(jìn)行配置,之后再進(jìn)行鏈路連通性測(cè)試,直接通過(guò)ping命令的使用,通過(guò)反饋結(jié)果看測(cè)試鏈路是否存在問題。
基本配置之后,重點(diǎn)是對(duì)OSPF的配置及測(cè)試,每個(gè)路由器都指定一個(gè)router-id,并將本路由器上的所有網(wǎng)段都分布到OSPF進(jìn)程中去,配置如下:
RT1:
router ospf 1 //運(yùn)行OSPF進(jìn)程
router-id 6.6.6.6 //唯一標(biāo)識(shí)自己的router-id
network 6.6.6.6 0.0.0.0 area 0
network 10.2.6.0 0.0.0.0.255 area 2
通過(guò)對(duì)OSPF的配置過(guò)程的可視化,對(duì)協(xié)議運(yùn)行過(guò)程中鄰居的建立和路由發(fā)布一目了然。通過(guò)OSPF的運(yùn)行,每個(gè)路由器都有了屬于自己的完整拓?fù)?,?shí)現(xiàn)了全網(wǎng)的互聯(lián)互通。
3.仿真圖分析
通過(guò)模擬仿真OSPF,解決了全網(wǎng)的連通性,OSPF鄰居的建立,尤其是可以通過(guò)命令查看每類LSA。通過(guò)運(yùn)行命令,能較好地實(shí)現(xiàn)不同類LSA詳細(xì)狀態(tài)的可視化。圖8為一類LSA的描述信息,通過(guò)該仿真圖能更直觀地理解、分析、研究各類鏈路狀態(tài)的通告情況,包括LSA頭部字節(jié)所包括的一些基本信息。
圖8給出的是區(qū)域0的一類LSA,給出了鄰居ID,與其他路由器連接的接口IP地址、開銷等,并指出了IP屬于哪個(gè)網(wǎng)段和掩碼。通過(guò)對(duì)仿真圖的可視分析,一類LSA特點(diǎn)可以總結(jié)如下:描述了直連鏈路的狀態(tài)信息,由每個(gè)發(fā)起路由器通告,只在本區(qū)域內(nèi)傳遞。簡(jiǎn)而言之,LSA1描述自身直連信息。
對(duì)LSA1進(jìn)行仿真可視分析后,對(duì)部分配置參數(shù)進(jìn)行修改,同理得到二、三、四、五、七等基本類型的LSA情況,并能通過(guò)仿真實(shí)驗(yàn)結(jié)果圖將六種類型的LSA情況予以可視化分析,從而實(shí)現(xiàn)了將抽閑、枯燥的理論知識(shí)變的形象化、可視化和易于理解掌握。
四、結(jié)論
本文主要針對(duì)“TCP/IP協(xié)議”課程教學(xué)協(xié)議抽象、理論性強(qiáng)、枯燥等特點(diǎn),探索一種圖形化、可視化的方法,使得協(xié)議教學(xué)變得更加形象、生動(dòng)、易于理解掌握,也更好地培養(yǎng)了學(xué)生的應(yīng)用能力。
參考文獻(xiàn):
[1]TCP/IP協(xié)議族[M].第4版.王海,張娟,朱曉陽(yáng),等,譯.北京:清華大學(xué)出版社,2011.
[2]計(jì)算機(jī)網(wǎng)絡(luò)[M].第4版.潘愛民,譯.清華大學(xué)出版社,2004.
[3]程立,張浩軍,吳勇.網(wǎng)絡(luò)協(xié)議可視化分析教學(xué)方法探究——Wireshark在計(jì)算機(jī)網(wǎng)絡(luò)課程中的應(yīng)用[J].教育教學(xué)論壇,2013,(1).
[4]周靈.網(wǎng)絡(luò)類課程教學(xué)手段的改進(jìn)與實(shí)踐[J].計(jì)算機(jī)時(shí)代,
2008,(8).
[5]黃嵐,刑敏.網(wǎng)絡(luò)協(xié)議理論與實(shí)踐整合的教學(xué)研究[J].吉林省經(jīng)濟(jì)管理干部學(xué)院學(xué)報(bào),2006,(3).
[6]徐志芳.舉例教學(xué)法在《TCP/IP網(wǎng)絡(luò)協(xié)議》中的運(yùn)用[J].考試周刊,2011,(90).
[7]王雪梅,林曉勇.“TCP/IP網(wǎng)絡(luò)設(shè)計(jì)及實(shí)現(xiàn)”開放源碼教學(xué)研究[J].中國(guó)電力教育,2011,(28).
[8]陳健,吳海軍,徐煊.計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議分析與開發(fā)試驗(yàn)的一種新教學(xué)方法[J].計(jì)算機(jī)教育,2011,(10).
(責(zé)任編輯:孫晴)