2007-12-10
TAG:

1、是不是我们的availabletable只管到currentframenum后面7个帧?(availability_init函
数里加入了第一个表项,persistence是7)如果是这样的话,request函数有没有可能分配不
出时间?而且是否每过一个帧还要写个函数把currentframenum+7帧的时间加入availabetable

答: 1,不是只管currentframenum后面的7祯。你看标准,里面7代表从当前祯以后的所有祯。

2、unavailabletable有什么用?

答:2,我当时写unavailabletable目的是要在每祯开始时候做刷新,刷新时扫描不可用表,如果不可用表到期,则相应表项置为available,然后加入到availabletable。现在看来,我们每祯开始时候扫描连接,对于到期的连接,把状态从IN_USING改为LINK_HAVE,那么同时就可以把该连接对应的时间还原为available写入availabletable。所以这样看的话,unavailabletable可以不用。

3、request函数是不是就是为其他结点的request分配时槽?为什么这个函数没有考虑
到persistence,是用不着考虑吗?(函数的参数虽然有persistence,但是函数体里根本没用

答:3,我不知道你所指的request函数是哪个类里面的request函数。如果是wimaxschedule中的get_request的话,那么这个函数是收集本地保存的未处于IN_USING的连接的带宽请求。我生成请求的时候,没考虑persistence。我觉得这个可以以后再考虑。因为如果是考虑到了persistence级别,可能相对复杂,我只是为了简单而已。。。

 4、其他结点的availabletable更新到哪里去?为什么request函数里没有考虑到其他结点是否available?

答:4,我们为什么要管其他节点的availabletable?availabletable的实际作用就是我收集别人发给我的带宽请求,当我需要做grant的时候,遍历availabletable,从我的可用时间中考虑是否有足够的时间做grant,若有,则生成一个grant,然后在availabletable中扣除这个分配的时间。

 5、在parseDSCH中处理schedulingIE的时候,能否保证发送结点已经在自己的邻居表里?还用不用像NCFG一样分在邻居表里和不再邻居表里的情况?

答:5,可能会出现没有该邻居节点的情况。如果没有,那么直接无视,因为加入邻居表等操作是ncfg的事情。






@ 21:22:05 | 引用 0 | 编辑



评论
 
hybin () @ 2007-12-11 09:50:37
我先不管了,我在dschstmanager里再写一个分配时间的函数,其他结点的availabletable我暂时不管,写出来跑跑看再说



 
hybin () @ 2007-12-11 09:44:32
谢谢!我大致上了解了。
不过还有两点我再问一下:
3里说的request是dschstmanager里的
DSCHAvailableTable * request(int range, int persistence);这个函数好像是为参数中的range和persistence分配一个interval。我估计这个函数是用来为其他结点的request分配时间的是吧。那分配的时候应该把range和persistence一起考虑进去,但是request(int range, int persistence)里完全没有考虑到persistence。这是为什么?

4、如果我们不维护其他结点的available信息,那我们生成grant的时候分配出的时间对于生成grant的结点来说是空闲的,但是可能对于requester来说却是忙碌的!DSCH里的availablility_IE难道不是让我们收集其他结点的available时间的吗?



发表评论
 姓名: 
 E-mail: 
 地址: