搜档网
当前位置:搜档网 › 计算机网络课程设计IP数据包解析

计算机网络课程设计IP数据包解析

计算机网络课程设计IP数据包解析
计算机网络课程设计IP数据包解析

目录

1、课程设计目的 (1)

2、课程设计要求 (2)

3、程序设计分析 (2)

3.1 网卡设置 (2)

3.2 使用套接字 (2)

3.2.接收数据包 (3)

3.3 定义IP头部的数据结构 (3)

3.4 IP包的解析 (4)

3.5 协议的定义 (4)

3.6捕获处理 (5)

4、运行结果 (5)

5、总结 (6)

6、课程设计参考资料 (6)

7、源程序代码 (8)

1、课程设计目的

本章课程设计的目的就是设计一个解析IP数据包的程序,并根据这个程序,说明IP数据包的结构及IP协议的相关问题,从而对IP层的工作原理有更好的理解和认识。

2、课程设计要求

本设计的目标是捕获网络中的IP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。

程序的具体要求如下:

1)以命令行形式运行:ipparse logfile,其中ipparse是程序名, 而logfile 则代表记录结果的日志文件。

2)在标准输出和日志文件中写入捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。

3)当程序接收到键盘输入Ctrl+C时退出

3、程序设计分析

3.1 网卡设置

为了获取网络中的IP数据包,必须对网卡进行编程,在这里使用套接字(socket)进行编程。但是,在通常情况下,网络通信的套接字程序只能响应与自己硬件地址相匹配的数据包或是以广播形式发出的数据包。对于其他形式的数据包,如已到达网络接口,但却不是发送到此地址的数据包,网络接口在骓投递地

址并非自身地址之后将不引起响应,也就是说应用程序无法收取与自己无关的数据包。我们要想获取网络设备的所有数据包,就是需要将网卡设置为混杂模式。

3.2 使用套接字

套接字分为三种,即流套接字(Stream socket)、数据报套接字(Datagram Socket)

和原始套接字(Raw Socket)。要进行IP层数据包的接收和发送,应使用原始套接字。创建原始套接字的代码如下:

Socket sock:

Sock=wsasocket(af_inet,sock_raw,ipproto-ip,null,0,wsa-fl ag-overlapped):

本设计不用考虑超时情况。

创建套接后,IP头就会包含在接收数据包中。然后,我可以设置IP头操作选项,调用setsockopt函数。其中flag设置为true,并设定IP-HDRINCL选项,表明用户可以亲自对IP头进行处理。最后使用bind()函数将socket绑定到本地网卡上。绑定网卡后,需用WSAIoctl()函数把网卡设置为混杂模式,使网卡能够接收所有的网络数据。如果接收的数据包中的协议类型和定义的原始套接字匹配,那么接收的数据就拷贝到套接字中,因此,网卡就可以接收所有经过的IP 包。

3.2.2 接收数据包

在程序中可使用recv()函数接收经过的IP包。该函数有四个参数,第一个参数接收操作所用的套接字描述符;第二个参数接收缓冲区的地址;第三个参数接收缓冲区的大小,也就是所要接收的字节数;第四个参数是一个附加标志,如

果对所发送的数据没特殊要求,直接设为0。因为IP数据包的最大长度是65535B,因此缓冲区的大小不能小于65535B。设置缓冲区后,可利用循环来反复监听接收IP包,用recv()函数实现接收功能。

3.3 定义IP头部的数据结构

程序需要定义一个数据结构表示IP头部。其代码如下:

struct IP_HEADER

{

unsigned short ip_version, /*IP的版本号 */

ip_hdr_len; /*IP包头的长度*/

ip_tos; /*IP包的服务类型*/

ip_total_len; /*IP包的总长度*/

ip_id; /*IP包的分段标识*/

ip_flags; /*IP包的分段标志*/

ip_frag_offset; /*IP包的分段偏移*/

ip_ttl; /*IP包的生存时间*/

ip_proto; /*IP包的高层协议*/

ip_hdr_chksum; /*IP包的校验和*/

struct IPADDRESS ip_src_addr; /*IP包的源IP地址*/

ip_dest_addr; /*IP包的目的IP地址*/ }ipheader;

3.4 IP包的解析

