文档库 最新最全的文档下载
当前位置:文档库 › 中南大学计算机网络实验报告

中南大学计算机网络实验报告

中南大学计算机网络——课程设计报告

姓名:周建权

学号:0909122820

班级:信安1202

目录

第一章概要设计 (3)

1.1设计目的、任务与要求 (3)

1.2 开发环境简介 (3)

第二章设计的基本概念和原理 (5)

2.1 数据库 (5)

2.2 MVC架构模式 (5)

2.3 Web应用服务器 (6)

第三章系统分析设计 (6)

3.1 系统功能 (6)

3.2 系统构架 (7)

第四章系统实现 (9)

4.1 数据库设计 (9)

4.2 系统公共模块设计 (11)

4.3 前台销售模块详细设计 (12)

4.4 后台管理模块详细设计 (14)

第五章完成情况 (15)

5.1前台基本功能界面 (15)

5.2后台基本功能界面 (20)

第六章使用说明 (22)

6.1网站访问方式 (22)

第七章总结 (22)

第八章参考文献 (22)

第一章概要设计

1.1设计目的、任务与要求

电子商务(Electronic Commerce)是在Internet开放的网络环境下,基于浏览器/服务器应用方式,实现消费者的网上购物、商户之间的网上交易和在线电子支付的一种新型的商业运营模式。 Internet上的电子商务可以分为三个方面:信息服务、交易和支付。主要内容包括:电子商情广告;电子选购和交易、电子交易凭证的交换;电子支付与结算以及售后的网上服务等。主要交易类型有企业与个人的交易(B to C方式)和企业之间的交易(B to B方式)两种。参与电子商务的实体有四类:顾客(个人消费者或企业集团)、商户(包括销售商、制造商、储运商)、银行(包括发卡行、收单行)及认证中心。电子商务是Internet 爆炸式发展的直接产物,是网络技术应用的全新发展方向。Internet本身所具有的开放性、全球性、低成本、高效率的特点,也成为电子商务的内在特征,并使得电子商务大大超越了作为一种新的贸易形式所具有的价值,它不仅会改变企业本身的生产、经营、管理活动,而且将影响到整个社会的经济运行与结构。

本次课程设计要求完成一个电子商务网站的设计,实现一个类似网上书店或者网上花店等电子商务网站,要求利用ASP或者JSP技术实现,后台数据库为 SQL server或者ORACLE。

1.2 开发环境简介

我们选择MyEclipse10 + SqlServer2008 + Tomcat6.0 + JDK7.0一系列开发工具及环境,利用servlet + jsp + javabean技术开发网上购花平台。

Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java 编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web 内容。狭义的Servlet是指 Java语言实现的一个接口,广义的Servlet是指任

何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。

Serverlet的运行机制:

Servlet的主要功能在于交互式地浏览和修改数据,生成动态Web内容。这个过程为:

1、客户端发送请求至服务器端;

2、服务器将请求信息发送至Servlet;

3、Servlet生成响应内容并将其传给Server。响应内容动态生成,通常取决于客户端的请求;

4、服务器将响应返回给客户端;

Serverlet的生命周期:

1、Server创建一个Servlet的实例,也就是调用了init();

2、一个客户端的请求到达Server;

3、Server将请求发送给Serverlet;

4、Serverlet生成对请求的响应;

5、Server激活Servlet的service()方法,传递请求和响应对象作为参数;

JSP是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态技术标准。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标签,就构成了JSP网页。Java程序片段可以操纵数据库、重新定向网页以及发送E-mail等,实现建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,这样大大降低了对客户浏览器的要求,即使客户浏览器端不支持Java,也可以访问JSP网页。

