Ethernet showing garabage data available on initial connection to server

Greetings. I am working with an UNO R3 and SainSmart Ethernet Shield (Wizpro W5100). I am writting a server, listening on port 23, and I am seeing garbage 24 bytes of data in the client buffer when they initially connect.

For instance, right now, I telnet in, then on the console I dump the data immediately waiting. It seems to follow this pattern:

FF FD 03 FF FB 18 FF FB 1F FF FB 20 FF FB 21 FF FB 22 FF FB 27 FF FD 05

Above, I was reading the data and printing it out to the console, but I see the same pattern again on the next connection.

Anyone know what I am running in to?

This may be a "nevermind", but I will update the information here.

It seems some of my telnet clients are actually doing some Telnet protocol at the start, while others do not. On the ones I was testing, I see it is indeed sending the "WILL' and "WONT" packets, defining what the telnet client can handle.

So, not garbage. Telnet protocol. I didn't see this being handled in the examples I based my code on, but I will add it to mine and share the results.

I created a fuller telnet server for Arduino and the Ethernet shield. It can be conditionally compiled to do the minimum (just eat the control sequences and handle little else), or all the way up with full diagnostic messages. It was fun digging through the RFCs to learn.

Source code posted to GitHub, and article here: