PS3 and NotNetworking

What? It doesn't support "IP fragments"? WTF does that mean?

Gary Schafer, 21 April 2013

A friend of mine is having problems with his Playstation 3 (PS3) working over his wireless. He's using an older D-Link router. He told his PS3 to do an "Internet Connection Test". It took a long time for the PS3 to finish the "NAT Type" test. At the end, he had an error message scrolling along the bottom of the screen. It said:

The router in use may not support IP fragments, and the communication features of some games may be restricted. For details, contact the router manufacturer.

Playstation 3 error message

Okay. I'm going to dispense with the snark. If you're reading this, you're probably already frustrated. On to the technical discussion. The internet protocol (IP) allows for something called "IP fragmenting". The reason has to do with the size of a packet sent across the internet. When you downloaded this web page (and I appreciate the fact that you're visiting), any files more than a few hundred bytes had to be sent in multiple packets. IP puts data into datagrams. If there's more data than will fit into one datagram, it sends multiple datagrams. The size of the datagram will vary based on the underlying protocol carrying it. For most people who have network connectivity in their homes, the underlying link layer protocol is Ethernet. Ethernet only allows for a maximum of 1500 byte datagrams. The fact that your data might require multiple datagrams to get the file from point A (say, a server) to point B (your computer) is not IP fragmenting.

The problem arises after that datagram leaves your little, home network. Once it's on the big, bad, worldwide interwebz, it's possible that the link layer protocol might not be able to handle such large packets. When that happens, then the IP datagram will get fragmented. It gets fragmented at the router. A router might connect dissimilar networks, meaning networks which might have different link layers. My Actiontec router, for example, connects between my home network (running Ethernet, natch) and my Verizon FiOS box (which is connected to the router via MoCA). The rub is that a router will support fragmenting the IP datagrams, but it won't support defragmenting them. The defragmenting part is up to the end hosts. In this case, that should be the PS3.

So what the heck is going on? To find out, I took an older Linksys WRT54G2 and connected my PS3 through it to the interwebz. First, I connected it using a wired connection. I used automatic settings for everything, including the MTU. Using a wired connection, the PS3 worked fine for the "Automatic" MTU setting.

I next tried it using the PS3 through the wireless connection. I disconnected the Ethernet cable, then started at the "Internet Connection Settings". I chose "Easy", then "Wireless". I next selected "Scan", followed by selecting my wireless router and entering the appropriate password. For the wireless, it didn't give me the option to set anything, so everything (again) was left as automatic. This included the MTU. Using the wireless, everything worked fine. I received no "IP fragment" error with the PS3.

Except earlier, when I was just playing around, I had tried to connect my PS3 through the same wireless router, a Linksys WRT54G2. And it didn't work. At that time, my WRT54G2 was acting simply as a wireless access point. Normally, it acts as a gateway. But that first time I had it set to being a router. What's the difference? According to the information provided, the difference is whether the WRT54G2 is working as the connection to the internet ("Gateway"), or whether its part of a network ("Router"). I had it earlier set to "Router".

Unfortunately, when I set it to "Gateway", it began working without the error. When I set it back to "Router", it was still working without the error. In other words, I could no longer replicate the problem. Weird. And annoying. And frustrating.

An Open Letter to the Department of Justice

Gary Schafer, 19 April 2013

First, let me say to the Boston PD, Watertown PD, Cambridge PD, FBI, ATF, and the other law enforcement agencies, "Well done!" You captured one of at least two people responsible for the Boston Marathon bombings from just four days ago. As I was perusing various web sites, I came across this tweet from Senator Lindsey Graham stating, "If captured, I hope Administration will at least consider holding the Boston suspect as enemy combatant for intelligence gathering purposes."

Here's my recommendation: Don't. Just don't. No "enemy combatant". No rendition. No shipping to Gitmo. Put him in the federal courthouse in Boston. Let Boston deal with him. Give him the treatment he so richly deserves, that of a nothing-little punk. A scrawny, cowardly bitch. I'm willing to bet large sums you can still find 12 upstanding citizens and true to serve on a jury. Let Boston continue to show him and the world, "We took what you gave us, and we're about to give it back. Bitch."

If that's not a good incentive to the world not to fuck with Boston, I don't know what is.

Here's a Random Fact...