武汉理工计算机网络,计算机网络实验武汉理工大学
计算机网络实验武汉理工大学 (10页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!19.90 积分武汉理工大学武汉理工大学学学 生生 实实 验验 报报 告告 书书实验课程名称实验课程名称 《《计算机网络计算机网络》》 开开 课课 学学 院院 计算机科学与技术学院计算机科学与技术学院 指导老师姓名指导老师姓名 ************ 学学 生生 姓姓 .
计算机网络实验武汉理工大学
(10页)

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
19.90 积分
武汉理工大学武汉理工大学学学 生生 实实 验验 报报 告告 书书实验课程名称实验课程名称 《《计算机网络计算机网络》》 开开 课课 学学 院院 计算机科学与技术学院计算机科学与技术学院 指导老师姓名指导老师姓名 ************ 学学 生生 姓姓 名名 ******** 学生专业班级学生专业班级 ****************** 2010 — 2011 学年 第 二 学期学生学号学生学号实验课成绩实验课成绩实验课程名称: 计算机网络 实验项目名称求 MAC 地址实验成绩实验者##专业班级##组别同组者实验日期 年 月 日第一部分:实验分析与设计(可加页)一、实验内容描述(问题域描述)1、实验目的1.1 了解以太网帧的构成,了解各个字段的含义1.2 能够识别不同的 MAC 地址,并理解 MAC 地址的作用2、实验要求2.1 获取本地 MAC 地址2.2 获取无线网络的 MAC 地址二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑 或者算法描述)1、实验原理 在命令提示符下输入 ipconfig/all 可以得到本地和无线网络的 MAC 地址,因此可以用一个进 程调用此命令,然后通过字符串的匹配得到相应的字段,按 MAC 地址的格式输出2 实验步骤 C 地址 2.3 在 main 函数中调用 getLocalMACAddress 函数和 getWirelessNetworkMACAddress 函数, 输出本地 MAC 地址和无线网络 MAC 地址3、主要仪器设备及耗材1、微机 2、NetBeans IDE 6.5.1 3、WPS 文字第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)1、开始->运行->cmd->ipconfig/all 启动 NetBea1、Java 程序得到的本地 MAC 地址和无线网络 MAC 地址2、结果分析 Java 程序所求的本地 MAC 地址和无线网络 MAC 地址与命令提示符下得到的 MAC 地址相同二、实验小结、建议及体会 此实验的原理就是调用进程执行命令提示符下的命令和字符串的匹配,用这种方法还可以得 到 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) //寻找标示字符 串以太网适配器{while ((line = bufferedReader.readLine()) != null){index = line.indexOf(“Physical Address“);// 寻找标示字符串[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;} //无线网络连接的物理地址:public static String getWirelessNetworkMACAddress(){String wirelessmac = null;BufferedReader bufferedReader = null;while ((line = bufferedReader.readLine()) != null) {if (line.indexOf(“Ethernet adapter 无线网络连接“)>=0) //寻找标示 字符串以太网适配器{while ((line = bufferedReader.readLine()) != null){index = line.indexOf(“Physical Address“);// 寻找标示字符串[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(“无线网络 MAC 地址是:“+wirelessmac);} }实验课程名称: 计算机网络 实验项目名称客户端与服务器端通信实验成绩实验者##专业班级##组别同组者实验日期 年 月 日第一部分:实验分析与设计(可加页)实验内容描端与服务器端之间正确的 socket 连结。 2.2 客服端或服务器端输入“end“时,结束通信。一、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑 或者算法描述)1、实验原理 本实验的通信模式为 C/S 模式,即在一个线程中一个进程处理 C(client 客服端) ,另一个进 程处理 S(server 服务器端)。2、实验步骤 2.1 ServerSocket server 负责当前线程中 C/S 通信中的 Socket 对象的服务器端2.2 ServerS3、主要仪器设备及耗材1、微机 2、NetBeans IDE 6.5.1 3、WPS 文字第二部分:实验调试与结果分析(可加页)一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)启动 NetBeans IDE 6.5.1->运行 socket 包下的 server->运行 socket 包下的 client 二、素讨论、综合分析和结论等) 1、运行 serverserver 输出2、运行 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 端输出三、实验小结、建议及体会 //服务器端代码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); //建立监听服务 System.out.print(“端口号:“+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(); //启动线程,向客户端发送信息String aline; while((aline=sin.readLine())!=null) //从客户端读入信息{ System.out.println(aline); if(aline.equals(“end“)) { flag= false; ConnenThread.interrupt(); //线程中断break; } }sout.close(); //关闭流os.close(); sin.close(); is.cpublic void run() { while(true) { try{ int ch;System.out.println(e); } } } public void finalize() //析构函数{ try { server.close(); //停止 ServerSocket 服务}catch(IOException e) { System.out.println(e); } } } public class MyClient implements Runnable{ Socket clientSocket; boolean flag=true; //标记是否结束 Thread ConnenThread; //用于向服务器端发送信息BufferedReader cin; DataOutputStream cout;public static void main(String[] args) { new MyClient().ClientStart(); }private void ClientStart() { try { //连接服务器端,这里使用本机clientSocket=new Socket(“localhost“,5678);System.out.print(“已建立连接!“);w))!=null) { //接收服务器端的数据System.out.println(aline); if(aline.equals(“end“)) { flag= false; ConnenThread.interrupt(); break;} }cout.close();os.close();cin.close();is.close();clientSocket.close(); //关闭 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); } }} } 关 键 词: 计算机网络 实验 武汉理工大学
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)