当前位置:  技术问答>linux和unix

关于socket的sk_buff,如何判断这个sk_buff是不是完整的?

    来源: 互联网  发布时间:2016-08-13

    本文导语:  程序接到一个sk_buff,他可能是TCP包UDP包或者ICMP包,那怎么判断,比如我收到的TCP包可能是不完整的? | IP协议头中的16位校验和只针对IP头,ICMP协议头的16为校验和针对整个ICMP报文。 计算方...

程序接到一个sk_buff,他可能是TCP包UDP包或者ICMP包,那怎么判断,比如我收到的TCP包可能是不完整的?

|
IP协议头中的16位校验和只针对IP头,ICMP协议头的16为校验和针对整个ICMP报文。

计算方法:首先将校验和字段值为0,然后按16bit为单位,将每个16bit取反然后求和。
校验时同样以16bit为单位,将各个16bit取反然后求和,如果结果为0xffff(1111 1111 1111 1111b),则校验和正确。
内核里有现成的校验和校验函数。

    
 
 

您可能感兴趣的文章:

  • 两个 Socket 互相通信,其中一个如何判断另一个 Socket 是否已经意外断开了连接?
  • 请问如何判断从raw socket发出的包是哪个进程发送的?
  • socket如何判断接受缓冲区是否已满
  • 急问:怎么判断一个非阻塞的socket已经断开了?
  • 如何判断SOCKET还是连接着的?
  • C下判断socket连接状态,怎么实现
  • socket编程,设为非阻塞,客户端怎么判断connect已经成功呢?
  • 如何判断socket断开连接
  • socket问题,当客户端关闭或者实际链路断开后服务器端怎么判断?
  • (linux c)socket数据接受后判断是否相等的问题
  • 怎样判断socket断开并自动重连?
  • AIX主机如何判断SOCKET连接对方的是什么进程
  • 在程序中如何判断一个socket链路在3分钟内没有收发任何信息?
  • 难道还有第3条分支???怎么判断 socket 的数据已经传输
  • 虚心请教Linux Socket编程中如何根据指纹信息判断端口服务
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 进程信号是不是也是socket?
  • socket传输二进制文件输出是不是要用DataOutputStream?
  • 请问一下, 我用applet和服务器socket通信, 是不是不能用IE浏览运行我的applet程序?
  • 【请教】Linux下用select()监测socket,是不是通常不去监测可写状态的?
  • 谁能告诉我,做一个象网易那样的聊天室,用什么方法,不要告诉我是用数据库或读写文件,是不是用多线程,socket协议。来讨论者皆有分。
  • java命名空间java.net类socket的类成员方法: socket定义及介绍
  • re socket编程中 ACCEPT返回的socket与原socket(他参数中的)端口号一样吗?
  • java命名空间java.nio.channels类socketchannel的类成员方法: socket定义及介绍
  • libevent2需要从socket读一段数据写入一个socket中,同时发送给另一个socket
  • java命名空间java.nio.channels类serversocketchannel的类成员方法: socket定义及介绍
  • socket 通讯开发包 Simple Sockets
  • java命名空间java.nio.channels类datagramchannel的类成员方法: socket定义及介绍
  • C++ Socket 库 C++ Sockets
  • java命名空间java.net类socket的类成员方法: getsendbuffersize定义及介绍
  • vc做的的socket应用和unix下socket?
  • java命名空间java.net类socket的类成员方法: getreceivebuffersize定义及介绍
  • QSocketDevice ( int socket, Type type )中那个 int socket 是哪里来得?
  • java命名空间java.net类socket的类成员方法: gettrafficclass定义及介绍
  • socket编程 通过man socket, 没有找到socket函数的第一参数该填什么 怎样利用man手册
  • java命名空间java.net类socket的类成员方法: getport定义及介绍
  • 线程间可否通过管道传递SOCKET句柄?还有其他方式传递SOCKET么?
  • java命名空间java.net类socket的类成员方法: getlocalport定义及介绍
  • [FreeBSD] 大神,求解,control socket : can‘t to any socket
  • java命名空间java.net类socket的类成员方法: getinetaddress定义及介绍
  • 大家帮忙推荐一本linux socket编程的入门书,我刚接触socket,谢谢!!
  • java命名空间java.net类socket的类成员方法: isconnected定义及介绍
  • 我的ping程序怎么老是出现Socket operation on non-socket


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3