CN101345749B - 基于rts/cts机制的多跳无线网络拥塞控制方法 - Google Patents

基于rts/cts机制的多跳无线网络拥塞控制方法 Download PDF

Info

Publication number
CN101345749B
CN101345749B CN2008100299681A CN200810029968A CN101345749B CN 101345749 B CN101345749 B CN 101345749B CN 2008100299681 A CN2008100299681 A CN 2008100299681A CN 200810029968 A CN200810029968 A CN 200810029968A CN 101345749 B CN101345749 B CN 101345749B
Authority
CN
China
Prior art keywords
rts
node
fcts
data
receiving node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2008100299681A
Other languages
English (en)
Other versions
CN101345749A (zh
Inventor
姜胜明
韦岗
佐琴
胡海燕
刘桂开
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Maritime University
Original Assignee
South China University of Technology SCUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN2008100299681A priority Critical patent/CN101345749B/zh
Publication of CN101345749A publication Critical patent/CN101345749A/zh
Application granted granted Critical
Publication of CN101345749B publication Critical patent/CN101345749B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开一种基于RTS/CTS机制的多跳无线网络拥塞控制方法,发送节点向接收节点发送RTS时,如果接收节点没有足够的缓存空间来接收发送节点请求发送的数据,则接收节点通过发回一个fCTS给RTS发送方;所述RTS发送方接收到fCTS后,按fCTS的内容所指定的条件发送数据包。如果某个节点刚刚发出所述fCTS或nCTS,又发出RTS,该RTS的接收节点周围如果没有隐藏终端,则必须向该RTS的发送方返回CTS,所述nCTS用来通知RTS的发送方不要进行数据发送。本发明以很小的代价去更准确地掌握网络的拥塞状况,减少和避免对网络拥塞状况的误判,并有效地控制拥塞的发生,从而能大大提高TCP的有效吞吐量。

Description

基于RTS/CTS机制的多跳无线网络拥塞控制方法
技术领域
本发明涉及多跳无线网络(Multi-Hop Wireless Network)、RTS/CTS握手机制(RTS全称为Request-To-Send,CTS全称为Clear-To-Send)、网络拥塞控制(CongestionControl)及传输层控制协议(TCP)技术领域,具体涉及基于RTS/CTS握手机制的多跳无线网络拥塞控制方法。
背景技术
TCP(Transmission Control Protocol)最初是针对有线网络而设计的、面向连接的端到端的传输层控制协议,它采用基于窗口的拥塞控制机制,其主要目的是避免产生不合理的大量的网络流量。TCP假设所有数据包的丢失都是由于网络拥塞而引起的,并由此来判断网络的拥塞状况,进而来调节拥塞控制窗口。但这一假设在无线多跳网络已经被证明是不合理的,是造成网络性能下降的主要因素。
众周所知,在无线多跳网络中,除了由于网络拥塞而引起的数据包丢失以外,还有许多其它因素也会造成数据包损坏或丢失,如无线信道质量的不稳定性,节点的移动性以及能量供应的波动性等等。这些因素常常造成TCP层对网络的拥塞状况做出误判,并错误地触发了相应的拥塞控制机制来降低发送窗口,从而造成网络性能下降。
目前,人们已经提出了许多方法来改善TCP在无线多跳网络中的性能,大致可以分为以下两类。1)改进其它层的性能从而来降低上述因素对TCP所造成的影响;2)直接对TCP协议本身进行修改使其能更好地适应无线多跳网络的特性,比如提高对网络拥塞状况判断的精确度等。但这些方案的共同特点是它们没能摆脱原TCP网络拥塞控制方法的局限性。这样做虽然能降低安装的复杂度,并在一定程度改进了TCP的性能,但是没有从根本上解决问题,因而限制了网络性能的进一步提高,其原因如下。
如本文一开始所述,TCP主要是靠“推理”来确定网络的拥塞情况,而无法正确地掌握真实的网络拥塞情况;其次是TCP是端到端的,始终由源节点来控制拥塞,无论是拥塞发生前、发生时和发生后,总是慢半拍。要根本解决这些问题,必须从下层找出控制拥塞的方法。但传统上,这种方法的实施会相当复杂。基于RTS/CTS握手机制被广泛用来解决无线网络中的隐藏终端问题的这一事实,本发明巧妙地利用了RTS/CTS握手机制,提出一种简便有效的拥塞控制方法来解决多跳无线网络的拥塞控制问题。计算机仿真显示,当TCP运行在该方法所修改的IEEE 802.11MAC协议时,几乎能使TCP的有效吞吐量达到理论上的最大值。
发明内容
本发明的目的在于克服现有技术存在的上述缺陷,提供一种基于RTS/CTS握手机制的多跳无线网络的拥塞控制方法。RTS全称为Request-To-Send,CTS为Clear-To-Send。本发明中用RTS/CTS来泛指具有下列特点的过程:(1)在一个节点向相邻节点发数据包前,须向这些节点发出请求;(2)只有当得到批准后,该请求节点才可以向批复节点发送数据包。为了达到上述目的,本发明包括能够传递控制拥塞信息的RTS/CTS握手机制和数据源节点(如TCP发送方)所用的数据流量控制方法。本发明通过如下技术方案实现:
基于RTS/CTS机制的多跳无线网络拥塞控制方法,所述拥塞是根据接收节点当前或将来某个时间的缓存被占用的状况来判断的:设L为接收节点缓存的最大容量,T为拥塞门限值,N为接收节点当前或将来某个时间的缓存被占用的量,且0<T≤L,当N<T时,没有拥塞;否则有拥塞;其特征在于包括:
发送节点向接收节点发送RTS时,在接收节点认为自己周围没有隐藏终端的情况下,如果接收节点没有足够的缓存空间来接收发送节点请求发送的数据,则接收节点通过发回一个fCTS(Future CTS)给RTS发送方,所述fCTS的内容包括该RTS发送方能发送数据包的信号或未来时间点;
所述RTS发送方接收到fCTS后,按fCTS的内容所指定的条件发送数据包。
上述方法中,所述fCTS的内容还包括所述RTS发送方能发送数据包的数量。
上述方法中,每个节点需要预留缓存空间用于避免死锁情况发生,所述死锁情况是指一已拥塞的节点需要向另一拥塞的节点发送数据来解除本身的拥塞状况:
如果某个节点刚刚发出所述fCTS或nCTS(Negative CTS),然后又发出RTS,该RTS的接收节点周围如果没有隐藏终端,则必须向该RTS的发送方返回CTS,所述nCTS用来通知RTS的发送方不要进行任何数据发送。
上述方法中,非RTS发送方节点听到所述fCTS,须在侦听到fCTS所规定的信号后或在fCTS所指定的时间点后,再重新进行信道使用权的竞争。
上述方法中,当RTS的发送方节点为数据源节点时,该数据源节点的数据链路层根据本节点的拥塞状况来确定其上层可向该层发送数据包的量,该数据源节点的数据链路层将该数据量通知给上层,或根据该数据量模拟产生用来决定上层向下层发送数据包数量的信息,并将该信息传递给上层。
上述方法中,所述数据源节点为TCP发送方或UDP发送方。
本发明具有如下优点和显著效果:RTS/CTS握手机制是广泛用来解决无线网络中隐藏终端问题的方法。它已经被IEEE 802.11媒体访问控制(MAC-Medium Access Control)协议标准所采纳。本发明充分利用RTS/CTS握手机制,简便有效地解决拥塞控制问题,该方法能以很小的代价去更准确地掌握网络的拥塞状况,减少和避免对网络拥塞状况的误判,并有效地控制拥塞的发生,从而能大大提高TCP的有效吞吐量。
附图说明
图1为实施方式中任意两个相邻节点A和B的数据发送和接收示意图,其中A为发送节点,B为接收节点;
图2为实施方式中节点A为数据源节点、B为相邻节点时的数据发送和接收示意图,其中A为数据源节点,如TCP的发送方;
图3为节点A和B之间发生死锁情况的示意图,其中B已拥塞却首先需要向A发送数据来缓解拥塞状况,但此时A也拥塞并且也要先向B发送数据来缓解拥塞状况;
图4是避免图3所示死锁情况发生的解决方法示意图,其中节点A和B均预留了一定的缓存空间以避免图3所示的死锁情况的发生;
图5是节点拥塞状况的定义和缓存示意图。
具体实施方式
RTS/CTS握手机制虽然被广泛地用来解决无线网络中的隐藏终端问题,但它不具有传递拥塞信息和控制拥塞信息的功能,更没有被用来进行拥塞控制。其工作方法如下:
假设有两个相邻节点A和B,如图1所示,A为发送节点,B为接收节点。按现有RTS/CTS握手机制(原握手机制)的规定:
1.A在向B正式发送数据包之前,必须先向B发出一个RTS请求包;
2.B在接到RTS后,如果B节点认为其周围没有隐藏终端,B就向A返回CTS;否则B就不作任何反应;
3.只有收到B返回的CTS后,A才能向B发送数据包。
在下文中,上述RTS/CTS握手机制被称为“原握手机制”。
本发明在原握手机制的基础上,增加了传递拥塞信息和控制拥塞信息的功能,并最终控制拥塞的方法。我们的计算机仿真结果显示,下面的新握手机制能大大提高TCP的有效吞吐量。具体实施过程如下:
1.A在向B正式发送数据包之前,必须先向B发出一个RTS请求包(此同原握手机制-1);
2.B在接到RTS后决定是否要向A返回CTS时,不但要考虑隐藏终端问题,同时也考虑本节点的拥塞状况(节点拥塞状况的判断是根据接收节点的缓存占用状况来决定:所谓的缓存占用状况是指当前或将来某个时间点缓存被占用的空间,用N来表示,如图5所示。设L为缓存的最大容量,T为拥塞门限值,且0<T≤L。节点拥塞状况的判断如下:当N<T时,没有拥塞;否则有拥塞)。在B没有隐藏终端(此同上述原握手机制步骤2)的情况下,同时B有足够的缓存空间来接收所请求的数据时,它才向A返回CTS。但在下列情况4中除外。
3.当B没有足够的缓存空间来接收所请求的数据时,B向A发出一个未来CTS包(Future CTS,简称fCTS)。这个fCTS指明A可向B所发送数据包的信号或未来时间点,并可以规定可发数据包的最大量。
4.如果A也刚刚发出过fCTS或者nCTS(Negative CTS,用来通知RTS的发送方不要发任何数据),只要B没有隐藏终端问题,B必须向A返回CTS。这样做是为了避免如图3所示的死锁情况的发生;为此,节点需要预留缓存空间给这样的情况,如图4所示。
5.当A收到B返回的fCTS后,在侦听到fCTS所规定的信号后或者按该fCTS所指定的时间点向B发送数据包。如果该fCTS也规定了数据包发送的量,A的包发送量不能超过该规定值。
6.其它听到该fCTS的节点必须在侦听到fCTS所规定的信号后或者该fCTS给A所规定的时间点以后,再进行信道使用权的重新竞争。
7.如果A收到B返回的CTS,就向B发送数据包(此同原握手机制步骤3)。
8.当A是数据源节点时,如TCP的发送方,如图2所示,A节点的媒体访问控制(MAC)层必须根据本节点的拥塞状况来确定上层(如TCP层)可向下层发送数据包的量(表示为W)。并将W用下列方法之一传达给上层(如TCP层):
8.1.MAC层直接将W传给向上层。这需要上层具有对应的机制来根据W来调节向下所发送的数据包量。这个方法可能需要对现有上层的安装做出修改才能实现。
8.2.MAC层根据W来模拟产生上层用来决定向下层发送数据包量的信息(如TCP的ACK包),并传递给上层。这个方法使得原有上层无需改动就能顺利运行本发明的上述功能。

Claims (3)

1.基于RTS/CTS机制的多跳无线网络拥塞控制方法,所述拥塞是根据接收节点当前或将来某个时间的缓存被占用的状况来判断的:设L为接收节点缓存的最大容量,T为拥塞门限值,N为接收节点当前或将来某个时间的缓存被占用的量,且0<T≤L,当N<T时,没有拥塞;否则有拥塞;其特征在于该方法包括:
发送节点向接收节点发送RTS时,在接收节点认为自己周围没有隐藏终端的情况下,如果接收节点没有足够的缓存空间来接收发送节点请求发送的数据,则接收节点通过发回一个fCTS给RTS发送方,所述fCTS的内容包括该RTS发送方能发送数据包的信号或未来时间点;所述fCTS的内容还包括所述RTS发送方能发送数据包的数量;所述RTS发送方接收到fCTS后,按fCTS的内容所指定的条件发送数据包;每个节点需要预留缓存空间用于避免死锁情况发生,所述死锁情况是指一已拥塞的节点需要向另一拥塞的节点发送数据来解除本身的拥塞状况:如果某个节点刚刚发出所述fCTS或nCTS,然后又发出RTS,该RTS的接收节点周围如果没有隐藏终端,则必须向该RTS的发送方返回CTS,所述nCTS用来通知RTS的发送方不要进行任何数据发送;
当RTS的发送方节点为数据源节点时,该数据源节点的数据链路层根据本节点的拥塞状况来确定其上层可向该层发送数据包的量,该数据源节点的数据链路层将该数据量通知给上层,或根据该数据量模拟产生用来决定上层向下层发送数据包数量的信息,并将该信息传递给上层。
2.根据权利要求1所述的方法,其特征在于非RTS发送方节点听到所述fCTS,须在侦听到fCTS所规定的信号后或在fCTS所指定的时间点后,再重新进行信道使用权的竞争。
3.根据权利要求2所述的方法,其特征在于所述数据源节点为TCP发送方或UDP发送方。
CN2008100299681A 2008-08-04 2008-08-04 基于rts/cts机制的多跳无线网络拥塞控制方法 Expired - Fee Related CN101345749B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008100299681A CN101345749B (zh) 2008-08-04 2008-08-04 基于rts/cts机制的多跳无线网络拥塞控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100299681A CN101345749B (zh) 2008-08-04 2008-08-04 基于rts/cts机制的多跳无线网络拥塞控制方法

