搜档网
当前位置:搜档网 › 计算机网络课程设计实验报告

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

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

中南大学课程设计报告

课程:计算机网络课程设计

题目:基于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的实例对象,其中放置有选择网卡、开始抓包、停止抓包、清空记录等四个选项,中间是两个带滚动条的多行文本框,左边的用于显示捕获的包的列表,右边用于显示左边的我们选中的包的具体信息。最下方会在停止抓包按钮生效后输出总的抓包情况。

(2)按钮功能连接

在布局的最上方是一个JToolBar的实例对象,其中放置有选择网卡、开始抓包、停止抓包、清空记录等四个选项,其中选择网卡的功能具体由JComboBox(多文本选择框)上的选项决定,这个多文本选择框监听着网卡获取的方法,它会从该方法获得一个网卡列表,然后将其文本输出。

开始抓包的方法所对应的事件是抓包的事件,并且该抓包事件是个并发的进程。因为如果不将其设置为并发进程,其会使其它事件一直阻塞,甚至连停止抓包都做不到。停止抓包的事件其实是改变了开始抓包中的一个标志位,让其为假。该标志为为真,抓包程序会一直进行,该标志为为假,抓包停止。

下方两个文本框,左边的文本框监听的是开始抓包这个事件,当这个事件开始,这个事件会向文本框传输捕获到的包的列表,然后让其显示。而右边的文本框监听的是左边文本框我们选中的内容的相应事件。因为对于我们捕获到的包我进行了编号,当我们在左边的文本框选中了一个包之后,左边的文本框对应的包的序号会被右边的文本框获取,用于在一个列表中根据序号查找到相对应的包的详细内容,然后将其输出。

统计功能的实现是在每个包的具体处理时,在处理包的方法类中已经有定义好几个静态变量用于计数,每个包具体处理时,将相对应的包类型数量加一即可。还定义了其它的变量用于统计流量大小,也是在每个包具体处理时,将相对应的包的大小加到相对应的静态变量上即可。

第三章源代码清单及说明

CaptureUtil.java

//该类负责网卡列表的获取、包的捕获、抓包程序的停止

package util;

import

import

import

import

import entity.Windows;

public class CaptureUtil extends Thread{

private static boolean flag=true;

public static int number=2;

private static StringBuilder errbuf = new StringBuilder(); // 用于存储任何错误信息

//此方法用于获取设备上的网卡设施

public static ArrayList CaptureNet(){

CaptureUtil.flag=false;

//下面有部分代码来自jnetpcap官网的实例

ArrayList alldevs = new ArrayList(); // 用于存储搜索到的网卡//取得设备列表

int r = Pcap.findAllDevs(alldevs, errbuf);

if (r == Pcap.NOT_OK || alldevs.isEmpty()) {

JOptionPane.showMessageDialog(null,errbuf.toString(),"错误

",JOptionPane.ERROR_MESSAGE);

return null;

}

return alldevs;

}

//此方法用于选取网卡并捕获包

public static void CapturePacket(ArrayList alldevs){

CaptureUtil.flag=true;

PcapIf device = alldevs.get(number);

.getDescription());*/

//打开选中的设备

int snaplen = Pcap.DEFAULT_SNAPLEN;// 默认长度为65535

int flags = Pcap.MODE_PROMISCUOUS; // 混杂模式,扑获所有类型的包

int timeout = 10 * 1000; // 10 seconds in millis

Pcap pcap = Pcap.openLive(device.getName(), snaplen, flags, timeout, errbuf);

if (pcap == null) {

JOptionPane.showMessageDialog(null,errbuf.toString(),"错误

",JOptionPane.ERROR_MESSAGE);

return;

}

PacketMatch packetMatch = PacketMatch.getInstance();

MyPcapPacketHandler myhandler= new MyPcapPacketHandler();

while(CaptureUtil.flag){

pcap.loop(1, myhandler, "/njnetpcap");

}

pcap.close();

}

public void run(){

CaptureUtil.CapturePacket(CaptureUtil.CaptureNet());

}

public static void StopCapturePacket(){

CaptureUtil.flag=false;

}

public static void ClearPacket(){

PacketMatch.numberOfPacket=0;

PacketMatch.hm.clear();

Windows.lItems.clear();

PacketMatch.numberOfArp=0;

PacketMatch.numberOfTcp=0;

PacketMatch.numberOfUdp=0;

PacketMatch.numberOfIcmp=0;

PacketMatch.numberOfWideSpread=0;

}

}

MyPcapPacketHandler.java

//该类是PcapPacketHandler的子类,重写了nextPacket方法

package util;

import

import

public class MyPcapPacketHandler implements PcapPacketHandler { @Override

public void nextPacket(PcapPacket packet, Object arg1) {

PacketMatch packetMatch = PacketMatch.getInstance();

packetMatch.handlePacket(packet);

}

}

PacketMatch.java

//该类是包处理

package util;

import entity.Windows;

public class PacketMatch {

public static HashMap hm=new HashMap();

public static int numberOfPacket=0;

private static PacketMatch pm;

private Icmp icmp = new Icmp();

private Tcp tcp = new Tcp();

private Udp udp = new Udp();

private Arp arp= new Arp();

private Ip4 ip4=new Ip4();

public static double totalOfIcmp=0;

public static double totalOfTcp=0;

public static double totalOfUdp=0;

public static double totalOfArp=0;

public static double totalOfSpread=0;

public static double totalOfIp=0;

public static int numberOfWideSpread=0;

public static int numberOfUdp=0;

public static int numberOfTcp=0;

public static int numberOfIcmp=0;

public static int numberOfArp=0;

public static PacketMatch getInstance() {

if (pm == null) {

pm = new PacketMatch();

}

return pm;

}

public void handlePacket(PcapPacket packet) {

//以下四个包都已可以正确捕获

PacketMatch.totalOfIp+=packet.getTotalSize()/(1024.0*1024.0);

if (packet.hasHeader(icmp)) {

handleIcmp(packet);

}

if (packet.hasHeader(arp)) {

handleArp(packet);

}

if (packet.hasHeader(tcp)) {

handleTcp(packet);

}

if (packet.hasHeader(udp)) {

handleUdp(packet);

}

//广播数据包的捕获

if (packet.hasHeader(ip4)) {

handleIp4(packet);

/*以下为实验IP地址的获取

packet.getHeader(ip4);

byte[] destinations=new byte[4];

ip4.destinationToByteArray(destinations);

byte[] sources=new byte[4];

ip4.sourceToByteArray(sources);

*/

}

}

private void handleIp4(PcapPacket packet) {

packet.getHeader(ip4);

//这是一个广播数据包

hm.put(numberOfPacket, "这是一个广播数据包!");

numberOfWideSpread++;

totalOfSpread+=ip4.getLength()/1024.0;

numberOfPacket++;

}

}

private void handleUdp(PcapPacket packet) {

packet.getHeader(udp);

hm.put(numberOfPacket, udp.toString());

numberOfUdp++;

totalOfUdp+=udp.getLength()/1024.0;

numberOfPacket++;

}

private void handleTcp(PcapPacket packet) {

packet.getHeader(tcp);

hm.put(numberOfPacket, tcp.toString());

numberOfTcp++;

totalOfTcp+=tcp.getLength()/1024.0;

numberOfPacket++;

}

private void handleIcmp(PcapPacket packet) {

packet.getHeader(icmp);

hm.put(numberOfPacket, icmp.toString());

numberOfIcmp++;

totalOfIcmp+=icmp.getLength()/1024.0;

numberOfPacket++;

}

private void handleArp(PcapPacket packet) {

packet.getHeader(arp);

hm.put(numberOfPacket, arp.toString());

numberOfArp++;

totalOfArp+=arp.getLength()/1024.0;

numberOfPacket++;

}

//以下函数将Int类型转化为Ip地址

public static String intToIp(int ipInt){

return new StringBuilder().append(((ipInt>>24)&0xff)).append('.').append

((ipInt>>16)&0xff).append('.').append

((ipInt>>8)&0xff).append('.').append

((ipInt&0xff)).toString();

}

}

