ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:236.50KB ,
资源ID:13358047      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/13358047.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(网络流量测量软件的设计与实现课程设计Word文档下载推荐.docx)为本站会员(b****0)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

网络流量测量软件的设计与实现课程设计Word文档下载推荐.docx

1、最后要完成的工作就是对所捕获的IP数据包进行分析以提取出我们所需要的信息。在论文的最后是旨在说明进一步工作的展开。关键字: TCP/IP,Winsock,原始套接字,NetBios 目录摘要.1Abstract.2前言.4第一章绪论51.1TCP/IP协议及其协议分析方法.51.1.1分层.51.1.2IP地址.61.1.3端口.61.1.4TCP/IP协议在Windows中的实现.71.2Winsock编程.71.3网络流量测量的程序实现原理.8第二章TCP/IP协议集92.1TCP/IP协议简介.92.2IP协议.92.3TCP协议.102.3.1TCP服务模型.102.3.2TCP数据段

2、头.112.3.3TCP协议的建立.122.4UDP协议.13第三章WINSOCK编程概述143.1套接字的概念.143.2套接字的种类.143.3套接字的建立.14第四章网络流量测量的程序实现.164.1网卡初始化.164.1.1NetBios概述164.1.2利用NetBios来初始化网卡.164.2原始套接字的设置.164.3IP包的协议分析174.4结果与测试.19结 论.21结束语.22参考文献23第一章绪论1.1TCP/IP协议及其协议分析方法TCP/IP起源于60年代末美国政府资助的一个分组交换网络的研究项目,到现在90年代已发展成为计算机之间最常用的组网形式。它是一个真正的开放

3、系统,因为协议组件的定义及其多种实现可以不用花钱或花很少的钱就可以公开地得到。它成为被称作“全球互联网”或“因特网”(Internet)的基础。1.1.1分层协议分层的概念的提出是为了减少协议设计的复杂性,每一层都建立到它的下层之上,每一层的目的就是为了向上一层提供特定的服务。一台机器的第n层向另一台机器的第n层会话,通话的规则称为协议。分层和协议构成了网络体系结构。在提到了分层的概念时就不能不提一下OSI参考模型。该模型基于国际化标准组织,共分为七层: 物理层:涉及到通信在信道上传输的原始比特流。 数据链路层:加强物理层传输原始比特流的功能,使之对网络层显现为一条无错线路 网络层:关系到子网

4、的运行控制,其中一个关键的问题就是路由选择。 传输层:为用户提供端到端的数据传送服务。 会话层:允许不同机器上的用户建立会话关系,为用户提供会话控制服务。 表示层:为用户提供数据转换和表示服务。 应用层:为用户提供访问OSI的接口,其中包括大量的常见的协议。TCP/IP通常被认为是一个四层协议系统,每一层负责不同的功能。 数据链路层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。 网络层,处理分组在网络中的活动,例如分组的路由选择。在TCP/IP协议组件中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互

5、连网控制报文协议),以及IGMP协议(Internet组管理协议)。 运输层,主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议组件中,有两个互不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。TCP为两台主机提供高可靠性的数据通信。而另一方面,UDP则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。 应用层,负责处理特定的应用程序细节。几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序: Telnet 远程登录,FTP 文件传输协议,SMTP 用于电子邮件的简单邮件传输协议,SNMP

6、简单网络管理协议。图1-1 OSI模型与TCP/IP模型的比较如图所示,OSI模型有七层,而TCP/IP模型只有4层。OSI模型在网络层支持无连接和面向连接的通信,而TCP/IP模型在网络层仅有无连接的通信方式,但是在传输层却支持两种模式,更好的面向了用户。1.1.2IP地址互连网上的每个接口必须有一个唯一的Internet地址(也称作IP地址)。IP地址长32 bit。这些32位的地址通常写成四个十进制的数,其中每个整数对应一个字节。这种表示方法称作“点分十进制表示法”。需要再次指出的是,多接口主机具有多个IP地址,其中每个接口都对应一个IP地址。由于互连网上的每个接口必须有一个唯一的IP地

