Home > Archive > CCNA > July 2004 > Cisco hardware emulation, help required.





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Cisco hardware emulation, help required.
FallingStar

2004-07-06, 12:50 pm

First post so go easy on me : ) I apologise for the length in advance.


If, like me, you've used commercial cisco/ios simulators before and found them to be rather shoddy then this may interest you. Its apparent that the only emulator of any REAL use to a CCNA/NP/IE is one which emulates the hardware and runs actual IOS - problem is that none exist.

I'm currently working on a non-commercial software project temporarily called 'RackSim' which aims to bring network emulation (in particular Cisco device emulation) to a virtual rack with FULL IOS FUNCTIONALITY. Basicaly, something that can model almost anything you could set up in equivalent real hardware.


The concept is as follows :

The main window looks like a 19" unpopulated rack. A button allows you to flip the rack over to see the reverse. The rack can be scaled to fit alongside other windows onscreen (Terminal emulators, Worksheets, etc) The rack scales smoothly and is driven by DirectX8.1/OpenGL.

The rack can be populated by Devices (defined by classDevice) which appear just as their real-life cisco counterparts. The user can create devices at will and move them around the virtual rack.

Each device supports all of the modules available for it, status lights and interfaces all look realistic.


Essentialy, the clRack contains clDevices which contain clModules which contain clInterfaces and each can contribute to the final render wether the user is looking from the front or the back.

Wiring is a class in itself and each connected wire is shown on the rack. When you flip the rack over the wires swing slightly giving an impression of realism. When hovering a connected interface all wires become semi-transparent except the one connected at that interface - this makes visual inspection of hookup so much easier.

Wires can be connected at the back or the front of the rack. Wires on the other side can be seen through any unpopulated 'gaps' in the rack, again, adding to the 'feel' of the rack.


This interface is ALREADY WRITTEN and looks highly similar to 'propellerheads reason's GUI which can be seen in the images below :

(I'd like to show MY screenshots with 4000series routers and two 1924 switches but I cannot insert unhosted images - mail me if interested)

http://www.harmony-central.com/Events/WNAMM00/Propellerhead/Reason_lg.jpg
and
http://www.harmony-central.com/Events/WNAMM00/Propellerhead/reason_backpanel.jpg


Also, the wire class is written and supports configurable signal-noise ratio and actual visual indication of 'bits on the wire' using a fantasy piece of virtual equipment similar to a digital storage oscilloscope but using selectable packet headers as its trigger)

Other 'fantasy' equipment will be a packet injector/tracker. Basicaly this allows you to inject a custom packet at any interface and give you a full report of its path through the equipment ... including ACL's matched against, fragmentation/reassembly tracking and routing decisions till it reaches its destination, leaves the rack, or is dropped.


Now the fancy part:

On the lower baseplate of the rack there will be a number of interfaces which correspond to EXTERNAL references. These fall into two categories - Actual and Virtual.

ACTUAL = Actual PC interfaces. For example, NIC cards and serial ports ... By connecting a device to these we essentially create a useable bridge between virtual equipment a REAL network or device.

VIRTUAL = Virtual connectors look like V35 interfaces and allow us to link two or more virtual racks running in a classroom environment. The local area network transparently tunnels the racksim interface data between the two (or more) racks to simulate WAN links to foreign offices - Again, line conditions and delay can be simulated.

Other equipment to be supported will include ISDN which will, again, be useable either across a single rack or tunneled across multiple racks.


Most of these devices will be purely software approximations. However, the classes that encapsulate the behaviour of routers and switches and their backplanes (but not their modules) will be running third-party 80x86, 68xxx, etc simulators and (possibly modified) bootimages and IOS. A standard PC will have no problem in supporting several of these devices as clockspeeds are relatively low.


I'd like to know what others think of this and possibly solicit help from coders with strong C++ experience and experience with coding emulators.

I DO NOT need beta testers as I am still a long way from releasing a beta. The only thing running so far is a software approximation (not emulation) of 1900 series switches with minimal functionality and a 4000 series router device with several working modules. Oh, and an APC UPS which I threw in for fun cus it looks nice in the rack - it automaticaly saves and loads state information in case I forget to 'copy run start' before I shut down.


Anyway, all comments/criticism welcome. I'd like your thoughts and ideas wether from a technical, legal or user perspective.

