运输层协议:TCP和UDP协议的特点

内容来自计算机网络(第六版) 谢希仁编著 电子工业出版社

TCP协议(Transmission Control Protocol):传输控制协议。
UDP协议(User Datagram Protocol):用户数据报协议。

按照OSI的术语,两个对等运输实体在通信时传送的数据单位叫做运输协议数据单元TPDU(Transport Protocol Data Unit)。但在TCP/IP体系中,则根据所使用的协议是TCP或UDP,分别称之为TCP报文段UDP用户数据报段

UDP在传送数据之前不需要建立连接。原地主机的运输层在收到UDP报文后,不需要给出任何确认。
TCP提供面向连接的服务。在传送数据之前必须先建立连接,数据传送结束后要释放连接。

UDP协议概述:

1.UDP是无连接的
          使用UDP协议发送数据之前不需要建立连接,减少了开销和发送数据之前的时延。
2.UDP尽最大努力交付
          不保证可靠交付,主机不需要维持复杂的连接状态表。
3.UDP是面向报文的
          发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付IP层。UDP一次交付一个完整的报文。
4.UDP没有拥塞控制
          网络出现的拥塞不会使源主机的发送速率降低。很多实时应用要求源主机一恒定的速率发送数据,并且允许在网络发生拥塞时丢失一些数据,但却不允许数据有太大的时延。
5.UDP支持一对一、一对多、多对一和多对多的交互通信
6.UDP首部开销小

TCP协议概述:

1.TCP是面向连接的运输层协议
       使用TCP协议发送数据,必须先建立TCP连接,在传送数据完毕后,必须释放已经建立的TCP连接。
2.TCP提供可靠的交付服务
       通过TCP连接传送的数据,无差错、不丢失、不重复、并且按序到达。
3.TCP协议面向字节流
       TCP中的流值的是流入到进程或从进程流出的字节序列。“面向字节流”的含义是:虽然应用程序和TCP的交互是一次一个数据块(大小不等),但TCP把应用程序交下来的数据看成仅仅是一连串的无结构的字节流。TCP并不知道所传送的字节流的含义。
       TCP不保证接收方应用程序所收到的数据块和发送方应用程序所发出的数据块具有对应大小的关系,但接收方的应用程序收到的字节流必须和发送方应用程序发出的字节流完全一样。
4.TCP提供全双工通信
       TCP允许通信双方的应用进程在任何时候都能发送数据。TCP连接的两端都设有发送缓存和接收缓存,用来临时存放双向通信的数据。在发送是,应用程序在发数据传送给TCP缓存后,就可以做自己的事,而TCP在合适的时候把数据发送出去。在接收时,TCP把收到的数据放入缓存,上层的应用进程在合适的时候读取缓存中的数据。
5.每一条TCP连接只能有两个端点
       每一条TCP连接只能是点对点的,只支持一对一通信

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值