当前位置:文档之家› 计算机协议系统实验指导书2015

计算机协议系统实验指导书2015

《计算机协议系统》实验指导书

实验一以太网链路层帧格式分析

【实验目的】

1. 掌握以太网的报文格式

2. 掌握MAC地址的作用

3. 掌握MAC广播地址的作用

4. 掌握LLC帧报文格式

5. 掌握协议编辑器和协议分析器的使用方法

6. 掌握协议栈发送和接收以太网数据帧的过程

【实验环境】

该实验采用网络结构一

【实验步骤】

练习1 领略真实的MAC帧

各主机打开工具区的“拓扑验证工具”,选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。

本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B所在组为例,其它组的操作参考主机A、B所在组的操作。

1. 主机B启动协议分析器,新建捕获窗口进行数据捕获并设置过滤条件(提取ICMP协

议)。

2. 主机A ping 主机B,察看主机B协议分析器捕获的数据包,分析MAC帧格式。

3. 将主机B的过滤器恢复为默认状态。

练习2 理解MAC地址的作用

本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B为例,其它组的操作参考主机A、B的操作。

1. 主机B启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(源MAC地址为主机A的MAC地址)。

2. 主机A ping 主机B。

3. 主机B停止捕获数据,在捕获的数据中查找主机A所发送的ICMP数据帧,并分析该帧内容。

●记录实验结果

练习3 编辑并发送MAC广播帧

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 主机E启动协议编辑器。

2. 主机E编辑一个MAC帧:

目的MAC地址:FFFFFF-FFFFFF

源MAC地址:主机E的MAC地址

协议类型或数据长度:大于0x0600

数据字段:编辑长度在46—1500字节之间的数据

3. 主机A、B、C、D、F启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(源

MAC地址为主机E的MAC地址)。

4. 主机E发送已编辑好的数据帧。

5. 主机A、B、C、D、F停止捕获数据,察看捕获到的数据中是否含有主机E所发送的数据

帧。

练习4 编辑并发送LLC帧

本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B所在组为例,其它组的操作参考主机A、B所在组的操作。

1. 主机A启动协议编辑器,并编写一个LLC帧。

目的MAC地址:主机B的MAC地址

源MAC地址:主机A的MAC地址

协议类型和数据长度:001F

控制字段:填写02

[注]回车后变成0200,该帧变为信息帧,控制字段的长度变为2字节

用户定义数据/数据字段:AAAAAAABBBBBBBCCCCCCCDDDDDD

[注]长度为27个字节

2. 主机B启动协议分析器并开始捕获数据。

3. 主机A发送编辑好的LLC帧。

4. 主机B停止捕获数据,在捕获到的数据中查找主机A所发送的LLC帧,分析该帧内容。

5. 将第1步中主机A已编辑好的数据帧修改为“无编号帧”(前两个比特位为1),用户定

义数据/数据字段修改为AAAAAAABBBBBBBCCCCCCCDDDDDDD

「注」长度为28个字节,重做第2、3、4步。

思考问题:

1. MAC地址应用于TCP/IP协议模型的哪一层?

2. 如何区分以太网的两种标准帧格式?

3. 主机A、B、C、D、F是否可以收到主机E的广播帧?

4. 说明MAC广播帧的范围?

5. 如何编辑LLC无编号帧和LLC数据帧。

6. 在协议分析端捕获到该帧,帧的长度是多少?由此理解以太网的最短帧长度。

7. 为什么IEEE802标准将数据链路层分割为MAC子层和LLC子层?

8. 为什么以太网有最短帧长度的要求?

实验二网络层协议分析

【实验目的】

1. 掌握ARP协议的报文格式

2. 掌握ARP协议的工作原理

3. 掌握IP数据报的报文格式

4. 掌握子网掩码和路由转发

5. 理解IP分片过程

6. 理解IP路由表作用以及IP路由表的管理

7. 掌握ICMP协议的报文格式

8. 理解不同类型ICMP报文的具体意义

【实验环境】

该实验采用网络结构二

【实验步骤】

练习1 领略真实的ARP(同一子网)

各主机打开工具区的“拓扑验证工具”,选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 主机A、B、C、D、E、F启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件

(提取ARP、ICMP)。

2. 主机A、B、C、D、E、F在命令行下运行“arp -d”命令,清空ARP高速缓存。

3. 主机A ping 主机D(172.16.1.4)。

主机B ping 主机C(172.16.1.3)。

主机E ping 主机F(172.16.0.3)。

4. 主机A、B、C、D、E、F停止捕获数据,并立即在命令行下运行“arp -a”命令察看

ARP高速缓存。

练习2 编辑并发送ARP报文(同一子网)

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 在主机E上启动协议编辑器,并编辑一个ARP请求报文。其中:

MAC层:

目的MAC地址:设置为FFFFFF-FFFFFF

源MAC地址:设置为主机E的MAC地址

协议类型或数据长度:0806

ARP层:

发送端硬件地址:设置为主机E的MAC地址

发送端逻辑地址:设置为主机E的IP地址(172.16.0.2)

目的端硬件地址:设置为000000-000000

目的端逻辑地址:设置为主机F的IP地址(172.16.0.3)

2. 主机A、B、C、D、F启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提

取ARP协议)。

3. 主机B、E、F在命令行下运行“arp -d”命令,清空ARP高速缓存。主机E发送已编辑

好的ARP报文。

4. 主机A、B、C、D、F停止捕获数据,分析捕获到的数据,进一步体会ARP报文交互过

程。

练习3 编辑并发送IP数据报

各主机打开工具区的“拓扑验证工具”,选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 主机B在命令行方式下输入staticroute_config命令,开启静态路由服务。

2. 主机A启动协议编辑器,编辑一个IP数据报,其中:

MAC层:

目的MAC地址:主机B的MAC地址(对应于172.16.1.1接口的MAC)。

源MAC地址:主机A的MAC地址。

协议类型或数据长度:0800。

IP层:

总长度:IP层长度。

生存时间:128。

源IP地址:主机A的IP地址(172.16.1.2)。

目的IP地址:主机E的IP地址(172.16.0.2)。

校验和:在其它所有字段填充完毕后计算并填充。

自定义字段:

数据:填入大于1字节的用户数据。

「说明」先使用协议编辑器的“手动计算”校验和,再使用协议编辑器的“自动计算”校验和,将两次计算结果相比较,若结果不一致,则重新计算。

3. 在主机B(两块网卡分别打开两个捕获窗口)、E上启动协议分析器,设置过滤条件(提

取IP协议),开始捕获数据。

4. 主机A发送第1步中编辑好的报文。

5. 将第1步中主机A所编辑的报文的“生存时间”设置为1,重新计算校验和。

6. 主机B、E重新开始捕获数据。

7. 主机A发送第5步中编辑好的报文。

练习4 特殊的IP地址

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 直接广播地址

(1)主机A编辑IP数据报1,其中:

目的MAC地址:FFFFFF-FFFFFF。

源MAC地址:A的MAC地址。

源IP地址:A的IP地址。

目的IP地址:172.16.1.255。

自定义字段数据:填入大于1字节的用户数据。

校验和:在其它字段填充完毕后,计算并填充。

(2)主机A再编辑IP数据报2,其中:

目的MAC地址:主机B的MAC地址(对应于172.16.1.1接口的MAC)。

源MAC地址:A的MAC地址。

源IP地址:A的IP地址。

目的IP地址:172.16.0.255。

自定义字段数据:填入大于1字节的用户数据。

校验和:在其它字段填充完毕后,计算并填充。

(3)主机B、C、D、E、F启动协议分析器并设置过滤条件(提取IP协议,捕获172.16.1.2接收和发送的所有IP数据包,设置地址过滤条件如下:172.16.1.2<->Any)。

(4)主机B、C、D、E、F开始捕获数据。

(5)主机A同时发送这两个数据报。

(6)主机B、C、D、E、F停止捕获数据。

2. 受限广播地址

(1)主机A编辑一个IP数据报,其中:

目的MAC地址:FFFFFF-FFFFFF。

源MAC地址:A的MAC地址。

源IP地址:A的IP地址。

目的IP地址:255.255.255.255。

自定义字段数据:填入大于1字节的用户数据。

校验和:在其它字段填充完毕后,计算并填充。

(2)主机B、C、D、E、F重新启动协议分析器并设置过滤条件(提取IP协议,捕获172.16.1.2接收和发送的所有IP数据包,设置地址过滤条件如下:172.16.1.2<->Any)。

(3)主机B、C、D、E、F重新开始捕获数据。

(4)主机A发送这个数据报。

(5)主机B、C、D、E、F停止捕获数据。

3. 环回地址

(1)主机E重新启动协议分析器开始捕获数据并设置过滤条件(提取IP协议)。

(2)主机E ping 127.0.0.1。

(3)主机E停止捕获数据。

● 主机F是否收到主机E发送的目的地址为127.0.0.1的IP数据报?为什么?

练习5 IP数据报分片

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 在主机B上使用“实验平台上工具栏中的MTU工具” 设置以太网端口的MTU为800字节(两个端口都设置)。

2. 主机A、B、E启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ICMP协议)。