7、址,因此必须要有一个管理机构为接入互连网的网络分配IP地址。这个管理机构就是互连网络信息中心(Internet Network Information Centre)称作InterNIC。InterNIC只分配网络号。主机号的分配由系统管理员来负责。1.1.3端口网络中可以被命名和寻址的通信端口,是操作系统可分配的一种资源。按照OSI七层协议的描述,传输层与网络层在功能上的最大区别是传输层提供进程通信能力。从这个意义上讲,网络通信的最终地址就不仅仅是主机地址了,还包括可以描述进程的某种标识符。为此,TCP/IP协议提出了协议端口(protocol port,简称端口)的概念,用于标识通信的进程

8、。端口是一种抽象的软件结构,应用程序(即进程)通过系统调用与某端口建立连接后,传输层传给该端口的数据都被相应进程所接收,相应进程发给传输层的数据都通过该端口输出。在TCP/IP协议的实现中,端口操作类似于一般的I/O操作,进程获取一个端口,相当于获取本地唯一的I/O文件,可以用一般的读写原语访问之。类似于文件描述符,每个端口都拥有一个叫端口号(port number)的整数型标识符,用于区别不同端口。端口号的分配是一个重要问题。端口号的分配有两种基本分配方式:第一种叫全局分配,这是一种集中控制方式,由一个公认的中央机构根据用户需要进行统一分配,并将结果公布于众。第二种是本地分配,又称动态连接,

9、即进程需要访问传输层服务时,向本地操作系统提出申请,操作系统返回一个本地唯一的端口号,进程再通过合适的系统调用将自己与该端口号绑定起来。1.1.4TCP/IP协议在Windows中的实现对TCP/IP协议有了一个结构性的了解之后,就要考虑TCP/IP协议在Windows中是如何应用的。TCP/IP和OSI有一层映射关系,所以可以将TCP/IP通过OSI映射到Windows操作系统中去。OSI在Windows中的实现:物理层就是网卡,数据链路层就是网卡驱动程序,网络层就是NDIS(网络驱动程序接口规范),传输层是TDI(传输驱动程序接口),会话层是SPI(服务提供者接口),表示层是API(应用编

10、程接口),应用层通常就是EXE文件。1.2Winsock编程Winsock就是Windows Socket的简称,最简单的说,Winsock就是Windows应用程序与TCP/IP之间的通信界面。如图:图1-2 Winsock在TCP/IP和OSI中的表示在Windows中,利用Winsock通信需经过几个步骤:初始化Winsock,创建套接字,建立会话,传送数据,中止会话,中止Winsock。Winsock既可以提供机器间的通讯,又可提供Windows进程间的通信。1.3网络流量测量的程序实现原理网络流量监测器也是通过对网卡的编程来实现网络通讯的,对网卡的编程也是使用通常的套接字(socke

11、t)方式来进行。但是,通常的套接字程序只能响应与自己硬件地址相匹配的或是以广播形式发出的数据帧,对于其他形式的数据帧比如已到达网络接口但却不是发给此地址的数据帧,网络接口在验证投递地址并非自身地址之后将不引起响应,也就是说应用程序无法收取到达的数据包。而网络监测器的目的恰恰在于从网卡接收所有经过它的数据包,这些数据包即可以是发给它的也可以是发往别处的。显然,要达到此目的就必须将其设置为混杂模式。这种对网卡混杂模式的设置是通过原始套接字(raw socket)来实现的,这也有别于通常经常使用的数据流套接字和数据报套接字。在创建了原始套接字后,需要通过Setsockopt()函数来设置IP头操作选

12、项,然后再通过bind()函数将原始套接字绑定到本地网卡。为了让原始套接字能接受所有的数据,还需要通过ioctlsocket()来进行设置,而且还可以指定是否亲自处理IP头。至此,实际就可以开始对网络数据包进行监测了,对数据包的获取仍通过recv()函数来完成。第二章TCP/IP协议集2.1TCP/IP协议简介很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP协议组件允许它们互相进行通信。TCP/IP模型是一种层级式(Layering)的结构,每一层都呼叫它的下一层所提供的服务来完成自己的需求。TCP/IP模型可以分为以下四层:应用层、传输层、网络层、数据链路层。本章主要对TCP/IP协议组件进行概述。2.2IP协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1