Advanced Topics in Computer Networks (Spring 2013-14)

Textbook

We will not follow a textbook for this course. Research papers of high impact published in the last decade will be used as needed.

Syllabus

The course includes lectures on the following topics, weekly quizzes, a grade for class participation, a four-part research project involving choosing an anchor paper, a literature survey, an oral presentation and some original duplication/verification or new research.

  • Self-similarity in Internet traffic: Characteristics of Poisson traffic and its value as a model of real traffic. An introduction to self-similarity; the difference between Poisson traffic and self-similar traffic; long-range dependence and heavy-tailed distributions. Measuring self-similarity; the Hurst parameter; the variance-time plot method. Causes of self-similarity and its implications to quality of service, congestion control and buffer sizing. Research perspectives in traffic modeling.
  • An introduction to network science and web science: Evolution and structure of the Internet; power-law properties; AS-level Internet topology. The Erdos-Renyi graph, the small-world graph and the scale-free model; analysis using mean-field theory; causes and implications of high variability in degree distribution. Data mining and network analysis of the Web; network algorithms; network properties of interest in the Internet. Complex graphs and networks; the spectra of graphs; the practical relevance of the eigenvalues of a graph. Limitations of power laws in describing the Internet topology; research perspectives in network science and web science.
  • Network interface design: Issues in the design of high-performance network interfaces; computer architecture and operating systems issues; memory management issues and the associated bottlenecks; current trends and architectural options for high-end network interfaces.
  • Switching networks: Using switching modules for performance, speed and port expansion; switching network topologies; Banyan and Clos networks; sorting and merging networks; flow control in switching networks; credit-based flow control; virtual cut-through; wormhole flow control; virtual channels; optical switching; emulation of output buffering in optical switches; cascaded delay-line switches; research perspectives in switching networks.
  • Network security: Ethernet sniffing; attacks based on ARP redirection. TCP/IP hijacking; RST hijacking. Worms, viruses and other malware; port scanning techniques; IP spoofing. Denial-of-Service (DoS) attacks; mitigation techniques.
  • Anomaly detection for network security: Host-based and network-based intrusion detection systems. An introduction to approaches to anomaly detection based in information theory, machine learning, statistics, and signatures; feature identification and clustering; principal component analysis; compressive sampling. Honeypots and their role in intrusion detection; a brief introduction to the capabilities of Snort.
  • Wireless ad hoc networks: Fundamentals of wireless ad hoc environments; sensor networks and mobile ad hoc networks and their unique characteristics; proactive, reactive and hybrid routing algorithms; scaling laws in wireless networks; understanding capacity estimates; topology control algorithms and energy conservation: challenges and solutions; current issues and research perspectives.
  • Network measurement: Introduction to network measurement techniques; review of classic tools based on ICMP, SNMP and traceroute; capacity estimation; available bandwidth estimation using packet dispersion techniques; direct and iterative probing using packet trains; estimation of delay between arbitrary hosts; off-label use of DNS for delay estimation, available tools and their accuracy; techniques and challenges in network measurement.
  • Game theory and network economics: An introduction to game theory; Nash equilibrium; mixed strategy games; zero-sum and non-zero-sum games; n-person games; utility functions; Pareto optimality, social welfare and the social optimum; Google ad auctions. TCP/IP congestion control as a game; game theory applied to Internet protocols; selfish routing and the price of anarchy. Who pays whom for what in the current Internet? Billing and provisioning systems for Internet connections; routing and peering in a competitive Internet; congestion control and service differentiation through pricing. Research perspectives in network economics.

Grading Policy

The grading in the course is based on class participation, a 4-part research project that each student is expected to complete independently. There will be no examinations in this course.

  • Class participation: 5%
  • Weekly surprise(!) quizzes: 35%
  • Research Project, Part 1 (Anchor paper selection): 5% (due April 18, Friday, 5pm)
  • Research Project, Part 2 (Literature survey): 30% (due May 9, Friday, 5pm)
  • Research Project, Part 3 (15-minute oral presentation): 15% (held on May 15, 22, and 29)
  • Research Project, Part 4 (Duplication/verification or Extension): 10% (due June 6, Friday, 5pm)

Research Project, Part 1 (Selection of anchor paper, due April 18)

The research project in this course requires a journal or a conference paper as a starting point. We will call this your anchor paper, since your work in this course will be anchored around the topic of this paper. Students are expected to choose an anchor paper and have it approved by the instructor. The anchor paper should satisfy each of the following eight requirements (exceptions to these requirements may be granted, but only in rare cases):

  • It is published in a peer-reviewed journal, a Transactions, or a conference (for example, it cannot be a magazine article)
  • The paper is at least as long as the equivalent of 9 pages in IEEE Transactions format (double-column, single-space, 10-point font).
  • The paper was published in 2010 or later.
  • The paper presents new research activity on the web which could include topics such as web performance, web security, web protocols, web crawling, web search and the science of search engines, web graphs, content delivery networks, web privacy, web-based malware, social network graphs, and web mining. For example, it cannot be about the physics of optical fibers or TCP or Ethernet, even though those are all important topics in computer networks.
  • The paper should present strong technical content: for example, it cannot be about a survey study of how people use passwords on the web or about a usability study of web sites.
  • The paper is not a tutorial paper or a survey paper.
  • The journal, transactions, or conference in which it is published is a reputable one. (You may wish to consult the instructor case-by-case on this requirement.)
  • The paper is not on a topic that allows "double dipping" for Drexel credits (for example, it cannot be on a topic on which you are already writing a thesis at Drexel or a report in another course at Drexel.)

Among the best sources for journal and conference papers for this course are:

  • ACM Transactions on Information and System Security
  • ACM Transactions on Internet Technology
  • ACM Transactions on the Web
  • International World Wide Web Conference
  • ACM SIGCOMM
  • ACM SIGKDD Conference on Knowledge Discovery and Data Mining
  • International Conference on Data Mining
  • Workshop on Algorithms and Models for the Web Graph
  • Internet Measurement Conference
  • ACM Conference on Web Search and Data Mining
  • ACM Conference on Computer and Communication Security

But, there are dozens of additional journals and conferences in which you can find papers appropriate for this course.

At Drexel, you can download almost any article over the Internet: the IEEE Explore link takes you to the database of all IEEE journals and conference proceedings, and the link to the ACM Digital Library takes you to the database of all ACM journals and conference proceedings. If you are accessing these sites from outside the Drexel University campus, click here to read how you can access these electronic resources off-campus. A large number of additional databases, besides those from IEEE and ACM, are also available through the Drexel Library (click here for access to these databases). Google Scholar allows quick searches across many databases and a rapid assessment of the significance of a paper measured by the number of citations.

Please make a special note of the fact that citation indexes such as CiteSeer and the ISI Web of Knowledge provide information on connections between publications, allowing one to easily establish which later documents cite which earlier documents. This is often extremely useful in academic research in understanding the chronological progress of an idea. Drexel University provides free access to these indexes.

Submission Instructions

Students should choose an anchor paper and have this choice approved by the instructor before 5pm on April 18 (Friday). Students should e-mail the following details about their chosen paper for approval by the instructor:

  • Journal or conference name
  • Month and year of publication
  • An electronic copy (pdf) of the paper

The choices made by students will be posted on Blackboard Learn. More than one student choosing the same paper is discouraged but not disallowed. Each student is expected to work on his/her project independently. Please make sure that the topic of your anchor paper is of interest to you and you feel enthusiastic about learning new material related to it.

Research Project, Part 2 (Literature review, due May 9)

Part 2 of the project requires you to present the current state of research in the area of your anchor paper and an overview of the future trends in the field. Important: This report is NOT supposed to be a summary of your anchor paper but a summary of all the research in the field of the anchor paper. This report should include research done prior to the publication of your anchor paper as well as research done until today after the publication of your anchor paper. The total length of this report should be no more than 6 pages including all references and figures and with a font size of 10pt. All submissions that exceed 6 pages will be returned without a grade (there should be no 7th page in the submission for any reason whatsoever!). Please remember the following points in preparing your report:

  • Use the Times New Roman font with a font size of 10pt for the text of your survey (you may use anything else for titles, etc.)
  • You may use the references mentioned in the paper as a starting point for your investigation of past work done in this area. However, the authors of a paper may only highlight past work that appears favorable to the claims or assumptions in their own paper, and therefore, you are expected to make an effort to take a more unbiased look at the past research and the current state of research in the topic of your anchor paper.
  • Always mention all the references and sources that you had to use to compile your report. Never write anything without clearly giving credit to the source of your information. Never list any paper or article in your list of references unless you have actually read that paper or article and understood it.
  • While you will compose your report based on information you get from a variety of sources, you are expected to use your own words in your report and reflect your own understanding of the source material. The report should not be a cut-and-paste job from your references. The quality of your synthesis of material from all the sources, and your own comments on past research in this area will carry a significant portion of the credit. A good report will also avoid reproducing figures and tables from other references and, instead, convey its points in its own original way.
  • The report should be written for an audience familiar with basic concepts in web protocols and networking. For example, if you are investigating the dynamics of some feature of HTTP, you should not be describing and explaining TCP (something that almost all researchers in networking are familiar with). Most of the contents of this report, as far as possible, should come from your study of research papers and not basic textbook material.
  • You are expected to read whatever textbooks or tutorial papers that you may need to understand the research papers and develop expertise in the area.
  • There is an educational value in students being able to view the literature survey reports submitted by the other students in the class. To this end, your report will be made available to the other students in the class through Bb Learn.

Submission Instructions

Only an electronic copy is required for submission. The electronic copy should be a pdf document (please do not send a Word document!) and should be submitted through Bb Learn before 5pm on May 9 (Friday), 2014. Please do not submit a hardcopy.

Grading Breakdown

This component of the research project will be graded out of 30 points. The breakdown of these points is as follows.

  • Thoroughness (5 points):
    This evaluates whether you have been very thorough and complete in your literature survey or whether you have somehow missed important work done in the area altogether.
  • Achieved learning (5 points):
    This seeks to evaluate how much you have learned out of this assignment; after all, the ultimate objective of the course is to learn. If you pick a very obscure topic with almost no papers published in the area, you may very well have been thorough in your report but you will score low on achieved learning since you may not have learned much.
  • Original writing (6 points):
    This is about whether or not your report contains original comments by you including your own original assessment of the significance and validity of the works discussed. If your report is just full of text and figures cut and pasted from your references, you are likely to receive a low score on this metric.
  • Original synthesis (6 points):
    This is about how you string together the ideas and the research described in your report. For example, in presenting a dozen different research ideas on a topic, a not-so-great report may just list each of these ideas one by one in chronological order devoting about a paragraph or two on each. However, a better synthesis would be for you to classify the ideas in some fashion with your own original taxonomy that you make up and thus present the ideas in a more interesting and meaningful manner. Alternately, you may present the ideas in such a way that the reader is able to appreciate the progression of these ideas from early simple ones that barely meet the desired goals to later complex ones that get closer to the goal, or from early complex ideas that are difficult to implement to later simple and elegant ones that are easily implementable and achieve the same desired set of goals. Basically, this portion of the grade measures your story-telling skills!
  • Technical clarity (3 points):
    This evaluates whether your report can be understood without significant effort by a reasonably competent individual who has knowledge of most of the basic concepts in networking. This also evaluates the flow and the lucidity in your writing. Thoroughness and clarity are somewhat contradictory goals given a page limit; you are expected to use your judgment and do the best you can to balance the two.
  • "Interestingness" (3 points):
    This evaluates a semi-technical aspect of your report based on how much it bores the instructor reading it! You are expected to avoid long dry rambling paragraphs and you are expected to avoid flat encyclopedic listing of information. Also, you should eliminate redundancies, strive for logical transitions between paragraphs, present the historical context whenever possible, and use pictures whenever they can improve readability or convey an idea better than words alone. The expectation is not that your report be entertaining but that it be interesting to read. For example, when you encounter a clever idea that you wish to write about, do not bury the cleverness in arcane details but, instead, explain it in a way that the reader can appreciate the cleverness of the idea and be pleased by having learned of it.
  • Presentation (2 points):
    This evaluates those aspects of quality of writing not already evaluated under Technical clarity above. The emphasis in this evaluation will be on your spelling, your English grammar and your ability to steer clear of cliches and awkward expressions.
  • Penalties: Delayed submissions will be penalized at 4 points for each missed 5pm deadline on a weekday. Page number violations will be penalized at 4 points per extra page (resubmission will be required but the penalty will apply even if the resubmission is within the 6-page limit). Submission of a Word document instead of a pdf document will be penalized at 4 points (yes,indeed!).

Research Project, Part 3 (Oral presentation, May 15, 22 and 29)

Each student will be expected to make a 20-minute presentation (including 5 minutes for Q&A) to the rest of the class about the topic of the student's literature review. The format is informal and the student is at liberty to choose whatever style works best for him/her. If the student will use a PowerPoint or a Keynote presentation, the student should bring his/her own laptop, or e-mail the presentation to the instructor before the date of his/her presentation.

The objective of this component of the project is for all students to gain exposure to the topics chosen by their fellow students. To this end, the presentation should be tutorial in nature with the goal of helping other students gain a brief introduction to the sub-field, its significance, and something memorable/interesting in the sub-field. Each student will evaluate the presentation of every other student based on the following criteria:

  • Clarity of presentation (3 points)
  • Whether the presenter was competent in the topic (3 points)
  • Whether I learned something new and interesting (9 points)

Research Project, Part 4 (Duplication/verification or Extension,
due June 6)

This portion of the research project requires you to briefly engage in research with the goal of duplicating and verifying or extending the results of your chosen anchor paper (or a related paper if you so choose). That is, you can choose to do one of the following:

  • Duplicate and verify
  • Extend
  • Both of the above

Duplication/verification

If you choose to duplicate and verify, you are expected to answer the question: Is this paper technically sound? In your attempt to answer this question, you should verify the claims made in the paper as best as you can, and explain your process of verification. Do not assume that published papers are always accurate and flawless. If you do discover flaws in the paper or just dubious statements, explain exactly where and why you think the authors may be wrong.

You may use simulation, measurement or testing to duplicate and verify. If the paper presented simulation results, you may independently duplicate at least some of the results as best as you can and explain discrepancies, if any. If the paper described a new software protocol or a tool, you can download the tool and report relevant measurement results. If the paper presented theoretical results, you can create a simulation environment to verify the theoretical results. If the paper described a new Internet measurement technique, you can implement the technique to assess if it is feasible in practice or download their tool and verify performance claims made in the paper. Your report should provide full documentation of your efforts including what you tried and failed to do as well as what you tried and succeeded in accomplishing.

Extension

If you choose to work on extending the results of your anchor paper (or a related paper, if you so choose), you are expected to actively engage in theoretical or other research such as by making your own original contribution. For example, if your anchor paper primarily makes theoretical contributions, you can try to extend some results along with your own proofs to go along with your extensions. You can derive theoretical fundamental limits related to the claims made in the anchor paper (for example, if the anchor paper proposes method A and claims it to be better than any other designed so far, you can try to prove a fundamental limit to show how close method A gets to an imaginary best possible method). You can also come up with an original and novel idea and provide justification for why it is better than what was described in your anchor paper. Basically, you actively engage in theoretical or other research and come up with results that build upon the research presented in your anchor paper. You should fully document what you tried and failed to accomplish as well as what you tried and succeeded in accomplishing.

Submission Instructions

It is recommended (but not required) that the narrative portion of this component of the project not exceed 2 pages in length with a Times New Roman font size of 10pt. You may include supplementary information in an appendix (which will not count toward the 2-page recommendation) such as code that you have written to verify the claims of the paper.

Only an electronic copy is required for submission. The submission should be a single pdf document. Please make your submission through Bb Learn before 5pm on June 6 (Friday), 2014. Please do not submit a hardcopy.

Grading breakdown

This component of the research project will be graded as follows:

  • Depth and thoroughness (3 points):
    This evaluates how closely you have examined the results of the anchor paper (in case you were duplicating and verifying) or how deeply you have searched for an original novel extension (in case you chose to work on extension). A superficial and cursory effort will score low in this component.
  • Ingenuity (4 points):
    This evaluates how ingenious you have been in your verification or extension effort; or how clever your ideas are in extending the results of the anchor paper.
  • Effort (3 points):
    This evaluates the level of effort you have put into this component of the research project.
  • Penalties:
    Delayed submissions will have 3 points deducted for each missed 5pm deadline on a weekday. Submission of a Word document will be penalized at 3 points!

Policy on Absences

Absence from class quizzes or from an oral presentation will be excused only under extraordinary circumstances such as medical or family emergencies. A missed quiz/presentation without prior approval and without legitimate reasons will be graded at zero points. An absence will be excused only if the student is able to provide legitimate documentation (such as a physician's note).

Policy on Academic Honesty

Each student is expected to complete the research projects independently; it is not acceptable to copy another student's work or to copy sections from any other source without attribution. Barring action on flagrant violations, an honor system will be assumed.

The following is a partial list of activities that will be considered to constitute academic dishonesty:

  • Presenting the work of another person (fellow student or not) as your own.
  • Cheating in a quiz such as through conversations with other students, sharing textbooks, calculators or other materials with another student, using unauthorized books not approved by the instructor in an open book examination, or by inappropriate or unauthorized use of technology such as laptops and cell-phones during an examination.
  • Using or attempting to use the work of another student or providing answers to other students.
  • Failing to take reasonable measures to protect your work from use by other students in assignments, projects or examinations.

Penalties for academic dishonesty will be strictly enforced and will include a lowering of the grade or a failing grade in the course.