解析IP包的字段有两种策略。针对长度为8位、16位和32位的字段(或子字段)时,可以利用IP-HEADER的成员直接获取。要解析长度不是8位倍数的字段(或子字段)时,可以利用C语言中的移位以人、及与、或操作完成。

3.5 协议的定义

(包含相应的头文件#include #include):

DWORD dwIoControlCode=SIO_RCVALL, /*接收所有的IP包*/

dwProtocol=IPPROTO_IP; /*协议类型为IP*/

3.6捕获处理

1.加载 Winsock;

2.创建一个接收原始IP包的socket连接;

3.绑定到一个接口;

4.进行WSAIoctl设置,接收所有的IP数据包。

代码如下:

if (WSAIoctl(s, dwIoControlCode, &optval, sizeof(optval),

NULL, 0, &dwBytesRet, NULL, NULL) == SOCKET_ERROR)

5.接着设定一个线程进行捕获:

(1)创建一个接收IP包的链表头;

(2)设置一个标识,为真,则不断进行IP包的捕获;

(3)建立一个新的结点,将捕获的数据包加入到该结点;

(4)如果链表的长度达到指定的长度,创建一个线程对该链表的IP包进行解析;再设置一个在IP数据包链表不足给定的长度,而又中止IP捕获时,对链表的处理;

计算机网络课程设计题目

计算机网络课程设计 一. 中小型千兆网吧组建 内容及要求: 用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

解析IP数据包课程设计

课程设计任务书

目录1.实验目的2.实验要求3.预备知识4.课程设计分析5.实现过程6.程序流程图7.相关扩展8.实习体会9.参考文献

一.实验目的: 设计一个解析IP数据包的程序,并根据这个程序,说明IP数据包的结构及IP协议的相关问题,从而IP层的工作原理有更好的理解和认识. 二.实验要求: 本设计的目标是捕获网络中数据包,解析数据包的内容,将、结果显示在标准输出上,并同时写入日志文件. 程序的具体要求如下: 3)以命令行形式运行:ipparse logfile,其中ipparse是程序名,而logfile则代表记录结果的日 志文件. 4)在标准输出和日志文件中写入捕获的IP数据包的版本,头长度,服务类型,数据包总长度, 数据包标识,分段标志,分段偏移值,生存时间,上层协议类型,头校验和,源IP地址和目的IP地址等内容. 当程序接收到键盘输入Ctrl+C时退出. 三.预备知识 互联网络层是TCP/IP协议参考模型中的关键部分.IP协议把传输层送来的消息组装成IP数据包,并把IP数据包传送给数据链层.IP协议在TCP/IP协议族中处于核心地位,IP协议制定了统一的IP数据包格式,以消除个通信子网中的差异,从而为信息发送方和接收方提供了透明的传输通道.编制本程序前,首先要对IP包的格式有一定了解,图1给出了IP协议的数据包格式. IP数据包的第一个字段是版本字段,其度是4位,表示所使用的IP协议的版本.目前的版本是IPV4,版本字段的值是4,下一代版本是IPV6,版本字段值是6.本程序主要针对版本是IPV4的数据包的解析. 报头标长字段为4位,它定义了以4B为一个单位的IP包的报文长度.报头中除了选项字段和填充域字段外,其他各字段是定长的.因此,IP数据包的头长度在20—40B之间,是可变的. 0 4 8 16 19 24 图1 IP数据包的格式 服务类型字段共8位,用于指示路由器如何处理该数据包.该字段长度由4位服务类型(TOS)子域和3位优先级子域组成,1位为保留位,该字段结构如图2所示. B7 b6 b5 b4 b3 b2 b1 b0

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

课程设计报告 ( 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日

TCPIP实验之IP数据包分析--

TCP/IP协议与编程实验 姓名: 班级: 学号: 实验题目用Wireshark抓包分析ip数据包 一、实验目的 1、了解并会初步使用Wireshark,能在所用电脑上进行抓包 2、了解IP数据包格式,能应用该软件分析数据包格式 3、查看一个抓到的包的内容,并分析对应的IP数据包格式 二、实验内容 Wireshark 是网络包分析工具。网络包分析工具的主要作用是尝试捕获网络包,并尝试显示包的尽可能详细的情况。 实验步骤: 1、打开wireshark,选择接口选项列表。或单击“Capture”,配置“option” 选项。

2、设置完成后,点击“start”开始抓包: 3、显示结果: 3、选择某一行抓包结果,双击查看此数据包具体结构。

4、捕捉IP数据报。 ① 写出IP数据报的格式。 IP数据报首部的固定部分中的各字段含义如下: (1)版本占4位,指IP协议的版本。通信双方使用的IP协议版本必须一致。目前广泛使用的IP协议版本号为4(即IPv4)。 (2)首部长度占4位,可表示的最大十进制数值是15。请注意,这个字段所表示数的单位是32位字长(1个32位字长是4字节),因此,当IP的首部长度为1111时(即十进制的15),首部长度就达到60字节。当IP分组的首部长度不是4字节的整数倍时,必须利用最后的填充字段加以填充。因此数据部分永远在4字节的整数倍开始,这样在实现IP协议时较为方便。首部长度限制为60 字节的缺点是有时可能不够用。但这样做是希望用户尽量减少开销。最常用的首部

3)区分服务占8位,用来获得更好的服务。这个字段在旧标准中叫做服务类型,但实际上一直没有被使用过。1998年IETF把这个字段改名为区分服务 DS(Differentiated Services)。只有在使用区分服务时,这个字段才起作用。 (4)总长度总长度指首部和数据之和的长度,单位为字节。总长度字段为16位,因此数据报的最大长度为216-1=65535字节。长度就是20字节(即首部长度为0101),这时不使用任何选项。 (5)标识(identification) 占16位。IP软件在存储器中维持一个计数器,每产生一个数据报,计数器就加1,并将此值赋给标识字段。但这个“标识”并不是序号,因为IP是无连接服务,数据报不存在按序接收的问题。当数据报由于长度超过网络的MTU而必须分片时,这个标识字段的值就被复制到所有的数据报的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报。 (6)标志(flag) 占3位,但目前只有2位有意义。 标志字段中的最低位记为MF(More Fragment)。MF=1即表示后面“还有分片”的数据报。MF=0表示这已是若干数据报片中的最后一个。 标志字段中间的一位记为DF(Don’t Fragment),意思是“不能分片”。只有当DF=0时才允许分片。 7)片偏移占13位。片偏移指出:较长的分组在分片后,某片在原分组中的相对位置。也就是说,相对用户数据字段的起点,该片从何处开始。片偏移以8 个字节为偏移单位。这就是说,每个分片的长度一定是8字节(64位)的整数倍。 (8)生存时间占8位,生存时间字段常用的的英文缩写是TTL(Time To Live),表明是数据报在网络中的寿命。由发出数据报的源点设置这个字段。其目的是防止无法交付的数据报无限制地在因特网中兜圈子,因而白白消耗网络资源。最初的设计是以秒作为TTL的单位。每经过一个路由器时,就把TTL减去数据报在路由器消耗掉的一段时间。若数据报在路由器消耗的时间小于1秒,就把TTL值减1。当TTL值为0时,就丢弃这个数据报。 #TTL通常是32或者64,scapy中默认是64 (9)协议占8位,协议字段指出此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个处理过程。(在scapy中,下层的这个protocol一般可以从上曾继承而来,自动填充,我们一般可以省略不填此项) (10)首部检验和占16位。这个字段只检验数据报的首部,但不包括数据部分。这是因为数据报每经过一个路由器,路由器都要重新计算一下首部检验和

实验4_IP协议分析

实验4 IP协议分析 在这个实验里,我们将研究IP协议,通过执行traceroute程序来分析IP数据包发送和接收的过程。我们将研究IP数据包的各个字段,详细学习IP数据包的分片。 一、捕获traceroute 为了产生一个IP数据包,我们将使用traceroute程序来向一些目的地发送不同大小的数据包,这个软件我们在第一个实验已作过简单的尝试了。 但我们试图在IP头部首先发送一个或者更多的具有TTL的数据包,并把TTL的值设置为1;然后向同一个目的地发送一系列具有TTL值为2的数据包;接着向同一个目的地发送一系列具有TTL值为3的数据包等等。路由器在每次接收数据包时消耗掉一个TTL,当TTL达到0时,路由器将会向源主机返回一个ICMP的消息(类型为11的TTL溢出),这样一个TTL值为1的数据包将会引起路由器从发送者发回一个ICMP的TTL溢出消息产生一跳,TTL值为2的数据包发送时会引起路由器产生两跳,TTL值为3的数据包则会引起路由器产生3跳。基于这种方式,主机可以执行traceroute观察ICMP的TTL溢出消息,记录每个路由器的ICMP的溢出消息的源IP地址,即可标识出主机和目的地之间的所有路由器。 我们要运行traceroute让它发送多种长度的数据包,由Windows提供的tracert程序不允许改变由tracert程序发送的ICMP的回复请求消息的大小,在Windows下比较好的一个是pingplotter,它可以在以下网站下载共享版本(现在已下载好存在共享文件夹的压缩包中): 安装pingplotter标准版(你有一个30天的试用期),通过对你所喜欢的站点执行一些traceroute来熟悉这个工具。ICMP回复请求消息的大小可以在pingplotter中设置:Edit-> Options->Default Setting->enginet,在packet size字段中默认包的大小是56字节。pingplotter 发送一系列TTL值渐增的包时,Trace时间间隔的值和间隔的个数在pingplotter中能够设置。按下面步骤做: 1启动Iris,开始包捕获; 2启动pingplotter,然后在“Address to Trace”窗口输入目的地目标的名字: 172.16.1.1 (1岛输入172.16.6.1) 在“# of times to Trace”区域输入3。然后选择Edit-> Options->Default Setting->engine,确认在packet size字段的值为56,点OK。然后按下 Trace按钮。你看到的pingplotter窗口类似如上:

计算机网络课程设计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.课程设计说明书

解析IP数据包课程设计报告

成绩评定表

课程设计任务书

目录 1 课程设计目的 (1) 2 课程设计要求 (2) 3 相关知识 (3) 4 课程设计分析 (6) 5 程序代码 (11) 6 运行结果与分析 (18) 7 参考文献 (18)

1 课程设计目的 IP数据包是网络成传输的基本数据单元,熟悉IP数据包结构对于理解网络工作原理具有重要意义。本课程设计的主要目的是通过接受与解析IP数据包,了解IP数据包的基本结构与IP协议的基本功能。

2 课程设计要求 根据后面介绍的IP数据包结构,编写程序接收并解析IP数据包。 1)以命令行形式运行; ParsePacket log_file 其中,ParsePacket为程序名,log_file为日志文件名。 2)输出内容:IP数据包的各字段值,包括版本、头部长度、服务类型、总长度、标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址 和目的IP地址等。 3)当程序接收到键盘输入Ctrl+C时退出。

3相关知识 互联网络层是TCP/IP协议参考模型中的关键部分.IP协议把传输层送来的消息组装成IP数据包,并把IP数据包传送给数据链层.IP协议在TCP/IP协议族中处于核心地位,IP 协议制定了统一的IP数据包格式,以消除个通信子网中的差异,从而为信息发送方和接收方提供了透明的传输通道.编制本程序前,首先要对IP包的格式有一定了解,图1给出了IP 协议的数据包格式. IP数据包的第一个字段是版本字段,其度是4位,表示所使用的IP协议的版本.目前的版本是IPV4,版本字段的值是4,下一代版本是IPV6,版本字段值是6.本程序主要针对版本是IPV4的数据包的解析. 报头标长字段为4位,它定义了以4B为一个单位的IP包的报文长度.报头中除了选项字段和填充域字段外,其他各字段是定长的.因此,IP数据包的头长度在20—40B之间,是可变的. 0 4 8 16 19 24 31(位) 图3.1 IP数据包的格式 服务类型字段共8位,用于指示路由器如何处理该数据包.该字段长度由4位服务类型(TOS)子域和3位优先级子域组成,1位为保留位,该字段结构如图2所示. 图3.1 服务类型字段结构

IP及IPSEC协议数据包的捕获与分析

IP及IPSEC协议数据包的捕获与分析

IP及IPSEC协议数据包的捕获与分析 为了掌握掌握IP和IPSEC协议的工作原理及数据传输格式,熟悉网络层的协议。我进行了以下实验:首先用两台PC互ping并查看其IP报文,之后在两台PC上设置IPSEC互ping并查看其报文。最终分析两者的报文了解协议及工作原理。 一、用两台PC组建对等网: 将PC1与PC2连接并分别配置10.176.5.119和10.176.5.120的地址。如图1-1所示。 图1-1 二、两PC互ping: IP数据报结构如图1-2所示。 图1-2 我所抓获的报文如图1-3,图1-4所示:

图1-3 请求包 图1-4 回应包 分析抓获的IP报文: (1)版本:IPV4 (2)首部长度:20字节 (3)服务:当前无不同服务代码,传输忽略CE位,当前网络不拥塞

(4)报文总长度:60字节 (5)标识该字段标记当前分片为第1367分片 (6)三段标志分别指明该报文无保留、可以分段,当前报文为最后一段 (7)片偏移:指当前分片在原数据报(分片前的数据报)中相对于用户数据字段 的偏移量,即在原数据报中的相对位置。 (8)生存时间:表明当前报文还能生存64 (9)上层协议:1代表ICMP (10)首部校验和:用于检验IP报文头部在传播的过程中是否出错 (11)报文发送方IP:10.176.5.120 (12)报文接收方IP:10.176.5.119 (13)之后为所携带的ICMP协议的信息:类型0指本报文为回复应答,数据部分 则指出该报文携带了32字节的数据信息,通过抓获可看到内容为:abcdefghijklmnopqrstuvwabcdefghi 三、IPSec协议配置: 1、新建一个本地安全策略。如图1-5。 图1-5 2、添加IP安全规则。如图1-6.

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

计算机网络课程设计通过课程设计,使学生在对计算机网络技术与发展整体了解的基础上,掌握网络的主要种类和常用协议的概念及原理,初步掌握以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.家庭网络区:包括从网络中心到楼宇中的骨干交换设备,并为各住户单元提供网络接入端口,是整个小区网络系统的最基本单元。

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

第一次在线作业 单选题 (共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分

计算机网络课程设计-IP数据包解析实验报告

< 解析IP数据报实验报告 - … (

目录 目录 (2) 1、课程设计目的 (2) 2、课程设计要求 (2) < 3、相关知识 (2) 4、课程设计分析 (6) 网卡设置 (6) 使用套接字 (7) 接收数据包 (7) 定义IP头部的数据结构 (8) IP包的解析 (9) 协议的定义 (9) ; 捕获处理 (9) 5、运行结果 (10) 6、总结 (11) 7、课程设计参考资料 (11) 8、源程序代码 (11) , /

, 1、课程设计目的 本课程设计的目的就是设计一个解析IP数据包的程序,并根据这个程序,说明IP数据包的结构及IP协议的相关问题,从而对IP层的工作原理有更好的理解和认识。 2、课程设计要求 本设计的目标是捕获网络中的IP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。 程序的具体要求如下: 1)以命令行形式运行:ipparse logfile,其中ipparse是程序名, 而logfile 则代表记录结果的日志文件。 2)在标准输出和日志文件中写入捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。 3)当程序接收到键盘输入Ctrl+C时退出。 3、相关知识 互联网络层是TCP/IP协议参考模型中的关键部分.IP协议把传输层送来的消息组装成IP数据包,并把IP数据包传送给数据链层.IP协议在TCP/IP协议族

中处于核心地位,IP协议制定了统一的IP数据包格式,以消除个通信子网中的差异,从而为信息发送方和接收方提供了透明的传输通道.编制本程序前,首先要对IP包的格式有一定了解,图1给出了IP协议的数据包格式. - IP数据包的第一个字段是版本字段,其度是4位,表示所使用的IP协议的版本.目前的版本是IPV4,版本字段的值是4,下一代版本是IPV6,版本字段值是6.本程序主要针对版本是IPV4的数据包的解析. 报头标长字段为4位,它定义了以4B为一个单位的IP包的报文长度.报头中除了选项字段和填充域字段外,其他各字段是定长的.因此,IP数据包的头长度在20—40B之间,是可变的. 0 4 8 16 19 24 31 图1 IP数据包的格式 服务类型字段共8位,用于指示路由器如何处理该数据包.该字段长度由4位服务

计算机网络课程设计题目

计算机网络课程设计题目

计算机网络课程设计 题目一 基本要求:根据用户需求,设计网络,并完成相关文档和文件工作。要求通过查找资料,独立完成设计,全部图、表只能使用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技术),使用动态的路由

解析IP数据包课程设计

课程设计任务书 目录 1.实验目的 2.实验要求 ) 3.预备知识 4.课程设计分析 5.实现过程 6.程序流程图 ! 7.相关扩展 8.实习体会

9.参考文献 一.实验目的: 设计一个解析IP数据包的程序,并根据这个程序,说明IP数据包的结构及IP协议的相 关问题,从而IP层的工作原理有更好的理解和认识. 、 二.实验要求: 本设计的目标是捕获网络中数据包,解析数据包的内容,将、结果显示在标准输出上, 并同时写入日志文件. 程序的具体要求如下: 3)以命令行形式运行:ipparse logfile,其中ipparse是程序名,而logfile则代表记录 结果的日志文件. 4)在标准输出和日志文件中写入捕获的IP数据包的版本,头长度,服务类型,数据包总长 度,数据包标识,分段标志,分段偏移值,生存时间,上层协议类型,头校验和,源IP地址 和目的IP地址等内容. 当程序接收到键盘输入Ctrl+C时退出. ~ 三.预备知识 互联网络层是TCP/IP协议参考模型中的关键部分.IP协议把传输层送来的消息组装成IP数据包,并把IP数据包传送给数据链层.IP协议在TCP/IP协议族中处于核心地 位,IP协议制定了统一的IP数据包格式,以消除个通信子网中的差异,从而为信息发送 方和接收方提供了透明的传输通道.编制本程序前,首先要对IP包的格式有一定了解, 图1给出了IP协议的数据包格式. IP数据包的第一个字段是版本字段,其度是4位,表示所使用的IP协议的版本.目前的版本是IPV4,版本字段的值是4,下一代版本是IPV6,版本字段值是6.本程序主要 针对版本是IPV4的数据包的解析. 报头标长字段为4位,它定义了以4B为一个单位的IP包的报文长度.报头中除了选项字段和填充域字段外,其他各字段是定长的.因此,IP数据包的头长度在20—40B 之间,是可变的. 0 4 8 16 19 24 31

《计算机网络课程设计》

计算机网络课程设计报告 题目:Web服务器的搭建及HTTP协议和底层协议运行分析 学生: xxxxxxx 学号: xxxxxxx 班级: xxxxxxxx 教师: xxxxxxx 完成日期:2017年 6月 22 日

《计算机网络课程设计》成绩评定表班级:xxxxx:xxxxx学号:xxxxxxx阅卷教师签名:

Web服务器的搭建及HTTP协议和底层协议运行分析 一、题目说明 1、课程设计题目分析5 本题是要在Window操作系统上进行web服务器的搭建,之后在另一台电脑上运行该服务器,同时在该电脑上抓来往的数据包,并观察该数据包中的HTTP协议的结构。 2、题目涉及的技术原理10 本题通过对操作系统中的IIS(Internet 信息服务器)的安装,再通过编辑自己的编写的服务器代码设置自己的默认网页,进行Web服务器的配置。 在另一台电脑上,将这台电脑用作客户端,运行自己刚配置好的Web服务器。同时,打开wireshark应用程序进行数据包抓包,抓取http包,对抓到的http包进行结构分析。 当前对于Web页面的访问应用都是基于Http应用协议的,而在下层则使用TCP(传输控制协议);但TCP并不适合于短会话(少量的数据交换的情况),当期用于短对话时会增加额外开销,而建立、撤销TCP的开销却又是必需的。因此,提出了一种混合TCP与UDP 的动态选择传输层协议来实现Http协议的方法,若在短对话时使用UDP(用户数据报协议)作为传输层协议,而当有大量数据需要传输时则使用TCP作为传输层协议,这样,对于短对话可以避免TCP的

额外开销,而对于长会话又可以得到有TCP提供的可靠传输并减少网络拥塞。 3、该技术的应用及发展5 ProgressiveDownload (渐进式下载方式)也可以认为是HTTPStreaming 的前身,其通过 HTTP 协议来传输文件。目前,国外比较主流的视频(如YouTube ,优酷,土豆,六间房等)一般都用ProgressiveDownload 的方式播放视频节目。ProgressiveDownload在用户点击播放视频节目时,会给用户发送视频文件,用户可以边下载、边播放,而不是等到文件下载完毕才可以播放视频。在用户暂停播放时,服务器依然会给客户端发送视频文件,直至整个文件下载完毕或者用户关闭视频。基于此特性产生一个问题:如当一个文件为3min ,用户观看前 1min 后就不想再观看而关闭视频播放时,而此时文件可能已经全部下载完毕,这样就会造成后 2min 资源传输的浪费。 ProgressiveDownload 客户端与服务器的交互过程参见下图,由客户端发起 HTTP 请求,服务器受到请求后回复给客户端其请求 图1 HTTP请求/响应 目前,支持 HTTPStreaming 的客户端有有 AdobeFlash Player 10.1 ,微软的 Sivelight 以及 APPLE 的Safari 等。

计算机网络课程设计

石河子大学继续教育学院 网络工程与技术课程设计课题名称:设计校园网络拓扑结构 年级:13计科网络 教师:何万里

一.校园网概论 1.1校园网规划的意义 1.2校园信息网的现状 1.3校园网规划设计的主要任务 二.校园网络设计系统需求分析及目标 2.1项目背景 2.2网络需求分析 三.校园网总体规划 3.1网络技术选择 四.校园网总体结构设计 4.1网络拓扑总线图 4.2思科路由器设置 4.3子网与WLAN划分 五.综合布线设计 5.1设计范围 5.2布线的设备选择 5.3布线设计方案描述 六.总结

1.1校园网规划的意义 校园网的建设,其主要意义是有利于学校教学、科研的快速发展,它能使广大教师利用计算机网络环境进行教学,开展科研活动,进而提高学校的教学质量和科研水平,为培养面向世界,面向未来的高素质人才提供有力的保障。 高效简洁的校园网,不仅方便管理,而且升级方便。校园网指校园内计算机及附属设备互联运行的网络,是由计算机、网络设备和网络软件构成的为学校教育、科研、管理、办公和交流等活动服务的大型集成应用系统,并能接入因特网实现与国内国际网站进行信息交流、资源共享。校园网的规模、网络性能、应用水平和普及程度已成为衡量一所院校办学水平高低的重要标志之一。校园网建设是教育信息化建设的重要组成部分,是全面实现素质教育的重要手段,是实现教育现代化的重要标志,校园网是学校信息基础设施。 1.2校园信息网的现状 国家加快改革教育体系,以教育为立国之本,建设一个高度发达的国家教育体系。为提高我国教育的现代化、建立先进高效的教育体系,提供更为先进的教育手段,学校很有必要建设一个校园网络管理应用系统,这样可以达到校园资源共享、建立完备的数据交换体系、快速的传递信息等目的。顺应无纸教学,无纸办公的发展趋势,充分利用现代化技术来进一步提高教学质量和办公效率,为培养二十一世纪人才提供一个优良的硬件教学环境。 信息成为社会经济发展的核心因素,信息化已成为当今世界潮流。自从1993年美国政府公布实施“信息高速公路计划”之后,在世界引起巨大反响,许多发达国家和一些发展中国家也相继提出了本国或本地区的信息基础设施计划。可以说,信息化程度已成为衡量一个国家现代化水平和综合国力强弱的重要标志。

解析ip数据包

目录 一、课程设计的目的 (1) 二、课程设计要求 (1) 三、需求分析 (1) 1.先对网卡进行编程,以便连接IP层的数据包。 (1) 2.预先创建一个logfile文件来保存所解析的IP数据包。 (1) 3.使用recv函数实现接收数据包的功能。 (1) 四、设计分析 (1) 4.1 网卡设置 (1) 4.2 使用套接字 (2) 五、程序测试 (3) 六、小结 (5) 七、附录 (5)

一、课程设计的目的 本章课程设计的目的就是设计一个解析IP数据包的程序,并根据这个程序,说明IP数据包的结构及IP协议的相关问题,从而对IP层的工作原理有更好的理解和认识。 二、课程设计要求 本设计的目标是捕获网络中的IP数据包,解析数据包的内容,将结果显示在标准输出上,并同时写入日志文件。 程序的具体要求如下: 1)以命令行形式运行:ipparse logfile,其中ipparse是程序名, 而logfile 则代表记录结果的日志文件。 2)在标准输出和日志文件中写入捕获的IP包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。 3)当程序接收到键盘输入Ctrl+C时退出。 三、需求分析 1.先对网卡进行编程(使用套接字进行编程),以便连接IP层的数据包。 2.预先创建一个logfile文件来保存所解析的IP数据包。 3.使用recv函数实现接收数据包的功能。 4.编写ipparse函数解析捕获的数据包的版本、头长度、服务类型、数据包总长度、数据包标识、分段标志、分段偏移值、生存时间、上层协议类型、头校验和、源IP地址和目的IP地址等内容。 四、设计分析 4.1 网卡设置

相关主题