Windows.java

//该类是GUI界面设计

package entity;

import util.CaptureUtil;

import util.PacketMatch;

public class Windows extends JFrame {

private JPanel contentPane;

private final Action action = new SwingAction();

private final Action action_1 = new SwingAction_1();

private final Action action_2 = new SwingAction_2();

public static DefaultListModel lItems=new DefaultListModel();

private JList list = new JList(lItems);

private final Action action_3 = new SwingAction_3();

private JScrollPane jsp1=new JScrollPane(list);

private JTextArea textArea = new JTextArea();

private JScrollPane jsp2=new JScrollPane(textArea);

private JTextArea textArea_1 = new JTextArea();

/**

* Launch the application.

*/

public static void main(String[] args) {

EventQueue.invokeLater(new Runnable() {

public void run() {

try {

Windows frame = new Windows();

frame.setVisible(true);

} catch (Exception e) {

e.printStackTrace();

}

}

});

}

/**

* Create the frame.

*/

public Windows() {

setTitle("\u6293\u5305");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setBounds(100, 100, 692, 477);

contentPane = new JPanel();

contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

setContentPane(contentPane);

contentPane.setLayout(null);

this.setResizable(false);

JToolBar toolBar = new JToolBar();

toolBar.setBounds(5, 5, 666, 23);

contentPane.add(toolBar);

JButton button = new JButton("\u9009\u62E9\u7F51\u5361");

toolBar.add(button);

final JComboBox comboBox = new JComboBox();

comboBox.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

String net=(String)comboBox.getSelectedItem();

ArrayList alldevs=CaptureUtil.CaptureNet();

int i=0;

for (PcapIf device : alldevs) {

if(net.equals(device.getDescription())){

CaptureUtil.number=i;

CaptureUtil.StopCapturePacket();

}

i++;

}

}

});

comboBox.addItemListener(new ItemListener() {

public void itemStateChanged(ItemEvent arg0) {

}

});

toolBar.add(comboBox);

JButton button_1 = new JButton("\u5F00\u59CB\u6293\u5305");

button_1.setAction(action_1);

toolBar.add(button_1);

JButton button_2 = new JButton("停止抓包");

button_2.setAction(action_2);

button_2.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {

}

});

toolBar.add(button_2);

JButton button_3 = new JButton("\u6E05\u7A7A\u8BB0\u5F55");

button_3.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

}

});

button_3.setAction(action_3);

toolBar.add(button_3);

Border brd=BorderFactory.createMatteBorder(1, 1, 2, 2, Color.black);

list.setBorder(brd);

list.addListSelectionListener(new ListSelectionListener(){

public void valueChanged(ListSelectionEvent arg0) {

// TODO Auto-generated method stub

textArea.setText("");

//以下两行用于检测

}

});

jsp1.setBounds(5, 28, 258, 343);

contentPane.add(jsp1);

jsp2.setBounds(263, 28, 408, 343);

contentPane.add(jsp2);

textArea_1.setBounds(5, 371, 666, 67);

contentPane.add(textArea_1);

ArrayList alldevs=CaptureUtil.CaptureNet();

for (PcapIf device : alldevs) {

comboBox.addItem(device.getDescription());

}

}

private class SwingAction extends AbstractAction {

public SwingAction() {

putValue(NAME, "选择网卡");

putValue(SHORT_DESCRIPTION, "Some short description");

}

public void actionPerformed(ActionEvent e) {

ArrayList alldevs=CaptureUtil.CaptureNet();

if(alldevs!=null){

int i = 1;

for (PcapIf device : alldevs) {

.getDescription());

}

}

}

}

private class SwingAction_1 extends AbstractAction {

public SwingAction_1() {

putValue(NAME, "开始抓包");

putValue(SHORT_DESCRIPTION, "Some short description");

}

public void actionPerformed(ActionEvent e) {

//抓包线程

(new CaptureUtil()).start();

}

}

private class SwingAction_2 extends AbstractAction {

public SwingAction_2() {

putValue(NAME, "停止抓包");

putValue(SHORT_DESCRIPTION, "Some short description");

}

public void actionPerformed(ActionEvent e) {

CaptureUtil.StopCapturePacket();

textArea_1.setText("");

String message="Tcp:"+PacketMatch.numberOfTcp+"包"+PacketMatch.totalOfTcp+"KB "+

"Udp:"+PacketMatch.numberOfUdp+"包"+PacketMatch.totalOfUdp+"KB "+"\n"+

"Icmp:"+PacketMatch.numberOfIcmp+"包"+PacketMatch.totalOfIcmp+"KB "+

"Arp:"+PacketMatch.numberOfArp+"包"+PacketMatch.totalOfArp+"KB "+"\n"+

"广播数据包"+PacketMatch.numberOfWideSpread+"包"+" "+PacketMatch.totalOfSpread+"KB "+

"总流量:"+PacketMatch.totalOfIp+"MB";

textArea_1.append(message);

}

}

private class SwingAction_3 extends AbstractAction {

public SwingAction_3() {

putValue(NAME, "清空记录");

putValue(SHORT_DESCRIPTION, "Some short description");

}

public void actionPerformed(ActionEvent e) {

CaptureUtil.ClearPacket();

}

}

}

