tcp/ip primer plus 第九章用户数据报协议(UDP)& 伪首部

原创 2007年10月01日 21:56:00

9.1UDP操作

udp既不对发送的数据顺序化,也不对收到的数据作确认,udp依赖于其他的协议跟踪发送的数据是否到达了目的。

UDP并不分段,它只是标识源和目的端口,只是在通信设备间提供一个双向的管道。UDP依赖于IP 进行分段和数据重组。它依赖于其他层检测和恢复丢失的数据报。

9.3.4校验和

UDP头中的第四个字段,保证位在传输过程中未被破坏,它并不纠正受损帧,而只是简单的检测并丢弃他们。

udp伪头中并不真正出现在udp头中,udp实用伪头以保证数据到达了正确的目的地。udp伪头有自己的名字,因为udp并不真正在它的头中包括此信息 。相反,他了解防止错误路由的信息。主机将此信息存储在自己的内存中,而udp在需要时就访问它

TCP检验和为什么要引入TCP伪首部,请解释一下好吗?

请参考RFC。因为检验和作为TCP头部的一部分,所以必须先计算出校验和才能填充TCP头部,所以需要一个位首部来计算校验和。

tcp/udp伪首部 http://blog.tom.com/blog/read.php?bloggerid=730384&blogid=65185

1、IP首部校验和字段是根据IP首部计算的校验和码,它不对首部后面的数据进行计算。ICMP、IGMP、UDP和TCP在它们各自的首部中均含有同时覆盖首部和数据校验和码。
2、IP首部校验和计算:
为了计算一份数据报的IP检验和,首先把检验和字段置为0。然后,对首部中每个16bit进行二进制反码求和(整个首部看成是由一串16bit的字组成),结果存在检验和字段中。当收到一份IP数据报后,同样对首部中每个16bit进行二进制反码的求和。由于接收方在计算过程中包含了发送方存在首部中的检验和,因此,如果首部在传输过程中没有发生任何差错,那么接收方计算的结果应该为全1。如果结果不是全1(即检验和错误),那么IP就丢弃收到的数据报。但是不生成差错报文,由上层去发现丢失的数据报并进行重传。
3、TCP和UDP校验和计算(两者相同)
校验和还包含—个96位的伪首标,理论上它位于TCP首标的前面。这个伪首标包含了源地址、目的地址、协议和TCP长度等字段,这使得TCP能够防止出现路由选择错误的数据段。这些信息由网际协议(IP)承载,通过TCP/网络接口,在IP上运行的TCP调用参数或者结果中传递。

伪首部并非UDP数据报中实际的有效成分。伪首部是一个虚拟的数据结构,其中的信息是从数据报所在IP分组头的分组头中提取的,既不向下传送也不向上递交,而仅仅是为计算校验和。
这样的校验和,既校验了UDP用户数据的源端口号和目的端口号以及UDP用户数据报的数据部分,又检验了IP数据报的源IP地址和目的地址。(伪报头保证UDP和TCP数据单元到达正确的目的地址。因此,伪报头中包含IP地址并且作为计算校验和需要考虑的一部分。最终目的端根据伪报头和数据单元计算校验和以验证通信数据在传输过程中没有改变而且到达了正确的目的地址。)

tcp/ip primer plus 第九章用户数据报协议(UDP)& 伪首部

9.1UDP操作udp既不对发送的数据顺序化,也不对收到的数据作确认,udp依赖于其他的协议跟踪发送的数据是否到达了目的。UDP并不分段,它只是标识源和目的端口,只是在通信设备间提供一个双向的管道。U...
  • huanjieshuijing
  • huanjieshuijing
  • 2007年10月01日 21:56
  • 1009

TCP,UDP伪首部描述

伪首部(pseudo header),通常有TCP伪首部和UDP伪首部。在UDP伪首部中,包含32位源IP地址,32位目的IP地址,8位协议,16位UDP长度。通过伪首部的校验,UDP可以确定该数据报...
  • jiangqin115
  • jiangqin115
  • 2014年09月16日 11:43
  • 4303

TCP&UDP伪首部详解

最近在读Stevens 的tcp/ip详解,其中介绍到了UDP和TCP伪首部但是介绍的不够详细,只说是为了UDP和TCP校验和存在的 ,同时给出了一个伪首部的图,是直接加在UDP首部前面的,给我的困惑...
  • wufen_1981
  • wufen_1981
  • 2007年12月28日 09:40
  • 10445

IP、TCP、UDP首部详解

一、IP首部: 1、第一个4字节(也就是第一行): (1)版本号(Version),4位;用于标识IP协议版本,IPv4是0100,IPv6是0110,也就是二进制的4和6。 (2)...
  • zhangliangzi
  • zhangliangzi
  • 2016年09月16日 11:02
  • 3076

IP首部、TCP首部、UDP首部

IP首部 版本:L3协议版本号,IPv4或IPv6 首部长度:单位为4字节 协议:L4协议类型 TTL生存时间字段设置了数据报可以经过的最多路由器数。一旦经过一个处理它的路由器,它的值...
  • hjffly
  • hjffly
  • 2012年09月09日 11:13
  • 12040

tcp/udp校验和以及伪首部介绍

TCP的检验和  原文地址:http://www.cnblogs.com/zxiner/p/7203192.html 检验和目的         目的是为了发现TCP首部和数据在发送...
  • nice_wen
  • nice_wen
  • 2017年09月10日 23:40
  • 1087

UDP和TCP中的伪首部

 伪首部,通常有TCP伪首部和UDP伪首部。在UDP伪首部中,包含32位源IP地址,32位目的IP地址,8位协议,16位UDP长度。通过伪首部的校验,UDP可以确定该数据报是不是发给本机的,通过...
  • wuli2496
  • wuli2496
  • 2015年04月17日 23:02
  • 978

C Primer Plus(第6版)第九章答案

1.#include double min (double x, double y); int main (void) { double x, y; printf ("Ente...
  • sirius_black_tea
  • sirius_black_tea
  • 2017年07月25日 15:17
  • 505

c++.primer.plus第五版第九章编程练习答案

此篇为c++.primer.plus第五版第九章编程练习答案,如果有错误,还请大家多多批评指正...
  • sunshineuuc
  • sunshineuuc
  • 2015年07月16日 19:29
  • 872

c++ primer plus(第6版)中文版 第九章编程练习答案

第九章编程练习答案 9.1根据以下头文件内容编写多文件程序,提示用户输入姓名的等级,存在结构中(多文件编译时,要一起编译,g++ mian.cc golf.cc)...
  • gd275313
  • gd275313
  • 2014年05月11日 14:39
  • 1728
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:tcp/ip primer plus 第九章用户数据报协议(UDP)& 伪首部
举报原因:
原因补充:

(最多只允许输入30个字)