'''This page explains, in simple terms, how [Frottle] works, and why it is needed.''' ! The Hidden Node Problem The WiFi protocol, the collective name for the 802.11a/b/g suite of protocols for Wireless Ethernet, was only ever designed to be used indoors over a relatively small area. In a long-range outdoor environment, the problems with this design become apparent and we experience the Hidden Node problem. Frottle is an application that can reduce or eliminate this problem. !! Collision Avoidance On any network, computers and other networked devices (called hosts) cannot make sense of multiple messages if they arrive at the same time. On a wired network, a host will first check that there is no other traffic on the network before transmitting its data. This is called Carrier Sense Multiple Access with Collision Detection (CSMA/CD) ( (http://bucarotechelp.com/networking/97090740.asp Explainer) ). On a wireless network, a host cannot transmit and receive data at the same instant, so CSMA/CD will not be effective. 802.11b/g use the Carrier Sense Multiple Access/Collision Avoidance (CSMA/CA) method whereby a host will first transmit a message, called a Request To Send (RTS) to the intended recipient. ((http://www.wispfaq.com/searchfaq.html?id=88 Explainer) ). In a [BSS] network, this is the [AccessPoint Access Point] (AP). If the AP senses that the airwaves are clear, it sends a Clear To Send (CTS) message back to the host. The host then sends its data. !! An Indoor Deployment {http://users.bigpond.net.au/flett/Frottle/Indoor.jpg An Indoor 802.11b deployment} In an indoor environment where all wireless hosts and the AP are close to each other, the CSMA/CD method works well for coordinating traffic. Every host can receive the radio transmissions of every other host, and so traffic is coordinated. !! Hidden Node Indoors {http://users.bigpond.net.au/flett/Frottle/IndoorHidden.jpg Hidden Node Indoors} Even in an indoor environment, Hidden Node can be a problem. If one host, or node, wanders out of range of all the other nodes on the network, it cannot coordinate its traffic directly with the other nodes. It must rely directly on the AP and use RTS/CTS packets to know when to transmit. In a network with a small number of nodes, RTS/CTS packets are generally successfully in preventing the Hidden Nodes from interrupting traffic flow. But when many hosts are connected, and those hosts are transmitting/receiving a large volume of traffic, the RTS/CTS packets themselves start to collide. !! Hidden Node Outdoors {http://users.bigpond.net.au/flett/Frottle/OutdoorHidden.jpg Hidden Node Outdoors} In a long-range, outdoor environment, in almost all cases no node can hear the transmissions of any other node, except the AP itself. All nodes are relying on the RTS/CTS method. The more nodes connected means more traffic volume at the AP and a greater probability of RTS/CTS packets colliding. When RTS/CTS packets collide, all nodes stop transmitting for a moment, and then send their RTS packets again. In very congested situations, this can cause all traffic to stop for considerable periods of time, making the network unusable. !! What Frottle Does {http://users.bigpond.net.au/flett/Frottle/OutdoorFrottle.jpg Frottle Outdoors} Frottle uses the Linux Netfilter firewall in all hosts on the network to delay traffic. Frottle uses a Media Access method similar to that of a (http://foldoc.hld.c64.org/foldoc.cgi?token+ring Token Ring) network. The trasmission of all traffic on all hosts, including control packets, is done in a coordinated fashion, so no collisions should ever occur.