AC 2010-1836: ENHANCING LEARNING IN DATA

AC 2010-1836: ENHANCING LEARNING IN DATA COMMUNICATION AND
NETWORKING WITH HOME NETWORK
HongLi Luo, Indiana University-Purdue University, Fort Wayne
Page 15.511.1
© American Society for Engineering Education, 2010
Enhancing Learning in Data Communication and Networking with
Home Network
1.
Introduction
Data communication and networking is provided as an introductory course to get the students
familiar with the concepts and technologies in computer networking. It covers a wide range of
technologies and protocols in the network, which makes the hands-on practice necessary for the
learning of this course. It is challenging to build a real network with a limited budget because of
the cost of equipment, space and network management. It is difficult for the students to have full
access to a real network since they have to share it with other students and can not change the
configurations easily. Students, especially those taking online courses, prefer to work on a
network that they can perform experiments conveniently. So it is important to introduce a
network environment that the students have easy and full access to facilitate the learning.
With the prevalence of residential broadband Internet access and the popularity of wireless LAN,
a home network is quite common which is composed of cable modem, low-cost wireless router
and one or more computers. Over 85% of people in the survey11 with a home network use some
form of home router. Most of the students taking the data communication and networking
courses have a wireless router at home. For example, more than 90% of the students in the
networking class already have the experience of setting up a wireless router at home. But most of
the students only use the home network for the sharing of broadband Internet connection.
Actually, the home network is a typical Local Area Network (LAN) which illustrates lots of
networking concepts. The students can learn more about computer networks if they can perform
more experiments at home network. It is desirable to design some labs for the students to work
on their home network. The purpose of this paper is to introduce a set of labs that can help the
students utilize the available network resources at home and gain some hands-on practice.
Most of the laboratories designed for the computer networking courses are set up on campus
networks11, 14, 15. The labs run on real devices which needs a budget. Those networks are
maintained by technical staff and shared by all the users, so students only have limited access to
the networks. Besides the traditional networking laboratories performed on real devices, there are
some other approaches to teach networking labs, such as virtual lab software13 and simulation
tools. Simulation software1,5,8 can be used to simulate the network environment, so real
equipment and networks are not necessary. For example, VMWare1,12 is used widely in the
teaching of computer networks. Compared with the virtual network, the advantage of our
approach is that the students can work on the real equipment and network. They can verify the
results and understand how a computer network is working in a real environment.
Page 15.511.2
In the design of the labs, besides configuring the home network to share the Internet connection,
we extend the home network as a teaching laboratory. The purpose is to enhance the learning in
data communication and networking courses with a series of assignments and laboratories
performed on the home network. It can help the students enhance the learning of the abstract
concepts and theories. At the same time they can gain hands-on experiences of networking
management. This set of assignments can be especially useful for the students that take online
computer communication and networking courses.
2.
Course Contents
Data Communication and Networking is offered as a junior level undergraduate course in our
department. This course is a survey of data communication and networking techniques, protocols,
and standards. It covers a wide range of concepts, theories and techniques in data communication
and networking. The textbook used in this course is Data Communication and Networking, 4th
Edition, by Behrouz A. Forouzan3. Major topics covered in the course are:
≠
≠
≠
≠
≠
≠
≠
≠
≠
Network models: OSI model and TCP/IP models
Digital signal transmission and analog signal transmission, encoding and modulation
Transmission medium
Multiplexing, switching
Data link layer: Error detection and correction, data link control, and multiple access
Local area network and wireless networks
Network layer: IP addressing, network protocol, routing
Transport layer: port addresses, TCP protocol and UDP protocol
Internet Application
Since some concepts are difficult to understand, visualization of the concepts will be helpful. The
students prefer to see the results to understand the mechanism. For the technology covered in the
lectures, students are interested in the examples in a real network. The laboratories will enhance
the understanding of the concepts covered in the lectures, such as
≠
≠
≠
≠
≠
≠
≠
3.
Data communication and networking basics
Network devices and transmission medium
Local area network installation
Basic commands for network management
TCP/IP layered model and protocols at each layer
Network addresses: MAC address, IP address, port address
Configure firewall to provide network security, analysis of network traffic
Setup of Labs
Figure 1 is a typical home network with Internet access. It consists of a broadband modem,
wireless router, one wireless laptop, and an optional desktop. The broadband modem can be a
FiOS, cable or DSL modem depending on the Internet service the user is subscribing to. Here
Comcast cable modem is used as the example.
Page 15.511.3
The minimum requirements needed for the lab assignments are: one or two computers with
Microsoft Windows, CAT-5 cables, a wireless router, and broadband Internet connection. The
design of the modules of the labs follows the 5 layers of TCP/IP protocols. With minor
modifications, most of the labs can be performed without the Internet connection. Some labs can
also be running on just one computer if the students do not have an extra computer at home.
Figure 1. A typical home network with Internet connection
The home network is an infrastructure based wireless LAN (WLAN), where the communication
between two computers must go through the wireless router. A typical WLAN router has four
built-in Ethernet ports and 802.11 access points. The wireless router can serve multiple purposes,
such as IP address allocation, connecting multiple networks, improving network performance,
and enhancing network security. The wireless router can work as both an access point and a
router. In access point mode, the router can be used to create a wireless network where multiple
clients can connect to the network and communicate with each other. In router mode, the router
can be used to create a wired/wireless network and share a single broadband Internet connection.
The router can also work as a DHCP server to automatically assign IP addresses to each
computer. In addition, the router can provide VPN pass-through firewall features to protect the
network from malicious attacks.
Most of the wireless routers provide web-based utility for the users to perform the management
and configuration of the router. The lab examples in this paper use the D-Link DI-624 router7 as
the wireless router. The labs can be easily extended to other low-cost wireless routers in the
market.
4.
Design of Lab Exercises
This set of lab exercises covers the set up of a LAN, configuration of wireless router, packet
capture, firewalls, and exercises related to the each layer of TCP/IP model starting from the
lower layers.
Page 15.511.4
Table 1. IP addresses of the devices
Device
IP address
Cable modem
192.168.100.1
Wireless router
192.168.0.1
Computer 1
192.168.0.100
Computer 2
192.168.0.101
Lab 1: Set up the home network
The first step is to configure the wireless router and set up the home network. Enable the wireless
router work as the DHCP server during the configuration, so the router can allocate IP addresses
automatically to computers connected to it. Table 1 gives a summary of the IP addresses of the
devices in the network. To test the connectivity, the students can run ping command to verify the
connection between two devices.
The web page of the configuration of the wireless router D-Link DI-624 is displayed in Fig 2. It
covers the basic parameters in configuring a wireless LAN, such as SSID and authentication.
Figure 2. Configuration of wireless router
Lab 2: Network basics
For technologies covered in the lecture, such as modulation, analog signal transmission, digital
signal transmission, the students can find the real examples in this network. The IP address of the
Comcast cable modem is 192.168.100.1. A web interface is provided to view the performance of
the cable modem as in Fig 3. The students can use web browser to view the information of the
cable modem to know some of the parameters used in the broadband Internet connection.
Page 15.511.5
The students are asked to study the local area network and answer the following questions about
the concepts illustrated in the network.
1. Topology of the network
≠ Star topology
2. Analog signal transmission in the network.
≠ Between cable modem and ISP
≠ Between wireless laptop and wireless router
3. Digital signal transmission in the network
≠ Wired connection between desktop and router
≠ Between router and cable modem
4. Modulation methods in digital signal transmission
5. Modulation methods in analog signal transmission
6. Transmission medium
≠ wireless medium, UTP cable, coaxial cable or fiber cable, connectors of the cables
7. Underlying networks:
≠ IEEE 802.3 Ethernet and IEEE 802.11 WiFi
Figure 3. Web interface of cable modem.
Lab 3: Data link layer
This lab helps the students get familiar with the MAC address and network interface card
(NIC) used at the data link layer. The students learn to use commands to check the MAC
address and IP address of a computer.
Page 15.511.6
To view the IP configuration of a computer, open a command window and run the command
C:\> ipconfig /all
To view the IP configuration of the wireless router, use Status/Device Info utility provided
by the router as in Figure 4. Since a router is used to connect multiple networks, each
interface of the router has a pair of MAC/IP address, which can be seen from the Figure 4.
The students also use arp command to study how the mapping between IP address and MAC
address is stored in the ARP table.
The students can run ping to test the connection to another computer, e.g.,
C:\> ping 192.168.0.101
Then run arp command to display the arp table
C:\> arp –a
Figure 4. Web interface for the IP configuration of the wireless router
Lab 4: Network layer
The basic two functions of network layer covered in the lectures are IP addressing and routing.
This lab assignment is designed to help students understand the various concepts of IP
addressing, such as DHCP server, static IP address, dynamic IP address, private IP address,
subnetting, network address and subnet mask. To understand the concept of routing, the students
can view and modify the routing table of a computer or the router.
Page 15.511.7
IP Address Allocation
The students use the Home/DHCP utility provided by the wireless router in Fig. 5 to allocate
dynamic IP address or static IP address to computers connected to the wireless router. Some of
the lab operations are
≠ Use DHCP Server for dynamic IP address allocation. Under this method, an IP address
will be automatically selected from the pool of available IP addresses and allocated to the
newly connected computer. For example, in Fig 5, the dynamic addresses will be
≠
≠
sequentially selected from 192.168.0.100 to 192.168.0.199. The lease time for the
dynamic IP address is 1 week.
Use static DHCP. An IP address can be specified and allocated to a computer with a
particular MAC address.
Each time after the IP address is allocated, the students can run ipconfig command to
verify the IP address allocated to the computer.
Figure 5. web interface for IP address allocation
Routing
Each network device, a computer or a router, has its own routing table. The routing table defines
which interface an IP packet should be forwarded based on the destination IP address of the
packet. The students learn to check the routing information of a computer or a router.
Page 15.511.8
Figure 6. Output of route print running on 192.168.0.101
To view the routing table of a computer, run the command
C:\> route print
As can be seen from Fig. 6, the default gateway for the computer inside the home network is
actually the wireless router with the IP address 192.168.0.1. Users can also run route
add/change/delete to manually add, modify or delete an entry in the routing table.
To view the routing table of the wireless router, the students can use the Advanced/Routing
provided by the router as in Fig 7. This web page also allows the user to add routing entries to
the routing table.
Figure 7. Web interface for routing information of the router
Lab 5: Transport layer
The lab covers the addresses and protocols used at the transport layer. Port addresses are used at
the transport layer together with IP addresses to realize process to process communication. TCP
and UDP are the two major protocols at the transport layer. The lab helps the students to
understand the concept of process to process communication at the transport layer. The process
to process communication is implemented using the socket addresses, which are the
combinations of IP address and port address.
This lab also illustrates the concept of client/server diagram in network applications. Two simple
Java programs9 are provided to demonstrate the usage of TCP socket programming, one working
as the server program and the other as client program. The client program accepts a string from
user input and sends it to the server program. The server program converts the string to all capital
letters and transmits it back to the client program.
Page 15.511.9
The students are required to download Java2, compile and run the programs. The server program
is running on the computer 192.168.0.101, with the port number specified at the command line.
The command java TCPServer 6789 starts the server process with the port number 6789. Two
client processes are running at the computer 192.168.0.100. The command java TCPClient
192.168.0.101 6789 starts the client process to connect server 192.168.0.101 with port number
6789. Figure 8 and Figure 9 display the outputs of the two programs. As can be seen from the
Figure 9, each client process is assigned a different port number for the process-to-process
communication.
Figure 8. Server process running on 192.168.0.101
Figure 9. Client processes running on 192.168.0.100
Lab 6: Application layer
Wireshark6 is a free downloaded packet analyzer that can be used for network troubleshooting
and traffic analysis. In this lab, the students are required to use Wireshark to capture the traffic
generated by different kinds of applications. The screenshot in Fig 10 shows the trace of traffic
generated when a web browser is opened to view the URL http://192.168.0.1, which is the web
page of the wireless router. The sequence of packets shows that the web page is transferred using
HTTP protocol at the application layer and TCP protocol at the transport layer. The information
of data unit at each layer can be viewed, e.g., Ethernet frame at the data link layer, IP datagram at
the network layer, and TCP segment or UDP datagram at the transport layer. The sequence of the
packets demonstrates the mechanisms of TCP, such as three-way hand-shaking of the TCP
connection, SYN-ACK and ACK. Similarly, the students can use other network applications,
such as SSH and FTP, to view the generated trace of traffic and better understand how the
packets are exchanged between the client and the server.
Page 15.511.10
Figure 10. Screenshot of Wireshark
Lab 7: Network security
This lab is designed to help the students understand the concepts of firewall and how it can
enhance the security of networks. DI-624 router provides two utilities to configure the firewall to
control the traffic: Advanced/Filters and Advanced/Firewalls. The lab also illustrates the wellknown port addresses associated with different applications, since port addresses are widely used
to create the access control rules of firewall.
Advanced/Filters utility in Fig 11 is used to allow or deny LAN users from accessing the Internet.
Alternatively speaking, it can be used to control the outgoing traffic originated from the home
LAN to the Internet. The students are required to block traffic from a certain application that is
originated from an IP address or MAC address. For example,
≠ Block the port 80 from the computer with IP 192.168.0.101. Then verify that this
computer can not access the Internet web services. If the same computer is given another
IP using static IP address allocation, the computer can access the Internet web service
again.
≠ Block the port 22 from the computer with IP 192.168.0.101. Then verify that this
computer can not use SSH to connect to an Internet host.
≠ Block the port 80 from the computer with a certain MAC. Then verify that this computer
can not access the Internet web services no matter what IP address it is assigned to.
Page 15.511.11
Figure 11. Web interface for Filters
Advanced/Firewall utility in Fig 12 allows users to create firewall rules which allow or deny
traffic from passing through the wireless router. This utility can be used to protect a computer
inside the home network via blocking certain types of traffic destined to it.
The two computers in the home network can be used to simulate the client/server
environment. Assume the computer with IP address 192.168.0.101 is the server. Firewalls
can be created at the router to protect the services running on the server. To simplify the
procedure, no real server applications such as web server or ftp server are required to install
on the server computer. Instead, the Java server program used in the Lab 5 is running on the
computer to simulate the service provided by the server.
The students can use the Advanced/Firewall to create the following access control rules to
protect the server computer. For example,
≠ Disable the ping traffic to the server via disabling the ICMP protocol. This is a simple
solution to protect a server from Denial of Service attacks. To verify the results, ping
the server from another computer. There is no response from the server.
≠ Disable the port number used by the Java server program in Lab 5. To verify the
results, run the Java client program at another computer. It can not connect to the
server program.
Page 15.511.12
Figure 12. Web interface for Firewall
Other advanced capabilities of the router
Some advanced wireless router, such as Wireless-G Broadband Router WRT54GL from
Cisco, has the Quality of Service (QoS) capability. QoS-enabled router can provide better
service to high-priority types of network traffic generated by real-time applications, e.g.,
videoconferencing. The router allows the user to specify different priorities to device,
Ethernet port, and application4. Those features are designed to provide QoS for real-time
multimedia applications, for example, Voice over IP (VoIP), video streaming, and interactive
gaming.
Assessment
The assessment of this lab design is based on the feedback from the students and self-evaluation
of learning outcomes. Learning outcomes of the lab assignments are:
≠
≠
≠
≠
≠
≠
Learn how to build and maintain a home or small business network
Understand the fundamental concepts of data communication and networking
Understand the OSI and TCP/IP network models
Know about the current network infrastructure, network devices and transmission
medium
Know about the functionalities, protocols and addressing at each layer
Provide simple network security management
Page 15.511.13
Some of the labs have been used as lab assignments or demonstrations in our Data
Communication and Networking course. It is observed that the students can finish the
experiments very quickly since each student has its own network and has full access to it. The
students find it easy to use and it helps them gain a better understanding of computer networking
fundamentals. Seeing the results is appealing to students with different learning styles. Visual
learners find it especially helpful since they can work on the real device and see the results. After
the students get familiar with the home network, they are motivated to perform more
experiments and try on different operations on it. To further assess the learning outcomes of the
design of labs, this set of assignments will be introduced to the online course of Data
Communication and Networking in the future. Student feedback will be collected and analyzed
for assessment.
5.
Conclusion
Home network provides a convenient environment for the students to explore the networking
operations. This paper introduced a set of lab assignments that can be performed in a home
network. The labs emphasize the practical experience with real networks at home to enhance the
learning of the basic concepts covered in the lectures. The practice not only enhances the
understanding of the fundamental concepts of networking, but also helps the students gain
experiences of managing a local area network. The lab assignments can also be used for the
online courses since the student have easy and full access to the home network.
Bibliography
[1] E. Freudenthal, F. Kautz, B. Das, and L. Longpre, A Virtualized Network Teaching Laboratory, ASEE 2009.
[2] Java, http://www.java.com/en/download/index.jsp.
[3] Data Communications and Networking, 4th Edition, by Behrouz A. Forouzan, McGraw-Hill, 2007.
[4] Wireless-G Broadband Router, Model:WRT54GL, User Guide.
[5] J. Loddo and L. Saiu. Marionnet: A Virtual Network Laboratory and Simulation Tool, SimulationWorks, 2008.
[6] Wireshark, http://www.wireshark.org/.
[7] D-Link AirPlus Xtreme GTM DI-624 High-Speed 2.4 GHz Wireless Router Manual.
[8] OPNET, http://www.opnet.com/.
[9] J. F. Kurose and K. W. Ross, Computer Networking: A Top-Down Approach, ISBN: 0-13-607967-9.
[10] “The Home Network Owner 2004, A Survey of Current and Future Home Network Owners”, In-Stat/MDR,
May 2004.
[11] A. N. Greca, R. P. Cook, and J. K. Harris, Enhancing Learning in Data Communication and Networking Course
with Laboratory Experiments, Journal of Computing Science in College, Vol. 19, No. 3, January 2004.
Page 15.511.14
[12] G. D. Steffen and H. I. Abu-Mulaweh, “Teaching Local Area Networking in a Secure Virtual Environment”,
Computer Applications in Engineering Education, March 2009.
[13] F. Zeng, “Exploring New Online Laboratory Modules for the Online Computer Networking Course”, in
Proceedings of the 2007 American Society for Engineering Education Annual Conference and Exposition, Honoluu,
Hawaii, June 2007.
[14] M. Aburdene, D. Hyde, X. Meng, J. Janzi, B. Hoyt, R. Droms, “An Undergraduate Networked Systems
Laboratory”, in Proceedings of the 2002 American Society for Engineering Education Annual
Conference and Exposition, Montreal, Quebec, Canada, June 2002.
[15] Maurice F. Aburdene, Xiannong Meng and Gregory L. Mokodean, “Analysis of Computer Networks
Courses in Undergraduate Computer Science, Electrical Engineering and Information Science
Programs”, in Proceedings of the 2004 American Society for Engineering Education Annual Conference
and Exposition, Salt Lake City, Utah, June 2004.
Page 15.511.15