计算机网络之TCP与UDP

首先,在这里简单总结一下二者的区别:

1. TCP(传输控制协议)是一种面向连接的协议,提供客户与服务器的连接。而UDP(数据包协议),是一种无连接的协议,因为UDP客户端与服务器不存在长期的关系,例如一个UDP客户端创建一个套接字发送数据报给一个服务器,然后立刻用同一个套接字发送另一个数据报给另一个服务器。同样,一个UDP服务器也可以用一个UDP套接字同多个不同的客户端接收多个数据报。

UDP不是可靠的,不能保证最终到达他们的目的地,不能保证各个数据报跨网络传输后最后的顺序不变,也不保证每个数据报最后只到达一次。

2. TCP提供可靠性保障。当使用TCP向另一端发送数据时,他要求对方返回一个确认。如果没有收到确认,则自动设置等待更长时间。在数次重传失败后,TCP才放弃。

3. TCP通过给所发送字节流的每一个字节关联一个序号来实现排序。UDP提供不可靠的数据传送,不提供确认,序号,超时重传等机制。

4. TCP提供流量控制,告诉对端他能接收多少字节的数据,这称为通告窗口,这个窗口在任意时刻都将指出接收缓存区的大小,从而保证接收的数据不会溢出缓存区。

5. TCP是全双工的,UDP也可以是全双工的。同时,两者都既可以是IPV4也可以是IPV6。

UDP有以下优点:1. 对系统资源要求相对较少  2. 实时性好  3. 网络开销少  当某个程序需要尽可能多发出信息(其中任意给定数据的重要性要求相对较低)则应该用UDP

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值