JSP全名为Java Server Pages,其根本是一个简化的Servlet设计,他实现了Html语法中的java扩张(以 <%, %>形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

第二章设计的基本概念和原理首先,对开发过程中所使用的技术,涉及到的专用名词进行一个简要的介绍。

2.1 数据库

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。

数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。而不同的数据库是按不同的数据结构来联系和组织的。关系式数据结构把一些复杂的数据结构归结为简单的二元关系(即二维表格形式)。例如某单位的职工关系就是一个二元关系。由关系数据结构组成的数据库系统被称为关系数据库系统。在关系数据库中,对数据的操作几乎全部建立在一个或多个关系表格上,通过对这些关系表格的分类、合并、连接或选取等运算来实现数据的管理。

SQL Server 2008 是在Microsoft的数据平台上发布的数据库,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。

基于对数据库的稳定友好性以及开发熟悉度的考虑,本系统采用的是关系型数据库SqlServer2008。

2.2 MVC架构模式

MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:

Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。 View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。Controller(控制器)是应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

MVC模式有耦合性低、重用性高等优点,最典型就是JSP + servlet + javabean的模式。

本次开发即采用了这种模式。JSP即视图层,显示内容;servlet即控制器层,与用户交互数据;javabean封装了一系列对象,可从数据库存取数据。

2.3 Web应用服务器

本次开发选择的web应用服务器为Apache Tomcat 6.0。

Apache是Web服务器,它可以解析HTTP协议。当接收到一个HTTP请求,会返回一个HTTP响应,例如送回一个HTML页面。为了处理一个请求,可以响应一个静态页面或图片,进行页面跳转,或者把动态响应的产生委托给一些其它的程序。最终这些服务器端的程序通常产生一个HTML的响应来让浏览器可以浏览。

而tomcat是应用(java)服务器,是在Apache上提供JSP等服务的JAVA 容器。

第三章系统分析设计

3.1 系统功能

本系统有三类用户:系统管理员、注册用户、浏览者。这三类用户通过不同的功能模块,完成对数据库的不同操作。其中管理员的权限最大,可以完成所有的数据库操作;注册用户只能完成对其个人信息数据的查询和修改,对网站进行浏览和商品购买操作;浏览者权限最低,仅能完成浏览网站的基本操作。

3.2 系统构架

本系统采用B/S体系结构,用户通过在浏览器上的操作,就可以向网络上的服务器发出操作请求,然后由服务器对用户的请求做出响应,包括将相应的页面内容反馈给用户端到浏览器。在采用B/S结构的设计后,在用户端的电脑商无需安装专门的客户端软件,从而简化了用户端的程序设计和维护工作。但是同时又增加了服务器的压力,比如大量的计算和数据处理工作将要在服务器上进行。当用户从浏览器端提交请求后,服务器将对用户提交的请求做出响应,包括进行数据库查询、反馈数据查询的结果,生成动态网页等。

图3.1 B/S架构模式

细化到开发系统上,本系统采用经典的MVC架构模式进行开发。MVC具体概念参见第二章简介。JAVA作为当今主流语言,我们学习得也比较早,使用较熟练,故采用javaWeb中servlet + jsp + javabean技术整合搭建系统。其中javabean用于model层,jsp位于view层,servlet位于control层。

图3.2 MVC模式图

具体到开发,目录结构如下图:

Dao包下的类的主要功能有数据库连接以及一些对于数据库操作,entity包下的类为与数据库对应的实体,servlet包下的类都是继承了HttpServlet的功能类;DB目录下存放的是数据库文件,如下图;

第四章系统实现4.1 数据库设计

图4.1 商品所属类别表

图4.2 商品信息表

图4.3 商品评论表

图4.4 用户表

图4.5 订单表

图4.6 用户发表分享内容表

图4.7 管理员信息表

图4.8 网站信息表

图4.9 图片路径表

4.2 系统公共模块设计

公共类的接口包括商品信息类,商品种类类

商品种类类

private int sortId;

private String sortname;

商品信息类

private int goodsId;

private String goodsname;

private String goodssort;

private double goodsprice;

private double goodscarr;

private String goodsaddr;

private String goodsimg;

private String goodstuijian;

private String goodsxianliang;

private String goodstejia;

private String goodscuxiao;

private String goodszt;

private String goodsintro;

所有的用户都可以浏览商品的信息和种类。

通过以下的jsp代码可以动态的对花的信息进行修改。

  • 类别:<%=sort.getSortname() %>
  • 数量:  
  • style="position:absolute;left:75px;top:280px;">

  • 4.3 前台销售模块详细设计

    登陆serverlet的设计与实现。

    public void doPost(HttpServletRequest request, HttpServletResponse response)

    throws ServletException, IOException {

    request.setCharacterEncoding("utf-8");

    response.setCharacterEncoding("utf-8");

    PrintWriter out = response.getWriter();

    String adminUsername = request.getParameter("adminUsername");

    String adminPassword = request.getParameter("adminPassword");

    AdinUserCrtl ac = new AdinUserCrtl();

    Admin_UserInfo au =ac.login(adminUsername, adminPassword);

    if(au!=null){

    //查看当前请求的会话对象

    HttpSession session =request.getSession();

    session.setAttribute("au",au);

    response.sendRedirect("../admin/index.jsp");

    }else{

    out.print("");

    }

    }

    更新用户订单的serverlet

    public void doPost(HttpServletRequest request, HttpServletResponse response)

    throws ServletException, IOException {

    request.setCharacterEncoding("utf-8");

    response.setCharacterEncoding("utf-8");

    PrintWriter out = response.getWriter();

    OrderCtrl oc = new OrderCtrl();

    int orderId =Integer.parseInt(request.getParameter("orderId"));

    String orderZt =request.getParameter("orderZt");

    int res =oc.updateOrder(orderId, orderZt);

    if(res>0){

    out.print("");

    }else{

    out.print("");

    }

    }

    用户主界面部分css代码

    .navlist li{float:left; height:40px; display:inline; margin-right:8px;}

    .navlist li a{display:inline-block; color:#FFFFFF; font-weight:bold; height:50px; line-height:40px; padding:4px 16px;} .navlist li a:visited{color:#FFFFFF;}

    .navlist li a.navslt,.navlist li a:hover{background:url(images/sltbg.gif) repeat-x left top; text-decoration:none;}

    .navlist2li a.navslt,.navlist2li a:hover{background:url(images/sltybg.gif) repeat-x left top;} /*==我的账户/购物车样式==*/

    .goodscart{float:right;

    height:50px;position:absolute;left:80%; color:#FFFFFF; padding:0px 10px; background:url(images/hbg.gif) repeat-x left top;}

    .goodscart p{background:url(images/hiconbg.gif) no-repeat left center; line-height:38px; padding-left:20px;}

    .goodscart a,.goodscart a:visited{color:#FFFFFF;}

    .goodscart span{margin-left:40px;}

    .goodscart span a,.goodscart span a:visited{color:#FF9700;

    font-weight:bold;}

    4.4 后台管理模块详细设计

    后台管理模块通过admin/index.jsp进入

    后台管理系统

    <body></p><p></body>

    管理员基本功能

    会员管理

    会员列表

    花店管理

    类别管理

    花名列表

    添加

    订单管理
    评论管理

    手记管理

    手记列表

    手记添加

    第五章完成情况

    5.1前台基本功能界面

    用户进入网站首个界面

    5.2后台基本功能界面

    中南大学计算机体系结构实验报告

    计算机体系结构实验报告 学院:信息科学与工程学院 专业班级:高赛文的小仙女 指导老师:雷向东 姓名:igot7

    目录 实验 1 对指令操作码进行霍夫曼编码 (3) 一、实验目的 (3) 二、实验内容 (3) 三、实验过程 (3) 四、实验结果 (14) 实验 2 使用 LRU 方法更新 Cache (15) 一、实验目的 (15) 二、实验内容 (15) 三、实验过程 (15) 四、实验结果 (18) 实验 3 通道处理过程模拟 (20) 一、实验目的 (20) 二、实验内容 (20) 三、实验过程 (21) 四、实验结果 (22) 实验 4 单功能流水线调度机构模拟 (23) 一、实验目的 (23) 二、实验内容 (23) 三、实验过程 (23) 四、运行结果 (24) 实验总结 (24)

    实验 1 对指令操作码进行霍夫曼编码 一、实验目的 1.了解和掌握指令编码的基本要求和基本原理 二、实验内容 1.使用编程工具编写一个程序,对一组指令进行霍夫曼编码,并输出最后的编码结果以及对 指令码的长度进行评价。与扩展操作码和等长编码进行比较。 问题描述以及问题分析: 我们举例说明此问题,例如: 有一组指令的操作码共分七类,它们出现概率如 下表所示: P1 P2 P3 P4 P5 P6 P7 0.45 0.30 0.15 0.05 0.03 0.01 0.01 对此组指令进行HUFFMAN 编码正如下图所示: 最后得到的HUFFMAN 编码如下表所示: 最短编码长度为: H=0.45*1+0.30*2+0.15*3+0.05*4+0.03*5+0.01*6+0.01*6=-1.95. 要对指令的操作码进行HUFFMAN 编码,只要根据指令的各类操作码的出现概率构造HUFFMAN 树再进行HUFFAM 编码。此过程的难点构造HUFFMAN 树,进行HUFFAM 编码只要对你所生成的HUFFMAN 树进行中序遍历即可完成编码工作。 三、实验过程 观察上图 1,不难看出构造 HUFFMAN 树所要做的工作:

    淮海工学院计算机网络实验一实验报告

    淮海工学院计算机工程学 院 实验报告书 课程名:计算机网络 题目:实验1 网络认识实验 班级: 学号: 姓名:

    一.实验目的与要求 1、通过实验了解主要的网卡、网络连接头、网络传输介质、常见网络设备的特性; 2、初步掌握网卡的安装、各种参数、协议的设置。 二.实验内容或题目 1、参观网络管理实验室,了解和认识网卡、网络连接头、传输线缆、集线器、交换机、路由器、服务器; 2、按照学校校园网环境,基本学会网卡的安装与配置。 三.实验步骤与源程序 1、介绍构建小型局域网的基本步骤; 2、观看各类网卡,介绍网卡的基本功能、分类方法(按总线标准、协议标准、传输速率等分类); 3、观看常见的网络连接头,重点介绍RJ-45连接头及其A标、B标的制作; 附 4 和光纤的特性; 5、观看常见的网络设备,主要介绍集线器Hub、交换机和路由器的功能与特性; 6、动手安装网卡,并Windows 2000环境中安装网卡驱动程序,根据校园网和实验室的环境与管理规定,配置网卡参数(如静态IP地址,网关路由、DNS服务器等) 四.测试数据与实验结果 1、介绍构建小型局域网的基本步骤: 构建局域网的准备工作:①选择合适的组网方式—总线型网络,交叉双绞线,星型网络。 ②组网设备—集线器,网卡,网线,RJ-45水晶头③电脑选购④局域网络设置⑤局域网络的IP地址的设置。通信介质,网卡,modem,路由器等;根据相关配套接口连接计算机,实现网络通信。设置IP地址,设置在同一网段且不能重复,设置方法如下:打开控制面板——网络连接——右键“无线网络连接”——属性——Internet协议。回到“无线网络连接”属性的界面,点击“无线网络配置”——高级,选择“仅计算机到计算机”。以上2步在每台电脑上都要进行。选择一台机器作为服务器。在无线网络配置页面点击添加。为了局域网的安全,在弹出页面中将"自动为我提供此密钥"前的对勾去掉.然后设置SSID号以及网络密钥,点击确定之后服务器的设置就已完成。在另几台台机器上搜索无线信号,双击所搜索到的信号,在弹出页面内输入您所设置的密钥后即可完成连接。 2、网卡 通信适配器或网络接口卡NIC,简称网卡,装有处理器和存储器。网卡实现工作站与局域网传输介质之间的物理连接和电信号匹配,接收和执行工作站与服务器送来的各种控制命令,完成物理层的功能。

    武汉大学计算机网络实验报告 (2)

    武汉大学教学实验报告 动力与机械学院能源动力系统及自动化专业2013 年11 月10 日

    一、实验操作过程 1.在仿真软件packet tracer上按照实验的要求选择无线路由器,一般路由器和PC机构建一个无线局域网,局域网的网络拓扑图如下: 2.按照实验指导书上的表9.1(参数配置表)对路由器,DNS服务器,WWW服务器和PC机进行相关参数的配置: 服务器配置信息(子网掩码均为255.255.255.0) 主机名IP地址默认网关 DNS 202.2.2.1 202.2.2.2 WWW 202.3.3.1 202.3.3.3 路由器配置信息(子网掩码均为255.255.255.0) 主机名型号IP地址默认网关时钟频率ISP 2620XM e1/0:202.2.2.2 e1/1:202.3.3.3 s0/0:202.1.1.2 64000 Router2(Server) 2620XM f0/0:192.168.1.1 s0/0:202.1.1.1 Wireless Router Linksys WRT300N 192.168.1.2 192.168.1.1 202.2.2.1 备注:PC机的IP地址将通过无线路由器的设置自动分配 2.1 对router0(sever)断的配置: 将下列程序代码输到router0中的IOS命令行中并执行,对router0路由器进行设置。Router>en Router#conf t

    2.3 WWW服务器的相关配置 对www服务器进行与DNS服务器相似的配置,包括它的IP地址,子网掩码,网关等,具体的相关配置图见下图: WWW服务器的相关配置图

    中南大学通信电子线路实验报告

    中南大学 《通信电子线路》实验报告 学院信息科学与工程学院 题目调制与解调实验 学号 专业班级 姓名 指导教师

    实验一振幅调制器 一、实验目的: 1.掌握用集成模拟乘法器实现全载波调幅和抑止载波双边带调幅的方法。 2.研究已调波与调制信号及载波信号的关系。 3.掌握调幅系数测量与计算的方法。 4.通过实验对比全载波调幅和抑止载波双边带调幅的波形。 二、实验内容: 1.调测模拟乘法器MC1496正常工作时的静态值。 2.实现全载波调幅,改变调幅度,观察波形变化并计算调幅度。 3.实现抑止载波的双边带调幅波。 三、基本原理 幅度调制就是载波的振幅(包络)受调制信号的控制作周期性的变化。变化的周期与调制信号周期相同。即振幅变化与调制信号的振幅成正比。通常称高频信号为载波信号。本实验中载波是由晶体振荡产生的10MHZ高频信号。1KHZ的低频信号为调制信号。振幅调制器即为产生调幅信号的装置。 在本实验中采用集成模拟乘法器MC1496来完成调幅作用,图2-1为1496芯片内部电路图,它是一个四象限模拟乘法器的基本电路,电路采用了两组差动对由V1-V4组成,以反极性方式相连接,而且两组差分对的恒流源又组成一对差分电路,即V5与V6,因此恒流源的控制电压可正可负,以此实现了四象限工作。D、V7、V8为差动放大器V5与V6的恒流源。进行调幅时,载波信号加在V1-V4的输入端,即引脚的⑧、⑩之间;调制信号加在差动放大器V5、V6的输入端,即引脚的①、④之间,②、③脚外接1KΩ电位器,以扩大调制信号动态范围,已调制信号取自双差动放大器的两集电极(即引出脚⑹、⑿之间)输出。

    图2-1 MC1496内部电路图 用1496集成电路构成的调幅器电路图如图2-2所示,图中VR8用来调节引出脚①、④之间的平衡,VR7用来调节⑤脚的偏置。器件采用双电源供电方式(+12V,-9V),电阻R29、R30、R31、R32、R52为器件提供静态偏置电压,保证器件内部的各个晶体管工作在放大状态。 四、实验结果 1. ZD.OUT波形: 2. TZXH波形:

    计算机图形学实验报告 (2)

    中南大学信息科学与工程学院 实验报告实验名称 实验地点科技楼四楼 实验日期2014年6月 指导教师 学生班级 学生姓名 学生学号 提交日期2014年6月

    实验一Window图形编程基础 一、实验类型:验证型实验 二、实验目的 1、熟练使用实验主要开发平台VC6.0; 2、掌握如何在编译平台下编辑、编译、连接和运行一个简单的Windows图形应用程序; 3、掌握Window图形编程的基本方法; 4、学会使用基本绘图函数和Window GDI对象; 三、实验内容 创建基于MFC的Single Document应用程序(Win32应用程序也可,同学们可根据自己的喜好决定),程序可以实现以下要求: 1、用户可以通过菜单选择绘图颜色; 2、用户点击菜单选择绘图形状时,能在视图中绘制指定形状的图形; 四、实验要求与指导 1、建立名为“颜色”的菜单,该菜单下有四个菜单项:红、绿、蓝、黄。用户通过点击不同的菜单项,可以选择不同的颜色进行绘图。 2、建立名为“绘图”的菜单,该菜单下有三个菜单项:直线、曲线、矩形 其中“曲线”项有级联菜单,包括:圆、椭圆。 3、用户通过点击“绘图”中不同的菜单项,弹出对话框,让用户输入绘图位置,在指定位置进行绘图。

    五、实验结果: 六、实验主要代码 1、画直线:CClientDC *m_pDC;再在OnDraw函数里给变量初始化m_pDC=new CClientDC(this); 在OnDraw函数中添加: m_pDC=new CClientDC(this); m_pDC->MoveTo(10,10); m_pDC->LineTo(100,100); m_pDC->SetPixel(100,200,RGB(0,0,0)); m_pDC->TextOut(100,100); 2、画圆: void CMyCG::LineDDA2(int xa, int ya, int xb, int yb, CDC *pDC) { int dx = xb - xa; int dy = yb - ya; int Steps, k; float xIncrement,yIncrement; float x = xa,y= ya; if(abs(dx)>abs(dy))

    计算机网络实验报告

    《计算机网络》实验报告 内蒙古工业大学信息工程学院计算机系 年 月 日 专业 班级 组号 学号 姓名

    实验一网线制作及网络设备的配置 3. nslookup的主要用途是什么? 4.检查本地主机的端口占用情况,摘抄部分并解释。 5. 利用ipconfig命令检查本地主机的ip地址和mac地址的配置 6. 使用 Ping 命令,验证本地计算机的 IP 地址是否正确地添加到网络?默认网关是否运行?能否通过路由器通讯?写出验证方法和结果。

    7.使用 tracert 跟踪某个网络连接,说明该命令的工作原理。 8. 解释Arp指令的主要用途 9.完成交换机的以下配置,应该用什么命令? 1)由用户视图进入系统视图: 2)进入交换机的端口1: 3)显示交换机端口1的信息: 10.写出交换机端口1的显示信息,并解释交换机端口1所显示信息的含义 11. 完成路由器的以下配置,应该用什么命令? 1)配置路由器的名称为R2: 2)进入路由器的端口1: 3)设置端口1的IP地址和和子网掩码分别为192.168.5.1、255.255.255.248: 4)显示端口1的信息: 12. 写出路由器端口1的显示信息,并解释路由器端口1所显示信息的含义。

    13.查看路由表信息,写出相应命令和路由信息 14. 写出在路由器上配置静态路由(到192.168.2.0/24,下一跳192.168.1.1)、缺省路由(115.24.92.1)所用的基本命令。 静态路由 缺省路由

    实验二组建网络 1、把你在做简单组网实验的连通情况填入下表。 表2-1 配置路由器前的连通情况 2. 配置完路由器后,如何查看路由器的E0及E1的接口状态?将路由器的E0及E1的接口状态信息记录下来。 (1)查看路由器的E0的接口状态命令: 根据显示结果填写E0的接口状态信息: Ethernet0/0 current state : Line protocol current state : The Maximum Transmit Unit: Internet Address: Hardware address: Media type: 是否设置回环(loopback): 是否设置为混杂模式(promiscuous mode): 速率: (2)查看路由器的E1的接口状态命令: 根据显示结果填写E1的接口状态信息: Ethernet0/0 current state : Line protocol current state :

    操作系统实验报告-中南大学

    操作系统原理试验报告 班级: 学号: 姓名:

    实验一:CPU调度 一、实验内容 选择一个调度算法,实现处理机调度。 二、实验目的 多道系统中,当就绪进程数大于处理机数时,须按照某种策略决定哪些进程优先占用处理机。本实验模拟实现处理机调度,以加深了解处理机调度的工作。 三、实验题目 1、设计一个按优先权调度算法实现处理机调度的程序; 2、设计按时间片轮转实现处理机调度的程序。 四、实验要求 PCB内容: 进程名/PID; 要求运行时间(单位时间); 优先权; 状态: PCB指针; 1、可随机输入若干进程,并按优先权排序; 2、从就绪队首选进程运行:优先权-1/要求运行时间-1 要求运行时间=0时,撤销该进程 3、重新排序,进行下轮调度 4、最好采用图形界面; 5、可随时增加进程; 6、规定道数,设置后备队列和挂起状态。若内存中进程少于规定道数,可自动从后备 队列调度一作业进入。被挂起进程入挂起队列,设置解挂功能用于将指定挂起进程解挂入就绪队列。 7、每次调度后,显示各进程状态。 实验二:内存管理 一、实验内容 主存储器空间的分配和回收 二、实验目的 帮助了解在不同的存储管理方式下,应怎样实现主存空间的分配和回收。 三、实验题目 在可变分区管理方式下,采用最先适应算法实现主存空间的分配和回收。

    四、实验要求 1、自行假设主存空间大小,预设操作系统所占大小并构造未分分区表; 表目内容:起址、长度、状态(未分/空表目) 2、结合实验一,PCB增加为: {PID,要求运行时间,优先权,状态,所需主存大小,主存起始位置,PCB指针} 3、采用最先适应算法分配主存空间; 4、进程完成后,回收主存,并与相邻空闲分区合并 .1、Vo类说明(数据存储结构) 进程控制块PCB的结构: Public class PCB{ //进程控制块PCB,代表一个进程 //进程名,作为进程的标识; private String name; //要求运行时间,假设进程运行的单位时间数; private int time; //赋予进程的优先权,调度时总是选取优先数小的进程先执行; private int priority; //状态,假设有“就绪”状态(ready)、“运行”状态(running)、 //“后备”状态(waiting)、“挂起”状态(handup) private String state; //进程存放在table中的位置 private int start; //进程的大小 private int length; //进程是否进入内存,1为进入,0为未进入 private int isIn; //进程在内存中的起始位置 private int base; //进程的大小 private int limit; //一些get和set方法以及构造器省略… };

    计算机网络实验报告 答案讲解

    计算机网络实验报告 专业计算机科学与技术 班级计102 学号109074057 姓名王徽军 组号一组D 指导教师毛绪纹 安徽工业大学计算机学院 二○一二年十二月

    目录 实验总体说明 (3) 实验一以太网帧的构成 (3) 实验三路由信息协议RIP (8) 实验四传输控制协议TCP (10) 实验五邮件协议SMTP、POP3、IMAP (12) 实验六超文本传输协议HTTP (14)

    实验总体说明 1.实验总体目标 配合计算机网络课程的教学,加强学生对计算机网络知识(TCP/IP协议)的深刻理解,培养学生的实际操作能力。 2.实验环境 计算机网络协议仿真实验室: 实验环境:网络协议仿真教学系统(通用版)一套 硬件设备:服务器,中心控制设备,组控设备,PC机若干台 操作系统:Windows 2003服务器版 3.实验总体要求 ●按照各项实验内容做实验,记录各种数据包信息,包括操作、观察、记录、分析, 通过操作和观察获得直观印象,从获得的数据中分析网络协议的工作原理; ●每项实验均提交实验报告,实验报告的内容可参照实验的具体要求,但总体上应包 括以下内容:实验准备情况,实验记录,实验结果分析,算法描述,程序段,实验过程中遇到的问题以及对思考问题的解答等,实验目的、实验原理、实验步骤不需要写入实验报告中。 实验一以太网帧的构成 实验时间:_____________ 成绩:________________ 实验角色:_____________ 同组者姓名:______________________________

    练习一:领略真实的MAC帧 q....U 00000010: 85 48 D2 78 62 13 47 24 58 25 00 00 00 00 00 00 .H襵b.G$X%...... 00000020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00000030: 00 00 00 00 00 00 00 00 00 00 00 00 ............ 练习二:理解MAC地址的作用 ●记录实验结果 表1-3实验结果 本机MAC地址源MAC地址目的MAC地址是否收到,为什么 主机B 8C89A5-7570BB 8C89A5-757113 8C89A5-7570C1 是,主机A与主机B接在同一共享模块 主机D 8C89A5-771A47 8C89A5-757113 8C89A5-7570C1 是,主机C与主机D接在同一共享模块 主机E 8C89A5-757110 无无否,与主机A、C都不在同一共享模块 主机 F 8C89A5-7715F8 无无否,与主机A、C都不在同一共享模块 练习三:编辑并发送MAC广播帧 ●结合练习三的实验结果,简述FFFFFF-FFFFFF作为目的MAC地址的作用。 答:该地址为广播地址,作用是完成一对多的通信方式,即一个数据帧可发送给同一网段内的所有节点。 练习四:编辑并发送LLC帧 ●实验结果 帧类型发送序号N(S)接受序号N(R) LLC 001F 0 ●简述“类型和长度”字段的两种含义 答:一是如果字段的值小于1518,它就是长度字段,用于定义下面数据字段的长度;二是如果字段的值大于1536,用于定义一个封装在帧中的PDU分组的类型。 思考问题: 1.为什么IEEE802标准将数据链路层分割为MAC子层和LLC子层? 答:出于厂商们在商业上的激烈竞争,IEEE的802委员会未能形成一个统一的、最佳的局域网标准,而是被迫制定了几个不同标准,如802.4令牌总线网、802.5令牌环网等。为了使数据链路层能更好地适应多种局域网标准,802委员会就将局域网的数据链路层拆成两个子层,即逻辑链路控制

    中南大学系统仿真实验报告

    实验一MATLAB 中矩阵与多项式的基本运算 实验任务 1. 了解MATLAB命令窗口和程序文件的调用。 2 ?熟悉如下MATLAB的基本运算: ①矩阵的产生、数据的输入、相关元素的显示; ②矩阵的加法、乘法、左除、右除; ③特殊矩阵:单位矩阵、“ 1 ”矩阵、“0”矩阵、对角阵、随机矩阵的产生和运算; ④多项式的运算:多项式求根、多项式之间的乘除。 基本命令训练 1、>> eye(2) ans = 1 0 0 1 >> eye(4) ans = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 2、>> ones(2) 1 1 ans =

    1 1 >> ones(4) ans = 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 >> ones(2,2) ans = 1 1 1 1 >> ones(2,3) ans = 1 1 1 1 1 1 >> ones(4,3) ans = 1 1 1 1 1 1 1 1 1 1 1 1 3、>> zeros(2) ans =

    0 0 0 0 >> zeros(4) ans = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 >> zeros(2,2) ans = 0 0 0 0 >> zeros(2,3) ans = 0 0 0 0 0 0 >> zeros(3,2) ans = 0 0 0 0 00 4、随机阵>> rand(2,3) ans = 0.2785 0.9575 0.1576 0.5469 0.9649 0.9706 >> rand(2,3)

    微机原理及应用实验报告

    微机原理及应用实验报告 班级:机械1301班 姓名:黄佳清 学号:0801130117 座位号: 中南大学机电工程学院

    实验一单片机仿真开发机操作和MCS-51指令系统应用 一.实验目的 1、熟悉MCS-51单片机仿真开发机和开发调试软件的操作使用和调整; 2、学会编写和输入汇编语言源程序、对输入的源程序进行汇编; 3、掌握程序的调试和运行的各种方法。 三.实验内容及步骤(完成分值:60分) 本实验秩序运行Keil uVersion2程序,设置为keil为纯软件仿真 1.新建工程项目 2.设置工程文件参数 3.编写新程序事例 4.调试程序直至能够运行出结果。 四.实验程序 AJMP MAIN ORG 0030H MAIN: MOV R0,#20H MOV R2,#0FH MOV A,#00H A1: MOV @R0,A INC R0 INC A DJNZ R2,A1 MOV R0,#20H ;暂停,观察并记录! MOV DPTR,#7000H MOV R2,#0FH A2: MOV A,@R0 MOVX @DPTR,A INC R0 INC DPTR DJNZ R2,A2 MOV R0,#030H ;断点,观察并记录! MOV DPTR,#7000H MOV R2,#0FH A3: MOVX A,@DPTR MOVX @R0,A INC R0 INC DPTR DJNZ R2,A3 DO: LJMP DO END ;内部存储器数据块赋值,搬运数据块到外部存储器,再搬运回内部数据存储器。 五、附加题 1.将光标移到想要暂停的地方,MOV R0,#20H所在行,选择“执行到光

    福建农林大学计算机网络实验报告二

    福建农林大学计算机与信息学院 实验报告 2015年10 月27 日

    实验项目列表

    实验报告 系:计算机科学专业:计算机科学与技术年级: 姓名:学号:实验室号:计算机号: 实验日期:2015 年10 月27 日指导教师签字:成绩: 报告退发(订正、重做) 实验二网络监听实验 一、实验目的 1、理解网络监听原理 2、熟悉网络监听方法 3、理解网络流量 4、掌握TCP/IP的主要协议和协议的层次结构 二、实验环境与设备 本实验在实际因特网环境下进行操作,需要的设备有:一台PC机,WireShark监听软件。WireShark监听软件可从网址:https://www.wendangku.net/doc/d99230673.html,/下载。实验配置如图所示。 因特网 三、实验原理 1、网络协议分析器 如果使用Web浏览器或OICQ聊天这样的网络软件,必须有网络连接才能工作,然而,你知道它们在因特网上传送的是什么类型的信息吗? 例如,计算机要对远程Web服务器发送什么数据来获取它需要的网页呢?计算机如何将邮件发给指定的人呢? 可以通过网络协议分析器(如WireShark)来协助观察网络会话的细节。网络协议分析器是一个能记录所有网络分组,并以人们可读的形式显示的软件。在监听重流量网络时,允许用户过滤掉不想要的分组或查看感兴趣的特定分组,而且还能为用户提供所有分组的统计概要。 2、网络监听原理 在共享式局域网中,位于同一网段的每台主机都可以截获在网络中传输的所有数据,正常情况下,一个网卡只响应目的地址为单播地址和广播地址的MAC帧而忽略其它MAC帧,网卡接收这两种帧时,通过CPU产生一个硬件中断,然后由操作系统负责处理该中断,对数据

    中南大学 计算机体系结构实验报告

    计算机体系结构课程设计 学院:信息科学与工程学院 专业班级: 指导老师: 学号: 姓名:

    目录 实验1 对指令操作码进行霍夫曼编码 (3) 一、实验目的 (3) 二、实验内容 (3) 三、设计思路 (4) 四、关键代码 (4) 五、实验截图 (5) 六、源代码 (5) 实验2 使用LRU 方法更新Cache (8) 一、实验目的 (8) 二、实验内容 (8) 三、设计思路 (9) 四、程序截图 (9) 五、实验代码 (9) 实验总结 (16) 参考文献 (16)

    实验1 对指令操作码进行霍夫曼编码一、实验目的 了解和掌握指令编码的基本要求和基本原理 二、实验内容 1. 使用编程工具编写一个程序,对一组指令进行霍夫曼编码,并输出最后的编码结果以及对指令码的长度进行评价。与扩展操作码和等长编码进行比较。 2. 问题描述以及问题分析 举例说明此问题,例如: 下表所示: 对此组指令进行 HUFFMAN 编码正如下图所示: 最后得到的HUFFMAN 编码如下表所示:

    最短编码长度为: H=0.45*1+0.30*2+0.15*3+0.05*4+0.03*5+0.01*6+0.01*6=-1.95. 要对指令的操作码进行 HUFFMAN 编码,只要根据指令的各类操作码的出现概率构造HUFFMAN 树再进行 HUFFAM 编码。此过程的难点构造 HUFFMAN 树,进行 HUFFAM 编 码只要对你所生成的 HUFFMAN 树进行中序遍历即可完成编码工作。 三、设计思路 观察上图,不难看出构造 HUFFMAN 树所要做的工作:1、先对各指令操作码的出现概率进行排序,构造一个有序链表。2、再取出两个最小的概率节点相加,生成一个生的节点加入到链表中,同时从两表中删除此两个节点。3、在对链表进行排序,链表是否只有一个节点,是则 HUFFAN 树构造完毕,否则继续做 2 的操作。为此设计一个工作链表(链表的元素时类,此类的功能相当结构。)、HUFFMAN 树节点、HUFFMAN 编码表节点。 四、关键代码 哈夫曼树重点在于如何排列权值大小不同的结点的顺序 private int leafNum; //叶子结点个数 private HaffmanNode[] hnodes; //哈夫曼树的结点数组 public HaffManCode(double[] weight) //构造指定权值集合的哈夫曼树 { int n = weight.length; //n个叶子结点 this.leafNum = n; this.hnodes = new HaffmanNode[2*n-1]; //n个叶子结点的哈夫曼树共有2n-1个结点 for(int i=0; i

    中南大学制造系统自动化技术实验报告整理

    制造系统自动化技术 实验报告 学院:机电工程学院 班级:机制**** 姓名:张** 学号: *********** 指导教师:李** 时间: 2018-11-12 实验一柔性自动化制造系统运行实验 1.实验目的 (1)通过操作MES终端软件,实现对柔性制造系统的任务下达和控制加工,让学生

    了解智能制造的特征及优势。 (2)通过创意性的实验让学生了解自动化系统总体方案的构思。 (3)通过总体方案的构思让学生了解该系统的工作原理,并学会绘制控制系统流程图,掌握物料流、信息流、能量流的流动路径。 (4)通过总体方案的构思让学生掌握各机械零部件、传感器、控制元器件的工作原理及性能。 (5)通过实验系统运行让学生了解运行的可靠性、安全性是采用何种元器件来实现的,促进学生进行深层次的思考和实践。 2.实验内容 (1)仔细观察柔性自动化制造系统的实现,了解柔性自动化制造系统的各个模块,熟悉各个模块的机械结构。 (2)了解各种典型传动机构的组装、工作原理、以及如何实现运动方向和速度的改变; (3)学习多种传感器的工作原理、性能和使用方法; (4)了解典型驱动装置的工作原理、驱动方式和性能; (5)理解柔性制造系统的工作原理,完成柔性制造系统的设计、组装; (6)实现对柔性制造系统的控制与检测,完成工件抓取、传输和加工。

    3.实验步骤 (1)柔性制造系统的总体方案设计; (2)进行检测单元的设计; (3)进行控制系统的设计; (4)上下料机构的组装与检测控制; (5)物料传输机构的组装与实现; (6)柔性制造系统各组成模块的连接与控制; (7)柔性制造系统各组成单元的状态与工件状态位置的检测; (8)对机器人手动操作,实现对工件的抓取、传输。 4. 实验报告 ①该柔性自动化制造系统由哪几个主要的部分组成; 主要由:总控室工作站、AGV小车输送物料机构、安川机器人上下料工作站、法那科机器人上下料工作站、ABB机器人组装工作站、视觉检测及传送工作站、激光打标工作站、堆垛机及立体仓储工作站。 ②画出该柔性自动化制造系统的物料传输系统结构简图;

    计算机网络实验报告完整版

    华中科技大学文华学院 计算机网络 实 验 报 告 姓名: 学号: 学部(系):信息科学与技术学部 专业年级: 指导教师:朱琳琳 2014年4月

    实验1 常用网络命令 1.实验目的 ●掌握常用网络命令的使用方法; ●熟悉和掌握网络管理、网络维护的基本内容和方法 2. 实验前的准备 ●阅读本实验的内容及操作步骤; 3. 实验内容 (1)、arp命令 Arp –a 查看本地局域网内所有用户ip和mac地址绑定关系。 Arp –s 用于在计算机ARP表中添加一个静态的ARP记录。

    (2)、ipconfig命令 Ipconfig /all 显示所有适配器的完整TCP/IP配置

    Ipconfig /displaydns 显示DNS客户解析器缓存的内容 Ipconfig /flushdns 清理并重设DNS客户解析器缓存的内容。

    (3)、Nbtstat命令 Nbtstat -n nbtstat –s ip 通过IP显示另一台计算机的物理地址和名字列表。如nbtstat –s192.168.0.113 (4)、netstat命令 Netstat –a 显示所有有效连接(包括TCP和UDP两种)的信息,如图。

    Netstat –n 显示所有活动的TCP 连接以及计算机侦听的TCP 和UDP 端口。 Netstat –r 显示 IP 路由表的内容。该参数与 route print 命令等价。 (5)、ping 命令 Ping后加上ip地址或域名,命令用来检测TCP/IP的安装或运行存在的某些最基本的问题。 可直接键入PING寻求帮助

    中南大学计算机取证技术实验报告

    学院:信息科学与工程学院 班级: 学号: 姓名: 指导老师:张健

    目录 目录 ------------------------------------------------------------------------------------------------------------------ 0 实验一事发现场收集易失性数据-------------------------------------------------------------------------- 1 实验二磁盘数据映像备份---------------------------------------------------------------------------------- 6 实验三恢复已被删除的数据------------------------------------------------------------------------------ 10 实验四进行网络监听和通信分析------------------------------------------------------------------------- 15 实验五分析Windows系统中隐藏的文件和Cache信息 --------------------------------------------- 19 实验六数据解密 ------------------------------------------------------------------------------------------------ 25 总结 ----------------------------------------------------------------------------------------------------------------- 27

    计算机网络实验报告

    农林大学计算机与信息学院 信息工程类 实验报告 课程名称:计算机网络 姓名: 系:计算机科学与技术系 专业:计算机科学与技术 年级:2011级 学号: 指导教师:周术成老师 职称: 2014年 5 月 4 日

    农林大学计算机与信息学院实验报告 系:计算机与信息系专业:计算机科学与技术年级:2011 :学号:实验课程:_ 计算机网络 实验室号____田C-305__ 计算机号:实验时间: 指导教师签字:成绩: 实验一以太网组网实验 1.实验目的和要求 1.熟悉局域网所使用的基本设备 2. 掌握以太网组建方法 3. 掌握网络连通性测试方法 2.实验原理 以太网事实上是一簇局域网技术,不同的以太网在链路层帧头的格式、电缆的类型和传输速度上有很大的差异以太网可以利用同轴电缆、双绞线、光缆等不同的传输介质进行组网,也可以运行10Mb/s、100Mb/s、1000Mb/s 的网络速度。不管采用何种传输介质,以及网络速度各不相同,只要是以太网,采用的都是CSMA/CD介质访问控制方法。即任何结点没有可预约的发送时间,所有结点平等地争用发送时间,并随机地发送数据。 组建局域网常用的传输介质为双绞线,作为10BASE-T 和100BASE-TX 以太网的传输介质,非屏蔽双绞线在组网中起着重要的作用。非屏蔽双绞线UTP 中的8 芯导线采用了不同的颜色,分成4 对,其中橙和橙白一对,绿和绿白一对,蓝和蓝白一对,棕和棕白一对。以太网使用的UTP 分为直通UTP 和交叉UTP。 UTP 双绞线有两种接法:T568A 标准和T568B 标准。 直通UTP:线的两头都按T568B 线序标准连接。 交叉UTP:线的一头按T568A 线序连接,另一头按T568B 线序连接。 组装不同类型的局域网需要不同的设备,10Base-T 和100Base-TX 组网所需要的设备有:UTP 电缆、以太网卡、10M/100M 集线器、以太网交换机等。现在的以太网在逻辑上采用星型拓扑结构,用这种拓扑结 构,每台计算机用电缆线连接到共享网络设备上,如集线器和交换机等。 集线器和交换机都是用以太网接口连接多台设备,然而,它们在实现上有很大不同。集线器是第1 层设备,是以太网的集中连接点,具有信号放大功能,扩大以太网的地理围。通常采用RJ-45 接口,计算 机或其他终端设备通过双绞线电缆与集线器相连。当数据到达集线器的一个端口后,集线器不进行过滤处 理,直接将收到的数据包复制并广播到所有其他的端口,而不管这些端口连接的设备是否需要这些数据。 因此,网络中集线器数量越多,整个网络的性能就越差。 一般以太网的拓扑既用到集线器也用到交换机,集线器连接到交换机端口上,计算机连接到集线器上。在这种配置里,连接在同一集线器的计算机能看到彼此传输的数据,并且一次只能有一个传输;但在

    中南大学微机原理及接口技术实验内容及报告要求

    中南大学微机原理及接口技术实验内容及报告要求 一、实验内容: 实验一顺序程序设计与DEBUG使用 题目1.利用串操作传送指今将0FFH送入数据段的0180H开始的128个字节存储单元中,编写一段程序。 题目2.将数据段中0200H字节存储单元中的二位BCD码转换为二个ASCII码送0201H 开始的二个字节单元中,编写—段程序。 题目3.编写一段程序,在内存中自SQTAB(0200H)地址开始的连续十个单元中存放0~9的平方值。要求利用计算法查表求 NUM(0210H)单元中指定数(0~9中的任意一数)的平方值,并将所求平方值存入RESULT(0211H)单元中。 [注]:题目二和题目三可选做一个,题目一必做。 详细实验要求及步骤方法,参见“ DEBUG 实验参考” 实验二键盘、显示程序设计实验(教材P30) 提高部分: 1、显示数据输入提示信息、键盘输入一个字符,屏幕显示字符的ASCⅡ码; 2、显示字符串输入提示信息、键盘输入一个字符串,屏幕显示对应字符串中各字符的ASC Ⅱ码。 实验三数据传送、数码转换程序设计实验(教材P33、35) 提高部分: 1、数据传送,完成20个数据的传送,并对附加段数据进行升序排列,并在屏幕上显示排序后的数据,以及最大数据和最小数据。 2、数据转换,键盘输入2位(或以上)十进制数,分别转换成十六进制数、BCD码、七段共阳极码。 实验四运算类程序设计实验(教材P39) 提高部分:键盘输入5位被减数和减数,计算并以恒等式形式显示在屏幕上(允许被减数< 减数)。 实验五基本I/O接口与地址译码电路设计实验(教材P72、75) 提高部分: 1、在“基本I/O接口电路设计实验”中,如何扩展16路输入、输出功能? 2、在“地址译码电路设计实验”中,将Y6与CS_A、Y7与CS_B,改换成 Y0与CS_A、Y1 与CS_B连接,修改程序并实现实验功能。 实验六 8255接口电路设计实验(教材P95) 提高部分:

    计算机网络网络层实验报告参考

    XX 理工学院 实验报告 课程计算机网络 题目基于Cisco Packet Tracer的网络层实验 院系名称计算机学院 班级计科班 学生姓名 学号 指导教师 时间2016.11.14

    实验二:网络层协议实验 实验说明: 1.实验中的问题按照自己的方式回答,如文字,图片,表格等形式。 2.实验报告共四份,于期末通知时再统一打包上交。 3.报告文档模板中如有错误,请反映到计算机网络QQ群上。 实验内容目录: 实验2.1: IP分析 实验2.2: IP地址分配实验 实验2.3: ARP分析 实验2.4: ICMP分析 实验2.5:路由协议分析 实验2.6: VPN与NAT协议分析

    实验2.1:IP分析 实验目的: 1、熟悉IP的报文格式以及关机字段的含义。 2、掌握IP地址的分配方法。 3、理解路由器转发IP数据报的流程。 实验思考题: 1.一个IP分组经路由器转发后,有哪些字段会发生变化? 答:TTL字段需要减一,而IP头部的校验和需要重新计算,因此这两个字段会发生变化。 2.为什么任务三中的两个分片的长度分别为1500字节和48字节。 答:原数据长度为1500+8(ICMP报文头长度)=1508字节,超过以太网帧的最大传输能力,因此需要分成两片。长度分别为1480字节和28字节,封装成IP 后,每片的长度分别为1480+20=1500字节,28+20=48字节。

    实验2.2:IP地址分配实验 实验目的: 1.掌握主机和路由器的IP地址配置。 2.熟悉CIDR的IP地址编址方法。 3.理解CIDR的路由聚合功能。 实验思考题: 1.与分类的IP编址方法相比,CIDR编址方案具有什么优点? 答:1)CIDR的地址分配更高效,因为CIDR采用可变长掩码,能根据网络的实际大小量身定制主机地址空间。2)CIDR具有路由聚合功能,能减少路由器的路由表项。 2.路由器的不同接口能否使用相同的网络号? 答:不能,路由器的不同接口必须使用不同的网络号。

    计算机网络课程设计实验报告

    中南大学课程设计报告 课程:计算机网络课程设计 题目:基于Winpcap的网络流量统计分析 指导教师:张伟 目录 第一章总体设计 一、实体类设计 --------P3 二、功能类设计 --------P3 三、界面设计 --------P3 第二章详细设计 一、实体类实现 --------P4 二、功能类实现 --------P4 三、界面实现 --------P5 第三章源代码清单及说明 一、CaptureUtil.java --------P7 二、MyPcapPacketHandler.java --------P9 三、PacketMatch.java --------P9 四、Windows.java --------P13 第四章运行结果 --------P19 第五章心得体会 --------P21 第一章总体设计 一、实体类设计 TCP、UPD、ICMP、ARP、广播数据包五个包的数据结构设计 二、功能类设计 (1)网卡获取 (2)包的抓捕 (3)包的处理 三、界面设计 (1)布局 (2)按钮功能连接 第二章第二章详细设计 一、实体类实现 TCP、UPD、ICMP、ARP、广播数据包五个包的数据结构设计。 本程序采用Java编写,基于win10pcap。Win10pcap是winpcap在win10系统上的适用版本。Java对于winpcap使用jnetpcap进行支持。对于TCP、UPD、ICMP、ARP、广播数据包五种类型的包,在jnetpcap

    的jar包中大部分已经封装好了相关的实体类型。对应如下: ARP 实体类: UPD 实体类: IP 实体类: TCP 实体类: UDP 实体类: 而对于其中的广播数据包,其判断我利用捕获到的IP包的目的地址进行判断,若其目的地址为,则认为其为广播数据包。 二、功能类实现 (1)网卡获取 电脑上的包的发送与接受都得通过网卡来进行,所以为了完成局域网数据包的捕获和统计,我首先要做的是获取到电脑上的网卡列表,然后选择一个网卡进行包的捕获。而相关代码在jnetpcap的官网的示例代码1中可以找到,从中可以学习到的是jnetpcap的各种使用方法。 在我电脑上可以捕获到三个网卡,一个是本机自身的物理网卡,另外两个是虚拟机模拟出的虚拟网卡。 (2)包的抓捕 Jnetpcap中包的抓捕也是有着固定的格式的,这在官网的示例代码中也是可以找到的,只要设置好相关的参数,就可以进行抓捕 具体方法如下,利用Pcap对象的loop方法。就是实例化一个Pcap对象,然后调用其loop方法。第一个参数arg0 代表循环次数,第二个参数就是传入一个PcapPaketHandler或其子类的对象,这个对象类型是要由我们自己编写的对包处理的方法。 (3)包的处理 在这里对捕获的包的处理我是编写了一个PcapPacketHandler的子类,然后重写了nextPacket()方法。在这个方法里我把捕获到的包当作参数传递个具体的处理方法packetMatch.handlePacket(packet)。 packetMatch.handlePacket(packet)方法是由我自己编写的。handlePacket是packetMatch 的一个静态方法,可以直接调用。在这个方法里面,它会把捕获到的包的包头和T CP、UPD、ICMP、ARP、广播数据包五种类型的包的包头进行一一比较,以确认是否抓到了了相对应的包。 这儿还用到的就是jnetpcap的内部的一个方法,就是packet.hasHeader(arg0),通过在arg0传入已在jnetpcap里封装好的包的类型的实例,可以很好的判断该包是属于什么包类型的,是T CP、UPD、ICMP、ARP还是广播数据包。 然后内部对于各种包的信息的输出也有很好的支持,可以直接使用相应的toString方法,就可以输出各种相关信息。 (4)网络流量统计 对于各个捕获到的包,分别针对各种类型的包设计了一个Double变量用于统计其传送过来相应包头的大小,并在停止抓包后将统计的数据输出在最下方的TextArea里面。 三、界面实现 本程序在设计GUI时使用了Java的一个很好的插件WindowBuilder。 (1)布局 一开始使用Border Layout布局,安排好各个按钮位置,文本框位置。后来采用Absolute layout,并将窗口大小固定化。 在布局的最上方是一个JToolBar的实例对象,其中放置有选择网卡、开始抓包、停止抓包、清空记录等四个选项,中间是两个带滚动条的多行文本框,左边的用于显示捕获的包的列表,右边用于显示左边的我们选中的包的具体信息。最下方会在停止抓包按钮生效后输出总的抓包情况。

    相关文档
    相关文档 最新文档