武汉理工计算机网络,计算机网络实验武汉理工大学
計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)武漢理工大學(xué)
(10頁(yè))
本資源提供全文預(yù)覽,點(diǎn)擊全文預(yù)覽即可全文預(yù)覽,如果喜歡文檔就下載吧,查找使用更方便哦!
19.90 積分
武漢理工大學(xué)武漢理工大學(xué)學(xué)學(xué) 生生 實(shí)實(shí) 驗(yàn)驗(yàn) 報(bào)報(bào) 告告 書書實(shí)驗(yàn)課程名稱實(shí)驗(yàn)課程名稱 《《計(jì)算機(jī)網(wǎng)絡(luò)計(jì)算機(jī)網(wǎng)絡(luò)》》 開開 課課 學(xué)學(xué) 院院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 指導(dǎo)老師姓名指導(dǎo)老師姓名 ************ 學(xué)學(xué) 生生 姓姓 名名 ******** 學(xué)生專業(yè)班級(jí)學(xué)生專業(yè)班級(jí) ****************** 2010 — 2011 學(xué)年 第 二 學(xué)期學(xué)生學(xué)號(hào)學(xué)生學(xué)號(hào)實(shí)驗(yàn)課成績(jī)實(shí)驗(yàn)課成績(jī)實(shí)驗(yàn)課程名稱: 計(jì)算機(jī)網(wǎng)絡(luò) 實(shí)驗(yàn)項(xiàng)目名稱求 MAC 地址實(shí)驗(yàn)成績(jī)實(shí)驗(yàn)者##專業(yè)班級(jí)##組別同組者實(shí)驗(yàn)日期 年 月 日第一部分:實(shí)驗(yàn)分析與設(shè)計(jì)(可加頁(yè))一、實(shí)驗(yàn)內(nèi)容描述(問(wèn)題域描述)1、實(shí)驗(yàn)?zāi)康?.1 了解以太網(wǎng)幀的構(gòu)成,了解各個(gè)字段的含義1.2 能夠識(shí)別不同的 MAC 地址,并理解 MAC 地址的作用2、實(shí)驗(yàn)要求2.1 獲取本地 MAC 地址2.2 獲取無(wú)線網(wǎng)絡(luò)的 MAC 地址二、實(shí)驗(yàn)基本原理與設(shè)計(jì)(包括實(shí)驗(yàn)方案設(shè)計(jì),實(shí)驗(yàn)手段的確定,試驗(yàn)步驟等,用硬件邏輯 或者算法描述)1、實(shí)驗(yàn)原理 在命令提示符下輸入 ipconfig/all 可以得到本地和無(wú)線網(wǎng)絡(luò)的 MAC 地址,因此可以用一個(gè)進(jìn) 程調(diào)用此命令,然后通過(guò)字符串的匹配得到相應(yīng)的字段,按 MAC 地址的格式輸出2 實(shí)驗(yàn)步驟 C 地址 2.3 在 main 函數(shù)中調(diào)用 getLocalMACAddress 函數(shù)和 getWirelessNetworkMACAddress 函數(shù), 輸出本地 MAC 地址和無(wú)線網(wǎng)絡(luò) MAC 地址3、主要儀器設(shè)備及耗材1、微機(jī) 2、NetBeans IDE 6.5.1 3、WPS 文字第二部分:實(shí)驗(yàn)調(diào)試與結(jié)果分析(可加頁(yè))一、調(diào)試過(guò)程(包括調(diào)試方法描述、實(shí)驗(yàn)數(shù)據(jù)記錄,實(shí)驗(yàn)現(xiàn)象記錄,實(shí)驗(yàn)過(guò)程發(fā)現(xiàn)的問(wèn)題等)1、開始->運(yùn)行->cmd->ipconfig/all 啟動(dòng) NetBea1、Java 程序得到的本地 MAC 地址和無(wú)線網(wǎng)絡(luò) MAC 地址2、結(jié)果分析 Java 程序所求的本地 MAC 地址和無(wú)線網(wǎng)絡(luò) MAC 地址與命令提示符下得到的 MAC 地址相同二、實(shí)驗(yàn)小結(jié)、建議及體會(huì) 此實(shí)驗(yàn)的原理就是調(diào)用進(jìn)程執(zhí)行命令提示符下的命令和字符串的匹配,用這種方法還可以得 到 ip、mask、gateway、DHCP server 和 DNS server。附(源代碼)package socket; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;public class get2mac {//本地 MAC 地址public static String getLocalMACAddress(){String localmac = null;Buff= new BufferedReader(new InputStreamReader(process.getInputStream()));String line = null;int index = -1;while ((line = bufferedReader.readLine()) != null) {if (line.indexOf(“Ethernet adapter 本地連接“)>=0) //尋找標(biāo)示字符 串以太網(wǎng)適配器{while ((line = bufferedReader.readLine()) != null){index = line.indexOf(“Physical Address“);// 尋找標(biāo)示字符串[physical address]break;}}}}}} catch (IOException e) {e.printStackTrace();} finally {try {if (bufferedReader != null) {bufferedReader.close();}} catch (IOException e1) {e1.printStackTrace();}bufferedReader = null;process = null;}return localmac;} //無(wú)線網(wǎng)絡(luò)連接的物理地址:public static String getWirelessNetworkMACAddress(){String wirelessmac = null;BufferedReader bufferedReader = null;while ((line = bufferedReader.readLine()) != null) {if (line.indexOf(“Ethernet adapter 無(wú)線網(wǎng)絡(luò)連接“)>=0) //尋找標(biāo)示 字符串以太網(wǎng)適配器{while ((line = bufferedReader.readLine()) != null){index = line.indexOf(“Physical Address“);// 尋找標(biāo)示字符串[physical address]if (index >= 0) {// 找到了index = line.indexOf(“:“); // 尋找“:“的位置if (index>=0) {wirelessmac = line.substring(index + 1).trim();// 取 出 mac 地址并去除 2 邊空格break;}}}}}} catch (IOException e) {e.printStackTrace();} finally {try {if (bufferedReader != null) {bufferedReader.close();return wirelessmac;}public static void main(String[] argc) {String localmac = getLocalMACAddress();System.out.println(“本地 MAC 地址是:“+localmac);String wirelessmac = getWirelessNetworkMACAddress();System.out.println(“無(wú)線網(wǎng)絡(luò) MAC 地址是:“+wirelessmac);} }實(shí)驗(yàn)課程名稱: 計(jì)算機(jī)網(wǎng)絡(luò) 實(shí)驗(yàn)項(xiàng)目名稱客戶端與服務(wù)器端通信實(shí)驗(yàn)成績(jī)實(shí)驗(yàn)者##專業(yè)班級(jí)##組別同組者實(shí)驗(yàn)日期 年 月 日第一部分:實(shí)驗(yàn)分析與設(shè)計(jì)(可加頁(yè))實(shí)驗(yàn)內(nèi)容描端與服務(wù)器端之間正確的 socket 連結(jié)。 2.2 客服端或服務(wù)器端輸入“end“時(shí),結(jié)束通信。一、實(shí)驗(yàn)基本原理與設(shè)計(jì)(包括實(shí)驗(yàn)方案設(shè)計(jì),實(shí)驗(yàn)手段的確定,試驗(yàn)步驟等,用硬件邏輯 或者算法描述)1、實(shí)驗(yàn)原理 本實(shí)驗(yàn)的通信模式為 C/S 模式,即在一個(gè)線程中一個(gè)進(jìn)程處理 C(client 客服端) ,另一個(gè)進(jìn) 程處理 S(server 服務(wù)器端)。2、實(shí)驗(yàn)步驟 2.1 ServerSocket server 負(fù)責(zé)當(dāng)前線程中 C/S 通信中的 Socket 對(duì)象的服務(wù)器端2.2 ServerS3、主要儀器設(shè)備及耗材1、微機(jī) 2、NetBeans IDE 6.5.1 3、WPS 文字第二部分:實(shí)驗(yàn)調(diào)試與結(jié)果分析(可加頁(yè))一、調(diào)試過(guò)程(包括調(diào)試方法描述、實(shí)驗(yàn)數(shù)據(jù)記錄,實(shí)驗(yàn)現(xiàn)象記錄,實(shí)驗(yàn)過(guò)程發(fā)現(xiàn)的問(wèn)題等)啟動(dòng) NetBeans IDE 6.5.1->運(yùn)行 socket 包下的 server->運(yùn)行 socket 包下的 client 二、素討論、綜合分析和結(jié)論等) 1、運(yùn)行 serverserver 輸出2、運(yùn)行 client 2.1 client 輸出2.2 server 輸出3、client 端輸入“你好,能收到信息嗎” ,回車 3.1 client 端輸出4、server 端輸入“能” ,回車 4.1 server 端輸出4.2client 端輸出5、客戶端輸入“end” ,回車 5.1 client 端輸出5.2server 端輸出三、實(shí)驗(yàn)小結(jié)、建議及體會(huì) //服務(wù)器端代碼package socket; import java.net.ServerSocket; import java.net.Socket; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java }public void ServerStart() { try{ server=new ServerSocket(5678); //建立監(jiān)聽服務(wù) System.out.print(“端口號(hào):“+server.getLocalPort());while(flag) { clientSocket=server.accept(); System.out.print(“連接已建立完畢!“);InputStream is=clientSocket.getInputStream(); sin=new BufferedReader(new InputStreamReader(is)); OutputStream os=clientSocket.getOutputStream(); sout=new DataOutputStream(os); ConnenThread=new Thread(this); ConnenThread.start(); //啟動(dòng)線程,向客戶端發(fā)送信息String aline; while((aline=sin.readLine())!=null) //從客戶端讀入信息{ System.out.println(aline); if(aline.equals(“end“)) { flag= false; ConnenThread.interrupt(); //線程中斷break; } }sout.close(); //關(guān)閉流os.close(); sin.close(); is.cpublic void run() { while(true) { try{ int ch;System.out.println(e); } } } public void finalize() //析構(gòu)函數(shù){ try { server.close(); //停止 ServerSocket 服務(wù)}catch(IOException e) { System.out.println(e); } } } public class MyClient implements Runnable{ Socket clientSocket; boolean flag=true; //標(biāo)記是否結(jié)束 Thread ConnenThread; //用于向服務(wù)器端發(fā)送信息BufferedReader cin; DataOutputStream cout;public static void main(String[] args) { new MyClient().ClientStart(); }private void ClientStart() { try { //連接服務(wù)器端,這里使用本機(jī)clientSocket=new Socket(“l(fā)ocalhost“,5678);System.out.print(“已建立連接!“);w))!=null) { //接收服務(wù)器端的數(shù)據(jù)System.out.println(aline); if(aline.equals(“end“)) { flag= false; ConnenThread.interrupt(); break;} }cout.close();os.close();cin.close();is.close();clientSocket.close(); //關(guān)閉 Socket 連接try{ int ch; while((ch=System.in.read())!=-1) { cout.write((byte)ch); if(ch=='\n') cout.flush(); } }catch(Exception e) { System.out.println(e); } }} } 關(guān)?鍵?詞: 計(jì)算機(jī)網(wǎng)絡(luò) 實(shí)驗(yàn) 武漢理工大學(xué)
?天天文庫(kù)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請(qǐng)勿作他用。
總結(jié)
以上是生活随笔為你收集整理的武汉理工计算机网络,计算机网络实验武汉理工大学的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 解决Excel2007不能清除剪贴板的方
- 下一篇: 基础乐理知识(教你认五线谱)