User login

Blogs

21

Feb

2017

Spent some time investigating a segfault in anomaly_ts and tidied up some of the code around that, but that was mostly cosmetic. Made some very minor fixes that seem unlikely to be responsible for the crashing.

Did a last quick polish pass over ampy to remove old files, fix licensing, etc. Set up and ran my own web instance to make sure that I hadn't broken anything while tidying. Put ampy on github. Started to do the same for ampweb but ran out of time at the end of the week.

21

Feb

2017

Spent some more time working on bugs that had been reported in the amplet2 client. Standalone tests now report more useful messages when no valid targets are specified, as well as if any targets failed to resolve to a useful address. Particularly bad names now won't crash the process when trying to read the DNS response. Started looking at dealing with some of the other reports, but they turned into deeper problems that I need to think more about (I'm being inconsistent in the way I treat errors in different tests).

Did a last quick polish pass over nntsc to remove old files, fix licensing, etc. Split pywandevent from the nntsc repository and made it its own project (nntsc no longer uses it anyway). Put libwandevent, pywandevent and nntsc up on github.

20

Feb

2017

Another solid week of state machine improvements. I've been comparing the machines derived by my algorithm against the machines I can derive manually from the raw data. This has revealed quite a few failures on the part of my algorithm; a lot of the problems fell into one of two categories: 1) creating loops in situations when we probably shouldn't have or 2) a failure in the variant recognition code (both in terms of failing to recognise a variant and being too keen to decide two sequences are variants).

In the process of fixing these problems, I also discovered a bug in my original pattern extraction code that was causing it to halt too early, i.e. as soon as it has extracted a pattern of at least 4 tokens rather than the intended 20 tokens, which explains why many of the patterns I was working with were fragments of a whole sequence. Fixing that has greatly improved the quality of the machines I have been deriving, as well as revealing some patterns that I was previously always missing.

Also spent a day tidying up some of the ampy and amp-web code prior to Brendon releasing them on github. Made the old rrd-smokeping collection work again, as well as removed all of the old LPI and munin collections which we are not interested in maintaining right now.

13

Feb

2017

Another short week of refinement on the FSM generation code. Fixed a major bug in my pattern-mining code that was causing it to return substrings that overlapped as the most common repeated substring. Also spent a lot of time refining the code that determine whether a sequence is a variant of another; now, a short sequence that is entirely encompassed by another much longer sequence is considered a good match despite the number of tokens in the long sequence that are unmatched.

Put together a poster describing the FSM work, as CROW are interested in displaying it at the CultivateIT event next week. Even if they don't use it there, it'll probably be handy to have available at some point.

Helped Brendon test out some code polishing that he has done to NNTSC before putting it up on GitHub. Went through and removed some outdated code in the repo (specifically the LPI modules) and updated the docs to not refer to our non-working modules so hopefully nobody will try to use them.

10

Feb

2017

This week I redesigned my sack test to selectively acknowledge multiple blocks. which has resulted in the start and fail states being more clearly defined. It can now with a degree of accuracy determine if sack behaviour is being demonstrated by the server or not.

Along with added multiple sack blocks I also worked on resolving edge cases which showed up during testing.

08

Feb

2017

Updated packages for one of our AMP web servers, and spent some time updating configuration files to make use of new options that are available. Some of the options weren't being applied to all locations where they were relevant, so added those that were missing. Also fixed up errors when accessing various measurement data that didn't show up when testing with our sample data. Spent some time investigating performance issues that appear to have arisen with the new versions.

Started merging pull requests for amplet2-client that we got during NZNOG. Found and fixed a few other issues related to these where similar problems were occurring elsewhere.

Started doing background reading on a new project that we are about to start.

07

Feb

2017

Another disrupted week, this time caused by a malfunctioning vehicle causing me to have to work from home for much of it.

Returned to polishing and improving my state machine generation code, mostly to deal with some minor inaccuracies when creating loops or converging branches. The machines are starting to look reasonably right, although I still need a good method for working out the best candidates to be start states.

Fixed some AMP matrix issues that cropped up when we rolled the latest code out to one of our deployments. The two main problems were that a) the throughput matrix hadn't been updated to the new API and b) the relative matrix metrics were inconsistent. As part of the process of fixing these, I also found that we've been calculating relative latency incorrectly for quite a while so I've fixed that as well.

02

Feb

2017

Spent the first part of the week putting the finishing touches to the AMP tutorial that Shane and I presented at NZNOG on Wednesday afternoon. Put in a lot of time making sure that the instructions we were providing were clear, that our hardware set up would work correctly, and that we had covered everything we needed to.

Spent the second part of the week in Tauranga at the NZNOG conference. Got really good feedback and enthusiasm from the AMP tutorial, and the speakers for the Thursday and Friday were rather interesting.

31

Jan

2017

NZNOG week. Spent the first two days finalising everything for the AMP tutorial.

The tutorial itself went ahead on Wednesday afternoon and seemed to be fairly successful. No major technical glitches and the participants seemed to get something out of it.

Gave my talk on my latest libprotoident study on Thursday. Happy with the reception I got and had quite a few interesting conversations afterwards as a result.

20

Jan

2017

Helped Brendon get the NZNOG AMP tutorial in a presentable state. Built some VM images that our attendees will be able to use as an AMP server and made sure that the steps provided in our tutorial will result in a functional server. As a result, we've fixed a few little bugs in ampy and amp-web that showed up in situations where you don't already have a lot of pre-existing streams or meshes.

Made sure that our VMs and instructions will work with VMWare, VirtualBox and QEMU, as well as on Ubuntu, Windows 10 and macOS.

Installed Ubuntu 16.04 on all of our UP boards, so they are all ready to go next week.