ICS 343: Fundamentals Of Computer Networks

ICS 343: Fundamentals Of Computer Networks

 
Course Information
Class/Laboratory Schedule: 

Three 50 minutes lectures, One 180 minutes lab per week(3-3-4)

Designation: 
 Required Course
Course Level: 
 Undergraduate
Prerequisites
Prerequisite(s) by Topic: 
  • Algorithms and Problem-Solving
  • Recursion
  • Fundamental Computing Algorithms
  • Multithreading Programming
  • Abstraction Mechanisms
  • Object-Oriented Programming Paradigm
  • Using APIs

Note: This course cannot be taken for credit with COE 344.

Catalog Description: 

This course provides a comprehensive and current introduction to computer networks with focus on the functions performed at each layer of the network architecture and common layer protocol standards.

Note: This course cannot be taken for credit with COE 344.

Reference(s) and Other Material: 
  • Computer Networking: A Top Down Approach Featuring the Internet, 4/e, J. Kurose & Keith Ross, Addison Wesley, 2008.
  • Computer Networks: A Systems Approach, 3/e, Larry L. Peterson, Bruce S. Davie, Morgan Kaufmann Publishers, 2003.
Course Outcomes: 

After completion of this course, the student shall be able to:

  • Identify various network services, characteristics, elements, standards and technologies.
  • Describe the layered architecture of computer networks and the operation of main protocols in the TCP/IP model.
  • Identify, compare and contrast different techniques and design issues of core functions such as addressing, routing, internetworking, switching, multiplexing, error and flow control, medium access and coding.
  • Implement simple client-server applications using socket programming.
  • Effectively use commonly used network-related commands, monitoring tools, traffic analyzers and network simulators.
  • Demonstrate the ability to setup a small network and properly configure network components including switches, routers and services (such as RAS, FTP, DNS, Web, DHCP, POP3).
  • Explain potential threats to network resources and various security mechanisms.
Topics Covered: 
  • Introduction to computer networks and layered architectures, connectivity, topology, circuit and packet switching
  • TCP/IP and ISO models
  • Application layer: C/S model, DNS, SMTP, FTP, WWW,
  • Socket programming and network security;
  • Transport layer: TCP and UDP, congestion control;
  • Network layer: internetworking, addressing and routing algorithms and protocols
  • Data link layer: framing, flow and error control protocols, PPP, MAC and LANs;
  • Physical layer: principles of data communications, circuit switching, coding, multiplexing and transmission media.​