Asee peer logo

Data Compression And Data Integrity: Projects For Data Communication Courses

Download Paper |


2005 Annual Conference


Portland, Oregon

Publication Date

June 12, 2005

Start Date

June 12, 2005

End Date

June 15, 2005



Conference Session

Issues in Digital Signal Processing

Page Count


Page Numbers

10.389.1 - 10.389.9



Permanent URL

Download Count


Request a correction

Paper Authors

author page

Sub Ramakrishnan

author page

Mohammad Dadfar

Download Paper |

NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

Session 3420

Data Compression and Data Integrity: Projects for Data Communication Courses

Sub Ramakrishnan, Mohammad B. Dadfar

Department of Computer Science Bowling Green State University Bowling Green, Ohio 43403 Phone: (419) 372-2337 Fax: (419) 372-8061 email:


This paper describes two software projects that are assigned in our undergraduate data communications course. The projects help students understand Lempel-Ziv algorithm and CRC generation of the OSI data link layer. The students write software to implement these two schemes. Students are particularly excited about implementing Lempel-Ziv because popular Unix utilities, such as compress, use a variant of this algorithm.

1. Introduction

Study of operating systems and data communications concepts is an important subject area for most undergraduate computer science programs. In our department we have offered a sophomore level mandatory course that introduces both of these concepts. Following this course, we have elective courses in operating systems and data communications. This paper deals with a project in the latter course.

The elective data communications course covers a range of topics including protocol architecture, client server communication and remote procedure calls, compression and encryption, multiplexing and transmission media. Where possible, hands-on programming projects are used to enhance the learning process and to gain additional insight into specific topics. A good number of text books address these topics1, 2, 3, 4. In the past few years we have used different textbooks including "Understanding Data Communications and Networks," by William Shay, Second Edition (1999). In this paper, we focus on projects that deal with two of the topics in the course, error checking in communications and data compression to provide for bandwidth efficiency.

The first project deals with computing CRC-16 (Cyclic Redundancy Check) in software. The generator polynomial and the payload message are both given as input. The software emulates a well-known hardware implementation so it is very fast. It is written as a client server program,

Proceedings of the 2005 American Society for Engineering Education Annual Conference & Exposition Copyright © 2005, American Society for Engineering Education

Ramakrishnan, S., & Dadfar, M. (2005, June), Data Compression And Data Integrity: Projects For Data Communication Courses Paper presented at 2005 Annual Conference, Portland, Oregon. 10.18260/1-2--14651

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2005 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015