WO1992004790A1 - High speed data compression and transmission for wide area network connections in lan/bridging applications - Google Patents

High speed data compression and transmission for wide area network connections in lan/bridging applications Download PDF

Info

Publication number
WO1992004790A1
WO1992004790A1 PCT/US1991/006467 US9106467W WO9204790A1 WO 1992004790 A1 WO1992004790 A1 WO 1992004790A1 US 9106467 W US9106467 W US 9106467W WO 9204790 A1 WO9204790 A1 WO 9204790A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
frame
compression
compressed
area network
Prior art date
Application number
PCT/US1991/006467
Other languages
French (fr)
Inventor
Gary Videlock
Mark J. Freitas
Philip P. Gailinas
Original Assignee
Microcom Systems, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microcom Systems, Inc. filed Critical Microcom Systems, Inc.
Publication of WO1992004790A1 publication Critical patent/WO1992004790A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC

Definitions

  • the present invention relates generally to systems for providing high speed transmission of data; and more specifically to systems for improving the transmission of high speed, compressed data for wide area network connections linking local area networks.
  • local area networks and wide area networks have evolved as a way to permit digital communications among various devices, such as server devices for one or more data terminals (DTEs), computers, etc.
  • LANs local area networks
  • nodes 14 can represent the same or different devices, all of the nodes 14 communicate via the LAN medium 12 in accordance with a packet-type protocol with data therefore being transmitted in individual packets.
  • Many protocols have been developed, the most notable are the Ethernet (IEEE 802.3 10base2, 10base5, or lObaseT) type or the Token Ring (IEEE 802.5 4Mbps or 16Mbps) type.
  • WAN wide area network
  • bridge/router 16 between it and each of the local area networks 10 to which it is connected.
  • the bridge/router 16 is placed between the WAN 20 and the LAN via a digital link 18.
  • Data is usually compressed in each remote bridge/router 16 before it is placed on the digital link 18 and processed by the WAN, and decompressed by the bridge/router 16 when compressed data is received over the digital link 12 from the WAN 20.
  • a Media Access Unit (MAU) 22 to a form appropriate for data and clock recovery by the LAN interface 24 in the remote bridge/router 16.
  • the data is transmitted in packets. If the packet of information from the LAN interface 24 is to be passed over the WAN link 18 to a remotely attached companion bridge/router, then it will be placed in shared memory and made available to the WAN interface 28 through the host processor platform 26.
  • the host processor platform 26 of the typical currently available bridge/routers includes at least one data processor for performing the data compression or decompression and a microprocessor containing the necessary programs for compressing or decompressing data.
  • Data compression enables more data to be transmitted through the data link 18 at a particular rate of transmission than uncompressed or raw data at its clocked data rate.
  • the decompression of the data is typically performed in a complementary fashion from the compression technique so that the decompressed data should be the identical to the initial raw data.
  • One standard bridge/router is the MLB 6000 manufactured and sold by Microcom, Inc., of Norwood, Massachusetts, the present assignee. The latter bridge/router is very effective in accomplishing its tasks.
  • the Microcom bridge/router which utilizes a high speed microprocessor incorporating a software based compression and decompression programs, is only capable of compressing data which is transmitted at a rate of 64Kbps or less.
  • the device is adapted to disable the compression function and transmit the raw data at its uncompressed rate in order to prevent loss of data. Accordingly, the main advantage of compressing data, increasing the throughput of the data link, is lost at these higher speeds.
  • a second technique of compressing data is the use of an external data compression unit, such as the Datamizer, sold by the Symplex Inc., of Ann Arbor, Michigan.
  • this device is also rate limited at 256 Kbps.
  • the rate limits of these devices were not significant since most LAN systems were remotely connected at transmission rates of 64Kbps or less.
  • devices such as Tl circuits and CEPT circuits which can provide data at rates much faster have become more inexpensive and accordingly more widely used.
  • Tl circuits provide raw data at a rate up to 1.544 Mbps
  • the CEPT circuits provide raw data at a rate of 2.048 Mbps.
  • Another object of the present invention is to provide a router/bridge which compresses data at rates greater than 64Kbps.
  • Another object of the present invention is to provide a router/bridge which compresses data at rates as high as 2.048 Mbps.
  • the bridge/router utilizes a data compressor adapted to compress data in frames adding an end of compression marker after each frame.
  • the bridge/router provides data transmission speeds as fast as 2.048 Mbps and includes means for inhibiting the end of compression marker, while generating a data structure with each frame which is compressed with the frame of data.
  • the data structure includes information representing the number of bytes of raw data in the corresponding frame so that on decompression the decompresser knows the number of bytes to provide in the resulting frame of decompressed data. This will avoid the need for the end of compression marker. By inhibiting the end of compression marker, compression is performed more efficiently.
  • Fig. 1 is a block diagram showing the basic elements of local area networks coupled together with a wide area network?
  • Fig. 2 is a block diagram showing the basic elements of a bridge/router used to couple each local area network to the wide area network;
  • Fig. 3 is a block diagram of the preferred embodiment of the bridge/router system of the present invention.
  • Fig. 4 is a flow chart of the operation of the system of Fig. 3 when data is compressed;
  • Fig. 5 is a flow chart of the operation of the system of Fig. 3 when data is decompressed.
  • Fig. 6 is a schematic representation of the signal format provided in accordance with the present invention.
  • the preferred bridge/router system 40 of the present invention comprises a shared memory 42 for temporarily storing data so that data can be transferred among the various components of the system 40.
  • the storage capacity of chip 42 clearly can vary depending upon the design of the system, with the memory of the preferred system having 128Kbytes of memory based on space requirements.
  • a host bus interface 44 is used to connect the system 40 to the medium 12, while the WAN physical drivers and receivers 46 transmit data to and receive data from the data link 18.
  • the interface 44 and the drivers and receivers 46 will depend upon the LANs 10 and WAN 20 with which the system is used.
  • a link level controller (LLC) 48 of each system insures that correct compressed data is reliably delivered from the transmitting bridge/router through the WAN to the receiving bridge/router so that the compression tables of the transmitting bridge/router remain synchronous with the decompression tables of the receiving bridge/router.
  • LLC link level controller
  • the link level controllers 48 are chips manufactured and sold as the 5025 by SGS/Thomson of Carrollton, Texas. Such LLCs are designed to work among themselves though a WAN with a protocol so as to insure that each packet of information is reliably delivered. Typically, the transmitting packet will not be released by the transmitting controller until it receives acknowledgment from the receiving controller that the data packet has been reliably delivered.
  • Each LLC 48 functions as a parallel to serial converter so that data within the system 40 is treated in parallel while data transmitted on the data link 18 is transmitted serially.
  • Microprocessor 56 and data compression processors (DCP) 50a and 50b also are provided.
  • Microprocessor 56 is connected to memory 42 and provides the instructions for operating the system 40.
  • the latter is preferably a 68000 sold by Motorola although other microprocessors can be used.
  • the processors 50a and 50b each are preferably the 9703 chip manufactured by STAC, Inc. of Carlsbad, California. The latter are preferred since they operate at speeds up to 2.048 Mbps.
  • One of the processors, processor 50a is connected and configured to compress data received from storage 42, while the processor 50b is connected and configured to decompress data received from storage 42 so that full duplex operation can be carried out.
  • the DCPs 50a and 50b are respectively programmed with well known compression and decompression algorithms and connected to work with a DMA controller (described hereinafter) to carryout the compression and decompression operations.
  • the nature of the LAN connection is that it will remain static so that processor 50a will always be configured for compression and processor 50b will always be configured for decompression.
  • Each processor 50a and 50b includes its own local memory 52a and 52b for respectively storing the compression and decompression tables of data during the corresponding compression and decompression operations.
  • the STAC processors used in the preferred embodiment were designed to compress data prior to transmitting data to, or decompress compressed data received from a streaming tape drive medium. As such the STAC processors possess certain disadvantages in their use in data communication applications such as the present system 40.
  • a dedicated direct memory access (DMA) controller 54 is provided for carrying out this addressing function.
  • the DMA controller 54 is the 68450 chip manufactured by Motorola Corporation of Schaumberg, Illinois which is a four channel device, two channels for use with the DCP 50a and two for use with the DCP 50b.
  • the dedicated controller provides maximum speed efficiency.
  • the DMA controller includes counters which are useful in carrying out the operation of the system 40.
  • a raw data counter is adapted to count raw data transmitted into the compression DCP 50a, while a compressed data counter is adapted to decrement in response to compressed data being generated at the output of the DCP 50a.
  • a compressed data counter is adapted to count data transmitted into the decompression DCP 50b, while a decompressed data counter is adapted to decrement in response decompressed data being generated at the output of the DCP 50b.
  • the STAC chip is designed to compress data in large streams of data, wherein an "end of compression" marker is placed at the end of each stream during the compression operation.
  • the marker can then be sensed by the receiving side of the DCP on playback from the tape as an indication of the end of the stream when decompressing the compressed data.
  • the placement of the "end of compression” marker at the end of each stream of compressed data results in the clearing of the tables in corresponding local memory of the DCP and the resetting of buffers in the DCP. While such an arrangement is fine for tape drive applications, transmitting large streams of data at a time to a WAN receiver is not desirable, since the latter will wait the entire transmission of data before retransmitting it to the receiving LAN.
  • the system 40 is designed to transmit the data in small encapsulated frames of data, each frame preferably representing 128 bytes or less of raw data.
  • the STAC chip as commercially available, to compress these small frames of data would result in an end of compression marker being provided after each frame of data which is undesirable since it results in inefficient compression because of a lack of cumulative historical data.
  • the preferred system 40 also comprises force mismatch circuit 58 connected to communicate with the compression DCP 50a and its associated local memory 52a.
  • the circuit is a programmable logic device (PLD) of the type known as a "pl6r4" and is constructed to provide the inputs and outputs and to carry out the logic equations in the following listing, wherein the PLD language is CUPL, a registered trademark of the Logical Devices Incorporated of Fort Lauderdale, Florida:
  • Pin 1 elk; /* clock generated by connecting pin 19 to pin 1 of this PLD 7
  • Pin 2 !cwe; ⁇ connected to WE signal from DCP to its local memory chip * /
  • Pin 3 !coe; / * intercepted OE signal between DCP and its local memory chip * /
  • Pin 4 force; ⁇ ForceMismatch signal controlled by microprocessor */
  • Pin 5 a14; ⁇ connected to A14 signal from DCP to its local memory chip */
  • Pin 6 a13; /* connected to A13 signal from DCP to its local memory chip 7
  • Pin 7 aO; ⁇ connected to A0 signal from DCP to its local memory chip V
  • Pin 8 c7in; /* connected to C7 signal from DCP to its local memory chip 7
  • Pin 12 loeout; /* connected to this PLD's register OE (pin 11) 7
  • Pin 14 c ⁇ out; /* connected to C6 signal from DCP to its local memory chip 7
  • Pin 15 c7out; /* connected to C7 signal from DCP to its local memory chip 7
  • Pin 18 iramoe; /* intercepted OE signal to DCP local memory chip 7
  • the circuit 58 is designed to fool the DCP 50a so that when the circuit 58 is set the DCP will believe it has not seen the next character at its input so that it will flush its compressed data output buffer and place the next character in the compressed data output stream as raw data without compressing that raw data.
  • microprocessor 56 and circuit 58 are used to generate information representing a data structure, with the compressed data representing the frame of raw data.
  • the data structure contains information as to the number of bytes of information of the corresponding frame so that when the compressed data is transmitted and received the DCP 50b of the receiving system 40 will know how many bytes are contained in the frame.
  • Ethernet LAN packets can contain as many as 1517 bytes, while a token ring packet can be as small as 4 or 5 bytes and as large as 18,000 bytes.
  • the system 40 is preferably used with a LAN interface, indicated at 24 in Fig. 2, which is adapted to divide each packet into 128 byte frames or less. Thus, where the packet contains less than or is equal to 128 bytes, one frame containing the number of bytes of the packet will be generated by the interface 28.
  • a frame of data received by the system 40 for compression may contain data representative of the beginning, middle or end of a packet, or may contain the entire packet. It will be apparent however, that the actual data content of each frame as it relates to the original packet will be irrelevant when compressing and sending data from one system 40 to another. Thus, as shown in Fig. 6, a frame of data contains a maximum of 128 bytes of data.
  • the LAN provides a header prior to the frame of data.
  • the header and frame data are transferred from the drivers and receivers 46, through the link level controller 48 and into the shared memory 42.
  • the header contains a data structure, indicated by the notation XX including information indicating the frame size (i.e., the actual number of bytes contained in the frame) .
  • each header and frame of data is provided to the host bus interface as indicated at step 100.
  • the header and frame data are entered into the memory 42.
  • the frame size is then read by the microprocessor 56 into the DMA controller 54. Specifically, the frame size is entered into the raw data counter in the DMA controller 54, as indicated at step 102.
  • the compressed data output counter is set with a number which is greater than or equal to the total maximum nu ber of compressed bytes that can be provided from a frame of raw data. The total maximum number will depend on the compression ratio. For example, for 2:1 compression, the compressed data output will be 64 bytes of compressed data representative of a 128 byte frame, while a 4:1 compression ratio would provide 32 bytes of compressed data for a 128 byte frame.
  • the microprocessor 56 then feeds the DCP 50a an eight bit reference signal from microprocessor 56 represented by the hex number FF, while the information representing the number of bytes of raw data is inverted and fed into the DCP 50a.
  • the latter is represented by the hex number XX (where the original number is represented by the hex number XX) .
  • the raw data contained in memory 42 is next read into the DCP 50a so that the entire FFXXCframe data] can now be compressed in accordance with the compression algorithms contained in the DCP 50a, as seen at step 108. Specific algorithms for compressing data are known and are not described in detail herein.
  • the compression of the data continues as indicated by loop 110 until the compression of the FFXXrframe data] is complete and read into the memory 40.
  • the DMA compressed data counter is decremented by one.
  • the counter will contain a number which when subtracted from the original count in the counter will indicate the number of compressed words that are to be transmitted to the WAN.
  • circuit 58 forces the DCP 50a to see the next four pieces of data (four nulls each represented by the hex number 00) (each an eight bit signal containing all zeros) provided by the microprocessor 56, as data that it should not compress based upon the compression algorithm. Accordingly, the four pieces of data will not be compressed nor entered into the compression tables contained in the local memory 52a, but instead will be placed as raw data into the compressed data stream being fed into the memory 40.
  • a delay of ten microseconds is provided to accommodate the four hex 00's to be placed in the compression stream.
  • the size of the actual compressed FFXXTframe data] is next calculated by reading the final number in the DMA compressed data counter and subtracting this final number from the original count.
  • the resulting number is provided to the link level controller 48 so that the latter knows the number of bytes to transmit to the WAN.
  • the compressed data is then transferred from memory 40 into the link level controller 48 so that it can be transferred to the WAN through the drivers 46.
  • the system 40 which is to receive the compressed data inquires at loop 130 whether data is present at the shared memory 42 after being received from the link level controller 48. If the inquiry is yes, the process proceeds to step 132 with the DMA compressed data counter associated with the DCP 50b being set to the number of bytes received from the LLC 48. The decompression DCP 50b is then enabled by the microprocessor 56 at step 134. The data received from the LLC is read into memory 42 and each byte is read from memory 42 into DCP 50b as indicated at step 136.
  • each byte is read from the DCP 50b by the microprocessor to see if it is the FF byte indicating the beginning of a header and frame data as queried at step 138. If the byte is not FF, the loop repeats steps 136 and 138. Once the byte FF is detected the next byte is read from the decompression DCP 50b at step 140. This byte will be the XX byte which contains information about the size of the frame. At step 142, it is inverted and entered into the DMA decompressed data counter which is used to count the number of bytes provided at the output of the DCP 50b.
  • the decompressed data counter will now contain the number of bytes contained in the original frame and measure the number as it is provided at the output of the DCP 50b.
  • the DMA controller can now be enabled to move the data out of the decompression DCP 50b buffer as indicated at step 144.
  • the decompression continues as indicated at step 146 with compressed data being read from the memory 40 into the DCP 50b and a stream of decompressed data being provided at the output of the DCP 50b.
  • the decompressed data counter is decremented. When the counter decrements to zero the counter indicates the end of the stream of decompressed data which should be identical to the original raw data of the frame.
  • the foregoing system 40 thus provides an improved bridge/router for use in coupling LANs through a WAN. It is capable of operating at data rates of 2.048 Mbps. By inhibiting the end of the compression marker otherwise provided by the compression DCP 50a, the compression tables will not be cleared and the buffers will not be reset. This provides greater continuity between compressed frames of a packet providing greater efficiency in the compression operation.

Abstract

A bridge/router (16) for use in bridging and routing data among one or more local area networks (10) and a wide area network (20) is disclosed. The bridge/router (16) utilizes a data compressor (50a) adapted to compress data in frames adding an end of compression marker after each frame. The bridge/router (16) provides data transmission speeds as fast as 2.048 Mbps and includes means for inhibiting the end of compression marker, while generating a data structure with each frame which is compressed with the frame of data. The data structure includes information representing the number of bytes of raw data in the corresponding frame so that on decompression the decompresser (50b) knows the number of bytes to provide in the resulting frame of decompressed data, thus avoiding the need for the end of compression marker. By inhibiting the marker compression is performed with greater efficiency.

Description

HIGH SPEED DATA COMPRESSION AND TRANSMISSION FOR WIDE AREA NETWORK CONNECTIONS IN LAN/BRIDGING APPLICATIONS
The present invention relates generally to systems for providing high speed transmission of data; and more specifically to systems for improving the transmission of high speed, compressed data for wide area network connections linking local area networks.
With the tremendous growth of data processing, local area networks and wide area networks have evolved as a way to permit digital communications among various devices, such as server devices for one or more data terminals (DTEs), computers, etc. As illustrated in Fig. 1, local area networks (LANs) 10 utilize a medium 12 to interconnect any number of nodes 14, the latter being a term used to represent the various devices digitally connected together through the medium 12. While the nodes 14 can represent the same or different devices, all of the nodes 14 communicate via the LAN medium 12 in accordance with a packet-type protocol with data therefore being transmitted in individual packets. Many protocols have been developed, the most notable are the Ethernet (IEEE 802.3 10base2, 10base5, or lObaseT) type or the Token Ring (IEEE 802.5 4Mbps or 16Mbps) type.
Occasionally, it is necessary or desirable for nodes 14 to communicate with other nodes not directly connected to the LAN medium 12. One system which has been developed to accomplish this task is the wide area network (WAN) 20 which utilizes a bridge/router 16 between it and each of the local area networks 10 to which it is connected. The bridge/router 16 is placed between the WAN 20 and the LAN via a digital link 18. Data is usually compressed in each remote bridge/router 16 before it is placed on the digital link 18 and processed by the WAN, and decompressed by the bridge/router 16 when compressed data is received over the digital link 12 from the WAN 20.
More specifically, as shown in Fig. 2, generally data from the LAN medium 12 is translated through a Media Access Unit (MAU) 22 to a form appropriate for data and clock recovery by the LAN interface 24 in the remote bridge/router 16. The data is transmitted in packets. If the packet of information from the LAN interface 24 is to be passed over the WAN link 18 to a remotely attached companion bridge/router, then it will be placed in shared memory and made available to the WAN interface 28 through the host processor platform 26. The host processor platform 26 of the typical currently available bridge/routers includes at least one data processor for performing the data compression or decompression and a microprocessor containing the necessary programs for compressing or decompressing data. Data compression enables more data to be transmitted through the data link 18 at a particular rate of transmission than uncompressed or raw data at its clocked data rate. The decompression of the data is typically performed in a complementary fashion from the compression technique so that the decompressed data should be the identical to the initial raw data. One standard bridge/router is the MLB 6000 manufactured and sold by Microcom, Inc., of Norwood, Massachusetts, the present assignee. The latter bridge/router is very effective in accomplishing its tasks. However, the Microcom bridge/router, which utilizes a high speed microprocessor incorporating a software based compression and decompression programs, is only capable of compressing data which is transmitted at a rate of 64Kbps or less. Should data be transmitted into the bridge/router at a greater rate, the device is adapted to disable the compression function and transmit the raw data at its uncompressed rate in order to prevent loss of data. Accordingly, the main advantage of compressing data, increasing the throughput of the data link, is lost at these higher speeds.
A second technique of compressing data is the use of an external data compression unit, such as the Datamizer, sold by the Symplex Inc., of Ann Arbor, Michigan. However, this device is also rate limited at 256 Kbps. Until recently the rate limits of these devices were not significant since most LAN systems were remotely connected at transmission rates of 64Kbps or less. However, devices such as Tl circuits and CEPT circuits which can provide data at rates much faster have become more inexpensive and accordingly more widely used. Tl circuits provide raw data at a rate up to 1.544 Mbps, while the CEPT circuits provide raw data at a rate of 2.048 Mbps.
Accordingly, it is an object of the present invention to provide a router/bridge which substantially overcomes the above-noted problems.
Another object of the present invention is to provide a router/bridge which compresses data at rates greater than 64Kbps.
And another object of the present invention is to provide a router/bridge which compresses data at rates as high as 2.048 Mbps.
These and other objects are achieved by an improved router/bridge for use in bridging and routing data among one or more local area networks and a wide area network is disclosed. The bridge/router utilizes a data compressor adapted to compress data in frames adding an end of compression marker after each frame. The bridge/router provides data transmission speeds as fast as 2.048 Mbps and includes means for inhibiting the end of compression marker, while generating a data structure with each frame which is compressed with the frame of data. The data structure includes information representing the number of bytes of raw data in the corresponding frame so that on decompression the decompresser knows the number of bytes to provide in the resulting frame of decompressed data. This will avoid the need for the end of compression marker. By inhibiting the end of compression marker, compression is performed more efficiently.
Other objects of the invention will in part be obvious and will in part appear hereinafter. The invention accordingly comprises the apparatus possessing the construction, combination of elements, and arrangement of parts which are exemplified in the following detailed disclosure, and the scope of the application of which will be indicated in the claims.
For a fuller understanding of the nature and objects of the present invention, reference should be had to the following detailed description taken in connection with the accompanying drawings, wherein:
Fig. 1 is a block diagram showing the basic elements of local area networks coupled together with a wide area network?
Fig. 2 is a block diagram showing the basic elements of a bridge/router used to couple each local area network to the wide area network;
Fig. 3 is a block diagram of the preferred embodiment of the bridge/router system of the present invention;
Fig. 4 is a flow chart of the operation of the system of Fig. 3 when data is compressed;
Fig. 5 is a flow chart of the operation of the system of Fig. 3 when data is decompressed; and
Fig. 6 is a schematic representation of the signal format provided in accordance with the present invention.
In the drawings the same numerals are used to designate the same or like parts.
Referring to Fig. 3, the preferred bridge/router system 40 of the present invention comprises a shared memory 42 for temporarily storing data so that data can be transferred among the various components of the system 40. The storage capacity of chip 42 clearly can vary depending upon the design of the system, with the memory of the preferred system having 128Kbytes of memory based on space requirements. A host bus interface 44 is used to connect the system 40 to the medium 12, while the WAN physical drivers and receivers 46 transmit data to and receive data from the data link 18. The interface 44 and the drivers and receivers 46 will depend upon the LANs 10 and WAN 20 with which the system is used. A link level controller (LLC) 48 of each system insures that correct compressed data is reliably delivered from the transmitting bridge/router through the WAN to the receiving bridge/router so that the compression tables of the transmitting bridge/router remain synchronous with the decompression tables of the receiving bridge/router.
In the preferred embodiment the link level controllers 48 are chips manufactured and sold as the 5025 by SGS/Thomson of Carrollton, Texas. Such LLCs are designed to work among themselves though a WAN with a protocol so as to insure that each packet of information is reliably delivered. Typically, the transmitting packet will not be released by the transmitting controller until it receives acknowledgment from the receiving controller that the data packet has been reliably delivered. Each LLC 48 functions as a parallel to serial converter so that data within the system 40 is treated in parallel while data transmitted on the data link 18 is transmitted serially.
Microprocessor 56 and data compression processors (DCP) 50a and 50b also are provided. Microprocessor 56 is connected to memory 42 and provides the instructions for operating the system 40. The latter is preferably a 68000 sold by Motorola although other microprocessors can be used.
The processors 50a and 50b each are preferably the 9703 chip manufactured by STAC, Inc. of Carlsbad, California. The latter are preferred since they operate at speeds up to 2.048 Mbps. One of the processors, processor 50a is connected and configured to compress data received from storage 42, while the processor 50b is connected and configured to decompress data received from storage 42 so that full duplex operation can be carried out. The DCPs 50a and 50b are respectively programmed with well known compression and decompression algorithms and connected to work with a DMA controller (described hereinafter) to carryout the compression and decompression operations. The nature of the LAN connection is that it will remain static so that processor 50a will always be configured for compression and processor 50b will always be configured for decompression. Each processor 50a and 50b includes its own local memory 52a and 52b for respectively storing the compression and decompression tables of data during the corresponding compression and decompression operations. The STAC processors used in the preferred embodiment were designed to compress data prior to transmitting data to, or decompress compressed data received from a streaming tape drive medium. As such the STAC processors possess certain disadvantages in their use in data communication applications such as the present system 40.
For one, the processors, while having access to memory 42, do not have their own addressing function and therefore are not sufficiently intelligent enough to transmit data to or receive data from the memory 42. Accordingly, a dedicated direct memory access (DMA) controller 54 is provided for carrying out this addressing function. In the preferred system 40 the DMA controller 54 is the 68450 chip manufactured by Motorola Corporation of Schaumberg, Illinois which is a four channel device, two channels for use with the DCP 50a and two for use with the DCP 50b. As is well known the dedicated controller provides maximum speed efficiency. In addition the DMA controller includes counters which are useful in carrying out the operation of the system 40. A raw data counter is adapted to count raw data transmitted into the compression DCP 50a, while a compressed data counter is adapted to decrement in response to compressed data being generated at the output of the DCP 50a. Similarly, a compressed data counter is adapted to count data transmitted into the decompression DCP 50b, while a decompressed data counter is adapted to decrement in response decompressed data being generated at the output of the DCP 50b.
In addition the STAC chip is designed to compress data in large streams of data, wherein an "end of compression" marker is placed at the end of each stream during the compression operation. The marker can then be sensed by the receiving side of the DCP on playback from the tape as an indication of the end of the stream when decompressing the compressed data. The placement of the "end of compression" marker at the end of each stream of compressed data results in the clearing of the tables in corresponding local memory of the DCP and the resetting of buffers in the DCP. While such an arrangement is fine for tape drive applications, transmitting large streams of data at a time to a WAN receiver is not desirable, since the latter will wait the entire transmission of data before retransmitting it to the receiving LAN. Accordingly, in order to reduce this latency effect, it is desirable to pipeline the compressed data in small amounts in order to provide a smoother data flow through the system. Specifically, the system 40 is designed to transmit the data in small encapsulated frames of data, each frame preferably representing 128 bytes or less of raw data. However, using the STAC chip, as commercially available, to compress these small frames of data would result in an end of compression marker being provided after each frame of data which is undesirable since it results in inefficient compression because of a lack of cumulative historical data.
Accordingly, the preferred system 40 also comprises force mismatch circuit 58 connected to communicate with the compression DCP 50a and its associated local memory 52a. In the preferred system the circuit is a programmable logic device (PLD) of the type known as a "pl6r4" and is constructed to provide the inputs and outputs and to carry out the logic equations in the following listing, wherein the PLD language is CUPL, a registered trademark of the Logical Devices Incorporated of Fort Lauderdale, Florida:
Inputs *7
Pin 1 = elk; /* clock generated by connecting pin 19 to pin 1 of this PLD 7
Pin 2 = !cwe; Λ connected to WE signal from DCP to its local memory chip */
Pin 3 = !coe; /* intercepted OE signal between DCP and its local memory chip */
Pin 4 = force; Λ ForceMismatch signal controlled by microprocessor */
Pin 5 = a14; Λ connected to A14 signal from DCP to its local memory chip */
Pin 6 = a13; /* connected to A13 signal from DCP to its local memory chip 7
Pin 7 = aO; Λ connected to A0 signal from DCP to its local memory chip V
Pin 8 = c7in; /* connected to C7 signal from DCP to its local memory chip 7
Pin 9 - cβin; Λ connected to C6 signal from DCP to its local memory chip 7 r Outputs *7
Pin 12 = loeout; /* connected to this PLD's register OE (pin 11) 7
Pin 13 = delay;
Pin 14 = cδout; /* connected to C6 signal from DCP to its local memory chip 7
Pin 15 = c7out; /* connected to C7 signal from DCP to its local memory chip 7
Pin 18 = iramoe; /* intercepted OE signal to DCP local memory chip 7
Pin 19 = cikout; f connected to this PLD's dock input (pin 1) 7 r* Equations *7 clockout = delay; delay = ewe & Ia14 & Ia13 & aO; oeout = coe & force & Ia14 & !a13 & aO; ramoe = coe & '(force & Ia14 & >a13 & aO); c6out.d = cβin; c7out.d = !c7in; when enabled this is what fools the DCP 7 The circuit 58 is designed to fool the DCP 50a so that when the circuit 58 is set the DCP will believe it has not seen the next character at its input so that it will flush its compressed data output buffer and place the next character in the compressed data output stream as raw data without compressing that raw data. Additionally, microprocessor 56 and circuit 58 are used to generate information representing a data structure, with the compressed data representing the frame of raw data. The data structure contains information as to the number of bytes of information of the corresponding frame so that when the compressed data is transmitted and received the DCP 50b of the receiving system 40 will know how many bytes are contained in the frame.
The foregoing will be more evident from a detailed description of the operation of the system 40. Depending upon the LAN with which the system 40 is used, the size of a packet of data transmitted on the medium depends on the packet format used. For example, Ethernet LAN packets can contain as many as 1517 bytes, while a token ring packet can be as small as 4 or 5 bytes and as large as 18,000 bytes. The system 40 is preferably used with a LAN interface, indicated at 24 in Fig. 2, which is adapted to divide each packet into 128 byte frames or less. Thus, where the packet contains less than or is equal to 128 bytes, one frame containing the number of bytes of the packet will be generated by the interface 28. Should the packet contain more than 128 bytes, the packet will be divided into two or more frames and a frame will be generated for each 128 bytes of the packet until a remainder of 128 bytes or less is left which will be generated as the last frame of the packet. Thus, a frame of data received by the system 40 for compression may contain data representative of the beginning, middle or end of a packet, or may contain the entire packet. It will be apparent however, that the actual data content of each frame as it relates to the original packet will be irrelevant when compressing and sending data from one system 40 to another. Thus, as shown in Fig. 6, a frame of data contains a maximum of 128 bytes of data. In addition, the LAN provides a header prior to the frame of data. The header and frame data are transferred from the drivers and receivers 46, through the link level controller 48 and into the shared memory 42. The header contains a data structure, indicated by the notation XX including information indicating the frame size (i.e., the actual number of bytes contained in the frame) .
Referring to Fig. 4, in operation when data is being compressed by the system 40, each header and frame of data is provided to the host bus interface as indicated at step 100. The header and frame data are entered into the memory 42. The frame size is then read by the microprocessor 56 into the DMA controller 54. Specifically, the frame size is entered into the raw data counter in the DMA controller 54, as indicated at step 102. As indicated at step 104, the compressed data output counter is set with a number which is greater than or equal to the total maximum nu ber of compressed bytes that can be provided from a frame of raw data. The total maximum number will depend on the compression ratio. For example, for 2:1 compression, the compressed data output will be 64 bytes of compressed data representative of a 128 byte frame, while a 4:1 compression ratio would provide 32 bytes of compressed data for a 128 byte frame.
As indicated at step 106, the microprocessor 56 then feeds the DCP 50a an eight bit reference signal from microprocessor 56 represented by the hex number FF, while the information representing the number of bytes of raw data is inverted and fed into the DCP 50a. The latter is represented by the hex number XX (where the original number is represented by the hex number XX) . Using the first address provided to the DMA controller, the raw data contained in memory 42 is next read into the DCP 50a so that the entire FFXXCframe data] can now be compressed in accordance with the compression algorithms contained in the DCP 50a, as seen at step 108. Specific algorithms for compressing data are known and are not described in detail herein.
The compression of the data continues as indicated by loop 110 until the compression of the FFXXrframe data] is complete and read into the memory 40. As each pair of data bytes of compressed data is read out of the DCP 50a representing a word of data in this particular configuration into memory 40, the DMA compressed data counter is decremented by one. When the compression of the FFXX ϊframe data] is completed the counter will contain a number which when subtracted from the original count in the counter will indicate the number of compressed words that are to be transmitted to the WAN. Once the compression of data is completed the microprocessor 56 then turns on the force mismatch circuit 58 as indicated at step 112. As indicated by step 114, circuit 58 forces the DCP 50a to see the next four pieces of data (four nulls each represented by the hex number 00) (each an eight bit signal containing all zeros) provided by the microprocessor 56, as data that it should not compress based upon the compression algorithm. Accordingly, the four pieces of data will not be compressed nor entered into the compression tables contained in the local memory 52a, but instead will be placed as raw data into the compressed data stream being fed into the memory 40.
As indicated at step 116 a delay of ten microseconds is provided to accommodate the four hex 00's to be placed in the compression stream.
At step 118 the size of the actual compressed FFXXTframe data] is next calculated by reading the final number in the DMA compressed data counter and subtracting this final number from the original count. The resulting number is provided to the link level controller 48 so that the latter knows the number of bytes to transmit to the WAN. The compressed data is then transferred from memory 40 into the link level controller 48 so that it can be transferred to the WAN through the drivers 46.
As shown in Fig. 5 the decompression of data can now take place. The system 40 which is to receive the compressed data inquires at loop 130 whether data is present at the shared memory 42 after being received from the link level controller 48. If the inquiry is yes, the process proceeds to step 132 with the DMA compressed data counter associated with the DCP 50b being set to the number of bytes received from the LLC 48. The decompression DCP 50b is then enabled by the microprocessor 56 at step 134. The data received from the LLC is read into memory 42 and each byte is read from memory 42 into DCP 50b as indicated at step 136. At step 136 each byte is read from the DCP 50b by the microprocessor to see if it is the FF byte indicating the beginning of a header and frame data as queried at step 138. If the byte is not FF, the loop repeats steps 136 and 138. Once the byte FF is detected the next byte is read from the decompression DCP 50b at step 140. This byte will be the XX byte which contains information about the size of the frame. At step 142, it is inverted and entered into the DMA decompressed data counter which is used to count the number of bytes provided at the output of the DCP 50b. The decompressed data counter will now contain the number of bytes contained in the original frame and measure the number as it is provided at the output of the DCP 50b. The DMA controller can now be enabled to move the data out of the decompression DCP 50b buffer as indicated at step 144. The decompression continues as indicated at step 146 with compressed data being read from the memory 40 into the DCP 50b and a stream of decompressed data being provided at the output of the DCP 50b. As the stream of decompressed data exits the DCP 50b and is placed in memory 40 the decompressed data counter is decremented. When the counter decrements to zero the counter indicates the end of the stream of decompressed data which should be identical to the original raw data of the frame. Once the microprocessor is informed that all of the data representing the data frame has been decompressed and entered into the memory 40, the decompressed frame of data is given by the microprocessor to the host bus interface 44 for transmission to the LAN as indicated at step 148.
The foregoing system 40 thus provides an improved bridge/router for use in coupling LANs through a WAN. It is capable of operating at data rates of 2.048 Mbps. By inhibiting the end of the compression marker otherwise provided by the compression DCP 50a, the compression tables will not be cleared and the buffers will not be reset. This provides greater continuity between compressed frames of a packet providing greater efficiency in the compression operation.
Since certain changes may be made in the above apparatus without departing from the scope of the invention herein involved, it is intended that all matter contained in the above description or shown in the accompanying drawing shall be interpreted in an illustrative and not in a limiting sense.

Claims

WHAT IS CLAIMED IS:
1. A data communications system of the type for bridging and routing data among one or more local area networks and a wide area network, said system comprising: means for separating said data transmitted on a local area network into one or more frames of data of a predetermined maximum byte length; means for compressing each frame of data and for transmitting said compressed data to said wide area network, said means for compressing each of said frames including means for providing an end of compression marker at the end of each frame of compressed data; and means for inhibiting said means for providing said end of compression marker.
2. A system according to claim 1, further including means for providing a data structure with each of said frames of data such that said data structure is compressed with the corresponding frame of data.
3. A system according to claim 2, wherein said means for providing said data structure so that said data structure includes information relating to the number of bytes in said frame.
4. A system according to claim 3, further including means for decompressing said compressed data structure and data received from said wide area network based on said number of bytes in said frame and for transmitting said decompressed data to said local area network.
5. A system according to claim 4, further including means for generating a reference signal prior to said data structure so as to indicate the beginning of said data structure.
6. A system according to claim 1, wherein said means for inhibiting said end of compression marker includes means for providing raw data to the end of each stream of said compressed frame of data.
PCT/US1991/006467 1990-09-11 1991-09-09 High speed data compression and transmission for wide area network connections in lan/bridging applications WO1992004790A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US58065690A 1990-09-11 1990-09-11
US580,656 1990-09-11

Publications (1)

Publication Number Publication Date
WO1992004790A1 true WO1992004790A1 (en) 1992-03-19

Family

ID=24321981

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1991/006467 WO1992004790A1 (en) 1990-09-11 1991-09-09 High speed data compression and transmission for wide area network connections in lan/bridging applications

Country Status (2)

Country Link
AU (1) AU8667491A (en)
WO (1) WO1992004790A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0566407A2 (en) * 1992-04-17 1993-10-20 Hughes Aircraft Company Cellular telephone network including a local area network
EP0567217A2 (en) * 1992-04-20 1993-10-27 3Com Corporation System of extending network resources to remote networks
FR2695275A1 (en) * 1992-08-27 1994-03-04 Telecommunications Sa Data compression-decompression method and equipment for synchronous terminal.
WO1994009581A1 (en) * 1992-10-15 1994-04-28 Cabletron Systems, Inc. Full duplex ethernet
EP0616455A2 (en) * 1992-09-19 1994-09-21 International Business Machines Corporation Computer network using data compression
US5475689A (en) * 1990-12-06 1995-12-12 Hughes Aircraft Company Cellular telephone with datagram and dispatch operation
FR2727269A1 (en) * 1994-11-21 1996-05-24 Allegre Francois SYSTEM FOR CONTROLLING ACCESS TO COMPUTER MACHINES CONNECTED IN A PRIVATE NETWORK
WO1998004072A1 (en) * 1996-07-22 1998-01-29 Cabletron Systems, Inc. Method and apparatus for transmitting lan data over a synchronous wide area network
US6507590B1 (en) 1994-01-10 2003-01-14 Nokia Mobile Phones Ltd. Method of data transfer and data interface unit

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4823342A (en) * 1986-02-07 1989-04-18 Hitachi, Ltd. Time division exchange system having functions of compressing and expanding information
US4922503A (en) * 1988-10-28 1990-05-01 Infotron Systems Corporation Local area network bridge

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4823342A (en) * 1986-02-07 1989-04-18 Hitachi, Ltd. Time division exchange system having functions of compressing and expanding information
US4922503A (en) * 1988-10-28 1990-05-01 Infotron Systems Corporation Local area network bridge

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5475689A (en) * 1990-12-06 1995-12-12 Hughes Aircraft Company Cellular telephone with datagram and dispatch operation
EP0566407A3 (en) * 1992-04-17 1994-02-16 Hughes Aircraft Co
EP0566407A2 (en) * 1992-04-17 1993-10-20 Hughes Aircraft Company Cellular telephone network including a local area network
EP0567217A2 (en) * 1992-04-20 1993-10-27 3Com Corporation System of extending network resources to remote networks
EP0567217A3 (en) * 1992-04-20 1998-09-09 3Com Corporation System of extending network resources to remote networks
EP0589738A1 (en) * 1992-08-27 1994-03-30 SAT (Société Anonyme de Télécommunications) Method and apparatus for compressing and decompressing data for a synchronous terminal
FR2695275A1 (en) * 1992-08-27 1994-03-04 Telecommunications Sa Data compression-decompression method and equipment for synchronous terminal.
EP0616455A2 (en) * 1992-09-19 1994-09-21 International Business Machines Corporation Computer network using data compression
EP0616455A3 (en) * 1992-09-19 1995-01-25 Ibm Computer network using data compression.
WO1994009581A1 (en) * 1992-10-15 1994-04-28 Cabletron Systems, Inc. Full duplex ethernet
US6507590B1 (en) 1994-01-10 2003-01-14 Nokia Mobile Phones Ltd. Method of data transfer and data interface unit
FR2727269A1 (en) * 1994-11-21 1996-05-24 Allegre Francois SYSTEM FOR CONTROLLING ACCESS TO COMPUTER MACHINES CONNECTED IN A PRIVATE NETWORK
EP0721271A1 (en) * 1994-11-21 1996-07-10 France Telecom Access control system for computers connected in a private network
US5720035A (en) * 1994-11-21 1998-02-17 France Telecom System for control of access to computer machines which are connected in a private network
WO1998004072A1 (en) * 1996-07-22 1998-01-29 Cabletron Systems, Inc. Method and apparatus for transmitting lan data over a synchronous wide area network
AU707746B2 (en) * 1996-07-22 1999-07-15 Extreme Networks, Inc. Method and apparatus for transmitting LAN data over a synchronous wide area network
US6122281A (en) * 1996-07-22 2000-09-19 Cabletron Systems, Inc. Method and apparatus for transmitting LAN data over a synchronous wide area network

Also Published As

Publication number Publication date
AU8667491A (en) 1992-03-30

Similar Documents

Publication Publication Date Title
US5179555A (en) High speed data compression and transmission for wide area network connections in LAN/bridging applications
US4748638A (en) Data telecommunications system and method for transmitting compressed data
EP0525985B1 (en) High speed duplex data link interface
US4995056A (en) System and method for data communications
US5541930A (en) Byte aligned communication system for transferring data from one memory to another memory over an ISDN
US5909564A (en) Multi-port ethernet frame switch
US5617419A (en) Adapting switch port and work station communication adapters to data frame types with disparate formats and data rates
US5802059A (en) Signal receiving apparatus
EP0129581B1 (en) Method and apparatus for graceful preemption on a digital communications link
US9654419B2 (en) Fabric channel control apparatus and method
US6625671B1 (en) Compression of buffered data
US7027450B2 (en) Frame batching and compression for IP transmission
US5495480A (en) Packet transmission system having timer for circuit disconnection
US5027376A (en) Data telecommunications system and method for transmitting compressed data
US5644577A (en) Preserving data frame continuity across full-duplex LAN interface with disparate data capacities
JPH11503280A (en) Window comparator
US6741566B1 (en) Remote management ethernet network and device
EP0685951A2 (en) Line interface devices for fast-packet networks
WO1992004790A1 (en) High speed data compression and transmission for wide area network connections in lan/bridging applications
US6127953A (en) Apparatus and method for compressing data containing repetitive patterns
US7734965B1 (en) Methods, architectures, circuits and systems for transmission error determination
US6128338A (en) Data-compression transmission system
WO1998014015A2 (en) A method and apparatus for having multiple virtual paths in one serial i/o controller channel
US20050041606A1 (en) Data communication apparatus, data communication method, data communication program and recording medium in which data communication program was recorded
US20180276166A1 (en) Coupler for an automation system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU CA JP KR

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IT LU NL SE

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA