Hacker News new | past | comments | ask | show | jobs | submit login
Ostinato – A Network Traffic Generator and Analyzer (ostinato.org)
97 points by rishabhd on March 24, 2017 | hide | past | favorite | 26 comments

Ostinato has been there for a while. I think it is the best you can get as opensource traffic generator, if you don't have access to commercial hardware (Ixia, Spirent, etc.).

Also, there's this project based on the VPP dataplane technology, which could help you achieve higher bitrates. Personally I haven't managed to play with it yet: https://trex-tgn.cisco.com/

>" if you don't have access to commercial hardware (Ixia, Spirent, etc.)."

Is there a way with Ostinato do 10's of Gigs of traffic sustained(perhaps by leveraging a fleet of them)? I didn't see anything in my cursory look at the docs. That's one of the reasons that Ixia, Spirent are able to command the price tags they do(I think they're' baseline $100K)

> Also, there's this project based on the VPP dataplane technology...

vpp is primarily based on dpdk, specifically, it utilizes their pmd etc. implementation for fast packet-io in userland. ostinato too has this feature i.e. line-rate packet generation using dpdk.

Do you have good links you can share in regards to vpp and leveraging of dpdk?

> Do you have good links you can share in regards to vpp and leveraging of dpdk?

sorry for the late reply. here are a few presentations:

1. https://dpdksummit.com/Archive/pdf/2016USA/Day02-Session04-T...

2. https://www.ietf.org/proceedings/96/slides/slides-96-bmwg-10...

you might be able to find videos on youtube as well. lemme know if you need some more info, and i can dig some more.

Kind of off-topic, but I learned the musical term "ostinato" just a few days ago, here: https://www.youtube.com/watch?v=8IX1jSVmaAs

I just discovered that guy's (Rick Beato's) channel the other day. I normally find music theory very dry, but even my kids found that video interesting.

Etimologically "ostinato" is Italian and literally means stubborn.

As the other musical terms it's pristinely copied.

Linux kernel has a built-in traffic generator, can rarely find documents on how to use them, but I heard Spirent etc is using that to test their generators in the making

pktgen [0, PDF]? This was the first I'd heard of it. Sounds interesting.

[0] https://www.kernel.org/doc/ols/2005/ols2005v2-pages-19-32.pd...

yes it's the one

Can someone recommend good lectures/book for full stack network programming focused on concepts but with enough detail? Something similar to The Elements of Computing Systems by Nisan & Schocken, but for networks?

I have the TCP/IP Guide you mention and I'd recommend it, also. I'd also suggest if the asker buys the Interconnections book, that they also go ahead and buy the TCP/IP Illustrated (volumes I-III) as well. They are textbooks, to be sure, but if you find this stuff interesting, you'll be happy to have them. Very high knowledge density, though a bit outdated. And while we're talking about some of those old textbooks, I'd recommend the newest editions of the Unix Network Programming books [0], the earlier editions of which were really helpful to me when I was learning this stuff way back in the day. I'm a huge fan of textbooks, so maybe I'm going a bit overboard, but I did really enjoy them.

[0] https://www.amazon.com/gp/product/013490012X/

There's always the classic Beej's Guide to Network Programming [0], which is pretty low-level but something I always point to when mentoring.

[0] https://beej.us/guide/bgnet/

This is such a classic. Used it in college and still use it to this day to find definitions / struct members.

TCP/IP Illustrated, Volume 1: The Protocols


Its got a pretty quirky UI but it works. I've used it when load testing some packet processing apps.

Why was this posted, It's a generic packet generator?

Ostinato == stubborn in Italian but I wonder if it is named after the ostinato music pattern [1], also of Italian origin but different context.

[1] https://en.m.wikipedia.org/wiki/Ostinato

Yes, it is based after the musical term! I explained a bit about the naming in the Packet Pushers Podcast[1] (around the 6:40 mark)

Disclosure: I'm the creator of Ostinato

[1] http://packetpushers.net/podcast/podcasts/pq-show-52-using-o...

in music, ostinato is 'a continually repeated musical phrase or rhythm.' which kinda makes sense no ;) ?

There is also Scapy [0], fully operable from the Python shell. [0] http://www.secdev.org/projects/scapy/

A few years back I was debugging a strange issue with an ethernet controller and Ostinato was absolutely crucial. Even with access to Ixia hardware I can't recommend it enough for packet generation work!

How is the packet checking on this? What exactly does it check?

I've usually used hping3 but ostinato is good

Those have slightly different use cases packet crafting vs load testing.

So there is people still using Windows XP. I like it better than the newer versions.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact