无线自组织应急通信网络的多信道介质访问控制
2.3 请求队列截取过程
请求队列截取过程使用请求分类缓冲过程生成的总请求状态信息缓冲区和请求计数器值,在缓冲区中的请求总数大于数据时隙能够提供的最大发送机会时执行。
发送机会是指能够满足节点进行一次完整发送过程的时机,在多信道环境下为某一信道上的某一数据时隙,可用二元组<时隙,信道>表示。最大发送机会是指多信道环境下所有数据时隙能够提供的发送机会的总和,即最大发送机会=数据时隙数×信道数,它代表了当前时帧结构下全网络一帧能够提供给节点的最大发送次数。当总请求数超过最大发送机会时,当前的请求中将会有一部分得不到满足。请求队列截取过程即是用来决定哪些请求能够被满足,哪些需要被丢弃。采取优先级比例预留进行请求队列的截取。算法事先配置并存储好优先级预留比例数据,用于计算预留给对应优先级的发送机会数。
例如,3个优先级算法,优先级从高到底(优先级号从0到2)的预留比例配置为:1.0、0.6、0.3。其中最高优先级0的比例是1.0,表示该优先级为强制满足的优先级,属于该优先级的请求应该在截取过程中尽量保留而不被丢弃;优先级1和优先级2的比例都小于1,表示它们需要进行正常的按比例截取。通过上述优先级比例预留策略,可以限制各个优先级在网络繁忙时占用的带宽上限,以此实现了优先级带宽按比例预留的要求。
请求队列截取过程:请求分类缓冲过程执行完毕后,所有节点请求已经缓存到对应优先级队列中。判断请求总数是否大于最大发送机会数,如果是则使用优先级预留比例,计算出各个优先级超出预留发送机会的个数。依次截取(丢弃)各个优先级中超出预留发送机会数的那一部分请求。当各个优先级的实际请求数的超额部分已经全部截取完毕,但此时如果总数仍然大于发送机会数,则需要进一步截取。当各个优先级能够满足的请求个数之和已经等于或小于最大发送机会数,无需再截取。记录截取结束,结果供资源分配过程使用,过程结束。