RackSim (provisional title) is, and shall remain, free and for all non-commercial use.


FallingStar(UK)
FallingStar

2004-07-07, 12:59 am

Okay, heres a few quick screenshots. Bear in mind that many of the graphics are just temporary placeholders - so ignore the rough edges, such as the connectors which currently are just blocks of colour.

Also, the external connections for interlinking racksims across a LAN and/or connecting to real equipment (shown on the bottom-left of the baseplate) actualy hold two status LEDs now (One for establishment and one for traffic)

Heres an empty 5U rack, as you get when you start up or open a new project.
http://members.fortunecity.com/racksim/rs01.jpg

Here it is populated with two routers (C4000 series which we are using in tests as I'd already written an emulator for it. True hardware emulation will start with the more modern 2600 units)
http://members.fortunecity.com/racksim/rs02.jpg

Lets flip it over. As we do the cables sway briefly (a la 'prop. reason') The 'phono' looking connectors at the bottom are just media independent connectors that are capable of tunneling any media or protocol.
http://members.fortunecity.com/racksim/rs03.jpg


Finaly, an image of an APC UPS. No idea why I originaly drew up that panel but it looks nice. You can't see in this old picture, but it currently does saves, autosaves and restores with buttons on the facia - it will be dropped before release.
http://members.fortunecity.com/racksim/rs04.jpg
One thing that won't be dropped is the shelf you see at the top - That will be used for standing one or more small items that don't fit the 19" rack (Such as ISDN modems and the like)

There!


That probably explains the project far better than the description above.

Any feedback at all ? Its hard enough coding all of this myself so far but without feedback it kinda seems pointless.

Comments, criticism, questions, suggestions, etc... All gratefully received.

Regards,


FallingStar(UK)
mikop

2004-07-07, 1:26 am

.
mikop

2004-07-07, 1:31 am

eeer

"will be running third-party 80x86, 68xxx, etc simulators and (possibly modified) bootimages and IOS. A standard PC will have no problem in supporting several of these devices as clockspeeds are relatively low."

get some lawyer on retainer, cisco WILL be after you.
mmgm76

2004-07-07, 2:34 am

Nice sales pitch, but agreed....visibility will bring Cisco's legal team on you with tremendous interest!
enforcer

2004-07-07, 4:51 am

Forgive me.

But what exactly was your question?
WPFossil

2004-07-07, 6:09 am

Nice looking graphics. You will probably have troubles with the legality of it all - but good luck anyhow.

Agree with enforcer - what was the question anyhow?
Sexy Lexy

2004-07-07, 11:43 am

Looks like . . .
FallingStar

2004-07-07, 12:35 pm

Ok,

The question was ...

Did anyone have any comments, suggestions, criticism... And I subtly mentioned that I was trying to solicit coding help from those with strong C++ and prior experience with coding emulators.


Is this spam ?
No, This is the only place I've posted publicly so far.

Is this off topic ?
I hope not. I figure the people with most to say about an emulator are probably those currently struggling with certification. Thats why I chose to post here for comments.

Is this a sales pitch/Advertising ?
Since I'm not selling anything and currently have no available product I would suggest that its neither. Indeed, the idea was always to make this free to students as everyone else on the cert scene seems to be ripping them off, particularly on cheap sims.

Is this an infringement of Ciscos rights ?
Possibly. I'd assume that if I am not profiting at all from this the worst they could do is close any site associated with distribution. I won't be including ANY cisco proprietary code in the product.

So I don't wish to make ANYTHING from this ?
Well, it would be nice. Perhaps as unrestricted giftware if I can do that without compromising myself. If I could find a safe legal base I would happily charge big bucks for commercial use - but I don't know wether it will be possible.


Hope that answers your questions. I know its suspicious when someones first post is something like this - Its normally either BS or an advertiser that you never hear from again. I assure you I am neither.

Helena,
FallingStar(UK)
Sexy Lexy

2004-07-07, 12:38 pm

quote:
Originally posted by FallingStar


Is this an infringement of Ciscos rights ?
Possibly.



Isn't that cause enough for concern?

FallingStar

2004-07-07, 1:03 pm

quote:
Originally posted by Sexy Lexy
Isn't that cause enough for concern?



Thanks for responding,

Yes, it is. I've already written an almost complete 4000 simulation (As my first rack when I started CCNP was composed entirely of 4000 series routers with a couple of 1900's) I'm fairly certain were I to try sell it I'd be dragged to court so fast my head would spin. The idea is to make it modular, offer a published interface for new devices and modules, and then throw it open to the community where work can continue even if I am forced to back off from the project or denounce it completely.


