Virtual Channel与Flow Control与Deadlock
摘要
在以太网这样的有损网络中,如果一个数据包到达了一个交换机,发现它的输出端口排队极长,已经把buffer都排满了,那么这个包就会被丢弃。但是在InfiniBand这样的无损网络中,是不允许丢包的(除非超时),所以就需要buffered flow control来对数据包的发送进行严格的管理:当且仅当接收方有空闲buffer的时候,才能发送数据包。但是在进行这样的buffered flow control时,有可能会产生死锁(deadlock),会导致网络性能降低。而实现buffered flow control和避免deadlock,都需要Virtual Channel的帮助。
本文讲详细介绍Virtual Channel与Flow Control与Deadlock。