您的位置:首页 > 教育 > 锐评 > 南宁市网页设计_各大手机官网_怎样推广_开封seo公司

南宁市网页设计_各大手机官网_怎样推广_开封seo公司

2025/6/21 1:49:59 来源:https://blog.csdn.net/m0_64218465/article/details/143215520  浏览:    关键词:南宁市网页设计_各大手机官网_怎样推广_开封seo公司
南宁市网页设计_各大手机官网_怎样推广_开封seo公司

Receiving Stream States

          o| Recv STREAM / STREAM_DATA_BLOCKED / RESET_STREAM| Create Bidirectional Stream (Sending)| Recv MAX_STREAM_DATA / STOP_SENDING (Bidirectional)| Create Higher-Numbered Streamv+-------+| Recv  | Recv RESET_STREAM|       |-----------------------.+-------+                       ||                           || Recv STREAM + FIN         |v                           |+-------+                       || Size  | Recv RESET_STREAM     || Known |---------------------->|+-------+                       ||                           || Recv All Data             |v                           v+-------+ Recv RESET_STREAM +-------+| Data  |--- (optional) --->| Reset || Recvd |  Recv All Data    | Recvd |+-------+<-- (optional) ----+-------+|                           || App Read All Data         | App Read Resetv                           v+-------+                   +-------+| Data  |                   | Reset || Read  |                   | Read  |+-------+                   +-------+

States for Receiving Parts of Streams


Recv


这是流接收端的初始状态。

当我们从一个对方作为创建者的流上接收到 STREAM, STREAM_DATA_BLOCKED, 或者 RESET_STREAM 时, 我们便处于 Recv 状态了。

对于一个对方作为创建者的双向流(bidirectional streams ), 在接收到 MAX_STREAM_DATA 或者 STOP_SENDING 之后, 便进入 Recv 状态.

当处于 Recv 状态时, 可以接收对方发送的 STREAMSTREAM_DATA_BLOCKED 帧。 接收到的数据可能是乱序的,接收方需要先将数据缓存起来,直到足以恢复出正确的数据顺序之后,再按循序递交给上层应用程序。

当数据被成功的递交给上层应用程序之后, 内部的缓存中便有了更多的空间以容纳更多的数据,此时可以发送 MAX_STREAM_DATA 给发送方,以允许它发送更多的数据。


Size Known


当接收到带有 FIN标志的 STREAM帧之后,接收方便知道了最终的数据大小,此时进入 Size Known 状态。

处于当前状态的接收方, 不需要再发送 MAX_STREAM_DATA, 它只需要继续接收对方重传的数据即可。


Data Recvd


当成功的从当前流上面接收到了所有数据时, 接收方进入 Data Recvd 状态。

处于这个状态之后, 可以忽略之后接收到的所有 STREAMSTREAM_DATA_BLOCKED 帧。


Data Read


当进入 Data Recvd 状态,流会一直在这个状态直到将所有缓存的数据递交给了上层应用程序。之后, 它的状态变为 Data Read 状态。

这是一个最终状态(a terminal state).


Reset Recvd


当流处于 Recv, Size Known 或者 Data Recvd 状态时, 收到来自对方的 RESET_STREAM 帧时, 它就进入了 Reset Recvd 状态.

当收到 RESET_STREAM 之后, 接收方可以自由选择如何处理已经接收到的数据和后续到达的数据。


Reset Read


当接收方将收到RESET_STREAM 帧这一事件通知给上层应用程序之后, 这个流便进入 Reset Read 状态。

这是一个最终状态(a terminal state).

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com