試題二 閱讀以下有關網絡規劃的敘述,回答問題1、問題2和問題3,把解答填入答題紙的對應欄內。 網絡工程是一項復雜的系統工程,一般可分為網絡規劃、網絡設計、工程實施、系統測試驗收和運行維護等幾個階段。網絡規劃是在需求分析的基礎上,進行系統可行性分析和論證,以確定網絡總體方案。網絡規劃階段任務完成之后轉入下一階段,即網絡設計階段。
[問題1] 簡述網絡規劃階段需求分析的方法和解決的問題。 (控制在100個字以內)
[問題2] 在網絡規劃階段“系統可行性分析和論證”的主要內容是什么?(控制在100個字以內)
[問題3] 在需求分析過程中應對已有網絡的現狀及運行情況作調研,如果要在已有的網絡上作新的網絡建設規劃,如何保護用戶已有投資? (控制在100個字以內)
試題三 閱讀以下有關網絡設計的敘述,分析網絡結構,回答問題1、問題2和問題3,把解答填入答題紙的對應欄內。 某企業從 20 世紀 50 年代中期開始使用 pc機,歷經 3+ 網絡、 novell網絡的應用,后著手組建企業網絡。經過需求分析和論證,設計出如下網絡方案。
【問題1】 該企業網絡的核心層采用了 atm 技術,由三臺 atm 交換機互聯構成。試對 atm 網絡技術的主要特點、協議分層結構和優點作簡要敘述。(控制在 100 個字以內)
【問題2】 pc1~pc4 按 100mbps 的以太網協議運行,pc1 和 pc2 劃分在一個虛擬網之中(vlan1),pc3 和 pc4 劃分在另一個虛擬網之中(vlan2),試述 pc1 和 pc2 之間 ip 包通信的全過程。(控制在100個字以內)
【問題3】 圖中用了兩臺路由器,router1,和 router2,簡述路由器的技術特點,并說明 router1 和 router2 在本網中的作用。(控制在100個字以內)
試題四 閱讀以下有關網絡設備安裝與調試的敘述,分析設備配置文件,回答問題 1、問題 2 和問題 3,把解答填入答題紙的對應欄內。 現以一臺遠程訪問服務器(ras,remote access server)cisco 2509、rj45 為例來說明。 第一步,準備安裝與調試所需的設備,主要包括 ras---cisco 2509、rj45 直通線,rj45 轉 9 針串口轉換器、計算機。 第二步,硬件連接,rj45 直通線一頭插入 cisco 2509 的 console 口,另一頭接 rj45 轉 9 針串口轉換器,·再將轉換器接到計算機的串口。 第三步,ras加電,在計算機上調用 windows 98 下的超級終端程序,配置設備連接參數,以便進入cisco 設備的虛擬操作臺。 第四步,輸入 cisco 2509 的 ios 配置命令。 第五步,將調試完畢的設備連人本地網絡,通過撥號驗證配置是否正確。
【問題1】 在 ras 上存在著兩個 rj45 的端口,分別為“console”與“aux”,請問這兩個端口的用途是什么?(控制在100個字以內)
【問題2】 在調用超級終端程序進行設備連接時,應該對設備的連接參數進行正確設置,參數主要包括串口數據傳輸率、數據位數。停止位數以及是否有奇偶校驗。清給出正確的連接參數,以便進入 cisco 設備的虛擬操作臺,進行設備調試。 (控制在100個字以內)
【問題3】 在第四步中,進入虛擬操作臺后,在 ios 環境下輸入了如下的配置,請解釋【1】~【4】處的標有下劃線部分配置命令的含義(“◇”后為配置內容,“★”和“//”后為注釋內容) ★ 配置服務器信息 ◇ hostname cisco 2509 //服務器名稱 ◇ enable secret //特權口令 ◇ //設置撥號服務器所屬域名 ◇ ip-name-server 202.112.77.2 //設置撥號服務器 dns 【1】 (此處有3條下劃線) ◇ async-bootp subnet-mask 255.255.255.0 ◇ async-bootp gateway 202.112.77.254 ◇ async-bootp dns-server 202.112.77.2★ 配置ethenlei port (略) ......★ 配置動態分配的地址池 ◇ ip local pool pool2509 202.112.79.1 202.112.79.8 //定義 ip 地址池★ 配置 asynchronous interface //異步口是 ras 服務器上連接 modem,用于用戶撥號的端口 ◇ interface group-async 1 //對第一組異步接口進行配置,對異步口的配置可以按 組,也可以按單個口 group-range 1 8 //劃定 1 到 8 號異步口屬于第一組 encapsulation pap //加載點到點協議 【2】 (此處有2條下劃線) ansync dynamic address ansync default address pool pool2509 //pool2509的定義見“配置動態分配的地 址池”部分 ppp authentication pap //設置 ppp 的驗證方式為用戶口令方式★ 配置 router 信息 【3】 (此處有3條下劃線) ◇ router rip network 202.112.77.0 network 202.112.79.0★ 配置撥號服務器的缺省路由 (略) ......★ 配置存取用戶組 ◇ access-list 1 pormit 202.112.77.0.0.0.255 //定義用戶組的范圍★ 配置asynchronous port (略)★ 配置 vty ◇ iine vty 0 4 //配置虛擬終端 【4】 (此處有3條下劃線) access-class 1 in //access-class的定義見“配置存取用戶組” pasword login
試題五
請閱讀以下說明和socfort程序,將應填 __(n)__ 處的字句寫在答題紙的對應欄內。【說明】 網絡應用的基本模型是客戶機/服務器模型,這是一個不對稱的編程模型,通信的雙方扮演不同的角色:客戶機和服務器。 以下是一個簡單的客戶機程序(服務器程序略),其工作過程非常簡單:客戶機與服務器建立連接后,接收服務器向客戶機返回的一條消息。 程序中用到了兩種結構 hostent 與 sockaddr_in: hostent類型的結構定義 struct hostent { char *h_name ; //主機的正式名稱 char * *h_aliases ; //別名列表 int h_addrtype ; //主機地址類型:af_ lnt h_length; //主機地址長度:4 字節(32 位) char * *h_addr_list;//主機 ip 地址列表 } #define h_addr h_addr_list[0]sockaddr_in 類型的結構定義,sockaddr_in 是通用套接字結構 sockaddr 在 tcp/ip 協議下的結構重定義,為 tcp/ip 套接字地址結構。 struct sockaddrin { short int sin_family ;//地址類型 af_,其中 af_inet 為 tcp/ip 專用 unsigned short int sin_port; //端口號 struct in_addr sin_addr; //internet 地址 //端口號以及 internet 地址使用的是網絡字節順序,需要通過函數 htons 轉換 } struct in_addr { _u32 s_addr; //類型為 unsignel_long }程序中使用到了多個函數:struct hostent * gethostbyname( const char *hostname);
函數 gethostbyname 查詢指定的域名地址對應的 ip 地址,返回一個 hostent結構的指針,如果不成功返回 null。
int_socket(int domain,int_type,int protocol);
函數 socket 創建一個套接字描述符,如果失敗返回 -1。domain 為地址類型,type為套接字類型,本題中為 sock_stream ;protocol 指定協議,本題中為 0 。
int connect( int sockfd,struct sockaddr *servaddr, int addrlen);
函數connect與服務器建立一個連接,成功返回 0,失敗返回- 1。servaddr 為遠程服務器的套接字地址,包括服務器的 ip 地址和端口號;addrlen 為地址的長度。
int read( int fd,char *buf,int len);
int write( int fd,char *buf,int len);
函數read和write從套接字讀和寫數據,成功返回數據量大小,否則返回 -1。buf 指定數據緩沖區,len 指定接收或發送的數據量大小。 【socket程序】//程序中引用的頭文件略#define port 3490//定義端口號為 3490int main( int argc,char *argv[] ){ int sockfd,nbytes; //套接字描述符、讀入緩沖區的字節數 char buf[1024]; //緩沖區 struct hostent *he; //主機信息類型 struct sockaddr_in srvaddr;//internet套接字結構 if ( __(1)__ ) { perror( "調用參數為零,請輸入服務器的主機名!\n" ); exit(1);} if ( __(2)__ ) //如果通過主機名沒有獲得對應的主機信息就提示用戶 { perror("無法通過主機名獲得主機信息!\n" ); exit(1);} if ( __(3)__ ) //在無法創建套接字時,提示用戶 { perror("無法創建套按字!\n" ); exit(1);} bzero( &srvaddr,sizeof(srvaddr));//置空 srvaddr srvaddr,sin_family = af_inet; srvaddr,sin_port:__(4)__ ;srvaddr.sin_addr:__(5)__ ; //設置套接字結構的各項信息,其中的地址來自于域名查詢后的 hp 變量 if ( connect( sockfd,__(n)__ ,sizeof( struct sockaddr)) == -1 ) { perror("連接失敗!\n" ); exit(1);} //連接服務器,如果失敗則提示用戶 if (( nbytes = read ( sockfd,buf,maxdatasize)) == -1 ) { perror( "讀失敗!\n" ); exit(1);} //從套容接字中讀出數據 buf[nbytes] = '\0'; printf("讀到的內容:%s",buf) ; close( sockfd) ; //打印數據并關閉套接字}