ECS 152A: Computer Networks

Subject
ECS 152A
Title
Computer Networks
Status
Active
Units
4.0
Learning Activities
Lecture: 3 hours
Discussion: 1 hour
Description
Overview of computer networks, TCP/IP protocol suite, computer-networking applications and protocols, transport-layer protocols, network architectures, Internet Protocol (IP), routing, link-layer protocols, local area and wireless networks, medium access control, physical aspects of data transmission, and network-performance analysis. Only 2 units of credit for students who have taken ECS 157. GE Prior to Fall 2011: SciEng. GE: SE.
Prerequisites
(ECS 060 or ECS 032B or ECS 036C); (ECS 132 or EEC 161 or MAT 135A or STA 131A or STA 120 or STA 032)
Credit Limitation
Only 2 units of credit for students who have taken ECS 157.
Enrollment Restrictions
Pass One open to Computer Science and Computer Science Engineering Majors only.
Cross Listing(s)
Same course as EEC 173A.

Summary of Course Content

  1. Introduction
    1. Terminology
    2. TCP/IP protocol suite c. Layered architecture , protocols, and standards
  2. Networking Applications and Protocols
    1. Distributed applications
    2. Application layer protocols
    3. Introduction to network programming
  3. Transport Layer Protocols
    1. Transport layer services
    2. Reliable transport protocols
    3. Introduction to TCP and UDP
  4. Network Layer Protocols
    1. Packet switching
    2. Circuit switching
    3. Virtual circuit vs. datagram
    4. Statistical multiplexing
    5. Routing
  5. Link Layer Protocols
    1. Flow control
    2. Error detection and control
  6. Broadcast Communication Networks
    1. Local Area Networks (LANs)
    2. Medium Access Control (MAC) protocols
      1. Channel Partitioning: FDMA, TDMA, CDMA
      2. Random Access: ALOHA, CSMA/CD
      3. Controlled Access: Token ring/bus
    3. LAN technologies and topologies
    4. Wireless networks
  7. Physical Layer Aspects of Data Transmission
    1. Signals, spectral analysis, bandwidth
    2. Transmission impairments
    3. Data encoding/decoding
    4. Communication Techniques
  8. Network Performance Analysis
    1. Simple queuing models and simulation analysis
    2. Network measurement tools
    3. Analysis of protocols The course contains a series of design projects with 2-3 students per team. The projects are designed to reinforce certain concepts and to familiarize the students with network measurement tools and simulators and their use in protocol analysis. Example projects include: (1) designing a simulation model to compare performance of different medium access control protocols; (2) monitoring and analyzing network data collected using active/passive network measurement tools or a LAN analyzer; (3) design measurement experiments to analyze a particular performance metric or network anomaly; (4) introductory assignment to configure PC-based or commercial routers; (5) implement a simple client-server application.

Illustrative Reading
Leon-Garcia and Widjaja, Communication Networks, McGrawHill, 2000, or
W. Stallings, Data and Computer Communications, Sixth Edition, NJ: Prentice-Hall, 1999, or

Tanenbaum, Computer Networks, Englewoods Cliffs, NJ: Prentice Hall, 2002


Potential Course Overlap
There is some overlap with course 157, but the audience is different. Course 157 is for non-majors and this course is designed for majors. There is some overlap with the introductory material of ECS 252A and EEC 273, Computer Networks, taught at a graduate level.

Course Category