Net2000: Enhancing the NetWare Platform
Articles and Tips: article
01 Mar 1996
The overall vision of Net2000 is to enhance the development of new applications that take advantage of the network. This AppNote focuses on the value Net2000 will bring to the NetWare platform. One of the primary initiatives of Net2000 is to increase the value of NetWare through development tools and technologies to make it easier to build and deploy applications, services, and components on NetWare. This AppNote shows how Novell is making it easier for developers to access NetWare services through easier developer tools and interfaces.
In September 1995, Novell announced an initiative (code-named Net2000) to develop an open set of application programming interfaces (APIs) to expose the rich functionality of network services to developers building distributed network applications. One of the primary objectives of this initiative was to make it easier for developers to access and use Novell's advanced services (NetWare Directory Services and so on) by allowing them to use their existing developer tools and support of standard interfaces.
The overall vision of Net2000 was to enhance the development of new applications that take advantage of the network. Application development is continually evolving. Traditional client/server applications are giving way to a new paradigm of "client/network" applications. Applications are becoming distributed in nature so that user interface logic, business logic, and content logic can be partitioned to more effectively use the resources of the network. Application developers will want to use components and services across the network, without knowing the specific platform it is executing on. This new shift in application development and partitioned logic requires a robust networking infrastructure and a set of networking interfaces to enable components, objects, and applications to share and collaborate.
As more and more applications are written to take advantage of network services, component and applications become more intelligent or smart--having the ability to register to the network, discover other services and logic dynamically, perform distributed tasks, be shared, and more easily managed. This is the vision of Novell's Smart Global Network and the charter of Net2000.
One of the primary initiatives of Net2000 is to increase the value of NetWare through development tools and technologies to make it easier to build and deploy applications, services, and components on NetWare. This AppNote will focus on the primary value Net2000 will bring to the NetWare platform. This AppNote will also show how Novell is focused on making it easier for developers to access NetWare services through easier developer tools and interfaces. It will also highlight a future direction Novell is taking to make NetWare the industry's most robust execution platform for business and content logic--a new direction in client/network computing.
Net2000 for NetWare Defined
The primary initiatives of Net2000 for NetWare are:
Expose the rich functionality of NetWare Directory Services (NDS) and other Novell services through higher interface abstractions (for example, OLE Controls, Visual Basic Controls, Delphi Controls, and C++).
Enhance the NetWare development platform through a service provider interface and a basic language interpreter to make it easier to register, dynamically load and unload components (NLMs and basic scripts), and offer a full Visual Basic compatible scripting language.
Leverage third-party NetWare developer tools and partners to offer more flexibility and functionality in building, debugging,and deploying NetWare components (NLMs and basic scripts).
The value that Net2000 for NetWare brings developers is:
An easier, flexible way to automate the administration and management of NetWare. Administrators can use a third-party 4GL scripting tool to quickly build NLMs and basic logic tomonitor, gather statistics, provide migration capabilities, and enhance the operation and access to NetWare services.
Easier interfaces to NDS. These interfaces will enhance how applications can use Novell's advanced Directory Service. Higher abstractions will allow access to NDS objects, perform operations, and automation from popular 4GL authoring tools.
An optimized way to register NetWare components. Allowing NLMs and basic scripts to be loaded and unloaded on demand, provide component sharing, and enhanced security in execution, thus saving server memory and cache.
More secure environment to run components (NLMs and basicscripts).
Universal way to access Net2000 for NetWare components through a common scripting language and C/C++ level interface.
Net2000 for NetWare Higher Interface Abstractions
One of Net2000's primary objectives is to increase the value of Novell's networking services to desktop component and object developers. Desktop component developers have traditionally used Microsoft's OLE/COM interfaces and popular authoring tools (such as Visual Basic, Delphi, Powerbuilder, and so on) that offer administrators and corporate developers easier ways to build applications. Recently, Java introduced another authoring environment for building distributed components (Applets) across the internet.
Net2000 will offer component developers easier access to network services through standard component interfaces, such as: OLE controls (OCX), Visual Basic controls (VBX), Delphi controls (VCLs), and C++ Classes. This will enable desktop components to become "network enabled" and seamlessly access network services.
Using these component interfaces, administrators could easily build NetWare utilities using a popular development tool, such as Visual Basic, that could perform a specific task such as changing a group of users password, checking security equivalences, or managing the NDS tree.
Initially, Net2000 for NetWare will focus on exposing NetWare Directory Services (NDS) through component interfaces across the desktop platforms of Windows, Windows 95, and NT. Net2000 will also expose other Novell services such as licensing, storage management, security, GroupWise, telephony, and communication services to developers through multiple levels of interfaces (OCX, VBX, VCL, C++, Java scripts).
As developers build components based upon OLE or Java technologies, the need to register, locate, manage, secure, access, and update components across the network is critical to realize the power of distributed and sharing objects and components. Issues such as usage, licensing, and commerce of components also show the need for a management service tailored to the component developer.
Net2000 for NetWare will provide a component management service based upon the advanced networking services of NDS, security, and licensing. This component management service will allow OCX, VBX, VCL and Java developers to register their applets and components to the network and provide security, access control, and definition of usage attributes. This will allow components to be shared across a Smart Global Network.
Net2000: Enhancing the NetWare Platform
Through Net2000, Novell will enhance the NetWare (Green River) platform to support easier NLM development and offer full basic scripting support. The enhancements to NetWare will be in the following areas.
NetBasic Service Provider Interface (SPI) for Net2000
The NetBasic Service Provider Interface (SPI) for Net2000 provides a standard way in which NLMs and basic components can register and execute within the NetWare operating system. The NetBasic SPI for Net2000 provides such features as loading and unloading components (NLMs or basic scripts) upon demand--thus handling libraries on an "as-needed" basis, maximizing cache memory and offering better performance. This feature will allow administrators to write a small script that can load a specific component, such as backup, at a specific time, rather than have the backup component loaded all the time. This can free up more memory for normal processing, until the backup component is needed during off hours. Security in accessing and controlling components is also controlled by the NetWare SPI.
The SPI interface also allows NLMs and components to share a common interface to expose their services and functionality through a number of access methods, such as; C/C++ calls, Visual Basic components, Java applets, and a common basic scripting language between components.
The power of the SPI interface is the ability to access all components (NLMs and basic scripts) from a common scripting language and share functionality between components. For example, an Oracle component written to the NetBasic SPI for Net2000 and the NDS component could easily be accessed by a custom administrator basic script component to look up a user's name in NDS, access the users specific data in Oracle and perform a specific task, such as backup.
In the future, Novell will be opening up access to the NetBasic SPI for Net2000 from desktop application tools (Visual Basic, Java, NetBasic, and so on) so that applications can access the common SPI interface and gain access to all the functionality of SPI components (NLMs or basic scripts) on the NetWare server. This will allow server-based logic to be accessible by component developers writing "network-aware" applications.
NetBasic SPI for Net2000 does not replace Novell's CLIB engine, but works in conjunction with the core NetWare OS and CLIB to offer a new way for NLMs and basic logic to be deployed and executed on the NetWare platform.
The NetBasic SPI for Net2000 has also been written to support the LCGI interface to Novell's Web Server, thus opening up access to Net2000 components through the Internet. Administrators and developers can access Net2000 components (upon proper authentication and authorization) from any Web browser.
Figure 1: Net2000 for NetWare.
NetBasic SPI for Net2000 Components (NLMs and Basic Scripts). Existing NLMs that have been written to CLIB routines, can easily be enhanced (eight calls) to be registered to support the Net2000 SPI. Third-party ISVs, such as database vendors, backup vendors, and others who have written to the NetWare platform, can write to the NetBasic SPI for Net2000 to offer easier access through basic scripting and sharing of components.
NetBasic SPI for Net2000 components have been written by third-party vendors to provide FAX services, SNMP alerts, database access, UPS monitoring, network protocols, and much more. Administrators can extend the functionality of custom basic scripts to take advantage of these extended services along with the base NetWare components for NetWare 4 (NDS) and NetWare 3 (bindery).
Working with a 4GL tools partner, administrators can write their own basic logic for the NetWare server, create an NLM from the basic logic, and have access to a rich development environment for creating custom logic for the server. Using the NetBasic 4GL tool from HiTecSoft Corp., administrators can fully develop, test, and run their applications (scripts) in DOS, OS/2 before executing on the NetWare platform.
Administrators and corporate developers will be able to use Microsoft Visual Basic to create custom scripts that can use the NetBasic SPI for Net2000 interfaces to build server logic , access NetBasic SPI for Net2000 components, and build administrator utilities to access NetWare functionality.
The NetBasic SPI for Net2000 provides a structured, secure way for components to share logic. As mentioned earlier, because the NetBasic SPI for Net2000 has been written to take advantage of Novell's Web Server, developers and administrators can access NetWare server logic from any Internet browser. This offers a new opportunity for NetWare component developers to publish services and provide functionality across the Novell network or the Internet.
Basic Scripting Logic on NetWare
Through a third-party tools provider, administrators can take advantage of a rich 4GL basic scripting development environment to create NLMs or create custom script logic for NetWare. Working with HiTecSoft, Novell has enabled easier ways to add value and offer administrators and corporate developers richer tools to build solutions on NetWare.
As more and more administrators embrace Visual Basic, the need to allow business and/or content logic to be executed as scripts on the NetWare server will be critical. Working with HiTecSoft, Novell will offer the ability to execute Visual Basic scripts on the NetWare server--thus giving administrators and corporate developers freedom of choice. Visual Basic scripts running on NetWare will be demonstrated at Brainshare. More and more enhancements to enable Visual Basic execution and deployment on NetWare will be announced throughout 1996.
Remote and Source Level Debugging
Enhancing the ability to debug NLMs is another focus of Net2000 for NetWare. Remote and source level debugging enable easier ways to trap errors, enhance and fine tune operations, and provide more reliable components.
Rdebug brings to the NetWare server the power and ease of source level debugging for NLMs written in C or C++, along with the ease of use of a Windows (TM) GUI interface. Rdebug provides all the features that you would normally expect to find in a debugger, such as setting breakpoints, watchpoints, and passpoints, displaying or modifying variables, memory, and registers, source or source and assembly mixed views, single step, step over, step into, or viewing or jumping to any funtion in the callstack.
In addition to these standard features, Rdebug has additional features such as setting hardware breakpoints, viewing or changing the math registers, handling integers up to 128 bits in length, loading symbols for already executing NLMs, and through its command window, allowing the user to define, store, and read back debug procedures or batch files with debug commands, and even to toggle between the NetWare Internal Debugger and Rdebug.
Borland C++ IDE/NLM Integration
Base Technologies provides a powerful way to automate and enhance the development of NLMs through Borland's C++ Integrated Development Environment. Integrated as a "wizard," Base automates the steps and process of designing and building an NLM. Base and Novell are working together to enhance other IDEs to make it easier to build NetWare components.
Net2000 for NetWare: Tools and Partners
Novell is committed to provide our developer partners the freedom of choice in developing applications to NetWare. Under the Net2000 initiative, Novell has formed a number of relationships to give NetWare developers greater flexibility and choice.
Through partners such as Base Technologies, Novell has enhanced the integration of NLM development within the popular C/C++ development environment of Borland.
Novell and Intel have provided the technologies to enhance the remote debugging capabilities for NLMs.
HiTecSoft and Novell have formed a relationship to enhance the NetWare platform with a full basic scripting language and interpreter, capable of interpreting Visual Basic scripts. HiTecSoft offers many components written to the NetBasic SPI for Net2000 to enhance administrator functionality, offer rich database access (Oracle, Sybase, Btrieve, dBASE, and so on), Fax Services, SNMP alerts, Web Server access, and much more. HiTecSoft also offers a 4GL basic development tool to enhance NLM development and custom server logic.
Net2000 for NetWare will be demonstrated at Brainshare '96 and will be available with NetWare's next release, "Green River." Net2000 for NetWare offers many powerful enhancements that have been long overdue for the NetWare platform. Novell is committed to make NetWare the industry's most powerful service platform. Net2000 for NetWare introduces a new opportunity for powerful services, business and content logic, and administrator utilities on the NetWare platform. Novell will be delivering more Net2000 interfaces, services, and infrastructure on other platforms throughout 1996. A Net2000 professional developers' conference is scheduled for Oct 1996.
* Originally published in Novell AppNotes
The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.