This shows you the differences between two versions of the page.

Link to this comparison view

user_guide:md_implement_high_speed [2016/06/12 14:36] (current)
admin created
Line 1: Line 1:
 +====== Implementing a high speed mesh using TP-Link N600 TL-WRD3500 dual radio nodes ======
 +  * This Wiki page will take a hands on approach showing the steps I've taken to get to a high speed mesh using standard off the shelve hardware.
 +  * We assume the following:
 +    * The latest SVN of RADIUSdesk and MESHdesk running on a server somewhere in the cloud.
 +    * A Windows machine running the latest version of the **MESHdesk node config utility**.
 +    * Internet connectivity through a DSL modem.
 +    * 5x TP-Link N600 TL-WRD3500 dual radio nodes.
 +    * The latest MESHdesk firmware image for the TP-Link N600 TL-WRD3500.
 +====== Overview of the steps involved ======
 +  * Define a new mesh network on the VPS running MESHdesk.
 +  * Flash the MESHdesk firmware onto the TP-Link N600 TL-WRD3500 nodes.
 +  * Use the **MESHdesk node config utility** to point the nodes to the VPS server running MESHdesk and also add the nodes to the mesh defined in MESHdesk.
 +  * Turn all the nodes on and confirm all the nodes are up.
 +  * Do some speed testing through the mesh.
 +====== Define a new mesh network in MESHdesk ======
 +===== Entry Points =====
 +  * For this mesh network we'll turn the clock back more than 20 years (my age are showing m( ) and use the movie **Reservoir Dogs** as a '​theme'​.
 +  * We crate a mesh with the name **Reservoir Dogs**.
 +  * Then we create the following entry points (SSIDs):
 +    * Mr Blonde
 +    * Mr Blue
 +    * Mr Brown
 +    * Mr Orange
 +    * Mr Pink
 +    * Mr White
 +  * With our experiment we will keep them open. It is always interesting to see how many leaches one can attract.
 +  * One important point to keep in mind is that the entry points is **NOT** applied to all nodes.
 +  * The reason for this is that we want to selectively attach an entry point to a mesh node. This will help to connect to a specific node during our speed testing.
 +{{ :​user_guide:​md:​res_dog_entry.png |}}
 +===== Mesh settings =====
 +  * You can leave all the defaults here and just also select **Bridge Loop Avoidance** to be on the safe side.
 +{{ :​user_guide:​md:​res_dog_mesh.png |}}
 +===== Exit points =====
 +  * Create an Ethernet bridge and connect all the Entry points to it.
 +{{ :​user_guide:​md:​res_dog_exit.png |}}
 +===== Node settings =====
 +  * We use all the defaults.
 +  * We do however also specify that the Ethernet ports on the Non-gateway nodes be bridged to the LAN.
 +{{ :​user_guide:​md:​res_dog_node_set.png |}}
 +===== Nodes =====
 +  * Here we will add the nodes as we discover their MAC Addresses through the **MESHdesk nod config utility**. (This is covered later in the docuent)
 +  * Take note that we attach one of the entry points to each node.
 +{{ :​user_guide:​md:​res_dog_node1_common.png |}}
 +  * Also note how we configure each of the radios respectively on each node.
 +  * When we deselect the **Mesh** option we also have a choice to specify which channel the entry point should run on.
 +  * This will give us opportunity to select non overlapping channels (1,6,11).
 +{{ :​user_guide:​md:​res_dog_node1_radio1.png |}}
 +{{ :​user_guide:​md:​res_dog_node1_radio2.png |}}
 +Next we will flash the MESHdesk firmware on the TP-Link N600 TL-WRD3500 nodes.
 +====== Flash the MESHdesk firmware onto the TP-Link N600 TL-WRD3500 nodes ======
 +  * Before you can flash the MESHdesk firmware image onto the nodes you have to get the MESHdesk firmware image LOL.
 +  * You can download the latest openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-factory.bin from this URL: http://​sourceforge.net/​p/​radiusdesk/​code/​HEAD/​tree/​trunk/​meshdesk/​firmware/​
 +<WRAP center round tip 80%>
 +**factory or sysupgrade?​**
 +  * Use *-factory* when you install OpenWrt for the first time on the nodes while it is still running the default firmware it came with.
 +  * Use *-sysupgrade* after you already installed OpenWrt on the node. You will then use the **sysupgrade** utility program which is included with OpenWrt running on the node to do the upgrade.
 +<WRAP center round important 80%>
 +**Download or SVN Checkout**
 +  * Be warned that the download function of SourceForge code does not always work well.
 +  * The checksum of this current version is **32048fbca9f1916fa91653e0bab4258f** and size **8126464**.
 +  * My first download was not complete and it can wreak havoc.
 +  * A better alternative will be using SVN command or a SVN client to check out the code.
 +  * Connect a LAN cable between your computer and one of the four **Ethernet** ports on the TL-WRD3500.
 +  * Ensure that your computer has an IP Address that can talk on the 192.168.0.x subnet (e.g.
 +  * The TL-WRD3500 listens on
 +  * Open a browser and go to http://​
 +  * The default username / password is **admin** / **admin**.
 +  * Go to **System Tools** -> **Firmware Upgrade**. The following screen will be displayed:
 +{{ :​user_guide:​md:​tplink_fw_upgrade.png |}}
 +  * Select the **openwrt-ar71xx-generic-tl-wdr3500-v1-squashfs-factory.bin** file which you downloaded and click the **Upgrade** button.
 +  * Confirm your action and wait for the flash process to complete. (**This means to wait out the next two screens**)
 +{{ :​user_guide:​md:​tplink_fw_1.png |}}
 +{{ :​user_guide:​md:​tplink_fw_2.png |}}
 +  * Once it is completed it will redirect to a blank page. This is because the TL-WDR3500 now runs OpenWrt and is not listening on IP any more.
 +  * Unplug the power and LAN cable from the node and repeat this action for all the nodes.
 +  * Once you are finished with all this, it is time to point the nodes to your VPS server with the help of the **MESHdesk node config utility** (along with adding them as nodes to the **Resevoir Dogs** mesh).
 +====== Use the MESHdesk node config utility to pre-configure the nodes ======
 +  * We use the **MESHdesk node config utility** to point the mesh nodes to the VPS running the MESHdesk service.
 +  * Download and unzip the **MESHdesk_node_config_utility_[version]/​zip** file on a Windows computer.
 +  * Ensure the Firewall is disabled for this session.
 +  * Configure the Ethernet port of the computer to have IP Address ****.
 +  * Double click the MESHdesk_node_config_utility.exe file located under the extracted **MESHdesk_node_config_utility** folder.
 +  * Be sure to supply your VPS server'​s IP Address and well as selecting the correct hardware type. (Our's is
 +  * Connect the computer to one of the four **Ethernet** ports of the TL-WRD3500.
 +  * The next step is <wrap em>VERY VERY </​wrap>​important.
 +  * Make sure the **Wireless On/Off** switch is turned **OFF**.
 +<WRAP center round info 80%>
 +We have to actually turn the WiFi **off** to make it work! :-|
 +  * Fire up the TL-WRD3500 while watching the **MESHdesk node config utility**.
 +  * Shortly after start-up (before 2 minutes)it should have made contact with the **MESHdesk node config utility**.
 +{{ :​user_guide:​md:​tp_link_node_config.png |}}
 +  * After that you can turn off the power on the TL-WRD3500.
 +  * Take the MAC Address that was recorded and add it to the **Resevoir Dogs** mesh.
 +  * Once you have completed it for all the available nodes, we can start by connecting our gateway node to the LAN.
 +  * After that node is up and running we can fire up the others.
 +<WRAP center round tip 60%>
 +  * The non-gateway nodes will take some time before they get their settings.
 +  * The node first try to get its settings through:
 +    * The LAN
 +    * Radio0 (2.4G)
 +    * Radio1 (5G)
 +  * Since we run the mesh over 5G it will be the last in the row.
 +====== Is everything up and running? ======
 +  * See for yourself 8-)
 +  * Note that we use blue lines to indicate a mesh running to the 5G band and green lines for a mesh running on the 2.4G band.
 +{{ :​user_guide:​md:​res_dog_spider_web.png |}}
 +====== How fast can it go? ======
 +  * Time for some throughput tests.
 +  * We will connect one computer to a certain Mr and another computer to another Mr and do some iperf testing.
 +  * We have a laptop connecting to Mr Pink and another one connecting to the available nodes
 +^ Iperf server ​     ^ Iperf client ​      ^ Speed          ^
 +| Mr Blonde ​   | Mr Blonde ​    | 15.6Mbits/​s ​       |
 +| Mr Blonde ​   | Mr Pink     | 21.8Mbits/​s ​       |
 +| Mr Blonde ​   | Mr Orange ​    | 18.5Mbits/​s ​       |
 +| Mr Blonde ​   | Mr Brown     | 29.3Mbits/​s ​       |
 +| Mr Blonde ​   | Mr Blue     | 11.7Mbits/​s ​       |