Asee peer logo

Network Processes Communication: Class Projects

Download Paper |


2008 Annual Conference & Exposition


Pittsburgh, Pennsylvania

Publication Date

June 22, 2008

Start Date

June 22, 2008

End Date

June 25, 2008



Conference Session

Information Technologies Classroom Instruction

Tagged Division

Information Systems

Page Count


Page Numbers

13.925.1 - 13.925.8



Permanent URL

Download Count


Request a correction

Paper Authors


Mohammad Dadfar Bowling Green State University

visit author page

Mohammad B. Dadfar is an Associate Professor in the Computer Science Department at Bowling Green State University. His research interests include Computer Extension and Analysis of Perturbation Series, Scheduling Algorithms, and Computers in Education. He currently teaches undergraduate and graduate courses in data communications, operating systems, and computer algorithms. He is a member of ACM and ASEE.

visit author page

Download Paper |

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

Network Processes Communication: A System Project for Students

Mohammad B. Dadfar, Ray Kresman

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


In this paper we discuss two projects dealing with communication between network processes. They are assigned in our undergraduate data communications course. The implementation language is C/C++ and the platform is Unix. We introduce a project where students create processes using Unix utilities such as fork that includes different levels of processes such as parent, children, and sibling processes. We also describe a practical client-server application students are already familiar with.

1. Introduction

Data communications and networking courses have been among the most popular courses in computer science departments during the past two decades. Most students try to complete at least one course in this area. Instructors assign different types of projects for their data communications and networking courses1, 2. In our department we have offered a sophomore level mandatory course (Operating Systems and Networks) that introduces both operating systems and data communications concepts. Following this course, we have elective courses in each of operating systems and data communications. A variety of topics including protocol architecture, transmission technologies, data compression, data integrity, flow control, client server communication and remote procedure calls are covered in the data communications course. There are several text books that address these topics3, 4, 5.

We consider practical projects as a main component of this course. Hands-on programming projects are used to enhance the learning process and to gain additional insight into specific topics. The projects are implemented in C/C++. However, they are applicable to other programming languages as well.

We start with simple projects where students create child processes using Unix utilities including fork statement. There are different levels of processes such as parent, children, sibling, and grand children processes. The communication between the parent-child and sibling processes would be interesting, and at the same time challenging for some students.

Dadfar, M. (2008, June), Network Processes Communication: Class Projects Paper presented at 2008 Annual Conference & Exposition, Pittsburgh, Pennsylvania. 10.18260/1-2--4468

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: © 2008 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