TCP检验和】的更多相关文章

如何计算UDP/TCP检验和checksum 一.下面的图是一个UDP的检验和所需要用到的所有信息,包括三个部分:1.UDP伪首部2.UDP首部3.UDP的数据部分(切记不要遗漏该部分,否则就~吐血了~) 首先解释下伪首部的概念,伪首部包含IP首部一些字段.其目的是让UDP两次检查数据是否已经正确到达目的地,只是单纯为了做校验用的.还有一个概念十分重要,那就是16位UDP总长度,请注意该长度不是报文的总长度,而只是UDP(包括UDP头和数据部分)的总长度(之前就是因为这个概念没弄清楚,走了不少弯…
TCP的检验和   检验和目的 目的是为了发现TCP首部和数据在发送端到接收端之间发生的任何改动.如果接收方检测到检验和有差错,则TCP段会被直接丢弃. TCP在计算检验和时,要加上一个12字节的伪首部. 伪首部 伪首部共有12字节,包含IP首部的一些字段,有如下信息:32位源IP地址.32位目的IP地址.8位保留字节(置0).8位传输层协议号(TCP是6,UDP是17).16位TCP报文长度(TCP首部+数据). 伪首部是为了增加TCP校验和的检错能力:通过伪首部的目的IP地址来检查TCP报文…
OSI参考模型 OSI RM:开放系统互连参考模型(open systeminterconnection reference model) OSI参考模型具有以下优点: 简化了相关的网络操作: 提供设备间的兼容性和标准接口: 促进标准化工作: 结构上可以分隔: 易于实现和维护. 20世纪60年代以来,计算机网络得到了飞速增长.各大厂商为了在数据通信网络领域占据主导地    位,纷纷推出了各自的网络架构体系和标准,如IBM公司的SNA,Novell IPX/SPX协议,Apple公司的AppleT…
章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP:网际协议(1)-读书笔记 <TCP/IP详解卷1:协议>第3章 IP:网际协议(2)-读书笔记 <TCP/IP详解卷1:协议>第4章 ARP:地址解析协议-读书笔记 <TCP/IP详解卷1:协议>第5章 RARP:逆地址解析协议-读书笔记 <TCP/IP详解卷1:协…
每发一个包,不论大小协议头会占用一定的空间 TCP头20字节,IP头20字节,MAC头14字节,共54字节 //Mac头部,总长度14字节  typedef struct _eth_hdr  {      unsigned char dstmac[6]; //目标mac地址      unsigned char srcmac[6]; //源mac地址      unsigned short eth_type; //以太网类型  }eth_hdr;  //IP头部,总长度20字节  typedef…
OSI参考模型 OSI RM:开放系统互连参考模型(open systeminterconnection reference model) OSI参考模型具有以下优点: 简化了相关的网络操作: 提供设备间的兼容性和标准接口: 促进标准化工作: 结构上可以分隔: 易于实现和维护. 20世纪60年代以来,计算机网络得到了飞速增长.各大厂商为了在数据通信网络领域占据主导地    位,纷纷推出了各自的网络架构体系和标准,如IBM公司的SNA,Novell IPX/SPX协议,Apple公司的AppleT…
1.TCP数据段格式 TCP是一种可靠的.面向连接的字节流服务.源主机在传送数据前需要先和目标主机建立连接.然后,在此连接上,被编号的数据段按序收发.同时,要求对每个数据段进行确认,保证了可靠性.如果在指定的时间内没有收到目标主机对所发数据段的确认,源主机将再次发送该数据段. 如图1所示,是TCP头部结构(RFC 793.1323). 图1 TCP头部结构 ●源.目标端口号字段:占16比特.TCP协议通过使用"端口"来标识源端和目标端的应用进程.端口号可以使用0到65535之间的任何数…
源:TCP/IP协议头部结构体(网摘小结) TCP/IP协议头部结构体(转) 网络协议结构体定义 // i386 is little_endian. #ifndef LITTLE_ENDIAN #define LITTLE_ENDIAN (1) //BYTE ORDER #else #error Redefine LITTLE_ORDER #endif //Mac头部,总长度14字节 typedef struct _eth_hdr { unsigned ]; //目标mac地址 unsigned…
TCP协议详解 一.TCP协议 1.TCP 通过以下方式提供可靠性: ·  ◆ 应用程序分割为TCP认为最合适发送的数据块.由TCP传递给IP的信息单位叫做报文段. ·  ◆ 当TCP发出一个报文段后,它启动一个定时器,等待目的端确认收到这个报文段.如果不能记时收到一个确认,它 就重发这个报文段. ·  ◆ 当TCP收到发自TCP连接另一端的数据,它将发送一个确认.这个确认不是立即发送,通常延迟几分之一秒. ·  ◆ TCP将保持它首部和数据的检验和.这是一个端到端的检验和,目的是检测数据在传输…
由[RFC 768]定义的UDP只是做了运输协议能够做的最少工作.除了复用/分解功能极少量的差错检测外,它几乎没有对IP增加别的东西.如果应用程序开发人员选择UDP而不是TCP,则该应用程序差不多就是直接与IP打交道.UDP从应用程序进程得到数据,附加上用于多路复用/分解服务的源和目的端口号字段,以及两个其他小字段,然后形成的报文段交给网络层.网络层将运输层报文段封装到一个IP数据报中,然后尽力而为地尝试将此报文交付给接收主机.如果该报文段到达接收主机,UDP使用目的端口号将报文段中的数据交付给…