Personaly I think true 100% simulation is only possible if you risk stepping on Ciscos toes a little - software approximation will always fall far short in terms of performance and accuracy. You really need to create a hardware abstraction from which to run actual firmware. Whilst this may sound difficult (or even impossible) to some it is WAY less complex than, say, PSX emulation

Talking about PSX emulators - the legal situation is similar. Sony is huge, have their own lawyer farms, etc. The ePSXe (and other emulators) rely on Sony proprietary BIOS images which for legal reasons cannot be packaged with the emulator ... I think I'm on a similar legal footing. Except in this case the IOS images can be legitimately licensed whereas with PSX you were breaking the law by simply having them.


Personaly, I think its worth the risk. But without feedback I won't know for sure wether I am meeting a strong demand or just shooting myself in the foot for no real purpose.

Thats the reason for the post.


Helena,
FallingStar(UK)
peterd

2004-07-08, 3:26 am

Hi,

It seems to me that you've spent a lot of time designing fancy graphics that aren't required from a strictly 'engineering' view.

It shouldn't matter if the cables 'swing slightly' as the view is rotated, or not, etc.

The only bit that matters is that when you type in a command it acts just as it would on a real router.

I've tried sims a year or three back and they were pretty limited. I assumed that was because to give them a full command list and functionality would allow someone, somewhere to set up a PC and use it as a router.

In your original post you wrote that your rack would have physical ports to the outside world, or did I misunderstand?

So how would Cisco allow you to release your software for free if it would allow people to route without paying Cisco £1200 plus for hardware?

You may get away with it if you wrote your own code and used different command names and/or different syntax, but to use the same command structure as Cisco is leaving yourself wide open, sorry.

It's a brilliant idea and I can see that the graphics are beautifully done. It would be a great help for people studying for Cisco exams but I think it's a non-runner unless you do it illegally and hang the consequences.

Regards
Peter
MistyRing

2004-07-08, 8:20 am

quote:
Originally posted by peterd
Hi,

It seems to me that you've spent a lot of time designing fancy graphics that aren't required from a strictly 'engineering' view.

It shouldn't matter if the cables 'swing slightly' as the view is rotated, or not, etc.

The only bit that matters is that when you type in a command it acts just as it would on a real router.



Gotta disagree with you there. People don't really need cup holders in their cars, or a nice shiny black PC rather than a beige one, but many choose a particular model just for these kind of reasons.

Want people to use it? Make it look cool.
FallingStar

2004-07-08, 8:30 am

> Hi,
Hi

> It seems to me that you've spent a lot of
> time designing fancy graphics that aren't
> required from a strictly 'engineering'
> view.
>
> It shouldn't matter if the cables 'swing
> slightly' as the view is rotated, or not,
> etc.

I actualy agree with you. The thing is that interfaces should be as intuitive as possible. I don't know if you've ever used propellerheads reason - its a professional audio rack and it feels like the real thing. That lowers conversion time, and the less time you spend learning the interface the more efficiently you learn.

If this were purely written for engineers it could be console mode with an efficient snappy command syntax. But its not, the intended audience is the home user who possibly can't afford the instructor lead course and may otherwise never come into contact with the hardware they are studying.

> The only bit that matters is that when you
> type in a command it acts just as it would
> on a real router.

Absolutely. And it seems that commercial efforts (boson/routersim/et al) can't even roughly approximate the simplest of this behaviour.

> I've tried sims a year or three back and
> they were pretty limited.

Its not even as though it's particularly complex from EITHER the firmware or the hardware angle. We have true PSX emulation, Arcade emulators, Amiga emulators and a million others - most written at home by enthusiasts and distributed freely. Then we have professional companies producing paid-for garbage for cisco students. Normally these advertise 'up to CCNP' whilst failing to meet many of the required CCNA functionality.

Hell, some are even written in flash and require exact matches, full form and strict command ordering.

