Velocity Software, Inc. is recognized as
a leader in the performance measurement of z/VM and Linux on z.
The Velocity Performance Suite consist of a set of tools that
enable installations running z/VM to manage Linux and z/VM
In addition, many components of server farms can be
measured and analyzed. Performance data can be viewed real-time
through the use of either 3270
or a browser.
The CLOUD Implementation (zPRO) component is designed
for full cloud PaaS implementation as well as
to extend the capabilities of the z/VM sysprog (system programmer)
to the browser world. This feature moves system management to
the point-and-click crowd. Archived data and reports can be
kept available of long term review and reporting usine zMAP.
The zVPS, formally ESALPS, components consist of:
zMON (formally ESAMON - real-time display of performance data),
zTCP (formally ESATCP - SNMP data collection),
zMAP (formally ESAMAP - historical reporting and archiving),
zVWS (formally ESAWEB - z/VM based web server),
zTUNE (a subscription service),
zVIEW (formally SHOWCASE - web based viewing of performance data),
zPRO (new to the quality line of Velocity Software Products).
Velocity continues to work with other software vendors to ensure
smooth interface with or from other products such as
VM:Webgateway, CA-Webgateway, EnterpriseWeb, MXG, MICS.
Velocity software remains the leader and inovator in the
z/VM performance, Linux performance, Managing cloud computing
We believe this product is up to
30 times faster
than it's previous z/VM platform competitors, and at less cost.
Products that make price performance
improvements measured in orders of
magnitude significantly increase your potential
And zVWS is priced to be competitive. Installations with ESALPS
already are fully licensed for zVWS.
Note that this site is running zVWS on a P390 under z/VM.
And has been since July of 1999.
objective is to ensure that you can't afford not to run zVWS.
The following lists available features and when they became
available. Upgrades are FREE for licensed users.
CA-VM:Webgateway to zVWS Conversion Utility
As the CA product, VM:Webgateway is no longer enhanced or marketed,
installations looking for a z/VM based webserver can use the
to convert CGIs written for
VM:Webgateway to operate with zVWS.
zVWS was originally introduced as ESAWEB, and
with the introduction of Release 18.104.22.168, ESAWEB was rebranded as zVWS.
Following are some of the features of zVWS provided to meet
the requirements of a general purpose web server:
Internal Trace table
An internal trace table has been added to help diagnose
A new configuration directive has been add in the
included domain configuration file. The CGI_ENVIRON
directive changes the default SUBCOM environment
for CGI execution. The default is CGI. By specifing
CGI_ENVIRON CMS, for instance, the CGI can be invoked in
the CMS SUBCOM environment.
A new keyword has been added to the syntax of the
mimetype definiton in the ESAWEB MIMETYPE and USER
MIMETYPE files. The NO-CACHE keyword will cause a
CACHE-CONTROL: NO-CACHE response header to generated in
response to the request. NO-CACHE is automatically
generated for output produced by CGIs.
Extended log records
A new field has been added to the log records, maintained
on disk. This field, Reason Code, is used to identify
the specific reason for a particular STATUS code, such
as 403, 404, 500 (Access Forbidden, Not Found, Server
Error, respectively). Other "architectural" changes
were made to the log record in anticipation of
future enhancemenst. The LOGCERN pipe stage and the
SHOWLOG XEDIT macro have been upgraded to recognize
the new format and show the relative
When using LOGGING VERBOSE or LOGGING DETAIL, a new
logging message is generated whenever a "reason code" is
present. This message is a separate line following the
VSILOG0100I message. It is displayed only when there is
a reason code. The code is primarily for
Extended statpage support
STATPAGEs allow installations to customize the results
of a "abnormal" status to a request, such as in the case of
a 404 status. This support was introduced in a previous
release. It has been extended to allow for STATPAGEs to
be defined on a sub-directory level within an ESAWEB
Common Log Format
The LOGCERN pipe stage has been updated to allow for
a simple method to create "Common Log Format" and "Extended
Common Log Format" records from the log records created
by the ESALOG virtual machine.
"Auto-ASCII" support for AUTHLIST
and ALIAS files
The ESAWEB AUTHLIST and ESAWEB ALIAS files can be
saved either as ASCII or EBCDIC files. Installations
using web publishing tools won't have to be concerned
with the way these files are saved.
RESOLVE_URL and CGI_EXIT directives
moved to host definition files
The global directives have been moved to enable
installations to customize by domain rather than by system.
AUTO_TRANSLATE directive added to
give greater flexibility to installations using web
Files NOT stored as "binary" on the web server can
be automatically translated, if desired. The new directive
gives complete control of translation to installations on
a domain-by-domain basis.
Added support for installation
defined "Error Status Pages".
Installastion may now define and taylor web pages to
be served in response to certain error status codes such as
404, 403, and 500. This is a much more "end-user" friendly
Dynamically accessed ROOT and PATH
Installastions may, optionally, use dynamic access and
re-access of the path structure contained on minidisks. This
allows for changes/additions on minidisk areas to be
reflected immediately instead of waiting for "auto-refresh".
Connect to TCP/IP on a specific IP
Installastion may, optionally, instruct ESAWEB to connect
to TCP/IP on a specific IP address as well as a specific port.
This allows installations to define different web servers
to listen on the same port but different IP addresses while
running on a single image of VM.
Extended security options in
ESAWEB AUTHLIST file
COOKIE - allows the security exit to verify the contents
of a cookie instead of, or in addition to, a userid/password
OPTIONS - controls AUTHLIST inheritance, use of ESM exit,
and/or password requirments.
ORDER - controls the order in which ESAWEB
will invoke the various forms of userid/password verification
ESM_EXIT - defines an ESM (External Security
Manager) exit to be invoked for the specific path.
End user control of log record
LOGFMT and DATEFMT keywords of LOGCERN pipe stage dictate the
outpu at of log records
CGI Pre/Post process exit
The Pre and Post process exit for CGI execution
allows installations to ensure the integrity of the
server environment remains intack after CGI
Support fo multiple files in a
Forms can now have multiple TYPE=FILE input
tags. CGIs can then gain access to the files via
the NEXTFILE sub-command.
PATH override using SFS directory
Installations can map any SFS filespace as a
sub-directory of the "root" using the PATH
HOST name validation
Under installation control, using the VALID_HOST configuration
directive, ESAWEB will generate a request status code of 400 if
the HOST request header does not contain a defined host name.
Console logging of
inbound/outbound HTTP headers
LOGGING of HTTP details to virtual console for diagnostics.
Optionally recognizes extended (X-ESAWEB) headers in HTML
(optionally all files) to augment HTTP control response header.
INCLUDEd AUTHLIST support
ESAWEB AUTHLIST files can include common files to allow
similar AUTHLIST definitions to be contained in a single file.
USER MIMETYPE files
USER MIMETYPE files are used to override the ESAWEB
MIMETYPE file definitions so product upgrades don't destroy
Termination Immediate Commands
QUIT, STOP, END immediate commands to gracefully terminate
ESAWEB web server.
LOGCERN PIPE stage
A pipe stage to convert ESAWEB LOG files to CERN format
Logical Device HTML support
This feature allows installations to "webify" 3270
applications, using an interface to the ESAWEB 3270 logical
device support virtual machine.
Shadow Web Server for VMTM
EnterpriseWeb/VMTM) migration aid
A collection of utilities that tie direcly to zVWS to
enable running Shadow Web Server for VMTM CGIs and
hierarchical structures on an ESAWEB server while migrating to
SMSG interface to administration
machine This feature allows installations to control the ESAWEB
servers, through the administration machine, via the CP SMSG
CERN formated log records
A conversion utility has been created to convert ESAWEB log
records to CERN standard format
Userroot (Tilde hack)
This feature allows access to individual user's html
without having to predefine path access to the area. This
NOT include CGI execution support for a "tilde" path.
SSI (Server Side Includes)
This feature allows dynamic inclusion of data into an HTML
file. This allows installations to allow non-HTML authors to
input data into a web page without having to have knowledge of
HTML coding techniques.
Displays a columnar list of "servable" files when no
"default" html file is found in a path
ESAWEB with Secure Socket Layer (SSL3) incorporated as a
"no charge" add-on. SSL3 allows a browser user to
authenticate the web server, communicate privately and
communicate without tampering. For more information, visit ESAWEB/SSL Overview.
This feature allows an installation to map long and/or
illegal path and file ids to valid VM paths and file ids.
Added several meta-variables
CGIs now have access to the SCRIPT_NAME, PATH_INFO and
Enhanced GET_ARGS cgi
The GET_ARGS cgi command has been enhanced to allow the CGI
to retrieve all keyword/value pairs in REXX stems even if only a
single occurrence is encountered in the form or query
Password prompting control
Now a site can control the number of times a requestor will
be allowed to enter invalid passwords. In addition, ESAWEB can
also control the amount of time that can expire before a known
requestor will be re-challenged.
More powerful ADMIN functions
The functions granted to the ESAWEB administration virtual
machine/webserver have been extended once again. Now the admin
machine can perform such functions as:
1. Graceful shutdown
of one or more servers with a single CGI command
2. Start (XAUTOLOG)
one or more servers with a single CGI command
3. Retrieve the path
structure for a host to be reviewed and, through simple
CGIs, massage authorization lists for each.
4. View and reset
ESAWEB password violations excisions
Enhanced ADMINISTRATION support
The "canned" utilities supplied with ESAWEB for
the sake of administration and log data view have been beefed up
to meet the ever growing needs of our customers, not to mention
to take advantage of new CGI commands.
Multiple domains directed to a single IP address can now be
served by a single set of servers "listening" on a
single TCP/IP port. This relieves an installation from having to
acquire bunches of IP addresses for each domain, (re)configuring
TCP/IP to recognize and route the various IP addresses and
having different domains on separate "non-standard"
LOG cgi command:
CGIs can now generate records that will be sent to and
maintained by the ESAWEB logging facility. This allows
installations to enhance information kept about their CGI usage
and make it available via either the supplied logging tools or
"home growns" logging tools.
CGI Redirect Support:
From a CGI, you can now redirect users to allow for either
security or load balancing, or even special purpose functions
for specific users.
CGI PIPE Support:
For performance, it turns out that using PIPE stage to
output data is significantly faster than using STEM rexx
variables. There is now a PIPE stage called output. This stage
reduces by 2 or more the processor and time to output data files
to the browser. It also allows for very fast conversion from
WEBSHARE or other web server CGIs.
Full POST Support:
For products such as VM Resources COOLMAIL to work, the
ability for the server to accept data and files from the browser
is now available.
Many system variables are available for CGIs to use to
determine environment. Issuing the SYSVARS rexx command sets all
of the variables. A sample CGI
is proided to show the current available variables.
Let us know if you need additional variables.
Logging is now performed VERY FAST using IUCV function to
transmit data to a central server that formats and writes the
data to disk. This architecture was chosen to reduce any
potential for logging to slow your web server. CERN format
logging is available as well as an enhanced version.
Byte counts for each file are recorded in the log to ensure
you can analyze your data traffic requirements.
An administration web server is now provided that controls
many of the web server functions - using a web page and cgi
designed for this purpose. To use this function requires adding a
server to a different port and adding the administrator's
identifiers to the authorization list. Refreshing, recycling as
well as CP and CMS commands can be performed by the web servers
using this interface. A STATUS function is also provided to
review status of all of your active servers.
Fast Web Server: Performance was NOT
zVWS is written in
assembler making it truly fast and greatly reducing
CPU resource requirements. An internal
cache is provided to eliminate I/O. Persistent connection, part of HTTP
1.1 is supported to reduce the TCPIP CPUT requirements. Status 304 is supported. The browser
can send a request for a file and request that it be sent if it
has been modified since a particular date. If it has not been
modified, a status 304 is sent back with no data. That tells the
browser to use its cached version, saving having to transmit
data the browser already has in it's cache. The zVWS program is small! Currently
about 100K, this program does not require significant amounts of
storage. The result is a much
higher capacity web server in terms of the number of
hits you can support. You may find that this web server pays for itself just in CPU
Full HTML, Image, EBCDIC, ASCII
Any files you
serve from another platform, you can serve from zVWS on VM.
ASCII to EBCDIC and ASCII to conversion tools are provided so
that you may develop your web site using tools on PC, move the
files to VM, convert them to EBCDIC, and edit them using XEDIT.
EBCDIC files are translated to ASCII automatically when
requested by the user.
Secure Socket Layer
Incorporated into zVWS, as a "no
charge" add-on, SSL3 allows a browser user to authenticate
the web server, communicate privately and communicate without
Security is controlled by IP address and/or by UserID and
password. Security is at the directory level, providing you with
the ability to protect each individual directory's files, even
controlling access to users coming from specific identified
written with a very simple REXX interface to allow you to add
logic to your web site, or an interface to your data.
We also have a web interface to zMON that you can check out:
Cookies are available to CGI to
maintain user states.
For an example of a cookie SET, click
For an example of Getting all available cookies, click
To display the code, click in:
There are no special software or hardware
requirements for zVWS. Only standard TCPIP interfaces are
Nobody would expect the experts in VM Performance to provide a
web server without full instrumentation. zMAP and zMON at
level 2.2H1 provide reporting based on zVWS application data.
Logging to the console is also provided.
SFS and Minidisk:
Both the SFS file structure and
minidisks are supported. One should note that using Minidisk is
measurably faster, so depending on how fast you want your web
site to be may dictate your storage architecture. Full SFS
directory support is provided, meaning that directories do not
need to be predefined.
zVWS allows requests to be redirected
based on IP address or by userid. This would allow you to
load balance over several
systems by having one group of users go to one system, and
another group go to another. Or even provide a different main
screen depending on who they are.
have a need to support multiple domains from one IP address, no
problem. Each domain can have it's own directory, with no limit
to the number of domains you can support.
applications need files to have the CONTENT-LENGTH served in the
header. zVWS provides this for all files. Larger files are
pre-read to get the content length, and then the length is
cached for future use.
Developed by the VM Performance
This web server is developed to meet
extensive performance goals by people that understand
performance. zVWS will be continuously enhanced, with more
function being added, just as our other products are
continuously being enhanced. Be assured that every effort is
being made to make this server FAST!
Service Level Agreements:
In combination with our zTCP and zMAP/zMON performance
products, you will have the ability to measure service levels by
IP subnet, giving you the ability to know how your web server is
performing for your users against service level targets. Real
time alerts can be set so that you are aware of when targets are
zVWS supports GET, POST and HEAD requests.
Low Cost of Operation:
Not only is zVWS so fast that it
significantly reduces your processor resource requirements to
run a web server on VM, it is priced just as low.
Ease of Installation?
Installation of zVWS is VERY EASY!
If there is a feature you need that is not on the list, and
having it makes a business case for you to acquire zVWS,
please send a note to:
For authorized Velocity Software users, you may look at the
Your vote is important. If you have need of features today,
or wish to let me know what you think would significantly
improve our functionality, or even to order a trial, send me
customer comparison to VM:WebGateway
"First of all I would like to say, that I'm
quite impressed by the good
performance of zVWS compared to the web-server product we
are currently using (VM:WebGateway from CA). If it is
indeed 30 times faster than alternative VM based web-servers, as
you claim, is maybe too optimistic, but it certainly is fast.
And the price is very attractive too. I'm also delighted by the
simple and fast way to access HTTP header variables and POSTed
arguments/variables in CGI programs. This is done in a rather
clumsy way in VM:WebGateway. My conclusion is, that we would
most certainly be interested in buying zVWS as a replacement
for VM:WebGateway, both to speed up our web services (that would
make our users very happy!) and to lower the overall CPU
utilization of our web operations."
Well, I did the absolute minimum required to get this
1 x userid - zVWS
1 x 2 cyl minidisk (would have fit on 1)
1 x zVWS Configuration file change
2 x SFS authority changes
2 x TCPIP profile changes
and my web site is now being served by zVWS! It only took
about 15 mins! And it is significantly faster than the Sterling
product I was running.................Thank you very