King Fahd University of Petroleum and Minerals

    Computer Engineering Department

    Dr. Abdulaziz Yagoub Barnawi

    Assistant Professor

HomeTeachingCOE 344 - T092

COE 344 Course Page

Catalogue Description

This course will be taught using TCP/IP top-down approach. Topics covered include introduction to computer networks. Application layer design issues and protocols are discussed. Then, Transport layer design issues, protocols as well as congestion control mechanisms are presented. Socket programming is explained. An in-depth analysis is presented of the Network layer design issues, and internetworking. MAC layer design issues and protocols are presented. Finally, multimedia network applications are explored.


 Announcements (active announcements are in bold face)

  • Major Exam-I will be on Tuesday 30 March in class

  • Homework#2 is due on Sunday 28 March in class

  • Solution for Quiz#1 is posted on Blackboard

  • Solutions for Quiz#2 and #3 are posted on Blackboard

  • Homework#4 is posted on Blackboard. The due date is 18 May

  • Major Exam-II will be on Sunday 30 May during class

  • Solution for Homework#4 is posted on Blackboard

  • Solution for Exam-II is posted on Blackboard

  • Quiz#4 will be on Tuesday June 8 in class

Your scores so far .. Sheet#1 [htm] Sheet#2 [htm]

Course Syllabus [pdf]

Class Presentations

  • Chapter 1 [pdf]

  • Chapter 2 [pdf]

  • Chapter 3 [pdf]

  • Chapter 4 [pdf]

  • Chapter 5 [pdf] .. more slides about ATM [pdf]

  • Chapter 6 [pdf]

Online Resources

RFCs for the Application Layer:

  • RFC 1034: Domain Name System: Concepts and Facilities

  • RFC 2136: Dynamic Updates in the Domain Name System (DNS UPDATE)

  • RFC 1939: Post Office Protocol - Version 3 (POP3)



RFCs for the Transport Layer:

  • RFC 768: User Datagram Protocol

  • RFC 793: TCP Specification [Updated by RFC 1122, RFC 1349, RFC 4379, and RFC 3168]

  • RFC 1191 [sec.7]:  Determination of the Maximum Transmission Unit (MTU)

  • RFC 2581: TCP Congestion Control

  • RFC 2018: TCP Selective Acknowledgement Options

  • RFC 2998: Computing TCP's Retransmission Timer

  • RFC 3390: Increasing TCP's Initial Window

  • RFC 1323: TCP Extensions for High Performance

RFCs for the Network Layer: 

  • RFC 791: Internet Protocol Version 4 (IPv4) Specification

  • RFC 2460, RFC 3513: Internet Protocol Version 6 (IPv6) Specification

  • RFC 3056: Connection of IPv6 Domains via IPv4 Clouds

  • RFC 4632Classless Inter-domain Routing (CIDR)

  • RFC 1918: Address Allocation for Private Internets

  • RFC 2131: Dynamic Host Configuration Protocol
  • RFC 2663, RFC 3022: IP Network Address Translation

  • RFC 2131: Dynamic Host Configuration Protocol

  • RFC 3168:  Network Assisted Congestion Control


New Protocol Alternatives to TCP and UDP:

  • RFC 4340 - Datagram Congestion Control Protocol (DCCP) [Updated by RFC 5595 and RFC 5596]
  • RFC 5348 - TCP-Friendly Rate Control (TFRC)