IDS YouTube
open source
code is public, you can modify any of it, but you can't sell it. Developer makes money if any through support & training services
routing
communication across networks
TCP
connection-oriented protocol
HTML5
current version of HTML
how APIs work
data is in a standard format, applications are designed to send and receive data in that standard format
transmission scheduling
devices take turns transmitting so their signals don't interfere with eachother
Web application attributes
1) generally low hardware requirements becasue can be used by weak mobile devices 2) runs in a web browser 3) typically needs to tolerate disconnects & doesn't require continuous network access
physical
7L PCPI- actually does the transmitting
presentation
7L PCPI- reformats data for network travel
session
7L PCPI- synchronize related application
transport
7L PCPI- takes application data and converts it to a packet sequence
application
7L PCPI- user interface
network
7L PCPI-assigns destination IP address to each packet
data link
7L PCPI-controls transmission scheduling and converts byte to bitstream
Application
A PSTNDP
MySQL
A relational database management system (RDBMS) that runs as a server providing multi-user access to a number of databases.
3rd person cookie
A site that did not put the cookie on the machine is able to use the cookie
Application Programming Interface (API)
API
Data Link
APSTNDP
Network
APSTNDP
Physical
APSTNDP
Presentation
APSTNDP
Session
APSTNDP
Transport
APSTNDP
problem with routing
Core problems: For an incoming packet, is its destination in my network? If the data link layer finds the packet is for me, am I its final destination?
Dynamic Adaptive Streaming over HTTP (DASH)
DASH
Plug in
Download & install the application on your machine, then run it
Supercookie
Gather information about a user's Internet history across sessions, websites, and even browsers
Hypertext Markup Language (HTML)
HTML
Fingerprinting
Identifying users by unique combinations of browser, operating system, & hardware features
HTML5
One of its main features is providing functions to make plugins unnecessary and improve security
Tier 3 ISP
Only use transit agreements with other ISPs
Tier 1 ISP
Own part of the backbone, only use peering agreements
HTML
Primary language used for writing webpages
APSTNDP
Seven layers of PCPI
transmission control protocol
TCP
Latency
Time it takes for a bit to travel from its sender to its receiver
User Datagram Protocol
UDP
user-generated content (UGC)
UGC
Tier 2 ISP
Use both peering and transit agreements
Jitter
Variability in the delay of transmissions
problem with switching
When I receive a packet, the sender might be connected to multiple devices - should I ignore this packet?
Stateless applications
Why are cookies necessary?
Vitess
YouTube's database for storing videos
TCP
Youtube uses (TCP/ UDP) ?
UDP
a connectionless protocol that has little overhead and is used for communication data such as voice and video
JavaScript
an object-oriented computer programming language commonly used to create interactive effects within web browsers
machine learning
automated learning of patterns in the data, expressed as rules: people who like X also like Y&Z
modular layer cons
because it is loosely coupled, could be made more efficient by sharing cross-layer information
Why APIs necessary
if you have many flavors of two applications (like email) then developing a custom interface for each & every application pair is a LOT of work
video problems
latency, jitter, packet loss
modular layer pros
makes it easy to modify a layer without any impact on the rest of the system
closed source
source code is kept secret, you can't customize the application except for plugins etc. and developer can sell it
Switching
technique for packet handling: Direct connections between devices, within local area networks (LANs)
Client-side scripting
the script code runs on your machine
Server-side scripting
the script exists and runs (remotely) on a server
transit
the service of allowing network traffic to cross a computer network, usually used to connect a smaller Internet service provider (ISP) to the larger Internet
applets
type of plugin, no longer around really.
1st person cookie
used by the same site your'e visiting
buffering
used to help smooth out problems with latency and jitter
peering
voluntary interconnection of administratively separate Internet networks for the purpose of exchanging traffic between the users of each network
pros of layered architecture
you can alter one layer without much impact on the others ---> easy to implement new software