3. 在主机A上,执行命令ping -l 1000 172.16.0.2。

4. 主机A、B、E停止捕获数据。在主机E上重新定义过滤条件(取一个ICMP数据包,按照其IP层的标识字段设置过滤)。

将ICMP报文分片信息填入下表,分析表格内容,理解分片的过程。

5. 主机E恢复默认过滤器。主机A、B、E重新开始捕获数据。

6. 在主机A上,执行命令ping -l 2000 172.16.0.2。

7. 主机A、B、E停止捕获数据。察看主机A、E捕获到的数据,比较两者的差异,体会两

次分片过程。

8. 主机B上使用“实验平台上工具栏中的MTU工具”恢复以太网端口的MTU为1500字节。练习6 子网掩码的作用

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 所有主机取消网关。

2. 主机A、C、E设置子网掩码为255.255.255.192,主机B(172.16.1.1)、D、F设置子

网掩码为255.255.255.224。

3. 主机A ping 主机B(172.16.1.1),主机C ping 主机D(172.16.1.4),主机E ping

主机F(172.16.0.3)。

4. 主机B在命令行方式下输入recover_config命令,停止静态路由服务。

5. 所有主机恢复到网络结构二的配置。

练习7 运行Ping命令

各主机打开工具区的“拓扑验证工具”,选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。

本练习将主机A、B、C、D、E、F作为一组进行实验。

实验开始前主机B首先执行命令“staticroute_config”启动静态路由。

1. 主机B、E、F启动协议分析器,打开捕获窗口进行数据捕获并设置过滤条件(提取ICMP

协议)。

2. 主机A ping主机E(172.16.0.2)。

主机C ping 主机F(172.16.0.3)。

练习8 ICMP差错报文

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 目的端不可达

(1)主机A、B、C、D、E、F启动协议分析器捕获数据,并设置过滤条件(提取ICMP)。

(2)主机A、C、D、E、F ping 172.16.2.10(不存在的IP地址)。

(3)主机A、B、C、D、E、F停止捕获数据。察看捕获到的数据,并回答以下问题:2. 超时

(1)主机A、C、D分别启动协议编辑器,编写一个发送给主机F(172.16.0.3)的ICMP 数据帧。其中:

MAC层:

目的MAC地址:主机B的MAC地址(172.16.1.1接口的MAC)。

源MAC地址:本机的MAC地址。

协议类型或数据长度:0800。

IP层:

总长度:包含IP层和ICMP层长度。

生存时间(TTL):0。

高层协议类型:1。

校验和:在其它字段填充完毕后,计算并填充。

源IP地址:本机的IP地址。

目的IP地址:F的IP地址。

ICMP层:

类型:8。

代码字段:0。

校验和:在ICMP其它字段填充完毕后,计算并填充。

其它字段使用默认值。

(2)主机E、F分别启动协议编辑器,编写一个发送给主机D(172.16.1.4)的ICMP 数据帧。其中:

MAC层:

目的MAC地址:主机B的MAC地址(172.16.0.1接口的MAC)。

源MAC地址:本机的MAC地址。

协议类型或数据长度:0800。

IP层:

总长度:包含IP层和ICMP层长度。

TTL:0。

高层协议类型:1。

校验和:在其它字段填充完毕后,计算并填充。

源IP地址:本机的IP地址。

目的IP地址:D的IP地址。

ICMP层:

类型:8。

代码字段:0。

校验和:在ICMP其它字段填充完毕后,计算并填充。

其它字段使用默认值。

(3)主机B启动协议分析器,网卡b1(172.16.1.1)、网卡b2(172.16.0.1)分别捕获数据,并设置过滤条件(提取ICMP协议)。

(4)主机A、C、D、E、F各自发送已编辑好的数据帧。

(5)主机B停止捕获数据,察看并分析捕获到的数据。

(6)主机B在命令行方式下输入recover_config命令,停止静态路由服务。

思考问题:

1. 哪些主机收到了ARP请求包,哪个主机给出了ARP响应包?

2. 主机A、C、D是否收到ARP请求包,为什么?

3. 受限广播地址和直接广播地址的区别?

4. IP数据报中的首部校验和并不检验数据报中的数据,这样做的最大好处是什么?缺点是什么?

5. 为什么要设置TTL字段?

6. 不同协议的MTU的范围从296到65535,使用大的MTU有什么好处?使用小的MTU有什么好处?

7. 为什么要限制由失效的ICMP差错报文再产生一个ICMP报文?

8. 主机A向主机B发送数据报,主机B从未收到该数据报,而主机A也从未收到出问题的通知。试给出可能发生情况的两种不同解释。

实验三传输层协议分析

【实验目的】

1. 掌握UDP协议的报文格式

3. 理解UDP协议的优缺点

4. 掌握TCP协议的报文格式

5. 掌握TCP连接的建立和释放过程

6. 掌握TCP数据传输中编号与确认的过程

7. 掌握TCP协议校验和的计算方法

8. 理解TCP重传机制

【实验环境】

该实验采用网络结构一

【实验步骤】

练习1 编辑并发送UDP数据报

各主机打开工具区的“拓扑验证工具”,选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。

本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B所在组为例,其它组的操作参考主机A、B所在组的操作。

1. 主机A打开协议编辑器,编辑发送给主机B的UDP数据报。

MAC层:

目的MAC地址:接收方MAC地址

源MAC地址:发送方MAC地址

协议类型或数据长度:0800,即IP协议

IP层:

总长度:包括IP层、UDP层和数据长度

高层协议类型:17,即UDP协议

首部校验和:其它所有字段填充完毕后填充此字段

源IP地址:发送方IP地址

目的IP地址:接收方IP地址

UDP层:

源端口:1030

目的端口:大于1024的端口号

有效负载长度:UDP层及其上层协议长度

其它字段默认,计算校验和。

2. 在主机B上启动协议分析器捕获数据,并设置过滤条件(提取UDP协议)。

3. 主机A发送已编辑好的数据报。

4. 主机B停止捕获数据,在捕获到的数据中查找主机A所发送的数据报。

练习2 UDP单播通信

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 主机B、C、D、E、F上启动实验平台工具栏中的UDP工具”,作为服务器端,监听端口

设置为2483,“创建”成功。

2. 主机C、E上启动协议分析器开始捕获数据,并设置过滤条件(提取UDP协议)。

3. 主机A上启动“实验平台工具栏中的UDP工具”,作为客户端,以主机C的IP为目的

IP地址,以2483为端口,填写数据并发送。

4. 察看主机B、C、D、E、F上的“UDP工具”接收的信息。

● 哪台主机上的“UDP工具”能够接收到主机A发送的UDP报文?

5. 察看主机C协议分析器上的UDP报文,并回答以下问题:

● UDP是基于连接的协议吗?阐述此特性的优缺点。

● UDP报文交互中含有确认报文吗?阐述此特性的优缺点。

6. 主机A上使用协议编辑器向主机E发送UDP报文,其中:

目的MAC地址:E的MAC地址

目的IP地址:主机E的IP地址

目的端口:2483

校验和:0

有效负载长度:UDP层及其上层协议长度

首部校验和:其它所有字段填充完毕后填充此字段

总长度:包括IP层、UDP层和数据长度

发送此报文,并回答以下问题:

● 主机E上的UDP通信程序是否接收到此数据包?UDP是否可以使用0作为校验和进行通信?

7. 主机B、C、D、E、F关闭服务端,主机A关闭客户端。

练习3 UDP广播通信

本练习将主机A、B、C、D、E、F作为一组进行实验。

1. 主机B、C、D、E、F上启动实验平台工具栏中的“UDP工具”,作为服务器端,监听端

口设为2483。

2. 主机B、C、D、E、F启动协议分析器捕获数据,并设置过滤条件(提取UDP协议)。

3. 主机A上启动UDP工具,作为客户端,以255.255.255.255为目的地址,以2483为端

口,填写数据并发送。

4. 察看主机B、C、D、E、F上的“UDP工具”接收的信息。

练习4 察看TCP连接的建立和释放

各主机打开工具区的“拓扑验证工具”,选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。

本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B为例,其它组的操作参考主机A、B的操作。

1. 主机B启动协议分析器捕获数据,并设置过滤条件(提取TCP协议)。

2. 主机A启动TCP工具连接主机B。

(1)主机A启动实验平台工具栏中的“地址本工具”。点击[主机扫描]按钮获取组内主机信息,选中主机B点击[端口扫描]按钮获取主机B的TCP端口列表。

(2)主机A启动实验平台工具栏中的“TCP工具”。选中“客户端”单选框,在“地址”文本框中填入主机B的IP地址,在“端口”文本框中填入主机B的一个TCP端口,点击[连接]按钮进行连接。

3.

● TCP连接建立时,前两个报文的首部都有一个“最大字段长度”字段,它的值是多少?作用是什么?结合IEEE802.3协议规定的以太网最大帧长度分析此数据是怎样得出的。

4. 主机A断开与主机B的TCP连接。

练习5 利用协议编辑器编辑并发送TCP数据包

本练习每台主机为一组。现仅以主机A所在组为例,其他组的操作参考主机A所在组的操作。

在本实验中由于TCP连接有超时时间的限制,故协议编辑器和协议分析器的两位同学要默契配合,某些步骤(如计算TCP校验和)要求熟练、迅速。

为了实现TCP三次握手过程的仿真,发送第一个连接请求帧之前,编辑端主机应该使用TCP屏蔽功能来防止系统干扰(否则计算机系统的网络会对该请求帧的应答帧发出拒绝响应)。

通过手工编辑TCP数据包实验,要求理解实现TCP连接建立、数据传输以及断开连接的全过程。在编辑过程中注意体会TCP首部中的序列号和标志位的作用。

首先选择服务器主机上的一个进程作服务器进程,并向该服务器进程发送一个建立连接请求报文,对应答的确认报文和断开连接的报文也编辑发送。其步骤如下:

1. 启动协议分析器捕获数据,设置过滤条件(提取HTTP协议)。

2. 启动协议编辑器,在界面初始状态下,程序会自动新建一个单帧,可以利用协议编辑

器打开时默认的以太网帧进行编辑。

3. 填写该帧的以太网协议首部,其中:

源MAC地址:主机A的MAC地址

目的MAC地址:服务器的MAC地址

协议类型或数据长度:0800(IP协议)

4. 填写IP协议头信息,其中:

高层协议类型:6(上层协议为TCP)

总长度:40(IP首部+ TCP首部)

源IP地址:主机A的IP地址

目的IP地址:服务器的IP地址(默认为172.16.0.253)

其它字段任意。

应用前面学到的知识计算IP首部校验和。

5. 填写TCP协议信息,其中:

源端口:任意大于1024的数,不要使用下拉列表中的端口

目的端口:80(HTTP协议)

序列号:选择一个序号ISN(假设1942589885),以后的数据都根据它来填写

确认号:0

首部长度:50(长度20字节)

标志位:02(标志SYN=1)

窗口大小:任意

紧急指针:0

使用协议编辑器的“手动计算”方法计算校验和;再使用协议编辑器的“自动计算”方法计算校验和。将两次计算结果相比较,若结果不一致,则重新计算。

● TCP在计算校验和时包括哪些内容?

6. 将设置完成的数据帧复制3份。

修改第二帧的TCP 层的“标志”位为10(即标志位ACK=1),TCP层的“序列号”为1942589885+1。

修改第三帧的TCP层的“标志”位为11(即标志位ACK=1、FIN=1),TCP层的“序列号”为1942589885+1。

修改第四帧的TCP层的“标志”位为10(即标志位ACK=1),TCP层的“序列号”为1942589885+2。

7. 在发送该TCP连接请求之前,先ping一次目标服务器,让目标服务器知道自己的MAC

地址。

8. 启动实验平台工具栏中的“启动屏蔽”,为TCP/IP协议栈过滤掉收到的TCP数据。

9. 点击菜单栏中的[发送]按钮,在弹出对话框中选择发送第一帧。

10. 在主机上捕获相应的应答报文,这里要求同学及时准确地捕获应答报文并迅速从中获

得应答报文的接收字节序列号。

11. 假设接收字节序号为:3246281765,修改第二帧和第三帧TCP层的“确认号”的值

为:3246281766。

12. 计算第二帧的TCP校验和,将该帧发送。对服务器的应答报文进行确认。

13. 计算第三帧的TCP校验和,将该帧发送。

14. 在主机上观察应答报文,要及时把最后一帧“序列号”记录下来。

15. 修改第四帧的TCP层“确认号”为接收的序列号+1(即3246281767)。

16. 计算第四帧的TCP校验和,将该帧发送。断开连接,完成TCP连接的全过程。

17. 协议分析器一端截获相应的请求及应答报文并分析,注意观察“会话分析”中的会话

过程。

18. 编辑端主机启动实验平台工具栏中的“停止屏蔽”,恢复正常网络功能。

练习6 TCP的重传机制

本练习将主机A和B作为一组,主机C和D作为一组,主机E和F作为一组。现仅以主机A、B所在组为例,其它组的操作参考主机A、B所在组的操作。

1. 主机B上启动“实验平台工具栏中的TCP工具”,作为服务端,监听端口设置为

2483。

2. 主机B启动协议分析器开始捕获数据并设置过滤条件(提取TCP协议)。

3. 主机A启动TCP工具连接主机B。

(1)主机A启动“实验平台工具栏中的TCP工具”。

(2)选中“客户端”单选框。

(3)在“地址”文本框中填入主机B的IP地址。

(4)在“端口”文本框中填入主机B的TCP监听端口(2483)。

(5)点击[连接]按钮进行连接。

4. 主机A向主机B发送一条信息。

5. 主机B启动实验平台工具栏中的启动“TCP屏蔽”,过滤掉接收到的TCP数据。

6. 主机A向主机B再发送一条信息。

7. 主机B刷新捕获显示,当发现“会话分析视图”中有两条以上超时重传报文后,启动

实验平台工具栏中的停止“TCP屏蔽”,恢复正常网络功能。

8. 主机A向主机B再发送一条信息,之后断开连接。

9. 主机B停止捕获数据。依据“会话分析视图”显示结果,绘制本练习的数据报交互

图。

思考问题:

1. 为什么UDP协议的“校验和”要包含伪首部?

2. 比较UDP和IP的不可靠程度?

3. 如果将目的MAC地址换成某一个主机的MAC地址,是否所有主机还会收到这种报文?

4. UDP协议本身是否能确保数据报的发送和接收顺序?

5. 为什么在TCP连接过程中要使用三次握手?如不这样做可能会出现什么情况。

6. 解释TCP协议的释放过程?

7. 使用TCP协议对实时话音数据的传输有什么有缺点?使用UDP协议在传送数据文件时会有什么问题?

实验四应用层协议分析

【实验目的】

1. 掌握HTTP的报文格式

2. 掌握HTTP的工作原理

3. 掌握HTTP常用方法

1. 掌握DHCP的报文格式

2. 掌握DHCP的工作原理

3. 掌握FTP的工作原理

4. 掌握FTP一些常用命令的使用方法及用途

【实验环境】

该实验采用网络结构一

【实验步骤】

练习1 页面访问

各主机打开工具区的“拓扑验证工具”,选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。

本练习一人一组,现仅以主机A为例,其它主机参考主机A的操作。

1. 主机A清空IE缓存。

2. 主机A启动协议分析器开始捕获数据,并设置过滤条件(提取HTTP协议)。

3. 主机A启动IE浏览器,在“地址”框中输入http://服务器的ip/experiment,并连

接,服务器的ip默认为172.16.0.253。

4. 主机A停止捕获数据,分析捕获到的数据,并回答以下问题:

● 本练习使用HTTP协议的哪种方法?简述这种方法的作用。

练习2 页面提交

本练习一人一组,现仅以主机A为例,其它主机参考主机A的操作。

1. 主机B启动协议分析器开始捕获数据,并设置过滤条件(提取HTTP协议)。

2. 主机A启动IE浏览器,在“地址”框中输入“http://服务器的ip/experiment/

post.html”,并连接,服务器的ip默认为172.16.0.253。在返回页面中,填写“用户名”和“密码”,点击[确定]按钮。

3. 主机A停止捕获数据,分析捕获到的数据,并回答以下问题:

● 本练习的提交过程使用HTTP协议的哪种方法?简述这种方法的作用。

● 此次通信分几个阶段?每个阶段完成什么工作?

● 参考“会话分析”视图显示结果,绘制此次提交过程的报文交互图(包括TCP协

议)。

练习3 获取页面信息

本练习一人一组,现仅以主机A为例,其它主机参考主机A的操作。

1. 主机A启动实验平台工具栏中的“TCP工具”。

2. 主机A启动协议分析器开始捕获数据,并设置过滤条件(提取HTTP协议)。

3. 主机A在“TCP工具”上,选中“客户端”单选框,设置“IP地址”为服务器IP(默

认为172.16.0.253);设置“端口”为80;单击[连接]按钮来和服务器建立连接。4. 主机A在“TCP工具”上,设置“发送数据(文本)”为以下内容:

HEAD /experiment/ HTTP/1.1

Host: 172.16.0.253

点击[发送]按钮。(注:是回车换行)

点击[断开]按钮,断开TCP连接(由于不同http版本所遵循的规范不同,有些HTTP 服务器不需要断开操作)。

5. 主机A在“TCP工具”上的“显示数据(文本)”中察看服务器返回信息。

6. 主机A停止捕获数据,分析捕获到的数据。

练习4 使用DHCP获取IP地址

各主机打开工具区的“拓扑验证工具”,选择相应的网络结构,配置网卡后,进行拓扑验证,如果通过拓扑验证,关闭工具继续进行实验,如果没有通过,请检查网络连接。

本练习每台主机为一组。现仅以主机A所在组为例,其它组的操作参考主机A所在组的操作。

1. 记下本机的IP地址,在命令行方式下,输入下面的命令:

“netsh interface ip set address name=“本机可用网卡的接口名” source=dhcp”。

2. 启动协议分析器捕获数据,并设置过滤条件(提取DHCP协议)。

3. 在命令行方式下,输入命令“ipconfig -release”。

