Quality of Service on a Draytek 2820Vn

I have a Draytek Vigor2820Vn at home that provides ADSL 2+ services (until the NBN rollout is completed in our area later this year). We get a steady 14 Mbit downstream and 0.8MBit upstream from that device to iiNet. Since becoming a heavy user of Usenet we have suffered from the problem of network saturation, as lifeline (our SABnzbd and torrent host) sucks down maximum bandwidth from the news servers. I knew that the router has quality of service and bandwidth limitation features built in, but it wasn’t until this weekend that I experimented with them in an effort to solve the problem. Now that I have, it might be useful for others to know how.

First things first, shoot over to the Draytek support site and download the latest firmware for the device. I was running 3.3.4.1 from November 2010 and 3.3.7.3 is the latest, released in October 2012. Note that the release notes for 3.3.7.3 recommended upgrading to 3.3.5.2 first if you’re running an older firmware as the web user interface changed between releases, and using 3.3.5.2 as a stepping stone is the  approved upgrade path. You can download older firmwares, including 3.3.5.2, from the Draytek FTP server.

With the shiny new firmware freshly installed I dug about in the Bandwidth Management menu options, knowing that either bandwidth Limit or Quality of Service would be what I wanted.

Bandwidth Limit is used, from what I can tell, to dedicate a maximum amount of bandwidth to an IP on the network. I want almost the opposite of that, and so after further digging I worked out that it was Quality of Service that I needed to investigate further.

QoS can be used to ensure minimum service levels for various applications (or rather, protocols) and is commonly used in conjunection with VOIP on the 2820Vn. In my case it’s a much simpler problem to solve – traffic to all IPs other that lifeline should take priority, but lifeline can use all the bandwidth if nobody else is. To create this formula I edited the Class 1 Class Rule and added a rule that matched all IPs within the range 192.168.10.2 – 192.168.10.254 (which is everything other than lifeline). This rule matches any Remote Address, any DiffServ CodePoint and any Service Type. I named Class Rule 1 “Preferred” and saved it. Back on the QoS admin page I setup the WAN1 rule and enabled QoS in both directions. I allocated 95% bandwidth to “Preferred”, 1% each to Class 2 and 3, and left 3% for Others.

My testing showed that this setup worked perfectly for the scenario when any other host on our network (wired or wireless) required bandwidth it was diverted from lifeline until it was no longer required, at which point lifeline maxed out the link again. No more lagging YouTube videos or slow web pages!

I went back and added some additional rules to handle remote access into my network, namely the web applications that I use to manage the downloading, and SSH. These rules include lifeline in the preferred pool for those protocols only. Connecting my laptop to the iPhone’s LTE showed the desired effects when coming into our network too.

With how easy QoS was to setup and configure on the Draytek it makes me regret not looking into it in more detail sooner. Furthermore, when the NBN gets lit up on my street I’ll be looking to Draytek for router options (though I do love using pfSense).

XBMC crashed my Apple TV2 back to the stone age

Has anyone seen this: I was in XBMC last night (Eden build) and it crashed back to the OS, but instead of the usual menu options it was back to the default four (no XBMC, no NitoTV). It’s almost like the crash caused it to restore from a backup firmware. I did a hard reboot on the ATV2 (holding both buttons on the remote for 7 seconds) and it came back but XBMC and NitoTV are still missing.

I thought that maybe an autoupdate had run or something, but I still have iOS v4.1.1 installed.

I’m going to try and find a micro USB cable and use Greenpois0n to restore it again tomorrow, but it’s a worry.

Has anyone seen this before, or has anyone got an alternative ideas?

Update 5th April 2012

After spending more than an hour attempting to jailbreak and upgrade the ATV2, I gave up and plugged it back into the TV. I thought that it would be worth while checking if I could SSH into the device, even though all signs pointed to it no longer being jailbroken. Amazingly, SSH worked just fine and whilst I can’t work out how to restore the menu items, I did find a way to boot into XBMC directly, so whilst that doesn’t solve the initial problem, it solves it well enough. My ATV2 now boots into XBMC by default, which is what I ant 99% of the time anyway.

Missing subscriptions in iCal

If you’re working with subscribed calendars in iCal, and find that you can’t see a subscription in the pop-up selector (I’m on iCal 4, on OS X Lion – yours might be different) then it might be because there are no items in that calendar.

I’m doing some development, where a calendar has three types of entries. It has standard appointments, recurring appointments and a special type of recurring appointment, that a user has assigned to them if they’re in a role for a period of time (think rotating roster). I have the first two types of entries sorted out, and disabled the output of these for testing purposes. This meant that the calendar was empty, and iCal hid it from the list of subscribed calendars. When I tried to add it again I got the error:

This is a duplicate calendar. This subscription calendar already exists in every account that supports subscription calendars.

If you’re having a similar issue, it might be because of this. On reflection, I can see why they’re hiding the calendar if there’s nothing there, but it made my debugging painful.

Removing yourself from a mailing list

I wanted to remove myself from a mailing list today, but there was no unsubscribe link in the email footer. The list was legitimate, and I don’t suspect that the operators were intentionally trying to lock me in, but it didn’t help my situation. The content just is not as relevant to me as it used to me.

I had this nagging sensation that I’d already attempted to remove myself from the list before, and that it might have been a problem with me using my work email vs. my personal email, even though they end up in the same inbox. As such, I used the View > Message > Long Headers function of Apple’s Mail application to see what address the email was actually being sent to. Doing so revealed a bunch of other headers that Mailman had added to the email that I found really useful.

Of note is the the List-Unsubscribe header, which shows both a URL and an email address (and subject) that can be used to unsubscribe from the list. Hitting the URL didn’t work for me (it might not be configured to listen on that port anymore) but sending an email with the right subject to the right address worked a treat, and instigated the three-way handshake that’s commonly used to confirm I am who I say I am, and I want to leave the list.

My digital self

Me, digitallyThe short version: on Xbox Live, the online network that allows you to play games and connect with friends via your Xbox 360 over the internet, you have an avatar. This avatar is a digital representation of yourself and is actually used in some games to represent your character. For example, in Guitar Hero 5, my avatar is on stage rocking out with a bass guitar (along with Magdalena, and any other friends I might be playing with).

With the introduction of avatars a few years ago, Microsoft gave users the ability to customize not only the physical appearance (sex, face, height etc) but also let you dress for success. You’ll notice that my avatar has a beard and kinda looks like me, and wears a Cleveland Indians hat, jeans Adidas sneakers and a black hoodie. Or, if you’re viewing this after September 15th, 2010, I could be wearing something entirely different. That’s also important to note: I actually take the time to change how I look online if I get bored, or no longer think that my mini-me represents me accurately anymore. According to the last paragraph in Randy’s excellent article about the Avatar Marketplace, he does the same thing too. I bet a fair few people do.

Here’s my idea, which is actually two ideas rolled into one. I would like the ability to dress my avatar how I like, then click a button and purchase those clothes in real life. Conversely, I’d like to buy some new clothes in real life, and receive an Xbox code that I can use to unlock the digital equivalent online.

Considering Microsoft have arrangements with a lot of recognized brands already, including Adidas, Quicksilver, Diesel, Burton and Roxy, as well as the facilities to enable online trade (with both real currency and Microsoft Points, the online currency used within Live for micro-transactions), it wouldn’t be much of a leap to connect these up.