Browse Prior Art Database

Extended Systems Network Architecture Data Compression

IP.com Disclosure Number: IPCOM000106385D
Original Publication Date: 1993-Nov-01
Included in the Prior Art Database: 2005-Mar-21
Document File: 8 page(s) / 221K

Publishing Venue

IBM

Related People

Christianson, MD: AUTHOR

Abstract

Extended Systems Network Architecture (SNA) data compression improves upon the original SNA data compression algorithm, which recognizes data string lengths of 63 bytes or less, by recognizing data strings of any length.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Extended Systems Network Architecture Data Compression

      Extended Systems Network Architecture (SNA) data compression
improves upon the original SNA data compression algorithm, which
recognizes data string lengths of 63 bytes or less, by recognizing
data strings of any length.

      The SNA (Systems Network Architecture) compression algorithm
eliminates redundant bytes within blocks of data.  Strings of 2 to 63
bytes of a predefined 'prime' character are compressed to a single
prime String Control Byte (SCB).  Strings of 3 to 63 bytes of
matching 'non-prime' characters are compressed to two bytes, a
non-prime SCB and the data character.  Strings of 1 to 63 bytes of
all other data, considered incompressible and hereafter referred to
as mixed data, are actually expanded by one byte, a mixed SCB.

      Each SCB is comprised of a 2-bit identification code and a
6-bit byte count.  The 2-bit identification codes are as follows:
'00'B corresponds to mixed data, '10'B corresponds to prime data,
'11'B corresponds to non-prime data, and '01'B is considered an
invalid SCB identifier.

      SNA data compression is limited to a maximum length of 63 bytes
per string of data.  In other words, if a string of data is
physically 100 bytes in length, SNA data compression treats it as a
63-byte string followed by a 37-byte string and compresses it
accordingly.  The net result is that for uncompressed data strings of
lengths in excess of 63 bytes, the compressed data often ends up with
more SCBs in it than would be necessary if the algorithm could handle
longer strings.  Extended SNA data compression attacks this
shortcoming by using the unused SCB identifier of SNA data
compression to give the algorithm the ability to handle longer
strings so as to improve compression ratios.

      The unused identifier, '01'b, is used to form the 'extended'
SCB.  It literally means that it is an extension of the most
previously valid SCB.  The remaining six bits of the extended SCB
represent a 64-byte block count.  In other words, the number of bytes
represented is equal to the value of the 6-bit count multiplied by
64.

      Essentially, the count value of the original SCB of a
compressed string represents the six least significant bits of the
overall byte count for a given data string.  The count value of a
subsequent extended SCB represents the six next most significant bits
of the overall byte count.  This represents a maximum byte count of
4095 ((63 X 64 bytes) + 63 bytes).  In ...