<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Squarespace Site Server v5.0.0 (http://www.squarespace.com/) on Thu, 28 Aug 2008 13:01:18 GMT--><feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/"><title>MapleWorks Technology</title><subtitle>MapleWorks Technology</subtitle><id>http://www.mapleworks.com/mapleworks-technology/</id><link rel="alternate" type="application/xhtml+xml" href="http://www.mapleworks.com/mapleworks-technology/"/><link rel="self" type="application/atom+xml" href="http://www.mapleworks.com/mapleworks-technology/atom.xml"/><updated>2008-08-08T17:44:59Z</updated><generator uri="http://www.squarespace.com/" version="Squarespace Site Server v5.0.0 (http://www.squarespace.com/)">Squarespace</generator><entry><title>Comparison of different OSPF protocol implementations</title><category>Tech Corner</category><id>http://www.mapleworks.com/mapleworks-technology/2008/8/8/comparison-of-different-ospf-protocol-implementations.html</id><link rel="alternate" type="text/html" href="http://www.mapleworks.com/mapleworks-technology/2008/8/8/comparison-of-different-ospf-protocol-implementations.html"/><author><name>Ravi Ravishankar</name></author><published>2008-08-08T17:36:40Z</published><updated>2008-08-08T17:36:40Z</updated><content type="html" xml:lang="en-US"><![CDATA[<P>By Luan Pham </P>
<P>One of our projects at MapleWorks in the last year required us to integrate Open Shortest Path First protocol (OSPF) into a residential gateway product. Since OSPF is a mature protocol, and many implementations existed, it was our task to determine which OSPF stack was most suitable given timeline constraints that surround any onshore software development project. </P>
<P>Based on our experience, <A href="http://www.nasi.com/zebos_srs.php">IP Infusion</A> was the natural choice as it provided everything we needed in a modular architecture. However there was some natural scepticism about our decision, and this resulted in a survey of all the OSPF offerings that we knew of or could find on the Internet. We summarized our findings in the table below. Our survey was performed in May 2007, and much of the accuracy of the information was dependant on technical documentation publicly available at the time. </P>
<TABLE cellSpacing=0 cellPadding=0 width=685 border=0>
<TBODY>
<TR>
<TD width=105>
<P><strong>OSPF Stacks considered </strong></P></TD>
<TD width=106>
<P><strong><span style="TEXT-DECORATION: underline">Modular architecture (OSPF decoupled from RTM and other protocols)</span> </strong></P></TD>
<TD noWrap width=96>
<P><strong>Management API </strong></P></TD>
<TD noWrap width=82>
<P><strong><span style="TEXT-DECORATION: underline">Maturity</span> </strong></P></TD>
<TD width=82>
<P><strong>Cross compiling on ARM (handles big and little endian) </strong></P></TD>
<TD noWrap width=70>
<P><strong><span style="TEXT-DECORATION: underline">Open Source</span> </strong></P></TD>
<TD width=144>
<P><strong>Extra cost incurred relative to IP Infusion </strong></P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong><A href="http://www.nasi.com/zebos_srs.php">IP Infusion</A> </strong></P></TD>
<TD vAlign=bottom noWrap width=106>
<P>yes </P></TD>
<TD vAlign=bottom noWrap width=96>
<P>yes </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>8+ years </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>yes </P></TD>
<TD vAlign=bottom noWrap width=70>
<P>no (costs ~ $60K) </P></TD>
<TD vAlign=bottom noWrap width=144>
<P>0 </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong>Nexthop </strong></P></TD>
<TD vAlign=bottom noWrap width=106>
<P>no (RIP, OSPF, RTM fused together) </P></TD>
<TD vAlign=bottom noWrap width=96>
<P>yes </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>10+ years </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>yes </P></TD>
<TD vAlign=bottom noWrap width=70>
<P>no (costs ~ $100K) </P></TD>
<TD width=144>
<P>Cannot integrate existing RIP with Nexthop stack. Must use Nexthop RIP </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong><A href="http://www.dataconnection.com/iprouting/ospf.htm">Data Connection</A> </strong></P></TD>
<TD vAlign=bottom noWrap width=106>
<P>yes </P></TD>
<TD vAlign=bottom noWrap width=96>
<P>no (not from available docs) </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>4 years?? </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>unknown </P></TD>
<TD vAlign=bottom noWrap width=70>
<P>no </P></TD>
<TD vAlign=bottom noWrap width=144>
<P>mimimum 5 people months </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong>OpenIP </strong></P></TD>
<TD vAlign=bottom noWrap width=106>
<P>yes </P></TD>
<TD vAlign=bottom noWrap width=96>
<P>no </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>10+ years </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>yes </P></TD>
<TD vAlign=bottom noWrap width=70>
<P>no </P></TD>
<TD vAlign=bottom width=144>
<P>minimum 5 people months + 3 months for Linux adaptation </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong><A href="http://www.aricent.com/">Aricent</A> </strong></P></TD>
<TD noWrap width=106>
<P>yes </P></TD>
<TD noWrap width=96>
<P>no </P></TD>
<TD width=82>
<P>10 years (most likely OpenIP) </P></TD>
<TD noWrap width=82>
<P>yes if OpenIP </P></TD>
<TD noWrap width=70>
<P>no </P></TD>
<TD width=144>
<P>if OpenIP implementation, minimum 5 months + 3 months for Linux adaptation </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong><A href="http://www.xorp.org/">XORP</A> </strong></P></TD>
<TD vAlign=bottom noWrap width=106>
<P>no </P></TD>
<TD vAlign=bottom noWrap width=96>
<P>no </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>unknown </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>unknown </P></TD>
<TD vAlign=bottom noWrap width=70>
<P>yes </P></TD>
<TD vAlign=bottom width=144>
<P>5 months Management API, 6 months RTM, plus significant risk for large maintence costs </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong><A href="http://www.vyatta.com/">Vyatta</A> </strong></P></TD>
<TD vAlign=bottom noWrap width=106>
<P>unknown - pitched as a linux router </P></TD>
<TD vAlign=bottom noWrap width=96>
<P>unknown - no docs </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>unknown </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>only runs on x86 </P></TD>
<TD vAlign=bottom noWrap width=70>
<P>yes </P></TD>
<TD vAlign=bottom width=144>
<P>Pitched as a linux router on a CD. Nothing is known about its architecture. Most likely have to pull apart pieces to get something running independently </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong><A href="http://www.ospf.org/">Ospfd</A> </strong></P></TD>
<TD vAlign=bottom noWrap width=106>
<P>probably no RTM </P></TD>
<TD vAlign=bottom noWrap width=96>
<P>no </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>unknown </P></TD>
<TD vAlign=bottom noWrap width=82>
<P>unknown </P></TD>
<TD vAlign=bottom noWrap width=70>
<P>yes </P></TD>
<TD width=144>
<P>5 months Management API, 6 months RTM, plus significant risk for large maintence costs </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong><A href="http://www.openbgpd.org/">OpenOSPFD</A> </strong></P></TD>
<TD width=106>
<P>probably no RTM, CLI decoupled from daemon </P></TD>
<TD noWrap width=96>
<P>potentially could be </P></TD>
<TD noWrap width=82>
<P>3 months </P></TD>
<TD noWrap width=82>
<P>unknown </P></TD>
<TD noWrap width=70>
<P>yes </P></TD>
<TD width=144>
<P>5 months Management API if it doesn't exist, 6 months RTM, plus significant risk for large maintence costs because it is relatively new </P></TD></TR>
<TR>
<TD noWrap width=105>
<P><strong><A href="http://www.zebra.org/">Zebra</A> </strong></P></TD>
<TD noWrap width=106>
<P>not sure if RTM is decoupled </P></TD>
<TD noWrap width=96>
<P>no </P></TD>
<TD noWrap width=82>
<P>8+ years </P></TD>
<TD width=82>
<P>assume so, because it’s a stripped IP Infusion codebase </P></TD>
<TD noWrap width=70>
<P>yes </P></TD>
<TD width=144>
<P>5 months Management API, and perhaps 6 months to write an RTM. </P></TD></TR></TBODY></TABLE>
<P><strong>Description of columns: </strong></P>
<P><strong>Modular Architecture: </strong>Is OSPF decoupled from the RTM and other routing protocols? In the future there may be a requirement to have RIP and OSPF running at the same time. A non modular architecture would make it difficult to integrate RIP with OSPF so that both protocols run at the same time. </P>
<P><strong>Management API: </strong>Does OSPF come with a clean management API to provision the protocol? </P>
<P><strong>Maturity: </strong>How long has the protocol been around? Usually the longer its been around, the more bugs it has resolved making it a more solid product. This is where commercial offerings beat Open Source options. </P>
<P><strong>Cross compiling: </strong>Has the code been written to support processors with big endian as well as little endian? Most development is done on PCs which uses little endian, and all too often when code goes from one processor to another, issues with byte alignment arise. These automatically introduce bugs, and will take incur additional costs in time and money. </P>
<P><strong>Open Source: </strong>Is the product open source, and if not, how much does it cost? </P>
<P><strong>Extra cost incurred relative to IP Infusion: </strong>Since the IP Infusion stack contained everything that was required for the project, it was used as a baseline to compare against all other offerings. </P>
<P><em>(Luan Pham is a Senior Software Engineer of MapleWorks Technology Inc, the smart choice for onshore software development for networking and telecom companies.) </em></P>]]></content></entry><entry><title>FCAPS the key to creating good EMS/NMS GUI for small to medium-sized telecom vendors’ products (second of a two-part series)</title><category>Tech Corner</category><id>http://www.mapleworks.com/mapleworks-technology/2008/7/28/fcaps-the-key-to-creating-good-emsnms-gui-for-small-to-mediu.html</id><link rel="alternate" type="text/html" href="http://www.mapleworks.com/mapleworks-technology/2008/7/28/fcaps-the-key-to-creating-good-emsnms-gui-for-small-to-mediu.html"/><author><name>Ravi Ravishankar</name></author><published>2008-07-28T16:42:12Z</published><updated>2008-07-28T16:42:12Z</updated><content type="html" xml:lang="en-US"><![CDATA[<P>By Ravi Ravishankar </P>
<P>In my <A href="http://www.mapleworks.com/mapleworks-technology/2008/6/16/fcaps-the-key-to-creating-good-emsnms-gui-for-small-to-mediu.html">last post</A> (actually my first contribution as a blogger!), I discussed how for many small to medium sized equipment vendors, developing a good EMS/NMS solution is an afterthought. In trying to decide how to build it right, time and money are often sacrificed out of proportion to the actual task due to lack of domain expertise. Even if you disagree with that observation, I want to pick up on the last post by sharing some how-to on building a great solution based on what we’ve learned here at MapleWorks. </P>
<P>Let’s start with the main application screen. This screen should present a comprehensive view of the managed network. In a typical network this will include the list of all managed nodes, status of the nodes, fault summary, server status information, logged in user information, etc. In addition the most common/important detailed information can also be shown. In a telecom network this could the topology view of the managed network. </P>
<P>The layout of the screens is important as this is what gives the first impression about the application. The information presented here should be grouped according to relevance and mapped on the screen. Foremost is to show the nodes that are being managed, and this typically would be in a tree view on the left area of the screen. If groups features are supported then the groups should be displayed and the nodes under the groups can be viewed by expanding the group. <INS cite=mailto:Nathan%20Rudyk dateTime=2008-06-05T18:28></INS></P>
<P><INS cite=mailto:Nathan%20Rudyk dateTime=2008-06-05T18:28></INS></P>
<P>The individual nodes should display current status to the NMS server and both the nodes and the groups should display alarm summary counts. The main area of the screen should be used to view and configure functionality provided by the NMS application, like topology view, PM data, admin functions, error logs, etc. The user should be able to easily navigate between these views to access different functionalities while the rest of the screen displays real-time status information. </P>
<P>The colors and icons used in the GUI should be carefully coordinated so that the user is not confused when viewing the information presented. In general neutral colors should be used as much as possible making sure that the color coded alarm information is easily distinguishable. One of the areas where there is a lot of room for creativity is in the display of topology information. This is due to the number of nodes being displayed as well as the type of network connectivity. </P>
<P>Displaying mesh connectivity is not the same as displaying a linear network! Regardless, the graphics used to represent the topology (nodes and links) should be well designed and suitable for the entity they represent, otherwise the view can look a mess. This can be more challenging in applications that do multi-vendor network management. Some implementations have used photo images of the actual vendor equipment to distinguish the nodes but this can easily make the topology view quite an eyesore, </P>
<P>The information presented in your application should be clear and concise. The user should be able to easily navigate the screens and also be able to drill down to get more information. </P>
<P>In the case of the topology display there are several options to present the information. Among these are the use of expand/collapse capability for the node graphics, node annotations, layered view and/or drill down views, etc. The objective is to present the network topology in a clutter free form and at the same time provide the capability to delve further in to obtain more detailed information as required. </P>
<P>Let’s take the example of a long haul <A href="http://www.iec.org/online/tutorials/sonet/topic08.html">SONET network</A>. In between the ADM nodes it may use optical repeaters (amplifiers) but the default topology view could just show the ADM nodes with the interconnecting links. There could be two options to show the components at the optical layer; one is to launch a dialog from the link of interest to view the supporting optical repeaters, and the other would be to give an option to expand the current view to redraw it showing the optical repeaters between the ADM nodes. This is an example of how the topology view can be managed as well as provides drill down capability to access information as needed. </P>
<P>A well designed GUI for a Network Management system should be pleasant to the eyes, provide easy to use features, and have well thought out functionality. In a crowded and competitive market space it could make or break sale of networking equipment. </P>
<P><em>(Ravi Ravishankar is a Senior Software Engineer at MapleWorks Technology Inc., the smart choice for onshore software development for networking and telecom companies.) </em></P>]]></content></entry><entry><title>FCAPS the key to creating good EMS/NMS GUI for small to medium-sized telecom vendors’ products (first of a two-part series)</title><category>Tech Corner</category><id>http://www.mapleworks.com/mapleworks-technology/2008/6/16/fcaps-the-key-to-creating-good-emsnms-gui-for-small-to-mediu.html</id><link rel="alternate" type="text/html" href="http://www.mapleworks.com/mapleworks-technology/2008/6/16/fcaps-the-key-to-creating-good-emsnms-gui-for-small-to-mediu.html"/><author><name>Ravi Ravishankar</name></author><published>2008-06-16T16:43:05Z</published><updated>2008-06-16T16:43:05Z</updated><summary type="html" xml:lang="en-US"><![CDATA[A good customized Network Management system can be the difference between making or losing a sale in the highly competitive telecom/datacom equipment industry. This is a key reason that the big equipment vendors have their own EMS/NMS applications. They have been at this for a long time and have products in the market that are fairly good at providing the required FCAPS (Fault, Configuration, Accounting, Performance, and Security) functionality to support their equipment.]]></summary></entry></feed>