1.无状态 协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时她的应答就较快 2.无连接 一次连接只能处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接,采用这种方式可以节省 ...
分类:
Web程序 时间:
2019-01-02 01:19:23
阅读次数:
136
https://coolshell.cn/articles/11609.html 这篇文章是下篇,所以如果你对TCP不熟悉的话,还请你先看看上篇《TCP的那些事儿(上)》 上篇中,我们介绍了TCP的协议头、状态机、数据重传中的东西。但是TCP要解决一个很大的事,那就是要在一个网络根据不同的情况来动态 ...
分类:
其他好文 时间:
2018-12-29 18:29:58
阅读次数:
162
RabbitMQ 是使用 Erlang 语言开发的消息中间件, 其遵循了高级消息队列协议(Advanced Message Queuing Protocol, AMQP)。 与 Kafka 等消息队列相比,RabbitMQ 最大的优势在于其较高的可靠性: 提供确认(ACK)和重传机制保证消息完成消费 ...
分类:
其他好文 时间:
2018-12-16 14:41:18
阅读次数:
130
采用两次握手,那么若Client向Server发起的包A1如果在传输链路上遇到的故障,导致传输到Server的时间相当滞后,在这个时间段由于Client没有收到Server的对于包A1的确认,那么就会重传一个包A2,假设服务器正常收到了A2的包,然后返回确认B2包。由于没有第三次握手,这个时候Cli ...
分类:
其他好文 时间:
2018-12-10 19:14:09
阅读次数:
220
【前言】 "上一篇文章" 介绍了关于TCP的基础知识,以及建立(释放)连接和滑动窗口的概念。 本篇文章将延续上一篇的思路,继续介绍TCP实现可靠传输的机制。 超时重传 上一篇文章里介绍过TCP采用 停止等待协议 ,即在收到接收方的确认信息后才继续发送下面的数据。 那么如果(在一段时间内)发送方没有收 ...
分类:
其他好文 时间:
2018-12-08 13:31:20
阅读次数:
190
Transport 传输层 多路复用: 一个协议为多个上层协议或者多个上层应用提供一个统一的服务 TCP/UDP 通过端口号区分不同的上层协议或应用 语音和视频通常使用的是UDP协议,要求实时性,如果丢包重传输是没有意义的 UDP协议的特点 UDP协议报头 ...
分类:
其他好文 时间:
2018-11-07 14:05:04
阅读次数:
162
TCP报文格式 TCP报文格式图: 上图中有几个字段需要重点介绍下: (1)序号:Seq序号,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。 (2)确认序号:Ack序号,占32位,只有ACK标志位为1时,确认序号字段才有效,Ack=Seq+1。 (3)标志位:共6 ...
分类:
其他好文 时间:
2018-11-06 00:59:14
阅读次数:
256
迷途是指, 当数据传输途中的某个路由器崩溃或者某两个路由器之间的某条链路断开, 路由协议需要花费一段时间来找到零一条通路, 在这个过程中可能会出现从路由器A发送给路由器B的分组又经由B发送回A这种循环情况, 在这个过程中, 发送端可能因为超时而重传了分组, 而这时这个分组经由正确的路径到达了接收端, ...
分类:
其他好文 时间:
2018-11-03 02:25:39
阅读次数:
244
TCP拥塞控制 计算机网络中的带宽、交换结点中的缓存和处理机等,都是网络的资源。在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就会变坏。这种情况就叫做拥塞。 拥塞控制就是防止过多的数据注入网络中,这样可以使网络中的路由器或链路不致过载。拥塞控制是一个全局性的过程,和流 ...
分类:
其他好文 时间:
2018-10-28 16:52:13
阅读次数:
173
两种协议都是传输层协议,为应用层提供信息载体。 TCP协议是基于连接的字节流的可靠协议,有三次握手,四次挥手,超时重传,流量控制(滑动窗口),拥塞控制和差错控制,也正因为有可靠性的保证和控制手段,所以传输效率比UDP低; UDP协议是基于无连接的数据报的不可靠协议,没有控制手段,仅仅是将数据发送给对 ...
分类:
其他好文 时间:
2018-10-24 22:18:59
阅读次数:
162