Current Catalog Description

Design principles and issues of network systems. Traditional protocol processing systems and latest network processor/processing technologies. Packet processing, protocol processing, classification and forwarding, switching fabrics, network processors, and network systems design tradeoffs. Prerequisite: CSE 342 or instructor's permission.


D. Comer, "Network Systems Design using Network Processors", Agere Version, Prentice Hall, October 2004, ISBN: 0131489275.


W. Richard Stevens, Bill Fenner, Andrew M. Rudoff, Unix Network Programming, "Vol. 1: The Sockets Networking API", Third Edition, Addison-Wesley Professional, 2003, ISBN: 0131411551.


Students will have:

  1. Fluency in describing the design principles of network systems such as Ethernet switches and Internet routers.
  2. Ability to design and implement packet processing algorithms.
  3. Ability to design and compare traditional protocol processing systems with contemporary network-processor based systems.
  4. Ability to use network processor simulators to simulate packet processing functions.
  5. Ability to use system-level modeling language for system performance studies.


CSE 363 substantially supports the following program outcomes:

  • An ability to analyze a problem and identify and defince the computing requirements appropriate to its solution
  • An ability to design, implement, and evaluate a computer-based system process, component, or program to meet desired needs
  • An ability to use current techniques, skills, and tools necessary for computing practices
  • An ability to apply design and development principles in the construction of software systems of varying complexity

Prerequisites by Topic

  • Computer Networks and the Internet
  • Application Layer
  • Transport Layer
  • Network Layer and Routing
  • Link Layer and Local Area Networks
  • Basic Network Programming in C

Major Topics Covered in the Course

  •  Design principles for the network systems
  •  Packet processing algorithms and functions
  • Protocol software architecture
  •  Network system hardware architecture
  • Classification and forwarding
  • Network processor and its architecture
  • Case studies: Agere network processor and FPL classification language
  • Lab projects with one week per lab project:
  • Traffic monitoring and throughout measurement
  • Router configuration
  • Firewall
  • Network processor reference platform and classification language
  • SystemC models and simulation
  • Stateful classification application

Assessment Plan for the Course

The students are given eleven homework assignments where some of them are related to the lab projects, a midterm exam, and a final examination. Each homework assignment typically covers a single topic. Midterm test has four questions, and the final examination has six questions. Each of these questions typically covers a single topic. I track the performance of the students on each homework assignment and each question on the midterm and final examinations.

How Data in the Course are Used to Assess Program Outcomes:(unless adequately covered already in the assessment discussion under Criterion 4)

I included the data following the assessment plan for the course in my self-assessment of the course. The self-assessment was reviewed by the Curriculum Committee.