Credit-based Flow Control

1 概述

随着网络规模和应用的快速增长,拥塞已经成为一个日益重要而突出的问题。尽管拥塞控制策略已经广泛应用,但是提高网络吞吐还是一个重要方向,本文介绍一种基于信用的流量控制方式(credit-based flow control)。

2 方案

基于信用的流量的控制是实现逐链路中每个虚拟回路(virtual circuits)流量控制的有效方式,工作流程如下所示。

在通过连接发送数据之前,发送端需要接收接受端通过虚拟回路发送的信用值(credits),在不同时期,接收端发送信用额到发送端,说明接收端可用的缓冲区大小。当接收到信用额,发送端就按照信用额发送数据到接收端,每次发送端发送数据后,相应的信用额减少,这样可以有效减少失败重传造成网络阻塞。

3 使用

在流处理中,可以运用该思路,在接收端有接收缓存区,在发送端发送数据时,接收端反馈缓存区大小,如下图所示。

在该图中,发送端的channel credit是接收端buffer已占用量,接收端current sender backlog是说明发送端还有多少数据量,同时反压方式也可基于此来完成。

CBFC是在SIGCOMM 94年的一篇文章中提出的,具体的可以参考论文原文:http://www.eecs.harvard.edu/~htk/publication/1995-ieee-network-kung-morris.pdf

转载:https://www.jianshu.com/p/215dc8777b2c

猜你喜欢

转载自blog.csdn.net/weixin_44260459/article/details/120757630