NETWORK

Open Source TCP/IP Stack for RISC OS v7.06a

FEATURES OF THE NEW TCP/IP STACK

The new stack is based on the highly respected OpenBSD network stack, which known to be one of the most secure solutions available. It was chosen because of its security, and the ease by which interfaces can register and de-register on the fly, making it ideally suited to what we want to achieve on RISC OS, with an eye to wifi and flexibility.

The development has focussed on making the stack compatible with RISC OS with the fewest changes possible, so that we can track the base BSD stack, with much of the conversion process being automated. The goal has been to create something that does not need to be re-created each time we update / synchronise the stack with BSD, yet remain compatible with existing RISC OS software.

Much of the development time has been spent ensuring that existing applications behave exactly as before, regardless of which generation of Acorn/Pace/Castle specifications they were written to. To this end, the stack has undergone months of rigorous testing across a broad range of platforms.

Additionally, much documentation has been created for programmers, including many sections that are now publicly documented for the very first time.

All this paves the way towards wifi in the coming months....

KEY FEATURES INCLUDE

  • Modern TCP/IP stack supporting IPv4 and IPv6 network/internet standards
  • Wifi support for Broadcom SDIO-based wifi solutions.
    (Requires Network Manager, presently in beta)
  • Static (manual) and automatic address assignment via DHCP (IPv4) and SLAAC (IPv6)
  • Easy installation (or uninstall) alongside the classic RISC OS network stack. No need to replace your OS - it can be installed on any modern-ish version of RISC OS 5 (ideally 5.24+), but please check the supported platforms below.
  • Supports Acorn's internet 4 (80s/90s) and 5 (~1996 onwards) APIs for compatibility with every network application we have found to test with.
  • Highly compatible - even your existing network config files work seemlessly with the new stack!
  • No requirements for developers to modify existing code (unless they wish to).
  • New Open Source Resolver and MBufManager modules to replace closed-source versions. These are compatible with the older stack too, to allow developers to test new software (eg. IPv4 and IPv6 aware applications) on all machines.
  • Extensive documentation included for developers with no restrictions on access.
  • Dynamic network configuration means no more reboots when reconfiguring your networking (at last!)
  • 802.11 protocol support paves the way for wifi
  • Unlocks potential for higher performance networking - stack supports much larger mbufs, jumbo frames and more. Real world performance varies based on application, typically ranging plus/minus 25%, but can be dramatically faster. For example, Titanium users report up to 40x faster performance at gigabit speeds! Note that this is with existing, unmodified software.
  • Supports larger number of sockets (although existing applications will be limited to Acorn's previous specifications to avoid compatibility issues).
  • For the first time, Unix Domain Sockets are supported to allow inter-task communiction in line with other platforms.
  • Optimized for ARMv7+ platforms, but also supports ARMv5 such as Pi zero and Pi 1.
  • Testers report noticeable network reliability improvements with the new stack. To quote one user "I've not been able to do that for a number of years... Well done to the TCP/IP stack developers - it's made RISC OS more producive."
  • Open Source technology coupled with commercial partnerships mean that the new stack (and its source code) is available to all RISC OS users, developers and vendors equally, at no cost.
  • Responsive feedback system allows both users and developers direct access to information, resources and assistance from ROD and its developers.
  • The best is yet to come - this release provides a firm foundation for RISC OS networking. The next step will be to expand things with more drivers and support, improved network configuration, and of course... wifi

SUPPORTED PLATFORMS

Users are expected to be running RISC OS 5, ideally 5.24 onwards or later (5.28+ preferred).

The following computers have been tested and are considered "supported platforms" for the new stack:

Gigabit ethernet platforms

  • i.MX6
  • Titanium
  • Pi 4 / 4té
  • Pi 400
  • RK3399 - RockPro64, RockPi 4 etc

100Mbit USB ethernet based devices such as

  • Beagleboard
  • Pandaboard
  • Earlier Pi models 1 - 3
  • Pi zero (w) with USB ethernet adapter

The following platforms are reported as working, but have had limited testing

  • IGEPv5 USB ethernet
  • Iyonix
  • RiscPC with NIC / module interfaces
  • Gigabit USB ethernet CDC devices, notably ASIX chipset.

The supplied Wifi driver has been tested on the following platforms

  • Pi 4B
  • Pi Compute Module 4 (CM4) wifi variants
  • Pi 3B+
  • Pi zero W
  • RockPi 4 C+
  • RockyRAID
  • RockPro64
  • Pinebook Pro (requires updated ROM from supplier)

Legacy / closed source platforms

  • RiscPC with open source NIC/podule interfaces
  • RPCemu (recent builds with networking)
  • Elesar Wi-Fi Hat for Pi (EtherWILC)

HOW TO INSTALL

Download the zip below. Open the zip on a supported RISC OS 5 computer platform using SparkFS. We recommend unpacking the contents of the zip somewhere for safe keeping, but this is optional.

Run the enclosed !Install utility to install (or uninstall) the new TCP/IP stack.

Follow the on-screen instructions.

TCP/IP Stack v7.06a

RISC OS user running Iris browser? Right click to download

Best wishes, and enjoy the new stack!

REPORTING PROBLEMS

A ticket system (powered by RISC OS, running on the new stack) is provided for feedback and support.

Details are included in the zip.

SOURCE CODE AVAILABILITY

We are presently preparing the source for a github/gitlab release, but this is still "in progress".

For now, zip of source code is available on request under the widespread CDDL 1.0 licence which is compatible with RISC OS' Apache 2.0 licence, and is used by some existing components of RISC OS.

This code has already been provided to many RISC OS partners, so please drop an email to info@riscosdev.com to request your own copy..

Network Manager

Network Manager with Wi-Fi

RISC OS user running Iris browser? Right click to download

Network Manager v7.07 11th Aug 2024

This software is beta and facilitates the use of Wi-Fi, and is not warrantied for any purpose.

REPORTING PROBLEMS

A ticket system (powered by RISC OS, running on the new stack) is provided for feedback and support.

Details are included in the zip.

SOURCE CODE AVAILABILITY

We are presently preparing the source for a github/gitlab release, but this is still "in progress".

For now, zip of source code is available on request under the widespread CDDL 1.0 licence which is compatible with RISC OS' Apache 2.0 licence, and is used by some existing components of RISC OS.

This code has already been provided to many RISC OS partners, so please drop an email to info@riscosdev.com to request your own copy..