Sei sulla pagina 1di 4

Teaching Computer Networking Using Open Source Software

Daniel Nelson and Yau Man Ng


School of Communications and Informatics
Victoria University of Technology
Melbourne, Australia
{dan, yman} @cabsav.vu.edu.au

1 Abstract networking (as distinct from data communications). It is the


For the past seven years we have taught a subject entitled third subject of the sequence, with the first subject rather
Network Software and Management (NSM) for both inappropriately entitled Data Communications, and the
computer science and electrical engineering students. We second entitled Network Operating Systems (NOS)
discuss the evolution of this subject syllabus in response to Administration (which concentrates entirely on Windows
the changing requirements of the workplace environment, NT V.4 administration). Even with three subjects devoted
ever improving technology and the need to combine theory to computer networking, we fmd that many worthwhile
and practice in teaching subjects such as this. We used topics may not be included or covered to the desired depth.
open source software exclusively in our laboratory The aims of the subject are to enable graduates to:
exercises and we provide the rationale behind our choice of • Understand the capabilities, limitations and current
specific software packages. developments in computer networking,
* Adapt to changes in networking hardware and/or
2 Introduction
software technology,
NSM was first introduced in 1993 in response to the • Prepare for a professional c~eer in computer
perceived need for graduates who are trained in the networking, and
integration and administration of computer networks. • Prepare for possible study at a graduate level.
Others voiced similar concerns [13]. By nature and
tradition, tertiary institutions in Australia have structured Computer networks and data communications are now
their courses to educate in the general rather than train for well established and mature areas of study. We strongly
the specific. This policy, in many respects, has placed believe that we are pedagogically obligated to concentrate
graduates at a disadvantage when competing for jobs. It on enduring theoretical concepts, and not necessarily the
must be emphasised that a tertiary degree is no longer a imperatives of the workforce. Instructors are often tom
ticket to a job, but a prerequisite for a good job. between teaching theoretical fundamentals and the need to
include state of the art concepts and practical information
The challenge is - how do we make our course that students can use to enhance their marketability. We are
(teaching methods, laboratory material and technologies) mindful of the transient nature of specific network training:
relevant to the needs of industry while maintaining a for example, in the early 1990's, Novell was the dominant
commitment to sound pedagogical practice, as well as player in networking operating systems, but now has been
appealing to a broad cross section of students? reduced to being a relatively minor player in this area.
Whilst several other universities also take the practical
3 Syllabus Windows NT administration approach [4], we feel that
NSM is a four-hour subject consisting of two hours of more is required from a well-rounded computer networking
lectures and two hours of supervised practical work per professional.
week. This subject is one of three that we offer in computer The textbook prescribed for NSM is Computer
Networks, by Tanenbaum [12]. Prior to 1996, the
prescribed text was by Halsall [6]. We believe that the
Permission to make digital or hard copies of ell or pert of this work for stress on TCP/IP protocols and the Tanenbaum's relatively
personal or classroom use is granted without fee provided that
copies are not made or distributed for profit or commercial advan- opinionated discourse makes interesting reading for the
tage and that copies bear this notice end the full citation on the first page. average student. Theory for this subject covers:
To copy otherwise, to republish, to post on servers or to
redistribute to lists, requires prior specific permission and/or a fee. Introduction, Application Layer, Transport Layer, Network
ITiCSE 2 0 0 0 7 / 0 0 Helsinki, Finland Layer and the Medium Access Layer. This ordering differs
© 2000 ACM 1-58113°207-7/00/0007...$5.00
from the text, in that we currently apply a top down
approach, rather than the bottom up approach used by
Tanenbaum. The reason for this change was to teach what

