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.
Textbook
D. Comer, "Network Systems Design using Network Processors", Agere Version, Prentice Hall, October 2004, ISBN: 0131489275.
References
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.
COURSE OUTCOMES
Students will have:
- Fluency in describing the design principles of network systems such as Ethernet switches and Internet routers.
- Ability to design and implement packet processing algorithms.
- Ability to design and compare traditional protocol processing systems with contemporary network-processor based systems.
- Ability to use network processor simulators to simulate packet processing functions.
- Ability to use system-level modeling language for system performance studies.
RELATIONSHIP BETWEEN COURSE OUTCOMES AND PROGRAM OUTCOMES
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.