Publications (2)

Publication Number Publication Date
CN101345749A CN101345749A (zh) 2009-01-14
CN101345749B true CN101345749B (zh) 2011-07-20

Family

ID=40247636

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100299681A Expired - Fee Related CN101345749B (zh) 2008-08-04 2008-08-04 基于rts/cts机制的多跳无线网络拥塞控制方法

Country Status (1)

Country Link
CN (1) CN101345749B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011053026A2 (ko) 2009-10-28 2011-05-05 한국전자통신연구원 무선 통신 시스템에서 파워 세이빙 방법
CN101902776B (zh) * 2010-07-08 2013-04-03 上海海事大学 一种改进的基于rts/cts的多跳无线网络拥塞控制方法
US9137826B2 (en) * 2011-09-16 2015-09-15 Qualcomm Incorporated Apparatus and method for transmission and recovery modes for an RTS/CTS system that utilizes multichannels
CN104754649B (zh) * 2015-03-06 2019-03-26 广州杰赛科技股份有限公司 一种数据传输方法与无线Mesh节点
CN110166367B (zh) * 2018-02-14 2021-01-29 华为技术有限公司 一种分组网络中控制流量的方法、装置及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2008-118432A 2008.05.22

Also Published As

Publication number Publication date
CN101345749A (zh) 2009-01-14