13
students consider more interesting topics (e.g. applications) need not worry about the loss of valuable components. We
early and to ensure that adequate time is spent on the top note that this less than optimal setup is not unique to our
layers of the reference model. university [8]. The PCs are connected to the University
Over the seven-year time span that we have taught this network through a Linux-based firewall. This firewall is to
contain the network traffic within the laboratory and protect
subject, emphasis has shifted from concentrating almost
completely on the lower layers (transport and below) in the the university network from the students.
earlier years to the current allocation of at least one-third of Equipment-wise, NSM is relatively cheap to run. The
the time to the application layer, where there is a great deal subject, however, has historically required an exclusive
more programming and management activity. computer laboratory. Lecturers of other subjects sharing the
same laboratory found it impossible to depend on the
4 Laboratories availability of their software. Often, machines were left in
The subject consists of five laboratory experiments and one such a state that later students could not use them. We
assignment in a thirteen week semester. Each experiment overcame this problem by introducing two mobile racks for
goes for two weeks and requires a formal practical report each computer, allowing a hard disk to be easily exchanged
with another containing the required software prior to the
and demonstration. The objectives are:
next practical. NSM used the lab for two days a week. A
• To expose the students to current development and technician set up each computer with the appropriate hard
practice in computer networking, disk prior to the next day's labs. The mobile rack
• To improve the students' research skills and arrangement also facilitated students using their own hard
confidence, and disk. Initially, most students opted to use the provided hard
• To require students to read and process on-line disks, but by the fourth week of semester, every group had
manuals, Request For Comment documents (RFCs), purchased their own hard disk and rack. Students found that
Frequently Asked Questions (FAQs), product the mobile racks allowed them to immerse themselves in
information, etc. the new networking environment, as they were able to use
Being able to read and understand technical the system at home. We did not implement the common file
documentation is non-trivial and requires practice and is a sharing technique as suggested by Mayo and Kearns [9], as
basic requirement of any future network administrator and, students wanted a complete system to work on at home.
indeed, any computing professional. To this end, detailed
technical assistance in the laboratory gradually decreases 6 Software
during the semester. Initially, comprehensive step-by-step The software used in our networking laboratories is open
instructions are given in order to accomplish a laboratory. source (public domain). OSS exposes the student to the
As time passes, less precise instruction is given, and the Open Source philosophy and development paradigm and
student is required to become more independent in order to also provides an example of the way that people can
successfully complete the practical. cooperate over large distances to produce professional
Laboratory work is often time consuming for both quality software. Debina, Okenan and Stone [3] give a
students and tutors. Generally, students work in groups of history and rationale for OSS. Others argue about its future
two. From our experience, and that of others [2,5], group and methodology [1, 10, 11]. We fmd, however, that OSS
dynamics improve learning outcomes when students work is ideal for our networking environment. Its high quality
together by making the subject more enjoyable and and the fact that it is free from licensing difficulties greatly
interesting. For most students, this is the first time that they appeals to students who want to use it at home. Also, OSS
have full administrative rights on a Unix system. As a rule, exposes the software more to the user. There are no
most students are not able to finish the practical work in the undocumented system calls as sometimes are found in
scheduled time, and in many cases they need to come back commercial software.
in their own time. Often, when students later returned, they The practical exercises completed in 1999 were based
have found that another group had overwritten their work, on the following software packages:
which meant that their earlier completed work had to be
• Slackware or Red Hat distribution of Linux,
repeated. It is often the case that a student accomplishes the
task on a subsequent attempt far more knowledgeably and • Apache Web Server, PHP, and MySQL,
efficiently. • Secure shell, Pretty Good Privacy (pgp), and software
security utilities (md5sum, digital certificates),
5 Laboratory Facilities • Network Diagnostic utilities (arp, ping, traceroute,
tcpdump),
The network laboratory currently consists of older A router based on Linux
computers retired from other laboratories, each fitted with
two Ethernet cards. It may actually be better to use older These practical experiments may be found at
machines (as long as they are reliable), because students http://melba.vu.edu.au/-eec3704.
don't have to worry about 'breaking' anything, and staff