第四章运行结果

第五章心得体会

通过这次实验我对于TCP、UPD、ICMP、ARP、广播数据包等包的结构有了更好的认识。对于电脑上底层的发包与抓包也有了一定的认识。然后就是对用Eclipse进行编写Java程序有了更深的体会。

Java是一个成熟的语言,Eclipse是一个比较完善的工具,对于各个方面知识的应用编写都有一定的基础支持。例如这次编写,Eclips就通过jnetpcap很好的衔接了winpcap的借口功能。另外,在界面编写上,windowbuilder也非常好用。这是一种可视化的编程,可以直接拖拉各种部件,在容器内进行布局。然后对于各个部件事件的添加也是很方便,这加快了程序的开发过程。

嗯,这次的实验对于我来说不是很难,感觉这主要是前人种树,后人乘凉。很多东西都已经有了很完善的工具和结构。而现阶段我所能学习的感觉无非是对于各种语言工具、各种插件、框架的使用,对于这些前人们编写的东西掌握到一定的程度,以方便以后自行开发自己的一些工具。

觉得课设就是一个学习过程。我在前人走过的路上学习着,避免走太多的弯路。在另一方面,也在路上不断积累,好在以后可以厚积薄发,有点自己的东西。

另外还体会到了一点,就是用户需求和程序员实现功能的矛盾。由于用户需求不明确,或者说语意上描述的模糊,一名程序员很难写出百分百符合用户需要的程序。我感觉这方面我能做的就是提高自己程序的可扩展性,在用户需要一些其它的功能时,能对于程序进行功能的扩展。例如,最后的那流量大小的统计数目就是后来根据老师的要求添加上去的。

总之这次课设让我对于之前我学过的一些知识——计算机网络、Java等再一次复习,然后进行了一次综合的运用,加深了我对它们的认知,也接触到了一些以前没用过的工具,感觉受益匪浅吧!

计算机网络课程设计题目

计算机网络课程设计 一. 中小型千兆网吧组建 内容及要求: 用BOSON软件实现小规模网络的模拟。熟悉对路由器和交换机的配置命令,调通网络,并通过实例深入理解网络基本工作原理及实现方法。学会网络构建、日常维护以及管理的方法,使学生掌握在信息化社会建设过程中所必须具备的计算机网络组网和建设所需的基本知识与操作技能,网吧包含100-200台上网的计算机。二.小型网络的组建 通过对网络的具体规划和组建,掌握网络互连设备的使用及工作原理;掌握IP地址的配置及数据传输过程和路由的选择。 具体要求如下: 1.使用模拟仿真软件,构建一个小型网络。要求使用路由器、交换机等网络互连设备。根据设计要求,选择网络类型。 2.分配和配置IP地址,要求配置内部网络地址。 3.对交换机、路由器等进行配置。 4.通过使用模拟仿真软件,模拟局域网间的数据通信过程。 5.分析通信过程中出现的问题,并加以解决。 6. 写出课程设计报告:设计目的、设计内容、设计方案、拓扑图、设备选型、方案报价、子网划分等内容。 (1)企业网络工程 (2)银行网络工程 (3)医院网络工程

(4)校园网网络工程 (5)大型机场信息网络工程 (6)邮电综合管理信息网 (7)某航空公司网络系统建设 (8)某市宽带信息网络 (9)证券交易网络系统 (10)学校以太网网络建设 三.Ping程序的设计与实现 设计的目的是使学生掌握网络层协议的原理及实现方法。设计内容,在给定的Ping程序的基础上做如下功能扩充: ●-h 显示帮助信息 ●-b 允许ping一个广播地址,只用于IPv4 ●-t 设置ttl值,只用于IPv4 ●-q 安静模式。不显示每个收到的包的分析结果,只在结束时,显示汇总结果 Ping命令的基本描述 Ping的操作是向某些IP地址发送一个ICMP Echo消息,接着该节点返回一个ICMP Echo reply消息。 ICMP消息使用IP头作为基本控制。IP头的格式如下 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Version| IHL |Type of Service| Total Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Identification |Flags| Fragment Offset | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Time to Live | Protocol | Header Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Version=4 IHL Internet头长 Type of Service = 0 Total Length IP包的总长度 Identification, Flags, Fragment Offset 用于IP包分段 Time to Live IP包的存活时长 Protocol ICMP = 1 Addresses 发送Echo消息的源地址是发送Echo reply消息的目的地址,相反,发送Echo

电子电路课程设计密码锁(满分实验报告)

密码锁设计报告 摘要: 本系统是由键盘和报警系统所组成的密码锁。系统完成键盘输入、开锁、超时报警、输入位数显示、错误密码报警、复位等数字密码锁的基本功能。 关键字:数字密码锁GAL16V8 28C64 解锁与报警 1

目录: 一、系统结构与技术指标 1、系统功能要求 (4) 2、性能和电气指标 (5) 3、设计条件 (5) 二、整体方案设计 1、密码设定 (6) 2、密码判断 (6) 3、密码录入和判断结果显示 (6) 4、系统工作原理框面 (7) 三、单元电路设计 1、键盘录入和编码电路图 (8) 2、地址计数和存储电路 (12) 3、密码锁存与比较电路 (12) 2

4、判决与结果显示电路 (14) 5、延时电路 (15) 6、复位 (17) 7、整机电路图 (19) 8、元件清单……………………………………………19四、程序清单 1、第一片GAL (21) 2、第二片GAL (23) 五、测试与调整 1、单元电路测试 (25) 2、整体指标测试 (26) 3、测试结果 (26) 六、设计总结 1、设计任务完成情况 (27) 2、问题及改进 (27) 3、心得体会 (28) 3

一、系统结构与技术指标 1.系统功能要求 密码锁:用数字键方式输入开锁密码,输入密码时开锁;如 果输入密码有误或者输入时间过长,则发出警报。 密码锁的系统结构框图如下图所示,其中数字键盘用于输入 密码,密码锁用于判断密码的正误,也可用于修改密码。开锁LED1亮表示输入密码正确并开锁,报警LED2亮表示密码有误或者输入时间超时。 开锁green 键盘密码锁 错误red 4

计算机网络实验报告

计算机网络实验报告 班级:电信0901 学号:U200914332 姓名:王焕 2012.1

实验四:网络协议与Web通信 一、实验目的 1.了解网络协议数据单元的格式 2.分析网络协议工作基本流程 3.深入理解Web应用的通信过程 二、实验内容 1.网络协议数据单元分析 通过wireshark抓取局域网数据包并分析各个层次的协议数据单元内容 (1)以太网帧头 (2)IP分组首部 (3)ARP包 (4)ICMP包(ping) 2.Web原理实验 (1)HTTP协议分析 (2)通过socket编程模拟HTTP协议通信过程 三、实验原理 1.Web通信经过四个步骤: (1)建立连接 (2)客户端发送HTTP REQUEST请求 (3)服务器端接收请求,生成RESPONSE响应 (4)关闭连接 2.HTTP协议 客户端浏览器或其他程序与Web服务器之间的应用层通信协议。一般在Internet 上的Web服务器上存放的都是超文本信息,客户机需要通过HTTP协议传输所要访问的超文本信息。 3.Java网络编程 Java Socket对网络的封装是非常完美的,对于进行网络编程的程序员,使用网络就像使用本地文件系统一样简单。 与其他Socket网络编程有一个明显的区别就是,在服务器和客户机通信建立时就要另外一个ServerSocket 。 它仅仅适用与服务器端,监听指定端口,如果有socket 连接请求,它就答应,并在服务器端产生一个socket 与其对应,那么用这个socket 就可以和客户端进行通信了。 实验原理图如下:

四、实验内容及分析 1.编译、执行参考程序 本次实验提供了两个原始程序(NetServer.java和NetClient.java),它们可以实现一个服务器/客户端请求响应的完整过程。Dos环境下先后编译执行NetServer.java与NetClient.java,即可得到一次完整的客户端向服务器请求并得到响应的完整过程,结果如下: 2.修改、编写实验程序 参考程序模拟了客户端与服务器之间的对话,但由于其之间交互的数据都是我们设定的而不含有http报头信息,因此不能和真正的web服务器与浏览器对话,以下即为

计算机网络课程设计(华电)

课程设计报告 ( 2012--2013 年度第2学期) 名称:计算机网络课程设计题目:互联网模拟 院系:计算机系 班级:计科 学号: 学生姓名:华电老朱家 指导教师: 设计周数: 1周 成绩: 日期: 2014 年 6 月 28 日

《计算机网络》课程设计 任务书 一、目的与要求 1.目的 将网络基本原理及基本概念用于实际,将书本上抽象的概念与具体的实现技术结合起来,使学习深化,培养学生对基本原理的应用能力以及实际动手能力。 2.要求 独立完成课程设计题目以及课程设计报告。报告应包括设计思路、网络拓扑图、开发中遇到的问题以及解决方法。 二、主要内容 1.网络设备认知及基本配置操作 (1)了解路由器、交换机等网络设备结构。 (2)完成以下实验,掌握路由器、交换机等的配置方法,理解相关网络协议。 ①交换机的基本配置; ②路由器的基本操作; ③OSPF基本配置; ④RIP v2配置; ⑤静态路由配置; ⑥跨交换机实现VLAN; ⑦利用单臂路由实现VLAN间路由; ⑧广域网协议的封装。 2.互联网的模拟 (1)结合实验环境,提出模拟网络互联需求,设计并完成组网,要求尽最大可能利用实验资源。 ①网络物理拓扑结构设计及IP地址分配; ②网络逻辑拓扑结构设计; (2)网络设备配置实现 按步骤(1)所设计的网络拓扑进行设备连接并配置。配置内容包括路由选择协议OSPF配置,VLAN划分等,并进行测试。 3.基于模拟互联网的网络协议分析。在上面设计并实现的网络环境下,完成如下协议分析:

①以太网数据链路层帧格式分析; ②网络层分片;ICMP协议分析; ③ARP地址解析协议分析; ④TCP传输控制协议分析; ⑤FTP协议分析;HTTP协议分析。 三、进度计划 四、设计成果要求 1.网络配置拓扑图准确,配置结果测试成功; 2.网络协议分析准确; 2.课程设计报告格式规范,内容详实。 五、考核方式 考勤、验收和课程设计报告。 学生姓名: 指导教师: 2014年6月23日

单片机电子时钟课程设计实验报告

单片机电子时钟课程设 计实验报告 Pleasure Group Office【T985AB-B866SYT-B182C-BS682T-STT18】

《单片机原理与应用》课程设计 总结报告 题目:单片机电子时钟(带秒表)的设计 设计人员:张保江江润洲 学号: 班级:自动化1211 指导老师:阮海容 目录 1.题目与主要功能要求 (2) 2.整体设计框图及整机概述 (3) 3.各硬件单元电路的设计、参数分析及原理说明 (3) 4.软件流程图和流程说明 (4) 5.总结设计及调试的体会 (10) 附录 1.图一:系统电路原理图 (11) 2.图二:系统电路 PCB (12) 3.表一:元器件清单 (13) 4.时钟程序源码 (14)

题目:单片机电子时钟的设计与实现 课程设计的目的和意义 课程设计的目的与意义在于让我们将理论与实践相结合。培养我们综合运用电子课程中的理论知识解决实际性问题的能力。让我们对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。 课程设计的基本任务 利用89C51单片机最小系统,综合应用单片机定时器、中断、数码显示、键盘输入等知识,设计一款单片机和简单外设控制的电子时钟。 主要功能要求 最基本要求 1)使用MCS-51单片机设计一个时钟。要求具有6位LED显示、3个按键输入。 2)完成硬件实物制作或使用Pruteus仿真(注意位驱动应能提供足够的电流)。 3)6位LED数码管从左到右分别显示时、分、秒(各占用2位),采用24小时标准计时制。开始计时时为000000,到235959后又变成000000。 4)使用3个键分别作为小时、分、秒的调校键。每按一次键,对应的显示值便加1。分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。在调校时均不向上一单位进位 (例如分加到59后变为00,但小时不发生改变)。 5) 软件设计必须使用MCS-51片内定时器,采用定时中断结构,不得使用软件延时法,也不得使用其他时钟芯片。 6)设计八段数码管显示电路并编写驱动程序,输入并调试拆字程序和数码显示程序。7)掌握硬件和软件联合调试的方法。 8)完成系统硬件电路的设计和制作。 9)完成系统程序的设计。 10)完成整个系统的设计、调试和制作。

计算机网络课程设计1要点

武汉理工大学华夏学院课程设计报告书 课程名称:计算机网络课程设计 题目: 系名: 专业班级: 姓名: 学号: 指导教师: 年月日

课程设计任务书 学生姓名:专业班级:学号 指导教师:工作单位: 设计题目:中型园区网络建设 初始条件: 1. 所要求的网络拓扑图如下所示: (自己截图) 2. 假定ISP服务提供商:武汉电信 3. 设备选型如拓扑图中所示。 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.技术要求: 1.1.交换机之间配置trunk协议 1.2.划分vlan,建立HTTP/DNS服务器 1.3. 通过在三层交换机上建立vlan网关使vlan间通信 1.4 总公司和分公司之间配置静态路由,使得分公司可以访问总公司服务器 1.5.公网路由器模拟电信的城域网,运行OSPF路由协议。 1.6. 使用缺省路由,防止公网的路由条目传递到公司的网关路由器上。 1.7 总公司和分公司的网关配置NAT让内部的PC能够正常上网。 2.设计报告内容及格式要求: 2.1. 网络各节点具体配置步骤及测试结果; 2.2. 调试过程中出现的问题及相应解决办法; 2.3. 总体运行情况与结果分析讨论 2.4.个人对本次课程设计感想体会及建议; 注意:设计报告内容严禁与人雷同。 3. 设计报告格式要求: 课程设计说明书统一书写格式:

一、实训目的和基本要求 在学习了计算机操作系统、计算机网络等相关课程的基础上,开展网络工程技术实训。通过实训,可以让学生了解目前主流网络技术的应用;手动配置网络设备;在进行了该项实训后,可为学生进入社会,从事网络相关工作打好基础。 要求能够针对一个具体的要求,搭建一个网络。明确网络的拓扑结构、设备选型、设备连接、设备配置、IP地址分配、网络安全、网络管理等内容。如果设备条件有限,也可以使用路由器来完成网络的构建。 二、实训步骤 2.1 组建总公司局域网组网 2.1.1 网络拓扑图 摆出小型网络所需要的设备并把说有设备连接起来(相同设备用交叉线,不同设备用直通线,注意路由器和PC机属于同种设备用交叉线),网络拓扑图如图1.1。 图1.1

计算机网络课程设计

计 算 机 工 程 学 院
课程设计报告
设计名称: 姓 名: 计算机网络课程设计 学 号:
专业班级: 系 (院) : 设计时间: 设计地点: 计算机工程学院 2013.12.23——2014.1.5 计算机网络技术室
指导教师评语:
成绩:
签名:
年 月 日

计算机网络课程设计报告

2
页,共
12

1.课程设计目的 计算机网络课程设计是计算机及相关专业的实践环节之一,是学习完《计算机网 络》课程后进行的一次全面的综合练习。其目的在于加深对 OSI 七层模型、TCP/IP 模型的各层功能和设计思想的理解,掌握组建计算机网络的基本技术,特别是网络规 划、路由器的基本配置,提高学生的应用能力和动手实践能力。
2.课程设计任务与要求:
任务: 以淮海工学院本部校园为背景,设计一个校园网方案。淮海工学院的本部分为办公区、教 学区和生活区三部分。现假设:办公区中各楼宇名为:教务处楼,党政办公楼,图书馆,计算机 系大楼、讲堂楼、机械楼、土木楼、海洋学院楼、大学生活动中心楼、教学主楼等,生活区中有 学生公寓区和教师住宅区及各食堂。假设办公区、教学区每个办公室、教室均预留 2 个信息点, 生活区每个房间预留 1 个信息点,全校使用预留的一个 B 类 Internet 地址 172.160.0.0,试根据本 部校园网的应用需求和管理需求、各建筑物的地理分布、确定信息点个数及信息点分布,设计出 本部的校园网方案。方案中应明确学院网管中心的位置,确定拓扑方案,进行 IP 地址规划,完成 设备选型,注明各种设备、设施和软件的生产商、名称、型号、配置与价格,并分别给出其价格 的出处(如网站等) ,基本确定方案的预算。 要求: (1)通过资料查阅和学习,了解园区网络规划、设计的一般方法。 (2)参考和研究一些公司和高校/企业园区网的规划和建设方案,结合《计算机网络》课程中 所学知识,积极完成设计任务。 (3)认真完成需求分析,并根据需求分析完成园区网络的总体方案设计,确定网络逻辑拓扑结 构和所采用的网络技术、主要设备的性能指标,进而完成设备的选型和经费预算。 (4)认真按时完成课程设计报告,课程设计报告内容包括:课程设计目的、设计任务与要求、 设计说明书、设计成果和设计心得五个部分,具体要求见设计报告模板。
3.课程设计说明书

电子商务系统分析与设计课程设计实验报告范本

电子商务系统分析与设计课程设计实 验报告

江苏科技大学 电子商务系统分析与设计课程设计 网上书城系统的开发 学生姓名张颖 学号 班级08404121 指导老师 成绩 经济管理学院信息管理系 1月8日 目录 一.系统规划 (4)

1.2初步调查 (5) 1.3确定电子商务模式和模型 (6) 1.4可行性分析和可行性分析报告 (6) 二.系统分析 (8) 2.1系统调查 (8) 2.2需求规格说明书 (9) 2.2.1 引言 (9) 2.2.2项目概述 (9) 2.2.3需求规定 (10) 2.2.4环境要求 (16) 2.3组织结构分析 (17) 2.4业务流程分析 (17) 2.5数据流程分析 (19) 三.系统设计 (21) 3.1系统总体结构 (21) 3.2网络基本结构 (22) 3.3系统平台选择 (22) 3.4应用系统方案 (23) 3.4.1各功能模块简要描述 (23) 3.4.4数据库设计 (24) 3.4.5用户界面设计 (31)

3.5.1客户端要求 (32) 3.5.2服务器端要求 (32) 3.5.3系统测试 (32) 四.支付系统设计 (39) 4.1支付协议选择 (39) 4.2支付系统数据流程分析 (39) 4.3支付系统安全需求分析 (41) 4.4支付系统总体设计 (42) 4.5支付系统功能 (44) 4.6交易流程设计 (46) 4.7支付系统安全设计 (47) 五.心得体会 (47) 一.系统规划 1.1明确用户需求 随着当今社会新系统大度的提高,网络的高速发展,计算机已被广泛应用于各个领域,因而网络成为人们生活中不可或缺的一部分。互联网用户应经接受了电子商务,网购成为一种时尚潮流。

计算机网络实验报告 答案.

计算机网络实验报告 专业计算机科学与技术 班级计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委员会就将局域网的数据链路层拆成两个子层,即逻辑链路控制

计算机网络课程设计题目和要求

计算机网络课程设计通过课程设计,使学生在对计算机网络技术与发展整体了解的基础上,掌握网络的主要种类和常用协议的概念及原理,初步掌握以TCP/IP协议族为主的网络协议结构,培养学生在TCP/IP协议和LAN、WAN上的实际工作能力;学会网络构建、网络日常维护以及网络管理的方法,使学生掌握在信息化社会建设过程中所必须具备的计算机网络组网和建设所需的基本知识与操作技能。运用网络工程和软件工程思想,按照需求分析、规划、设计、配置的基本流程,经历一个完整的网络工程过程,培养学生调查研究、查阅技术文献、资料、手册以及编写技术文档的能力,培养学生将理论知识应用于实践的能力。 一、格式要求及须知: (1)使用学院网站的课程设计模版,要求格式美观,字体及编号要求见表1。 表1 字体及编号要求

