GREETINGS! The Salutation Consortium Newsletter February |
Message from the President
Salutation News
From the Managing Director
Salutation Scenarios
Product Focus
Tech Talk
Perspectives
Upcoming Events
Were in demand. In the month of January weve been at the office only long enough to do the laundry and throw it back in the suitcase. Heres a synopsis of our activities during January 2000:
January 5-9 - Consumer Electronic Show, Las Vegas. Salutation-Lite Demo.
January 12 - Technical Committee lead architect. Reviewed Salutation-Lite Change Requests and all changes were deemed to be consistent with current architecture and allow both Salutation and Salutation-Lite to interoperate.
January 13 - Salutation Mobility Work Group. Planning session.
January 18 - Microsoft UPnP and Printer Network Group. Reviewed convergence opportunities.
January 18 - Bsquare. Exchanged information.
January 19 - Calibre. Focused on the Calibre Xconnect product and Salutation opportunities.
January 20 - PocketMail. Discussed using Salutation in future products.
January 21 - Canon Image Systems. Discussed current scan solutions for Salutation.
January 21 - NeoEdge. Discussed proprietary technologies of NeoEdge and potential for Salutation.
January 21 - Banana Republic. Investigated opportunity with Banana Republic to use Salutation-Lite as their service discovery when beaming information to theirs customersEpalmtops.
January 25-26 - Pervasive Computing 2000. Sponsored by the National Institute of Technology and Standards (NIST) at Gaithersburg MD. Pascoe spoke on panel with Jini, UPnP, and SLP.
January 26-27 - Portable Design, San Diego, CA. Pecora spoke on selecting a service discovery platform.
We are also in demand in the press. We have several recent articles in EETimes[1], EDN[2], and Nikkei Electronics.
The
Salutation-Lite source code will be made available to anyone under a
royalty-free general source code license once it exits Beta testing, which is
tentatively scheduled for February 29, 2000.
As a smaller footprint version of the popular Salutation
architecture, Salutation-Lite is a discovery protocol targeted at smart handheld
devices and the mobile communications market. Salutation-Lite currently runs on
Windows CE operating system. The PalmOS version is scheduled to be available in
the middle of this year.
Offering
the Salutation-Lite source code royalty-free is the Consortium's way of
increasing focus on our technology and speeding development of
Salutation-enabled products. Unlike other royalty-free licenses, such as for
Linux, you don't have to return derivative works to the Consortium. You simply
design and build your product around the Consortium's reference code, and then
sell your products in your intended market. Of course, if you have enhancements
that you want to share with the industry, the Consortium will provide you with
the distribution vehicle you need. Also, your shared enhancements might just
make you eligible for a Consortium membership grant.
(http://www.salutation.org/membergrantapp.htm).
The Salutation Consortium recently announced the availability of a suite of test tools for aiding developers in the creation of Salutation enabled products. The tool suite was developed by Consortium member, Granite Systems, Inc. (www.granitesystems.com) and will be made available free of charge to all Consortium members.
The test tools perform and verify the correctness of protocol exchanges between client and supported server functional units (FU) for developers using the Salutation architecture. The test suite consists of three elements: the Salutation Manager test driver, the client test driver, and device emulation modules. The tools run on Windows 95, Windows 98, and Windows NT platforms.
The Salutation Manager test driver aids in the developing and testing of a product's base functionality for
Salutation personality that includes individual message by message exchanges. It
supports testing of SLM and FU discovery, attribute retrieval, session
management, and message exchange of Salutation mode products. Message exchange
for specific emulated or native personalities requires custom extensions to the
test tool.
The client test driver
helps in developing and testing embedded products such as print, docStorage,
faxSend, and faxData. It automatically performs entire protocol exchange
sequences. For example, it submits a print job and monitors its progress until
completion. The client test driver can accept manual, typed input, or may
execute batch mode scripts. A message trace of protocol exchange is output from
the programs.
The device emulators aid
in developing and testing application program modules. They support sets of
actions that an actual server device might perform. For example, a print FU can configure its paper trays,
process jobs on the queue, and set device status such as out of paper.
Device emulators have a graphical user interface that allows users to
simulate a variety of device functions including normal operations, dynamic
events, and errors.
The test suite has been
verified against several fielded Salutation products, including IBM's Nu-Office
and the Salutation Consortium's Port Of Entry product.
Check out this issues Product Focus section for more information on the Testing Tool from Granite Systems, Inc.
Since the last issue of Greetings! five new members have joined the Consortium.
Fueled by the increasing interest in Salutation-Lites capability to address service discovery for the hand-held computing world, WalletWare, Inc has joined the Salutation Consortium as its most recent general member. WalletWare, Inc. develops ExpensePlus, a business expense tracking system designed for PalmOS devices and on the goEbusiness travelers. (www.walletware.com)
The
ConsortiumsEnewest academic member, Dr. Roger DeBry, hails from Utah Valley
State College where he teaches Java and C++ in their Computer Science
department. Dr. DeBry recently retired from IBM where he worked for 30 years in
their display and printer architecture group. During his last few years at IBM
he was involved in some Salutation activities. Now as a member of academia, Dr.
DeBry feels it will be very worthwhile to continue his association with the
Consortium.
Kaspar Helldn a student of Computer Science at Linkping University in Sweden has also recently joined the Salutation Consortium as an academic member. Helldn is doing his Master Thesis on coordination frameworksEin home networkingE He is considering focusing his thesis on device descriptions and methods for device services invocation. Helldn plans to leverage his participation in the Consortium as a means to learn how the Salutation framework solves these issues.
Golden
G. Richard III is an Assistant Professor of Computer Science at the University
of New Orleans in Louisiana. His
research interests include mobile computing, operating systems, and fault
tolerance. Additionally, Dr.
Richard is on the Executive Committee of the IEEE Technical Committee on the
Internet (TCI) and is actively involved in the organization of several mobile
computing and networking conferences. He is a member of the ACM, IEEE, and is
USENIX's Educational Outreach Liaison for the University of New Orleans. When
he's not hacking, he can be found consuming New Orleans jazz.
Dr.
Richards interest in the Consortium stems from an invitation he received from
a networking conference to develop a tutorial on service discovery in mobile
computing environments. The
tutorial will also be used extensively in his graduate level mobile computing
courses.
For the next few months the Salutation Consortium will be
sponsoring a task force that will focus on the mobile office environment. The
purpose of the task force will be to investigate and define the business
opportunities in the mobile office market, as well as how companies can leverage
the Salutation Architecture and technologies to deliver enhanced solutions for
that market. This months message From the Managing Director discusses
todays mobile office environment, as well as explains the details of the
Mobile Task Force.
Technology has made it possible to redefine where work is
done. The mobile worker and the mobile office are replacing the traditional
notion of an office being the place where someone goes to work. Many companies
have partially or fully eliminated traditional offices for sales and customer
service personnel. Other companies have eliminated offices for workers including
researchers, real estate managers, and accountants. For these businesses, work
is becoming something you do, not a place where you go.
The mobile office provides new challenges when dealing
with traditional hard copy documents. The right mix of high-tech information
flow with low-tech paper flow provides the intersection of the paper trail and
the information highway. Single-function and multifunction hard copy device
solutions must extend document management support to the mobile information
worker. Solutions must integrate the fax machine, scanner, printer, mopier, and
multifunction office equipment with the mobile workers arsenal of
productivity tools, including laptops, mobile phones, bi-directional pagers,
hand-held computers, and palmtop devices. This integration must result in a
single solution that is accessible from a workers current location, no matter
where that location happens to be at the moment. The integration of these
diverse devices is integral to the mobile workers information workflow and
productivity.
Portable computers, mobile phones, fax machines, and on
line multifunction equipment technologies enhance todays office environment.
The concept of the mobile office appeals to corporate stakeholders at many
different levels. The business traveler values the freedom and autonomy that the
mobile office provides, while senior managers like the reduction in real estate
costs. Managers view the mobile office not as a perk for employees, but rather
as a means to cut costs. Senior managers also value the opportunities that new
technologies create for increased interaction between salespeople and customers.
It is a growing necessity for the knowledge worker to
maintain a mobile office, allowing access to information right here, right now. Speed is now a primary business success
factor. Just-in-time delivery extends to accessing information the instant you
need it from the information appliance at your disposal.
The challenge faced by today's information technology
professional is to combine the broad reach of interconnected people with the
vast resources of traditional information technology systems -- systems that
must include managing information captured on and distributed by hard copy.
Providing a means to integrate traditional hard copy with
e-business solutions is emerging through on-line multifunction peripheral (MFP)
devices. These devices provide input (scan), output (print), and throughput
(fax) functionality, giving information workers new tools to manage their hard
copy documents. Extending the capability of these MFP devices to the mobile
worker will enable real time management of hard copy documents as the worker
roves about. A mobile computing solution bridges the promise of e-business
providing guaranteed access to printouts, faxes, and photocopies. It enables
e-business to reach its full potential with anytime, anywhere information access
and hard copy document management in the mobile office market.
Cost reduction is the leading driver of mobile office
adoption. Fifty percent of firms employing a mobile work force do so to reduce
real estate, recruiting, and training costs. Secondary motivations are a desire
to increase productivity and re-engineer processes.
There are two target markets for mobile office solutions;
corporations with a large mobile work force, and service providers catering to
the mobile worker.
The corporate market wants greater document management
support for mobile workers, providing seamless handling of all document types.
They require the integration of document-oriented process with collaborative
environments and enterprise applications. Companies in this market want
solutions to improve office productivity through enhanced corporate Intranets
and extranets with the capability to access document management services at any
location.
Service providers want to provide the mobile worker with convenient access to document input/output resources and to match device capabilities with document requirements for optimal use. Companies in this market want solutions for business centers in hotel chains, airports and office service storefront franchises that offer document services through shared access devices in public places.
For the two target markets just described, the role of
Salutation is to determine the capabilities of connected equipment and services,
and to manage the transfer of data between them. Salutation can be used in a
business center to locate devices that meets specific requirements. Using the
capabilities information gathered by Salutation, a printer can be selected that
best meets the needs of the output job. For example, a user can locate a
high-end color printer, one that can print on both sides of the page, one that
has the fastest output, or a combination of these or other capabilities.
Once a device is selected, Salutation is called upon
again to determine the specific characteristics of the device. For example, it
can be determined that the device contains paper handling and finishing
capabilities. A hand-held computer can use Salutation in the same way when it
connects with a fax machine in a clients office. With this information, the
appropriate device driver and formatter can be automatically located and
installed to assure the highest quality output on the printing device. In other
words, Salutation can provide the information needed to select the best
rendering technology for the current device.
Salutation can also locate the
necessary device drivers to utilize that device.
Salutation, in conjunction with the ID/phone number of
the mobile phone, may be used to identify an individual. Using this information,
billing and personalization of services including formatting and binding
preference may be achieved.
A host computer and a hand-held device can leverage
Salutation to manage a print job. Salutations session management enables job
start, stop, pause and suspend, along with status checking and error
notification.
Finally, a community information server can also take
advantage of Salutation. When an infrared connection is made with a mobile
device, important capability information can be exchanged. The server can
determine the operating system and processor type of the mobile device. It can
determine the amount of free memory available and what applications are onboard.
The server can use this information to target existing applications, or download
new applications consistent with the operating environment. Display
characteristics of the device, such as screen size, picture element density, and
the number of data bits per picture element can be learned. With this
information, the server can send images of a size, shape, and quality that are
consistent with its display characteristics.
This short overview of the mobile office environment provides the necessary background to introduce the goals and details related to the Salutation Mobile Task Force.
The purpose of the Salutation Mobile Task Force is to
investigate, define, and validate the business opportunities for the mobile
office environment, for devices, applications, and services incorporating the
Salutation Architecture. The primary objectives are to determine the actions
needed to meet these opportunities, and to exploit and extend the Salutation
Architecture for mobile office solutions.
The initial task force meeting will take place on Tuesday
and Wednesday March 28-29, 2000 in Dallas, TX.
The leading
participants of the task force will be representatives from Salutation
Consortium member companies with a keen interest in capitalizing on the business
opportunities in the mobile office market. So, if your company is a member of
the consortium and you would like to participate, send your email request to me
at [email protected].
If your company is
not a member of the Salutation Consortium and you want to learn about how your
company can become a member and participate in the task force, please contact me
at [email protected]
or visit our web site at www.salutation.org
.
Salutation Scenarios
In each issue of Greetings! the Salutation
ScenariosEsection highlights potential uses for the Salutation Architecture.
We aim to prod your thinking as you visualize how Salutation might
benefit your business.
The Mobile Triangle, depicted below, defines the pathways
by which a mobile worker can stay connected, maintain his/her information base,
and merge the information highway with the paper trail. It provides a mechanism
to meet the mobile workers requirement to create hardcopy from his/her mobile
information base.
The corners of the triangle represent points of
information access or storage:
The sides of the triangle represent communication paths between and among devices and information content:
Clearly, the Local or Ad Hoc Network leg of the triangle provides a path for the mobile worker to print information contained on the mobile device (depicted as path 1 in the figure). The more difficult, yet necessary cases involve a two-legged transaction.
In all cases depicted by the Mobile Triangle, service discovery plays a key
factor in every transaction.
The mobile device uses service discovery to locate a
printing device meeting the printing needs. Again using service discovery, the
device driver is located and loaded for the selected printing device. Printing
commences.
Once again, service discovery is used to select a device
and locate its device driver. However,
if the Local or Ad Hoc protocol does not use the same service discovery protocol
as the PCS, Wireless or Modem protocol, an incompatibility may exist, preventing
the necessary discovery.
Service discovery is only used between the Enterprise Server and the hard copy device. Here service discovery is NOT used to locate the device, as the mobile worker has provided the URL. However, service discovery is still needed to determine the capabilities of the selected hardcopy device, then locate and load its device driver. If the hardcopy device is required to support a specific service discovery protocol for the Intranet/Internet leg (e.g., SLP) and a different protocol for the local, Ad Hoc leg (e.g., Bluetooth SDP), the manufacturer of the hardcopy device will face significantly increased implementation costs.
Salutation is best suited to be the service discovery protocol for the Mobile Triangle as it is independent of the operating system and transmission protocol. Therefore, a manufacturer need only support one service discovery technology even if the device supports multiple transmission protocols. Additionally, no service discovery incompatibilities exist if one corner of the triangle is being used as a gateway between two others.
This months Product Focus takes a brief look at the
Salutation Test Tool from Granite Systems, Inc.
Significant portions of this article have been taken
from Granite Systems, Inc.s Salutation Test Tool Command Reference and
Workbook. Copyright 1999-2000 Granite Systems, Inc.
The Salutation Test Tool from Granite Systems, Inc. is
intended to assist developers in the creation of Salutation enabled products.
The test tool operates in Windows 95/98 and Windows NT environments and assumes
a high level of familiarity and understanding of the Salutation Level 1 and
Level 2 architecture. It is capable
of producing almost all Salutation commands that a Client Functional Unit (FU)
might generate, and to various degrees it will emulate the responses and
behaviors of print, docStore, fax, and extended
fax FU's. At its core, the tool is
a command line driven program with a limited graphical interface.
All commands may be issued from the textual command line, even those that
would be considered inappropriate for a particular FU.
Where possible, the layout of commands exactly mirrors
the corresponding Salutation Functional Unit specification.
Command syntax is taken directly from that specification, as are
parameter names. The values of the
many enumerations (dynamic status IDs, attributes,
etc) must be taken from the specification. So, anyone using the tool will need a
copy of the Salutation Architecture Specification readily available.
Care should be taken to distinguish between local FU
commands and remote FU commands. Local FU commands perform actions on the local
client or device, while remote FU commands issue commands across the Salutation
interface. Any command with an
'Rmt' prefix is a remote command ‑ it will perform an FU level
function on the remote FU which is connected on the current session.
Except for Session and SLM operations, all other commands are local
commands ‑ they affect the local FU by creating something, changing
something, or performing some other operation.
The Salutation architecture uses enumerated fields and
other parameters. The valid uses,
values, and combinations of these fields are documented in the architecture
specification. Some of the
enumerations are listed in the command descriptions for the user's convenience,
but the Salutation Architecture Specification (part a, b, and c) is the primary
reference for the use of these commands and their parameterizations.
Since this product is a test tool, both valid and invalid
values may be placed in many command fields.
Most local commands (those without the 'Rmt' prefix) operate without type
or bounds checking, so it is possible to place the local FU in an inconsistent
state through accidental or deliberate mistakes.
Remote commands may be transmitted with invalid values,
or invalid commands issued by a user to a remote functional unit.
This invalid command will usually be rejected by the remote FU (Nack'ed)
and should cause no harm to the state of the local system.
Since the test tool must allow a broad range of user actions, including
many illegal actions, it may be induced to failure even by issuance of remote
commands.
For example, it is possible to send a 'print' command
that specifies neither a data object definition (DOD) nor a (third party)
dataSource. In this case, the test
tool will attempt to send a 'print' command without specifying the actual print
data in any of the several possible ways that can be specified.
This is not only architecturally invalid but it is an error that will
lead to unpredictable program results.
Some of these situations have been detected and a warning
will be made in the 'notes' section of the appropriate command.
The user should be aware that it is possible to accidentally or
intentionally create a test program failure if they perform certain commands or
command sequences with inconsistent parameterizations.
The tools Functional Unit Master program is a simple launcher utility for the functional units. Each of the five supported test tool FU emulations may be started from this program. The launcher allows the user to specify the maximum amount of spool or data storage that an FU will use. All FU's, including client FU's, require spool storage for storage of data prior to sending jobs or documents to remote FU's.
A maximum of eight FU's may run at one time in one
system, though there is no limitation on the total number of FU's which may run
on a network, as long as no more than eight are running on any one node. While
it is possible to perform some operations on FU's with no spool storage (0 MB),
at least 1MB of storage is highly recommended.
Spool sizes larger than 999MB may be specified through a manual entry in
the size field.
The tools general FU program is invoked in one of five
emulation modesclient, printer, document storage, standard fax, or extended
fax. Clicking the appropriate
button in the launcher specifies the type of FU to emulate. Alternatively, functional unit emulations may be invoked
directly by executing the 'genfu.exe' program with command line arguments
specifying the desired emulation mode, the requested fuHandle, and the total
spool storage.
Though customer test environments will vary
significantly, much of the test tool functionality can be demonstrated with only
test tool functional units. The SLM
commands require at least two Win32 platforms to demonstrate all supported
functionality - specifically, discovery of remote SLM's and their registered
FU's, and retrieval of capability attributes registered for those FU's.
In most circumstances, FU level functionality can be adequately
demonstrated by running all supported FU's simultaneously on the same SLM - and
thus on the same workstation. Since the only supported mode of SLM communications is TCP/IP
based, using the loop back address (127.0.0.1) to establish and utilize sessions
on the same SLM is sufficient for most testing needs.
If a customer has apprehensions about this mode of testing, or is looking to evaluate factors that require SLM to SLM communications, then these FU's may be run on separate workstations (with separate SLM's). The test tool itself was tested primarily with all FU's running on the same SLM, and spot checked, in most cases with data transfer commands, with FU's running on different SLM/workstations.
Determining which service
discovery protocols to support is a difficult decision that consumes both time
and money. However, it is a decision that must be taken seriously, Incorrect
decisions regarding service discovery can lessen your chances for success in
your target market as well as impair your ability to enter other markets.
Several business and technical aspects of service discovery protocols must be
considered as part of this decision process.
The openness of the service discovery technology should
be measured. Ask yourself, who owns
the service discovery technology? Are prerequisites needed that are outside your
intended usage model? Is the technology proprietary or limited to a single
platform? Can the technology be extended to other environments?
Consider the cost of implementation. Use of some service
discovery technologies requires payment of royalties and licensing fees, which
can result in significant direct costs. Other costs associated with service
discovery protocols include SDK fees, cost of development tools, and expenses
for compliance testing.
Does the technology provide more than basic service
discovery function? For example, can the protocol determine if the service is
available, and can the technology bind to it, setting up an interoperable
session? Can the technology locate and load needed device drivers?
Also, determine if the client or the service is
responsible for comparing service requests with services provided. Client-side
comparisons can be more costly, with the function being delegated to each
application or service above the API.
To assure the broadest market penetration and fewest
portability issues, consider technologies that are independent of operating
system environment and communication protocol, and technologies that target
multiple platforms.
Directory centric network models are prevalent in
enterprise and small business applications. Efforts are underway to extend this
model to public networks such as the Internet and extranets. However, mobile
technologies have given rise to ad hoc, peer-to-peer networking. In this model,
a central directory is not necessary. Devices and services negotiate one-on-one
with each other, advertising their own capabilities and finding devices or
services that meet the needs they require. Therefore, when selecting a service
discovery protocol, look for one that will function equally well in both
directory based and ad hoc network situations.
Excerpts form http://www.opensource.org/
with commentary relative to Salutation Consortium in italics.
Open source promotes software reliability and quality by
supporting independent peer review and rapid evolution of source code.
An important
side effect of the open-source model is a much wider platform range for your
product. Open-source authors frequently find themselves receiving free port
changes for operating systems and environments they barely know exist and can't
afford to support themselves. Each such port, of course, widens the market
appeal of the product.
The basic idea behind open source is very simple. When
programmers can read, redistribute, and modify the source for a piece of
software, it evolves. People improve it, people adapt it, and people fix bugs.
And this can happen at a speed that, if one is used to the slow pace of
conventional software development, seems astonishing.
Additionally, people add it to their product mix, enhancing its functionality and deploying products and services in a broad range of markets. This propagates the initial open source to additional products and services, increasing the opportunities for all concerned.
Computer programs have three kinds of economic value:
Use value -- Economic value as a tool
Market value -- Saleable commodity
value -- Unavailable to your competitors
The broader
distribution of open-source code creates additional value in the client/server
market, as new clients will be developed to use existing services.
For Salutation, this means potential development of
new products and services that can access existing Salutation-enabled MFPs and
Fax devices. Salutation open source does not displace existing products but
creates new markets for them. It provides a readily available tool for
Salutation-enablement.
Probably the purest demonstration of an open source model
today is Red Hat, which has built flourishing business selling software you can
download for free from Red Hat's own web site! Red Hat's sales are doubling
every year. What you're really buying from them is handholding and support for
the freeEstuff they sell - a single place to go when you have problems.
For
Salutation, the freeEstuff Ethe Salutation Manger -- is surrounded by
services and functions provided by the product/service providers. Here, what
youre really buying is the derivative works added to the Salutation
technology that provide solutions for the target market.
Adopting or even just studying someone else's software is
not a costless, frictionless process; you need to dedicate skilled time to it.
As product cycle times drop, coattail-riding gets less attractive, because the
payoff period shrinks relative to the time you have to dedicate. Additionally,
the time your skilled people spend studying someone else's monopolyEcode
is time you're spending getting to where the competition used to be (rather than
where they are now).
For
Salutation, our model of openness is the opposite of the monopolyE Open
source breaks the dependence on one or a few suppliers and enables would-be
supporters to get to a solution quickly and in a way that is assured to be
current and compliant.
Beyond all the reliability and quality gains we've
discussed elsewhere, the open-source model has one overwhelming advantage for
the software customer: you aren't a prisoner. Since you can get access to
source, you can survive the collapse of your vendor. You're no longer totally at
the mercy of unfixed bugs. You're not shackled to every strategic decision your
vendor makes. And if your vendor's support fees become exorbitant, you can buy
support from elsewhere.
For this reason alone, every software customer should
absolutely demand open source and refuse to deal with software vendors who close
and shroud their code. It's a matter of controlling your own destiny.
- March 28-29, 2000, Dallas, TX