14
6.1 Linux Installation by using network sniffing tools in a broadcast network are
This laboratory exercise requires students to install and common in teaching environments. The danger of powerful
configure the operating system software for a Unix/Linux network diagnostic tools, such as tcpdurnp, falling into the
workstation in a networking environment. It was chosen for wrong hands was discussed. These exercises were chosen
the following reasons: for the following reasons:
• Students have had prior exposure to the Unix • They demonstrate the usage of various encryption
environment as users. Most, however, perceived Unix algorithms discussed in lectures. The use of open
as arcane and difficult to administer. The removal of source software shows that security does not depend
this perception helps to build their self-confidence in on obscurity,
computer networking, • They alert students to the challenges of network
• As students use the Unix environment for other security and introduce available tools for the
subjects their work in the Linux environment gives prevention and management of security breaches.
them added Unix experience,
• Linux has a relatively low demand on hardware 6.4 Network Diagnostic Utilities
resources and is also the basis for all our later
A successful network manager needs tools to diagnose
laboratory exercises. The complete system as installed
many problems that a network may suffer. Some basic
by the students included the extra packages of Star
network diagnostic tools (ping, traceroute, tcpdurnp and
Office and Visual Age Java,
time domain reflector meter (TDRM)) were introduced in
• Unix administration distinguishes the student from the
this exercise. Students are required to delve further into the
typical system administrator. Unix along with
operations of ping and traceroute and read the relevant
Windows NT Administration provide a useful resnm6
RFC of the protocols used in these utilities. Because of a
for future job hunting.
lack of equipment the use o f the TDRM for physical
6.2 Web Server, PHP and MySQL network diagnosis was conducted as a demonstration only.
T c p d u m p was used to examine the operations of ARP and
The driving force behind the enormous growth of Interact traceroute.
traffic in the past few years was the result of the
development of web browser clients such as Netscape and 6.5 Router Installation
Internet Explorer and web servers such as Apache. Students The success of networking companies, such as CISCO,
are familiar with the various web clients, but it is important which specialises in routers and switches, and the high
that they should also understand the operation of the web demand for IT personnel skilled in the configuration and
server, which is the foundation of on-line business. administration of routers, demand the inclusion of router
Apache is currently the most popular web server and is installation and usage as a laboratory exercise. A router
also open source. Once again, students are required to read based on Linux may not match the performance of
through the documentation included with the package, and commercial routers, but it is adequate to demonstrate the
any additional information available from the web, to principles and operation of a router. In this exercise,
become the Web Master. Various configurations requiring students work in groups of two on two adjacent PCs.
access control, proxy forwarding and a simple on-line shop Students perform the necessary configuration to make one
front have to be implemented in this exercise. of the PCs into a router and the other into a workstation
with the necessary network addresses and routing table.
PHP is a server-side HTML-embedded scripting Each group physically creates a subnet of their own and
language that allows the production of dynamic web pages. must be able to communicate with another group's subnet
MySQL is multi-user, multi-threaded SQL database server. via the common subnet connecting them. Students are
This trio of open source packages demonstrates the power required to be familiar with the usage of the following
of client-server applications. They allow the student to commands: route, netstat, ifconfig, ping, and arp.
irrqalement a prototype for a real-life e-commerce
application. 6.6 Programming Assignment
Students find this practical particularly challenging, as In earlier years this assignment centred on simulations of
the three packages require close integration for the system networking protocols. It was successful in enhancing the
to work properly. Students have to compile from source students understanding of networking protocols. Feedback
code. This demands a good understanding of Unix from students and the demand from industry necessitated
commands and file system layout, as well as the maturity the change to socket programming. Programming with
and patience to read through the on-line manual carefully. Unix sockets gives students experience with protocols and
communication between processes without having to deal
6.3 Secure shell, PGP, and Software Integrity with machine dependencies at lower levels. Students
The importance of network security cannot be encounter different challenges in this assignment from any
underestimated. The incidences of stolen Unix passwords experienced in their previous programming classes.

