4221学习网
首页 | 网址大全 | 脑力倍增 | 电脑学院 | 学习方法 | 英语学习 | 口才交际 | 工作职场 | 成功励志 | 文学小说 | 视频教程 | 视频短片 | 下载中心 | NBA | 奥运 | 图片专区 | QQ·技巧 | 游戏技巧 | 恋爱技巧 | 谈天说地 | 专题教程 | 4221论坛
热门关键字: 视频教程  百家讲坛  美女  记忆力  疯狂英语
 → 当前位置:4221学习网>电脑学院>网络应用>网络基础>正文

IP数据包的校验和算法C#版

4221学习网 2007-06-08 来源:互联网 收藏本文

训练30小时,让阅读提速5-10倍!---速读记忆训练软件免费下载!(点击下载)

 

为做伪IP,特地做了一个IP包,用C#改写IP头的校验和算法。
资料一:
IP头格式:
 版本号 (4位)
 IP头长度 (4位)
 服务类型 (8位)
 数据包长度 (16位)
 标识段 (16位)
 标志段 (16位)
 生存时间 (8位)
 传输协议 (8位)
 头校验和 (16位)
 发送地址 (16位)
 目标地址 (16位)
 选项
 填充

资料二:
IP 协议采用统一的校验算法,其计算比较简单:设校验和初值为0,然后对数据每16位求异或,结果取反,便得校验和。校验时将数据(含校验和)按同样的算法求和,结果为0则数据正确,不为0表示通讯出错,需要丢弃该数据包。

算法源代码:

   public static UInt16 checksum(UInt16[] buffer,int size)
  {
   Int32 cksum=0;
   int counter;
   counter=0;
   while(size>0)
   {
        UInt16 val=buffer[counter];
        cksum+=Convert.ToInt32(buffer[counter]);
        counter+=1;
        size=-1;
   }
   cksum=(cksum>>16)+(cksum&0xffff);
   cksum+=(cksum>>16);
   return (UInt16)(~cksum);
  }

注意:buffer数组为整个ip包数组,需要转换成UInt16[];size为buffer数组的长度。
关于byte[]转换成UInt16[]的方法比较简单,在此不介绍了。
http://www.cnblogs.com/tuyile006/archive/2006/12/06/583949.html

上一篇:菜鸟教程:空格键用法大搜罗!   下一篇:五个不太为人知的ESC键妙用法
添加到google书签 digg this! 添加到bolaa 添加到yahoo+ 添加到新浪vivi 添加到365key  
收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭

相关文章
·菜鸟教程:空格键用法大搜罗!
·五个不太为人知的ESC键妙用法
·另类方法 四种神奇电脑开机方法
·什么是1G/2G/2.5G/3G?
·网络工程师通过--写一点经验
·GSM系统干扰浅谈
·菜鸟教程:空格键用法大搜罗
·五个不太为人知的ESC键妙用法
·网络编辑基础:对HTTP协议的头信息详解
·基础知识:网络专业术语的通俗形象解释
发表评论
要记得去论坛讨论,点击注册新会员) 密码: 匿名评论
评论内容:(请自觉遵守互联网相关政策法规。)
最新文章
·宽带基础:ADSL接入技术介绍
·网络基础知识 华为H3C基本命令解释说明
·网络基础 内部网关协议和外部网关协议
·基础知识:网络专业术语的通俗形象解释
·网络编辑基础:对HTTP协议的头信息详解
·五个不太为人知的ESC键妙用法
·菜鸟教程:空格键用法大搜罗
·GSM系统干扰浅谈
·网络工程师通过--写一点经验
·什么是1G/2G/2.5G/3G?
本类阅读排行榜
·另类方法 四种神奇电脑开机方法
·什么是1G/2G/2.5G/3G?
·五个不太为人知的ESC键妙用法
·网络基础知识 华为H3C基本命令解释说明
·网络编辑基础:对HTTP协议的头信息详解
·五个不太为人知的ESC键妙用法
·宽带基础:ADSL接入技术介绍
·菜鸟教程:空格键用法大搜罗!
·GSM系统干扰浅谈
·网络工程师通过--写一点经验
热点视频教程
视频街舞 舞步 教学
视频windowsxp重装系统视频教程
视频李孝利十分钟详细舞蹈教程
视频美女教你跳舞
视频街舞 舞步 教学2
视频双截棍视频教程-定式
视频如何安装双操作系统
视频韩国的太空步教程,后滑、侧滑、旋转太空
视频【WindowsXP入门教程】 - 硬盘分区
视频台球教程-基本杆法
视频[百家讲坛]三十六计01_借刀杀人
视频24式太极拳教学---基本动作
视频 斯诺克台球竿法-后退球
视频动物世界之决战生死线2
视频超级全脑速读训练教程

设为首页 - 加入收藏 - 关于我们 - 联系我们 - 友情连接

4221学习网版权所有-鄂ICP备07006816号
已浏览: