I’ve been asked to write a pre-deployment tool for certain network product. Task was easy, just to test throughput of the network on given ports. The easiest way is to listen on certain port and returns every incoming data back to sender. Well, this is called Echo - so I found RFC 862 which defines Echo protocol. As you can see, the specification for Echo is very simple. Server replies every incoming traffic back to the sender.

So I wrote command line tool, that can be echo server as well as client. It supports selectable incoming and outgoing ports, TCP and UDP protocol. It’s written in C# and gives me the new lessons in TCP stack. I will write about lessons learned in my future blog posts.

Application and source codes are available at https://github.com/pavelbansky/EchoTool http://bansky.net/echotool

Echo server 677x343 Echo server mode

Echo client 677x343 Echo client mode