Generated on Tue Oct 25 10:19:18 2022

CS 484: Computer Networks I (JSON)

Catalog description: Fundamental concepts of computer communication networks: layered network architecture, network components, protocol stack and service. Example of application, transport, network and data link layers, protocols primarily drawn from the Internet (TCP, UDP, and IP) protocol multimedia networks; network management and security.

Prerequisites: At least a C- in C S 272 and CS 273    (Catalog Link)

Credits: 3 (3)

Coordinator: Jay Misra

Textbook: Computer Networking, A Top-Down Approach, Sixth Edition, Jim Kurose and Keith Ross, Addison- Wesley; and Unix Network Programming, Volume I: The Sockets Networking API, Third Edition, W. Richard Stevens, Addison-Wesley
    (also: online reading)

BS degree role: selected elective

Course Learning Objectives

  1. Explain the layered model of networking using the OSI and TCP/IP models
  2. Describe the purpose and concepts of each layer in the OSI and TCP/IP models
  3. Describe IP as a particular network layer protocol
  4. Describe TCP and UDP as particular transport layer protocols
  5. Describe Ethernet (802.11) and WiFi (802.15) as particular data link layer protocols
  6. Describe and analyze routing and routing issues
  7. Describe and analyze data link layer switching
  8. Describe the need for application protocols such as HTTP, FTP, P2P paradigms
  9. Explain other network issues such as multicasting and audio/video data streaming
  10. Design and evaluate routing protocols by understanding the different routing paradigms, such as distance vector and link-state routing
  11. Understand and evaluate multiple-access protocols, such as Aloha, Slotted-Aloha, CSMA, CSMA/CD, and CSMA/CA
  12. Implement socket-based network programs

Course Practicum Requirements

  1. Programming assignments in C or C++ language
  2. Assignment for client-server network communications and application
  3. Assignment for simulating a complete network
  4. Assignment for demonstrating the advantage of statistical multiplexing using large numbers

Course Topics

  1. Overview of Computer Networks and the Internet
  2. Application Layer and Protocols
  3. Transport Layer and Protocols
  4. Network Layer and Protocols
  5. Link Layer and Local Area Networks
  6. Overview of Wireless and Mobile Networks
  7. Overview of Multimedia Networking
  8. Overview of Security in Computer Networks

Course Improvement Decisions

(Course improvement decisions or recommendations from past assessments)

  1. Add basic concepts of cloud computing
  2. Add basic concepts of edge computing

ABET Outcome Coverage

(Provide Mapping to ABET Student Outcomes)

  1. An ability to apply knowledge of computing and mathematics appropriate to the discipline (Knowledge Application)
  2. An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution (Problem Analysis)
  3. An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs (Design & Implementation)
  4. An ability to function effectively on teams to accomplish a common goal (Teamwork)
  5. An understanding of professional, ethical, legal, security and social issues and responsibilities (Professional Responsibility)
  6. Recognition of the need for and an ability to engage in continuing professional development (Professional Development)
  7. An ability to use current techniques, skills, and tools necessary for computing practice (Techniques & Tools)
  8. An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices (CS Knowledge Application)
  9. An ability to apply design and development principles in the construction of software systems of varying complexity (Complexity & Scale)

Other Notes

(Any important notes or issues to consider)

  1. none