TIwilliam hill官网
直播中

蒋牛钱

7年用户 281经验值
私信 关注
[问答]

RX flow定义的接收队列的问题

大家好,有一个概念需要专家帮我解释一下。在RX flow中定义了RX_DEST_QNUM,看解释是:在这个flow上的packet的接受队列。还定义了RX_FDQ0_SZ0_QNUM,看解释是用于接收第一部分的Rx buffer。那么最后我从发送端发送的包裹最后实在队列RX_DEST_QNUM还是队列RX_FDQ0_SZ0_QNUM?如果在RX_DEST_QNUM中,那么RX_FDQ0_SZ0_QNUM队列的作用是什么呢?

回帖(4)

蒋牛钱

2018-6-21 04:25:50
比如说我看到一个程序,当在发送端发送了packet之后,在接收端的dest queue中弹出一个descpritor,这时,这个descpritor中的buffer就是pay load了是吧,可是为什么最后回收descpritor就是把descpritor压入RX_FDQ0_SZ0_QNUM呢?这是什么原因?
举报

李莉

2018-6-21 04:37:54
引用: 斌无非师范 发表于 2018-6-21 04:25
比如说我看到一个程序,当在发送端发送了packet之后,在接收端的dest queue中弹出一个descpritor,这时,这个descpritor中的buffer就是pay load了是吧,可是为什么最后回收descpritor就是把descpritor压入RX_FDQ0_SZ0_QNUM呢?这是什么原因?

guoping Lee 您好!
1 RX flow中定义了RX_DEST_QNUM是指收到包之后发送到哪个队列。
2 RX_FDQ0_SZ0_QNUM指的是自由的描述符队列。
您想想啊:rx flow在接收数据的时候,他要把这些数据放到一个地方吧,然后通知用户说我收到一个包。PA就会从RX_FDQ0_SZ0_QNUM中弹出一个描述符,将数据写到buffPtr中,然后入队到RX_DEST_QNUM,这样用户通过查询或中断的方式就可以知道 有数据接收到了。
3 如果PA一直收到包,不断的从RX_FDQ0_SZ0_QNUM中弹出描述符,那么总有一天会空的,空就接收失败了,所以回收要push到这个队列
举报

蒋牛钱

2018-6-21 04:55:45
引用: 储蓄叛逆 发表于 2018-6-21 04:37
guoping Lee 您好!
1 RX flow中定义了RX_DEST_QNUM是指收到包之后发送到哪个队列。
2 RX_FDQ0_SZ0_QNUM指的是自由的描述符队列。

讲的很明白,多谢LI TIAN的解答
举报

李阳

2018-6-21 05:02:11
引用: 储蓄叛逆 发表于 2018-6-21 04:37
guoping Lee 您好!
1 RX flow中定义了RX_DEST_QNUM是指收到包之后发送到哪个队列。
2 RX_FDQ0_SZ0_QNUM指的是自由的描述符队列。

您好!
2个不同的queue,是从RX_FDQ0_SZ0_QNUM取descriptor放到RX_DEST_QNUM。
RX_DEST_QNUM是目的地。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分