CPE 701 Internet Protocol Design

Department of Computer Science & Engineering
UNR, Spring 2010

Course Information - Description - Prerequisites - Textbooks - Syllabus
Organization - Grading - Schedule, Notes & Assignments - Acknowledgment

Course Information

  • Credits: 3.0
  • Class hours: Tuesday, 5:30pm - 8:15pm, SEM 257
  • Call numbers:
    • CPE 701: #34293 (max. enrollment 15)


  • Instructor: Dr. Murat Yuksel
  • E-mail: yuksem@cse.unr.edu 
  • Phone: (775) 327-2246
  • Web page: http://www.cse.unr.edu/~yuksem
  • Office: SEM 237 (Scrugham Engineering-Mines)
  • Office hours:
    • Tuesday, noon - 3pm
    • Thursday, 11am - 1pm
    • or by appointment



The Internet has revolutionized communications. This course will equip you with a deep knowledge of the protocols that make it work, help you develop critical insight into their design, and obtain a first hand feel for implementation through an emulation-based lab project. Another key goal is to prepare you for doing research in the field of networking. Protocols from the OSI and telecommunications/ATM world will also be featured to provide in-depth comparative studies. Specifically, we will start with a review of basic networking ideas and then study topics such as:

-         Network layer addressing and forwarding (IP, IPv6, ATM),

-         Intra-domain routing (RIP, OSPF, PNNI, IS-IS),

-         Inter-domain routing (BGP, EGP),

-         Transport layer (TCP, UDP),

-         Congestion control algorithms

-         IP multicast (IGMP, PIM, MBONE, Multicast Congestion Control),

-         Network management, Auto-configuration (SNMP, DHCP, ICMP, ICMPv6),

-         IPv6 design, comparative critique, deployment issues, NAT

-         QoS mechanisms and architectures (scheduling, shaping, RTP, Int-serv, Diff-serv, RTP, RSVP),

-         Naming, Overlay & Peer-to-Peer Networks.




o       CPE 401/601 Computer Network Systems or CPE 400/600 Computer Communication Networks or equivalent or consent of instructor


o       Operating Systems (CS 446/646 or equivalent)



Douglas Comer, (2006) Internetworking with TCP/IP Vol. I: Principles, Protocols, and Architecture; 5th edition, Prentice Hall, ISBN #: 0131876716.

Note: Since this is an advanced level class, the textbook is only the starting point for the majority of topics that we will cover. The slides used will cover ideas from a broad range of sources including other books, papers, RFCs etc. The WebCT page will have online links to resources.


Syllabus (Tentative)

This is a tentative list of topics, subject to modification and reorganization.

  1. Review of Networking Concepts
    • Connectivity
    • Multiplexing
    • Circuit-switching vs. packet-switching
    • Multiple-access
    • Routing, addressing
    • Congestion control


  1. Review of Networking Design Principles
    • End-to-end principle
    • Protocols
    • Layering, encapsulation, and indirection
    • System design: Amdahl’s law
    • Overlays
    • Cross-layer design


  1. Internetworking
    • Heterogeneity and scale
    • IP approach
    • Address resolution
    • Hierarchical addressing and subnets
    • Fragmentation and re-assembly
    • Packet format design


  1. Routing Basics
    • Routing and forwarding tables
    • Routers vs. bridges
    • Addressing and routing scalability
    • Link-state vs. distance-vector routing
    • Source-based routing


  1. Intra-domain Routing
    • RIP
    • EIGRP
    • OSPF
    • PNNI
    • IS-IS
    • QoS routing
    • Traffic engineering and routing


  1. Inter-domain Routing
    • Autonomous systems
    • Policy routing
    • EGP
    • BGP
    • CIDR


  1. Transport Protocol Design
    • Connectionless vs. connection-oriented service
    • Connection management: establishment, termination
    • UDP
    • TCP


  1. Congestion Control
    • Congestion indications/feedbacks: explicit vs. implicit
    • Queuing disciplines: scheduling and buffer management
      • RED, ARED, FRED, REM
    • TCP congestion control variants
      • Reno, Vegas
    • TCP modeling


  1. Multicast
    • Groups, scopes, trees
    • Multicast addresses
    • Group management: IGMP
    • Multicast routing and forwarding, MBONE, PIM
    • Multicast transport protocols: reliability, congestion
    • Application-layer multicast


  1. Network Management
    • Auto-configuration
    • SNMP
    • DHCP
    • ICMP


  1. IP Next Generation (IPv6)
    • Motivation
    • IPv6 addressing
    • IPv6 header format
    • IPv6 features: routing flexibility, multicast support



  • Project   There will be a group project involving two students. The project will require programming knowledge in C/C++. You will be implementing an emulation of a network protocol stack with your own designs. The project will require your designs to stay within loose definitions of the protocols involved. The project groups will make in-class demos of their protocols.
  • Exam   There will be one open book/notes final exam (see Schedule for tentative date).
  • Homework   There will be homework assignments approximately every week. The homework assignments will consist of true/false answers emphasizing important concepts. There will not be grading of these homework assignments, but your submissions will be logged as part of your grade. Each submission has an equal weight, and one missed submission is okay. Make up or late submissions of homework assignments will be not allowed.
  • Research Case Study   You will be required to perform a case study and researching of an area in networking. You will choose from a menu of research topics. Each topic will have a list of mandatory paper readings, followed by a set of other references. Your task is to critique the material, organize it in a framework of your own, and make sound judgments about the past and future directions of work in the topic area. You will be required to (i) submit a case study report (which will be no longer than 10 pages in 12pt fonts) and (ii) make a 15min in-class presentation of the case study. We will expect the case study to be of high quality, reflecting deep understanding, and be written like a professional technical paper.
  • Books, Papers, and RFCs   The class will involve a fair bit of reading. The reading is meant in part to supplement lectures, help you catch up, and allow lectures to be more focused and interactive.
  • WebCT   Except this web page, all course materials will be posted at the WebCT.
  • Academic Integrity   Except the project, there will be no team projects or reports in this class, therefore all assignments and exams must be prepared strictly individually. Any form of cheating such as plagiarism or ghostwriting will incur a severe penalty, usually failure in the course. Please refer to the UNR policy on Academic Standards.
  • Disability Statement   If you have a disability for which you will need to request accommodations, please contact the instructor or someone at the Disability Resource Center (Thompson Student Services - 107) as soon as possible.


Grading (Tentative)

Both grading policy and scale are subject to change.

Grading Policy

Final Exam






Research Case Study


Grading Scale (Tentative)

90% - 100%

A-, A

80% - 89%

B-, B, B+

65% - 79%

C-, C, C+

55% - 64%


0% - 54%


Important Note: Re-grading requests can only be made within the first week after the graded assignments/tests are returned to the students.


Schedule (Tentative), Notes & Assignments

This is a tentative schedule including the exam dates. It is subject to readjustment depending on the time we actually spend in class covering the topics. Slides presented in class and assignments will be posted at the WebCT. Permanent reading assignment: it is assumed that you are familiar with the contents of the slides of all past meetings.


Lectures & Notes


Tue, Jan 19

Lecture #1: Review of Networking Concepts (1)


Tue, Jan 26

Lecture #2: Review of Networking Concepts (2)


Tue, Feb 2

Lecture #3: Internetworking

• Project is out

Tue, Feb 9

Lecture #4: Routing Basics


Tue, Feb 16

Lecture #5: Intra-domain Routing

• Research Case Study topics due

Tue, Feb 23

Lecture #6: Inter-domain Routing


Tue, Mar 2

Lecture #7: Transport Protocol Design (1)


Tue, Mar 9

Lecture #8: Transport Protocol Design (2)

• Project Design Report due

Tue, Mar 16

Spring Break – NO CLASS


Tue, Mar 23

Lecture #9: Congestion Control


Tue, Mar 30

Lecture #10: Multicast


Tue, Apr 6

Project Basic Implementation Demos

• Project Basic Implementation due

Tue, Apr 13

Lecture #11: Network Management & IP Next Generation

• Research Case Study reports due

Tue, Apr 20

Lecture #12: Overlay & Peer-to-Peer Networks


Tue, Apr 27

Research Case Study Presentations


Tue, May 4

Project Demos & Review

• Project Complete Implementation due

Tue, May 11 (7 pm)

Final Exam




The slides and other materials for this course are in-part based upon the materials from a number of people/sources, including:

·        Shivkumar Kalyanaraman from RPI http://www.ecse.rpi.edu/Homepages/shivkuma/main.html#teaching

·        Official website for the Kurose & Ross text: Computer Networking: A Top-Down Approach

·        Constandine Dovrolis from GTech: http://www.cc.gatech.edu/~dovrolis

·        Mehmet H. Gunes from UNR: http://www.cse.unr.edu/~mgunes/cpe400

Course Information - Description - Prerequisites - Textbooks - Syllabus
Organization - Grading - Schedule, Notes & Assignments - Acknowledgment

Last updated on January 20, 2009