NDIS协议驱动设计与实现

NDIS协议驱动设计与实现

论文摘要

TCP协议是目前Internet上使用最广泛的一种传输协议,它为用户提供了一种基于连接的、可靠的、端到端的数据包传输服务。Internet上总字节数的95%和总报文数的90%使用TCP协议传输,但是TCP协议主要适用于差错率低和网络拥塞是造成报文丢失的主要原因的有线链路。但在无线有线混合网络环境下,发生丢包的原因不仅仅是拥塞造成的,也会出现由于误码而导致的丢包现象。因此,如何提高TCP在异构网络环境下的性能已经成为一个活跃的研究领域。为了提高TCP协议在异构网络的性能,需要改善TCP在异构网络下的拥塞控制算法(在windows环境下),而Windows环境下并不是源代码开放环境,所以本文提出实现TCP/IP协议驱动的方法来代替现有系统的TCP协议,在此协议驱动中改善拥塞控制算法。论文主要介绍开发TCP/IP协议驱动所使用的技术和实现方法,以及协议栈各个部分的流程设计。根据Windows的驱动开发套件(DDK)中对网络协议驱动说明与规定,可以开发一个协议驱动其下层接口符合网络驱动接口规范(NDIS),则无需关心下层网卡相关驱动;上层接口符合传输驱动接口(TDI)规定,则无需关心上层应用。因此,选择NDIS和TDI作为整体上下层接口的规范。论文首先介绍了TCP/IP的协议栈模型和Windows下网络驱动开发的理论基础。之后阐述了NDIS协议驱动的各模块组成,主要分为四个部分,NDIS接口,TDI传输器,TDI客户,应用程序。NDIS接口实现对低层网卡的一些操作和交互。TDI传输器为主要实现部分,实现TCP/IP协议。TDI客户的主要作用是完成上层应用层程序的请求,或者根据该请求产生相应的操作,并将该操作传递给下层的NDIS协议驱动。应用程序是用于测试协议驱动系统的上层工具。论文详细介绍了NDIS接口的开发以及TCP/IP协议栈的设计。NDIS接口主要完成对低层网卡的动态绑定,收发网络数据包和相关状态维护及完成上层用户程序发送到协议驱动的IRP请求。TCP/IP协议栈通过上层接口与TDI客户交互,下层与NDIS接口通信,进行网络数据包的发送。目前TCP/IP协议栈主要实现了ARP,TCP,IP协议,还需不断完善。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 引言
  • 1.1 课题背景
  • 1.2 开发方案
  • 1.3 本文结构
  • 第二章 计算机网络体系结构
  • 2.1 OSI体系结构
  • 2.1.1 OSI模型的层次结构
  • 2.1.2 OSI模型
  • 2.2 TCP/IP模型
  • 2.2.1 TCP/IP协议栈
  • 2.2.2 TCP/IP数据封装与解封装
  • 2.2.3 TCP/IP协议族原理
  • 2.2.3.1 ARP协议
  • 2.2.3.2 IP协议
  • 2.2.3.3 TCP协议
  • 2.3 Windows网络体系结构
  • 第三章 Windows下的的网络协议驱动开发
  • 3.1 Windows网络结构和OSI模型
  • 3.2 NDIS驱动程序
  • 3.2.1 NDIS微端口驱动程序
  • 3.2.2 NDIS中间层驱动程序
  • 3.2.3 NDIS协议驱动程序
  • 3.2.3.1 协议DriverEntry及其初始化
  • 3.2.3.2 协议驱动程序数据包的组织和管理
  • 3.2.3.3 协议驱动程序的动态绑定
  • 3.3 传输驱动接口(TDI)
  • 第四章 TCP/IP协议驱动的系统设计
  • 4.1 应用程序的设计
  • 4.2 TDI客户的设计
  • 4.3 TDI传输器的设计
  • 4.4 NDIS接口的设计
  • 第五章 NDIS协议驱动接口模块的设计与实现
  • 5.1 NDIS协议驱动模块框架
  • 5.2 NDIS协议驱动加载及注册
  • 5.2.1 NDIS协议驱动加载和初始化过程
  • 5.2.2 注册NDIS协议驱动程序
  • 5.3 NDIS协议驱动动态绑定
  • 5.3.1 NDIS动态绑定网卡
  • 5.3.2 NDIS动态解绑定网卡
  • 5.4 NDIS数据包的组织和管理
  • 5.4.1 数据包的接收
  • 5.4.1.1 NDIS数据包自动接收
  • 5.4.1.2 NDIS数据包的读取
  • 5.4.2 数据包的发送
  • 5.4.3 NDIS数据包的解析
  • 5.5 异步I/O
  • 5.6 客户请求处理例程
  • 第六章 TCP/IP协议族的设计与实现
  • 6.1 相关数据结构及管理
  • 6.1.1 网络报文数据包结构
  • 6.1.2 网络缓冲区的基本操作
  • 6.1.3 内核内存管理
  • 6.2 ARP协议的设计与实现
  • 6.2.1 数据结构设计
  • 6.2.2 ARP协议实现
  • 6.3 IP协议的设计与实现
  • 6.3.1 数据结构设计
  • 6.3.2 IP分片
  • 6.3.3 IP发送
  • 6.3.4 IP接收
  • 6.4 TCP协议的设计与实现
  • 6.4.1 数据结构设计
  • 6.4.2 TCP有限状态机
  • 6.4.3 TCP三次握手
  • 6.4.4 TCP发送数据
  • 6.4.5 TCP定时器
  • 第七章 总结与期望
  • 参考文献
  • 致谢
  • 攻读学位期间发表的学术论文
  • 相关论文文献

    • [1].NDIS技术在个人信息安全方面的应用[J]. 时代农机 2017(06)
    • [2].基于微软NDIS中间层驱动的防火墙在广电信息系统中应用[J]. 有线电视技术 2019(06)
    • [3].利用NDIS技术实现虚拟专用网安全隧道[J]. 微计算机信息 2008(12)
    • [4].基于NDIS过滤驱动防火墙的设计和实现[J]. 软件工程 2016(11)
    • [5].基于NDIS防火墙的设计与实现[J]. 移动通信 2015(22)
    • [6].基于NDIS中间驱动的包过滤器的设计实现[J]. 微计算机信息 2009(15)
    • [7].基于NDIS驱动的网络审计系统的设计[J]. 计算机安全 2012(05)
    • [8].NDIS深层网络封包截取研究[J]. 网络安全技术与应用 2012(12)
    • [9].基于NDIS的数据链路层加密[J]. 辽宁大学学报(自然科学版) 2010(02)
    • [10].城市空间形态离散度指数NDIS构建与应用[J]. 生态学报 2018(20)
    • [11].一种基于NDIS驱动程序实现隐蔽通道的方法[J]. 计算机应用与软件 2011(06)
    • [12].基于NDIS的气象视频会商导播软件的设计[J]. 现代农业科技 2016(04)
    • [13].基于NDIS驱动的网络数据捕获研究[J]. 电脑知识与技术 2010(03)
    • [14].基于NDIS中间层驱动的帧过滤设计与实现[J]. 微计算机信息 2010(24)
    • [15].基于NDIS中间层驱动的对等网络流量监管机制[J]. 北京交通大学学报 2013(05)
    • [16].NDIS中间层驱动技术在反溯源网络中的应用[J]. 农业科技与装备 2014(02)
    • [17].一种基于NDIS中间层的图像过滤软件研究[J]. 微计算机信息 2011(08)
    • [18].基于NDIS的IPSec构件交互机制研究与改进[J]. 微电子学与计算机 2008(03)
    • [19].基于NDIS的智能变电站通信并行冗余协议设计[J]. 南京工程学院学报(自然科学版) 2017(03)
    • [20].基于NDIS技术6rd软终端的设计与实现[J]. 信息通信技术 2013(03)
    • [21].基于NDIS的入侵检测系统设计与实现[J]. 沈阳师范大学学报(自然科学版) 2012(03)
    • [22].基于NDIS中间层的通信安全机制的设计与实现[J]. 微型电脑应用 2008(08)
    • [23].基于NDIS隐蔽通信技术的木马病毒分析[J]. 计算机工程 2008(10)
    • [24].一种基于NDIS中间层驱动的园区网流量控制方案[J]. 湖南师范大学自然科学学报 2010(01)
    • [25].基于ndis hook技术的包拦截和发送技术研究[J]. 信息系统工程 2010(06)
    • [26].基于NDIS中间层驱动的隐蔽通信研究与实现[J]. 通信技术 2014(06)
    • [27].基于NDIS中间层驱动的数据库注入拦截系统[J]. 软件导刊 2009(08)
    • [28].基于NDIS中间层的木马防护机制研究及实现[J]. 电子科技 2013(05)
    • [29].NDIS数据过滤的实现及应用[J]. 信息网络安全 2013(04)
    • [30].基于NDIS中间层驱动的入侵检测技术研究[J]. 硅谷 2012(08)

    标签:;  ;  

    NDIS协议驱动设计与实现
    下载Doc文档

    猜你喜欢