(2)参考文献:参考课本的参考文献格式(附录C)。但编号换成[1]、[2]……(3)附录:课程设计中的代码或得到的数据包等数据将作为该设计附件或附录,题目需要但没有的相应代码及数据包文件的将记整组不及格,需要重做。 (4)成绩记录:该设计成绩将记录到教务处成绩管理系统中。 (5)打印:经审查(发邮件到指导老师处或当面交流修改)后,方可打印、存档。打印后递送到指导老师的信箱。 (6)如发现两组设计雷同或抄袭互联网,该组重做! 二、任务完成形式: 交付课程设计说明书、设计作品(需要验收)。 设计作品指的是完整的源程序代码(对于第二类题目为仿真文件)。 课程设计说明书(纸质+电子版),内容包括:设计任务、需求分析、总体设计、详细设计(相应地给出关键的代码)、设计总结(评价/遇到的问题/体会/建议等)、使用说明等。 设计工作计划与进度安排: 根据所选题目,合理安排进度计划,总体上需要40个小时。以下仅供参考: 1. 原理知识 4小时 2. 程序设计技术 4小时 3. 开发环境与程序调试环境 4小时 4. 总体设计、关键环节的详细设计 8小时

计算机网络课程设计报告

计算机网络课程设计报告 姓名:李逍逍 班级:08计11 学号:08261012

一.课程设计的题目、目的及要求 (2) 二.课程设计的内容(分析和设计) (3) 三.绘制拓扑结构图 (3) 四.详细设计步骤 (5) 五.路由器或交换机配置的代码 (6) 六.显示最终的结果 (8) 七.课程设计总结 (9)

一.课程设计的题目、目的及要求 课程设计题目:组建小区局域网 课程设计目的: 更深了解路由器,交换机,PC机之间的配置与应用,熟练掌握一些简单的的网络应用和连接,熟练掌握路由器和交换机的基本配置;掌握DHCP、ACL、VLAN、和NET协议和相应的技术;提高对实际网络问题的分析和解决能力。该设计需要划分为四个子网层面的小区性的网络通讯。采用软件cisco,可以更好的实现各种不同网络设备互相配合与联系,以达到最佳的局域网通讯效果。 课程设计要求: 要求能根据实际问题绘制拓扑结构图,拓扑结构图可以是树形、星形、网状形、环状形及混合形结构的之一,清晰的描述接口,进行路由器或交换机的代码配置实现,并且每个方案的需有以下几部分的内容: 1、需求特点描述; 2、设计原则; 3、解决方案设计,其中必须包含: (1)设备选型; (2)综合布线设计; (3)拓扑图; (4)IP地址规划; (5)子网划分; (6)路由协议的选择; (7)路由器配置。 组建小区局域网的总体要求: 运用自己对局域网组网技术的理解,设计小区组网方案,使得一个具有200个住户节点的智能化小区能够进行网络通讯,且将整个小区可划分为四个区域:1.网络中心区:以物业管理中心及监控中心为主的核心交换设备和服务器群;2.远程网络接入区:包括外部网络接入口的路由器设备和网络安全设备;3.园区网络区:包括从网络中心到社区服务设施的骨干交换设备; 4.家庭网络区:包括从网络中心到楼宇中的骨干交换设备,并为各住户单元提供网络接入端口,是整个小区网络系统的最基本单元。

计算机网络实验报告89340

计算机专业类课程 实 验 报 告 课程名称:计算机网络 学院:计算机科学与工程 专业:计算机科学与技术 学生:ZYZ 学号:26 指导教师:FB 日期:2016年06月10日

目录 实验一 (3) 实验二 (7) 实验三 (12) 实验四 (17) 实验五 (21)

电子科技大学 实验报告 实验一 一、实验名称:交换机和路由器的基本配置 二、实验学时:4 三、实验容和目的: 理解和掌握交换机和路由器的工作原理;掌握交换机和路由器命令行各种操作模式的区别;能够使用各种帮助信息,以及用命令进行基本的配置。 假设是某公司新进的网管,公司要求你熟悉网络产品。 首先要求你登录交换机或路由器,了解并掌握交换机和路由器的命令行操作,以及如何使用一些基本命令对设备进行配置,包括交换机和路由器的设备名、登录时的描述信息、端口参数的基本配置,以及设备运行状态的查看。 四、实验原理: 交换机和路由器的管理方式基本分为两种:带管理和带外管理。 交换机或路由器的命令行操作模式,主要包括:用户模式、特权模式、全局配置模式、端口模式等几种。 交换机或路由器的基本操作命令包括Exit、End、Show version、Show mac-address-table、Show ip route、Show running-config。 以创建两种类型的标题:每日通知和登录标题。 五、实验器材(设备、元器件) 三层交换机1台、路由器1台、计算机1台。 六、实验步骤:

交换机的配置 第一步:交换机各个操作模式直接的切换 Swtich>enable Swtich#configure terminal !使用enable命令从用户模式进入特权模式,再从特权模式进入全局配置模式第二步:交换机命令行界面基本功能 第三步:配置交换机的名称和每日提示信息 第四步:配置接口状态 第五步:查看交换机的系统和配置信息 第六步:保存配置 路由器的配置 第一步:路由器各个操作模式直接的切换 第二步:路由器命令行界面基本功能 第三步:配置路由器的名称和每日提示信息 第四步:配置接口状态 第五步:配置路由器的接口并查看接口配置 第六步:显示路由表的信息 七、实验数据及结果分析: (1)交换机的配置文件容,即show running-config 的结果

《计算机网络课程设计》第一次在线作业

第一次在线作业 单选题 (共20道题) 收起 1.( 2.5分)大型系统集成项目的复杂性体现在技术、成员、环境、()四个方面。 ? ? ? ? 我的答案:D 此题得分:2.5分 2.(2.5分)在数据通信网络设计中,ITU-T系列标准更接近于OSI/RM模型()的定义。 ? ? ? ? 我的答案:D 此题得分:2.5分 3.(2.5分)网络系统集成的工作在于解决不同系统之间的信号交换和()问题。 ? ? ?

? 我的答案:A 此题得分:2.5分 4.(2.5分)以太网交换机的每一个端口相当于一个()。 ? ? ? ? 我的答案:D 此题得分:2.5分 5.(2.5分)计算机网络是计算机技术和()技术相结合的产物。 ? ? ? ? 我的答案:A 此题得分:2.5分 6.(2.5分)城域网往往由多个园区网以及()、传输网等组成。 ? ? ? ? 我的答案:D 此题得分:2.5分 7.(2.5分)TCP/UDP端口号提供的附加信息可以为交换机所利用,这是第()层交换的基础。 ?

