- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
LINUX CH4 基于NDIS网络编程-new.ppt
第4章 基于NDIS的网络编程 网络编程技术 直接网卡编程(可编程芯片) 基于packet driver的编程技术 基于NDIS的网络编程 VPACKET,PACKET32 Libpcap/Winpcap Berkeley Sockets编程技术 Winsock JAVA网络编程 网络驱动程序接口规范(Network Driver Interface Specification, NDIS)是一个较为成熟的网络驱动接口标准,它包含局域网网卡驱动程序标准、广域网驱动程序标准以及存在于协议和网卡之间的中间驱动程序标准。 NDIS的一个主要目的就在于将NDIS驱动程序中一些公用代码提取出来,使NDIS驱动程序只需利用和硬件特性有关的少量的代码即可,从而降低了开发的难度并提高开发效率。 4.1 Windows NT网络体系结构 Windows NT网络体系结构是基于OSI/RM七层网络概念模型的。 OSI参考模型中的最底层是物理层。 OSI把数据链路层分为两个子层:LLC和MAC。 LLC层定义包括用来保证数据从发送端到接收端正确流动的地址机制,以及用来传输地址、数据和错误检查信息的格式域。 MAC子层管理对网络介质的访问方式、检查帧错误。 在Windows NT网络体系结构中,LLC子层的功能由传输驱动程序来完成。MAC子层的功能由网卡实现。管理网卡设备的软件叫做网卡驱动程序。 网络层的关键功能是网络寻址,为了在网络中从源到目的端建立路径而规划一个逻辑连接。包括路由、流量控制、数据分段和重组等。 传输层负责消息传输的准确性、错误控制、顺序检测和其他影响端到端数据传输的可靠性。 在Windows NT体系中,LLC子层、网络层和传输层的功能都由传送驱动程序(又称为协议驱动程序或协议)完成。 4.2 NDIS的基本概念 4.2.1 NDIS概述 网络驱动程序接口规范(Network Driver Interface Specification ,简称NDIS)是微软公司和3COM合作开发的网络驱动接口规范,是在基于X86平台操作系统(主要是DOS和WINDOWS)上开发网卡驱动程序和网络协议驱动程序必须遵守的设计框架。 Microsoft在以NT为内核的操作系统中实现了这个规范管理库,从而程序开发者能够方便地添加自己对网络的过滤拦截程序。 NDIS NDIS定义了操作系统网络传输模块的一个抽象环境,在这个环境中,各层驱动程序实体之间没有直接的通信机制,它们之间的交互全部由NDIS(通过操作系统中的NDISLib或NDISWrapper)提供统一例程和调用来实现。 NDIS负责上下层驱动程序之间服务原语和实际驱动程序相应调用入口之间的转换,分派消息通知。这样保证了符合NDIS的驱动程序不需知晓其他驱动程序的入口就可与之通信,而自身只需向NDIS注册私有的入口点即可。 这种设计思路保证了基于NDIS的驱动程序开发可以与平台无关,具有高度的源代码移植性。 下图2描述的是Windows NT网络驱动程序的组件。 NDIS Windows NT支持三种网络驱动程序: 网卡驱动程序(与硬件打交道) 中间协议驱动程序(在不同协议之间进行转换) 传送驱动程序(通信协议,如TCP/IP,IPX/SPX等) 标准的WINDOWS网络体系结构的最底层是网卡,网卡通过NDIS与网卡(NIC)驱动程序通信,网卡驱动程序又通过NDIS与协议驱动程序通信。在NIC驱动程序和协议驱动程序之间可能还存在一个中间驱动程序。 在协议驱动程序的上边,是内核模式TDI用户驱动程序,通过TDI接口同协议驱动程序交互。再往上,则是用户模式的动态链接库(提供WIN32 API)及网络应用程序。 WINDOWS NT中的许多网络组件都是以内核模式驱动程序方式实现的。 4.2.2 NDIS驱动程序分类 1.网卡(NIC)驱动程序 网卡驱动程序(NIC Driver,又称MAC Driver)通过NDIS提供的调用访问和管理网卡上的DMA、I/O、IRQ、内存资源,负责接收来自网卡的数据包并传递给上层驱动程序,把上层要发送的数据包发给网卡。 网卡驱动程序管理实际的网络硬件,它是在协议驱动程序和不同的网卡之间架起一道桥梁,允许高层驱动程序通过它来发送和接收包、复位和停止NIC、查询和设置NIC的特性。 发送:NIC驱动程序通过NDIS从上层驱动程序接收数据包,根据实际网卡的不同特点和要求,将数据送入网卡的发送缓冲区; 接收:将网卡接收缓冲区中接收到的数据,通过NDIS传送到相应的协议驱动程序。 NIC驱动程序的数据处理流程入图3所示。 NDIS NDIS NDIS是网卡驱动程
您可能关注的文档
- IPv4升级到Ipv6主要改进点.doc
- IS-LM模型我国经济发展形势分析.ppt
- ISO14000环境管理体系认证.doc
- ITO玻璃导电薄膜电阻测量技术可靠性研究分析.doc
- ITO透明导电薄膜制备及光电特性研究分析.doc
- ITS中车辆调度问题研究分析.doc
- IT应用项目风险管理.doc
- IT新闻门户网站设计实现.doc
- IT服务外包论文:苏州T公司知识型员工激励问题及对策研究分析.doc
- IT环境下会计信息系统变革重构研究分析文献综述.doc
- 半导体材料性能提升技术突破与应用案例分析报告.docx
- 半导体设备国产化政策支持下的关键技术突破与应用前景报告.docx
- 剧本杀市场2025年区域扩张策略研究报告.docx
- 剧本杀行业2025人才培训体系构建中的市场需求与供给分析.docx
- 剧本杀行业2025年人才培训行业人才培养模式创新与探索.docx
- 剧本杀行业2025年内容创作人才需求报告.docx
- 剧本杀行业2025年区域市场区域剧本市场消费者满意度与市场竞争力研究报告.docx
- 剧本杀市场2025年区域竞争态势下的区域合作策略分析报告.docx
- 剧本杀行业2025人才培训与行业人才培养模式创新.docx
- 剧本杀行业剧本创作人才心理素质培养报告.docx
最近下载
- T_HNTI 030—2020_茶树种质资源考察收集技术规范.pdf VIP
- 报关原理与实务(第二版)(第5章)1进出口货物报关单填制.ppt VIP
- 2025年滨州市中考英语试题卷(含答案逐题解析).docx
- 基于能力培养的人工智能课程体系设计.docx
- Q/GDW1827-2013三相智能电能表技术规范.pdf VIP
- 国家中医药管理局发布的406种中医优势病种诊疗方案和临床路径目录.pptx VIP
- 华能国际电力股份有限公司本质安全体系管理手册.doc VIP
- 教育行业AI大模型设计方案【231页WORD】.docx VIP
- 2024医保物价培训.pptx VIP
- 屋顶光伏发电建设项目实施方案.docx
文档评论(0)