发明名称 一种改进的基于RTS/CTS的多跳无线网络拥塞控制方法
摘要 本发明公开一种改进的基于RTS/CTS的多跳无线网络拥塞控制方法。该方法网络中相邻各个节点无论是发送方还是接收方都需要发布自身的拥塞状况信息;当发送节点处于拥塞状态时,将使用带拥塞状态的RTSC请求帧向目标节点发送请求;该RTSC帧的接收节点若也处于拥塞状态并接受该请求,将发送CTSC帧,接收节点将开始接收来自发送节点的数据包。本发明把节点内的缓存划分为接收缓存和发送缓存,综合考虑节点的缓存使用情况和无线信道竞争程度来控制拥塞;通过拥塞的收发双方通告拥塞状况信息以避免死锁,只需对现有的RTS帧和CTS帧做很小的改动,就能准确地获取节点的拥塞状况。
申请公布号 CN101902776A 申请公布日期 2010.12.01
申请号 CN201010221515.6 申请日期 2010.07.08
申请人 华南理工大学 发明人 姜胜明;蔡业桂;王丽;韦岗
分类号 H04W28/02(2009.01)I;H04W80/00(2009.01)I;H04L1/16(2006.01)I 主分类号 H04W28/02(2009.01)I
代理机构 广州市华学知识产权代理有限公司 44245 代理人 李卫东
主权项 一种改进的基于RTS/CTS的多跳无线网络拥塞控制方法,其特征在于包括如下步骤:(1)节点A在向节点B发送数据包之前,先核查节点B是否处于拥塞状态;如果B还处在拥塞状态,节点A就延迟本次发送;如果B不拥塞,节点A拥塞,节点A向节点B发送RTSC;如果B不拥塞,节点A不拥塞,节点A向节点B发送RTS;节点A和节点B为多跳无线网络任意两个相邻节点;所述RTSC为带拥塞状态信息的请求帧;RTS为没有携带拥塞状态信息的请求帧;节点通过如下方式判断其自身的拥塞状况:把节点内的缓存划分为接收缓存和发送缓存,本节点产生的数据包直接进入发送缓存,中转的数据包先经过接收缓存;所述的中转是指把从其他节点发来的数据包转发到下一跳节点的操作;设T1为接收缓存的拥塞门限值,T2为发送缓存的拥塞门限值,并设N1为接收缓存内数据包的个数,N2为发送缓存内数据包的个数;当N2<T2时,中转的数据包进入发送缓存;否则,中转的数据包占据接收缓存;当N1<T1,没有拥塞,否则有拥塞;T1、T2、N1和N2都为自然数;(2)节点B在收到来自节点A的RTS或者RTSC后,在确认自己周围没有隐藏终端的情况下,节点B判断本节点是否拥塞,如果本节点不拥塞,则回复CTS,并接收数据包;节点A收到节点B发出的CTS后,发送数据包到节点B;节点B接收完节点A发送的数据包后向A发出ACK确认帧;(3)如果节点B判断本节点为拥塞,按如下的情况分类进行处理:1)若节点B收到的是RTS请求,节点B不对该请求做任何回复,并调整节点B的最小竞争窗口使节点B能够优先竞争到信道;2)若节点B收到的是RTSC,节点B读取其发送缓存队列的第一个数据包的目的地址,如果该包是要发给节点A的,则节点B为了避免死锁的发生,发出CTSC;否则,不予回复;所述CTSC为带拥塞状态信息的回复帧;CTS为没有携带拥塞状态信息的回复帧;(4)节点A收到节点B发出的CTSC,就发送数据包到节点B;同时节点A在接收缓存中为节点B预留至少一个缓存空间;节点B在接收完节点A发送的数据包后,调整自身的最小竞争窗口使节点B能够优先竞争到信道,向节点A发送RTSC请求帧;节点A在收到节点B的RTSC请求帧时,判断节点B为拥塞节点并且节点B为了避免死锁,已经接收了A的数据包,节点A无条件接受节点B的RTSC请求,在确认自己周围没有隐藏终端的情况下,发送CTS给节点B;节点B在收到CTS后,发送数据包给节点A;节点A在收到来自B的数据包后,向B发出ACK确认帧。
地址 510640 广东省广州市天河区五山路381号