Similar Documents

Publication Publication Date Title
CN101902776B (zh) 一种改进的基于rts/cts的多跳无线网络拥塞控制方法
US7894381B2 (en) System and method of reliably broadcasting data packet under ad-hoc network environment
US20140269474A1 (en) Power saving for low latency deterministic networks in wireless personal area networks
WO2022095863A1 (zh) 一种用于输变电设备物联网的微功率无线接入方法与装置
CN102740403B (zh) 一种在通信网络的终端中用于接入的方法及装置
US7746837B2 (en) Overhear-based transmitting control system in WLANS
CN101345749B (zh) 基于rts/cts机制的多跳无线网络拥塞控制方法
US8638677B2 (en) Data communication system
CN103906207A (zh) 基于自适应按需唤醒技术的无线传感器网络数据传输方法
CN102244568B (zh) 一种附带式跨层设计的无线网络拥塞控制方法
CN101860423A (zh) 一种协议分组传输的重传方法和装置
US8488584B2 (en) Method and apparatus for efficient data broadcast within beaconing network
Gupta et al. Random-access scheduling with service differentiation in wireless networks
CN102905389A (zh) 接入控制方法和装置
US20070195813A1 (en) Multicast packet transmitting method of wireless network
Tavakoli et al. Hybrid timeslot design for IEEE 802.15. 4 TSCH to support heterogeneous WSNs
US7613191B2 (en) Packet transmission method of wireless network
Biswas et al. On-demand reliable medium access in sensor networks
KR101139536B1 (ko) 무선 멀티캐스트 재전송에서 경쟁 윈도우를 조정하는 단말시스템 및 그 조정 방법
CN112188618B (zh) 动态调整入网资源的组网方法、终端、网关以及存储介质
US10897725B2 (en) System and method for managing data transfer between two different data stream protocols
CN102904817B (zh) 链路状态通告发送方法、ospf设备及网络系统
CN105228181A (zh) 一种基于ap优化tcp连接的方法、ap和系统
CN111162871B (zh) 基于LoRa的数据传输方法及系统
KR20040078549A (ko) 애드 혹 네트워크 환경에서 신뢰성 있게 브로드캐스팅하는시스템 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: SHANGHAI MARITIME UNIV.

Free format text: FORMER OWNER: SOUTH CHINA UNIVERSITY OF TECHNOLOGY

Effective date: 20130605

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 510640 GUANGZHOU, GUANGDONG PROVINCE TO: 201306 PUDONG NEW AREA, SHANGHAI

TR01 Transfer of patent right

Effective date of registration: 20130605

Address after: 1550 No. 201306 Shanghai Pudong New Area Lingang New City Harbor Boulevard

Patentee after: Shanghai Maritime University

Address before: 510640 Tianhe District, Guangdong, No. five road, No. 381,

Patentee before: South China University of Technology

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110720

Termination date: 20210804