Connectivity (not networking)
Carried over from client-
Requirements of converged network stack for Ubuntu Touch and Desktop; mobile data support etc.
Blueprint information
- Status:
- Not started
- Approver:
- Jason Warner
- Priority:
- Undefined
- Drafter:
- Mathieu Trudel-Lapierre
- Direction:
- Needs approval
- Assignee:
- Mathieu Trudel-Lapierre
- Definition:
- New
- Series goal:
- Accepted for saucy
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Whiteboard
2013-05-29, seb128: targetting for series saucy (so it shows on status.ubuntu.com) and moving to 13.06 since all the items are still TODO and not likely to be finished this week
= Carried from client-
Main missing piece is data support (over 3G/4G) for Ubuntu Touch
Certification will be required for the whole phone stack
Leveraging RILd and binary libraries for it
Memory consumption is really high with NM + nm-applet + dhclient
== Estimate amount of work required ==
* (Stephane) Looked at how much effort it would be to add oFono support to Network Manager
* Not a huge effort, and could support both MM and oFono at the same time; probably a month worth of work
* Upstream NM ready to take oFono support
* Could whitelist modems for oFono vs. MM
* Possibility of using MM
* ChromeBooks happily using MM, but lacks voice support
* MM could get voice support, but was never certified on a phone
* Voice has lots of ancillary features that may need to be developed as well (call forwarding, blocking, etc.)
* Current MM iface (in git) supports more capability detection than pervious versions (example: SIM support lacking on CDMA modems)
* (Stephane) Looked at how much effort it would be to add fast DHCP support to dhclient
* dhclient needed for advanced support of features (example: infiniband)
* Conmann DHCP support is much faster
* Would require pulling the changes into dhclient (might be a large patch)
* Security concerns should probably not block DHCP client choice (we can mitigate with apparmor)
* NM does caching on a per-network basis to try and help the situation
* concerned about creating DCHP network storms on large networks
* (Alberto) Looked at how much work it would be to port Chewie to ConnMan
* Security review
* No issues with code quality (on either)
* Connman is more engineered as a single user solution rather than multi-user
* Might cause issues with settings being shared
* Perhaps would need to be added after further review
* Might be more of an issue for enterprise issue with network logins that might be based on domain login
* NM has a fine grained PK access control
* Used in guest session and on login screen
* Removes some features for security reasons
* (Tony) Looked at how much work it would be to add dhclient support to ConnMan
* (Tony) Looked at how much work it would be to implement a RILd backend for oFono
* Built initial framework for CES/MWC demo
* Pulled pieces out of RILd for various features
* Doesn't preclue usage of oFono directly for modems that have full support
* Missing most advanced features like PINs on SIMs -- needs more work (not impossible)
* (Mathieu) To check whether we can improve memory consumption
* Dropping nm-applet (which seems to be the worst)
* There hasn't been much profiling done currently, could be improved.
* Is there a target? No specific target, just a observation more than a specific problem.
* NM is looking for, in the future, to have the features being dynamically loadable to reduce memory consumption
* (Mathieu) To look for ConnMan UIs to allow testing (just for evaluation)
* https:/
* oFono supports SIM Toolkit already (took 6 people 12 months), so not easy to replicate; that's high-level and hw independent, modem plugin just needs a transport plugin
== Security model ==
Security review of ConnMan
https:/
AppArmor profiles
Secure storage of WiFi passwords
Saucy network test development is covered by https:/
== Indicators ==
Want to drop nm-applet anyway, even if we keep Network Manager.
Chewie implementation started against Network Manager, but only covering WiFi at this point; misses e.g. wired ethernet and VPN connections.
Need to sync with design on complete design that suits the implementation requirements.
== wpasupplicant ==
Which version to use? Issues with iw, there’s an Android version
WiFi direct support is in Android, not clear how important it is for touch tough
= Discussion for client-
Chosen in discussion in previous UDS:
Network (Wifi, etc.) Stack:
NetworkManager
Telephony/Modem Stack:
oFono
Work Items
Work items:
faster dhclient research: TODO
[cyphermox] Investigate android NFC framework: TODO
[cyphermox] Investigate FOSS NFC frameworks: TODO
Work items for ubuntu-13.06:
[cyphermox] Flip 3G/WiFi preference priority in NetworkManager: DONE
[cyphermox] Apply NetworkManager patches from extras into distro: DONE
[cyphermox] Apply oFono patches from extras into distro: TODO
[cyphermox] debug and complete oFono support for NM: DONE
[cyphermox] implement blacklist/whitelist in oFono: TODO
[cyphermox] implement blacklist/whitelist in ModemManager: TODO
[cyphermox] test oFono with his set of modems: DONE
[stgraber] test oFono with his other set of modems: DONE
[cyphermox] Investigate driver-specific wpa_supplicant libraries on android: INPROGRESS
[cyphermox] Implement driver-specific wpa_supplicant library scheme: TODO
[cyphermox] Investigate Wi-Fi driver-specific firmware loading: INPROGRESS
[cyphermox] Implement Wi-Fi driver firmware loading scheme: TODO
[cyphermox] Implement phone-specific connection prioritization: DONE
[cyphermox] Re-based NM changes to Raring: DONE
[tedg] Indicator implementation: TODO
Investigate oFono's Bluez 5 requirement: DONE
Investigate oFono's BT Audio integration hybris vs. Native PulseAudio: INPROGRESS
Investigate oFono/BT HFP/Headset indicator/settings requirements: TODO
[cyphermox] Test bluetooth discovery / HSP and HFP on mako: DONE
[cyphermox] Implement bluetooth bringup on mako with qcomm_init: DONE
[cyphermox] Test bluetooth discovery / HSP and HFP on grouper: DONE
[cyphermox] Test bluetooth discovery / HSP and HFP on maguro: DONE
[cyphermox] Investigate MTP server with lool: INPROGRESS
Dependency tree
* Blueprints in grey have been implemented.