> I assumed that was because to give them a
> full command list and functionality would
> allow someone, somewhere to set up a PC
> and use it as a router.

This is already possible. Furthermore, if you need WAN ports etc on the box IXIA produce an extensive (and expensive) range of PCI modules that easily rival cisco's modules for performance.

Of course, with cisco you're paying for the support and trust that comes with the brand. Nobody wants to homebrew an enterprise solution.

But softrouters are nothing to do with simulators. The simulators currently on the market do NOT actually route packets - they SIMULATE packets and SIMULATE routing them. Full (or even adequate) IOS functionality would allow you to simulate ACL's, Dial backup, Stubbies and NSSA's etc... But would still not route actual traffic. I remember the first time I tried routersim and was shocked that it didn't even support RipV2 despite being 'CCNA & CCNP' recommended. See the problem ?


> In your original post you wrote that your
> rack would have physical ports to the
> outside world, or did I misunderstand?

It does. It allows transparent tunneling across your lan so that two or more virtual racks on different PC's may simulate FrameRelay, ISDN, etc between offices. The racks behave as if the connection were a regular WAN link of the desired type. You can even introduce delay, etc.

In addition to these virtual WAN links we have 'actual' interfaces too - allowing you to extend your physical equipment to see how different topologies converge over a much larger scale. Not sure you would need to, but its there if you do.

> So how would Cisco allow you to release
> your software for free if it would allow
> people to route without paying Cisco £1200
> plus for hardware?

You seem to have the wrong idea about the software. This is NOT designed to replace cisco equipment, nor could it.

I don't support IXIA or any specialist hardware - so this is hardly a replacement for true cisco equipment anywhere other than on a students desktop.

> You may get away with it if you wrote your
> own code and used different command names
> and/or different syntax, but to use the
> same command structure as Cisco is leaving
> yourself wide open, sorry.

Changing the IOS commands would defeat the purpose. I'm hoping to save students from shelling out a fortune on cisco equipment for a home rack, or wasting money on the kind of shoddy ripoffs currently on sale. I could beat the Boson code on functionality and accuracy given 2 weeks in VB.NET ferchristasakes - They've been 'improving' it for years and it still doesn't stand up.

Its not difficult or expensive, its just that many people would rather take your money than give you a decent product - Its the same with many of the exam prep. packs, I saw one with 75 questions trying to sell for £50uk. Wheres the value ???

> It's a brilliant idea and I can see that
> the graphics are beautifully done. It
> would be a great help for people studying
> for Cisco exams but I think it's a non-
> runner unless you do it illegally and hang
> the consequences.

Heh, It would be in a fine tradition. We have thousands of emulators from The old vector arcades & colecovision consoles up to more complex hardware like the PSX. Every 8bit machine known to man (even the ones that died in the first months of startup) has been thoughtfully cloned.

They are just about all illegal, and require proprietary ROM images. From what I've seen at demos XBOX and PS2 emu's are just around the corner too...

If M$ and Sony can't stamp out freeware clones I'm fairly sure Cisco won't have a chance either. Nor should they want to - The more people that know Cisco the stronger their hold on the market. Unlike PSX emulators, router emu's ain't likely to damage sales (With the possible exception of eBay seconds) Its not a replacement, its a sim : )

Besides which, I always have the option of open-sourcing.



It seems most people here are focused on the legal ramifications of using cisco IOS over an emulated device. I see people are concerned about this aspect (Although wether its for my sake or cisco's I'm not entirely sure, heh)

As interesting as the legality debate might be it doesn't help me deliver the product that people actualy want/need. Which is what this is all about. All I am feeling here is that many people seem to feel safer with a simple sim which approximates behavior rather than a true emulator.

While thats sad in some ways I can blow things that direction instead, its actually considerably less work, considerably shorter time to release and theres even the possibility of licensing revenue for commercial use.

Again, thanks for the feedback.


Helena,
FallingStar(UK)
FallingStar

2004-07-11, 10:55 pm

I guess theres very little interest then : /

Its strange, before I started there were posts just about everywhere with students asking for Cisco emulators... Then, when someone actually bothers it all goes deadly quiet.

I think I'll probably just work on this for my own use. Pointless stirring up Robert Barr (Cisco legal) if theres not a need.

