Computer Engineering Department

Islamic University of Gaza

ECOM 6303
Advanced Computer Networks

Spring 2015

(Graduate course)

Syllabus and Course Overview


Instructor Contact Information

Prof. Dr. Eng. Mohammad A. Mikki

Professor of Computer Engineering

Computer Engineering Department , Faculty of Engineering

Office Location:          I215 (IT Building)

Tel.                              +970-8-2860700  Ext. 2876



Skype:                         mohammad.mikki


Instructor’s Office Hours

  • Sat., Sun., Mon., Tue. 11 am -12 noon         

   and by appointment

  • Outside of office hours call or e-mail to insure that I am available


Course Information

  1. Course Code:          ECOM 6303
  2. Course Name:         Advanced Computer Networks
  3. Number of credits: 3
  4. Class hours:
  5. Wed. 2:00 pm-5:00 pm, Rm. I601


Course Description and Overview

Computer communication networks are among the most important and influential global infrastructures that humanity has created. It explores the guts of the systems that have given rise to so much innovation, how networking is continuing to evolve to support new environments, and challenges in building networked systems that are simultaneously highly robust, efficient, flexible, and secure.

The course provides a foundational and current view of communication networks in order to enable students to perform high-quality research in the area.

Topics include Internet architecture and core protocols for congestion control, forwarding, naming, and routing; approaches to achieve reliability, scalability, and security; and design of data center networks, wireless networks, content delivery, and peer-to-peer networks.

Material will range from the classics to the latest results, and from analytical foundations to systems design and real-world deployment.

Class will combine lectures, discussions of reading, and presentations of recent research papers by students.

Students will carry out a research project with the goal of publication in a conference.


  • This course is conducted in seminar style.
  • The course consists of readings, presentations and discussion of technical papers taken from the current computer networks literature.
  • Seminar style implies student participation in both the presentations and in the discussions.
  • This participation is a significant component of your grade. Hence, skipping class or showing up late for class without an approved reason WILL have negative impact on your grade.


Course Objectives

The goal of this course is to expose students to recent advances in wired and wireless networks, with focus on the architectural and protocol aspects underlying the design and operation of such networks.

The course covers protocols related to medium access, routing, quality-of-service provisioning, traffic/flow control and media streaming in various networked systems, including IP-based Internet, wireless LANs, ad hoc networks, sensor networks, etc.

In the process of learning network architectures and protocols, students will be exposed to reading, presenting, and discussion of research papers in the advanced topics of computer networks.


Course Topics

  1. IP architecture
  2. Congestion control, congestion control in data centers, congestion control in the network
  3. Forwarding architecture
  4. Inter-domain routing and connectivity
  5. Scalability
  6. Software defined networks: Architecture and applications
  7. Reliability
  8. Secure routing
  9. Denial of Service
  10. Data center network architecture
  11. Internet measurement
  12. Content distribution
  13. Wireless networks
  14. Cloud services
  15. SDN control frameworks


Course Outcomes

At the end of this course, you should be able to:

  1. Better understand the design principles, key networking issues and solutions of the Internet
  2. Better understand various advanced topics on computer networking
  3. Improve your skills on identifying and solving problems in computer networking
  4. Improve your computer networks research, writing, and presentation skills


Course Website

  • I will post:

    • List of reading papers
    • Lecture notes
    • Project suggested topics
    • Quiz solutions
    • Exam solutions
    • Announcements, etc.
  • Couse on moodle will also include:

    • Forum(s)
    • Project reports submission tools
    • Paper review submission tools, etc.
  • Please check this webpage at least once a week for lecture notes, quiz and exam solutions, supplementary material, announcements, etc.


Required Material

  • There is no official text for the course.
  • If you need a refresher, you might take a look at standard books such as:
  • Peterson and Davie, Computer Networks
  • Tanenbaum, Computer Networks
  • Kurose and Ross, Computer Networking: A Top-Down Approach
  • There are two recent graduate-level books focusing on mathematical aspects of networking:
  • R. Srikant and Lei Ying, Communication Networks An Optimization, Control and Stochastic Networks Perspective (draft available free online)
  • S. Keshav, Mathematical Foundations of Computer Networking


Readings and Reviews

  • Most classes will have two or three assigned readings, which we will all read prior to class and discuss during the class. Reading the papers is essential to get the most out of this course!
  • You must submit (on the moodle site) a paper review for each of the assigned readings. A one-paragraph review is sufficient (longer is usually not better!). Your reviews should not summarize the paper or repeat the abstract — we all read the paper already. Instead your review should comprise at least two comments on the paper. Your comments should supply information that is not in the paper itself.


For example, a comment might be:

  • a criticism of the paper
  • an advantage of the paper's design that was not discussed in the paper
  • a suggestion of a way to extend or build on the paper in future work
  • a response to another student's comment
  • Submit your review by 12:00 noon on the day of the lecture for which the paper was assigned, by posting it on the moodle site or sending it to the instructor’s email address.
  • Your reviews should contain material that doesn't appear in the paper.
  • Reviews that are submitted on time and meet the guidelines above will be given full credit.
  • The overall review grade for the course may be determined based on all the of reviews over the semester.


Useful Links

Department of Computer Science,

Princeton University,

COS-561: Advanced Computer Networks

Fall 2014





Reading Papers



  • Syllabus and Course overview
  • Intro. To course project

[1] HowToRead05- How to Read a Paper

Dr. Mikki


End Hosts

[1] TCPIP74- Protocol for Packet Network Intercommunication, 1974


Dr. Mikki


  • Control Plane
  • Data Plane

[1] ARPAdesign88 – The Design Philosophy of the DARPA Internet Protocols, 1988

[2] OpenFlow08- OpenFlow: Enabling Innovation in Campus Networks, 2008

  • Submit research project proposal
  • Quiz1



[1] RocketFuel02, – Measuring ISP Topologies with Rocketfuel, 2002

[2] TrafficMeasure05 – Passive Traffic Measurement for IP Operations, 2005



  • TCP Congestion Control
  • Modern Congestion Control

[1] TCP88 – Congestion Avoidance and Control, 1988

[2] Cubic08 – CUBIC: A New TCP Friendly High Speed TCP Variant , 2008



  • Multipath TCP
  • TCP Performance Monitoring

[1] MultiPathTCP11- Design, implementation and evaluation of congestion control for multipath TCP, 2011

[2] Snap10 – Profiling Network Performance for Multi-Tier Data Center Applications, 2010



  • BGP Instability
  • BGP Policies

[1] BGPInstability98- Internet Routing Instability, 1998

[2] StableBGP01 – Stable Internet Routing Without Global Coordination, 2001

  • Submit first intermediate project report
  • Quiz5


  • BGP Security
  • BGP Interactions

[1] BGPsecurity10-A Survey of BGP Security Issues and Solutions, 2010

[2] BGPAdopt14- Why is it Taking So Long to Secure Internet Routing? 2014

[3] BGPskype07  – Can You Hear Me Now?!  It Must Be BGP, 2007



  • DNS
  • Times and Places

[1] DNS88 – Development of the Domain Name System, 1988

[2] King02-King Estimating Latency between Arbitrary Internet End Hosts, 2002

[2] IP2Geo01 – An Investigation of Geographic Mapping Techniques for

Internet Hosts, 2001





  • Flat layer-two networks
  • Mobility

[1] NVP14-Network Virtualization in Multi-tenant Datacenters, 2014

[2] Mobility13-The Design Space of Network Mobility, 2013





  • Distributed Hash Tables
  • Peer to Peer

[1] Chord03 – Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications, 2003

[2] Skype06- An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol, 2006





  • Content Distribution
  • Video Streaming

[1] MeasureCDN08 – Measuring and Evaluating Large-Scale CDNs, 2008

[2] CoralCDN10-Experiences with CoralCDN A Five-Year Operational View, 2010

[3] AdaptiveVideo14 – A Buffer-Based Approach to Rate Adaptation: Evidence from a Large Video Streaming Service, 2014

  • Submit second intermediate project report
  • Quiz10




Future Internet

[1] Tussle05 – Tussle in Cyberspace: Defining Tomorrow’s Internet, 2005

[2] JustWorks06 – Why the Internet only just works, 2006

[3] FutureInternet11-Smart Cities at the Forefront of the Future Internet, 2011






No Reading Required

Project final report presentations





No class

No Reading Required

End of classes

  • Submit final project report




First day of final exams

  • Submit second intermediate project report
  • Quiz10


What is Expected From Students

  • Class attendance
  • Be on time (if you are late enter the class quiet)
  • Class participation – Your input is needed for good discussion
  • Pay attention to presentations
  • Ask questions
  • Work hard
  • Keep up with reading research papers
  • Submit clean, organized, and concise reading papers reviews, and project reports
  • Do project reports on time.
  • Read extra material on your own. Wealth of information available (library books, online articles, research papers)
  • Cell phones off or muted
  • Identify potential project partners early (in one week, if possible)
  • Follow academic integrity code


Grading Scheme

Your final grade for the course will be based on the following weights:


Course research project

First intermediate report                        5%

Second intermediate report              5%

Project presentation                         5%

Final paper/report                                15%


Class participation (attendance, class discussion, forums through moodle)


Paper presentation


Paper reviews






Research Project

  1. The research project is the highlight of the course. The goal is to produce novel research related to networking that, by the end of the semester, would be publishable as a short paper in a top quality workshop, and when expanded to a full paper would be publishable in a top-quality conference.
  2. You may work alone or in groups of two. Larger groups should discuss with the instructor first.
  3. The main steps in the research project are as follows:

During the first two weeks of the course, you should think about projects you might like to do. The instructor will suggest some topics, but it's even better if you have ideas of your own.


Research Project Proposal

  • Project proposal: Submit a project proposal to the instructor via moodle in the beginning of the third week (the exact date will be posted on moodle and syllabus).
  • Your group should submit a single proposal. Microsoft Word format is required.
  • The proposal should be at most  one page of text, informally describing

the problem you plan to address,

what will be your first steps to attack the problem,

what is the most closely related work, and why it has not addressed your problem, and

if there are multiple people on your project team, who they are and how you plan to partition the work among the team.

  • Remember … the proposal can be short and informal as long as it demonstrates that you have a reasonable project and know how to attack it. The instructor will either approve the project or ask for a revision.


Research Project

  1. Midterm presentation: Give a 15-minute presentation in class describing what problem you are solving, why existing approaches will not solve your problem, your solution approach, and your progress in your solution. You must demonstrate progress in your solution and the midterm presentation is worth 10% of your project grade, so it would be good to start work on the project early.
  2. First and second intermediate reports: This is a short paper suitable for submission to a workshop. It should clearly state the problem being solved, importance of problem, Related work, Your approach, what work has been done, work to be done, and partial results. The paper should be at most 8 pages for one-person projects, and at most 12 pages for two-person projects. But you will be judged on approach, not page-count!
  3. Final paper (pre-publication draft): This is a short paper suitable for submission to a conference. It should clearly state the problem being solved, importance of problem, Related work, Your approach, evaluation, and results, Summary of conclusions, discussion of limitations, and future work. The paper should be at most 8 pages for one-person projects, and at most 12 pages for two-person projects. But you will be judged on results, not page-count!
  4. Dates for the above steps will be announced on the moodle. In general, you are encouraged to meet with the instructor and seek advice on the project as often as you like.
  5. Can a project be shared with another course's project or independent research? It is OK, and often a good idea, to work on a class project that complements your other ongoing projects and has a related topic. However, you should identify the piece of the larger project that you are working on for ECOM 6303, with separate pieces for other courses.