blob: be423ee2de06e8860459865eae9725bfa9af88df [file] [log] [blame]
DialUp Networking diagram
=========================
This diagram explains how oFono and ConnMan are interacting to handle a data
call from a DUN client.
1) GAtServer receive ATD*99#.
2) The GAtPPP server is setup.
3) oFono through GAtPPP notify ConnMan that he needs a TUN/TAP interface.
4) oFono is notified that TUN/TAP interface is created and can start exchanging
PPP packets with DUN client. Those PPP packets are converted into IP stream
and transmitted to/received from TUN/TAP interface.
5) ConnMan is selecting which interface to send IP packets (WiFi, 3G, ...).
*----------------* *----------------*
| | ATD*99# | |
| DUN Client |----------->| GAtServer |
| |<---* | |
*----------------* | *----------------*
| |
PPP | | setup_ppp()
Packets | |
| |
| V Need
| *----------------* /dev/net/tun *----------------*
*--->| | interface | |
| GAtPPP |<-------------->| ConnMan |
*--->| | interface | |
| *----------------* created *----------------*
IP | |
Stream | |Create
| *------------------------* |/dev/net/tun
| | | |interface
*--->| TUN/TAP interface |<-----------*
| |
*------------------------*
IP | Stream
routed with | ConnMan rules
*---------------------*--------------------*
| | |
| | |
V V V
*-------------* *-------------* *-------------*
| | | | | |
| WiFi | | Modem | | EthX |
| | | | | |
*-------------* *-------------* *-------------*