计算机网络课程设计_报告-(23795)

---

实 验 报 告

-

实验名称 :计算机网络课程设计 学生姓名 : xxxxxxxxxxxxxxx 专业: xxxxxxxxxxxxxxx 班级: xxxxxxxxxxxxxxx

学号: xxxxxxxxxxxxxxx

指导教师 :xxxxxxxxxxxxxxx 实验成绩 : 实验地点 :

实验时间 : 2016 年 5

月 6 日

---

-

一、实验目的与实验要求

1、实验目的

将书本上抽象的概念与具体实现技术结合,通过网络软件编程的实践,深入

理解理论课上学习到的

ARP、IP、TCP 等重要网络协议的原理,通过自己动手

编程封装与发送这些数据包, 加深对网络协议的理解, 掌握协议帧的结构和工作

原理及其对协议栈的贡献。

2、实验要求

网络课程设计包含两个部分的内容:

题目一是数据包的封装发送和解析(

ARP/IP/TCP),要求使用 Winpcap 技术和 Socket 技术,根据 ARP/IP/TCP 帧的结构,封装数据包发送到局域网中。另外要捕获网络中的 TCP/IP/ARP 数据包,解析数据包的内容,并将结果显示,并同

时写入日志文件。

题目二是从可选题目中选择一个,可选题目均是网络应用小程序,要求小组

使用网络编程技术设计并实现一个网络应用程序, 加深对网络协议协的理解, 并

锻炼网络编程能力。

二、实验设备(环境)及要求

1、实验硬件设备:

计算机型号:联想 ThinkPad T430u 处理器型号: Intel i5 主频: 1.8Hz

网卡型号: (1)Realtek PCIe GBE (2)Broadcom 802.11n

2、实验软件要求:

操作系统: Windows10

---

-

应用软件: Visual Studio 2015 Pro

3、小组成员及分工:

三、实验内容与步骤

1、实验 1:数据包的封装发送和解析(

ARP/IP/TCP)

(1)实验内容

1) 程序目标:

根据 IP 帧的结构,封装 IP 数据包发送到局域网中。 并捕获网络中的 IP 数据包,解析数据包的内容,并将结果显示,并同时写入日志文件。

2) 程序功能:以

命令行形式运行

在标准输出中显示捕获的 IP 报文的首部字段的内容。

使用 winpcap 访问网卡,手动封装 定义 IP 首部的数据结构

填充数据包,发送数据包,捕获数据包使用 winpcap,捕获 IP 数据包

(2)主要步骤

1) 总体设计:

a. 获取设备列表并打印,打开所选择的适配器;

b. 准备工作:定义 ip 相关的结构体、打开要存放结果的文件,设置过滤器,手写

ip 数据报(内容有无效的 MAC 源和目的地址, 和均为本机地址的 ip 源地址和目的地址,即发给自己一个 ip 报文),设置抓到数据报的解析和输出到文件的操作函数(解析 ip 报,打印并写入文件:报文的版本、协议、源和目

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4