4. 在命令行方式下,输入命令“ipconfig -renew”。

6. 等待时间超过租用时间(上表中的“租借时间”的值)的50%后,察看捕获的数据包。练习5 模拟重新登录

本练习一人一组,现仅以主机A为例,其它主机参考主机A的操作。

1. 主机A启动协议编辑器,编辑一个DHCP Request数据包,其中:

MAC层:

源MAC地址:本机MAC地址

目的MAC地址:服务器MAC地址

IP层:

源IP地址:本机IP地址

目的IP地址:服务器IP地址(默认为172.16.0.253)

总长度:IP层及其上层协议长度

校验和:在其它所有字段填充完毕后计算并填充

UDP层:

源端口:68

目的端口:67

有效负载长度:UDP层及其上层协议长度

计算校验和,其它字段默认

DHCP层:

操作码:1

标志:0000

客户端IP地址:主机B的IP地址(产生分配冲突)

你的IP地址:0.0.0.0

客户端硬件地址:本机的MAC地址

追加选项块:

选项代码:53

长度:1

DHCP消息类型:3

2. 主机A启动协议分析器捕获数据并设置过滤条件(提取DHCP协议)。

3. 发送主机A编辑好的数据包。

4. 察看主机A捕获的数据。

● 各报文中字段“操作码”、“DHCP消息类型”的值分别是多少?

练习6 FTP的工作过程

本练习一人一组,现仅以主机A为例,其它主机参考主机A的操作。

1. 主机A启动协议分析器进行数据捕获并设置过滤条件(提取FTP data和FTP control 协议)。

2. 主机A登录FTP服务器:

在实验环境中的服务器(默认为172.16.0.253)已经启动,并提供一个公共帐号,用户名是:anonymous,口令:无。

在命令行提示符下运行:

(1)C:\>ftp 172.16.0.253

(2)在“User:”提示符后输入用户名:anonymous

(3)在“Password:”提示符后输入密码:无

(4)在客户端上运行一个简单的操作,如:ftp> dir

(5)在FTP提示符下输入“quit”退出FTP

3. 察看主机A捕获的数据,保存会话命令(方法:会话交互视图/单击右键/保存会话命令

菜单,保存为FTP.txt),并分析FTP的工作过程:

● FTP使用的TCP端口有哪些________________。

● 分析FTP报文格式。指出在捕获数据报文中含有用户名、密码的报文,是否可以看到用户名和密码?说明FTP的安全性?

● 分析FTP的工作过程,分析控制连接和数据连接是如何工作的,绘制出控制连接和数据连接的交互过程图。

思考问题:

1. 一个主页是否只有一个连接?

2. 同时打开多个浏览器窗口并访问一个WEB站点的不同页面时,系统是根据什么把返回的页面正确地显示到相应窗口的?

3. DHCP协议适合于什么情况下使用?请举例说明。

4. DHCP协议为何使用67、68两个熟知端口进行UDP通信?

5. 文件传送协议FTP的主要工作过程是怎样的?主进程和从属进程各起什么作用?

#(16课时)数据库实验指导书

《数据库原理及使用》实验指导书 (适用于计算机科学和技术、软件工程专业) 热风器4 计算机科学和技术学院 2011年12月 ⒈本课程的教学目的和要求 数据库系统产生于20世纪60年代末。30多年来,数据库技术得到迅速发展,已形成较为完整的理论体系和一大批实用系统,现已成为计算机软件领域的一个重要分支。数据库原理是计算科学和技术专业重要的专业课程。 本课程实验教学的目的和任务是使学生通过实践环节深入理解和掌握课堂教学内容,使学生得到数据库使用的基本训练,提高其解决实际问题的能力。 ⒉实验教学的主要内容 数据库、基本表、视图、索引的建立和数据的更新;关系数据库的查询,包括单表查询、连接查询、嵌套查询等;数据库系统的实现技术,包括事务的概念及并发控制、恢复、完整性和安全性实现机制;简单数据库使用系统的设计实现。 ⒊实验教学重点 本课程的实验教学重点包括: ⑴数据库、基本表、视图、索引的建立和数据的更新; ⑵SQL的数据查询; ⑶恢复、完整性和安全性实现机制; ⑷简单数据库使用系统的设计实现; 4教材的选用 萨师煊,王珊.数据库系统概论(第四版).北京:高等教育出版社.2006,5 实验1创建数据库(2学时) 实验目的 1.学会数据表的创建; 2.加深对表间关系的理解; 3.理解数据库中数据的简单查询方法和使用。 实验内容 一、给定一个实际问题,实际使用问题的模式设计中至少要包括3个基本表。使用问题是供应商给工程供应零件(课本P74)。 1.按照下面的要求建立数据库: 创建一个数据库,数据库名称可以自己命名,其包含一个主数据文件和一个事务日志文件。注意主数据文件和事务日志文件的逻辑名和操作系统文件名,初始容量大小为5MB,

(完整版)培训机构转让合同书

转让合同书 转让方:________________________ (以下简称甲方) 身份证号码:______________________________ 受让方:________________________ (以下简称乙方) 身份证号码:______________________________ 鉴于甲方有意将其所有的_____________ __ __ (以下简称托管班)按本协议规定的条款和条件转让给乙方,乙方愿意按同样的条件受让托管班。故此甲、乙双方本着平等互利、友好协商的原则,双方签订本协议。 一、转让托管班的基本情况: 托管班名称及在托人数:_____________________________________ 托管班地址:_____________________________________ 二、托管班转让 1、甲方同意出售而乙方同意收购托管班,包括该托管班所有的附带权益及权利。 2、合同签订并生效直至2018年9月30日期间,甲方继续在本托管班进行日常管理工 作,以保证托管班顺利平稳过渡至乙方管理。 3、甲方务必确保水电费无拖欠及现有的学生无任何的遗留问题,若出现此类情况,甲方 应负责解决,直至不影响双方利益及合同的执行。 4、甲方在收到先期转让费三日内,安排乙方和房东会面,完成租房协议的更改。 5、转让固定资产清单详见附一。 6、现有生源、兼全职及后勤教师名单及联系方式详见附二。 三、托管班转让价款及支付方式 1、甲方同意以人民币(大写)共计元整将托管班转让给乙方,包括转让费、 未使用的房租金、所有硬件设施和资产,乙方同意以此价格受让该托管班。 2、乙方承诺在本合同双方签字当日起日内向甲方先期支付转让费元整, 年月日支付第二笔转让费元整, 年月日支付剩余转让费元整,双方完成转让事宜。 四、甲方声明 1、甲方为本合同第二条所转让托管班的唯一所有权人。 2、甲方保证自本合同签订之日起至2018年9月30日止,帮助乙方做好学生、家长、 老师及其他工作人员的交接过渡工作。 3、托管班转让之前所有的债权、债务均由甲方负责; 五、乙方声明

实验指导书 实验二_SolidWorks建模1

实验二 SolidWorks 草绘特征和放置特征操作(一) 一、 实验目的 1. 掌握基本零件建模的一般步骤和方法 2. 掌握SolidWorks 草绘特征:拉伸凸台、拉伸切除、旋转凸台、旋转切除、扫描、 放样的操作方法。 3. 掌握放置(应用)特征:钻孔特征、倒角特征、圆角特征、抽壳特征、拔模斜度特 征、筋的操作方法 二、 实验内容 完成下列下列零件造型 三、 实验步骤 1. 连接件设计 完成如图 1 (1) (2) 2 所示。 图 1连接件 图 2草图 (3) 单击【拉伸凸台/ 框内选择【两侧对称】选项,在【深度】文本框内输入“54mm ”,单击【确定】按钮,如图 3所示。 图 3 “拉伸”特征 (4) 120°”,然后 在第二参考中选择图形的一条下边线。单击【确定】按钮,建立新基准面,如

错误!未找到引用源。所示。 (5) 1,选择“反转法线” 1,单选择 4所示。 图4草图 图4建立基准面 底面边线

(6) 单击【拉伸凸台/ 列表框内选择【给定深度】选项,在【深度】文本框内输入“12mm”,单击【确定】按钮,如图5所示。 图5“拉伸”特征 (7)选取基体上表面,单击【草图绘制】进入草图绘制,使用中心线工具在 上表面的中心位置绘制直线,注意不要捕捉到表面边线,如图6所示。 图 6 中心线 (8) 内输入“8mm”,在图形区域选择中心线,在属性管理器中选中【添加尺寸】、【选择链】、【双向】和【顶端加盖】复选框,选中【圆弧】单选按钮,单击【确定】按钮,标注尺寸,完成草图,如图7所示。 运用“等距实体”绘制草图 (8) -拉伸】属性管理器,在【终止条件】下拉 列表框内选择【完全贯穿】选项,单击【确定】按钮,如图8所示。

《编译原理》实验指导书-2015

武汉科技大学计算机科学与技术学院 编译原理实验指导书