15
Students must consider race conditions, concurrent that both they and we put into completing the subject
processes, mutual exclusion and other details of inter- successfully. The real payback for them comes when
process communication. Our students, who have had no applying for employment in the networking area and noting
previous experience with socket programming, are given that their experience is highly valued by employers for the
samples of code to manage the socket in the assignment. It education and practical training that they have akeady had.
still remains a significant effort on the students' part to Open Source Software allows students the freedom to
integrate this sample code into the code required to do the take their software and all their development work between
required task for both the server and client of their home and university by means of a mobile rack. This
application. Over the years, students have been asked to allows greater exposure to the subject material and,
implement several client-server applications such as simple consequently, improved learning outcomes.
FTP client and server and a simple multi-user chat client
and server. Students may use any programming language to
develop the application, but, typically, Java is the language References
of choice, as it is the easiest with which to develop [1] Bollinger, T., et. al., Open-Source Methods: Peering
applications for the Internet. The assignment was Through the Clutter, IEEE Software, 16, 4,
considered very useful and has often enhanced their (July/August 1999), 8-11.
chances of getting employment in the area. See below. [2] Daigle, R. J. and Niccolai, M. J., Inter-class Synergy
by Design, ACM SIGCSE Bulletin, 29, 1 (March
7 Student Feedback 1997), ACM Press, 92-95.
The overall feedback from students regarding this subject is [3] DiBona, C., Ockman, S., and Stone, M., Ed., Open
positive. Typical responses have been: Sources: Voices from the Open Source Revolution,
• Students ranked the exercises and the programming O'Reilly, 1999.
assignment as highly relevant and valuable, [4] Elenbogen, B. S. Computer Network Management:
• The theoretical parts of the subject are ranked as only Theory and Practice, ACM SIGCSE Bulletin, 31, 1,
average, 1999, ACM Press, 119-121.
• Returning students have often remarked that this [5] Felder, R. M., Reaching the Second Tier - Learning
subject was a very important part in securing and Teaching Styles in College Science Education,
employment, as well as being an integral foundation of Journal of College Science Teaching, 23, 5,
knowledge required for their employment, (March/April 1993), 286-290.
• As Linux has become more popular in the last two [6] Halsall, F. Data Communications, Computer
years, students' perception of the installation exercise Networks and Open Systems, 4th Edition, Addison
have changed from being neutral to quite positive, Wesley, 1996.
• Students recognised early in the semester that a gap
existed in their Unix/programming background. This [7] Lankewicz, L. B. Resources for Teaching Computer
coupled with the difficulty of the laboratory exercises Networks, ACM SIGCSE Bulletin, 30, 1, (March
meant that many acquired additional resource material 1998), ACM Press, 112-116.
such as "Linux for Dummies". [8] Levin, M., A Prototype for a Data Communications
Laboratory or A Data Comm Lab in a Closet, ACM
8 Conclusions SIGCSEBulletin, 29, 1, 1997, 1 ACM Press, 79-183.
NSM has changed a lot, both in theory and practical work, [9] Mayo, J. and Kearns, P. A Secure Networked
over the years that the subject has been in existence. Seven Laboratory for Kernel Programming, A CM SIGCSE
years ago we faithfully taught the ISO/OSI seven-layer Bulletin, 30, 3, September 1998, ACM Press, 175-
reference model of networking. Today, we may still refer to 177.
OSI, but we now firrnly reside in the TCP/IP networking
camp. Some things about the subject have not changed [10] McConnell, S., Open-Source Methodology: Ready
much, however. This subject has always required a for Prime Time?, IEEE Software, 16, 4, (July/August
significant time commitment by students. Much of the 1999), 6-7.
work that they do is unsupervised and requires a mature [11] O'Reilly, T., Lessons From Open-Source Software
problem solving approach to be able to finish the task. Development, Communications of the ACM, 42, 4,
Students initially aren't used to being required to work (April 1999), ACM Press, 33-37.
independently, and often flounder when required to read [12] Tanenbaum, A. S., Computer Networks, 3ra Edition,
and apply technical documentation. As the semester Prentice Hall, 1996.
progresses, most improve dramatically. [131 Tucker, A. B. and et. al., Strategic Directions in
Despite the time consuming requirement for support Computer Science Education, ACM Computing
and maintenance of the computer laboratory, it is very Surveys, 28, 4, (December 1996), ACM Press,
rewarding to fred that students appreciate the extra work 836-845.

16

Potrebbero piacerti anche