简单路由器设计与实现

简单路由器设计与实现

ID:15075440

大小:1.40 MB

页数:38页

时间:2018-08-01

简单路由器设计与实现_第1页
简单路由器设计与实现_第2页
简单路由器设计与实现_第3页
简单路由器设计与实现_第4页
简单路由器设计与实现_第5页
资源描述:

《简单路由器设计与实现》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、简单路由器设计与实现(选做)1.实验目的熟悉并掌握路由器的工作原理;熟悉Winpcap编程,掌握数据包捕获与发送的方法;在理解IP协议、ICMP协议与路由基本工作原理的基础上,完成一个(软件)路由器基本功能的设计与编程实现。2.实验环境Ø接入局域网的PC机;Ø操作系统:Windowsxp,Windows7等;Ø推荐开发工具:VisualStudio2010;Ø推荐编程语言:C++/VisualC++;Ø函数库/开发包:Winpcap。3.实验内容(1)学习并掌握winpcap编程:自行完成WinPcap教程中的内容,从而掌握winpca

2、p编程。内容包括但不限于:a)获取设备列表;b)打开一个适配器并抓包(分组);c)解析分组;d)发送分组;学习内容及源程序参见WinPcap官方教程:http://www.winpcap.org/docs/docs_412/html/group_wpcap_tut.html。(2)利用winpcap开发包实现简单路由程序,该路由程序应该至少包括以下功能:a)IP数据包捕获和转发;b)ARP请求与解析;c)重新计算IP数据包的头部校验和;d)处理IP数据包的头部校验和;处理IP数据包的TTL值;e)静态路由表维护。在下图所示的完了过拓扑结

3、构中,当所开发的路由器程序部署并运行在计算机C上时,它将(作为一个路由器)能够连通两个子网,正确地捕获、转发来自计算机A和计算机B的分组,使得两个子网中的主机能够互相访问图5-1实验验证环境配置示意图4.实验方式每位同学独立上机编程实验,实验指导教师现场指导。5.参考内容(1)WinPcap简介Winpcap(windowspacketcapture)是windows平台下一个免费、公共的网络访问系统。开发Winpcap项目的目的在于为win32应用程序提供访问网络底层的能力。它用于windows系统下的直接的网络编程。关于Winpca

4、p的介绍请参阅http://baike.baidu.com/link?url=rQt7NLzLCFGDO8Fd2XoM3yMvpqRhA4NU6xjLdWtoS_JkMLVfgQ9mspXhMceA5RVYIl9CnA2w66uEPrSlUXKq3_。Winpcap开发包可以在http://www.winpcap.org/上下载,Winpcap的技术文档可以从http://www.winpcap.org/docs/default.htm下载。附录中给出了主要函数的说明文档。(2)Winpcap主要函数及功能介绍Winpcap部分主要函数

5、及其功能介绍如下:(1).intpcap_findalldevs_ex(char*source,structpcap_rmtauth*auth,pcap_if_t**alldevs,char*errbuf)函数功能:Createalistofnetworkdevicesthatcanbeopenedwith pcap_open().参数说明:source:achar*bufferthatkeepsthe'sourcelocaltion',accordingtothenewWinPcapsyntax.Thissourcewillbeexa

6、minedlookingforadapters(localorremote)orpcapfiles,Thestringsthatmustbeprependedtothe'source'inordertodefineifwewantlocal/remoteadaptersorfilesisdefinedinthenewSourceSpecificationSyntax.auth:apointertoapcap_rmtauthstructure.Thispointerkeepstheinformationrequiredtoauthenti

7、catetheRPCAPconnectiontotheremotehost.Thisparameterisnotmeaningfulincaseofaquerytothelocalhost:inthatcaseitcanbeNULL.alldevs:a'structpcap_if_t'pointer,whichwillbeproperlyallocatedinsidethisfunction.Whenthefunctionreturns,itissettopointtothefirstelementoftheinterfacelist;

8、eachelementofthelistisoftype'structpcap_if_t'.errbuf:apointertoauser-allocatedbuffer(ofsizePCAP_ERRBUF_

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。