You are on page 1of 46

Computer Science 317

Internet Computing
Winter 2016
Term 1

2016 Donald Acton

1/

Who am I?

Donald Acton
How should you address me:
Donald
Don
Dr Acton

Note: My last name is not Action


Dont be shy, say hi to me outside of class

CPSC 317 2016 T1

2/

Areas of Interest
Operating Systems
Computer Networking
Distributed Computing

CPSC 317 2016 T1

3/

Some recent headlines

CPSC 317 2016 T1

4/

NSA Spy Base in England


Sept 6, 2016
https://theintercept.com/2016/09/06/nsa-menwith-hill-targeted-killingsurveillance/
NSA spy base in the UK uses satellites to intercept cell phone and Wi-Fi
data
In 2011 during one 12 hour period collected 335 million pieces of cell
phone meta-data. This data includes information like what phone
initiated a call, where it went to, how long it lasted GPS coordinates of
where the phone making the call was located

CPSC 317 2016 T1

5/

Capturing these signals might be easier than you think


Showed video of the capture of data sent by aircraft
The device used was a NooElec R820T2 SDR & DVB-T dongle. Variants of
the these retail for between 15 and 30 dollars. If you are interested in this
stuff look for:

SDR (software defined radio)


ADS-B (automatic dependent surveillance
broadcast)

CPSC 317 2016 T1

6/

Has your cell phone been hacked?


New York Times Sept 2, 2016 http://www.nytimes.com/2016/09/03/technology/nso-group-how-spy-tech
-firms-let-governments-see-everything-on-a-smartphone.html?_r=0
Israeli company, NOS, is one of several companies that will hack into
someones phone for a price. ($650K for 10 phones + setup fee of 500K)
Can install the hack via Wi-Fi, text message, email, browser. Can then get
contacts, screen captures, take pictures, eavesdrop and more, all without
the phone owner knowing

CPSC 317 2016 T1

7/

Hackers Remotely Kill a Jeep on the Highway -- with


me in it
-- Wired July 21, 2015
Quoting from the article
And thanks to one vulnerable element, which Miller and Valasek wont
identify until their Black Hat talk, Uconnects cellular connection also lets
anyone who knows the cars IP address gain access from anywhere in
the country.
http://www.wired.com/2015/07/hackers-remotely-kill-jeep-highway/
Video of the presentation at the 2015 Defcon:
https://www.youtube.com/watch?v=OobLb1McxnI
Link to the paper (it's 90+ pages!):
http://www.ioactive.com/pdfs/IOActive_Remote_Car_Hacking.pdf

CPSC 317 2016 T1

8/

One reason you should take 317


Wired people know something about the wires. -- Neal Stephenson, a
science fiction author

CPSC 317 2016 T1

9/

What is this course about?


Computer Networking

CPSC 317 2016 T1

10/

If you only take one networking course, what do we


think you should learn?
You should become comfortable with writing and working with different
types of programs that use computer networks
Terminology about networking
Key paradigms and strategies used in developing applications that use
networks
Applying these strategies and paradigms
Basic concepts on how the Internet is put together and works

CPSC 317 2016 T1

11/

Protocol Stack
Webserver, email,
file transfer

Part of
Operating System
Hardware

Application
Transport
Network
Link
Physical

CPSC 317 2016 T1

TCP, UDP
IP
Ethernet
802.11g
1000BASE-T

12/

Key Paradigms and Strategies

Focus on addressing:
Isolation and privacy
Data loss
Performance
Naming and location
Using layers and abstractions

CPSC 317 2016 T1

13/

What will we look at?


What is a protocol?
Programming model of data
exchange & issues

Advanced topics like firewalls,


traffic shaping, filtering
Security and Privacy

Bandwidth & Latency

Peer-to-peer

Multimedia issues

Big Data & The Cloud

Reliability and Performance


Naming
How the Internet is organized

CPSC 317 2016 T1

14/

How are we going to do it?


Learning requires practice
Class time will focus on
Inventing/exploring solutions (in a group) to a problem
Discussing resulting solutions
Solving problems based on prior study or knowledge
Demonstrations
Mini-lectures to summarize topics or bridge between sections

CPSC 317 2016 T1

15/

Assignments (tentative)
1)A client application using TCP and written in Java
2)A client application in Java using UDP
3)A server application written in C
4)We will be using git for distribution of assignment material and for
handing in assignments. The git server is the commercial version of
Bitbucket hosted by the department to provide (aka Stash)
5)Regardless of where you do your assignment in the end it must
compile and run on the undergrad machines in the department.
Assignments will be marked on how they perform on those
machines.

CPSC 317 2016 T1

16/

Tutorials
Tutorials start week of September 12
Tutorials will
Provide help/guidance for the assignments
Work problems relevant to the course material

CPSC 317 2016 T1

17/

Basic Course Information


Pre-requisites
CPSC 213 and
CPSC 221 or
All of CPSC 211, 260, and EECE 320
3 programming assignments one will be in C and two in Java.
(Typically clients in Java and servers in C)

CPSC 317 2016 T1

18/

Contacting Me
Office ICCS/CS 231
Email: cs317@ugrad.cs.ubc.ca
Do not email me with general questions about assignments or course
material. Instead:

Use piazza (more in a few slides)

Ask a TA during your tutorial

Ask me before or after class

Visit me during my office hours

CPSC 317 2016 T1

19/

My Office Hours
TBA

Open door policy

If my door is open please feel free to ask me


If my door is closed it means that either I am not there or I am busy
and unavailable

CPSC 317 2016 T1

20/

Use email to:


Make appointments
Privacy regulations make it difficult to respond via email to issues
concerning requests for grades or personal information
Email response times can vary widely from a few hours to several
days. Dont expect any response on weekends or after hours

CPSC 317 2016 T1

21/

TAs
TAs

Amin Aghaee Rad (Thursday tutorial)

Stephan Kan

Nodir Kodirov

Patrick Colp

(Friday tutorials)

TA office hours

TBA

CPSC 317 2016 T1

22/

Workload
3 quizzes (Oct 5, Oct 26, Nov 16)

Each quiz about 45 minutes

3 Final Exam
Do not make any travel arrangements for the Christmas
break until after the final exam time has been set

CPSC 317 2016 T1

23/

Grading Scheme

Assignments:

24%

Quizzes

24%

Final Exam

52%

Must pass the final to pass the course

Must get 50% average overall on assignments

Lower of the computed grade or 45% will be assigned if above conditions are not
met (Last year of 117 students, 5 failed. Only 1 got a 45% and that was because
of the final.)

Instructor reserves the right to make minor modifications to the grading scheme

Class average is typically in the 68 73% range

CPSC 317 2016 T1

24/

Some Rules

CPSC 317 2016 T1

25/

Laptops can be helpful

Note taking (research suggests this is not as


effective as paper and pen note taking see:

http://www.psychologicalscience.org/index.ph
p/news/releases/take-notes-by-hand-forbetter-long-term-comprehension.html )

Following slides
Checking material
In class activities
CPSC 317 2016 T1

26/

However there are problems

Psychological research shows that contrary to what you may believe