I'll leave you all to your discussions, so thankfully you won't have to put up with any more giant posts <grin>


NOTE

If anyone IS interested in using simulation to study the behaviour of routing protocols you don't need my software anyway. Theres another way you can emulate large networks on your PC although its a little more trouble, not as pretty and doesn't support the full cisco command set (Just the protocols)

1. Get VMWare and use it to set up an OpenBSD system on your desktop (preferably without X as then each machine can get by with 32mb allocated from the hosts heap)

2. Install the Zebra or Quagga package

3. Clone the virtual machine file (by simply copying) a number of times, one for each router you require.

4. Back in VMWare, give each machine a number of virtual NICs (max 3) and connect them to virtual lines making sure that your gateway has a vNIC on either line0 (Which is bridged to the real network card) or on a line set for NAT.

5. On each VM set the IP addresses up and start the Zebra daemon and and protocols you wish to test.


That will give you a number of virtual routers each running your protocol of choice and configurable/debuggable via a Ciscoesque interface. Quagga comes with IS-IS but you may have to download the IS-IS module seperately if using Zebra.

Have fun.

Helena,
FallingStar(UK)
PCMadness

2004-07-11, 11:33 pm

There a product alreay on the market for 2600 router emulation called routersim.

Not all the commands are available due to cisco copyright. But not bad to practice with.
FallingStar

2004-07-12, 12:38 am

Firstly, its not a true emulation. Its advertised up to CCNP but doesn't even cover all the CCNA commands.

Finaly its not copyright that prevents them from fully implementing all the major IOS RP commands because Zebra already does so.

whilst Routersim may seem quite decent in the first two or three sems of a CCNA you soon start to get frustrated at everything it DOESNT let you do. Thats before you even reach the CCNP. Boson is a better choice, but has similar problems.

If you're serious about examining routing protocols under various topologies theres little choice but to collect equipment although running multiple linux softrouters in a VMware environment, but thats just my opinion.


If you find RouterSim adequate then that confirms what I've been suspecting. Interest in a full emulation suite simply isn't there.

Sad, but I'll get over it : )


Helena
FallingStar(UK)
Mat P

2004-07-12, 2:57 am

I've been ignoring this thread but hate to see you quitting so easily.

Personally I think you have a great idea and you shouldn't give up quite so easily. Have you approached Cisco legal department? I know of people who have and they are approachable - you will probably have to compromise somewhere though.

As for the legality of using the IOS command structure, a while ago I used to work on Avaya Cajun Switches and Avaya were actually marketing them as "similar to Cisco IOS". A little while ago there was a Chinese company who ripped IOS fully, placed it on routers and still had exactly the same bugs (I heard the docs were cut and paste) - I believe all that happened was that they stopped marketing in the US after a bit of pressure. I know of one startup in the UK who have recently been trialling these for a rollout.

