itce314
ITCE 314: Computer Networks I - S1 2010/2011
Dr. Mohamed Baqer
Department of Computer Engineering
College of Information Technology
University of Bahrain
Office: S40-2114
Email: mohamed.baqer(at)gmail(dot)com
Course Overview
The aim of this course is to provide the students with depth and breathe knowledge of computer networks from a user and engineer’s perspective. It is envisaged that by understanding the principles, models, and components of computer networks, students will be able to provide justifiable solutions to various scenarios and businesses requirements. Three main principle will be detailed throughout the course, namely: Computer networks and the Internet, Application layer, and Transport layer.
Course Description
Computer networks and the Internet are one of the most dominate infrastructure in nowadays lifestyle and economy. In addition to the important role computer networks provide to end-users, they affect the way we live, learn, and work. This course provides a modern introduction to computer networking where contemporary technologies and future networking trends will be understood.
Networks are modelled into layers. In this course we are going to learn the first two layers, namely: application layer and transport layer. the application layer will provide detailed description and analysis of contemporary network applications such as Web, FTP, and email. moreover, the client-server and P2P models will be analysed and their different application will be taught. Finally, TCP, UDP, and congestion control will be detailed in respect to our understanding of the transport layer.
Course Outcome
- Understand of various networking terminology and concepts.
- Distinguish, describe, and define various network tiers.
- Compare and contrast between various data switching techniques, namely: packet-switching and circuit switching.
- Measure the performance of computer networks by calculating: packet delays, throughput, and loss.
- Understand, define, and describe various network layers and distinguish between them.
- Understand network applications architecture, process communication, transport services, application layer protocols.
- Describe, and analyse network applications such as: e-mail, DNS, P2P, and Internet Telephony.
- Compare and contrast and implement TCP and UDP applications. Understand, describe, and compare between UDP and TCP services and applications Able to describe, compare, and analyse various network modes, e.g. client-server and P2P models.
- Understand transport layer principles, services, and protocols.
- Understand, design and Implement sockets for network applications. Discuss, justify, and describe transport layer multiplexing and demultiplexing.
Text Book
The first three chapters of the following book will be covered in this course.
James F. Kurose and Keith W. Ross. Computer Networking: A Top-Down Approach: International Version, 5/E, Pearson Higher Education, 2008.
References
http://www.davidreilly.com/jnpbook/
A. S. Tanenbaum, Computer Networks (International Edition), 4th ed. Prentice Hall, August 2002.
Java tutorials:
http://www.javacoffeebreak.com/java101/java101.html
http://java.sun.com/docs/books/tutorial/getStarted/cupojava/win32.html
Software
Download an editor and the latest Java SDK available here.
Course Assessments
Test Dates
Test 1
Test 2
Final Exam
11/11/2010 13:00 to 14:00
30/12/2010 13:00 to 14:00
12 January 2011
For Further information refer to the course syllabus.