multi-tasking is not an effective way to work (Brain rule #4 at
http://www.brainrules.net/ )
You need to focus on the task at hand (i.e. CPSC 317)
Using Facebook, watching YouTube, IMing, surfing the web, playing a
game or watching a movie is distracting to you
BUT more importantly it distracts your classmates and they complain
about it

CPSC 317 2016 T1

27/

Laptops in this class

Laptops for 317 course related work permitted


in back 4 rows and side

Laptops not permitted for game playing,


facebooking etc
Operate the laptop on the dimmest setting
Public shaming permitted (or private comments
to me)
CPSC 317 2016 T1

28/

Resources
CPSC 317 2016 T1

29/

Course Webpage

Contains basic information

Contact information

Policies

Links to piazza and Connect

Calendar of events for the course (you can subscribe to it)

Basic syllabus

URL:
http://www.ugrad.cs.ubc.ca/~cs31
7/
CPSC 317 2016 T1

30/

piazza
Replaces the discussion board of Connect
All announcements etc, will be done through Piazza
To join

Go to course web site follow the signup instructions under the Piazza tab

You may use a fake name if you want but you have to tell me what it is by sending
the details to cs317@ugrad.cs.ubc.ca

Access code is in announcement section on Connect

CPSC 317 2016 T1

31/

UBC Connect
Grades
Quiz answers
Support materials
Access to Connect is available now

CPSC 317 2016 T1

32/

Textbook

Shop around prices vary


Amazon ~199.95
!ndigo - ~ 199.95
UBC bookstore
Computer Networking:
Consider electronic version rental

A Top Down Approach,


7th edition.
Jim Kurose, Keith Ross
Pearson, 2016

CPSC 317 2016 T1

33/

Some More Rules


Missed activity
Late policy
Disputing marks
Academic conduct
Final exam don't make travel plans until exam schedule is finalized

CPSC 317 2016 T1

34/

Unexpected Absence
Email me or have someone email ASAP to let me know you
are away and with a brief explanation (e.g. I am sick)
See me as soon as you return to class (not a week later or at
the end of term)
Provide appropriate documentation for the absence (Drs
note, accident report)
Failure to do this could result in a grade of 0 for the work
Only do this if it causes
you to miss work like a quiz or
assignment deadline
CPSC 317 2016 T1

35/

Expected Absences
Assignments

No special consideration

Quizzes

Must tell me about the conflict at least 2 weeks in advance

Reason for missing the quiz must fall within acceptable reasons as
outlined in UBC policies (e.g. court appearance, religious observance)

CPSC 317 2016 T1

36/

Late Assignments
Penalized at the rate of 33%/day prorated by the minute
Assignments not accepted after 48 hours

CPSC 317 2016 T1

37/

Marking Disagreements
You have 1 week from when a piece of graded work is handed back to
inform me of any errors in addition etc
If you believe something was incorrectly marked you have 1 week from
when the work was handed back to bring this to my attention by providing
me with:
A detailed written on paper response explaining why the answer, as written,
is correct (no saying things like but I meant )
After 1 week the mark stands
When submitting something for marking reconsideration, I reserve the right
to review the marking of other questions for accuracy and consistency.

CPSC 317 2016 T1

38/

Final Exam

Do not make any travel plans until after the final


exam schedule is confirmed. Special arrangements
will not be made for anyone to write the final exam
at an alternate date and time, except as required
by University regulations.

CPSC 317 2016 T1

39/

Academic Conduct
What's allowed:
Helping each other understand material and assignments
Exploring/discussing solutions to assignments
Caveat no looking at each others code or exchanging anything written (i.e. talk
but dont write)
Using existing public approaches to a problem but you must properly cite the
work
Discussing with current 317 students existing approaches to solving a problem
Discussing requirements
Discussing the merits of a proposed solution with the course instructor or TAs

CPSC 317 2016 T1

40/

What's not allowed


Submitting someone elses work as your own (i.e. without
acknowledgement). Examples include:
Having in your possession previous solutions to the assignments either
someone elses or the instructors
Working in a group and then handing in the work, even a part of it
Work you have handed in to another course all work must be new
work unless permission is received in advance

CPSC 317 2016 T1

41/

More what's not allowed


Making a solution available as an aid to others, either now, or in the
future
What to do if you are uncertain?

Ask the instructor or TAs

Read the department's policy on Collaboration and Plagiarism at:


https://www.cs.ubc.ca/our-department/administration/policies/collaboration

http://www.cs.ubc.ca/~tmm/courses/cheat.html
CPSC 317 2016 T1

42/

Possible Penalties
One or more of the following:
1. A failing grade or zero in the course, exam, or assignment.
2. Suspension from the University.
3. Reprimand with a letter placed in the student's file.
4. A notation on the student's permanent record of the penalty imposed.

CPSC 317 2016 T1

43/

Course Learning Goals


Isolation and privacy
Data Loss
Performance
Naming and location
Layering and abstractions

CPSC 317 2016 T1

44/

Paraphrased comment from a previous student


I 've learned that I should be thankful for every packet that makes it to
my computer. It is a miracle that any of this even works.

CPSC 317 2016 T1

45/

Things to do now
Signup for piazza
Configure your laptop for remote access

Linux/Mac ssh

Windows Xmanager

Install Wireshark if you want


Install a version of git

CPSC 317 2016 T1

46/

You might also like