Alright, so I recently had an issue where I couldn't connect to anything with exception to some seemingly random games. After doing a little bit of poking around at it with Tom and Lummox, a theory formed that my ISP was filtering my traffic. This doesn't really come as a surprise to me, as I go to Kansas State University, where there's a strict policy on P2P File Sharing. even with legitimate legal torrents
Anywho, flowchart time. The following is (roughly) how a connection from Dream Seeker to Dream Daemon looks with a lot of stuff missing.
A packet going from Dream Seeker to Dream Daemon goes through your ISP, other places, their ISP, to Dream Daemon. Simple, yes?
This is roughly how my connection looks:
A packet going from Dream Seeker to Dream Daemon goes through my ISP, which filters all traffic for patterns commonly used by known file sharing applications, then to their ISP and Dream Daemon. After doing a little bit of prodding around, it was discovered that my ISP is cutting my connection due to some resemblance to one of these patterns they block.
So I can't connect to pretty much any game, which exception of a few. Why is this? Certain characteristics of the games cause more or less traffic to be sent when the connection is being established. For instance, The Saloon has very few resources so connections to it remain unsuccessful. Ultimatum, however, has tons of resources. The downloading of these resources makes it look suspicious to my ISP and the connection is not cut.
Now you might be wondering why I'm angry enough about this to draw up some flowcharts about it and rant in a blog post about it. The reason I decided to rant about it is that I found a solution to my problem, but that solution makes me even more angry with my ISP. This anger towards my ISP inspired creativity so I whipped out OOO Draw and drew up some flowcharts. The solution looks as follows:
Yeah, ridiculous, right? In order to establish a connection to a BYOND game 100% of the time, I have to set up a proxy on my school's network (doesn't route through ISP first) which sprinkles chunks of bogus data of random size (literally, rand()%95- I need to clamp it to [5,95] but I haven't bothered yet) along with the legitimate data that BYOND is sending to mask that it's not actually a p2p file sharing application. The second proxy is required to filter out the bogus data so that the connection doesn't get killed immediately.
This situation is angering to me, and now I must locate a VPS that has a high bandwidth limit (such that I'm allowed a lot of bandwidth- hence the limit is high (Keeth)) so that I can set up my proxy there and connect to games. Any recommendations on a well-priced VPS with high-bandwidth limits and runs Linux (any distro)?
I have a similar situation, and I've been unsure of what to do, so I kinda just left it where it lay.
|
BYOND is perfectly capable of "P2P" with the ftp() proc, which any game that has a "Send File" verb (or similar feature to that same effect) will obviously be tagged as a P2P by the filter.
|
Spunky_Girl wrote:
BYOND is perfectly capable of "P2P" with the ftp() proc, which any game that has a "Send File" verb (or similar feature to that same effect) will obviously be tagged as a P2P by the filter. The goal of the school is to limit illegal file sharing. That being said, the ISP's filters generally aren't content aware. They look for network traffic patterns for known filesharing clients (Torrents, Limewire, Frostwire, etc). The fact that a given game may or may not have a "Send File" verb has no effect on whether or not my ISP filters that connection or not. They end up limiting more than just illegal file sharing in their haste. |
Interesting point, Spunky, but I suspect it's more general than that.
If I understand correctly, CISCO ASA style solutions will more than likely pick up BYOND because of traffic patterns presented by game traffic automatically, as opposed to any conscious decision on the part of staff at a school to find "P2P" functionality in the software. The capability (or not) to "send file" within a BYOND world would probably not get it tagged any more than general BYOND traffic about mob positions on maps does, I think. It's all the same kind of stuff to an ASA server. In Aud's case it won't be looking for game data, but anything that fits their mould of illegal P2P. BYOND mob positioning data / login process / whatever unfortunately fits that pattern, unintentionally. |
Or spend the money you'd use on a VPS and get your own connection, heh.