Skip to main content

Course Objectives:

By the end of this course, you will be able to:

  • Understand the practical context of the concepts that you will study in more detail in later classes.
  • Explain typical problems and tradeoffs encountered in electronic and computer engineering systems.
  • Analyze simple approaches to deal with these problems and tradeoffs.
  • Use software tools, such as MATLAB to investigate potential solutions to these problems and tradeoffs in order to validate the above analysis, as well as to handle cases not amenable to simple analysis.


Course Outline:

Week Release Dates Weekly Learning Objectives Topics / Subtopics
Quiz and Lab Exercise Due Dates
1 8 May 2018 09:00
(GMT+8)
By the end of this week, you will be able to:
  • Understand the difference between circuit switching and packet switching
  • Understand the use of layering in organizing network functionality
  • Understand how the Aloha protocol operates
  • Analyze the efficiency of the slotted variant of the Aloha protocol

Topic 1: Course Overview
1.1 Course Overview
1.2 Internet Hierarchy
1.3 Packet Switching
1.4 Layering


Topic 2: The Link Layer
2.1 Link Layer
2.2 Multiple Access Protocols
2.3 Aloha Protocol
2.4 Efficiency of Slotted Aloha
2.5 Lab 1 - Link Layer

21 May 2018 23:30
(GMT+8)
2 15 May 2018 09:00
(GMT+8)
By the end of this week, you will be able to:
  • Describe the different functions of the network layer, including addressing, encapsulation, routing and forwarding
  • Identify differences between the distance vector and link state algorithms for routing
  • Apply the distance vector algorithm to estimate forwarding tables at nodes in a network iteratively
  • Calculate the best path in a network from one node to every other node using Dijkstra’s algorithm
Topic 3: The Network Layer
3.1 Network Layer
3.2 IP Addressing
3.3 Forwarding

Topic 4: Routing
4.1 Routing
4.2 Routing: Distance Vector Algorithm
4.3 Routing: Link State Algorithm
4.4 Summary of Routing Alogrithms
4.5a Lab 2 - Network Layer
4.5b MATLAB Demo - Routing and Forwarding
28 May 2018 23:30
(GMT+8)
3 22 May 2018 09:00
(GMT+8)
By the end of this week, you will be able to:
  • List the functions of the transport layer
  • Describe the UDP and the TCP, and identify differences between them
  • Explain how the stop-and-wait protocol ensures in-order packet transfer
  • Derive the throughput of the stop-and-wait protocol
  • Analyze the increase in throughput enabled by the sliding window protocol
Topic 5: The Transport Layer
5.1 Transport Layer
5.2 User Datagram Protocol (UDP)
5.3 Transmission Control Protocol (TCP)

Topic 6: Reliable Transfer Protocols
6.1 Stop-and-Wait Protocol
6.2 Throughput of Stop-and-Wait
6.3 Sliding Window Protocol
6.4a Lab 3 - Transport Layer
6.4b MATLAB Demo - Stop-and-Wait Protocol
4 Jun 2018 23:30
(GMT+8)
4 29 May 2018 09:00
(GMT+8)
By the end of this week, you will be able to:
  • Understand the internet hourglass
  • Describe different application architectures, such as client-server and peer to peer
  • Illustrate how the hypertext transfer protocol is used to retrieve information on webpages
  • Explain how the domain name system maps hostnames to IP addresses

Topic 7: The Application Layer
7.1 Application Layer
7.2 Hypertext Transfer Protocol (HTTP)
7.3 Domain Name System (DNS)
7.4 Lab 4 - Application Layer

 Topic 8: Course Review
8.1 Networks
8.2 IP Protocol Stack
8.3 The Internet Hourglass

11 Jun 2018 23:30
(GMT+8)
5 5 Jun 2018 09:00
(GMT+8)
Final Exam 11 Jun 2018 23:30
(GMT+8)