? ? ? 我的答案:C 此题得分:2.5分 8.(2.5分)电信网络流量很大,对网络设备要求有较高的()和可靠性。 ? ? ? ? 我的答案:D 此题得分:2.5分 9.(2.5分)需求管理包括需求跟踪、()、需求评估等工作。 ? ? ? ? 我的答案:A 此题得分:2.5分 10.(2.5分)网络工程师在大部分情况下可以通过()来获取用户需求。 ? ? ? ? 我的答案:C 此题得分:2.5分 11.(2.5分)电信网的主干链路,一般采用()和DWDM技术。 ?

? ? ? 我的答案:D 此题得分:2.5分 12.(2.5分)()文档定义了网络工程项目的需求基线。 ? ? ? ? 我的答案:A 此题得分:2.5分 13.(2.5分)支持广播网络的拓扑结构有总线型、星型、()。 ? ? ? ? 我的答案:D 此题得分:2.5分 14.(2.5分)对于用户比较集中的环境,由于接入用户较多,因此交换机应当提供( )功能。 ? ? ? ? 我的答案:A 此题得分:2.5分

中南大学电工电子课程设计实验报告

中南大学 电工电子技术课程设计报告 题目:可编程乐曲演奏器的设计 学院:信息科学与工程学院 指导老师:陈明义 专业班级: 姓名: 学号:

前言 随着科学技术发展的日新日异,电工电子技术在现代社会生产中占据着非常重要的地位,因此作为二十一世纪的自动化专业的学生而言,掌握电力电子应用技术十分重要。 电工电子课程设计的目的在于进一步巩固和加深所学电工电子基本理论知识。使学生能综合运用相关关课程的基本知识,通过本课程设计,培养我们独立思考的能力,学会和认识查阅学习我们未学会的知识,了解专业工程设计的特点、思路、以及具体的方法和步骤,掌握专业课程设计中的设计计算、软件编制,硬件设计及整体调试。设计过程中还能树立正确的设计思想和严谨的工作作风,达到提高我们的设计能力的目标。 从理论到实践,往往看似简单,实则是有很大的差距的,通过课程设计,可以培养我们学到很多东西,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正的学到知识,从而提高自己的实际动手能力和独立思考的能力。 在次,特别感谢老师给我们以实践动手的机会,让我们对以前的知识以复习,整合,并从理论走向实践,相信我们都会在这次课程设计中学到很多!!!

目录 前言 (2) 正文 第一章系统概述 (4) 系统功能 (4) 系统结构 (4) 实验原理 (4) 整体方案 (5) 第二章单元电路的设计与分析 (5) 音频发生器的设计 (5) 节拍发生器的设计 (6) 读取存储器数据 (7) 选择存储器地址 (8) 控制音频电路设计 (8) 第三章电路的安装与调试 (9) 第四章结束语 (9) 元器件明细表 (10) 参考文献 (10) 附录 (11)

计算机网络技术实验报告

重庆交通大学 学生实验报告 实验课程名称《计算机网络技术》课程实验 开课实验室软件与通信实验中心 学院国际学院年级2012 专业班(1)班 学生姓名吴双彪学号6312260030115 开课时间2014 至2015 学年第二学期 实验2简单的局域网配置与资源共享 实验目的: 1、掌握将两台PC联网的技能与方法 2、掌握将几台PC连接成LAN的技能与方法 3、掌握局域网内资源共享的技能与方法 实验内容和要求: 1、选用百兆交换机连接PC若干台; 2、在上述两种情况下分别为PC配置TCP/IP协议,使他们实现互联和资源共享实验环境:(画出实验网络拓图) 实验步骤: 1、选择两台计算机; 选PC0与PC1. 2、设置两台计算机IP地址为C类内部地址; 两台PC机的IP分别设置为:、202.202.242.47、202.202.243.48; 两台PC机的掩码分别设置为:、255.255.255.0、255.255.255.0; 3、用一台计算机Ping另一台计算机,是否能Ping通?

4、我的电脑→工具→文件夹选项→查看→去掉“使用简单文件共享(推荐)”前 的勾;设置共享文件夹。 5、控制面板→管理工具→本地安全策略→本地策略→安全选项里,把“网络访 问:本地帐户的共享和安全模式”设为“仅来宾-本地用户以来宾的身份验证” (可选,此项设置可去除访问时要求输入密码的对话框,也可视情况设为“经典-本地用户以自己的身份验证”); 6、通过网络邻居或在运行窗口输入“\\对方IP地址”实现资源共享。 1)指定IP地址,连通网络 A.设置IP地址 在保留专用IP地址范围中(192.168.X.X),任选IP地址指定给主机。 注意:同一实验分组的主机IP地址的网络ID应相同 ..。 ..,主机ID应不同 ..,子网掩码需相同B.测试网络连通性 (1)用PING 命令PING 127.0.0.0 –t,检测本机网卡连通性。 解决方法:检查网线是否连接好,或者网卡是否完好 (2)分别“ping”同一实验组的计算机名;“ping”同一实验组的计算机IP地址,并记录结 果。答:能。结果同步骤3 (3)接在同一交换机上的不同实验分组的计算机,从“网上邻居”中能看到吗?能ping通 吗?记录结果。 2) 自动获取IP地址,连通网络 Windows主机能从微软专用B类保留地址(网络ID为169.254)中自动获取IP地址。 A.设置IP地址 把指定IP地址改为“自动获取IP地址”。 B.在DOS命令提示符下键入“ipconfig”,查看本机自动获取的IP地址,并记录结果。 C.测试网络的连通性 1.在“网上邻居”中察看能找到哪些主机,并记录结果。 2.在命令提示符下试试能“ping”通哪些主机,并记录结果。 答:能ping通的主机有KOREYOSHI ,WSB ,ST ,LBO ,CL 。思考并回答 测试两台PC机连通性时有哪些方法? 实验小结:(要求写出实验中的体会)

计算机网络课程设计题目

计算机网络课程设计题目

