My Killer App - Network Loading and Analysis
My Killer App - Network Loading and Analysis
Author
Discussion

TheExcession

Original Poster:

11,669 posts

280 months

Thursday 30th March 2006
quotequote all
Common lads.. what do you think?

Anyone got any experience of this kind of stuff?

In nearly six years working in the satellite comms industry I've not seen anyone solve this problem yet.

So, here's my next Killer App.....

I'm casually thinking along the lines the likes of IPerf - but I need to scale up the number of active tcp or udp sessions. What's a session? Well something like an FTP interaction or UDP based streaming app like Real Audio, but I'm a little more interested in emulating the constant rate data transfers, multicast etc.

So I need traffic session to be managed and I also need to be able to specify the end points (IP, Port) for each session. easypeasy

I'd be looking to have a central application that can configure and manage multiple sessions. I guess upto about 50.

Do I need to 'own' both ends of the link? I fink we do..... regular IP services such as FTP use COTTS servers where we'd have no control (certinly no realtime control) of the bandwidth. Thus a client connects, requests, and then the server just pushes as hard as the network will take the traffic.

So imagine a host server, and fifty client applications distributed accross multiple PCs - I dunno - say 10PCs 5 client sessions per PC (multiple is the operative word here! - I'd like to be able to specify session end points on several different PCs), then I want to stream IP data using TCP or UDP.

I want results for lost packets, delay variance and throughput for each session, this needs to be delivered back to the central management console. I need to start and stop sessions at will. I need to do this in real time, so I can load up ther network and watch its behaviour. I also need to snapshot the network load so that I can 'replay' scenarios. I need to be able to save these snapshots and then build new tests based on having the network in a specified state. (I'm not going to tell you the other things that I need yet)

Mid test I might want to be able to change the traffic parameters. Imagine we have 5 TCP sessions all streaming at 56kbs, I want to get one of them to increase to 128kbs. The software then needs to notify me if I've exceeded the bandwidth available over that particular route. I need to set alarms and threshold limits for these scenarios.

Get my drift?

"Why" I hear you all cry? Well we have some software that simulates mobile satellite phones, we have some software that simulates satellites and funnily enough we have some software that simulates the core network.

We need some software that simulates users doing stuff....

Over to you lot.....

aldi

9,288 posts

267 months

Thursday 30th March 2006
quotequote all
I think you can do that kind of traffic shaping in Linux/BSD - if you had a box inline routing the packets you could get that info & functionality out of it with a bit of googling and scripting I think.

BliarOut

72,863 posts

269 months

Friday 31st March 2006
quotequote all
You need Windoze mate

OK, so I have read the explanation, but err, what's the question?

TheExcession

Original Poster:

11,669 posts

280 months

Friday 31st March 2006
quotequote all
aldi said:
I think you can do that kind of traffic shaping in Linux/BSD - if you had a box inline routing the packets you could get that info & functionality out of it with a bit of googling and scripting I think.


Yup, but for this project it needs to be cross platformm, one end of the link could well be on a Windows box, the other might be on a Linux box.

Also, if I make the client thin enough, then potentially it could run on embedded systems, so it could be used to test something like a wireless mesh?

TheExcession

Original Poster:

11,669 posts

280 months

Friday 31st March 2006
quotequote all
BliarOut said:
OK, so I have read the explanation, but err, what's the question?

Will I have fun building it and will it pay for more beer?

BliarOut

72,863 posts

269 months

Friday 31st March 2006
quotequote all
TheExcession said:
BliarOut said:
OK, so I have read the explanation, but err, what's the question?

Will I have fun building it and will it pay for more beer?
I seem to remember that your idea of fun is slamming your cock in the fridge door, in which case definitely As for paying for more beer, have you identified a target market? The main thing I want from LAN analysis (which I know is different) is a big finger that pops up in a Pythonesque style and goes "the problem is here". I take it you will be able to factor out the control traffic from your app in the results.

And are you gonna let me have a play with it when it's done?

jamieboy

5,929 posts

259 months

Friday 31st March 2006
quotequote all
There's definitely a market for this.

A few years ago I was involved in a project that had PCs on offshore drilling rigs, and to test what was viable we ended up with a really horrible heath-robinson collection of Cisco routers with the clock rate turned down, 10 or 12 PCs running various VBScripts full of appactivate and sendkeys, and two Solaris boxes running both an impenetrable character-based monitoring tool and a 'latency/noise injector' which I think we downloaded from some American university.

I appreciate this is small beer compared to what you propose, but if there had been a cheap(ish) easy-to-use single supplier solution, we'd probably have bought it.

When will it be ready?

GreenV8S

31,024 posts

314 months

Friday 31st March 2006
quotequote all
Are you talking about a software application that will offer a simulated load into your simulated network, or an application that will offer a real load into a real network? Generating network traffic is relatively straight forward to do as long as you aren't fussy about the content above the network layer. Scheduling and controlling something to generate the load is again fairly straight forward.

Plotloss

67,280 posts

300 months

Friday 31st March 2006
quotequote all
Ex,

CA have a lot of products in this general space since they acquired Concord Networks last year. They sit in the Unicenter line I believe.

Can find out more if you like.

TheExcession

Original Poster:

11,669 posts

280 months

Friday 31st March 2006
quotequote all
GreenV8S said:
Are you talking about a software application that will offer a simulated load into your simulated network, or an application that will offer a real load into a real network? Generating network traffic is relatively straight forward to do as long as you aren't fussy about the content above the network layer. Scheduling and controlling something to generate the load is again fairly straight forward.


I'm looking at mixture of the two!

For the current project this wil lbe used to drive real traffic through a 'real' network - by this I mean physical switches and routers etc, but part of this real network is simulating a 'real' network!

It's essentially a lab presentation of a real 3GPP satellite network. The satellite phones are emulated in software, as is the delay associated with going over the air interface up to a satellite and back. Once we hit the ground, we are into the real stuff again, i.e. the satellite base station is real, as is the core network behind it.

Traditionally we would then hang a bunch of application servers off the back of the core network and try to run some appication traffic through from end to end.

What I'm proposing is to develop some 'Test Peer' software that will sit at each end of the link, pasing IP data to each other.

thus

TestPeer1<->Sat Phone<->Satellite<->Ground Station<->Core Network<->TestPeer2

Remember that in the above chain, the Sat Phone and Sattelite segments are all software simulated and this will likely be scaled up to require hundreds of these 'chains' running concurently.

I'm hopeing to have an out of band control channel between the two Test Peers such that they can be controlled with out passing data through the end to end link, this wil be used for gethering results and alarms as thresholds are crossed etc.




aldi

9,288 posts

267 months

Friday 31st March 2006
quotequote all
TheExcession said:
Yup, but for this project it needs to be cross platformm, one end of the link could well be on a Windows box, the other might be on a Linux box.


Ah sorry I misunderstood, I thought you wanted to control traffic not generate it - ignore me

GreenV8S

31,024 posts

314 months

Friday 31st March 2006
quotequote all
TheExcession said:
It's essentially a lab presentation of a real 3GPP satellite network. The satellite phones are emulated in software, as is the delay associated with going over the air interface up to a satellite and back. Once we hit the ground, we are into the real stuff again, i.e. the satellite base station is real, as is the core network behind it.

Traditionally we would then hang a bunch of application servers off the back of the core network and try to run some appication traffic through from end to end.


[declared interest]ASG pay my salary[/declared interest]

We have clients doing exactly this for mobile networks using ASG-TeVISTA Performance Manager. It's a distributed application that monitors the network infrastructure, and the delivered services. In addition to just hammering the network and seeing what happens, it provides round-trip and jitter analysis, error rates and all that sort of stuff. Maybe overkill for what you have in mind, but if you're serious about this then these are features that you'll probably end up wanting. Feel free to contact me off-line if this sounds interesting.

TheExcession

Original Poster:

11,669 posts

280 months

Friday 31st March 2006
quotequote all
Plotloss said:
Ex,

CA have a lot of products in this general space since they acquired Concord Networks last year. They sit in the Unicenter line I believe.

Can find out more if you like.

Aye... please do, always good to see what others are doing.

Like I say at the moment this is pretty specific to an existing test system... it also needs to interface to some other existing software (fortunately that I wrote) but I'd like to make it fairly generic and stand alone with an option to sell into other markets.

bogie

17,093 posts

302 months

Saturday 1st April 2006
quotequote all
what do you want - a solution for this or a tool to test scenarios?

I spent 3 years in a previous role as consultant in network and application performance modelling..if you want to test/monitor/simulate scenarios then you want to be looking at toolsets from Compuware or Opnet