(initial change) |
(add project status, add description for M0) |
||
(7 intermediate revisions by the same user not shown) | |||
Line 8: | Line 8: | ||
* Kershaw Chang | * Kershaw Chang | ||
* Shih-Chiang Chien | * Shih-Chiang Chien | ||
= Status = | |||
[[File:Socket_Process_project_status.png|800px]] | |||
= Roadmap = | = Roadmap = | ||
{| class="wikitable" | |||
|- | |||
! Milestone !! Task !! Estimate Time in Weeks !! Actual Time in Weeks | |||
|- | |||
| M0 || Evaluation & Prototyping || 6 || | |||
|- | |||
| M1 || Socket process basic implementation || 7 || | |||
|- | |||
| M2 || HTTP/HTTPS adaption || 8 || | |||
|- | |||
| M3 || Telemetry for HTTP/HTTPS adaption || 8 || | |||
|- | |||
| M4 || Bugfix on Nightly 63 & Shell study on Beta 62 || 8 || | |||
|- | |||
|} | |||
= Scope = | = Scope = | ||
* M0 - Evaluation & Prototyping | |||
** Prototyping with UDPSocket | |||
** Performance study on the additional process | |||
** Architecture design for HTTP/HTTPS adaption | |||
* M1 - Firefox60 Nightly | |||
** Prepare and land socket process behind a pref, default off | |||
** Prepare and land telemetry for the socket process shield study | |||
* M2 - Firefox61 Nightly | |||
** Shield study on the socket process overhead on Beta 60 | |||
** Prepare and land HTTP/HTTPS modification behind a pref | |||
** Default enable socket process on Nightly 61 | |||
* M3 - Firefox62 Nightly | |||
** Continue landing HTTP/HTTPS modification and bugfix | |||
** Prepare and land telemetry for the HTTP/HTTPS shield study | |||
* M4 - Firefox63 Nightly | |||
** Shield study on the performance of the new HTTP/HTTPS architecture on Beta 62 | |||
** Default enable new HTTP/HTTPS architecture on Nightly 63 | |||
= Evaluation = | = Evaluation = | ||
[https://wiki.mozilla.org/Necko:_Sandboxing_TCP/UDP_socket_in_a_separate_process] | [https://wiki.mozilla.org/Necko:_Sandboxing_TCP/UDP_socket_in_a_separate_process Sandboxing TCP/UDP socket in a separate process] | ||
= Risk & Mitigation plan = | = Risk & Mitigation plan = | ||
Socket process isolation will be landed behind a pref, therefore: | |||
* [https://wiki.mozilla.org/Firefox/Shield/Shield_Studies Shield study] will be employed on a proportion of Firefox users before to gather performance/stability data without affecting all users at once. | |||
* [https://wiki.mozilla.org/Firefox/Go_Faster Go Faster] add-on can be used to disable the feature on designated channel immediately when major regression happen after default on. | |||
= Project Dashboard = | = Project Dashboard = | ||
Line 24: | Line 63: | ||
{ | { | ||
"id":["1322426"] | "id":["1322426"] | ||
} | |||
</bugzilla> | |||
=== M1 bugs === | |||
<bugzilla> | |||
{ | |||
"product":"Core", | |||
"status":["UNCONFIRMED", "NEW", "ASSIGNED", "REOPENED", "RESOLVED", "VERIFIED"], | |||
"whiteboard":["[SOCK-PROC-M1]"], | |||
"include_fields": "id, summary, status, target_milestone, assigned_to, whiteboard" | |||
} | } | ||
</bugzilla> | </bugzilla> |
Latest revision as of 02:02, 16 January 2018
Team members
EM: Shian-Yow Wu
Tech Lead: Shih-Chiang Chien
Implementation Team:
- Cervantes Yu
- Kershaw Chang
- Shih-Chiang Chien
Status
Roadmap
Milestone | Task | Estimate Time in Weeks | Actual Time in Weeks |
---|---|---|---|
M0 | Evaluation & Prototyping | 6 | |
M1 | Socket process basic implementation | 7 | |
M2 | HTTP/HTTPS adaption | 8 | |
M3 | Telemetry for HTTP/HTTPS adaption | 8 | |
M4 | Bugfix on Nightly 63 & Shell study on Beta 62 | 8 |
Scope
- M0 - Evaluation & Prototyping
- Prototyping with UDPSocket
- Performance study on the additional process
- Architecture design for HTTP/HTTPS adaption
- M1 - Firefox60 Nightly
- Prepare and land socket process behind a pref, default off
- Prepare and land telemetry for the socket process shield study
- M2 - Firefox61 Nightly
- Shield study on the socket process overhead on Beta 60
- Prepare and land HTTP/HTTPS modification behind a pref
- Default enable socket process on Nightly 61
- M3 - Firefox62 Nightly
- Continue landing HTTP/HTTPS modification and bugfix
- Prepare and land telemetry for the HTTP/HTTPS shield study
- M4 - Firefox63 Nightly
- Shield study on the performance of the new HTTP/HTTPS architecture on Beta 62
- Default enable new HTTP/HTTPS architecture on Nightly 63
Evaluation
Risk & Mitigation plan
Socket process isolation will be landed behind a pref, therefore:
- Shield study will be employed on a proportion of Firefox users before to gather performance/stability data without affecting all users at once.
- Go Faster add-on can be used to disable the feature on designated channel immediately when major regression happen after default on.
Project Dashboard
Meta Bugs
ID | Summary | Priority | Status |
---|---|---|---|
1322426 | [meta] Move all TCP/UDP network operations into a dedicated process | P2 | NEW |
1 Total; 1 Open (100%); 0 Resolved (0%); 0 Verified (0%);
M1 bugs
ID | Summary | Status | Target milestone | Assigned to | Whiteboard |
---|---|---|---|---|---|
1416623 | Create SocketProcessHost and corresponding IPC interfaces | RESOLVED | --- | Kershaw Chang [:kershaw] | [necko-triaged] [SOCK-PROC-M1] |
1430041 | Setup crash reporter on socket process | RESOLVED | --- | Kershaw Chang [:kershaw] | [necko-triaged][SOCK-PROC-M1] |
1430042 | Setup memory reporter on socket process | RESOLVED | --- | Kershaw Chang [:kershaw] | [necko-triaged][SOCK-PROC-M1] |
1430045 | Create NetworkPrefs for synchronizing important preference to socket process | RESOLVED | --- | Cervantes Yu [:cyu] [:cervantes] | [necko-triaged][SOCK-PROC-M1] |
1430047 | initialize SocketTransportService on socket process | RESOLVED | --- | Kershaw Chang [:kershaw] | [necko-triaged][SOCK-PROC-M1] |
1430048 | update online/offline status to socket process | RESOLVED | --- | Kershaw Chang [:kershaw] | [necko-triaged][SOCK-PROC-M1] |
1430050 | IPC to the socket process for DNS resolution | RESOLVED | --- | Kershaw Chang [:kershaw] | [necko-triaged][SOCK-PROC-M1] |
1430538 | Setup Gecko profiler on socket process | RESOLVED | --- | Dragana Damjanovic [:dragana] | [necko-triaged][SOCK-PROC-M1] |
1430684 | Setup telemetry on socket process | RESOLVED | --- | Cervantes Yu [:cyu] [:cervantes] | [necko-triaged][SOCK-PROC-M1] |
1430695 | add telemetry to monitor performance metrics/overhead of creating socket process | NEW | --- | [necko-triaged][SOCK-PROC-M1] |
10 Total; 1 Open (10%); 9 Resolved (90%); 0 Verified (0%);