There must be a market for this - Cisco are raising the bar with CCIE kit making cost more prohibitive when they upgrade the IOS again due to memory requirements (personally I wouldn't trust a sim for CCIE), I expect this to creap down to CCNP/CCNA eventually.

Training companies may be worth talking to - instead of just sending books out for precourse reading why not send this sim out? They may even have the legal clout and funding to support you during development.

It looks really professional, and I'd hope agreement could be reached with the legal bods.

Good luck, ignore all the barrack room lawyers and find out the facts.
mikop

2004-07-12, 3:49 am

.
enforcer

2004-07-12, 5:54 am

quote:
Originally posted by mikop
.



Sometimes you do post exceedingly small points Mikop
mikop

2004-07-12, 6:13 am

quote:
Originally posted by enforcer
Sometimes you do post exceedingly small points Mikop
mikop

2004-07-12, 6:15 am

.
FallingStar

2004-07-12, 6:21 am

^ Nice point!


quote:
Originally posted by mikop
1st. To properly do this, as she wants this thing to actually route, she would either have to write an routing algorithm with the proper command structure. The thing is, if you have a completely workable routing algorithm from the ground up, forget how efficient it is, you are sitting on some gold mine that needs to be exploited, rather than as a *simulator* for training purposes... free as I gather.

Routing protocols are not gold dust in fact they are pretty simple in the main. Aided by the fact that most of the thinking has been done for you and the specifications are pretty much absolute. You may find the following enlightening...


To find the true value of a thing you need to shop around. So lets do that:

We find Zebra, Gated, Quagga ... all freeware and open source routing protocols for soft routers. Rip, RipNG, OSPF, IS-IS, BGP, and more - all with full IPv6 support. So thats ciscos firmware licensing taken care of - how about the hardware base? Try headless previous-generation boxed systems running a secure freeware OS such as BSD with no other services run


So it would seem theres a FAR cheaper alternative already! RP's and hardware are expensive only if you wish to pay high prices, if you don't want to you don't have to. But that means nothing if they are not of comparable quality, lets take a look:

Softrouters running on even a budget machine far surpass cisco devices in terms of TCO, reliability (honestly! And this is verifiable), memory, speed, modularity and flexibility. And its not just RP's - Sure, theres no truly liberated HSRP/VRRP but theres freeware CARP which is far superior and doesn't have the security issues of the IETF's VRRP or the bugs of ciscos proprietary HSRP. If you DID need HSRP or VRRP you can get it in open source, but you have to remember that it is actually under a cisco patent.


Ah, but then theres the training and certification...

Zebra and its Quagga fork both use cisco IOS based commands and structure (Right down to TAB autocompletion and Query key behaviour) on a per-protocol basis. Any cisco engineer is on reasonably familiar ground with a Zebra box


And finally the support. Cisco is a big name, sure, but the open-source scene is better supported.
Not relying on ASICs means much faster development cycle and custom builds rather than fixed code releases with unused features adding bloat.


Dirt cheap, fast as hell, free of licensing on either OS or Protocols, cheaper than a low-end workstation, and as flexible as a really really flexible thing.

So, I must disagree with your statement that RP's are a goldmine that MUST be exploited. There exists a strong, talented open-source community who believe exactly the opposite.


I do agree, however, with your second point. Well, to an extent. A few comments below :

quote:
Originally posted by mikop Everything else she stated has been done and is available for the right person with the right name tag.

Unfortunately not students. But yes, I don't have a great deal to bring to a negotiating table. I'm fairly certain I'd get stamped on.

quote:
Originally posted by mikop A hacked IOS able to sit on any hardware and actually route packets, where does that leave them?

As stated previously. This is not intended a replacement for cisco devices. NOR CAN IT. Others have done that admirably in the form of softrouters.

This, on the other hand, will run as an app on a cluttered windows (or *nix) desktop and require no skill in setting up. Rather than as a fully functional routing device available only on a tuned linux distro.

I just intend to bring it to the trainee with minimum fuss or skills prerequisites and with an easily accessible interface.



On CCIE...

Mat P notes that no simulation is suitable for CCIE and he is absolutely correct of course. An emulator CAN give you 'almost' everything. However almost doesn't quite cut it when you're staring at your CCIE R&S written or attending the 1-day. You have to be familiar with the whole package, including hardware eccentricities and glitches that will only occur in actual equipment.

Of course, if you're taking CCIE then it is assumed you are already prepared to invest a great deal of time and money. You either have a home rack or you are buying racktime somewhere. And you are probably already employed in the industry. The point is that nothing of any real value or quality exists for the student CCNA/CCNP. Possibly because it is legaly unmerchantable.


Aaaanyway, it appears we're still talking predominantly legal issues and I really don't feel that it is getting me any further forward with req'd features or spec. So, I'll leave the discussion here. I know legal issues are important but hell, I'll throw this out open-sourced, untagged and WITH ios images if I must. The beauty of free software is that you don't need to provide a contact or payment options. Let cisco scream and stamp all they wish.

Right now I'd rather focus on getting a product everyone is happy with. If only I could find an end-user : /


NM, Thanks for your comments,
I now withdraw from your forum.

Take care all and good luck in all that you set out to achieve.

Helena,
FallingStar(UK)
mikop

2004-07-12, 6:41 am

arg, I don't care.

goodluck
enforcer

2004-07-12, 7:02 am

Hmm, think I'll move this over to the Cisco Forum, where more cisco people might be able to give feedback.
Sexy Lexy

2004-07-12, 11:44 am

Keep this out of the CCNA forum!!!
Sponsored Links





Free Braindumps | MCSE braindumps software forum

Copyright 2003 - 2008 examnotes.net