DSCP vs Linux socket priorities

I received some encouraging comments on G+ from Jesper Dangaard Brouer about my previous post on DSCP, Linux and VLAN priorities. Those comments and the work linked to (here) points to a few long-standing (but minor) issues with the way DSCP priorities are handled in Linux.

  1. Some DSCP values, like Expedited Forwarding, are not currently (3.17 and earlier) handled correctly.
  2. Linux Priorities, defined in include/uapi/linux/pkt_sched.h, are not documented particularly well, but forms part of the stable interface with userspace. Working with traffic classification (tc), queuing disciplines (qdisc) or VLANs requires at least a basic understanding of Linux socket priorities.
Continue reading →

Looking into DSCP and IEEE 802.1p (VLAN priorities).

I recently discovered a flaw in the VLAN implementation I did at work. It seemed that the normal TCP traffic had the correct VLAN priorities applied, but audio streaming UDP traffic did not.

This was due to DSCP being applied to the streaming audio and the fact that the VLAN device’s egress-qos-map was incorrect.

I had assumed, incorrectly, that VLAN priorities are applied to all traffic as long as we’re not using fancy queuing disciplines (qdiscs). After all, 802.1Q is strictly a layer 2 thing.

Continue reading →

Linux Network Configuration

This concerns the proliferation of netlink libraries and a lack of direction and documentation. Background: I’ve configured a router with netem (see Bandwidth Throttling with NetEM Network Emulation and the tc-netem man page) to test Tieline devices under various delay and loss network conditions. I…
Continue reading →

Plain text email attachments.

After finally completing task 01 of the Eudyptula Challenge, I’d like to share a few things I’ve learned, without divulging any crucial details about the task or solution. tl;dr Pay attention. Patience… Maybe it’s just the timezone, but the turn-around time for a response to a submission meant that …
Continue reading →

Self-hosting email again.

It’s been a few years since I set up or maintained a public mail server. It took much longer than expected to get everything working again, but here we are! acooks @ rationali.st Let’s see how long it takes before I need to tweak spam filters again.
Continue reading →

Hello World

What’s this? This little bit of interweb detritus was created for a few reasons: Transparency. Employers want to know what you’ve done before. To learn about “the cloud”. I’ve done plenty of sysadmin work in the past, but that was all on my own bare metal. This helps to keep my sysadmin skills curr…
Continue reading →