Tuesday, December 22, 2015

Home Networking: PowerLine Ethernet vs Wireless Bridging

Old Setup

I currently stay at a flat where each room has a network point and all connect to the building's switches. I disconnected all points from the building's switch and used my own to isolate the traffic.

This has served me well for years until last year where dust, humidity and water leakages have killed the switch, and as I'll be moving out to a new place, I didn't want to buy another switch.


Enter PowerLine Ethernet

Instead of laying network cables around, I thought of using PowerLine Ethernet adapters. Those allow you create a network between devices using house power cables, as long as all cables terminate to the same distribution board (the one that has the circuit breakers).

Attempt 1

I bought a D-Link "DHP-W310AV" kit which includes one adapter that serves as a wifi access point + Ethernet port and one adapter with only Ethernet.

I connected the adapter with Ethernet + WiFi in my room and the other one with only Ethernet in the hallway and connected an Asus access point to it to serve the rest of the house.

The D-Link adapter was difficult to configure, very buggy during configuration, breaks connection between adapters easily, and drops connections often causing timeouts. It took me about 2 hours to get things working and felt like I was dissembling explosives! It was garbage.

Attempt 2

I thought it was the D-Link that's a failure, so I ordered a TP-Link "TL-PA4010" kit. It doesn't offer wireless built into it, but it was such a breeze to configure! It took 5 minutes only. It also supports AES encryption, for the paranoid.

Things got better, but not that better. I still got intermittent DNS failures. So this prompted me to link failures to events in the house, and it seemed like the issues were due to high interference with home appliances.

Current Setup

I had bought Ubiquiti access points long ago but them in their box to use in the new place later on, but after all this fuss, I got fed up and pulled out the rabbit from the magic hat.

What I bought was Ubiquiti's UniFi AP 3-pack for $200! Can't beat that price, and what's even better, is that UniFi family comes with a free controller software that allows you to manage thousands of access points (APs) in multiple sites and get statistics. Lots of fancy features at a very attractive price.

One AP got connected to my switch in my room (which connects to the gateway) and another sat in the hallway. The hallway AP connected to the one in my room via wireless, not Ethernet. This way I can avoid the requirement for any Ethernet cabling however it's to be deployed.

Everything is working great now. Here are some screenshots from the UniFi controller interface:



The UniFi APs are so great for anyone needing 3 or more APs in a place, be it a house or a business location, because once you make a configuration it gets pushed to all APs in one shot! No hassle of managing multiple configurations.

They come packed with many features that I haven't listed here. You can download the controller for free from here and explore the options even if you don't have any AP (physically). Compared to Cisco or Meraki APs, these come with similar features and at no additional cost of management software, unlike what Cisco asks for, and you get to run the controller software on your own machines, so no need to trust the data to a hosted platform like Meraki's.

The controller software was written in Java, so it runs on Linux, Windows & Mac. This means you can even run it on a Raspberry Pi!

Monday, December 21, 2015

NVMe SSDs, Motherboards and i7 Limitations

TL;DR

Do not buy 2x NVMe disks and plug into M.2 ports if you want max speed. (TL;DR = Too long; did not read = very short summary provided).

Quick Into

For the past month or more I've been hunting for a new laptop to replace my 4-year old Asus gaming laptop & I've been reading a lot about new hardware.

Most shiny new toy is SSD & Non-Volatile Memory Express (NVMe), particularly, the Samsung Pro 950 which can do 2500 MB/s reads & 1500 MB/s writes, where normal SSDs can do 550 MB/s max. This is because the 950 is an NVMe which uses PCIe slots, not SATA slots.

Technical Details

I noticed that the majority of the laptops are designating only 1 slot as NVMe & another as SATA only, even when both are M.2 PCIe slots. This means only one can be used for the Samsung 950 & get max speed, while the other will function at SATA speed only. The most advanced Intel chipset available for Input/Output devices today is the HM170 which offers 16 PCIe lanes. (more lanes = more devices can connect to the PCIe bus).

However, Asus is releasing a new laptop "ASUS ROG G752VY-DH78K" which has a new Intel chipset: the CM236. This chipset offers 20 PCIe lanes! 4 more than the HM170, and an M.2 port supporting NVMe requires exactly 4 PCIe lanes, but the big catch is that any Intel Skylake processor (i7-6820HK or i7-6700HQ) only has 16 PCIe lanes!

So even though you can plug a 950 NVMe on both M.2 slots, they will be sharing the bus towards the CPU, and you will not get max speed of both at the same time, if there are other devices also using the 16 PCIe lanes, such as graphics cards (and you're likely to have one anyway).

This is valid for desktops as well since the above limitation comes from the i7 Skylake architecture.

Conclusion

If you plan on putting both M.2 slots in RAID0 or do some sort of dual access on them using NVMe disks, you will not see max speed of both.

Desktops

If you have a desktop, your motherboard might have a built-in M.2 slot, which would have dedicated 4x PCIe lanes. You can use a PCIe-to-M.2 adapter to plug an M.2 NVMe into a PCIe card in a standard PCIe bus. This way you should get max speed of both NVMe disks since the bus is not shared and all lanes are dedicated.

If you're using graphics cards in SLI mode, then maybe it would start sharing the bus with them. Watch out from that.

Links & References