内容发布更新时间 : 2024/11/17 23:26:18星期一 下面是文章的全部内容请认真阅读。
---
实 验 报 告
-
实验名称 :计算机网络课程设计 学生姓名 : 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 报,打印并写入文件:报文的版本、协议、源和目