OpenVMS Notes: WASD HTTPd

Edit: 2023-05-25 (a work in progress)

y2k20 - a potential crisis in 2020 (nothing to do with WASD)

Modern browsers in 2020 will expect to "connect HTTPS" only using TLSv1.2 and TLSv1.3 (this assumes that support for everything from SSLv3 up to and including TLSv1.1 will be removed)

While browsers are constantly being updated because of their use in everything from on-line purchases to on-line investing and banking, many web servers are not. What is worse it this: many organizations, including governments large and small, are slow to update their server software

comment: Firefox has been warning for several months (today is 2019-08-25) that one of my servers is preferentially offering connections via TLS-1.0 (the lock icon is closed but is orange). Chrome and IE11 each present a green lock icon.

Comparing y2k to y2k20

Why is 2020 going to be a problem?

Good News from Microsoft

Additional news

The OpenVMS ecosystem

Introduction to WASD HTTPd (one solution to the y2k20 problem on OpenVMS)

Executive Summary:
  • What an unexpected surprise. WASD HTTPd is the fastest web server I have worked on to date.
    I am currently supporting web servers on these production platforms...
    Hardware CPU Cores Memory Network OS Software
    rx2800-i2 Itanium2 8 64G IPv4 on 1Gb/s OpenVMS-8.4 CSWS/Apache 2.0.xx
    DL385p-gen8 AMD x86-64 24 132G IPv4 on 1Gb/s CentOS-7.5 Apache 2.4.xx
    rx2660 Itanium2 8 16G Ipv4 on 1Gb/s OpenVMS-8.4 WASD HTTPd 11
    ...and it appears that WASD on the oldest hardware is able to out-perform Apache on the newest hardware (caveat: I haven't done any full-load stress tests just yet)
  • WASD HTTPd is published with all the source code. This means that if Adelaide gets hit with an asteroid you will be able to fix your own code (provided you have access to the DECC "C compiler)
  • The source code is mirrored in at least three other locations (see asteroid comment)

First Steps

Unzip then install

Unzip

$! DCL script to unzip WASD
$! this is an rx2660 (Itanium2)
$! CSWS/Apache is located on disk dka200 so that's where I'll put WASD
$!
$ define/job yada CSMIS$USER3:[ADMCSM.NEIL._WASD]	! files where downloaded here
$ set default DKA200:[000000]				! move to root of disk dka200
$ unzip yada:WASD1130.zip				! also creates folder [WASD_ROOT}
$ unzip yada:WASD1130-ia64.zip				!
$ set default [WASD_ROOT]				!
$ unzip yada:WASD_CUP_1130b.ZIP 			! do not forget this (or SYSUAF stuff won't work)
$ unzip yada:opensslwasd102r-ia64.zip			! optional

Install (part 1) you need a DEC-C compiler to do perform step 1 so consider starting with step 2

$set default wasd_root:[000000]				!
$@install						!

******************* 
*  BUILD PACKAGE  * 
******************* 

Package executables must be built.

0. skip this step 
1. compiling from source, then linking 
2. linking (separate package) object modules 

Select build method [0]:

[...snip...]

Install (part 2) really cool because you have a choice

************************** 
*  SSL TOOLKIT DETECTED  * 
************************** 

A supported Secure Sockets Layer (SSL) toolkit has been detected.
Those with item numbers are available for building, 'x's are not available.

0. do not build an SSL version 
1. OpenSSL (prior to v1.1.0) toolkit
x. OpenSSL (v1.1.0 or later) toolkit 
2. OpenVMS SSL1 product (HP)                    (OpenSSL 1.0 and higher)
x. WASD OpenSSL package                         ("x" because download it) 
x. OpenVMS SSL product (HP) no longer supported (OpenSSL 0.9 and lower)

Select item number [2]:

Config then initial start

Serving up Apache/CSWS Files from WASD HTTPd

Scripting (serving up DCL scripts)

Introduction

Quick steps

Properly enabling Server Admin

Supporting gSOAP

Links


Back to Home
Neil Rieck
Waterloo, Ontario, Canada.