计算机网络课程设计 题目一 基本要求:根据用户需求,设计网络,并完成相关文档和文件工作。要求通过查找资料,独立完成设计,全部图、表只能使用WORD或VISIO 的相关工具来画,不得粘贴扫描的图片。 路由器和交换机、PC机配置利用boson netsim 或类似软件来辅助进行,防火墙、服务器配置用文档描述。 1、某高校要求设计一个校园网, 一、用户需求 (1)用户规模500台计算机。 (2)用户大致平均分散在4栋楼房内,4栋楼房排成前后两排,楼房之间各相距200米,楼房高4层。每栋楼的4楼用户构成两个VLAN。(3)中心机房设在其中1栋楼房的1楼靠近另一栋楼房的一端。 (4)安装对外WWW、业务WWW、邮件、FTP、BBS、DNS、数据库七个服务器。提供匿名服务,但FTP仅对内部开放。 (5)提供LAN、WLAN接入。

(6)在业务WWW服务器上配备基于Web的业务应用系统,所有用户使用业务系统实现网上办公。 (7)要求出口带宽为1Gbps。 二、设计要求 (1)写出简要的可行性分析报告。 (2)设计网络结构,并给出解释。 (3)除用户计算机已购置外,其余全部设备和通信线路需要重新购买、安装。试具体给出全部主要设备的配置、型号或技术指标及其测算依据。 (4)给出工程预算(包括设备、线路等,不含施工费)及其计算依据。 题目二 设计一个中小企业网络规划与设计的方案:一、用户需求 (1)公司有1000 台PC (2)公司共有7个部门,不同部门的相互访问

要求有限制,公司有3个跨省的分公司。 (3)公司有自己的内部网页与外部网站,公司能够提供匿名的FTP,邮件,WWW服务,但FTP 只对内部员工开放。 (4)公司有自己的OA 系统 (5)公司中的每台机能上互联网,每个部门的办公室联合构成一个VLAN。 (6)核心技术采用VPN。 二、设计要求 (1)写出简要的可行性分析报告。 (2)设计网络结构,并给出解释。 (3)除PC机已购置外,其余全部设备和通信线路需要重新购买、安装。试具体给出全部主要设备的配置、型号或技术指标及其测算依据。(4)给出工程预算(包括设备、线路等,不含施工费)及其计算依据。 题目三 题目:广告公司网络的设计 1.基本背景描述 某广告公司现有分公司1(50台pc)和分公司2(40台pc),分公司1和分公司2都拥有各自独立的部门。分公司1和分公司2包括:策划部、市场部、设计部。为提高办公效率,该广告公司决定建立一个内部网络。 该广告公司内部使用私有IP地址192.168.160.0/23,要求该广告公司的分公司1和分公司2之间使用路由器进行连接(不使用vpn技术),使用动态的路由

电子CAD课程设计实验报告

一.课程设计的目的 课程设计以电子线路CAD软件设计原理为基础,重点在硬件设计领域中实用的电子线路设计软件的应用。掌握电子线路设计中使用CAD的方法。为后继课程和设计打下基础。 通过电路设计,掌握硬件设计中原理图设计、功能仿真、器件布局、在线仿真、PCB设计等硬件设计的重要环节。 二.课程设计题目描述和要求 2.1振荡电路的模拟和仿真。 由555定时器构成多谐波振荡电路,用模拟的示波器观察输出的信号,熟悉555定时器构成多谐波振荡电路的基本原理,熟悉proteus的基本操作,和各元器件的查找。 2.2 8051单片机 用80c51单片机完成以下功能:(1)构成流水灯的控制电路,使八个流水灯轮流点亮。(2)构成音乐播放的简单电路。(3)构成串口通信电路,完成信息在单片机和串口之间的传播。(4)构成8255键盘显示模块。(5)构成A/D和D/A 转换模块。 首先用模拟器件构成基本电路,然后在单片机中加入驱动程序,运行仿真,最后对电路进行调整校正,完成相关功能。 熟悉单片机实现相关功能的基本原理,对单片机有个框架的了解。学习用proteus仿真单片机电路中不同模块间的组合,扩展单片机电路的功能。 三.课程设计报告内容。 3.1设计原理 3.1.1振荡电路仿真的原理 振荡电路原理: 555管脚功能介绍: 1脚为地。2脚为触发输入端;3脚为输出端,输出的电平状态受触发器控制,而触发器受上比较器6脚和下比较器2脚的控制。 当触发器接受上比较器A1从R脚输入的高电平时,触发器被置于复位状态,3脚输出低电平; 2脚和6脚是互补的,2脚只对低电平起作用,高电平对它不起作用,即电压小于1Ucc/3,此时3脚输出高电平。6脚为阈值端,只对高电平起作用,低电

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

计算机网络实验报告 姓名 学号 专业 班级 指导教师毛绪纹 2017.12

实验2-1 PPP 与 PPPoE 学习 实验配置说明 该实验主要用于观察PPPoE和PPP的数据封装格式。其中,PC1到ISP1段的链路使用PPPoE,ISP1已经配置为PPPoE服务器。ISP1和ISP2之间的链路使用PPP。 实验目的 了解PPP协议的封装格式。 了解PPPoE协议的封装格式。 实验步骤 任务:观察PPP协议和PPPoE协议的数据封装格式 步骤1:准备工作 单击主窗口右下角 Realtime 和 Simulation 模式切换按钮数次,直至交换机指示灯呈绿色 步骤2:建立PPPoE连接 单击拓扑图中的 PC1,在弹出窗口中单击 Desktop 选项卡,选择桌面上的 Command 工具,在其中输入 ipconfig 命令查看 PC1 的 IP 地址信息, PC1 在初始状态下并未配 置 IP 地址。选择 PPPoE 拨号工具,在弹出窗口中输入拨号信息,即用户名(User Name)和密码(Password):ISP1 预设了两个用户名,分别为 user 和 admin,密码与用户名相同。输入拨号信息后单击 Connect 按钮,建立 PPPoE 连接。关闭 PPPoE 拨号窗口,重新打开 Command 工具,输入 ipconfig 命令查看 PC1 是否获取到 IP 地址。如已获取到 ISP1 预设的地址池范围内的 IP 地址,则表示 PPPoE 拨号成功。

步骤3:添加并捕获数据包 进入 Simulation(模拟)模式。设置 Event List Filters(事件列表过滤器)只显示 ICMP 事件。单击 Add Simple PDU(添加简单PDU)按钮,在拓扑图中添加PC1 向PC2 发送的数据包。单击 Auto Capture/Play(自动捕获/播放)按钮捕获数据。此时PC1 上出现信封图标,并在信封图标上闪烁“√”图标。此时可再次单击 Auto Capture/Play (自动捕获/播放)按钮停止捕获数据包。 步骤4:观察PPPoE协议封装格式 选择事件列表中PC1 到Switch0 或者 Switch0 到 ISP1 的数据包,即事件列表中的第二或第三个数据包。单击其 Info 项上的色块,在弹出的 PDU 信息窗口中选择Inbound PDU Details 选项卡。 步骤5:观察PPP协议的封装格式