实验一词法分析器设计 【实验目的】 1.熟悉词法分析的基本原理,词法分析的过程以及词法分析中要注意的问题。 2.复习高级语言,进一步加强用高级语言来解决实际问题的能力。 3.通过完成词法分析程序,了解词法分析的过程。 【实验内容】 用C语言编写一个PL/0词法分析器,为语法语义分析提供单词,使之能把输入的字符串形式的源程序分割成一个个单词符号传递给语法语义分析,并把分析结果(基本字,运算符,标识符,常数以及界符)输出。 【实验要求】 1.要求绘出词法分析过程的流程图。 2.根据词法分析的目的以及内容,确定完成分析过程所需模块。 3.写出每个模块的源代码,并给出注释。 4.整理程序清单及所得结果。 【说明】 运行成功以后,检查程序,并将运行结果截图打印粘贴到实验报告上。 辅助库函数scanerLib设计以及使用说明: 下面内容给出了一个辅助库函数的接口说明以及具体实现。 接口设计 //字符类 class Token { TokenType type; String str; Int line; } //词法分析结果输出操作类 class TokenWriter { ArrayList tokens; //用来记录所识别出来的token TokenWriter(); //构造函数指定输入文件名,创建文件输出流 V oid Add(Token); //将词法分析器中分析得到的Token添加到tokens中 WriteXML(); //将tokens写出到目标文件.xml中 } //词法分析操作词法分析生成文件接口<暂时不需要对该类的操作;下一步做语法分析的时候使用> class TokenReader

福建工程学院《实验指导书(数据库系统原理及应用)》

数据库系统原理 实验指导书 (本科)

目录 实验一数据定义语言 (1) 实验二SQL Sever中的单表查询 (3) 实验三SQL Serve中的连接查询 (4) 实验四SQL Serve的数据更新、视图 (5) 实验五数据控制(完整性与安全性) (7) 实验六语法元素与流程控制 (9) 实验七存储过程与用户自定义函数 (11) 实验八触发器 (12)

实验一数据定义语言 一、实验目的 1.熟悉SQL Server2000/2005查询分析器。 2.掌握SQL语言的DDL语言,在SQL Server2000/2005环境下采用Transact-SQL实现表 的定义、删除与修改,掌握索引的建立与删除方法。 3.掌握SQL Server2000/2005实现完整性的六种约束。 二、实验内容 1.启动SQL Server2000/2005查询分析器,并连接服务器。 2.创建数据库: (请先在D盘下创建DB文件夹) 1)在SQL Server2000中建立一个StuDB数据库: 有一个数据文件:逻辑名为StuData,文件名为“d:\db\S tuDat.mdf”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB; 有一个日志文件,逻辑名为StuLog,文件名为“d:\db\StuLog.ldf”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10% 2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。 3.设置StuDB为当前数据库。 4.在StuDB数据库中作如下操作: 设有如下关系表S:S(CLASS,SNO, NAME, SEX, AGE), 其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。 写出实现下列功能的SQL语句。 (1)创建表S; (2)刷新管理器查看表是否创建成功; (3)右击表S插入3个记录:95031班25号李明,男性,21岁; 95101班10号王丽,女性,20岁; 95031班座号为30,名为郑和的学生记录; (4)将年龄的数据类型改为smallint; (5)向S表添加“入学时间(comedate)”列,其数据类型为日期型(datetime); (6)对表S,按年龄降序建索引(索引名为inxage); (7)删除S表的inxage索引; (8)删除S表; 5.在StuDB数据库中, (1)按照《数据库系统概论》(第四版)P82页的学生-课程数据库创建STUDENT、COURSE 和SC三张表,每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。 并输入相关数据。 (2)将StuDB数据库分离,在D盘下创建DB文件夹下找到StuDB数据库的两个文件,进行备份,后面的实验要用到这个数据库。 6.(课外)按照《数据库系统概论》(第四版)P74页习题5的SPJ数据库。创建SPJ数据 库,并在其中创建S、P、J和SPJ四张表。每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。要作好备份以便后面的实验使用该数据库数据。 三、实验要求:

编译实验指导书(2017)

《编译原理》 实验指导书 太原理工大学计算机与软件学院 2017 年 3 月

《编译原理》实验 适用专业:计算机实验类别:专业实验 实验时数:8学时 一、实验课程的性质、目的和任务 1.培养学生初步掌握编译原理实验的技能。 2.验证所学理论、巩固所学知识并加深理解。 3.对学生进行实验研究的基本训练。 二、实验课程的内容、要求及学时分配 实验一、无符号数的词法分析程序(4学时) 内容:掌握词法分析的基本思想,并用高级语言编写无符号数的词法分析程序。 要求:从键盘上输入一串字符(包括字母、数字等),最后以“;”结束,编写程序识别出其中的无符号数。 无符号数文法规则可定义如下: <无符号数>→<无符号实数>│<无符号整数> <无符号实数>→<无符号整数>.<数字串>[E<比例因子>]│ <无符号整数>E<比例因子> <比例因子>→<有符号整数> <有符号整数>→[+│-]<无符号整数> <无符号整数>→<数字串> <数字串>→<数字>{<数字>} <数字>→0 1 2 3 (9) 读无符号数的程序流程图见下图

实验二、逆波兰式生成程序(4学时) 内容:掌握语法分析的基本思想,并用高级语言编写逆波兰式生成程序; 要求:利用逆波兰式生成算法编写程序,将从键盘上输入的算术表达式(中缀表达式)转化成逆波兰式。 逆波兰表达式的生成过程涉及到运算符的优先级,下表中列出几个常用运算 符的优先关系。 常用运算符优先关系矩阵 如上表所示的优先关系矩阵表示了+,-,*,/,↑,(,)等七种运算符之间的相互优先关系。“>、<、=”三种符号分别代表“大于”、“小于”、“相等”三种优先关系。左边的“=”与右边的“(”之间没有优先关系存在,所以表中为空白。 逆波兰表达式生成算法的关键在于比较当前运算符与栈顶运算符的优先关系,若当前运算符的优先级高于栈顶运算符,则当前运算符入栈,若当前运算符的优先级低于栈顶运算符,则栈顶运算符退栈。 下面给出了逆波兰表达式生成算法的流程图。(为了便于比较相邻运算符的优先级,需要设立一个工作栈,用来存放暂时不能处理的运算符,所以又称运算符栈)。

《数据库系统原理》实验指导书

《数据库系统原理》实验指导书 实验1 熟悉SQL Server 2000环境及数据库文件管理 一、实验目的 1、掌握登录SQL Server 2000的方法,熟悉SQL Server实用工具的使用; 2、了解SQL Serve数据库的存储结构,掌握估算数据库大小技术; 3、掌握创建数据库技术,掌握扩大和压缩数据库技术; 4、掌握使用企业管理器工具和T-SQL语句及系统存储过程对数据库进行管理。 二、实验要求 1、熟悉SQL Server 2000的工作环境,了解SQL Server主要管理工具的用途和使用方法。 2、掌握在SQL Server 2000环境下,利用企业管理器和T-SQL语言创建和管理数据库的方法。 三、实验设备、环境 设备:奔腾II或奔腾II以上计算机 环境:WINDOWS 98或WINDOWS NT、SQL SERVER 2000中文版 四、实验原理、方法 上机操作 五、实验步骤及内容 (一)实验步骤 1、教师讲授 2、教师演示 3、学生实际操作 (二)实验内容 1、熟悉SQL Server 2000管理工具 (1)企业管理器(Enterprise Manager) (2)查询分析器(Query Analyzer) (3)服务管理器(Service Manager) (4)事件探查器(Profiler) (5)导入和导出数据(Import and Export Data) (6)SQL Server其他管理工具 2、数据库文件管理 (1)数据库的创建和删除。 ①在企业管理器中建立一个图书读者库。图书读者数据库中将包括一个数据文件和一个日志文件,各文件的属性见表1-1。

培训班转让协议书

培训班转让协议书 转让方:_______ ________ (以下简称甲方) 身份证号码: 受让方:_________ ______ (以下简称乙方) 身份证号码: 鉴于,甲方有意将其所属的____ __ _ ________ (以下简称培训班)按本协议规定的条款和条件转让给乙方,乙方愿意按同样的条件受让培训班。故此,甲、乙双方本着平等互利、友好协商的原则,双方签订本协议。 一、转让培训班的基本情况 转让培训班名称:_____ __________ 所在地:___ ____________ 二、培训班转让 1、甲方同意将其培训班转让给乙方,乙方同意受让。 2、甲方同意出售而乙方同意购买培训班,包括该培训班下所有的附带权益及权利。 3、协议生效之后,甲方将对培训班不承担任何责任及义务。 三、培训班转让价款及支付方式 1、甲方同意根据本合同所规定的条件,以人民币(小写)元整,(大写)______ _________ 元整,将培训班转让给乙方,乙方同意以此价格受让该培训班。 2、乙方同意在本合同双方签字当日内向甲方支付全部价款_______________ 元。 四、甲方声明 1、甲方为本协议第二条所转让培训班的唯一所有权人。 2、自本协议生效之日起,甲方不再参与培训班任何事物, 不再参与培训班财产、利润分配。 3、房屋内现有装饰,设备(包括桌凳,柜子,黑板,风扇,沙发,茶几,盆景,打印机等等一切当日确认之物)全部归乙方所有。 4、转让费用包含房屋租凭押金3800元、以及4.3所提到的所有硬件费用以及转让费用。 五、乙方声明 1、从本协议生效之日起,乙方实际行使作为培训班负责人的权利,并履行相应的义务。 从本协议生效之日起,乙方依法享受利润和风险及亏损。 2、乙方将履行甲方原有房屋租赁合同中所规定的条款,并且定期交纳接手之后的租金、水电费等费用。租金由乙方与房东自行协商。 3、签协议起辅导班所有责任与甲方无关,一切责任归乙方。 六、违约责任 1、如协议一方不履行或严重违反本协议的任何条款,违约方须赔偿守约方的一切经济 损失。除协议另有规定外,守约方亦有权要求解除本协议及向违约方索取赔偿守约方因

R语言实验指导书(二)

R语言实验指导书(二) 2016年10月27日

实验三创建和使用R语言数据集 一、实验目的: 1.了解R语言中的数据结构。 2.熟练掌握他们的创建方法,和函数中一些参数的使用。 3.对创建的数据结构进行,排序、查找、删除等简单的操作。 二、实验内容: 1.向量的创建及因子的创建和查看 有一份来自澳大利亚所有州和行政区的20个税务会计师的信息样本 1 以及他们各自所在地的州名。州名为:tas, sa, qld, nsw, nsw, nt, wa, wa, qld, vic, nsw, vic, qld, qld, sa, tas, sa, nt, wa, vic。 1)将这些州名以字符串的形式保存在state当中。 2)创建一个为这个向量创建一个因子statef。 3)使用levels函数查看因子的水平。 2.矩阵与数组。

i.创建一个4*5的数组如图,创建一个索引矩阵如图,用这个索引矩 阵访问数组,观察结果。 3.将之前的state,数组,矩阵合在一起创建一个长度为3的列表。

4.创建一个数据框如图。 5.将这个数据框按照mpg列进行排序。 6.访问数据框中drat列值为3.90的数据。

三、实验要求 要求学生熟练掌握向量、矩阵、数据框、列表、因子的创建和使用。

实验四数据的导入导出 一、实验目的 1.熟练掌握从一些包中读取数据。 2.熟练掌握csv文件的导入。 3.创建一个数据框,并导出为csv格式。 二、实验内容 1.创建一个csv文件(内容自定),并用readtable函数导入该文件。 2.查看R语言自带的数据集airquality(纽约1973年5-9月每日空气质 量)。 3.列出airquality的前十列,并将这前十列保存到air中。 4.查看airquality中列的对象类型。 5.查看airquality数据集中各成分的名称 6.将air这个数据框导出为csv格式文件。(write.table (x, file ="", sep ="", http://biz.doczj.com/doc/4a5972105.html,s =TRUE, http://biz.doczj.com/doc/4a5972105.html,s =TRUE, quote =TRUE)) 三、实验要求 要求学生掌握从包中读取数据,导入csv文件的数据,并学会将文件导出。

编译程序实验指导书讲解教学提纲

编译程序实验指导书解讲. 编译程序实验指导书 实验目的:用C语言对一个C语言的子集编制一个一遍扫描的编译程序,以加深对编译原理的理解,掌握编译程序的实现方法和技术。 1.词法分析 1.1 实验目的 设计、编制并测试一个词法分析程序,加深对词法分析原理的理解。 1.2 实验要求 1.2.1 待分析的C语言子集的词法 1. 关键字

main if else int char for while 所有的关键字都是小写。 2.专用符号 = + - * / < <= > >= == != ; : , { } [ ] ( ) 3.其他标记ID和NUM 通过以下正规式定义其他标记: →letter(letter|digit) *ID →digit digit *NUM letter→a|…|z|A|…|Z digit→0|…|9… 4.空格由空白、制表符和换行符组成 空格一般用来分隔ID、NUM、专用符号和关键字,词法分析阶段通常被忽略。 1.2.2 各种单词符号对应的种别码 表1 各种单词符号的种别码 单词符号种别码单词符号种别码单词符号种别码 main 1 = 21 , 32 int 2 + 22 : 33 char 3 - 23 ; 34 if 4 * 24 > 35 else 5 / 25 < 36 for 6 ( 26 >= 37 while 7 ) 27 <= 38 ID 10 [ 28 == 39 MUN 20 ] 29 != 40 { 30 ‘\0' 1000 } 31 ERROR -1 1.2.3 词法分析程序的功能 输入:所给文法的源程序字符串。 输出:二元组(syn,token或sum)构成的序列。其中, . syn为单词种别码。 . Token为存放的单词自身字符串。 . Sum为整型常量。 具体实现时,可以将单词的二元组用结构进行处理。 例如,对源程序 main() { int i=10; while(i) i=i-1; } 的源文件,经词法分析后输出如下序列: (1,main) (26,() (27,)) (30,{} (2,int) (10,i) (21,=) (20,10) (34,;) (7,while) (26,() (10,i) (27,)) (10,i) (21,=) (10,i) (23,-) (20,1) (34,;) (31,))

数据库系统实验

实验指导书 班级:090402 姓名:郑锦坤

序言 数据库是数据管理的最新技术,是计算机科学的重要分支。通过学习重点让大家掌握数据库技术的程序设计思想和方法,学习开发管理系统的技术,并结合PB8.0以上版本和SQL SERVER 2000以上版本上机环境编程测试。 为了达到这个目的,这里安排五个实验单元。 实验报告的内容 1.题目 描述每个实验的内容是什么。 2.需求分析 用E-R图描述数据库的模式设计及每个关系模式的建立;描述数据字典及程序数据流;每个事件、函数或过程 的头和规格说明; 3.源程序清单和结果 源程序要加注释,要有测试数据及结果。

实验1:学习SQL 语句与SQL SERVER的数据库环境(4学时) 本次实验的主要目的在于学会使用SQL SERVER环境建 库的方法,学会SQL SERVER企业管理器和查询分析器的使用,通过数据库操纵环境,了解库的建立、表的建立、数据库 的查询实现方法。实验数据如下: Student SC

实验报告 1 日期: 一.SQL语句实验题目: 1.建立课程表 2.建立学生表 3.建立选课表 4.查询所有学生的详细信息

SELECT Student.SCLASS, Student.SNO,Student.SNAME, Student.SSEX, Student.SAGE , Student.SDEPT,http://biz.doczj.com/doc/4a5972105.html,O,SC.GRADE,http://biz.doczj.com/doc/4a5972105.html,AME,Course.CPNO,Course. CCREDIT FROM Course,Student,SC WHERE SC.SCLASS=Student.SCLASS AND SC.SNO=Student.SNO AND http://biz.doczj.com/doc/4a5972105.html,O=http://biz.doczj.com/doc/4a5972105.html,O 5.查询1班的学生号学及姓名 SELECT SNO,SNAME FROM Student WHERE SCLASS='1' 6.查询‘刘晨’的出生年 7.查询姓‘刘’的学生的详细情况

辅导班转让合同协议书范本

转让方(甲方): 顶让方(乙方): 甲、乙双方经友好协商,就大智慧辅导班转让事宜达成以下协议,并共同遵守: 一、甲方于年月日自愿将自己位于辅导班转让给乙方使用,并保证乙方同等享有甲方在原有房屋租赁合同中所享有的权利与义务。 二、辅导班转让给乙方后,乙方将履行甲方原有房屋租赁合同中所规定的条款,并且定期交纳租金、水电费等费用。 三、房屋内现有装饰,设备(除油烟机、灶台、洗衣机等房东所属物品和空调、自行车外)全部归乙方所有。 四、乙方一次性向甲方支付转让费共计人民币(大写)(包括硬件及学生 元、房租年月日-年月 日共个月元,房屋押金元)。 五、乙方可以无偿使用甲方的辅导班名称(大智慧辅导中心),乙方接手前该辅导班所有的一切债权、债务均由甲方负责;接手后的一切经营行为及产生的债权、债务均由乙方负责,与甲方无关。 六、甲方在此之前所有学生名单、学生联系信息、以及教材,资料无偿转让给乙方,并学生信息资料不能备份,同时,甲方不得在江南春城小区开设同类辅导班。 七、如有违约,违约方将赔偿对方上述转让费的%。

八、本合同一式份,双方各执份,自双方签字之日起生效。甲方签字: 乙方签字: 日期:

合同的订立方式具体包括了书面形式、口头形式以及其他形式等等,但不管是以哪种方式来订立合同的,此时都有一些事项是需要当事人了解注意的。 第一、注意合同名称与合同内容是否一致 有些公司使用合同统一文本,这本是好事,但由于对合同性质了解不细,会出现张冠李戴的事情。例如本是加工承揽合同,却使用买卖合同文本,为合同以后的履行和适用法律条款增添了争议。 第二、注意列明每项商品的单价 有些公司在买卖合同中,标的是多类商品,但却只在合同中明确各类商品的总价款,而不确定具体每种商品的单价,一旦合同部分履行后发生争议,就难以确定尚未履行的部分商品的价款。 第三、在合同中明确违约金和赔偿金计算方法 《合同法》虽然规定一方违约,另一方可以向其追索违约金或赔偿金,但如果合同中没有明确数额或计算方法,法院就会视为双方当时放弃违约金权利,而不予支持。增加赔偿实际损失的举证难度。 第四、确定管辖法院 合同的双方当事人可以在书面合同中协议选择被告住所地、合同履行地、合同签订地、原告住所地、标的物所在地法院管辖,但不得违反对级别管辖和专属管辖的规定。如果直接约定有难度,也可以约定:“如发生争议,双方均可向各自经营所在地法院提起诉讼。” 第五、注意用词严谨 例如合同中常见的约定:“合同在双方签字盖章后生效。”但是一方只签字没有盖章,在法院对方就可能会提出由于合同只签字没有盖章,

实验指导书实验二_SolidWorks建模1

实验二SolidWorks草绘特征和放置特征操作(一) 一、实验目的 1.掌握基本零件建模的一般步骤和方法 2.掌握SolidWorks草绘特征:拉伸凸台、拉伸切除、旋转凸台、旋转切除、扫描、放样的操 作方法。 3.掌握放置(应用)特征:钻孔特征、倒角特征、圆角特征、抽壳特征、拔模斜度特征、筋的 操作方法 二、实验内容 完成下列下列零件造型 三、实验步骤 1. 连接件设计 完成如图1所示模型。 (1)单击【新建】按钮一1,新建一个零件文件。 (2)选取前视基准面,单击【草图绘制】按钮一I,进入草图绘制,绘制草图,如图2 所示。 图1连接件图2草图 ⑶ 单击【拉伸凸台/基体】按钮,出现【拉伸】属性管理器,在【方向】下拉列表 框内选择【两侧对称】选项,在【深度】文本框内输入" 54mm ”,单击【确定】 按钮,如图3所示。 (4)单击【基准面】按钮一1,出现【基准面】属性管理器,其中第一参考选择图形下底面, 然后单击【两面夹角】按钮日,在【角度】文本框内输入"120°,然后在第二参考中选择 图形的一条下边线。单击【确定】按钮¥,,建立新基准面,如

错误!未找到引用源。所示。 图4建立基准面 (5) 在设计树中右击基准面 1选择“反转法线” 卜,然后再单击基准 面 1单选择 【草图绘制】按钮 ,进入草图绘制,单击【正视于】按钮 ,绘制草图,如图 4所示。 边线 底面 图4草图

(6) 单击【拉伸凸台/基体】按钮 ,出现【拉伸】属性管理 器,在【终止条件】下拉 列表框内选择【给定深度】选项,在【深度】文本框内输入“ 12mm ”,单击【确 定】按钮1 如图5所示。 (7) 选取基体上表面,单击【草图绘制】 按钮_1,进入草图绘制,使用中心线工具 上表面的中心位置绘制直线,注意不要捕捉到表面边线,如图 6所示。 图6中心线 (8) 单击【等距实体】按钮丄,出现【等距实体】属性管理器,在【等距距离】文本框 内输入 “8mm ”,在图形区域选择中心线, 在属性管理器中选中 【添加尺寸】、【选 择链】、【双向】和【顶端加盖】复选框,选中【圆弧】单选按钮,单击【确定】 按钮 ,标注尺寸,完成草图,如图 7所示。 律黑 __________________ 严 玄[B 总 -召 厂[.砲 r 韦歼左眛編◎也 17比自口 R an (A ) 广 Efetfi- 图_7运用“等距实体”绘制草图 (8)单击【拉伸切除】按钮 □,出现【切除-拉伸】属性管理器,在【终止条件】下拉 列表框内选择【完全贯穿】选项,单击【确定】按钮 ,如图8所示。 图5 “拉伸”特征

编译原理实验指导书(图)

编译原理 实 验 指 导 书

前言 编译原理是计算机科学与技术、软件工程等专业的主干课和必修课,由于这门课程相对抽象且内容较复杂,一直是比较难学的一门课程。在编译原理的学习过程中,实验非常重要,只有通过上机实验,才能使学生对比较抽象的课程内容产生一个具体的感性认识。 本书实验环境主要为C环境及一个词法分析器自动生成工具FLEX和一个语法分析器自动生成工具BISON。书中给出的参考源程序也是C源程序,但由于实验者熟悉精通的语言工具不尽相同,因而强求采用统一的编程语言编程是不现实的。实验者在掌握了编译程序各个阶段的功能和原理之后,不难借助使用其他自己熟悉的语言实现相关功能。 实验者在实验过程中应该侧重写出自己在算法分析、设计思路、实现功能或程序代码等方面的特色,写出设计和实现过程中遭遇到的难点和解决办法,可以不拘泥于实验指导给出的参考性设计思路,尽可能在深度和广度上加以拓展。只有这种各具特色的实验报告,才将更有利于体现实验者在创新思维和动手能力上的差异。 通过这些实验,能使学生对这些部份的工作机理有一个详细的了解,达到“知其然,且知其所以然”的目的。并可在C环境下对自动生成工具生成的词法、语法分析器进行编译调试。 由于手工生成词法和语法分析器的工作量太大,在实际中常用自动生成工具来完成之。这些工具中最著名的当属贝尔实验室的词法分析器生成工具LEX和语法分析器生成工具YACC。它们现已成为UNIX的标准应用程序同UNIX一起发行。与此同时GNU推出与LEX完全兼容的FLEX,与YACC完全兼容的BISON。这两个程序都在Internet上以源代码的形式免费发行,所以很容易在其它操作系统下重新编译安装。我们实验采用的就是for dos的FLEX和BISON。本书有关的编译工具及其源程序例子,可到BISON的网站上下载。关于FLEX和BISON的用法简介,参见附录,如需更详细的介绍,请参阅编译工具中帮助文件。

2013《数据库技术及应用》实验指导书资料

《数据库技术及应用》实验指导书

实验环境 1.软件需求 (1)操作系统:Windows 2000 Professional,或者Windows XP (2)数据库管理系统:SQL Server2000 (3)应用开发工具:Delphi7.0 (4)其它工具:Word 2.硬件需求 (1)PC机 (2)网络环境

基本需求信息 一、对某商场采购销售管理进行调研后,得到如下基本需求信息: 该商场有多名工作人员(主要是采购员和销售员),主要负责从供应商处采购商品,而后将商品销售给客户。采购员主要负责根据商场的销售情况确定要采购的商品,并与供应商联系,签订采购单。销售员主要负责将采购来的商品销售给客户,显然一个客户一次可能购买多种商品。一个供应商可以向该商场供应多种商品,而一种商品也可以由多个供应商供应。 商场的管理者每个月需要对该月已采购的商品和已销售的商品进行分类统计,对采购员和销售员的业绩进行考核,对供应商和客户进行等级评定,并计算商场利润。 二、E-R图 三、需要建立的数据表如下 1.供应商表:供应商ID,供应商名称,地区,信誉等级 2.供应表:供应商ID,商品ID,商品单价 3.商品表:商品ID,商品名称,商品库存量,商品均价 4.采购单表:采购单ID,采购员ID,供应商ID,采购总金额,签订日期 5.采购明细表:采购单ID,商品ID,采购数量,商品单价 6.销售单表:销售单ID,销售员ID,客户ID,销售总金额,签订日期 7.销售明细表:销售ID,商品ID,销售数量,商品单价,单价折扣 8.客户表:客户ID,客户名称,联系电话,客户等级 9.职员表:职员ID,职员姓名,职员类型

土工实验指导书及实验报告

土工实验指导书及实验报告编写毕守一 安徽水利水电职业技术学院 二OO九年五月

目录 实验一试样制备 实验二含水率试验 实验三密度试验 实验四液限和塑限试验 实验五颗粒分析试验 实验六固结试验 实验七直接剪切试验 实验八击实试验 土工试验复习题

实验一试样制备 一、概述 试样的制备是获得正确的试验成果的前提,为保证试验成果的可靠性以及试验数据的可比性,应具备一个统一的试样制备方法和程序。 试样的制备可分为原状土的试样制备和扰动土的试样制备。对于原状土的试样制备主要包括土样的开启、描述、切取等程序;而扰动土的制备程序则主要包括风干、碾散、过筛、分样和贮存等预备程序以及击实等制备程序,这些程序步骤的正确与否,都会直接影响到试验成果的可靠性,因此,试样的制备是土工试验工作的首要质量要素。 二、仪器设备 试样制备所需的主要仪器设备,包括: (1)孔径0.5mm、2mm和5mm的细筛; (2)孔径0.075mm的洗筛; (3)称量10kg、最小分度值5g的台秤; (4)称量5000g、最小分度值1g和称量200g、最小分度值0.01g的天平;

(5)不锈钢环刀(内径61.8mm、高20mm;内径79.8mm、高20mm或内径61.8mm、高40mm); (6)击样器:包括活塞、导筒和环刀; (7)其他:切土刀、钢丝锯、碎土工具、烘箱、保湿器、喷水设备、凡士林等。 三、试样制备 (一)原状土试样的制备步骤 1、将土样筒按标明的上下方向放置,剥去蜡封和胶带,开启土样筒取土样。 2、检查土样结构,若土样已扰动,则不应作为制备力学性质试验的试样。 3、根据试验要求确定环刀尺寸,并在环刀内壁涂一薄层凡士林,然后刃口向下放在土样上,将环刀垂直下压,同时用切土刀沿环刀外侧切削土样,边压边削直至土样高出环刀,制样时不得扰动土样。 4、采用钢丝锯或切土刀平整环刀两端土样,然后擦净环刀外壁,称环刀和土的总质量。 5、切削试样时,应对土样的层次、气味、颜色、夹杂物、裂缝和均匀性进行描述。 6、从切削的余土中取代表性试样,供测定含水率以及颗粒分析、界限含水率等试验之用。

编译程序实验指导书讲解教学提纲

编译程序实验指导书 讲解

编译程序实验指导书 实验目的:用C语言对一个C语言的子集编制一个一遍扫描的编译程序,以加深对编译原理的理解,掌握编译程序的实现方法和技术。 1.词法分析 1.1 实验目的 设计、编制并测试一个词法分析程序,加深对词法分析原理的理解。 1.2 实验要求 1.2.1 待分析的C语言子集的词法 1. 关键字 main if else int char for while 所有的关键字都是小写。 2.专用符号 = + - * / < <= > >= == != ; : , { } [ ] ( ) 3.其他标记ID和NUM 通过以下正规式定义其他标记: ID→letter(letter|digit)* NUM→digit digit* letter→a|…|z|A|…|Z digit→0|…|9… 4.空格由空白、制表符和换行符组成 空格一般用来分隔ID、NUM、专用符号和关键字,词法分析阶段通常被忽略。 1.2.2 各种单词符号对应的种别码 表1 各种单词符号的种别码 单词符号种别码单词符号种别码单词符号种别码 main 1 = 21 , 32 int 2 + 22 : 33 char 3 - 23 ; 34 if 4 * 24 > 35 else 5 / 25 < 36 for 6 ( 26 >= 37 while 7 ) 27 <= 38 ID 10 [ 28 == 39 MUN 20 ] 29 != 40 { 30 ‘\0’ 1000 } 31 ERROR -1

1.2.3 词法分析程序的功能 输入:所给文法的源程序字符串。 输出:二元组(syn,token或sum)构成的序列。其中, . syn为单词种别码。 . Token为存放的单词自身字符串。 . Sum为整型常量。 具体实现时,可以将单词的二元组用结构进行处理。 例如,对源程序 main() { int i=10; while(i) i=i-1; } 的源文件,经词法分析后输出如下序列: (1,main) (26,() (27,)) (30,{} (2,int) (10,i) (21,=) (20,10) (34,;) (7,while) (26,() (10,i) (27,)) (10,i) (21,=) (10,i) (23,-) (20,1) (34,;) (31,)) 1.3 词法分析程序的主要算法思想 算法的基本任务是从字符串表示的源程序中识别出具有独立意义的单词符号,其基本思想 是根据扫描到的单词符号的第一个字符的种类,拼出相应的单词符号。 1. 主程序示意图 主程序示意图如图1所示。 图1 词法分析主程序示意图 其中初值包括如下两方面: (1)关键字表初值 关键字作为特殊标识符处理,把它们预先安排在一张表格中(称为关键字表),当扫描程序识 别出标识符时,查关键字表。如能查到匹配的单词,则该单词为关键字,否则为一般标识符。关键字表为一个字符串数组,其描述如下:

数据库实验指导书++数据库系统概论(第四版)++王珊、萨师煊

目录 实验一熟悉POWER DESIGNER (2) 实验二SQL SERVER 2000的安装与使用 (6) 实验三创建数据库、表 (17) 实验四SQL SERVER2000查询分析器 (29) 实验五SQL语言的DDL (38) 实验六SQL语言的DML初步 (40) 实验七DML的数据查询 (43) 实验八SQL语言综合练习 (48) 实验九嵌入式SQL ...................... 错误!未定义书签。实验十数据库设计....................... 错误!未定义书签。

实验一熟悉Power Designer 一、实验目的 1、掌握安装并破解PD的方法。 2、通过阅读和分析应用实例“学生选课系统CDM”,了解和熟悉Power Designer CDM及其相关知识。 3.掌握运用Power Designer工具建立CDM的方法。 4.初步掌握从Power Designer CDM生成相应的PDM的方法。 二、实验内容及实验步骤 1、PD环境的介绍 Power Designer的4种模型文件: (1) 概念数据模型(CDM) CDM 表现数据库的全部逻辑的结构,与任何的软件或数据储藏结构 无关。一个概念模型经常包括在物理数据库中仍然不实现的数据对 象。它给运行计划或业务活动的数据一个正式表现方式。 (2)物理数据模型(PDM) :PDM 叙述数据库的物理实现。 藉由PDM ,你考虑真实的物理实现的细节。你能修正PDM 适合你的表现或物理约束。 (3)面向对象模型(OOM) 一个OOM包含一系列包,类,接口, 和他们的关系。这些对象一起形成所有的( 或部份) 一个软件系统的逻辑的设计视图的类结构。 一个OOM本质上是软件系统的一个静态的概念模型。 (4)业务程序模型(BPM) BPM 描述业务的各种不同内在任务和内在流程,而且客户如何以这些任务和流程互相影响。BPM 是从业务合伙人的观点来看业务逻辑和规则的概念模型,使用一个图表描述程序,流程,信息和合作协议之间的交互作用 2、创建CDM(以学生选课系统为例) (1)新建一个CDM,命名为CssCdm(css,Course SelectionSystem ) (2)创建“学生”、“课程”实体和“选课”联系,并命名 (3)为各实体和联系创建属性 学生(学号,姓名,性别,年龄)

培训班转让协议

达县南外鹏程学校承包协议书 方(甲方):_______________ 身份证号码:__________________ 承包方(乙方):_______________ 身份证号码:___________________ 鉴于,甲方有意将其所属的达县鹏程学校(以下简称培训班)按本协议规定的条款和条件转让给乙方,乙方愿意按同样的条件受让培训班。故此,甲、乙双方本着平等互利、友好协商的原则,双方签订本协议。 一、转让培训班的基本情况: 转让培训班名称:达县鹏程学校 培训班所在地:达县南外镇三岔路口建设银行家属院3楼。 二、甲方遵从本协议约定,将鹏程学校转让给乙方,乙方同意受让;甲方保证乙方同等享有甲方在原有房屋租赁合同中所享有的权利与义务。 三、甲方与城关村委会已签订了房屋租赁合同,租期到_____年_____月______日止,年租金为_________元人民币(大写:______________),租金为每年交付一次。培训班转让给乙方后,乙方同意代替甲方向房东履行原有租赁合同中所规定的条款,并且每年定期交纳租金及该合同所约定的应由甲方交纳的水电费及其他各项费用。 四、转让后培训班现有的空调、桌椅、教具、家具、装修、装饰及其他所有设备全部归乙方免费使用,不得私自买卖和破坏,如果出现损坏的现象,乙方要按照物品的市场价格对甲方进行赔偿。 五、乙方在_______年_______月_______日前一次性向甲方支付转让费共计人民币_______元(大写:_________________),(包括培训班租金________元和房屋租金___________元)。第二年乙方交付甲方转让租金共计_________此外甲方不得再向乙方索取任何其他费用。 六、

《面向对象程序设计》实验指导书(实验二)

实验二类与对象㈡——对象初始化、对象数据与指针 一、实验目的 1.理解构造函数、析构函数的意义及作用,掌握构造函数、析构函数的定义及调用时间,熟悉构造函数的种类; 2.理解this指针及使用方法,熟悉对象数组、对象指针、对象引用的定义及使用方法,熟悉对象作为函数参数的使用方法; 3.熟悉类与对象的应用及编程。 二、实验学时 课内实验:2课时课外练习:2课时 三本实验涉及的新知识 ㈠构造函数与析构函数 在C++中,提供了两个特殊的成员函数,即构造函数和析构函数。 构造函数用于对象的初始化,即在定义一个类对象时,计算机在给对象分配相应的存储单元的同时,为对象的数据成员赋初值。 析构执行的是与构造函数相反的操作,用于撤销对象的同时释放对象所占用的内存空间。 1.构造函数 ⑴构造函数的定义 格式: 类名(形参表) { 构造函数体} ⑵构造函数的调用 构造函数的调用是在定义对象时调用的。 格式:类名对象名(实参表); 类名对象名=构造函数名(实参表); ⑶说明 ①构造函数必须与类同名。 ②构造函数没有返回值,但不能在构造函数前加void类型符(其他没有返回值的成员函数必须加类型符void)。 ③在实际应用中,在定义类时通常应定义一至多个构造函数(重载),以对各数据成员进行初始化;如果不给出构造函数,系统将自定义一个构造函数。 ④构造函数可以可以带参数,也可不带任何参数(称无参构选函数),还可以使用缺省参数。 ⑤不能象普通成员函数一样单独调用。 2.析构函数 ⑴析构函数的定义 格式: ~类名(void) { 析构函数体} ⑵析构函数的调用 析构函数是在撤销对象时自动调用的。 ⑶说明

相关主题