Privacy/Reviews/Persistent SPDY CWND: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(Created page with "= Document Overview = {| |'''Feature/Product:''' || SPDY persistent CWND setting |- |'''Projected Feature Freeze Date:''' || <section begin='eta' />(tbd)<section end='eta' /> |...")
 
No edit summary
 
Line 30: Line 30:
In this section, the product's architecture is described. Any individual components or actors are identified, their "knowledge" or what data they store is identified, and data flow between components and external entities is described.  
In this section, the product's architecture is described. Any individual components or actors are identified, their "knowledge" or what data they store is identified, and data flow between components and external entities is described.  


'''The main objective of this feature/product is:''' (describe the goals of the feature/product here)
'''The main objective of this feature/product is:''' network performance for the spdy protocol using the persistent CWND settings attribute of the protocol.
 


'''Design Documents''':  
'''Design Documents''':  
Link to any design or architectural documents here.
 
https://bugzilla.mozilla.org/show_bug.cgi?id=822745
http://dev.chromium.org/spdy/spdy-protocol/spdy-protocol-draft3#TOC-2.6.4-SETTINGS


== Components  ==
== Components  ==


Describe any major components in the system and how they interact. Also include any third-party APIs (those Mozilla does not control) and what type of data is sent or received via those APIs.
A spdy server sends a value that represents the effective network CWND to the host periodically during the session. The client, upon creating a new session, echoes this value to the server so it can apply it to the new session and garner a performance benefit over TCP slow start. It is essentially a transport layer cookie specific to the protocol.
 
=== Component X  ===
 
This component does A, B and C and interacts with component Y to do D.
 
The tables below simply summarize the data encountered by this component.  
 
'''Stored Data:'''
 
{| class="wikitable"
|-
! What
! Where
|-
| data type
| where stored
|}


'''Communication with Component Y'''
The value is limited in our implementation to 7 bits and is stored per connection entry. a connection entry is more or less defined by the tuple of {hostname, ssl, private-browsing, anonymous} - so this data is not shared between PB and non PB sessions.


{| class="wikitable"
This data is not stored on disk and is not persisted between restarts.
|-
! Direction
! Message
! Data
! Notes
|-
| ''In:''
| message 1
| types of data received from component Y with the message
|
|-
| ''Out:''
| message 2
| types of data sent to component Y with the message
|
|}


an about:config preference is available to control whether or not the data is stored.


= User Data Risk Minimization =
= User Data Risk Minimization =

Latest revision as of 19:53, 19 December 2012

Document Overview

Feature/Product: SPDY persistent CWND setting
Projected Feature Freeze Date: (tbd)
Product Champions: Patrick McManus
Privacy Champions: (the privacy Friend you're working with)
Security Contact: Curtis Koenig
Document State: [NEW]


Timeline:

Architectural Overview: (date TBD)
Recommendation Meeting: (date TBD)
Review Complete ETA: tbd

Architecture

In this section, the product's architecture is described. Any individual components or actors are identified, their "knowledge" or what data they store is identified, and data flow between components and external entities is described.

The main objective of this feature/product is: network performance for the spdy protocol using the persistent CWND settings attribute of the protocol.


Design Documents:

https://bugzilla.mozilla.org/show_bug.cgi?id=822745 http://dev.chromium.org/spdy/spdy-protocol/spdy-protocol-draft3#TOC-2.6.4-SETTINGS

Components

A spdy server sends a value that represents the effective network CWND to the host periodically during the session. The client, upon creating a new session, echoes this value to the server so it can apply it to the new session and garner a performance benefit over TCP slow start. It is essentially a transport layer cookie specific to the protocol.

The value is limited in our implementation to 7 bits and is stored per connection entry. a connection entry is more or less defined by the tuple of {hostname, ssl, private-browsing, anonymous} - so this data is not shared between PB and non PB sessions.

This data is not stored on disk and is not persisted between restarts.

an about:config preference is available to control whether or not the data is stored.

User Data Risk Minimization

In this section, the privacy champion will identify areas of user data risk and recommendations for minimizing the risk.

Alignment with Privacy Operating Principles

In this section, the privacy champion will identify how the feature lines up with Mozilla's privacy operating principles.

See Also: Privacy/Roadmap_2011#Operating_Principles:

Principle: Transparency / No Surprises

(How the feature addresses this)

Recommendations: (what can be improved)


Principle: Real Choice

Recommendations:


Principle: Sensible Defaults

Recommendations:


Principle: Limited Data

Recommendations:

Follow-up Tasks and tracking

What Who Bug Details
[NEW] Initial Overview Discussion ? Meeting time TBD