Duplex, Speed and MDIX, and an interesting problem

Two features of modern switches and routes is auto negotiation and auto mdix.

Auto Negotiation provides an easy way for network engineers to configure ports, allow automatic detection of speed and duplex settings. In an ideal world auto negotiation would be used on both ports, but in some cases (eg, when a network engineer only has access to one of the devices), a network engineer cannot tell if the port is statically set, or set to auto negotiation.

If a port is set statically on one device, and not the other, the auto negotiation process will detect the speed, but no the duplex. By the IEEE standard, if duplex can’t be detected for 10M or 100M then the duplex by default is set to half. Starting at 1G the duplex is set to full.

So what ends up happening is one port set to half duplex, and the other set to full. This causes a duplex mismatch, resulting in a slow link with packet loss. This leaves two simple solutions, set both to a static setting or set both to auto.

This is all well and good, and you end up statically setting the speed and duplex. Duplex is set to full, and 100 on both sides, and suddenly the link won’t come back up. Why is this?

Well on newer switches and devices, a feature called auto mdix allows network engineers to be lazy and use straight through cables where crossover cables are needed and vice versa. Some implementations even allow use of other pairs of wire when cables are damaged.

In Cisco devices when speed and duplex are set, auto mdix is disabled. Therefore if a network engineer has statically set the speed and duplex on one side, and has used the wrong cable, the link will fail.

Long story short…

  • Use the right cable types when connecting devices
  • Set duplex and speed the same on each device
  • If you can’t swap the cable, use auto on both sides

Robot Unicorn Attack vs Canabalt

canabalt meets robot unicorn attack

Forget your COD, CSS and Half Life. Two of the worlds best games are free (as in beer) and run on most operating systems. Canabalt and Robot Unicorn Attack. Both require less than three keys to play.

Both are platformers that have the exact aim. Get as far as possible with out falling or running into something. Pretty simple right? You can really get addicted to these and end up spending hours attempting to get to the non existent end.

Canabalt

Canabalt is a pretty straight forward 2D platformer. A guy is trying to escape from something (I’m guessing killer aliens) and takes to the roof top. You can’t stop running, and your only control is jumping. Jump from building to building. Run off the edge – dead, run into a building – dead, run into alien spaceship parts – dead, run into boxes – slowed (which eventually leads to death). Some buildings decide to crumble underneath you. Points are gained by distance traveled.

Keys
x,z – Jump

Robot Unicorn Attack

Like Canabalt, this is a 2D platformer. You are a Robot Unicorn which has some pretty nifty features, Dash and Jump. Your job is to get as far as you can without running into a wall, star, or falling off the edge. Longer you go, the faster you get. Points are earn’t on distance traveled, stars destroyed (using the dash skill).

Now be warned. After 2 hours of playing this game. Looking away from my monitor resulted in the room spinning. Sound is required.

Keys
z – Jump
x – Dash / Rainbow attack