51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 17767|回复: 12

[求助] TCP与UDP各自是什么意思,有什么区别?

[复制链接]

该用户从未签到

发表于 2010-5-27 10:48:42 | 显示全部楼层 |阅读模式
最近在学习MiniSiffer 抓包工具的使用,在其中的筛选选项中有 TCP 、 UDP、 ICMP等几个协议的选项,不明白他们分别是什么意思,有什么作用,又有什么区别?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
回复

使用道具 举报

该用户从未签到

发表于 2010-5-27 11:14:56 | 显示全部楼层
TCP和UDP是两种不同的传输协议
UDP 是User Datagram Protocol的简称, 中文名是用户数据包协议,是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。
TCP:Transmission Control Protocol 传输控制协议TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议

两者之间的区别主要在于:对传输数据的可靠性保证。UDP追求最短时间内的快速传输数据包,可靠性低而速度快。TCP追求高可靠性,而导致在某些环境中传输速度较慢。
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-5-27 11:16:09 | 显示全部楼层
基本型的概念可以在“百度百科”和“维基”里查到,具体协议内容可以查RFC规范
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-5-27 11:45:08 | 显示全部楼层
昨天用了下MiniSiffer,感觉不好用,经常抓不到包,大部分的包截取到后也没有显示,难得显示一两个,IP也是乱码……也许是我的使用方法有问题,不过我实在没有找到更多的按钮了……
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2010-5-31 10:24:05 | 显示全部楼层
因为工作的需要,所以现在正在学习,也希望听听各位的见解!
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-6-25 13:54:18 | 显示全部楼层
哦哦
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    6 天前
  • 签到天数: 535 天

    连续签到: 1 天

    [LV.9]测试副司令

    发表于 2010-6-25 15:04:00 | 显示全部楼层
    TCP是一种协议,UTP就不清楚了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    6 天前
  • 签到天数: 535 天

    连续签到: 1 天

    [LV.9]测试副司令

    发表于 2010-6-25 15:05:31 | 显示全部楼层
    TCP:Transmission Control Protocol 传输控制协议TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议,由IETF的RFC 793说明(specified)。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,UDP是同一层内另一个重要的传输协议。

    tcp作用
      TCP建立连接时的三次握手  在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。   应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分割成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传送单元(MTU)的限制)。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。TCP为了保证不发生丢包,就给每个字节一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的字节发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据(假设丢失了)将会被重传。TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和。   首先,TCP建立连接之后,通信双方都同时可以进行数据的传输,其次,他是全双工的;在保证可靠性上,采用超时重传和捎带确认机制。   在流量控制上,采用滑动窗口协议,协议中规定,对于窗口内未经确认的分组需要重传。   在拥塞控制上,采用慢启动算法。


    什么是TCP/IP?
      TCP/IP(Transmission Control Protocol/Internet Protocol) 即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WAN)设计的。它是由ARPANET网的研究机构发展起来的。   有时我们将TCP/IP描述为互联网协议集\"InternetProtocolSuite\",TCP和IP是其中的两个协议(后面将会介绍)。由于TCP和IP是大家熟悉的协议,以至于用TCP/IP或IP/TCP这个词代替了整个协议集。这尽管有点奇怪,但没有必要去争论这个习惯。例如,有时我们讨论NFS是基于TCP/IP时,尽管它根本没用到TCP(只用到IP,和另一种交互式 协议UDP而不是TCP)。   TCP/IP的标准在一系列称为RFC的文档中公布。文档由技术专家、特别工作组、或RFC编辑修订。公布一个文档时,该文档被赋予一个RFC编号,如RFC959(FTP的说明文档)、RFC793(TCP的说明文档)、RFC791(IP的说明文档)等。最初的RFC一直保留而从来不会被更新,如果修改了该文档,则该文档又以一个新号码公布。因此,重要的是要确认你拥有了关于某个专题的最新RFC文档。通常在RFC的开头部分,有相关RFC的更新(update)、修改(errata)、作废(obsolete)信息,提示读者信息的时效性。详情请阅读网站RFC-editor[1]。
    [编辑本段]TCP所支持的服务类型
      不管怎样,TCP/IP是一个协议集。为应用提供一些\"低级\"功能,这些包括IP、TCP、UDP。其它是执行特定任务的应用协议,如计算机间传送文件、发送电子邮件、或找出谁注册到另外一台计算机。因此, 最重要的\"商业\"TCP/IP服务有:
    FTP 文件传送(File Transfer)
      文件传送协议FTP(File TransferProtocol)允许用户从一台计算机到另一台取得文件,或发送文件到另外一台计算机。从安全性方面考虑,需要用户指定一个使用其它计算机的用户名和口令。它不同于NFS(Network File System)和Netbios协议。一旦你要访问另一台系统中的文件,任何时刻都要运行FTP。而且你只能拷贝文件到自己的机器中去来使用它。RFC 959中有关于FTP的详尽说明。
    RLogin 远程登录(Remote login)
      网络终端协议TELNET允许用户登录到网络上任一计算机上。你可启动一个远程进程连接到指定的计算机,直到进程结束,期间你所键入的内容被送到所指定的计算机。值得注意的是,这时你实际上是与你的计算机进行对话。TELENET程序使得你的计算机在整个过程中不见了,所敲的每一个字符直接送到所登录的计算机系统。一般的说,这种远程连接是通过类式拨号连接的,也就是,拨通后,远程系统提示你输入注册名和口令,退出远程系统,TELNET程序也就退出,你又与自己的计算机对话了。微电脑中的TELNET工具一般含有一个终端仿真程序。
    SMTP POP3 电子邮件(Mail)
      允许你发送消息给其它计算机的用户。通常,人们趋向于使用指定的一台或两台计算机。计算机邮件系统只需你简单地往另一用户的邮件文件中添加信息,但随之产生问题,使用的微电脑的环境不同,还有重要的是宏(MACRO)不适合于接受计算机邮件。为了发送电子邮件,邮件软件希望连接到目的计算机,如果是微电脑,也许它已关机,或者正在运行另一个应用程序呢?出于这种原因,通常由一个较大的系统来处理这些邮件,也就是一个一直运行着的邮件服务器。邮件软件成为用户从邮件服务器取回邮件的一个界面。   任何一个的TCP/IP工具提供上述这些服务。这些传统的应用功能在基于TCP/IP的网络中一直扮演非常重要的角色。目前情况有点变化,这些功能使用也发生变化,如老系统的改造,计算机的发展等,出现了各种安装版本,如:微电脑、工作站、小型机、和巨型机等。这些计算机好像在一起完成指定的任务,尽管有时看来像是只用到某个指定的计算机,但它是通过网络得到其它计算机系统的服务。服务器Server是为网络上其它提供指定服务的系统,客户Client是得到这种服务的另外计算机系统。(值得注意的是,服务/客户机不一定是不同的计算机,有可能是同一计算机中的不同运行程序)。以下是几种目前计算机上典型的一些服务,这些服务可在TCP/IP网络上调用。
    NFS 网络文件系统(Network File System)
      这种访问另一计算机的文件的方法非常接近于流行的FTP。网络文件系统提供磁盘或设备服务,而无需特定的网络实用程序来访问另一系统的文件。可以简单地认为它是一个外加的磁盘驱动器。这种额外\"虚拟\"磁盘驱动器就是其它计算机系统的磁盘。这非常有用。你只需加大几台计算机的磁盘容量,就可使网络上其他用户访问它,且不说所带来的经济效益,它还能够让几台工作的计算机共享相同的文件。它也使得系统维护和备份易如反掌,因为再不必为大量的不同机器上的文件的升级和备份而担心。
    远程打印(Remote Printing)
      允许你使用其它计算机上的打印机,好像这些打印机直接连到你的计算机上。
    远程执行(Remote Execution)
      允许你请求运行在不同计算机上的特殊程序。当你在一个很小的计算机上运行一个需要大机系统资源的程序时,这时候远程执行非常有用。
    名字服务器(Name Servers)
      在一个大的系统安装过程中,需要用到大量的各种名字,包括用户名、口令,姓名、网络地址、帐号等,管理这些是非常令人乏味的。因此将这些数据形成数据库,放到一个小系统中去,其它系统通过网络来访问这些数据。
    终端服务器(Terminal Servers)
      很多的终端连接安装不再直接将终端连到计算机,取而代之的是,将他们连接到终端服务器上。终端服务器是一个小的计算机,它只需知道怎样运行TELNET(或其它一些完成远程登录的协议)。如果你的终端想连上去,只用键入要连的计算机名就可。通常有可能同时有几个这种连接,这时终端服务器采用快速开关技术来切换。   上述所描述的一些协议是由Berkeley, Sun,或其它组织定义的。因此,它们不是互联网协议集(InternetProtocol Suite)的一部分, 只是使用到TCP/IP的工具,如同一般的TCP/IP应用协议。因为协议的定义不一致,并且商业支持的TCP/IP工具广泛应用,也许会把这些协议作为互联协议集中的一部分。上述列出的只是基于TCP/IP部分服务的一些简单例子,但包含了一些\"主要\"的应用。
    [编辑本段]TCP的首部图
      下图展示了TCP首部的数据格式。如果不计任选(Options)字段,那么,它的大小是20个字节。   TCP首部的数据格式
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    6 天前
  • 签到天数: 535 天

    连续签到: 1 天

    [LV.9]测试副司令

    发表于 2010-6-25 15:06:11 | 显示全部楼层
    [编辑本段]TCP连接的建立与终止
    TCP连接的建立
      TCP协议通过三个报文段完成连接的建立,这个过程称为三次握手(three-way handshake),过程如下图所示。   TCP的三次握手TCP连接的终止
      建立一个连接需要三次握手,而终止一个连接要经过四次握手,这是由TCP的半关闭(half-close)造成的。具体过程如下图所示。   TCP连接的终止
    [编辑本段]TCP的服务流程
      TCP协议提供的是可靠的、面向连接的传输控制协议,即在传输数据前要先建立逻辑连接,然后再传输数据,最后释放连接3个过程。TCP提供端到端、全双工通信;采用字节流方式,如果字节流太长,将其分段;提供紧急数据传送功能。   尽管TCP和UDP都使用相同的网络层(IP),TCP却向应用层提供与UDP完全不同的服务。   TCP提供一种面向连接的、可靠的字节流服务。   面向连接意味着两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。这一过程与打电话很相似,先拨号振铃,等待对方摘机说“喂”,然后才说明是谁。   在一个TCP连接中,仅有两方进行彼此通信。广播和多播不能用于TCP。   TCP通过下列方式来提供可靠性:   o应用数据被分割成TCP认为最适合发送的数据块。这和UDP完全不同,应用程序产生的数据报长度将保持不变。由TCP传递给IP的信息单位称为报文段或段(segment)TCP如何确定报文段的长度。   o当TCP发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到一个确认,将重发这个报文段。o当TCP收到发自TCP连接另一端的数据,它将发送一个确认。这个确认不是立即发送,通常将推迟几分之一秒   oTCP将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到段的检验和有差错,TCP将丢弃这个报文段和不确认收到此报文段(希望发端超时并重发)。   o既然TCP报文段作为IP数据报来传输,而IP数据报的到达可能会失序,因此TCP报文段的到达也可能会失序。如果必要,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层。   o既然IP数据报会发生重复,TCP的接收端必须丢弃重复的数据。   oTCP还能提供流量控制。TCP连接的每一方都有固定大小的缓冲空间。TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据。这将防止较快主机致使较慢主机的缓冲区溢出。   两个应用程序通过TCP连接交换8bit字节构成的字节流。TCP不在字节流中插入记录标识符。我们将这称为字节流服务(bytestreamservice)。如果一方的应用程序先传10字节,又传20字节,再传50字节,连接的另一方将无法了解发方每次发送了多少字节。收方可以分4次接收这80个字节,每次接收20字节。一端将字节流放到TCP连接上,同样的字节流将出现在TCP连接的另一端。   另外,TCP对字节流的内容不作任何解释。TCP不知道传输的数据字节流是二进制数据,还是ASCII字符、EBCDIC字符或者其他类型数据。对字节流的解释由TCP连接双方的应用层解释。   这种对字节流的处理方式与Unix操作系统对文件的处理方式很相似。Unix的内核对一个应用读或写的内容不作任何解释,而是交给应用程序处理。对Unix的内核来说,它无法区分一个二进制文件与一个文本文件。   TCP是因特网中的传输层协议,使用三次握手协议建立连接。当主动方发出SYN连接请求后,等待对方回答SYN,ACK。这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制协议是可变大小的滑动窗口协议。第一次握手:建立连接时,客户端发送SYN包(SEQ=x)到服务器,并进入SYN_SEND状态,等待服务器确认。第二次握手:服务器收到SYN包,必须确认客户的SYN(ACK=x+1),同时自己也送一个SYN包(SEQ=y),即SYN+ACK包,此时服务器进入SYN_RECV状态。第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=y+1),此包发送完毕,客户端和服务器时入Established状态,完成三次握手。
    [编辑本段]TCP所提供服务的主要特点
      (1)面向连接的传输;   (2)端到端的通信;   (3)高可靠性,确保传输数据的正确性,不出现丢失或乱序;   (4)全双工方式传输;   (5)采用字节流方式,即以字节为单位传输字节序列;   (6)紧急数据传送功能。
    [编辑本段]TCP的重传策略
      TCP协议用于控制数据段是否需要重传的依据是设立重发定时器。在发送一个数据段的同时启动一个重发定时器,如果在定时器超时前收到确认就关闭该定时器,如果定时器超时前没有收到确认,则重传该数据段。   这种重传策略的关键是对定时器初值的设定。目前采用较多的算法是Jacobson于1988年提出的一种不断调整超时时间间隔的动态算法。其工作原理是:对每条连接TCP都保持一个变量RTT,用于存放当前到目的端往返所需要时间最接近的估计值。当发送一个数据段时,同时启动连接的定时器,如果在定时器超时前确认到达,则记录所需要的时间(M),并修正RTT的值,如果定时器超时前没有收到确认,则将RTT的值增加1倍。
    [编辑本段]TCP的端口号
      TCP段结构中端口地址都是16比特,可以有在0~65535范围内的端口号。对于这65536个端口号有以下的使用规定:   (1)端口号小于256的定义为常用端口,服务器一般都是通过常用端口号来识别的。任何TCP/IP实现所提供的服务都用1~1023之间的端口号,是由IANA来管理的;   (2)客户端只需保证该端口号在本机上是惟一的就可以了。客户端口号因存在时间很短暂又称临时端口号;   (3)大多数TCP/IP实现给临时端口号分配1024~5000之间的端口号。大于5000的端口号是为其他服务器预留的。
    [编辑本段]TCP协议是如何确保数据传输高可靠性
      为了保证可靠性,发送的报文都有递增的序列号。序呈和确认号用来确保传输的可靠性。此外,对每个报文都设立一个定时器,设定一个最大时延。对那些超过最大时延仍没有收到确认信息的报文就认为已经丢失,需要重传。
    [编辑本段]如何重置TCP/IP协议
      在Windows Server 2003(简称Windows 2003)的连接属性对话框中,如果点击“Internet协议(TCP/IP)选项,“卸载”按钮为灰色,是不可用的。这是因为TCP/IP协议是Windows Server 2003的核心组件,不能删除。   如果我们需要将TCP/IP重置到原始状态,该怎么办呢?此时,我们可以借助“netsh”命令行工具来解决这一问题。在“运行”对话框中输入“cmd”,打开“命令提示符”窗口,然后输入命令行“netsh int ip reset resetlog.txt”或“netsh int ip resetc:\resetlog.txt”并按回车键。其中的“reset”命令可以重写与TCP/IP相关的注册表项“System\CurrentControlSet\Services\Tcpip\Parameters\”和“System\CurrentControlSet\Services\DHCP\Parame ters\”,运行以上命令的结果与删除并重新安装TCP/IP的效果相同。   此外,两个命令行的不同之处仅仅在于“resetlog.txt”日志文件的存储位置有所区别。前者是将日志文件创建在当前文件夹中,而后者则指定了具体的保存路径。   在WindowsXP的网络组件列表里,Internet 协议 (TCP/IP)的"卸载"按钮是灰色不可选状态。这是因为传输控制协议/Internet 协议(TCP/IP) 堆栈是 Microsoft XP/ 2003 的核心组件(TCP/IP协议是WindowsXP的默认协议),不能删除。所以Windows XP不允许卸载TCP/IP协议。如果在特殊情况下需要重新安装TCP/IP协议,如何操作?   解决方法   在这种情况下,如果需要重新安装 TCP/IP 以使 TCP/IP 堆栈恢复为原始状态。可以使用 NetShell 实用程序重置 TCP/IP 堆栈,使其恢复到初次安装操作系统时的状态。具体操作如下:   1、单击 开始 --> 运行,输入 "CMD" 后单击 "确定";   2、在命令行模式输入命令   netsh int ip reset C:\resetlog.txt   (其中,Resetlog.txt记录命令结果的日志文件,一定要指定,这里指定了Resetlog.txt 日志文件及完整路径。)   运行结果可以查看C:\resetlog.txt (咨询中可根据用户实际操作情况提供)   运行此命令的结果与删除并重新安装 TCP/IP 协议的效果相同。   注意   本操作具有一定的风险性,请在操作前备份重要数据,并根据操作熟练度酌情使用。
    [编辑本段]TCP公司简介[以下为非计算机类]
      TechnicalConsumerProducts,INC之英文缩写TCP,是美国大型跨国光源公司,主要生产经营各种优质节能光源、灯具及相关照明电器产品。1997年,全球第一支高品质螺旋型节能灯在美国TCP公司问世,一经推出即得到国际照明行业的高度评价,并受到美国消费者的普遍欢迎。TCP公司当年即荣获全美节能灯销售第一的桂冠。随着TCP不断追求技术创新,产品品质不断提升,其数百款光源产品均通过了国际能效认证机构ENERGYSTAR(能源之星)的认证,多年保持美国销量第一的殊荣,产品行销全球许多国家。TCP也成为美国、加拿大等北美地区最著名的光源品牌之一。   上个世纪末,TCP来到中国,在上海市及江苏省投资数亿兴建了多家现代照明生产基地,员工总数已超过14000人,工程技术人员占15%。TCP全资控股的上海振欣电子工程有限公司,镇江强凌电子有限公司、扬州强凌电子有限公司以及淮安强凌电子有限公司每天有超过140万只的高品质节能灯光源出口到美国等西方发达国家。2004年,美国TCP(上海)天灿宝照明电器有限公司成立,其专门负责高品质的TCP光源及灯具产品在中国国内的销售和服务。在前期市场导入阶段,TCP在上海、北京已取得成功的销售业绩,数百家大型机构抢先分享了TCP照明科技。   TCP“让照明成为享受”的理念,正走向中国日益发展的新生活。   制造理念:高品质、高可靠性、高一致性、低价位   企业精神:诚信、发展、创新、超越   企业座右铭:你想要一个稳定的世界,必须创造一个世界。   品牌战略:做世界上最好的节能光源,让照明成为享受。   产品战略:让所有使用白炽灯的地方都可以用节能灯代替。   营销战略:以上海、北京、广州为中心,逐步建立遍布全国的营销组织网络。      TCP射孔   油管传输射孔
    [编辑本段]TCP协议和UDP协议的区别
      1,TCP协议面向连接,UDP协议面向非连接   2,TCP协议传输速度慢,UDP协议传输速度快   3,TCP协议保证数据顺序,UDP协议不保证   4,TCP协议保证数据正确性,UDP协议可能丢包   5,TCP协议对系统资源要求多,UDP协议要求少   TCP = Technology Control Plan, 技术管制计划
    [编辑本段]TCP窗口确认
      TCP的一项功能就是确保每个数据段都能到达目的地。位于目的主机的TCP服务对接受到的数据进行确认,并向源应用程序发送确认信息。   使用数据报头序列号以及确认号来确认已收到包含在数据段的相关的数据字节。   TCP在发回源设备的数据段中使用确认号,指示接收设备期待接收的下一字节。这个过程称为期待确认。   源主机在收到确认消息之前可以传输的数据的大小称为窗口大小。用于管理丢失数据和流量控制。

    参考资料
    1.
    扩展阅读:
    1.1.RFC 793

    2.2.《TCP/IP详解》卷一 (美)W.Richard Stevens

    开放分类:
    计算机,网络协议,美国TCP公司
    [我来完善] “TCP”相关词条:
    更多
    IEEE802LDAPSNMPUDPPPP路由选择信息协议ICMPPPPOEARPIPXRPC
                Internet组管理协议PPTP 反向地址转换协议 SLIP POP3 SMTP NTP RTP IPCP RTSP DHCP IP EGP SDP CDP 协议
    “TCP”在英汉词典中的解释(来源:百度词典):
    TCP
    abbr.
    1. =Transmission Control Protocol 【电脑】传输控制协定


    tcp
    abbr.
    1. =traffic control panel 交通控制盘
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    6 天前
  • 签到天数: 535 天

    连续签到: 1 天

    [LV.9]测试副司令

    发表于 2010-6-25 15:06:56 | 显示全部楼层
    UDP 百科名片
    UDP 是User Datagram Protocol的简称, 中文名是用户数据包协议,是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。它是IETF RFC 768是UDP的正式规范。
    目录[隐藏]

    UDP报头
    UDP协议的几个特性
    化学中的UDP 



      
    [编辑本段]UDP报头
      UDP报头由4个域组成,其中每个域各占用2个字节,具体如下:   源端口号   目标端口号   数据报长度   校验值   UDP协议使用端口号为不同的应用保留其各自的数据传输通道。UDP和TCP协议正是采用这一机制实现对同一时刻内多项应用同时发送和接收数据的支持。数据发送一方(可以是客户端或服务器端)将UDP数据报通过源端口发送出去,而数据接收一方则通过目标端口接收数据。有的网络应用只能使用预先为其预留或注册的静态端口;而另外一些网络应用则可以使用未被注册的动态端口。因为UDP报头使用两个字节存放端口号,所以端口号的有效范围是从0到65535。一般来说,大于49151的端口号都代表动态端口。   数据报的长度是指包括报头和数据部分在内的总字节数。因为报头的长度是固定的,所以该域主要被用来计算可变长度的数据部分(又称为数据负载)。数据报的最大长度根据操作环境的不同而各异。从理论上说,包含报头在内的数据报的最大长度为65535字节。不过,一些实际应用往往会限制数据报的大小,有时会降低到8192字节。   UDP协议使用报头中的校验值来保证数据的安全。校验值首先在数据发送方通过特殊的算法计算得出,在传递到接收方之后,还需要再重新计算。如果某个数据报在传输过程中被第三方篡改或者由于线路噪音等原因受到损坏,发送和接收方的校验计算值将不会相符,由此UDP协议可以检测是否出错。这与TCP协议是不同的,后者要求必须具有校验值。   许多链路层协议都提供错误检查,包括流行的以太网协议,也许想知道为什么UDP也要提供检查和。其原因是链路层以下的协议在源端和终端之间的某些通道可能不提供错误检测。虽然UDP提供有错误检测,但检测到错误时,UDP不做错误校正,只是简单地把损坏的消息段扔掉,或者给应用程序提供警告信息。
    [编辑本段]UDP协议的几个特性
      (1) UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。   (2) 由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。   (3) UDP信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包的额外开销很小。   (4) 吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。   (5)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的链接状态表(这里面有许多参数)。   (6)UDP是面向报文的。发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付给IP层。既不拆分,也不合并,而是保留这些报文的边界,因此,应用程序需要选择合适的报文大小。    虽然UDP是一个不可靠的协议,但它是分发信息的一个理想协议。例如,在屏幕上报告股票市场、在屏幕上显示航空信息等等。UDP也用在路由信息协议RIP(Routing Information Protocol)中修改路由表。在这些应用场合下,如果有一个消息丢失,在几秒之后另一个新的消息就会替换它。UDP广泛用在多媒体应用中,例如,Progressive Networks公司开发的RealAudio软件,它是在因特网上把预先录制的或者现场音乐实时传送给客户机的一种软件,该软件使用的RealAudio audio-on-demand protocol协议就是运行在UDP之上的协议,大多数因特网电话软件产品也都运行在UDP之上。
    [编辑本段]化学中的UDP 
      UDP = uridine diphosphate,尿苷二磷酸,一种嘧啶核苷酸,由碱基、尿嘧啶与核糖组成,主要用途是RNA合成(转录)时的原料。 另外UDP也是DTP能量消耗后产物,功能类似ADP,但较ADP少见。参与微生物肽聚糖等的合成。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2010-6-28 16:54:33 | 显示全部楼层
    恩恩....






    我的MSN jk@ tiwens.com
    回复 支持 反对

    使用道具 举报

    该用户从未签到

     楼主| 发表于 2010-12-4 16:16:14 | 显示全部楼层
    请问有没有一种转码工具,可以把我们所看不懂的进制文件转换成我们能看懂的文本内容?
    谢谢
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2010-12-6 11:47:00 | 显示全部楼层
    呃……,转换什么?转换数据包内的16进制数据?
    没见过专门的转换的工具,一般都是工具在解析包的时候,自定义了一些方法让使用者更方便的阅读。
    我一般使用的都是wireshark,它对原始包稍微做了一些处理

    附上随意找的一篇讲解分析16进制数据包的文档,LZ有兴趣可以看看。

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-4-17 06:48 , Processed in 0.084651 second(s), 29 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表