When Linux was a Struggling Challenger
Written in 1999, this is as far as I know the first comprehensive document in English about migrating away from Microsoft servers in corporate environments. The intention was to move immediately from "this is a possibility" to "here are some practical ways of doing it" which is why I used the word "replace". Much of the IT-consuming world at the time never even considered the possibility, and while Windows NT was immature in many ways, so Linux too had many significant weak spots. Microsoft was extremely sensitive to documents like this, and I found out years later that this article was subject to specific disinformation in key Microsoft accounts. This article (written before I joined Linuxcare but contributed to them) was very much about using facts to wage a marketing war.
Viewed from later in the 21st century a good deal of it seems quaint and some of it is wrong, but IT systems at the time just were not as sophisticated.
The document was written in Asciidoc, now known as
Asciidoctor, and this is the plain-text output. Linuxcare added some graphic design and it was on their site for years, long after the company imploded in the dot-com bubble.
How to Replace Windows NT with Linux
====================================
Dan Shearer (dan@linuxcare.com), Linuxcare
Version 0.3
December 1999
Most IT managers already understand the "why" of Linux and Open Source,
and many are considering adopting Linux. Microsoft Windows NT network
administrators are now facing a forced migration to Windows 2000. For
many, however, a migration to Linux makes more sense. Careful planning
is needed, however, in order to manage such a migration responsibly. How
costly will such a migration be? How difficult? How time consuming?
This paper is about the "how" of Linux, concentrating on the
challenges involved with migrating large and heterogeneous network
environments. (If you need more on the "why" aspect, consult the
papers and case studies at www.unix-vs-nt.org.) Replacing Windows NT
is not always quick and easy (although it can be), but the return on a
sound Linux investment is always worth the effort.
A methodology is presented here which will help you plan a migration
that causes minimal disruption while providing maximum functionality.
Microsoft has attempted to complicate these tasks by closing once-open
technologies ("embrace and extend" is what they call it). All they have
succeeded in doing, however, is providing network managers an even
stronger incentive to adopt Linux. In this paper you will find pointers
to tools that allow truly open standards to be gradually deployed in a
mixed Linux/NT environment, making it a simple step, when the time is
right, to eliminate Windows NT altogether.
1. Linux adoption is nothing to be afraid of
============================================
Those who have been doing Microsoft or PC networking for a few years
have probably experienced many previous migrations. Perhaps you have
migrated your systems from Digital Pathworks or 3Com 3+Share to
IBM/Microsoft LAN Manager, then later from LAN Manager to Windows NT
3.1 (if you were brave) or to Windows NT 3.51 (if you were not).
Later, you possibly migrated to NT 4, and from there to every service
pack. Most NT 4.0 service packs were, in effect, major system
upgrades frequently resulting in unforseen difficulties and requiring
careful testing and planning. If you started from a Netware or Banyan
base and moved to NT, you had equally large headaches. Let's not even
talk about Apricot's idea of networking. If you run Windows NT today
then you are facing the spectre of an expensive and forced migration
to Windows 2000.
Migrating to Linux is a task of equal scale. The need to train
support staff, to test the new solution, to preserve data from
previous sysstems, to transfer user accounts and check access
permissions--all of these are the same. On the other hand, migrating
to Linux is easier in many ways because reliable support is available.
With Linux, "reliable support" means not only being able to get the
help you need to solve your current problems, it also means that you
are empowered to prevent such problems from happening again in the
future.
Perhaps the most attractive thing about a migration to free and open
source software is that the skills you pay to develop are actually a
very solid investment. Every operating system supplier claims this, but
think of it this way -- what is all that expensive Windows NT training
worth now that Windows 2000 is here? And was it you or Microsoft who
decided when those skills would become obsolete? Linux skills remain
applicable for as long as you choose to have software around, and there
is rarely any need to upgrade more than a few components at any one
time.
Windows 2000 forces you to a new directory scheme, a complete
new suite of mail, Internet, and other servers, and also demands
enormous hardware resources. What degree of pain will Windows 3000
impose? In comparison, Linux offers a very attractive migration path.
2. How to migrate
=================
If you are reading this document, you probably already know why you
should migrate to a Linux-based system. It's the "how" of doing such a
migration that can often be overwhelming. Here are some quick tips to
keeping the scope of the task to a manageable scale:
- Don't migrate everything at once. Frequently, the best way to handle
a migration is to phase NT out of the server area first, then to later
concentrate on the workstations. There are, of course, many other ways
to divide the task into more palatable pieces. Some people pick classes
of server applications (such as web, database, file/print) and address
each of these in turn. Others choose to have a policy of maintaining
dual environments on the desktop.
- Avoid application development. It is always tempting to fix obviously
bad programs during a migration. It is far better, however, to have
multiple stages in a migration, between which you can address application
issues. The key here is to avoid trying to do everything at once.
- Linux does more, so use its capacities. Doing a cautious and
well-planned migration doesn't mean that you have to lose functionality.
Linux can do things that are impossible with NT and other systems, and
can also save you both time and money.
- Use fewer, more open, protocols. The larger the number of protocols
you use in your networks, the larger the network management overhead.
While "open" can be difficult to define precisely, you can be fairly
certain that if every part of a protocol is documented and there are
free implementations available, then chances are that it's open. If a
protocol is described in one of the Internet RFC documents, that's
another good indication that the protocol is open.
3. A migration methodology
==========================
There are four steps you can follow to simplify a migration away from
Windows NT. The first three of these steps show you how your data is
currently being accessed, and also how this data can be accessed
differently. The final step provides a Venn diagram illustrating
possible deployment options.
The four steps are:
1. List your most important data stores, including those administered
by users and those administered by network managers.
2. List the various client programs that are currently used to access
these data stores.
3. List the protocols and APIs the client software uses when accessing
these stores.
4. Prepare a "protocol intersection" diagram.
These steps are protocol and API driven, and will allow you to map a
variety of migration paths from the "ideal path" to those which are
restricted by various constraints (such as having to be able to run a
particular Windows application). Once you know all the possible routes
you can take, you will then be better able to select those which are most
appropriate for you and your organization.
3.1. Identify data stores
-------------------------
3.1.1. User-maintained data stores
----------------------------------
Chances are that your users keep lots of data sources up-to-date. Some
of these sources may be located on a workstation or a server, and some
these are likely to be "unofficial". If these data sources stop
working, of course, you will be in trouble. Some examples of these
sources are:
- Email, often one of the most important business resources in a
company. Email archives contain huge amounts of information, and users
have probably put a lot of effort into using features of their mail
clients, such as personal address books and mail filters. In what
formats are these data sources stored? What mail servers and protocols
are in use? What authentication methods are they using?
- Calendaring and scheduling. Mail services are often bundled with
collaborative scheduling systems (such as in a Microsoft Exchange
environment), and these can be among the most challenging systems to
migrate due to the lack of standards for these features.
- File resources. Users often have huge amounts of data stored as
collections of Microsoft Office documents on an NT or Netware server.
Information stored in this fashion is often vital, but can difficult to
search and migrate.
You might consider re-engineering large filestores like these (but not
as part of your migration) Look at the structure of the documents. If
extensive use has been made of Microsoft Office, WordPerfect, or other
such templates, then it is quite likely that the same functionality
can be delivered more reliably and cheaply using a Web forms interface
to a database. In some cases, this can eliminate the need to have an
office suite on the client systems, particularly those used by telephone
sales or customer service staff.
- Databases. On the server side, these include packages such as Oracle
and Microsoft SQL Server, and on the client side, packages such as
Microsoft Access, xBase, and more. The goal is to maintain the same
interface for the users who keep these databases up-to-date, which is
often a service that keeps the company running. A long-term strategy
may be to move the interface to the Web, but in many cases the
short-term answer is to retain the Windows client interface while
re-engineering the protocol/API used to access the database itself.
- Web servers. There are three kinds of web data to consider:
-- Raw content. Web site content maintainers need to know that their
current content editing programs will still be usable after the migration
is complete. This usually means that Windows programs such as FrontPage
and PageMill must continue to work. What information is stored in these
formats? How is this information accessed?
-- Dynamic content. Your Web developers also need to know whether their
NT-specific scripts and applications will change. Often the answer is
"no", or "not much". NT users of PHP and Perl should be almost
completely insulated from changes. Sometimes, when complicated
functionality is required (perhaps because business logic has been
embedded in Microsoft ActiveX objects or other proprietary technologies)
the same functionality can be emulated using standard open technologies.
You will probably be able to split the functionality up and replicate
the majority of it on Linux Web servers. The remaining functions can
stay on NT systems until you have time to replace them with open
solutions.
-- Dynamic content from other sources. Dynamic Web sites often pull
their data from many sources, often in Microsoft-specific ways. List
the data sources being used and the methods being used to access them.
3.1.2. Data stores maintained by network managers
-------------------------------------------------
The following are examples of data that might be maintained by your
network or system administrators, including user and machine
information. You will likely have more and different data sources than
those presented here, particularly if you support many other operating
systems on your network.
- User database. This would include the name and full details for each
network user, and their associated security properties. Windows
NT servers store this information in one SAM database per domain.
- Groups and permissions. This information is also stored in the SAM
database, but is often replicated in supplementary databases because
SAMs have a restricted set of fields relating to groups.
- Computer and network database. Every computer has certain physical
and network properties which need to be maintained in a central data
store of some sort. Windows NT servers don't tend to store this
information at all except through unreliable NetBIOS names and
per-machine SID numbers. Good Windows NT network administrators usually
build custom databases in which they can more reliably store this
machine-specific information, including IP addresses, physical
locations, and other related data.
- Backup archives. These will be maintained in some NT-specific format,
frequently devised by third-party software vendor. The native Microsoft
backup facilities aren't very useful, so this third-party software is
often necessary.
- Server logs. Windows NT access logs are unwieldy, and are rarely
authoritative in a multi-domain environment. If you want to migrate
this functionality, you will be quickly and pleasantly surprised by the
log-management tools that come with Linux.
3.2. List current client software
---------------------------------
While there is a huge range of client software available for Microsoft
Windows workstations, there are actually fewer than 10 suppliers
providing the majority of the applications used in large networks. Bundling
arrangements with a few top-tier suppliers such as Microsoft, SAP,
Lotus, and Oracle means that solving client migration problems with
these vendors' systems usually solves the majority of other client
problems as well.
The lack of drop-in replacements for some client software (especially
Microsoft clients) is not usually a problem. The protocols these
clients use can be catered to by Linux servers, so a multi-stage
migration interspersed with some client re-engineering usually
provides a sufficient solution. In any case, few sites start by
migrating client workstations to Linux immediately in order to delay
training and other human resource issues.
The easiest way to start planning client system migration is to
construct a table, such as the following, which addresses the specific
requirements of your organization.
Microsoft Windows Client Software
Product Purpose Can Use Linux Functional Linux
Servers? Replacements Version?
............. ............. ............. ............. .............
MS Outlook Individual Yes Many, None
Express and Shared including
(several Email, Lotus and
concurrent Scheduling Netscape
versions
exist with
different
feature sets)
Netscape Individual Yes Any Yes
Messenger and Shared Internet-compliant
Email Mail Client
MS FrontPage Publishing Yes Very many None
web pages,
including
image maps
and CGIs
MS Internet Viewing Web Yes Many Not yet, but
Explorer Pages runs on other
Unix
platforms
MS Office Edit Yes Several good No
structured existing and
documents and more
spreadsheets announced
Web-based Organisation-wide Yes Not an issue Yes, any
Customer CRM tasks since it is Linux web
Relationship web-based browser with
Management Javascript
package such as
Netscape or
Opera
In-house MS Maintaining Yes, by Many, None
Access vital several means including
Database database kept Oracle, web
on a file front-ends
server and xBase but
requires
rewriting
client
In-house Maintaining Yes As above; Announced
Oracle Client vital must rewrite
Program database kept client
on Oracle program
Server
Remote Displaying No X Window No
Windows screens from remote
Application Windows NT, application
Display Terminal display
Server
Edition
3.3. List protocols and APIs used by client software
----------------------------------------------------
The following is an example of a list you might create when recording
the protocols relevant to the Microsoft client software used within your
system. Most networks will use most of the protocols shown below, but
there may be a few used on your network that aren't included here. When
you're not sure what protocols are being used by a particular system,
you should use a network sniffer to identify them rather than relying on
the product brochures.
The interesting thing about this list is that nearly all non-standard
Microsoft technology is based either on something that already exists,
or on something that is documented at a lower level. Microsoft's
"embrace and extend" policy is meant to eliminate competition, but it
has also enabled and motivated teams of programmers to unscramble the
Microsoft protocol extensions at roughly the same rate that Microsoft
devises them.
What this means is that while you should make every effort to move
networks entirely to open and standardised protocols that are not
controlled by Microsoft, there are some excellent bridging solutions
available which implement Microsoft's proprietary protocols under Linux.
Not all of the protocols Microsoft uses are proprietary, of course. In
many instances, the non-standard protocols are simply preferred by
Microsoft clients when talking to Microsoft servers. These systems can
often be easily reconfigured to use standard open protocols when
necessary. Outlook Express is a classic example of this, in which IMAP
is supported quite extensively, but the client is unable to connect to
both an IMAP server and a native Exchange server at the same time, even
if the Exchange server is running the IMAP service.
In the following table, "MSRPC" means Microsoft's preferred method of
communicating control data in NT networks: DCE/RPC over Named Pipes
over SMB over NetBIOS. All of these acronyms are explained in the
glossary, although for practical purposes how it works is irrelevant.
Similarly, "MSRDP" means Microsoft's equally complicated way of sending
screen images over a network, such as from Microsoft Windows NT
Terminal Server Edition. This protocol is a proprietary variant of
T.SHARE (ITU T.128), over the Multipoint Communications Service (MCS),
over the ISO Data Transport Protocol, tunneled over TCP.
Protocols Preferred by Microsoft Products
Purpose Preferred Protocol/API Documented?
...................... ....................... ......................
MS Outlook Express MAPI streamed over Encrypted in an undoc
clients to talk to MS MSRPC way
Exchange Server
FrontPage clients to FrontPage Server Undocumented
talk to MS Internet Extensions
Information Server
MS Internet Explorer Extensions to HTTP and Undoc
Clients to talk to MS HTML
IIS
MS Access clients to ODBC streamed over Extended ODBC, TDS
communicate with MS Tabular Data Stream undoc
SQL Server (TDS)
MS clients to talk to Control requests via Undoc requests & undoc
NT Servers for MSRPC encrypt
anything related to
the SAM,
authentication or
administering NT
services
MS File/Print clients SMB (NT clients use Partly doc
to transfer files to MSRPC)
any MS File/Print
server
MS clients to locate NetBIOS Name Server Partly doc
MS server and clients
Transport for previous NetBEUI always Doc, but a dying MS
three protocols preferred when present protocol. A free version has
and possible been released for Linux by
Procon, but it is too early
predict what will happen with it
MS clients to link WINS Mostly doc
NetBIOS names and
Internet names and
addresses
MS clients to access MSRDP Built on existing
remote Windows screens standards with
proprietary extensions
Protocol Equivalents and Implementations
Protocol Free Open Alternative Comments
Implementation
................. ................ ................. ................
MAPI streamed No IMAP mail access The Cyrus mail
over DCE/RPC for protocol and and related
mail stores related standards products suite
at
asg.web.cmu.edu/cyrus
are an excellent
and scalable
replacement for
Microsoft
Exchange
MAPI streamed No ACAP Calendar If you want to
over DCE/RPC for access protocol keep Outlook
calendaring and related Express
standards Calendaring and
Scheduling you
can use HP
Openmail for
Linux,
www.hp.com/openmail
FrontPage Server Yes, by Mrs WebDAV, FPSE is only
Extensions Brisby, www.webdav.org needed with
www.nimh.org/fpse.shtml Microsoft Front
Page
MS Extensions to No Yes Important bits
HTTP and HTML implemented in
browsers on
Linux and
Windows from
Netscape, Opera
and others.
Users won't miss
SMB-in-HTTP
ODBC streamed Yes, Seems to be a Better to use
over TDS www.freetds.org general lack of ODBC over a
standards truly open
transport, eg
odbc.linuxbox.org
NT Control Yes, in Samba SNMP, which has Undoc requests &
requests over numerous Linux undoc encryption
DCE/RPC implementations. - a truly
Also a large horrible
range of web protocol
control tools
MS File/Print Yes, in Samba Partly doc. A
clients to (server) and solved problem
transfer files to smbfs/smbclient
any MS File/Print (clients)
server
MS clients to NetBIOS Name Internet standard Only partly doc, but
locate MS server Server in Samba Resource Location well-implemented
and clients Protocol, or in Samba anyway
alternatively
LDAP
Transport for NetBEUI always Doc, but a As of March 2000 there
previous three preferred when dying MS is a free Linux
protocols present and protocol. Even implementation from
possible Microsoft doesn't www.procom.com,
recommend it.
MS clients to Samba WINS Use DNS instead! Mostly doc
link NetBIOS server
names and
Internet names
and addresses
3.4. Draw a Protocol Intersection Diagram
-----------------------------------------
Using the tables that you have drawn up in the previous steps, you
should be able to list the following (see the Protocols and Software
Reference for more information):
1. The set of protocols/APIs that can be used to make the existing
client software talk to servers (whether currently in use or not).
2. The set of protocols that free server software can use to serve the
existing data stores.
3. The set of protocols free client software can use to access
information from the data stores.
This can be represented in a Venn diagram:
[insert venn1 graphic here]
4. Do it!
=========
Once you understand where your data is and how it can be accessed, you
will be able to draw up a feasible multi-stage migration plan. This
is always highly specific from site to site, but if you follow the tips
given earlier in this paper you will be able to design a staged
migration based upon more open and standardised protocols.
After this point, however, the migration is up to you and will depend
heavily on your knowledge of the network. Which parts of your
infrastructure can be most easily migrated? It may be the file servers
or perhaps the Oracle databases. Are there some performance bottlenecks
that Linux can solve for you? If so, perhaps these are the first areas
you should address.
5. Appendix - Protocol and Software Reference
=============================================
Many of the software packages in this reference run on most kinds of
Unix, as well as on Linux, without modification. Where you see "Unix"
in the following table, you should therefore include "Linux" as well.
The acronyms in this section are explained in the Glossary.
5.1. File Serving
-----------------
Protocol Software
.................................. ..................................
Microsoft:
SMB suite Windows 95, 98, Samba on Unix and
others, print servers, Netapp
filers et al
SMB+NT extensions Windows NT, Windows 2000, Samba on
Unix and others
Novell:
IPX/SPX suite Novell Netware, mars_nwe under
Linux
Unix:
NFS nfsd - standard with any Unix
AFS Andrew Filesystem - free
distributed filesystem for Unix
Coda free distributed filesystem with
mobile synchronisation
FTP Servers available for any
Internet-capable operating system
Apple:
Appleshare Apple file server from Apple,
netatalk for any Unix
The Microsoft model of networking encourages use of file sharing
rather than application sharing. That is to say that every workstation
has a complete copy of an application binary stored locally while data
is stored on servers. This is the most common use for NT servers.
Microsoft Windows Workstations are often also used similarly with
Novell Netware. If this describes your situation, then you would do well
to think about accessing the same data via the Web.
Linux is able to serve files over all of these protocols. If required,
Linux can serve files over all of them simultaneously. Configured
properly, Samba running on Linux is able to perform as an SMB server at
least as well as Windows NT. On large installations (ie on hardware more powerful than anything Windows NT can run on) Samba happily handles hundreds of thousands of simultaneous SMB clients.
Few of these protocols are suitable for general Internet use due to
timing and resource location issues. Currently, there is no
widely-adopted file access protocol with is simultaneously secure, able
to operate between physically distant machines, and easy to integrate
into modern authentication architectures.
5.1.1. Migration Comments
-------------------------
In some cases, a simple redesign of your application structure may allow
you to dispense with file sharing. For example, making data accessible
via the Web rather than through proprietary Microsoft Office files.
Regardless, however, duplicating Windows NT shared file resouces on
Linux is trivial. The challenge lies in getting the authentication
systems right, as discussed below. The PAM authentication system allows
a very flexible migration strategy to be adopted, independent of whether
the authentication database is an NT domain, an NIS domain, an LDAP
server, or a custom SQL database.
5.2. Client-side Filesystems
----------------------------
Protocol Software
.................................. ..................................
Linux:
NFS Standard with Linux (mount -t nfs)
SMB Standard with Linux (mount -t
smbfs)
IPX Standard (mount -t ncpfs) and
enhanced client from Caldera
Coda Standard with Linux (mount -t
coda)
Apple Free add-on to Linux (mount -t
afpfs)
Microsoft:
SMB Comes with Windows 95, 98, NT,
2000
IPX Comes with Windows 95, 98, NT,
2000, not as functional as SMB
NFS Third-party addons, but no really
good ones. Ignore them
Coda Free addon, but not widely known
or tested
While Microsoft has failed to dominate the LAN server market, it has
also successfully avoided including any protocol other than SMB on its
client operating systems. Microsoft has accomplished this by keeping
the development information required to write a successful client
filesystem a proprietary secret, available only if you purchase a
software development kit under non-disclosure terms. Samba, however,
has made it unnecessary to reverse-engineer any of the programming
interfaces involved, because Samba allows almost everything to be done
on the server side.
By locking out serious client-side filesystem competiton, Microsoft
has forced Windows users to forego the advantages of modern
filesystems. Fast, secure, and intelligent distributed filesystems
exist, but Windows users cannot expect to be able to use these any time
soon.
5.2.1. Migration Comments
-------------------------
It is common to keep existing Microsoft Windows clients unchanged during
the first stages of a migration. It is also common to keep using these
clients with traditional file stores, even though it might be better to
use the Web instead (see comments under "File Serving"). If this is the
case in your migration strategy, you should be using SMB. Samba, the
free SMB implementation, is extremely capable and robust, and has a
large and dedicated development team. Microsoft Windows clients are
also better integrated with SMB (and therefore Samba) than they are with
Novell IPX (or mars_nwe). While NFS can be made to work with Windows
clients, it is a very poor and insecure system, and isn't really worth
the effort required to implement it.
Using Samba, it is possible to pass some of the benefits of modern
networked filesystems on to the Windows clients. Pay careful attention
to locking issues, however, when using Samba as a gateway in this
fashion. Read-only access does not present any locking issues (such as
sharing CD ROMs, or sharing a network filesystem via a web server) but
in any read-write situation there is potential for serious locking problems to arise.
5.3. Printing Services
----------------------
Protocol Software
.................................. ..................................
Servers:
lpr Any Unix, Windows NT, Novell, many
others
SMB Samba on Unix and others, Windows
NT
IPX mars_nwe on Linux, Netware,
Windows NT
Clients:
SMB Samba on Unix and others, Windows
95 and Windows 98
lpr Any Unix, Apple, Windows NT
Workstation
IPX Netware clients
The only major platforms that cannot use the Unix lpr printing protocol
natively are 16-bit Windows 95 and Windows 98. Third-party addon
software is available for these operating systems.
5.3.1. Migration Comments
-------------------------
A common solution is to move to using lpr throughout an organisation
except where 16-bit clients are concerned. These 16-bit clients, can be
served from Samba. If each client has to be reconfigured for other
reasons anyway, however, then an lpr solution should be used on 16-bit
Windows systems as well in order to reduce the number of protocols being
used.
When dealing with Windows NT clients, it is just as easy to connect to
printers via lpr as via SMB. This being the case, you may choose lpr in
preference to SMB to avoid an extra layer of complication in your
network. It is sometimes better, however, to send all Windows client
printing through Samba so you are able to later make changes that affect
only the Windows printer users. It is more difficult to isolate the
Windows users if they are all using lpr directly.
5.4. Email Services
-------------------
In the following, "All major client software" means Netscape Messenger,
Microsoft Outlook Express, mutt, pine, Lotus Notes cc:Mail, Pegasus,
Qualcomm Eudora and others of similar sophistication.
Protocol Software
.................................. ..................................
Servers:
SMTP Any mail transport on Unix and
most on Windows NT and other
operating systems. SMTP is more
flexibly implemented on Unix than
any other platform
RFC822 & MIME These mail encoding and formatting
standards are supported by any
Internet-compliant mail transport
and reading software
IMAP Cyrus imapd (free), uWashington
imapd (free), Microsoft Exchange,
many others
POP An ancient but still widely-used
protocol. Useful in organisations
without a well-planned email
strategy, where mail folders tend
to be store on local hard discs
(probably not backed up either!)
MAPI (over MSRPC) Microsoft Exchange, HP Openmail
HTTP Many mail store servers have a web
interface. Microsoft Exchange has
one, as has Lotus Notes and
others. On Unix a component
approach is preferred, and there
are many web interfaces to IMAP
servers available
LDAP Mailing lists, accounts and mail
permissions ought to be stored in
an LDAP database. Exim, qmail,
Sendmail and others on Unix,
Netscape Mail Server on all
platforms, other
Clients:
IMAP All major client software
MAPI Most Windows clients, including
Microsoft, Lotus, Pegasus and
Netscape. No Unix clients because
it is a Windows-only API
SMTP Just about all clients on all
platforms. SMTP is the only
Internet-standard way of
submitting email. There are secure
versions of it. Microsoft Outlook
clients can do SMTP but prefer the
strange MSRPC format where
available
HTML All major client software can
handle messages encoded in HTML,
however plain text is always the
best option for message body text.
If you want a structured document
format enclose it as an attachment
or put it on the web and email the
URL
RTF This Microsoft Word Processing
format is supported natively by
Microsoft Outlook, and by external
viewers in other mailers. It is a
very bad ide to have this enabled
in any context. Disable it.
RFC822 & MIME All major clients software.
However there are many MIME RFCs
to do with internationalisation,
security, large files and more.
Microsoft do not try to provide a
complete implementation, which is
difficult for some Asian and
European languages and anyone who
wants secure email.
LDAP Star Office mail, Netscape
Communicator, Pegasus. Not the
counterpart of LDAP in a mail
server. LDAP on a client should be
used for things like addressbooks.
5.4.1. Migration Comments
-------------------------
Any large deployment of mail servers has to be customised to fit the
site. Commercial software always seems to make this level of
customisation difficult or impossible, and as a result, free software
tends to be much better for the server side of things. On the other
hand, commercial software currently fares better on the client side.
Some commercial clients, such as Mulberry, are outstanding for their
standards compliance. There are, of course, some equally good free
client alternatives.
The most scalable and flexible Linux-based IMAP mail store solution is
the free Cyrus mail server. There are many choices available for the
mail transport component, including Sendmail, Exim, Qmail, and others.
With software like this, along with the SASL authentication mechanism,
the ACAP client configuration protocol, and LDAP, it is possible to
build an extremely powerful enterprise system using only free software
components. The client software can still be Windows or Macintosh
Eudora, Outlook Express, Netscape Communicator, or any of dozens of
other available client systems.
Moving away from Microsoft Exchange is trivial from an email
point of view because Microsoft Outlook Express clients are also capable
of using the IMAP protocol. You can experiment with this by switching
your Exchange server to IMAP-only and changing the configuration of your
Outlook Express clients. Once this works, you can implement a
Linux-based IMAP server without your users ever noticing the
difference.
If you use Lotus Domino or Netscape Mail Server, there have been recent
announcements regarding the availability of this software for Linux
platforms. The simplest route for this part of your migration may be
simply to transfer your existing software license to a Linux version of
the same software when the product is made available.
The calendaring and scheduling functions of Exchange, Domino, and
Netscape Calendar Server are dealt with in the next section.
One of the tricky things about migrating IMAP servers is moving mail
and setting permissions for thousands of mailboxes at a time. One of
the best things to do is use the Perldap library. Sample code has been
posted to Cyrus forums for doing this, including with web interfaces.
5.5. Calendaring and Scheduling
-------------------------------
Calendaring is a strange area. Most products support most of the
standard protocols, but interoperability between clients and servers
from different vendors is still very poor. No calendar access protocol
yet exists, which is mostly because of the intertia behind the
commercial calendaring systems and their proprietary protocols
(Microsoft and Lotus are both major players in the IETF standards
committee). Internet standards in this area have only recently been
finalised, and at this time only free software implements calendaring
that is in compliance with the few standards and standards drafts that
currently exist.
Cybling Systems has a project to attempt to untangle these issues at
http://www.cyblings.on.ca/projects/calendar.
Protocol/format Software
............... ........
Servers
-------
MAPI over a transport MS Exchange, HP Openmail. Not a published standard
Other proprietary Calendar servers with Star Office, Netscape Suite Spot,
Corporate Time and others
Web-based access All major
iCalendar, vCalendar All major, except Microsoft
vCard All major, except Microsoft
SMTP All major
ICAP Anything using the MCAL (Modular Calendar Access Library)
library, such as www.bizchek.com. PHP and GTK+
applications exist. This is not an Internet standard and
the draft has expired
CAL The official direction of the ISO and IETF bodies for
calendaring standards. No product anywhere implements
this Internet draft
LDAP
Clients
-------
MAPI over a transport MS Schedule+, MS Outlook Express
Other proprietary All clients, due to lack of calendar access standard
vCard Most major
SMTP Some minor
LDAP Netscape, StarOffice, other minor
The paper at
http://www-me1.netscape.com/calendar/v3.5/whitepaper/index.html
summarises a vendor's view of Internet calendaring standards (provided
the vendor is not one of the two who have millions of existing
proprietary clients and the ability to stall the standards process!)
The best that any calendar software implementor can do at the moment
is implement the following protocols: iCalendar, vCalendar, vCard,
SMTP (for e-mail notification), LDAP (for details of all users, groups
and items that can be scheduled) and X.500 (in very large corporate
environments). This will change as soon as the ICAP Calendar Access
Protocol or its equivalent becomes an Internet standard.
5.5.1. Migration Comments
-------------------------
If at all possible, you should use a Web-based calendar client with a
server that supports as many Internet standards as possible. If you
must use Microsoft Outlook Express, then HP Openmail is the only
non-Microsoft option available. The calendar servers from the Star
Office and Netscape Suite Spot server suites can provide good interim
solutions in many situations. The Corporate Time calendaring product is
an example of a calendaring system that uses all the available standards
(see http://www.cst.ca). There are other examples, but for the moment the
area is fraught with difficulty.
5.6. Web Servers
----------------
The Apache Web server is free software that is currently used on over
55% of Web sites on the Internet, with Microsoft IIS being used on 24%.
Reliable data is hard to find for Intranet deployments, but it seems
likely that Microsoft is being used on a higher percentage of Intranet
servers.
Web publishing is best done using the standard WebDAV protocol
(http://www.webdav.org/other/faq.html), but the widely-used Microsoft
FrontPage packages use the undocumented Front Page Server Extensions
protocol. Both of these are implemented on Linux.
Protocol/API Software
............ ........
HTTP v 1.1 All major
ISAPI prog. interface All major
ASP scripting IIS, Apache
PHP scripting Apache, IIS others
Data interfaces eg ODBC Apache, IIS, others
Front Page Extensions Apache (via http://www.nimh.org/fpse.shtml)
WebDAV (open FPSE) Apache, Netscape
5.6.1. Migration Comments
-------------------------
Microsoft is not dominant in the Web server market, so there are not
nearly as many difficulties in migrating to a non-NT system.
Administrators should find Apache easier to configure and run for large
and mission-critical sites.
One of the big issues involved when migrating away from Microsoft IIS
servers is the use of Active Server Pages (ASP). If the language used
for ASP is Perl rather than Visual Basic then there should be minimal
difficulties (see http://www.on-luebeck.de/doku/asp/).
A migration to Linux usually includes replacing IIS with Apache. You
can start this aspect of the migration by running Apache on a Windows NT
server if there are OS-specific integration issues that require more
time to solve.
There are other free Web server solutions available for Linux,
including Roxen (http://www.roxen.com), that have particular strengths
used for electronic commerce and in a couple of other specific areas.
Zeus (http://www.zeus.co.uk) is a commercial Web server available for
Linux which is quickly increasing its market share (see the surveys
available at http://www.netcraft.co.uk).
5.7. Database Servers
---------------------
The Linux database server market is booming. Microsoft is currently the
only major vendor who has not produced a closed-source Linux version of
their database offering. PostgreSQL and MySQL are the leading free
software contenders.
Most database servers are accessible via the ODBC API which packages SQL
calls. Differences arise as to how ODBC calls are transported, which is
where ODBC "bridges" come in to the picture. ODBC bridges obviate the
need for common protocols, albeit in a rather clumsy fashion.
There isn't much to discuss in the way of protocols, except that Sybase
and Microsoft SQLServer use a partially-undocumented Sybase protocol
called TDS when communicating ODBC queries. Microsoft has extended this
protocol in even more undocumented ways, but a free implementation does
exist (see http:/www.freetds.org). This is important only because
Microsoft Access uses TDS by default when communicating with SQLServer.
5.7.1. Migration Comments
-------------------------
If you can eliminate TDS from your network, you will reduce the overall
complexity of your database system.
If you have an NT data source that you want to be able to access from
Linux, the ODBC Socket Server (http://odbc.linuxbox.com) will allow you
to do this.
Note that it is important to get the Primary Key Definition right when
making ODBC calls to non-Microsoft databases from Microsoft Access.
5.8. Firewalls, Gateways, DNS and other Basic Internet Services
---------------------------------------------------------------
This is one area where Microsoft has made relatively little headway in
corrupting Internet standards. Microsoft has produced variants of DHCP,
PPP, and numerous other "glue" protocols, but remains a minor player
in the network management layer. As such, Microsoft is unable to
influence the market at the expense of open Internet standards.
If you are running any of these services on a Windows NT machine, then
you are putting yourself at risk. Windows NT simply is not able to
provide any verifiable degree of security when operating as a firewall
due to Microsoft refusing to allow peer review of their code. For the
same reason, even if the Microsoft DNS server wasn't already famous for
being unreliable, there have been enough security holes identified in
the free open-source DNS server implementation to warn anyone away from
relying on a very young, closed-source implementation.
5.9. Things Not Covered in this Paper
-------------------------------------
o Windows source code migration. If you are fortunate enough to have
the Windows source code to applications that you wish to run on
Linux then there is a great deal that can be done to make this
as simple as possible without requiring a code rewrite. This will
be the subject of another Linuxcare paper!
o Authentication systems, Linux PAM and mixed authentication
environments. With a combination of PAM on Linux and Unix systems and
LDAP as the master authentication database it is possible to authenticate
against every likely protocols. Samba can authenticate Windows clients
using PAM to talk to LDAP, RADIUS dialup authentication servers can do
the same, as can any other service which runs on Linux. There is also
an LDAP schema which supplies all required NIS+ information so that
LDAP becomes a true distributed directory service. This is a whole
paper on its own!
o The Service Location Protocol (RFC2608). This is for locating
services of any kind on an Intranet, with defined mappings to
LDAP and other standard repositories.
o Database application migration to free Linux databases. Recent work
by the Postgresql team means that Postgresql can now deliver all the
functionality of large commercial databases such as Oracle.
o Email address book formats and access mechanisms, especially
relating to ACAP and LDAP.
o Extent of the Calendaring and Scheduling protocol mess, and recent
positive signs.
6. Glossary of Terms and Acronyms
=================================
ACAP
- Application Configuration Access Protocol, a protocol being developed
by the IETF. ACAP supports IMAP4-related services.
http://asg.web.cmu.edu/acap/
AFS
- Andrew File System, an old but innovative distributed
filesystem. See the FAQ at
http://www.angelfire.com/hi/plutonic/afs-faq.html. Modern
replacements exist, such as Intermezzo by Linuxcare employee Phil
Schwan.
Apache
- An Open Source Web server developed by the Apache Group, a large
group of open source developers from many companies including
Linuxcare (Martin Poole and Rasmus Lerdorf.) According to recent
surveys, it is estimated that Apache is used on approximately 58% of
servers on the Web. You can get more information about Apache and the
Apache Group at http://www.apache.org.
API
- Application Program(ming) Interface, a set of routines, protocols, and
tools for developing software applications.
ASP
- Active Server Pages, a Microsoft specification for creating
dynamically-generated Web pages that utilizes Microsoft Active X components,
usually via Microsoft VBScript or Perl.
CAP
- Calendar Access Protocol
Internet Draft draft-ietf-calsch-cap. See http://www.imc.org/ids.html#calsch.
CGI
- Common Gateway Interface, a specification for transferring data
between a Web server and a CGI program. A CGI program is any program
designed to accept and return data that conforms to the CGI
specification. CGI programs can be written in any number of programming
languages, including C, Perl, or Java. For more information about CGI,
see http://www.w3.org/CGI/.
Coda
- A free distributed filesystem intended to solve the problem of disconnected
filesystems (eg wandering laptops.) Replaced by Intermezzo.
Corporate Time
- Example of commercial corporate scheduling packages that tries to be
as standards-compliant as possible. http://www.cst.ca/
CRM
- Customer Resources Management. A buzz-word for software that manages a
database of all information to do with potential, existing and past customers.
Cyrus mail server
- An extremely robust and scaleable free email storage server. Tends
to cooperate with the leading implementation of new standards
including SASL, ACAP and Sieve.
DCE
- Distributed Computing Environment, a suite of technology services
developed by The Open Group (http://www.opengroup.org) for creating
distributed applications that run on different platforms.
DHCP
- Dynamic Host Configuration Protocol, a protocol for assigning dynamic
IP addresses to devices on a network. For more information see RFC1531
(ftp://ftp.isi.edu/in-notes/rfc1531.txt).
DNS
- Domain Name Service, an Internet service that translates domain names
into IP addresses.
Eudora
- A popular commercial, closed source email client developed by
Qualcomm, Inc. For more information see http://www.eudora.com.
Exim
- One of the leading free mail transport programs. http://www.exim.org.
FPSE
- Front Page Server Extensions, an undocumented method invented by
Microsoft for having web publishing software write to a web server.
Completely replaced by the Internet DAV standard.
FTP
- File Transfer Protocol, a standard internet protocol used for
sending files. For more information, see RFC959
(ftp://ftp.isi.edu/in-notes/rfc959.txt). FTP is still the only
Internet-wide file-specific transfer protocol, after more than 20
years.
GTK+
- Gimp ToolKit, a small and efficient widget set for building graphical
applications.
HP OpenMail
- Hewlett Packard's answer to Microsoft exchange. By simply replacing
the file MAPI.DLL on the client workstations OpenMail can be used as
a server for Microsoft Outlook Express clients including calendaring
and scheduling. The replacement MAPI.DLL does not communicate with
the OpenMail server using MSRPC. http://openmail.hp.com
HTML
- Hypertext Markup Language, the main language used to create documents
on the Web. For more information see http://www.w3.org/MarkUp/.
HTTP
- Hypertext Transfer Protocol, the underlying protocol used on the Web,
defining how messages are formatted and transmitted, and how servers and
browsers should respond to various commands. For more information see
RFC2616 (ftp://ftp.isi.edu/in-notes/rfc2616.txt).
iCAL
- Internet calendar formal public identifier.
http://www.imc.org/draft-ietf-calsch-icalfpi See
http://www.imc.org/ids.html#calsch
iCalendar
- see iCAL
ICAP
- Internet Calendar Access Protocol. See the www.imc.org url above
IETF
- Internet Engineering Task Force http://www.ietf.org
IIS
- Internet Information Server, Microsoft's closed-source Web server
that runs on Windows NT. According to the latest figures from Netcraft
http://www.netcraft.co.uk, IIS' market share is dropping each month.
IMAP
- Internet Message Access Protocol, a protocol used for retrieving email
messages. For more information see RFC2060
(ftp://ftp.isi.edu/in-notes/rfc2060.txt).
imapd
- Generic name for a daemon, or server process, use to handle IMAP
connections.
Intermezzo
- A distributed file system with a focus on high availability. The
principal developer is Phil Schwan, from Linuxcare. For more
information see http://www.inter-mezzo.org.
IPX
- Internetwork Packet Exchange, an undocumented and closed-source
networking protocol used by Novell Netware operating systems.
ISAPI
- Internet Server Application Program Interface, an API developed by
Microsoft for it's IIS Web server. Some other Web servers support
ISAPI.
ISO
- International Organization for Standardization, an organization
composed of national standards bodies from over 75 countries. For
more information about the ISO, see
http://www.iso.ch/welcome.html. ISO standard typically take years
longer to develop than Internet standards. The ISO standards for
computer protocols were completely superseded by Internet standards.
ITU
- International Telecommunication Union, an intergovernmental
organization through which public and private organization develop
telecommunications systems. The ITU is a United Nations agency
responsible for adopting international treaties, regulations, and
standards governing telecommunciations. For more information about the
ITU, see http://www.itu.int/.
ITU T.128
- T.128 is the Internation Telecommunication Union's recommendation
regarding Multipoint Application Sharing. For more information, see
http://www.itu.int/. No open source implementations and closed-source
implementations do not have a good record for interoperability. Use
the X Window system instead!
LAN
- Local Area Network, a computer network that spans a relatively small
physical area.
LDAP
- Lightweight Directory Access Protocol, a set of protocols devised for
accessing information directories. LDAP is based on the standards
contained within the X.500 standard, but is significantly simpler.
LDAP supports TCP/IP, which is necessary for any type of Internet
access. For more information, see RFC2251, RFC2252, RFC2253, and RFC2589.
lpr
- The Unix Line PRinter protocol. Ubiquitous protocol for transferring
print jobs around a network.
MAPI
- Message Application Programming Interface, a system that enables
Microsoft Windows' email applications to communicate for distributing
mail. This API is only relevant to Windows machines.
mars_nwe
- Open source clone of the most functional parts of Novell Netware,
usually run on Linux.
MCAL
- Modular Calendar Access Library. http://mcal.chek.com.
MIME
- Multipurpose Internet Mail Extensions, a specification for formatting
non-ASCII messages so they can be sent over the Internet. Many email
clients support MIME, enabling them to send and receive graphics, audio,
video, and other different file types. There are many, many MIME-related
RFCs (see http://www.imc.org for more information.)
MSRPC
- Microsoft's preferred method of communicating control data in NT
networks: DCE/RPC over Named Pipes over SMB over NetBIOS. The only
open implementation of this is by Luke Leighton of Linuxcare, whose
work can be seen in Samba and is explained in his book "Samba and
Windows NT Domain Internals" available from MacMillan Technical
Publishing.
Mulberry
- Mulberry is a closed-source email client for Microsoft Windows or
Apple Macintosh platforms with a Linux version in beta as of January
2000. For more information see
http://www.cyrusoft.com/mulberry/mulbinfo.html. Mulberry is remarkable
for its excellent implementation of Internet standards, including new
ones such as ACAP. In contrast, applications such as Microsoft Outlook
Express and Netscape Communicator frequently implement standards
poorly, making more work for administrators and in some cases
penalising the end-user.
MySQL
- MySQL is a multi-user, multi-threaded SQL database server. MySQL is a
client/server implementation that consists of a server daemon "mysqld"
and many different client programs and libraries. For more information,
see http://www.mysql.org. MySQL and Postgresql between them are the most
popular open source databases. MySQL is the lighterweight of the two.
NetBEUI
- NetBIOS Enhanced User Interface, an enhanced version of the NetBIOS
protocol used by network operating systems such as LAN Manager, LAN
Server, Windows for Workgroups, Windows 95/98, and Windows
NT. Documentation is now available but most regard it as a dead
protocol. However it is the best SMB transport protocol for the
millions of DOS machines still in use and free closed-source NetBEUI
stacks for DOS are available for download from IBM and Microsoft.
A free Linux version ready for use with Samba was made available in March
2000 at www.procom.com as this paper was being completed.
NetBIOS
- Network Basic Input Output System, an application programming
interface that augments the DOS BIOS by adding special functions for
local area networks. NetBIOS over TCP/IP is defined in RFC1001 and RFC1002.
This is a very poor protocol, implemented in several open source products
including Samba (www.samba.org) and derivatives.
Netcraft
- Netcraft is an internet consultancy based in Bath, England. The
majority of its work is closely related to the development of internet
services. Netcraft is most famous for its website which is devoted to
surveying Internet technologies. For more information, see
http://www.netcraft.com.
NFS
- Network File System, an open system designed by Sun that allows all
network users to access shared files stored on different platforms. NSF
provides access to shared files through the Virtual File System that
runs via TCP/IP. NFS is demonstrably a poor choice for running on
Windows-based PCs, due to the bad design of Windows.
nfsd
- Generic name for a daemon, or server process, use to handle Network
File System connections. Think of it as the Samba equivalent for the
NFS protocol.
NIS
- Network Information Server, a Unix directory system for distributing
system configuration data such as user and host names between computers
on a network. Can be linked to an LDAP database transparently to the
client systems, see www.padl.com.
ODBC
- Open DataBase Connectivity, a database access method developed by
Microsoft and widely implemented. ODBC is an API not a protocol.
PAM
- Pluggable Authentication Modules, a general infrastructure for
module-based authentication. For more information, see the Linux-PAM
pages at http://www.kernel.org/pub/linux/libs/pam/.
Pegasus
- A very popular closed-source email client for Windows and Macintosh
platforms, available free of charge from New Zealand-based Pegasus
Computing. For more information, see http://www.pegasus.usa.com/.
Perl
- Practical Extraction and Report Language, a programming language
originally developed by Larry Wall, now maintained by an extensive team
of Open Source developers. Perl is one of the most popular languages
for writing CGI scripts. For more information, see http://www.perl.org.
perldap library
- PerLDAP, or Perl-LDAP, is a combination of an interface to the C SDK
API and a set of object oriented Perl classes. For more information,
see http://www.mozilla.org/directory/faq/perldap-faq.html.
PHP
- PHP Hypertext Preprocessor, a web scripting language that is an
alternative to Microsoft's Active Server Pages (ASP). PHP runs on
Linux, Windows, and many other platforms. The principal author is
Rasmus Lerdorf of Linuxcare. For more information, see
http://www.php.net.
POP
- Post Office Protocol, a protocol used to retrieve email from a mail
server. Most email clients support this protocol. For more information
see RFC1939 (ftp://ftp.isi.edu/in-notes/rfc1939.txt).
PostgreSQL
- PostgreSQL is a object-relational database management system
supporting almost all SQL constructs. For more information, see
http://www.postgresql.org. See also MySQL.
PPP
- Point-to-Point Protocol, a method for connecting a computer to the
Internet. For more information see RFC1661
(ftp://ftp.isi.edu/in-notes/rfc1661.txt).
qmail
- Like Exim, Qmail is an open source replacement for sendmail, written by Dan
Bernstein. For more information, see http://cr.yp.to/qmail.html.
RFC
- Request For Comments. For more information, see
http://www.rfc-editor.org.
RFC822
- Standard for ARPA Internet Text Messages (Aug 13, 1982). This defines the
basic format of Internet email messages, for example, it says that every
message should have a Subject: and Date: header.
RPC
- Remote Procedure Calls, a protocol that allows for a program on one
computer to execute a program on a server. Using RPC, a system
developer does not need to develop specific procedures for the
server--the client program sends a message to the server, and the server
returns the results of the executed program. For more information, see
RFC1831 (ftp://ftp.isi.edu/in-notes/rfc1831.txt).
Roxen
- Roxen is a line of Internet server products, the core of which is
the Roxen Challenger Web server. Roxen is free software distributed
under the GNU General Public License and is distributed with a
robust IMAP module. For more information, see
http://www.roxen.com.
RTF
- Rich Text Format, a Microsoft-devised method for formatting documents.
The specifications are available but very complex. Fine details of
documents (such as table alignment) are often confused in translations.
Use XML instead wherever possible.
SAM
- The Windows NT Security Account Manager. A database of undocumented
format which stores usernames, passwords and other information equivalent
to a NIS or LDAP database in the free world. A SAM access tool has been
produced by the Samba team which extracts usernames and passwords from
the SAM for the purposes of migrating away from NT to Samba.
Samba
- Samba is an open source software suite that provides file and print
services to SMB (otherwise known as CIFS) clients. The principal
author is Andrew Tridgell of Linuxcare who is now assisted by a
multinational team of open source developers. Samba is the only SMB
server apart from Windows NT that has large market share. Samba is
freely available under the GNU General Public License. For more
information, see http://www.samba.org.
SAP
- The US brach of SAP AG, the second-largest software company in the
world, based in Germany. Their closed-source Enterprise Resource
Planning package is very popular, and runs on Linux.
SASL authentication
- Single ASsignment Language, a functional programming language designed
by Professor David Turner in 1976.
Sendmail
- Sendmail is an open source Mail Transfer Agent distributed under
the Sendmail License. For more information, see http://www.sendmail.org.
Sendmail is an ancient program responsible for delivering perhaps 70% of
all email on the Internet. Modern replacements include Exim and qmail (q.v.)
SID
-Windows NT Security IDentifier.
SMB
- Server Message Block, a message format used by DOS and Windows
operating systems to share file, directories, and services. A number of
products exist that allow non-Microsoft systems to use SMB. Samba is
such a system, enabling Unix and Linux systems to communicate with
Windows machines and other clients to share directories and files. The
SMB protocol is undocumented and has many bad design features. It is
effectively monopolised by Microsoft, although there is a public
CIFS group.
SMTP
- Simple Mail Transfer Protocol, the Internet protocol used for sending email
messages between servers. SMTP is generally used to send mail from a
client to a server. This is the most important protocol on the Internet.
SNMP
- Simple Network Management Protocol, a set of protocols used for
managing complex networks. SNMP works by sending "protocol data units"
(PDUs) to different parts of the network where SNMP-compliant "agents"
store data about themselves in "Management Information Bases" (MIBs).
SPX
- Sequenced Packet Exchange, an undocumented transport layer protocol
used in Novell Netware networks. SPX sits on top of the IPX layer and
provides connection-oriented services between two nodes on the
network. Like IPX and SMB (q.v.) this protocol should be avoided wherever
possible however there are open source implementations.
SQL
- Structured Query Language, a standardized query language for
requesting information from a database.
Star Office
- Star Office is a suite of office applications, freely available through Sun
Microsystems. For more information, see http://www.sun.com/staroffice/. All
support for Star Office is free, and handled by Linuxcare.
Sybase
- One of the dominant software companies in the area of database
management systems and client/server programming environments. Microsoft
SQL Server is based on Sybase, which is why Sybase and SQLServer both use
the undocumented TDS protocol. www.freetds.org.
TCP
- Transmission Control Protocol, one of the main protocols used in
TCP/IP networks. TCP enables two hosts to establish a connection and
exchange streams of data, guaranteeing the delivery of the packets in
the correct order.
TCP/IP
- Transmission Control Protocol/Internet Protocol, a suite of
communications protocols used to enable communication between
computers. TCP/IP is the defacto standard for transmitting data over
networks.
TDS
- Tabular DataStream, a protocol used by Sybase and Microsoft for
client to database server communications. A free implementation of TDS
is being developed (http://www.freetds.org).
URL
- Uniform Resource Locator, the global address of resources available
via the Web.
WebDAV
- WebDAV is a protocol that defines the HTTP extensions necessary to
enable distributed web authoring tools to be broadly interoperable while
supporting the users needs. In this respect, DAV is completing the
original vision of the Web as a writable, collaborative medium. For
more information, see http://www.webdav.org.
WINS
- Windows Internet Naming server, a name resolution system that
determines the IP address that is associated with a particular network
computer. WINS is a non-open alternative to DNS.
X.500
- An ISO and ITU standard that defines how global directories should be
structured. X.500 directories are hierarchical with different levels
for each category of information.
Zeus
- Zeus is a scalable Web server produced by Zeus Technologies. For more
information see http://www.zeus.com.