CSC 401 - Data and Computer Communications Networks

Catalog Description:
This course provides an introduction to fundamental concepts in the design and implementation of computer networks, their protocols, and applications with a particular emphasis on the Internet's TCP/IP, OSPF/BGP, Ethernet, IEEE 802.11 protocol suite. Topics to be covered include: network architectures, packet/circuit switching, network applications, sockets, reliable data transport, flow control, congestion control, routing, link protocols, addressing, local area networks, wireless networks, mobility, management, network security, software defined networking and the design of network services. Credit is not allowed for both CSC 401 and ECE 407.
Contact Hours: Prerequisites: ST370 and CSC246
Co-requisites: None
Restrictions: None
Coordinator: Dr. Lina Battestilli
Textbook: Computer Networking

Course Outcomes:

  1. Introduction
    • Describe the organization of the Internet by using appropriate network terminology.  
    • Identify the purpose of the different physical pieces  in a network (edges, core, etc.)
    • Differentiate the functions of the layered structure of network protocols.
    • Analyze the reasoning behind the End-to-End Argument
  2. Networked Applications
    • List the differences and the relations between DNS names and IP addresses in a network.  
    • Analyze the principles behind the distributed nature of DNS by listing pros and cons.
    • Identify the different methods in HTTP and their purpose
    • Identify the operation of the SMTP
    • Evaluate the pros and cons of Network Address Translation (NAT)
    • Implement a simple client-server socket-based application.        
  3. Reliable Data Delivery 
    • Describe the operation of reliable delivery protocols. 
    • List the factors that affect the performance of reliable delivery protocols.
    • Design and implement a simple reliable protocol.       
  4. Resource Allocation
    • Describe how resources can be allocated in a network.  
    • Describe the congestion problem in a large network. 
    • Compare fixed and dynamic allocation techniques. 
    • Compare approaches to traffic congestion.     
  5. Routing and Forwarding
    • Describe the organization of the network layer.
    • Describe how packets are forwarded in an IP network. 
    • List the scalability benefits of hierarchical addressing.
    • Evaluate the pros and cons of Software Defined Networks     
  6. Local Area Networks
    • Describe how frames are forwarded in an Ethernet network.
    • Describe the differences between IP and Ethernet. 
    • Describe the interrelations between IP and Ethernet.
    • Describe the steps used in one common approach to the multiple access problem.
  7. Wireless and Mobile Networks
    • Describe the organization of a wireless network.
    • Describe how wireless networks support mobile users.      
  8. Network Management
    • Describe the challenges of managing a network and some techniques to configure and measure performance
    • List the reasons of traffic enginering and traffic shaping and techniques to implement it
  9. Network Security
    • Give examples and reasons of network attacks and discussions of best ways to avoid them.


Topics:

See Course Listings

See Course Coordinators