`
sunny.yang
  • 浏览: 31750 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

TCP/UDP报文格式2009-06-18 21:40

阅读更多



首先让我们来看一下 TCP 的报文头部主要字段:

    序列号(Sequence number)字段用来标识TCP 源端设备向目的端设备发送的字节流,它表示在这个报文段中的第一个数据字节。如果将字节流看作在两个应用程序间的单向流动,则TCP 用序列号对每个字节进行计数。序列号是一个32bits 的数。


    TCP 的流量控制由连接的每一端通过声明的窗口大小(windows size)来提供。窗口大小用数据包来表示,例如Windows size=3, 表示一次可以发送三个数据包。窗口大小起始于确认字段指明的值,是一个16bits 字段。窗口大小可以调节。

    最常见的可选字段是 MSS(Maximum Segment Size,最大报文大小)。MSS指明本端所能够接收的最大长度的报文段。当一个TCP 连接建立时,连接的双方都要通告各自的MSS 协商可以传输的最大报文长度。我们常见的MSS有1024(以太网可达1460 字节)字节。

     相对于 TCP 报文,UDP 报文只有少量的字段:源端口号、目的端口号、长度、校验和等,各个字段功能和TCP 报文相应字段一样。
    UDP 报文没有可靠性保证和顺序保证字段,流量控制字段等,可靠性较差。当然,使用传输层UDP 服务的应用程序也有优势。正因为UDP 协议较少的控制选项,在数据传输过程中,延迟较小,数据传输效率较高,适合于对可靠性要求并不高的应用程序,或者可以保障可靠性的应用程序像DNS、 TFTP、SNMP 等;UDP 协议也可以用于传输链路可靠的网络




 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics