Web Infrastructure
COEN 162 - Spring 2012
Course Info
- Lecturer: Dr. Silvia Figueira (sfigueira@scu.edu)
- Classes: T/Th at 11:50
- Office Hours: MW, 10:30-11:30am
- Work: 4 projects, 1 midterm, 1 final
Important Dates
- Code Project I -- due on 4/19
- Paper Project I -- presentations on 5/3
- Midterm -- 5/15 -- new date!
- Code Project II -- due on 5/17
- Paper Project II -- presentations on 5/31
Lecture Notes
- Introduction
- Content Transport
- Caching Web Content
- Caching Streaming Media
- Navigation
- Peer-to-Peer
- Instant Messaging
- Search Engines
- Data Centers
- Web Services
- Social Networks and Hadoop
Projects (mandatory!)
Project 1: Talk to the Server
Your project consists of building a tool to obtain a web object from a server.
Your tool should ask the user for the URL or the server's address and file path/name.
It then uses HTTP (over a TCP connection) to send a GET message and receive a response from the server, which is shown on the screen.
The deadline is 4/19 in the classroom, where you should show a demo and give me the code.
This is a group project, and each group should have 2 or 3 people.
You may use any computer (your laptop or a machine in the DC) and any programming language.
Project 2: Streaming
This project consists of researching a site related to one of the topics in the list below.
Start by selecting a topic from the list. Then find a product or site related to the topic and send the info to me by email.
To avoid repetitions, I will use FCFS.
After researching the the topic, you will write a 2-page paper about it, and present it to the class on 5/3, when the paper is also due.
Use ppt for the presentation and make it short, 5-10min.
Work alone or in groups of 2.
Topics:
- conference
- telemedicine
- phone, VoIP
- radio
- tv
- movies
- short videos
- gaming
Sites:
- NetFlix -- Rahul Krishnakumar and James Brock
- YouTube -- Jonathan Ahumada and Jasmine Farias
- Twitch.tv -- Bryson Lam, Matt Tu, Jeffrey Matsunaga
- Pandora -- Zachary Singh and Sahil Verma
- FaceTime -- Lauren Furumoto and Kristen Muramoto
- FireFly -- Rachel McGuigan
- Hulu -- Urvashi Reddy and Elysia Chu
- Skype -- Nina Bortoloto and Ryan Selewicz
- Gmail Video Chat -- Maya Hough and Victorial Hall
- NBA league pass -- Doug Renfro and Jeremy Bunyard
- Instagram -- Tovin Thomas and Hari Rajagopalan
Project 3: Web Caching
Extend project 1 to implement a web proxy.
Your cache will receive requests from a browser.
If the requested page is not in the cache, get the page from the server (project 1), keep a copy in the cache, and send the page to the browser.
If the requested page is in the cache, send a if-modified-since GET to the server.
If the server asnwers yes, update the cache with the new page and send it to the browser.
If the server answers no, send the page in the cache to the browser.
Project 4: Paper
Choose a paper from WWW 11 or 12. Send me the title as soon as possible, FCFS!
A 2-page paper is due on 5/31, when you should also give a 5-min ppt presentation.
The presentation should include the problem, the solution, some interesting details, and results.
You can work alone or in a group of up to 3 people.
Paper Selection:
- Learning Facial Attributes by Crowdsourcing in Social Media - Jasmine Farias and Jonathan Ahumada
- Timestamp-based cache invalidation for search engines - Sahil Verma and Zachary Singh
- Photo-TaPE: User Privacy Preferences in Photo Tagging - Lauren Furumoto and Kristen Muramoto
- Heat-seeking Honeypots: Design and Experience - Victoria Hall and Maya Hough
- Enhancing web search with entity intent - Doug Renfro and Jeremy Bunyard, and Eric Sprauve
- Clustering and searching WWW images using link and page layout analysis - Rachel McGuigan
- Measuring the effectiveness of display advertising: a time series approach - Nina Bortoloto and Ryan Selewicz
- Binary RDF for Scalable Publishing, Exchanging, and Consumption in the Web of Data - Bryson lam, Matt Tu, and Jeff Matsunaga
- Spammers' networks within online social networks: a case-study on Twitter - Urvashi Reddy and Elysia Chu
- Limiting the Spread of Misinformation in Social Networks - Hari Rajagopalan and Tovin Thomas
- Influence and Passivity in Social Media - Rahul Krishnakumar and Jim Brock
Text Book
There are no required books.
Extra Information
Syllabus
- Networks
- Protocols
- Caching, Load Balancing
- Peer-to-Peer
- Web Services
- Mechanisms
- Search Engines
- Data Processing, Hadoop
- Social Networks
- Data Mining
- Cloud
COEN 162 -- Learning Outcomes
- Understand the relationship between content and content delivery, i.e., how the evolution of the web applications affects web technology.
- Understand web caching: the different kinds of caches, the replacement policies, the coherence strategies, and the parameters affecting the effectiveness of the web cache.
- Understand the Internet's Domain Name System and load sharing.
- Understand web switching and global load balancing, particularly performance prediction and proximity estimation.
- Use sockets to develop web technology.
- Read, summarize and present research papers.