BSc:Networks.previous version

From IU
Revision as of 16:52, 15 June 2022 by M.petrishchev (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Networks

  • Course name: Networks
  • Course number:

Course characteristics

Key concepts of the class

  • Computer networking
  • TCP/IP layered structure
  • Addressing
  • Routing
  • Applications
  • Transport and application protocols

What is the purpose of this course?

This is an introductory course to Computer Networks. During the course, we will introduce the fundamental principles behind modern computer networks, including the OSI reference model, the fundamental communication protocols, network topologies, and peer-to-peer and client-server architectures for network applications. We will also cover the basic C functions for network programming, as well as software tools to monitor data packets in a network, the configuration of routers and routing algorithms. We will conclude the course with covering the modern problems of existing computer networks, including the security aspects.

Course Objectives Based on Bloom’s Taxonomy

What should a student remember at the end of the course?

By the end of the course, the students should be able to recognize and define

  • Layered structure of a computer network
  • Topologies in computer networks
  • Addressing schemes in networks
  • Routing algorithms
  • Security at different TCP/IP layers
  • Nuts and bolts of applications in networks

What should a student be able to understand at the end of the course?

By the end of the course, the students should be able to understand:

  • How a network is formed
  • How addressing is done at different layers of the networks
  • How subnets are created
  • How different routing protocols work and which one is better in which scenario
  • How medium is accessed on a network
  • How different networks operate
  • And Demonstrate the knowledge and discuss the overal functioning of a computer network

What should a student be able to apply at the end of the course?

By the end of the course, the students should be able to

  • Configure networks
  • Configure routing
  • Perform TCP and UDP connections
  • Create networks and subnets
  • Write simple network applications through sockets

Course evaluation

Course grade breakdown
Proposed points
Labs/seminar classes 20 20
Weekly Quizzes 10 10 (excluding 4 worst)
Midterm Exam 20 20
Final Exam 50 50
Instructor discretion 10

If necessary, please indicate freely your course’s features in terms of students’ performance assessment: None

Grades range

Course grading range
Proposed range
A. Excellent 90-100 90-100
B. Good 75-89 70-89
C. Satisfactory 60-74 60-69
D. Poor 0-59 0-59


If necessary, please indicate freely your course’s grading features: The semester starts with the grade ranges as proposed in the Table 1, but it might be slightly adjusted (usually reduced) depending on the average students progress.

Resources and reference material

  • Lecture material
  • Computer networking: A top-down approach / James F. Kurose, Keith W. Ross.—6th edition (or later ones)
  • Optional reading: Computer Networks / Andrew S. Tanenbaum, David J. Wetherall - 5th ed.
  • Online resources

Course Sections

The main sections of the course and approximate hour distribution between them is as follows:

Course Sections
Section Section Title Teaching Hours
1 Application layer 15
2 Transport layer 15
3 Network layer 15
4 Physical and data link layer 15
5 Network security 10

Section 1

Section title:

Application layer

Topics covered in this section:

  • Application layer functionality
  • Application layer protocols
  • Domain name system
  • Web
  • File transfer

What forms of evaluation were used to test students’ performance in this section?

|a|c| & Yes/No
Development of individual parts of software product code & 0
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 1
Essays & 0
Oral polls & 0
Discussions & 1


Typical questions for ongoing performance evaluation within this section

  1. How application layer protocols work?
  2. How DNS work with the transport layer protocols?
  3. How does http and https work?
  4. How does ftp work?
  5. How security is incoporated at application layer?
  6. Which applications need TCP and UDP at the lower layer?

Test questions for final assessment in this section

  1. As above

Section 2

Section title:

Transport layer

Topics covered in this section:

  • TCP and UDP
  • Transmission control
  • Quality of service
  • Delay-tolerant networking

What forms of evaluation were used to test students’ performance in this section?

|a|c| & Yes/No
Development of individual parts of software product code & 0
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 1
Essays & 0
Oral polls & 0
Discussions & 1


Typical questions for ongoing performance evaluation within this section

  1. How does TCP 3-way handshake work?
  2. How reliability is achieved in TCP?
  3. What are the pros and cons of connectionless and connection-oriented protocols in transport layer?
  4. How security is provided at transport layer?

Typical questions for seminar classes (labs) within this section

  1. Implement TCP connection through sockets
  2. Develop simple application incorporating TCP and UDP

Test questions for final assessment in this section

  1. As above

Section 3

Section title:

Network layer

Topics covered in this section:

  • IP addressing
  • Subneting
  • Routing
  • Inter-networking
  • host-to-host networking

What forms of evaluation were used to test students’ performance in this section?

|a|c| & Yes/No
Development of individual parts of software product code & 0
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 1
Essays & 0
Oral polls & 0
Discussions & 1


Typical questions for ongoing performance evaluation within this section

  1. What are different classes of IPv4 address?
  2. Why do we need IPv6?
  3. How different routing protocols work and why do we need different routing algorithms?
  4. How quality of service is provided at network layer?
  5. How to create different subnets?

Typical questions for seminar classes (labs) within this section

  1. Configure routing table
  2. Create subnets
  3. Work on quality of service, congestion and related topics

Test questions for final assessment in this section

  1. As above

Section 4

Section title:

Physical and data link layer

Topics covered in this section:

  • Layered structure of network
  • Physical layer
  • Data link layer
  • Medium access control
  • Congestion
  • Swiching
  • Sliding window protocols and other protocols in physical and link layer

What forms of evaluation were used to test students’ performance in this section?

|a|c| & Yes/No
Development of individual parts of software product code & 0
Homework and group projects & 1
Midterm evaluation & 1
Testing (written or computer based) & 1
Reports & 1
Essays & 0
Oral polls & 0
Discussions & 1


Typical questions for ongoing performance evaluation within this section

  1. How do different protocols work at physical and link layer?
  2. How does a switch and a hub work?
  3. How does different medium access control mechanisms work?
  4. How to detect and correct errors in transmission?
  5. What are different transmission media?

Typical questions for seminar classes (labs) within this section

  1. Configure switches
  2. Detect errors in transmission
  3. Play with different protocols, e.g., ARP

Test questions for final assessment in this section

  1. As above