Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Hidden node problem
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Use American English|date = March 2019}} {{Short description|Problem in wireless networking}} [[Image:Wifi hidden station problem.svg|right|thumb|250px|In one scenario, Station A can communicate with Station B. Station C can also communicate with Access Point Station B. However, Stations A and C cannot communicate with each other as they are out of range of each other, and thus start to transmit simultaneously preventing B from receiving messages intended for it.]] In [[wireless networking]], the '''hidden node problem''' or '''hidden terminal problem''' occurs when a [[Node (networking)|node]] can communicate with a [[wireless access point]] (AP), but cannot directly communicate with other nodes that are communicating with that AP.<ref>{{cite book|last1=Buehrer|first1=R. Michael|title=Code Division Multiple Access (CDMA)|date=2006|publisher=Morgan & Claypool Publishers|location=[San Rafael, Calif.]|isbn=1598290401|pages=16–19|edition=1st}}</ref> This leads to difficulties in [[medium access control]] sublayer since multiple nodes can send data packets to the AP simultaneously, which creates interference at the AP resulting in no packet getting through. Although some loss of packets is normal in wireless networking, and the higher layers will resend them, if one of the nodes is transferring a lot of large packets over a long period, the other node may get very little [[goodput]]. Practical protocol solutions exist to the hidden node problem. For example, [[IEEE 802.11 RTS/CTS|Request To Send/Clear To Send (RTS/CTS)]] mechanisms where nodes send short packets to request permission of the access point to send longer data packets. As responses from the AP are seen by all the nodes, the nodes can synchronize their transmissions to not interfere. However, the mechanism introduces [[Network delay|latency]], and the [[Protocol overhead|overhead]] can often be greater than the cost, particularly for short data packets. ==Background== Hidden nodes in a [[wireless network]] are nodes that are out of range of other nodes or a collection of nodes. Consider a physical [[star network|star topology]] with an access point with many nodes surrounding it in a circular fashion: each node is within communication range of the AP, but the nodes cannot communicate with each other. For example, in a wireless network, it is likely that the node at the far edge of the access point's range, which is known as '''A''', can see the access point, but it is unlikely that the same node can communicate with a node on the opposite end of the access point's range, '''C'''. These nodes are known as ''hidden''. Another example would be where A and C are either side of an obstacle that reflects or strongly absorbs radio waves, but nevertheless they can both still see the same AP. The problem is when nodes '''A''' and '''C''' start to send [[Packet (information technology)|packet]]s simultaneously to the access point '''B'''. As the nodes '''A''' and '''C''' cannot receive each other's signals, so they cannot detect the collision before or while transmitting, [[carrier-sense multiple access with collision detection]] (CSMA/CD) does not work, and collisions occur, which then corrupt the data received by the access point. To overcome the hidden node problem, request-to-send/clear-to-send (RTS/CTS) handshaking ([[IEEE 802.11 RTS/CTS]]) is implemented at the Access Point in conjunction with the [[Carrier sense multiple access with collision avoidance]] ([[CSMA CA|CSMA/CA]]) scheme. The same problem exists in a [[mobile ad hoc network]] ([[MANET]]). [[IEEE 802.11]] uses [[802.11 RTS/CTS]] acknowledgment and handshake packets to partly overcome the hidden node problem. RTS/CTS is not a complete solution and may decrease throughput even further, but adaptive acknowledgements from the base station can help too. The comparison with hidden stations shows that RTS/CTS packages in each traffic class are profitable (even with short audio frames, which cause a high overhead on RTS/CTS frames).<ref>Pommer, Hermann: ''Roaming zwischen Wireless Local Area Networks''. [[VDM Verlag]], Saarbrücken 2008, {{ISBN|978-3-8364-8708-5}}.</ref> In the experimental environment following traffic classes are included: data (not time critical), data (time critical), video, audio. Examples for notations: (0|0|0|2) means 2 audio stations; (1|1|2|0) means 1 data station (not time critical), 1 data station (time critical), 2 video stations. [[Image:RTS CTS benchmark.png|250px|thumb|Benchmarks: Net Throughput with/without RTS/CTS (Pommer, p.179)]] The other methods that can be employed to solve hidden node problem are : *Increase transmitting power from the nodes *Use [[omnidirectional antenna]]s *Remove obstacles *Move the node *Use protocol enhancement software *Use [[antenna diversity]] == Solutions == === Increasing transmitting power === Increasing the transmission power of the nodes can solve the hidden node problem by allowing the cell around each node to increase in size, encompassing all of the other nodes. This configuration enables the non-hidden nodes to detect, or hear, the hidden node. If the non-hidden nodes can hear the hidden node, the hidden node is no longer hidden. As wireless LANs use the [[CSMA/CA]] protocol, nodes will wait their turn before communicating with the [[wireless access point|access point]]. This solution only works if one increases the transmission power on nodes that are hidden. In the typical case of a [[WiFi]] network, increasing transmission power on the [[wireless access point|access point]] only will '''not''' solve the problem because typically the hidden nodes are the clients (e.g. laptops, mobile devices), not the access point itself, and the clients will still not be able to hear each other. Increasing transmission power on the access point is actually likely to make the problem worse, because it will put new clients in range of the access point and thus add new nodes to the network that are hidden from other clients. === Omnidirectional antennas === Since nodes using [[directional antenna]]s are nearly invisible to nodes that are not positioned in the direction the antenna is aimed at, directional antennas should be used only for very small networks (e.g., dedicated [[Point-to-point (telecommunications)|point-to-point]] connections). Use [[omnidirectional antenna]]s for widespread networks consisting of more than two nodes. === Removing obstacles === Increasing the power on mobile nodes may not work if, for example, the reason one node is hidden is that there is a concrete or steel wall preventing communication with other nodes. It is doubtful that one would be able to remove such an obstacle, but removal of the obstacle is another method of remedy for the hidden node problem. === Moving the node === Another method of solving the hidden node problem is moving the nodes so that they can all hear each other. If it is found that the hidden node problem is the result of a user moving his computer to an area that is hidden from the other wireless nodes, it may be necessary to have that user move again. The alternative to forcing users to move is extending the wireless [[LAN]] to add proper coverage to the hidden area, perhaps using additional access points. === Protocol enhancement === There are several software implementations of additional protocols that essentially implement a [[Polling (computer science)|polling]] or [[token passing]] strategy. Then, a master (typically the access point) dynamically polls clients for data. Clients are not allowed to send data without the master's invitation. This eliminates the hidden node problem at the cost of increased latency and less maximum throughput. The Wi-Fi [[IEEE 802.11 RTS/CTS]] is one handshake protocol that is used. Clients that wish to send data send an RTS frame, the access point then sends a CTS frame when it is ready for that particular node. For short packets the overhead is quite large, so short packets do not usually use it, the minimum size is generally configurable. === Cell network === With [[cellular network]]s the hidden node problem has practical solutions by time domain multiplexing for each given client for a mast, and using spatially diverse transmitters, so that each node is potentially served by any of three masts to greatly minimise issues with obstacles interfering with radio propagation. == See also == * [[Exposed node problem]] * [[IEEE 802.11e#802.11e MAC protocol operation|Hybrid coordination function]] * [[Point coordination function]] * [[Wireless LAN]] ==References== {{reflist}} == External links == *[http://patraswireless.net/software.html Wireless Central Coordinated Protocol (WiCCP), a software solution of the hidden node problem] *[http://frottle.sourceforge.net/ Frottle, a client/server software solution] *[https://web.archive.org/web/20080705211526/http://aqua.comptek.ru/test/HiddenNode/hidden_node_en.html Benchmarks comparing pure CSMA/CA with RTS/CTS and Polling] *[http://www.netequalizer.com/Hidden_Node_White_Paper.php NetEqualizer, a throttling system addressing the hidden node problem] [[Category:Wireless networking]] [[Category:IEEE 802.11|H]] [[de:Carrier Sense Multiple Access/Collision Avoidance#Hidden-Station-Problem]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite book
(
edit
)
Template:ISBN
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Use American English
(
edit
)