CSE 617 Advanced Networks (3 credits)

Catalog description:

Study of advanced networking techniques, client/server programming, and distributed processing. Critical analysis of these areas develops as students learn the strengths and weaknesses of these technologies through assigned programming projects.

Prerequisite:

CSE 608 or equivalent.

Course Objectives:

  • Describe the client/server programming methods including its strengths and weakness
  • Compare various distributed processing techniques
  • Describe the basic techniques behind web-service based application development
  • Articulate and design appropriate architectural solutions for various problems
  • Analyze networks and identify common problems and solutions for creating distributed applications

Required Topics (approximate weeks allocated):

  • Network Programming (3)
    • Review of socket programming
    • Broadcast, multicast and streams
    • Quality of service
    • Multiplayer network programming techniques
  • Client/Server Programming (3)
    • Daemons, threads, monitors, pipes
    • Web Services
    • Thick and Thin client programming
  • Distributed Programming (4)
    • RPC, RMI and messaging applications
    • Synchronization
    • Monitors and parallelism
    • Caching and federation techniques
  • Security (1)
  • Parallel computing solutions (2)
    • Peer parallelism, grid computing
    • Distributed synchronization techniques to solve large computing problems.
  • Additional topics may include designing solutions utilizing Xwindows, winFrame and Remote Desktop applications
  • Final Project Presentation (1)
  • Examinations (1)