BeOS Networking Environment

From Wikipedia, the free encyclopedia

The BeOS Networking Environment or BONE is the unreleased re-write of the BeOS network stack planned for inclusion in R5.

BONE is composed of largely re-written networking stack. Widely rumored to be based on BSD Unix networking, BONE was actually a completely new design. It brought both stability and performance increases over the existing implementation at the time, the net_server. BONE was meant to make Unix apps port easier and BeOS networking more stable. Magnussoft ZETA is based on Dano and includes BONE.

Contents

[edit] History

As BeOS evolved, members of the Be networking team became frustrated with the performance and maintenance of the existing networking stack. They were spending a lot of time on maintenance of the user-space net_server, which had started life as a relatively simple system but had grown to be overly complex and unwieldy. This progressed to the point that a redesign became necessary. Despite dislike of the idea of reimplementing an existing shipping system, the decision was made to move to an in-kernel implementation for performance reasons.

There are a few reasons why BONE did not find its way into R5, one because Be Inc. was focusing its financial attention to pursuing legal battles with Microsoft and eventually exhausted their money supply, and Be Inc. were already late into releasing a new version of BeOS and so they instead chose just to make an upgrade to R4.5 and label it as R5.

About the same time, BONE was being beta-tested by Be Inc. and a handful of users and Be employees tested BONE under the file named bone7a_install.zip. In the last days of Be, the left over installer file (bone7a_install.zip) that the beta testers were given had made its way onto the Internet. The result came in the form of a script installer, an included uninstaller, as well with separate .pkg installer with all the unreleased and in progress BeOS betas.

[edit] Performance

While not quite meeting the performance levels of BSD or Linux systems, BONE vastly improved the speed of networking under BeOS by as much as a factor of 20x according to reports from some Be, Inc. engineers. This is mainly due to the fact that it was moved from userland into the kernel.

[edit] Stability

BONE is much more stable than net server which has a tendency to stop accepting connections after a while. Although the move in kernel gives BONE the potential to bring the whole system down this is both unlikely and rare as it is based on the tried and tested BSD networking code.

[edit] Compatibility after R5 installation

All applications written for BONE will not run on the older net server networking stack, but BONE is backwards compatible with apps written for net_server. BONE also brings with it better POSIX compatibility such as "sockets as file descriptors" which makes porting software from Unix platforms easier, and gives more support for the latest and newest apps available for BeOS.

The last version of BONE that was made for R5 is named "7a". This is older than the one in Dano and is known to have issues such as breaking printing compatibility. The version of BONE included in Dano is much newer as is the rest of the system which benefits from many updates.

The BONE version of R5 is mentioned to have a "visible" RAM limit of 768 MB.

After the install, some network cards will produce a KDL upon boot-up. One known network card that causes a KDL with BONE, is a Linksys LNE100TX board with the chip by PNIC. The KDL output starts as:

thread: ifconfig team: /bin/ifconfig /dev/net/tulip/0 up

Sometimes the card will work fine after a reinstall, but after a few reboots the KDL will occur 9/10 reboots. You may or may not encounter the same error.

Regardless, even the version 7a installer for R5 supports newer hardware that has to do with communications: more network cards, modems, USB devices and even wireless cards.

[edit] Security issues

It is highly recommended after you've set up your 'Identity' to disable all services. After the bone7a_install is complete, the telnet and ftp services are enabled by default. The ftp service can be used to log in and gain access to your whole hard disk drive. This is because the user and password is "baron" so someone who knew this could possibly take advantage if you have not simply performed the very easy task of disabling all services.

To disable all services enabled by default, locate the "Boneyard" preference (under BeMenu/Preferences) select the "Services" tab and hit the "Disable All" button, and then "Apply Changes".