ip数据包解析代码

ip数据包解析代码

ID:6141962

大小:46.50 KB

页数:7页

时间:2018-01-04

ip数据包解析代码_第1页
ip数据包解析代码_第2页
ip数据包解析代码_第3页
ip数据包解析代码_第4页
ip数据包解析代码_第5页
资源描述:

《ip数据包解析代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、#include#include#include#include#pragmacomment(lib,"Ws2_32.lib")#defineBUFFER_SIZE65535#defineFRAGMENT_SIZE10000//分片数据部分最长为10000#defineFRAGMENT_NUM7#defineSTART20#defineIO_RCVALL_WSAIOW(IOC_VENDOR,1)typedefstruct_IP_HEADER

2、//定义IP头{BYTEVersion_HeadLen;//版本(前4位)和首部长度BYTEServiceType;//服务类型WORDTotalLen;//数据报总长WORDID;//标识WORDFlags_FragOff;//标志(前3位)),后13位表示页偏移BYTETimeToLive;//生存周期BYTEProtocol;//协议WORDHdrChksum;//头校验和DWORDSrcAddr;//源地址DWORDDstAddr;//目地地址}IP_HEADER;voidchecksum(IP_HEADER*ip,WO

3、RD*sum){unsignedintsum_tmp;sum_tmp=MAKEWORD(ip->ServiceType,ip->Version_HeadLen)+ip->TotalLen+ip->ID+ip->Flags_FragOff+MAKEWORD(ip->Protocol,ip->TimeToLive)+ip->HdrChksum+(WORD)(ip->SrcAddr>>16)+(WORD)(ip->SrcAddr&0xffff)+(WORD)(ip->DstAddr>>16)+(WORD)(ip->DstAddr&0x

4、ffff);if(sum_tmp>(2^16-1))sum_tmp=(unsignedshort)sum_tmp+1;*sum=(WORD)(~sum_tmp);}char*parseServiceType_getProcedence(BYTEb){switch(b>>5)//获取服务类型字段中优先级子域{case7:return"NetworkControl";//网络控制break;case6:return"InternetworkControl";//网络控制break;case5:return"CRITIC/ECP";b

5、reak;case4:return"FlashOverride";//最优先信号break;case3:return"Flsah";break;case2:return"Immediate";break;case1:return"Priority";//协议break;case0:return"Routine";//路由break;default:return"Unknow";break;}}char*parseServiceType_getTOS(BYTEb){b=(b>>1)&0x0f;//获取服务类型字段中的TOS子域sw

6、itch(b){case0:return"Normalservice";//正常运行break;case1:return"Minimizemonetarycost";//成本break;case2:return"Maximizereliability";//可靠性break;case4:return"Maximizethroughput";//吞吐量break;case8:return"Minimizedelay";//延迟break;case15:return"Maximizesecurity";//安全性break;defa

7、ult:return"Unknow";}}char*getProtocol(BYTEProtocol)//获取协议字段共8位{switch(Protocol)//以下为协议号说明:{case1:return"ICMP";//Internet控制报文协议case2:return"IGMP";//Internet组管理协议case4:return"IPinIP";//移动IP数据封装和隧道case6:return"TCP";//传输控制协议case8:return"EGP";//外部网关协议case17:return"UDP";//

8、用户数据报文协议case41:return"IPv6";case46:return"RSVP";//资源预留协议case89:return"OSPF";//OpenShortestPathFirst开发式最短路径优先default:return"UNKNOW";

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

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

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