<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ellison Software Consulting &#187; Software Development</title>
	<atom:link href="http://ellisonsoftware.com/category/software-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://ellisonsoftware.com</link>
	<description>SNMP and MIB Consulting</description>
	<lastBuildDate>Tue, 13 Sep 2011 19:17:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Virtual Machine Software Development Environments</title>
		<link>http://ellisonsoftware.com/2011/09/12/virtual-machine-software-development-environments/</link>
		<comments>http://ellisonsoftware.com/2011/09/12/virtual-machine-software-development-environments/#comments</comments>
		<pubDate>Mon, 12 Sep 2011 19:41:32 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://ellisonsoftware.com/?p=1195</guid>
		<description><![CDATA[With newer chipsets now implementing support for virtualization, the age of physical machines is in decline and the age of virtual machines rises towards prominent use.]]></description>
			<content:encoded><![CDATA[<p>As a software consultant, I see a variety of client requirements regarding software development environments. As recently as a two years ago, a new client project often translated into obtaining new hardware to host a dedicated OS for the desired software development environment.</p>
<p>With newer chipsets now implementing support for virtualization, the age of physical machines is in decline and the age of virtual machines rises towards prominent use.</p>
<p>From my investigation of and experimentation with various Virtual Machine (VM) distributions, my opinions and preferences follow:</p>
<ul>
<li>I prefer using either 32-bit or 64-bit Linux host Operating Systems (OSes)</li>
<li>I think that Oracle&#8217;s Virtual Box (VB) builds smaller virtual disks than does VMWare Player</li>
<li>It appears that VB is more memory efficient and guest OSes run faster in VB than with VMWare Player</li>
<li>I am more comfortable with the VBoxManage utility than the equivalent VMWare utility</li>
<li>VB is free!  With VMWare, improved capabilities and performance require purchasing another VMWare product</li>
</ul>
<p>As you can see, the above points express a strong preference for Oracle&#8217;s Virtual Box distribution.</p>
<p>There are a number of pre-built virtual disks that can be used as the basis for VM guest OSes and it is a simple and easy task to build your own virtual disk for Linux or for Microsoft OSes.</p>
<p>While I wish all software development could be accomplished using Linux alone, the reality is that many embedded development environments require one or another Microsoft OS.  Fortunately, since I have a set of DVDs from an old Microsoft MSDN subscription, I am able to create Windows XP guest OSes to host the various embedded developer tools as well as Ubuntu guest OSes for similar purposes.</p>
<p>Even though Microsoft licensing permits me to build a guest OS from an OEM version of any of its OSes, I must run only one copy exclusively on the machine upon which it was originally installed.  Unfortunately, the ever vigilant &#8220;Genuine Microsoft&#8221; utility eventually decides the guest OEM OS is &#8220;not genuine&#8221; and prompts for reactivation.  Of course, reactivation requires a 25 character UUID that is not provided with the OEM OS.</p>
<p>Since there is a UUID associated with the MSDN subscription, reactivation is not an issue, but remember- I can only use an MSDN OS for development purposes.  Not that I want to, but if I find I really need another Microsoft OS for development purposes, I could purchase an OS only MSDN subscription (at time of publication around $700).  Alternatively, I could purchase a Microsoft OS in a full retail box for less than the OS MSDN subscription, but Microsoft licensing limits my use of a retail box to a single instance of a guest OS.  This instance of the guest OS can be migrated from one host OS and hardware to another as needed.  In addition to software development tools, I can run any compatible software I like inside a guest VM created from a retail box OS.</p>
<p>Of course such complexities and considerations exist with Microsoft OSes only, not with Linux guest OSes.  Unfortunately, until such time as all development and application software run on a native Linux distribution, I must play by the appropriate licensing rules.</p>
<p>If you find this information helpful, please let me know&#8230;and if you have interesting insights to share about VMs for software development, please do!</p>
]]></content:encoded>
			<wfw:commentRss>http://ellisonsoftware.com/2011/09/12/virtual-machine-software-development-environments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Work-in-Progress:  Current IETF Activity Related to Network and Service Management</title>
		<link>http://ellisonsoftware.com/2011/02/10/work-in-progress-current-ietf-activity-related-to-network-and-services-management/</link>
		<comments>http://ellisonsoftware.com/2011/02/10/work-in-progress-current-ietf-activity-related-to-network-and-services-management/#comments</comments>
		<pubDate>Thu, 10 Feb 2011 13:39:48 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Remote Management]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Software Project Management]]></category>
		<category><![CDATA[Standards Development]]></category>
		<category><![CDATA[Internet-Drafts]]></category>
		<category><![CDATA[Management Framework]]></category>
		<category><![CDATA[NetConf]]></category>
		<category><![CDATA[RFCs]]></category>

		<guid isPermaLink="false">http://agentsv.com/?p=76</guid>
		<description><![CDATA[Updated on Friday 11 February 2010 I am often asked, &#8220;What Internet-Drafts on network and services management are IETF working groups developing?&#8221;.&#160; The following provides a brief outline of and links to the current works-in-progress. Note that Internet-Drafts are works-in-progress and expire when a subsequent revision is available, or six months after initial publication, whichever [...]]]></description>
			<content:encoded><![CDATA[<p><strong> Updated on Friday 11 February 2010</strong></p>
<p>I am often asked, &#8220;What Internet-Drafts on network and services management are IETF working groups developing?&#8221;.&nbsp; The following provides a brief outline of and links to the current works-in-progress.</p>
<p>Note that Internet-Drafts are works-in-progress and expire when a subsequent revision is available, or six months after initial publication, whichever occurs first.</p>
<p>I am happy to discuss the usefulness and applicability of the below works-in-progress to your project.&nbsp; Just <a href="http://ellisonsoftware.com/company/contact/">contact me</a> with your project requirements and ideas.</p>
<p><!--               -Security Area           --><br />
Within the <a href="http://trac.tools.ietf.org/area/sec/trac/wiki" target="_blank">Security Area</a>:</p>
<p><!-- isms --></p>
<ul>
<li>Integrated Security Model for SNMP Working Group (<a href="http://datatracker.ietf.org/wg/isms/charter/" target="_blank">isms</a>)<br />
<b>*The ISMS working group is now concluded*</b><br />
The goal of the ISMS working group is developing a new security model for SNMP that integrates with widely deployed user and key management systems, as a supplement to the USM security model.<br />
<br />
Current RFCs include:</p>
<ul>
<li> Using Authentication, Authorization, and Accounting Services to Dynamically Provision View-Based Access Control Model User-to-Group Mappings<br />
<a href="http://www.rfc-editor.org/rfc/rfc6065.txt" target="_blank">RFC6065</a> &#8211; December 2010
</li>
<p></p>
<li> Transport Layer Security (TLS) Transport Model for the Simple Network Management Protocol (SNMP)<br />
<a href="http://www.rfc-editor.org/rfc/rfc5953.txt" target="_blank">RFC5953</a> &#8211; August 2010
</li>
<p></p>
<li> Remote Authentication Dial-In User Service (RADIUS) Usage for Simple Network Management Protocol (SNMP) Transport Models<br />
<a href="http://www.rfc-editor.org/rfc/rfc5608.txt" target="_blank">RFC5608</a> &#8211; August 2009
</li>
<p></p>
<li> Secure Shell Transport Model for the Simple Network Management Protocol (SNMP)<br />
<a href="http://www.rfc-editor.org/rfc/rfc5592.txt" target="_blank">RFC5592</a> &#8211; June 2009
</li>
<p></p>
<li> Transport Subsystem for the Simple Network Management Protocol (SNMP<br />
<a href="http://www.rfc-editor.org/rfc/rfc5591.txt" target="_blank">RFC5591</a> &#8211; June 2009
</li>
<p></p>
<li> Transport Subsystem for the Simple Network Management Protocol (SNMP)<br />
<a href="http://www.rfc-editor.org/rfc/rfc5590.txt" target="_blank">RFC5590</a> &#8211; June 2009
</li>
</ul>
</li>
</ul>
<p><!--               -Operations and Management Area           --><br />
Within the <a href="https://svn.tools.ietf.org/area/ops/trac/wiki" target="_blank">Operations and Management Area</a>:<br />
<br />
<!-- netconf --></p>
<ul>
<li>Network Configuration Working Group (<a href="http://datatracker.ietf.org/wg/netconf/charter/" target="_blank">netconf</a>)<br />
The NETCONF Working Group is chartered to produce a protocol suitable for network configuration.  The NETCONF protocol is using XML for data encoding purposes, because XML is a widely deployed standard which is supported by a large number of applications.<br />
<br />
Current Internet-Drafts include:</p>
<ul>
<li> Network Configuration Protocol Notification Events<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-netconf-system-notifications-02" target="_blank">draft-ietf-netconf-system-notifications-02</a> &#8211; 2010-11-14</li>
<p></p>
<li> Network Configuration Protocol Access Control Model<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-netconf-access-control-02" target="_blank">draft-ietf-netconf-access-control-02</a> &#8211; 2011-02-03</li>
<p></p>
<li> With-defaults capability for NETCONF<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-netconf-with-defaults-14" target="_blank">draft-ietf-netconf-with-defaults-14</a> &#8211; 2010-11-10</li>
<p></p>
<li> Network Configuration Protocol (NETCONF)<br />
<a href="http://www.ietf.org/id/draft-ietf-netconf-4741bis-08.txt" target="_blank">draft-ietf-netconf-4741bis-08</a> &#8211; 2011-02-11</li>
<p></p>
<li> Using the NETCONF Configuration Protocol over Secure Shell (SSH)<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-netconf-rfc4742bis-06" target="_blank">draft-ietf-netconf-rfc4742bis-06</a> &#8211; 2011-01-24</li>
<p>
</ul>
<p>Current RFCs include:</p>
<ul>
<li> Partial Lock Remote Procedure Call (RPC) for NETCONF<br />
<a href="http://www.rfc-editor.org/rfc/rfc5717.txt" target="_blank">RFC5717</a> &#8211; December 2009</li>
<p></p>
<li>NETCONF over Transport Layer Security (TLS)<br />
<a href="http://www.rfc-editor.org/rfc/rfc5539.txt" target="_blank">RFC5539</a> &#8211; May 2009</li>
<p></p>
<li>Experience of Implementing NETCONF over SOAP<br />
<a href="http://www.rfc-editor.org/rfc/rfc5381.txt" target="_blank">RFC5381</a> &#8211; October 2008</li>
<p></p>
<li>NETCONF Event Notifications<br />
<a href="http://www.rfc-editor.org/rfc/rfc5277.txt" target="_blank">RFC5277</a> &#8211; July 2008</li>
<p></p>
<li>Using the NETCONF Protocol over the Blocks Extensible Exchange Protocol (BEEP)<br />
<a href="http://www.rfc-editor.org/rfc/rfc4744.txt" target="_blank">RFC4744</a> &#8211; December 2006</li>
<p></p>
<li>Using NETCONF over the Simple Object Access Protocol (SOAP)<br />
<a href="http://www.rfc-editor.org/rfc/rfc4743.txt" target="_blank">RFC4743</a> &#8211; December 2006</li>
<p></p>
<li>Using the NETCONF Configuration Protocol over Secure Shell (SSH)<br />
<a href="http://www.rfc-editor.org/rfc/rfc4742.txt" target="_blank">RFC4742</a> &#8211; December 2006</li>
<p></p>
<li>NETCONF Configuration Protocol<br />
<a href="http://www.rfc-editor.org/rfc/rfc4741.txt" target="_blank">RFC4741</a> &#8211; December 2006</li>
<p>
</ul>
</li>
</ul>
<p><!-- netmod --></p>
<ul>
<li>NETCONF Data Modeling Language Working Group (<a href="http://datatracker.ietf.org/wg/netmod/charter/" target="_blank">netmod</a>)<br />
The NETMOD Working Group will define a &#8220;human-friendly&#8221; modeling language defining the semantics of operational data, configuration data, notifications, and operations. </p>
<p>Current Internet-Drafts include:</p>
<ul>
<li> Mapping YANG to Document Schema Definition Languages and Validating NETCONF Content<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-netmod-dsdl-map-10" target="_blank">draft-ietf-netmod-dsdl-map-10</a> &#8211; 2010-20-21</li>
<p></p>
<li> An Architecture for Network Management using NETCONF and YANG<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-netmod-arch-10" target="_blank">draft-ietf-netmod-arch-10</a> &#8211; 2010-09-23</li>
<p>
</ul>
</li>
<p>Current RFCs include:</p>
<ul>
<li> Guidelines for Authors and Reviewers of YANG Data Model Documents<br />
<a href="http://www.rfc-editor.org/rfc/rfc6087.txt" target="_blank">RFC6087</a> &#8211; January 2011</li>
<p></p>
<li> Common YANG Data Types<br />
<a href="http://www.rfc-editor.org/rfc/rfc6021.txt" target="_blank">RFC6021</a> &#8211; October 2010</li>
<p></p>
<li> YANG &#8211; A data modeling language for NETCONF<br />
<a href="http://www.rfc-editor.org/rfc/rfc6020.txt" target="_blank">RFC6020</a> &#8211; October 2010</li>
<p>
</ul>
</ul>
<p><!-- opsawg --></p>
<ul>
<li>Operations and Management Area Working Group (<a href="http://datatracker.ietf.org/wg/opsawg/charter/" target="_blank">opsawg</a>)
<p>The Operations and Management Area receives occasional proposals for the development and publication of RFCs dealing with operational and management topics that are not in scope of an existing working group and do not justify the formation of a new working group.</p>
<p>Current Internet-Drafts include:</p>
<ul>
<li> Problem Statement for the Automated Configuration of Large IP Networks<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-opsawg-automated-network-configuration-00" target="_blank">draft-ietf-opsawg-automated-network-configuration-00</a>&#8221; &#8211; 2011-02-08</li>
<p></p>
<li> Textual Conventions for the Representation of Floating-Point Numbers<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-opsawg-mib-floats-00" target="_blank">draft-ietf-opsawg-mib-floats-00</a>&#8221; &#8211; 2011-01-17</li>
<p></p>
<li> Guidelines for the use of the OAM acronym in the IETF<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-opsawg-mpls-tp-oam-def-07" target="_blank">draft-ietf-opsawg-mpls-tp-oam-def-07</a>&#8221; &#8211; 2010-09-27</li>
<p></p>
<li> An Overview of Operations, Administration, and Maintenance (OAM) Mechanisms<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ietf-opsawg-oam-overview-03" target="_blank">draft-ietf-opsawg-oam-overview-03</a>&#8221; &#8211; 24-Jan-2011</li>
<p>
</ul>
<p>Current RFCs include:</p>
<ul>
<li> Expressing SNMP SMI Datatypes in XML Schema Definition Language<br />
<a href="http://www.rfc-editor.org/rfc/rfc5935.txt" target="_blank">RFC5935</a> &#8211; October 2010</li>
<p></p>
<li> Mapping Simple Network Management Protocol (SNMP) Notifications to SYSLOG Messages<br />
<a href="http://www.rfc-editor.org/rfc/rfc5675.txt" target="_blank">RFC5675</a> &#8211; October 2009</li>
<p></p>
<li> Alarms in Syslog<br />
<a href="http://www.rfc-editor.org/rfc/rfc5674.txt" target="_blank">RFC5674</a> &#8211; October 2009</li>
<p></p>
<li> Guidelines for Considering Operations and Management of New Protocols and Protocol Extensions<br />
<a href="http://www.rfc-editor.org/rfc/rfc5706.txt" target="_blank">RFC5706</a> &#8211; November 2009</li>
<p></p>
<li>Simple Network Management Protocol (SNMP) Traffic Measurements and Trace Exchange Formats<br />
<a href="http://www.rfc-editor.org/rfc/rfc5345.txt" target="_blank">RFC5345</a> &#8211; October 2008</li>
<p></p>
<li>Simple Network Management Protocol (SNMP) Context EngineID Discovery<br />
<a href="http://www.rfc-editor.org/rfc/rfc5343.txt" target="_blank">RFC5343</a> &#8211; September 2008<span style="color: #ff9900;"> (Updates <span style="color: #ff9900;">RFC3411</span> )</span></li>
<p>
</ul>
</li>
</ul>
<p><!--                Individual Submissions             - --><br />
<strong><span style="text-decoration: underline;">Individual Submissions</span>:</strong></p>
<ul>
<li>various working groups
<ul>
<li> A YANG Data Model for Interface Configuration<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-bjorklund-netmod-interfaces-cfg-00" target="_blank">draft-bjorklund-netmod-interfaces-cfg-00</a> &#8211; 08-Dec-2010
</li>
<p></p>
<li> A method to monitor MPLS label mappings<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-cauchie-opsawg-monitoring-mpls-label-mapping-00" target="_blank">draft-cauchie-opsawg-monitoring-mpls-label-mapping-00</a> &#8211; 18-Oct-2010
</li>
<p></p>
<li> An Overview of the IETF Network Management Standards<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-ersue-opsawg-management-fw-03" target="_blank">draft-ersue-opsawg-management-fw-03</a> &#8211; 27-Jan-2011
</li>
<p></p>
<li> An Overview of Operations, Administration, and Maintenance (OAM) Mechanisms<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-mizrahi-opsawg-oam-overview-00" target="_blank">draft-mizrahi-opsawg-oam-overview-00</a> &#8211; 07-Oct-2010
</li>
<p></p>
<li> Dynamic Host Configuration Protocol (DHCPv4 and DHCPv6) Options for Network Management Protocols<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-schoenw-opsawg-nm-dhc-01" target="_blank">draft-schoenw-opsawg-nm-dhc-01</a> &#8211; 30-Nov-2010
</li>
<p></p>
<li> DNS SRV Resource Records for Network Management Protocols<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-schoenw-opsawg-nm-srv-01" target="_blank">draft-schoenw-opsawg-nm-srv-01</a> &#8211; 30-Nov-2010
</li>
<p></p>
<li> Problem Statement for the Configuration of Large-Scale IP Networks<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-tsou-opsawg-network-configuration-01" target="_blank">draft-tsou-opsawg-network-configuration-01</a> &#8211; 15-Sep-2010
</li>
<p></p>
<li> IANA Reserved IPv4 Prefix for IPv6 Transition<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-weil-opsawg-provider-address-space-02" target="_blank">draft-weil-opsawg-provider-address-space-02</a> &#8211; 24-Sep-2010
</li>
<p></p>
<li> SNMP Optimizations for Constrained Devices<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-hamid-6lowpan-snmp-optimizations-03" target="_blank">draft-hamid-6lowpan-snmp-optimizations-02</a> &#8211; 25-Oct-2010</li>
<p></p>
<li> Extending YANG with Revised Types<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-chen-netmod-yang-ext-00" target="_blank">draft-chen-netmod-yang-ext-00</a> &#8211; 18-Oct-2010
</li>
<p></p>
<li> Extending YANG with Language Abstractions<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-linowski-netmod-yang-abstract-05" target="_blank">draft-linowski-netmod-yang-abstract-05</a> &#8211; 10-Dec-2010
</li>
<p></p>
<li> snmp cfg<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-bjorklund-netmod-snmp-cfg-00" target="_blank">draft-bjorklund-netmod-snmp-cfg-00</a> &#8211; 18-Oct-2010
</li>
<p></p>
<li> Virtual Network Management Information Model<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-okita-ops-vnetmodel-03" target="_blank">draft-okita-ops-vnetmodel-03</a> &#8211; 25-Oct-2010
</li>
<p></p>
<li>
Translation of SMIv2 MIB Modules to YANG Modules<br />
<a href="http://www.rfc-editor.org/cgi-bin/iddoctype.pl?letsgo=draft-schoenw-netmod-smi-yang-01" target="_blank">draft-schoenw-netmod-smi-yang-01</a>&#8221; &#8211; 8-Nov-10
</li>
</ul>
</li>
</ul>
<p>Management Information Base (MIB) modules are designed within the applicable protocol working group and is the topic of another article.</p>
<p>I am happy to discuss the usefulness and applicability of the above works-in-progress to your project.  Just <a href="http://ellisonsoftware.com/company/contact/">contact me</a> with your project parameters and idea.</p>
]]></content:encoded>
			<wfw:commentRss>http://ellisonsoftware.com/2011/02/10/work-in-progress-current-ietf-activity-related-to-network-and-services-management/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Product Evaluation: DMH Software&#8217;s SNMPv3 SDK</title>
		<link>http://ellisonsoftware.com/2010/01/13/product-evaluation-dmh-softwares-snmpv3-sdk/</link>
		<comments>http://ellisonsoftware.com/2010/01/13/product-evaluation-dmh-softwares-snmpv3-sdk/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 13:07:15 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Software Project Management]]></category>
		<category><![CDATA[Build or Buy]]></category>
		<category><![CDATA[Managemant Applications]]></category>
		<category><![CDATA[SNMPv3 Agent]]></category>

		<guid isPermaLink="false">http://ellisonsoftware.com/?p=443</guid>
		<description><![CDATA[Every so often I have the opportunity to evaluate a software developers kit (SDK) targeted for use in network and services management applications. I recently evaluated the SNMPv3 Advanced SNMP Agent SDK offered by DMH Software.   A product profile and evaluation synopsis follow. Product Profile DMH Software sells a software developers kit consisting of an [...]]]></description>
			<content:encoded><![CDATA[<p>Every so often I have the opportunity to evaluate a software developers kit (SDK) targeted for use in network and services management applications.</p>
<p>I recently evaluated the SNMPv3 Advanced SNMP Agent SDK offered by DMH Software.   A product profile and evaluation synopsis follow.</p>
<p><span style="text-decoration: underline;"><strong>Product Profile</strong></span></p>
<p><a href="http://dmhsoftware.com/snmp.html" target="_blank">DMH Software</a> sells a software developers kit consisting of an SMIv2 MIB compiler and their portable, SNMPv3 capable Advanced SNMP Agent runtime libraries.</p>
<p><a href="http://www.netburner.com/" target="_blank">NetBurner</a> sells a single board device running uc/OS on a Freescale Coldfire 68K processor that served as the embedded target environment.</p>
<p><span style="text-decoration: underline;"><strong>Evaluation<a href="http://dmhsoftware.com/" target="_blank"> </a>Approach</strong></span></p>
<p>For this evaluation, the ALARM-MIB (<a href="http://www.rfc-editor.org/rfc/rfc3877.txt">RFC 3877</a>) was implemented using the DMH Software SDK for the NetBurner embedded environment.  The ALARM-MIB was selected for reasons that include:<br />
        </p>
<ul>
<li>the OBJECT-TYPE definitions include every possible SMIv2 sytnax type.</li>
<p></p>
<li>the tables have multiple index components using OCTET STRING and INTEGER syntax types.</li>
<p></p>
<li>the two NOTIFICATION-TYPE definitions, alarmActiveState and alarmClearState, enable evaluation of APIs for sending notifications.</li>
<p></p>
<li>the design of the alarmActiveVariableTable allows each row to contain one of the variable bindings sent in a notification. As such, the alarmActiveVariableTable is a &#8216;sparse&#8217; table containing rows with only three accessible object instances out of ten accessible OBJECT TYPE definitions.</li>
</ul>
<p>
To implement the ALARM-MIB, the following steps were taken:<br />
        </p>
<ul>
<li>the host environment was set up on a Windows XP laptop with the NetBurner supplied Eclipse based IDE and cross compiler, linker and debug utilities.  A NetBurner model 5234 board was used as the target environment.</li>
<p></p>
<li>the DMH Software SMIv2 MIB compiler was used to generate code from the ALARM-MIB.</li>
<p></p>
<li>custom code was added to the generated code to complete the functional implementation.</li>
<p></p>
<li>the NetBurner SDK was used to compile the generated and custom code and to link it with the DMH Software SNMPv3 agent and NetBurner runtime libraries.</li>
<p></p>
<li>the resulting executable was flashed onto the NetBurner board and tested using the Net-SNMP command line tools.</li>
</ul>
<p>
<span style="text-decoration: underline;"><strong>Evaluation Results &#8211; MIB compiler<br />
</strong></span></p>
<p>The DMH Software SMIv2 MIB compiler is based upon and extends utilities that are part of the well known open-source libsmi distribution.  Thus, I experienced a familiar and comfortable feel with the DMH MIB compiler utilities.  Version 1.4.5.0.5 of the SMIv2 MIB compiler was used in the evaluation.</p>
<p>The code generated for the ALARM-MIB consisted of three source files, alarm-mib.c, alarm-mib.h and alarm-mib-sys.c.  The generated source code was modular, of good quality and well annotated with information from the ALARM-MIB as well as comments that clearly indicated where custom code was required to complete a functional implementation.</p>
<p>During the evaluation I encountered several minor issues with the source code generated from the DMH Software MIB compiler:<br />
        </p>
<ul>
<li>generated code contained erroneous range checking for the SMIv2 BITS construct.  NOTE: this issue was resolved within three days of reporting it to DMH Software.</li>
<p></p>
<li>some code was not generated for the alarmActiveDateAndTime nor alarmClearDateAndTime index components.  NOTE:  this issue was resolved within three days of reporting it to DMH Software.</li>
<p></p>
<li>generated code for enumerated values would be a welcome addition.</li>
<p></p>
<li>generated code could do a better job handling SMIv2 Textual-Conventions.  Most of the generated code and comments accurately reflect the underlying base syntax type, rather than the restrictions placed upon the base syntax by the Textual-Convention.  NOTE: support for the RowStatus and StorageType Textual-Conventions are built into the SNMPv3 SDK APIs.</li>
</ul>
<p>
<span style="text-decoration: underline;"><strong>Evaluation Results &#8211; SNMPv3 SDK<br />
</strong></span></p>
<p>The DMH Software Advanced SNMP Agent was designed to produce a small executable with embedded and real-time applications in mind.  From tests run, I was pleased to find excellent support for version 3 of the SNMP that included the set of SNMPv3 MIBs for USM, VACM, and Notification targets.  Version 5.0.1.12-2 of the SNMPv3 SDK was used in the evaluation.</p>
<p>The provided developers&#8217; documentation consisted of an integrated set of html pages.  It took a little time to get used to navigating the frames and tabs of the documentation to find the information I needed.  In a handful of instances I found information not available in the documentation by searching through the SNMPv3 SDK include files.</p>
<p>The provided API consisted of a small, concise and well thought out set of functions. From my perspective, a small and concise set of functions is beneficial, serving well the target audience of developers creating management applications.  In general, I found the API provided with the DMH SNMPv3 SDK easy to understand and use.</p>
<p>During the evaluation I encountered a couple of minor issues with the DMH SNMPv3 Agent API:<br />
        </p>
<ul>
<li>the agent cited an error when passed a variable binding tagged with a syntax of Opaque.  NOTE:  This issue was resolved within three days of reporting it to DMH Software.</li>
<p></p>
<li>while there are two API functions for sending notifications, neither provided a mechanism for the caller to provide the value for sysUpTime.0 for an outgoing notification.  While perceived as a hindrance upon implementing the ALARM-MIB for this evaluation, DMH did offer to resolve this issue in a future release.</li>
</ul>
<p>
<span style="text-decoration: underline;"><strong>Evaluation Results &#8211; Summary and Conclusion<br />
</strong></span></p>
<p>Overall, I was pleased with the functionality, features and support offered by DMH Software in their Advanced SNMP Agent SDK product.</p>
<p>Additionaly, I am pleased to report that the SMIv2 MIB compiler generated modular code of good quality and that DMH Software&#8217;s response time on technical issues was superb.</p>
<p>If your software development project involves the NetBurner embedded target environment and has a need for an SNMPv3 agent then I recommend you consider using the DHM Software Advanced SNMP Agent for your software development project.</p>
<p>Please <a href="http://ellisonsoftware.com/company/contact/" target="_self">contact me</a> if you need to identify applicable IETF published MIB modules. need to design a private enterprise MIB module, or require a quick and sure start with the DMH SDK.  Find out how easily my expertise and skills can support your development team and contribute to a successful design and realization of your software project.</p>
]]></content:encoded>
			<wfw:commentRss>http://ellisonsoftware.com/2010/01/13/product-evaluation-dmh-softwares-snmpv3-sdk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Commercial or Open-Source Software?  Lowering the Cost of SNMP Applications Development</title>
		<link>http://ellisonsoftware.com/2009/02/09/commercial-or-open-source-software-lowering-the-cost-of-snmp-applications-development/</link>
		<comments>http://ellisonsoftware.com/2009/02/09/commercial-or-open-source-software-lowering-the-cost-of-snmp-applications-development/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 15:54:21 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Software Design]]></category>
		<category><![CDATA[Software Development]]></category>
		<category><![CDATA[Software Project Management]]></category>
		<category><![CDATA[Build or Buy]]></category>
		<category><![CDATA[Open Source]]></category>

		<guid isPermaLink="false">http://agentsv.com/?p=7</guid>
		<description><![CDATA[In a world of commercial and open source software toolkits, how can we best identify and select the option lowering the cost of developing SNMP Agent and SNMP Manager applications? The goal in selecting an SNMP developers&#8217; toolkit is to find the most cost effective means to accelerate development and realize successful project completion. During [...]]]></description>
			<content:encoded><![CDATA[<p><!-- 	 --></p>
<p>In a world of commercial and open source software toolkits, how can we best identify and select the option <strong>lowering the cost </strong>of developing SNMP<strong> </strong>Agent and SNMP Manager applications?</p>
<p>The goal in selecting an SNMP developers&#8217; toolkit is to find the most cost effective means<strong> </strong>to <strong>accelerate development</strong> and realize <strong>successful project completion</strong>.</p>
<p>During the process of SNMP toolkit evaluation, we need to consider factors from both the <strong>technical perspective </strong>and <strong>business perspective</strong>.</p>
<p><span style="text-decoration: underline;">Some examples of business factors:</span></p>
<ul>
<li>What are the terms and obligations of the distribution 	license?</li>
<li>What level of <strong>engineering expertise</strong> do we need on staff to 	effectively use the toolkit?</li>
<li>What is the initial cost for the toolkit?</li>
<li>Are there annual <strong>maintenance and support </strong>costs?</li>
<li>Do we need to track and pay <strong>royalties </strong>on derivative works?</li>
</ul>
<p><span style="text-decoration: underline;">Some examples of technical factors:</span></p>
<ul>
<li>Does the toolkit include <strong>fully compliant implementations </strong>of 	SNMPv1, SNMPv2c and  SNMPv3?</li>
<li>How well does the toolkit scale when handling a <strong>heavy volume </strong>of encrypted SNMPv3 messages?</li>
<li>Is the toolkit <strong>easily portable </strong>to a variety of hardware 	platforms and operating systems?</li>
<li>What useful MIB implementations and utilities are included 	with the toolkit?</li>
<li>How helpful is the developers documentation?</li>
<li>Is the SNMP toolkit API <strong>concise or bloated</strong>?</li>
<li>Is the SNMP and MIB terminology used in the toolkit 	consistent with IETF published RFCs?</li>
</ul>
<ul>
<li>What level of <strong>technical support </strong>exists?  Is there an active 	developer and user community?</li>
<li>Does the SNMP toolkit <strong>integrate well </strong>with other technologies 	(e.g. Corba, WBEM, Syslog, XML, JMX, TL1)?</li>
</ul>
<p>Based upon the relative significance of each factor we can identify and select the SNMP developers&#8217; toolkit offering the best value and most cost effective means to accelerate development and realize successful project completion.  The right SNMP developers&#8217; toolkit is not necessarily the least expensive.  Rather, the right SNMP developers&#8217; toolkit is the one that is capable of providing substantial <strong>engineering efficiencies</strong> during development and facilitates the delivery of a less encumbered, <strong>more profitable</strong> product.</p>
<p>Open-source SNMP software was initially created as a reference implementation for interoperability testing with proprietary implementations of the SNMP protocol.  Over time, the  quality of open-source SNMP developers&#8217; toolkits has improved to a point where there is a suitable match for a variety of OEM development efforts.</p>
<p>Commercial SNMP software often provide a much richer feature set than open-source developers&#8217; toolkits. Also, commercial SNMP software offerings have adjusted to low-end market realities of quality open-source software to a point where there is a low cost or no cost binary commercial version that is often competitive with open-source alternatives.</p>
<p>In either case, open-source or commercial, it is<strong> important to have sufficient development expertise with SNMP</strong> and MIB technologies to make effective use of the selected SNMP developers&#8217; toolkit.  This is the <strong>core value</strong> provided to your project by <strong>the right choice of SNMP consultant</strong>.</p>
<p>The next step to gaining a <strong>better understanding of the alternatives and trade-offs </strong>when identifying and selecting the best choice of commercial or open-source SNMP developers&#8217; toolkit is to <a href="http://ellisonsoftware.com/company/contact/">contact me</a> with your project requirements and questions.</p>
]]></content:encoded>
			<wfw:commentRss>http://ellisonsoftware.com/2009/02/09/commercial-or-open-source-software-lowering-the-cost-of-snmp-applications-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

