Re: Bearers in mixed CDMA+LTE modems

2012-02-25 Thread Dan Williams
On Thu, 2012-01-19 at 11:12 -0600, Dan Williams wrote:
 On Tue, 2012-01-17 at 11:26 +0100, Aleksander Morgado wrote:
   I believe we need a MMBearerType enum in the 0.6 API, so that we can
   tell in CreateBearer() whether we want a 3GPP or CDMA (well, or 
   POTS)
   bearer. This property would be redundant for 3GPP-only, CDMA-only or
   POTS-only modems, but would be mandatory if we have a mixed
   3GPP(LTE)+CDMA bearer. This value would also be shown as a property 
   in
   the Bearer interface, so that we can know the type of the bearer 
   behind
   a given DBus path. Another possibility to avoid the new enum would 
   be to
   assume that if apn is given when creating the bearer, we want a 
   3GPP
   bearer, while if no apn is given we really want a CDMA bearer. 
   But not
   sure I like to rely just on this apn-based logic. What do others 
   think?
  
   The problem with that approach is handoffs.  If you create a 3GPP/LTE
   bearer and then leave LTE coverage where the device hands off to 
   EVDO,
   now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
   interruption of packet data service and you don't even know anything
   happened except that the access technology changed from LTE to EVDO.
  
   Well, that is already some indication that we can use. If we had a 
   3GPP
   bearer connected, and suddenly the access technology changed to EV-DO,
   then we could internally mark the CDMA bearer as connected and mark 
   the
   3GPP one as disconnected. If done in that order, we wouldn't be 
   issuing
   any state change notification. This, assuming that for mixed 
   technology
   modems we have different technology-specific bearers. The only 
   drawback
   of having technology-specific bearers is that for the user not using 
   the
   Simple interface, it would mean needing to create two bearers with two
   CreateBearer() calls. But I don't think that that is a big deal; if 
   the
   user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
   connected, and then we detect the connection handed off to CDMA, we 
   can
   request the disconnection of the bearer and that's it. If the user
   didn't create a CDMA bearer, we would need to assume she didn't want a
   CDMA connection. If using the Simple interface, all that would be
   automatic, different bearers would be created automatically.
  
   there is no guarantee that the IP connection details stay the same.
  
   Before everybody goes crazy here you might wanna check if Verizon even
   provides the same IP address when falling back to CDMA from LTE.
  
   It's supposed to work that way according to the eHRPD docs.  I tried to
   drivetest this Friday but due to my own stupidity I forgot to take the
   modem out of LTE+HRPD mode and into AUTO+eHRPD so I couldn't capture the
   handoff and then I ran out of battery.  My bad, I'll try again.
  
  
   Needless to say that I would love to see the logs :-)
  
   But at least the UE is supposed to make this transparent according to
   3GPP2 X.S0057-A.  If the ME already has IP address information from the
   network, in the VSNCP Configure-Request packet it sets the Attach-Type
   configuration option to handoff and includes the existing IP
   information (10.1.4.2).
  
   Section 13 (Handoff from E-UTRAN to eHRPD) states:
  
   For optimized handoff, when the UE accesses eHRPD via the E-UTRAN radio
   and the S101 tunnel, it shall send a VSNCP Configure-Request message
   with Attach-Type set to handover to the HSGW for each of it's existing
   PDN connections in the EPS system that it intends to maintain in eHRPD.
  
   Section 13.1.1 step 7 says:
  
   The UI exchanges VSNCP messages with the HSGW for each PDN connection
   that it currently has attachments to within E-UTRAN and that it wants to
   maintain on eHRPD.  The UI sets the Attach-Type to handoff in the
   VSNCP Configure-Request message.  Also, the UI includes the IP
   address(es) it obtained via LTE in the VSNCP Configure-Request message.
  
   See also section 13.1.1 where it details what happens for optimized
   handoff; non-optimized handoff is supposed to be the same, more or less.
  
   So let's assume that the IP address is supposed to stay the same.  Next,
   the standard talks in various places about separate bearers for EPS and
   eHRPD, like 13.2.1: When the UE returns to eHRPD to resume the existing
   eHRPD session, the PDN connections are created per the context that the
   UI had on E-UTRAN.  Likewise, bearers are established to  match those
   that were available on E-UTRAN.
  
   Basically, it appears that bearers may change at various times, but the
   IP addresses may stay the same across bearer changes in some cases too.
   The problem is that we don't really want to expose that to clients much,
   because it's not really that useful to know that bearers are dancing
   around.  You really just want to know if one of your existing bearers
   *changed* attributes like IP addressing 

Re: Bearers in mixed CDMA+LTE modems

2012-01-19 Thread Dan Williams
On Tue, 2012-01-17 at 11:26 +0100, Aleksander Morgado wrote:
  I believe we need a MMBearerType enum in the 0.6 API, so that we can
  tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
  bearer. This property would be redundant for 3GPP-only, CDMA-only or
  POTS-only modems, but would be mandatory if we have a mixed
  3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
  the Bearer interface, so that we can know the type of the bearer 
  behind
  a given DBus path. Another possibility to avoid the new enum would be 
  to
  assume that if apn is given when creating the bearer, we want a 3GPP
  bearer, while if no apn is given we really want a CDMA bearer. But 
  not
  sure I like to rely just on this apn-based logic. What do others 
  think?
 
  The problem with that approach is handoffs.  If you create a 3GPP/LTE
  bearer and then leave LTE coverage where the device hands off to EVDO,
  now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
  interruption of packet data service and you don't even know anything
  happened except that the access technology changed from LTE to EVDO.
 
  Well, that is already some indication that we can use. If we had a 3GPP
  bearer connected, and suddenly the access technology changed to EV-DO,
  then we could internally mark the CDMA bearer as connected and mark the
  3GPP one as disconnected. If done in that order, we wouldn't be issuing
  any state change notification. This, assuming that for mixed technology
  modems we have different technology-specific bearers. The only drawback
  of having technology-specific bearers is that for the user not using the
  Simple interface, it would mean needing to create two bearers with two
  CreateBearer() calls. But I don't think that that is a big deal; if the
  user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
  connected, and then we detect the connection handed off to CDMA, we can
  request the disconnection of the bearer and that's it. If the user
  didn't create a CDMA bearer, we would need to assume she didn't want a
  CDMA connection. If using the Simple interface, all that would be
  automatic, different bearers would be created automatically.
 
  there is no guarantee that the IP connection details stay the same.
 
  Before everybody goes crazy here you might wanna check if Verizon even
  provides the same IP address when falling back to CDMA from LTE.
 
  It's supposed to work that way according to the eHRPD docs.  I tried to
  drivetest this Friday but due to my own stupidity I forgot to take the
  modem out of LTE+HRPD mode and into AUTO+eHRPD so I couldn't capture the
  handoff and then I ran out of battery.  My bad, I'll try again.
 
 
  Needless to say that I would love to see the logs :-)
 
  But at least the UE is supposed to make this transparent according to
  3GPP2 X.S0057-A.  If the ME already has IP address information from the
  network, in the VSNCP Configure-Request packet it sets the Attach-Type
  configuration option to handoff and includes the existing IP
  information (10.1.4.2).
 
  Section 13 (Handoff from E-UTRAN to eHRPD) states:
 
  For optimized handoff, when the UE accesses eHRPD via the E-UTRAN radio
  and the S101 tunnel, it shall send a VSNCP Configure-Request message
  with Attach-Type set to handover to the HSGW for each of it's existing
  PDN connections in the EPS system that it intends to maintain in eHRPD.
 
  Section 13.1.1 step 7 says:
 
  The UI exchanges VSNCP messages with the HSGW for each PDN connection
  that it currently has attachments to within E-UTRAN and that it wants to
  maintain on eHRPD.  The UI sets the Attach-Type to handoff in the
  VSNCP Configure-Request message.  Also, the UI includes the IP
  address(es) it obtained via LTE in the VSNCP Configure-Request message.
 
  See also section 13.1.1 where it details what happens for optimized
  handoff; non-optimized handoff is supposed to be the same, more or less.
 
  So let's assume that the IP address is supposed to stay the same.  Next,
  the standard talks in various places about separate bearers for EPS and
  eHRPD, like 13.2.1: When the UE returns to eHRPD to resume the existing
  eHRPD session, the PDN connections are created per the context that the
  UI had on E-UTRAN.  Likewise, bearers are established to  match those
  that were available on E-UTRAN.
 
  Basically, it appears that bearers may change at various times, but the
  IP addresses may stay the same across bearer changes in some cases too.
  The problem is that we don't really want to expose that to clients much,
  because it's not really that useful to know that bearers are dancing
  around.  You really just want to know if one of your existing bearers
  *changed* attributes like IP addressing or QoS/TFT, since the modem and
  network appear to do all they can to maintain characteristics between
  E-UTRAN and eHRPD.  I also still don't know how these changes are
  presented via AT, 

Re: Bearers in mixed CDMA+LTE modems

2012-01-17 Thread Aleksander Morgado

 I believe we need a MMBearerType enum in the 0.6 API, so that we can
 tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
 bearer. This property would be redundant for 3GPP-only, CDMA-only or
 POTS-only modems, but would be mandatory if we have a mixed
 3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
 the Bearer interface, so that we can know the type of the bearer behind
 a given DBus path. Another possibility to avoid the new enum would be to
 assume that if apn is given when creating the bearer, we want a 3GPP
 bearer, while if no apn is given we really want a CDMA bearer. But not
 sure I like to rely just on this apn-based logic. What do others think?

 The problem with that approach is handoffs.  If you create a 3GPP/LTE
 bearer and then leave LTE coverage where the device hands off to EVDO,
 now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
 interruption of packet data service and you don't even know anything
 happened except that the access technology changed from LTE to EVDO.

 Well, that is already some indication that we can use. If we had a 3GPP
 bearer connected, and suddenly the access technology changed to EV-DO,
 then we could internally mark the CDMA bearer as connected and mark the
 3GPP one as disconnected. If done in that order, we wouldn't be issuing
 any state change notification. This, assuming that for mixed technology
 modems we have different technology-specific bearers. The only drawback
 of having technology-specific bearers is that for the user not using the
 Simple interface, it would mean needing to create two bearers with two
 CreateBearer() calls. But I don't think that that is a big deal; if the
 user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
 connected, and then we detect the connection handed off to CDMA, we can
 request the disconnection of the bearer and that's it. If the user
 didn't create a CDMA bearer, we would need to assume she didn't want a
 CDMA connection. If using the Simple interface, all that would be
 automatic, different bearers would be created automatically.

 there is no guarantee that the IP connection details stay the same.

 Before everybody goes crazy here you might wanna check if Verizon even
 provides the same IP address when falling back to CDMA from LTE.
 
 It's supposed to work that way according to the eHRPD docs.  I tried to
 drivetest this Friday but due to my own stupidity I forgot to take the
 modem out of LTE+HRPD mode and into AUTO+eHRPD so I couldn't capture the
 handoff and then I ran out of battery.  My bad, I'll try again.
 

Needless to say that I would love to see the logs :-)

 But at least the UE is supposed to make this transparent according to
 3GPP2 X.S0057-A.  If the ME already has IP address information from the
 network, in the VSNCP Configure-Request packet it sets the Attach-Type
 configuration option to handoff and includes the existing IP
 information (10.1.4.2).
 
 Section 13 (Handoff from E-UTRAN to eHRPD) states:
 
 For optimized handoff, when the UE accesses eHRPD via the E-UTRAN radio
 and the S101 tunnel, it shall send a VSNCP Configure-Request message
 with Attach-Type set to handover to the HSGW for each of it's existing
 PDN connections in the EPS system that it intends to maintain in eHRPD.
 
 Section 13.1.1 step 7 says:
 
 The UI exchanges VSNCP messages with the HSGW for each PDN connection
 that it currently has attachments to within E-UTRAN and that it wants to
 maintain on eHRPD.  The UI sets the Attach-Type to handoff in the
 VSNCP Configure-Request message.  Also, the UI includes the IP
 address(es) it obtained via LTE in the VSNCP Configure-Request message.
 
 See also section 13.1.1 where it details what happens for optimized
 handoff; non-optimized handoff is supposed to be the same, more or less.
 
 So let's assume that the IP address is supposed to stay the same.  Next,
 the standard talks in various places about separate bearers for EPS and
 eHRPD, like 13.2.1: When the UE returns to eHRPD to resume the existing
 eHRPD session, the PDN connections are created per the context that the
 UI had on E-UTRAN.  Likewise, bearers are established to  match those
 that were available on E-UTRAN.
 
 Basically, it appears that bearers may change at various times, but the
 IP addresses may stay the same across bearer changes in some cases too.
 The problem is that we don't really want to expose that to clients much,
 because it's not really that useful to know that bearers are dancing
 around.  You really just want to know if one of your existing bearers
 *changed* attributes like IP addressing or QoS/TFT, since the modem and
 network appear to do all they can to maintain characteristics between
 E-UTRAN and eHRPD.  I also still don't know how these changes are
 presented via AT, WMC, or QMI, and how much of this the modem does
 internally and hides from these interfaces but I'm still trying to
 figure out.  Unfortunately the 

Re: Bearers in mixed CDMA+LTE modems

2012-01-17 Thread Aleksander Morgado

 I believe we need a MMBearerType enum in the 0.6 API, so that we can
 tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
 bearer. This property would be redundant for 3GPP-only, CDMA-only or
 POTS-only modems, but would be mandatory if we have a mixed
 3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
 the Bearer interface, so that we can know the type of the bearer behind
 a given DBus path. Another possibility to avoid the new enum would be to
 assume that if apn is given when creating the bearer, we want a 3GPP
 bearer, while if no apn is given we really want a CDMA bearer. But not
 sure I like to rely just on this apn-based logic. What do others think?

 The problem with that approach is handoffs.  If you create a 3GPP/LTE
 bearer and then leave LTE coverage where the device hands off to EVDO,
 now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
 interruption of packet data service and you don't even know anything
 happened except that the access technology changed from LTE to EVDO.

 Well, that is already some indication that we can use. If we had a 3GPP
 bearer connected, and suddenly the access technology changed to EV-DO,
 then we could internally mark the CDMA bearer as connected and mark the
 3GPP one as disconnected. If done in that order, we wouldn't be issuing
 any state change notification. This, assuming that for mixed technology
 modems we have different technology-specific bearers. The only drawback
 of having technology-specific bearers is that for the user not using the
 Simple interface, it would mean needing to create two bearers with two
 CreateBearer() calls. But I don't think that that is a big deal; if the
 user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
 connected, and then we detect the connection handed off to CDMA, we can
 request the disconnection of the bearer and that's it. If the user
 didn't create a CDMA bearer, we would need to assume she didn't want a
 CDMA connection. If using the Simple interface, all that would be
 automatic, different bearers would be created automatically.

 there is no guarantee that the IP connection details stay the same.

 There is no IP connection detail stored in the ModemManager bearers, so
 that wouldn't be a big deal for us I guess. Maybe I'm missing something.
 
 Except for Static mode :)
 

Indeed, yes. Which reminds me I need to allow subclasses of the bearers
to report the static IP addresses.

-- 
Aleksander
___
networkmanager-list mailing list
networkmanager-list@gnome.org
http://mail.gnome.org/mailman/listinfo/networkmanager-list


Re: Bearers in mixed CDMA+LTE modems

2012-01-17 Thread Marcel Holtmann
Hi Aleksander,

  I believe we need a MMBearerType enum in the 0.6 API, so that we can
  tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
  bearer. This property would be redundant for 3GPP-only, CDMA-only or
  POTS-only modems, but would be mandatory if we have a mixed
  3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
  the Bearer interface, so that we can know the type of the bearer behind
  a given DBus path. Another possibility to avoid the new enum would be to
  assume that if apn is given when creating the bearer, we want a 3GPP
  bearer, while if no apn is given we really want a CDMA bearer. But not
  sure I like to rely just on this apn-based logic. What do others 
  think?
 
  The problem with that approach is handoffs.  If you create a 3GPP/LTE
  bearer and then leave LTE coverage where the device hands off to EVDO,
  now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
  interruption of packet data service and you don't even know anything
  happened except that the access technology changed from LTE to EVDO.
 
  Well, that is already some indication that we can use. If we had a 3GPP
  bearer connected, and suddenly the access technology changed to EV-DO,
  then we could internally mark the CDMA bearer as connected and mark the
  3GPP one as disconnected. If done in that order, we wouldn't be issuing
  any state change notification. This, assuming that for mixed technology
  modems we have different technology-specific bearers. The only drawback
  of having technology-specific bearers is that for the user not using the
  Simple interface, it would mean needing to create two bearers with two
  CreateBearer() calls. But I don't think that that is a big deal; if the
  user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
  connected, and then we detect the connection handed off to CDMA, we can
  request the disconnection of the bearer and that's it. If the user
  didn't create a CDMA bearer, we would need to assume she didn't want a
  CDMA connection. If using the Simple interface, all that would be
  automatic, different bearers would be created automatically.
 
  there is no guarantee that the IP connection details stay the same.
 
  Before everybody goes crazy here you might wanna check if Verizon even
  provides the same IP address when falling back to CDMA from LTE.
  
  It's supposed to work that way according to the eHRPD docs.  I tried to
  drivetest this Friday but due to my own stupidity I forgot to take the
  modem out of LTE+HRPD mode and into AUTO+eHRPD so I couldn't capture the
  handoff and then I ran out of battery.  My bad, I'll try again.
  
 
 Needless to say that I would love to see the logs :-)
 
  But at least the UE is supposed to make this transparent according to
  3GPP2 X.S0057-A.  If the ME already has IP address information from the
  network, in the VSNCP Configure-Request packet it sets the Attach-Type
  configuration option to handoff and includes the existing IP
  information (10.1.4.2).
  
  Section 13 (Handoff from E-UTRAN to eHRPD) states:
  
  For optimized handoff, when the UE accesses eHRPD via the E-UTRAN radio
  and the S101 tunnel, it shall send a VSNCP Configure-Request message
  with Attach-Type set to handover to the HSGW for each of it's existing
  PDN connections in the EPS system that it intends to maintain in eHRPD.
  
  Section 13.1.1 step 7 says:
  
  The UI exchanges VSNCP messages with the HSGW for each PDN connection
  that it currently has attachments to within E-UTRAN and that it wants to
  maintain on eHRPD.  The UI sets the Attach-Type to handoff in the
  VSNCP Configure-Request message.  Also, the UI includes the IP
  address(es) it obtained via LTE in the VSNCP Configure-Request message.
  
  See also section 13.1.1 where it details what happens for optimized
  handoff; non-optimized handoff is supposed to be the same, more or less.
  
  So let's assume that the IP address is supposed to stay the same.  Next,
  the standard talks in various places about separate bearers for EPS and
  eHRPD, like 13.2.1: When the UE returns to eHRPD to resume the existing
  eHRPD session, the PDN connections are created per the context that the
  UI had on E-UTRAN.  Likewise, bearers are established to  match those
  that were available on E-UTRAN.
  
  Basically, it appears that bearers may change at various times, but the
  IP addresses may stay the same across bearer changes in some cases too.
  The problem is that we don't really want to expose that to clients much,
  because it's not really that useful to know that bearers are dancing
  around.  You really just want to know if one of your existing bearers
  *changed* attributes like IP addressing or QoS/TFT, since the modem and
  network appear to do all they can to maintain characteristics between
  E-UTRAN and eHRPD.  I also still don't know how these changes are
  presented via AT, WMC, or QMI, and how much of this the modem 

Re: Bearers in mixed CDMA+LTE modems

2012-01-17 Thread Aleksander Morgado

 I believe we need a MMBearerType enum in the 0.6 API, so that we can
 tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
 bearer. This property would be redundant for 3GPP-only, CDMA-only or
 POTS-only modems, but would be mandatory if we have a mixed
 3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
 the Bearer interface, so that we can know the type of the bearer behind
 a given DBus path. Another possibility to avoid the new enum would be to
 assume that if apn is given when creating the bearer, we want a 3GPP
 bearer, while if no apn is given we really want a CDMA bearer. But not
 sure I like to rely just on this apn-based logic. What do others 
 think?

 The problem with that approach is handoffs.  If you create a 3GPP/LTE
 bearer and then leave LTE coverage where the device hands off to EVDO,
 now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
 interruption of packet data service and you don't even know anything
 happened except that the access technology changed from LTE to EVDO.

 Well, that is already some indication that we can use. If we had a 3GPP
 bearer connected, and suddenly the access technology changed to EV-DO,
 then we could internally mark the CDMA bearer as connected and mark the
 3GPP one as disconnected. If done in that order, we wouldn't be issuing
 any state change notification. This, assuming that for mixed technology
 modems we have different technology-specific bearers. The only drawback
 of having technology-specific bearers is that for the user not using the
 Simple interface, it would mean needing to create two bearers with two
 CreateBearer() calls. But I don't think that that is a big deal; if the
 user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
 connected, and then we detect the connection handed off to CDMA, we can
 request the disconnection of the bearer and that's it. If the user
 didn't create a CDMA bearer, we would need to assume she didn't want a
 CDMA connection. If using the Simple interface, all that would be
 automatic, different bearers would be created automatically.

 there is no guarantee that the IP connection details stay the same.

 Before everybody goes crazy here you might wanna check if Verizon even
 provides the same IP address when falling back to CDMA from LTE.

 It's supposed to work that way according to the eHRPD docs.  I tried to
 drivetest this Friday but due to my own stupidity I forgot to take the
 modem out of LTE+HRPD mode and into AUTO+eHRPD so I couldn't capture the
 handoff and then I ran out of battery.  My bad, I'll try again.


 Needless to say that I would love to see the logs :-)

 But at least the UE is supposed to make this transparent according to
 3GPP2 X.S0057-A.  If the ME already has IP address information from the
 network, in the VSNCP Configure-Request packet it sets the Attach-Type
 configuration option to handoff and includes the existing IP
 information (10.1.4.2).

 Section 13 (Handoff from E-UTRAN to eHRPD) states:

 For optimized handoff, when the UE accesses eHRPD via the E-UTRAN radio
 and the S101 tunnel, it shall send a VSNCP Configure-Request message
 with Attach-Type set to handover to the HSGW for each of it's existing
 PDN connections in the EPS system that it intends to maintain in eHRPD.

 Section 13.1.1 step 7 says:

 The UI exchanges VSNCP messages with the HSGW for each PDN connection
 that it currently has attachments to within E-UTRAN and that it wants to
 maintain on eHRPD.  The UI sets the Attach-Type to handoff in the
 VSNCP Configure-Request message.  Also, the UI includes the IP
 address(es) it obtained via LTE in the VSNCP Configure-Request message.

 See also section 13.1.1 where it details what happens for optimized
 handoff; non-optimized handoff is supposed to be the same, more or less.

 So let's assume that the IP address is supposed to stay the same.  Next,
 the standard talks in various places about separate bearers for EPS and
 eHRPD, like 13.2.1: When the UE returns to eHRPD to resume the existing
 eHRPD session, the PDN connections are created per the context that the
 UI had on E-UTRAN.  Likewise, bearers are established to  match those
 that were available on E-UTRAN.

 Basically, it appears that bearers may change at various times, but the
 IP addresses may stay the same across bearer changes in some cases too.
 The problem is that we don't really want to expose that to clients much,
 because it's not really that useful to know that bearers are dancing
 around.  You really just want to know if one of your existing bearers
 *changed* attributes like IP addressing or QoS/TFT, since the modem and
 network appear to do all they can to maintain characteristics between
 E-UTRAN and eHRPD.  I also still don't know how these changes are
 presented via AT, WMC, or QMI, and how much of this the modem does
 internally and hides from these interfaces but I'm still trying to
 figure out.  Unfortunately the end of 

Re: Bearers in mixed CDMA+LTE modems

2012-01-16 Thread Dan Williams
On Fri, 2012-01-13 at 11:58 +0100, Marcel Holtmann wrote:
 Hi Aleksander,
 
   I believe we need a MMBearerType enum in the 0.6 API, so that we can
   tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
   bearer. This property would be redundant for 3GPP-only, CDMA-only or
   POTS-only modems, but would be mandatory if we have a mixed
   3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
   the Bearer interface, so that we can know the type of the bearer behind
   a given DBus path. Another possibility to avoid the new enum would be to
   assume that if apn is given when creating the bearer, we want a 3GPP
   bearer, while if no apn is given we really want a CDMA bearer. But not
   sure I like to rely just on this apn-based logic. What do others think?
   
   The problem with that approach is handoffs.  If you create a 3GPP/LTE
   bearer and then leave LTE coverage where the device hands off to EVDO,
   now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
   interruption of packet data service and you don't even know anything
   happened except that the access technology changed from LTE to EVDO.
  
  Well, that is already some indication that we can use. If we had a 3GPP
  bearer connected, and suddenly the access technology changed to EV-DO,
  then we could internally mark the CDMA bearer as connected and mark the
  3GPP one as disconnected. If done in that order, we wouldn't be issuing
  any state change notification. This, assuming that for mixed technology
  modems we have different technology-specific bearers. The only drawback
  of having technology-specific bearers is that for the user not using the
  Simple interface, it would mean needing to create two bearers with two
  CreateBearer() calls. But I don't think that that is a big deal; if the
  user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
  connected, and then we detect the connection handed off to CDMA, we can
  request the disconnection of the bearer and that's it. If the user
  didn't create a CDMA bearer, we would need to assume she didn't want a
  CDMA connection. If using the Simple interface, all that would be
  automatic, different bearers would be created automatically.
 
 there is no guarantee that the IP connection details stay the same.
 
 Before everybody goes crazy here you might wanna check if Verizon even
 provides the same IP address when falling back to CDMA from LTE.

It's supposed to work that way according to the eHRPD docs.  I tried to
drivetest this Friday but due to my own stupidity I forgot to take the
modem out of LTE+HRPD mode and into AUTO+eHRPD so I couldn't capture the
handoff and then I ran out of battery.  My bad, I'll try again.

But at least the UE is supposed to make this transparent according to
3GPP2 X.S0057-A.  If the ME already has IP address information from the
network, in the VSNCP Configure-Request packet it sets the Attach-Type
configuration option to handoff and includes the existing IP
information (10.1.4.2).

Section 13 (Handoff from E-UTRAN to eHRPD) states:

For optimized handoff, when the UE accesses eHRPD via the E-UTRAN radio
and the S101 tunnel, it shall send a VSNCP Configure-Request message
with Attach-Type set to handover to the HSGW for each of it's existing
PDN connections in the EPS system that it intends to maintain in eHRPD.

Section 13.1.1 step 7 says:

The UI exchanges VSNCP messages with the HSGW for each PDN connection
that it currently has attachments to within E-UTRAN and that it wants to
maintain on eHRPD.  The UI sets the Attach-Type to handoff in the
VSNCP Configure-Request message.  Also, the UI includes the IP
address(es) it obtained via LTE in the VSNCP Configure-Request message.

See also section 13.1.1 where it details what happens for optimized
handoff; non-optimized handoff is supposed to be the same, more or less.

So let's assume that the IP address is supposed to stay the same.  Next,
the standard talks in various places about separate bearers for EPS and
eHRPD, like 13.2.1: When the UE returns to eHRPD to resume the existing
eHRPD session, the PDN connections are created per the context that the
UI had on E-UTRAN.  Likewise, bearers are established to  match those
that were available on E-UTRAN.

Basically, it appears that bearers may change at various times, but the
IP addresses may stay the same across bearer changes in some cases too.
The problem is that we don't really want to expose that to clients much,
because it's not really that useful to know that bearers are dancing
around.  You really just want to know if one of your existing bearers
*changed* attributes like IP addressing or QoS/TFT, since the modem and
network appear to do all they can to maintain characteristics between
E-UTRAN and eHRPD.  I also still don't know how these changes are
presented via AT, WMC, or QMI, and how much of this the modem does
internally and hides from these interfaces but I'm still trying to
figure 

Re: Bearers in mixed CDMA+LTE modems

2012-01-16 Thread Dan Williams
On Fri, 2012-01-13 at 12:34 +0100, Aleksander Morgado wrote:
 Hey Marcel,
 
  
  I believe we need a MMBearerType enum in the 0.6 API, so that we can
  tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
  bearer. This property would be redundant for 3GPP-only, CDMA-only or
  POTS-only modems, but would be mandatory if we have a mixed
  3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
  the Bearer interface, so that we can know the type of the bearer behind
  a given DBus path. Another possibility to avoid the new enum would be to
  assume that if apn is given when creating the bearer, we want a 3GPP
  bearer, while if no apn is given we really want a CDMA bearer. But not
  sure I like to rely just on this apn-based logic. What do others think?
 
  The problem with that approach is handoffs.  If you create a 3GPP/LTE
  bearer and then leave LTE coverage where the device hands off to EVDO,
  now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
  interruption of packet data service and you don't even know anything
  happened except that the access technology changed from LTE to EVDO.
 
  Well, that is already some indication that we can use. If we had a 3GPP
  bearer connected, and suddenly the access technology changed to EV-DO,
  then we could internally mark the CDMA bearer as connected and mark the
  3GPP one as disconnected. If done in that order, we wouldn't be issuing
  any state change notification. This, assuming that for mixed technology
  modems we have different technology-specific bearers. The only drawback
  of having technology-specific bearers is that for the user not using the
  Simple interface, it would mean needing to create two bearers with two
  CreateBearer() calls. But I don't think that that is a big deal; if the
  user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
  connected, and then we detect the connection handed off to CDMA, we can
  request the disconnection of the bearer and that's it. If the user
  didn't create a CDMA bearer, we would need to assume she didn't want a
  CDMA connection. If using the Simple interface, all that would be
  automatic, different bearers would be created automatically.
  
  there is no guarantee that the IP connection details stay the same.
 
 There is no IP connection detail stored in the ModemManager bearers, so
 that wouldn't be a big deal for us I guess. Maybe I'm missing something.

Except for Static mode :)

  
  Before everybody goes crazy here you might wanna check if Verizon even
  provides the same IP address when falling back to CDMA from LTE.
  
 
 They probably don't give the same IP address, so if the hand off is
 really transparent (i.e. not getting disconnected and then connected
 again), I assume we rely on the modem itself to detect that and handle
 the IP switch at PPP session level. I cannot really do any such test, so
 cannot tell :-/

Again, I'm still trying to find out, but I think there are cases where
we may get the same IPv4 and IPv6 address.

Dan


___
networkmanager-list mailing list
networkmanager-list@gnome.org
http://mail.gnome.org/mailman/listinfo/networkmanager-list


Re: Bearers in mixed CDMA+LTE modems

2012-01-16 Thread Dan Williams
On Mon, 2012-01-16 at 16:19 -0600, Dan Williams wrote:
 On Fri, 2012-01-13 at 11:58 +0100, Marcel Holtmann wrote:
  Hi Aleksander,
  
I believe we need a MMBearerType enum in the 0.6 API, so that we can
tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
bearer. This property would be redundant for 3GPP-only, CDMA-only or
POTS-only modems, but would be mandatory if we have a mixed
3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
the Bearer interface, so that we can know the type of the bearer behind
a given DBus path. Another possibility to avoid the new enum would be 
to
assume that if apn is given when creating the bearer, we want a 3GPP
bearer, while if no apn is given we really want a CDMA bearer. But 
not
sure I like to rely just on this apn-based logic. What do others 
think?

The problem with that approach is handoffs.  If you create a 3GPP/LTE
bearer and then leave LTE coverage where the device hands off to EVDO,
now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
interruption of packet data service and you don't even know anything
happened except that the access technology changed from LTE to EVDO.
   
   Well, that is already some indication that we can use. If we had a 3GPP
   bearer connected, and suddenly the access technology changed to EV-DO,
   then we could internally mark the CDMA bearer as connected and mark the
   3GPP one as disconnected. If done in that order, we wouldn't be issuing
   any state change notification. This, assuming that for mixed technology
   modems we have different technology-specific bearers. The only drawback
   of having technology-specific bearers is that for the user not using the
   Simple interface, it would mean needing to create two bearers with two
   CreateBearer() calls. But I don't think that that is a big deal; if the
   user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
   connected, and then we detect the connection handed off to CDMA, we can
   request the disconnection of the bearer and that's it. If the user
   didn't create a CDMA bearer, we would need to assume she didn't want a
   CDMA connection. If using the Simple interface, all that would be
   automatic, different bearers would be created automatically.
  
  there is no guarantee that the IP connection details stay the same.
  
  Before everybody goes crazy here you might wanna check if Verizon even
  provides the same IP address when falling back to CDMA from LTE.
 
 It's supposed to work that way according to the eHRPD docs.  I tried to
 drivetest this Friday but due to my own stupidity I forgot to take the
 modem out of LTE+HRPD mode and into AUTO+eHRPD so I couldn't capture the
 handoff and then I ran out of battery.  My bad, I'll try again.
 
 But at least the UE is supposed to make this transparent according to
 3GPP2 X.S0057-A.  If the ME already has IP address information from the
 network, in the VSNCP Configure-Request packet it sets the Attach-Type
 configuration option to handoff and includes the existing IP
 information (10.1.4.2).
 
 Section 13 (Handoff from E-UTRAN to eHRPD) states:
 
 For optimized handoff, when the UE accesses eHRPD via the E-UTRAN radio
 and the S101 tunnel, it shall send a VSNCP Configure-Request message
 with Attach-Type set to handover to the HSGW for each of it's existing
 PDN connections in the EPS system that it intends to maintain in eHRPD.
 
 Section 13.1.1 step 7 says:
 
 The UI exchanges VSNCP messages with the HSGW for each PDN connection
 that it currently has attachments to within E-UTRAN and that it wants to
 maintain on eHRPD.  The UI sets the Attach-Type to handoff in the
 VSNCP Configure-Request message.  Also, the UI includes the IP
 address(es) it obtained via LTE in the VSNCP Configure-Request message.

^^ and here by UI I mean UE, yay for me

 See also section 13.1.1 where it details what happens for optimized
 handoff; non-optimized handoff is supposed to be the same, more or less.
 
 So let's assume that the IP address is supposed to stay the same.  Next,
 the standard talks in various places about separate bearers for EPS and
 eHRPD, like 13.2.1: When the UE returns to eHRPD to resume the existing
 eHRPD session, the PDN connections are created per the context that the
 UI had on E-UTRAN.  Likewise, bearers are established to  match those
 that were available on E-UTRAN.
 
 Basically, it appears that bearers may change at various times, but the
 IP addresses may stay the same across bearer changes in some cases too.
 The problem is that we don't really want to expose that to clients much,
 because it's not really that useful to know that bearers are dancing
 around.  You really just want to know if one of your existing bearers
 *changed* attributes like IP addressing or QoS/TFT, since the modem and
 network appear to do all they can to maintain characteristics between
 E-UTRAN and 

Re: Bearers in mixed CDMA+LTE modems

2012-01-13 Thread Aleksander Morgado

 I believe we need a MMBearerType enum in the 0.6 API, so that we can
 tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
 bearer. This property would be redundant for 3GPP-only, CDMA-only or
 POTS-only modems, but would be mandatory if we have a mixed
 3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
 the Bearer interface, so that we can know the type of the bearer behind
 a given DBus path. Another possibility to avoid the new enum would be to
 assume that if apn is given when creating the bearer, we want a 3GPP
 bearer, while if no apn is given we really want a CDMA bearer. But not
 sure I like to rely just on this apn-based logic. What do others think?
 
 The problem with that approach is handoffs.  If you create a 3GPP/LTE
 bearer and then leave LTE coverage where the device hands off to EVDO,
 now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
 interruption of packet data service and you don't even know anything
 happened except that the access technology changed from LTE to EVDO.

Well, that is already some indication that we can use. If we had a 3GPP
bearer connected, and suddenly the access technology changed to EV-DO,
then we could internally mark the CDMA bearer as connected and mark the
3GPP one as disconnected. If done in that order, we wouldn't be issuing
any state change notification. This, assuming that for mixed technology
modems we have different technology-specific bearers. The only drawback
of having technology-specific bearers is that for the user not using the
Simple interface, it would mean needing to create two bearers with two
CreateBearer() calls. But I don't think that that is a big deal; if the
user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
connected, and then we detect the connection handed off to CDMA, we can
request the disconnection of the bearer and that's it. If the user
didn't create a CDMA bearer, we would need to assume she didn't want a
CDMA connection. If using the Simple interface, all that would be
automatic, different bearers would be created automatically.

 
 So I think (as you suggest below) that by default MM should make a best
 guess based on the current registration of the device and the mode
 preference.  If you're registered on the LTE network and your mode pref
 is 4G_PREFERRED then of course we'd start an EPS bearer.  If your mode
 pref is 3G_4G and you're registered with CDMA then we'd try to start a
 CDMA bearer.  There are some carrier-specific issues with this however;
 an ATD#777 CDMA PPP bearer cannot hand off to LTE on Verizon devices,
 but handoff is supposed to be transparent when you use QMI instead of
 PPP.

In that case, if we suddenly found that we can connect in the LTE
network, we can always disconnect the CDMA bearer ourselves and launch
the LTE connection as a single operation (i.e. merging all the state
changes connected-disconnecting-registered-connecting-connected
and not notifying any of them). Not really transparent for ModemManager,
but quite transparent for the user.

 
 What you're asking about is what bearer to create if the device is
 registered with (or can register with) two 3G networks that use
 different access technology.  For example, in Canada, Bell Mobility and
 Telus run both EVDO and HSPA networks.  If you're a user, do you care
 which one you connect to with your Gobi card?  Maybe you do.

If you do care which network to use, then using technology-specific
bearers is the way to go. If you only want to use the HSPA network, the
user would create only a 3GPP bearer, and connect it. If using the
simple interface, where we automatically create the bearers, we could
receive a 'bearer-type' entry which would tell us that we only want to
create a single bearer, instead of automatically deciding how many to
create.

 
 So the bearer type property should certainly be a *suggestion*, not
 mandatory.  At least for now I don't think most people will use it, but
 it doesn't hurt anything to add it.  But the next question is if you
 request a 3GPP bearer and the device later hands off to CDMA, do you
 terminate the connection?  I would say no, since the device is making
 the decision to hand off based on your subscriber data (ie, SIM and/or
 ESN/MEID) and that's supposed to be automatic.
 

Well, why not? If your modem supports 3GPP and CDMA, and you just
created a 3GPP bearer, if it automatically hands off to CDMA I would
really disconnect it. That is anyway a very specific use case; in the
general case, when using the Simple interface, we would have created
both a 3GPP bearer and a CDMA bearer, and we would do the hand off
internally without going away from the connected state.

 On a side note, during the Simple interface's Connect(), for the case of
 mixed 3GPP+CDMA modems, we would create both a 3GPP and a CDMA bearer,
 and then connect one or the other based on allowed/preferred modes
 preferences and based on our registration status in each 

Re: Bearers in mixed CDMA+LTE modems

2012-01-13 Thread Marcel Holtmann
Hi Aleksander,

  I believe we need a MMBearerType enum in the 0.6 API, so that we can
  tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
  bearer. This property would be redundant for 3GPP-only, CDMA-only or
  POTS-only modems, but would be mandatory if we have a mixed
  3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
  the Bearer interface, so that we can know the type of the bearer behind
  a given DBus path. Another possibility to avoid the new enum would be to
  assume that if apn is given when creating the bearer, we want a 3GPP
  bearer, while if no apn is given we really want a CDMA bearer. But not
  sure I like to rely just on this apn-based logic. What do others think?
  
  The problem with that approach is handoffs.  If you create a 3GPP/LTE
  bearer and then leave LTE coverage where the device hands off to EVDO,
  now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
  interruption of packet data service and you don't even know anything
  happened except that the access technology changed from LTE to EVDO.
 
 Well, that is already some indication that we can use. If we had a 3GPP
 bearer connected, and suddenly the access technology changed to EV-DO,
 then we could internally mark the CDMA bearer as connected and mark the
 3GPP one as disconnected. If done in that order, we wouldn't be issuing
 any state change notification. This, assuming that for mixed technology
 modems we have different technology-specific bearers. The only drawback
 of having technology-specific bearers is that for the user not using the
 Simple interface, it would mean needing to create two bearers with two
 CreateBearer() calls. But I don't think that that is a big deal; if the
 user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
 connected, and then we detect the connection handed off to CDMA, we can
 request the disconnection of the bearer and that's it. If the user
 didn't create a CDMA bearer, we would need to assume she didn't want a
 CDMA connection. If using the Simple interface, all that would be
 automatic, different bearers would be created automatically.

there is no guarantee that the IP connection details stay the same.

Before everybody goes crazy here you might wanna check if Verizon even
provides the same IP address when falling back to CDMA from LTE.

Regards

Marcel


___
networkmanager-list mailing list
networkmanager-list@gnome.org
http://mail.gnome.org/mailman/listinfo/networkmanager-list


Re: Bearers in mixed CDMA+LTE modems

2012-01-13 Thread Aleksander Morgado
Hey Marcel,

 
 I believe we need a MMBearerType enum in the 0.6 API, so that we can
 tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
 bearer. This property would be redundant for 3GPP-only, CDMA-only or
 POTS-only modems, but would be mandatory if we have a mixed
 3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
 the Bearer interface, so that we can know the type of the bearer behind
 a given DBus path. Another possibility to avoid the new enum would be to
 assume that if apn is given when creating the bearer, we want a 3GPP
 bearer, while if no apn is given we really want a CDMA bearer. But not
 sure I like to rely just on this apn-based logic. What do others think?

 The problem with that approach is handoffs.  If you create a 3GPP/LTE
 bearer and then leave LTE coverage where the device hands off to EVDO,
 now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
 interruption of packet data service and you don't even know anything
 happened except that the access technology changed from LTE to EVDO.

 Well, that is already some indication that we can use. If we had a 3GPP
 bearer connected, and suddenly the access technology changed to EV-DO,
 then we could internally mark the CDMA bearer as connected and mark the
 3GPP one as disconnected. If done in that order, we wouldn't be issuing
 any state change notification. This, assuming that for mixed technology
 modems we have different technology-specific bearers. The only drawback
 of having technology-specific bearers is that for the user not using the
 Simple interface, it would mean needing to create two bearers with two
 CreateBearer() calls. But I don't think that that is a big deal; if the
 user of a mixed CDMA+LTE modem just creates a 3GPP bearer and gets it
 connected, and then we detect the connection handed off to CDMA, we can
 request the disconnection of the bearer and that's it. If the user
 didn't create a CDMA bearer, we would need to assume she didn't want a
 CDMA connection. If using the Simple interface, all that would be
 automatic, different bearers would be created automatically.
 
 there is no guarantee that the IP connection details stay the same.

There is no IP connection detail stored in the ModemManager bearers, so
that wouldn't be a big deal for us I guess. Maybe I'm missing something.

 
 Before everybody goes crazy here you might wanna check if Verizon even
 provides the same IP address when falling back to CDMA from LTE.
 

They probably don't give the same IP address, so if the hand off is
really transparent (i.e. not getting disconnected and then connected
again), I assume we rely on the modem itself to detect that and handle
the IP switch at PPP session level. I cannot really do any such test, so
cannot tell :-/

-- 
Aleksander
___
networkmanager-list mailing list
networkmanager-list@gnome.org
http://mail.gnome.org/mailman/listinfo/networkmanager-list


Re: Bearers in mixed CDMA+LTE modems

2012-01-12 Thread Dan Williams
On Wed, 2012-01-11 at 17:29 +0100, Aleksander Morgado wrote:
 Hey,
 
 I believe we need a MMBearerType enum in the 0.6 API, so that we can
 tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
 bearer. This property would be redundant for 3GPP-only, CDMA-only or
 POTS-only modems, but would be mandatory if we have a mixed
 3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
 the Bearer interface, so that we can know the type of the bearer behind
 a given DBus path. Another possibility to avoid the new enum would be to
 assume that if apn is given when creating the bearer, we want a 3GPP
 bearer, while if no apn is given we really want a CDMA bearer. But not
 sure I like to rely just on this apn-based logic. What do others think?

The problem with that approach is handoffs.  If you create a 3GPP/LTE
bearer and then leave LTE coverage where the device hands off to EVDO,
now your 3GPP bearer is a CDMA bearer.  In this scenario there's no
interruption of packet data service and you don't even know anything
happened except that the access technology changed from LTE to EVDO.

So I think (as you suggest below) that by default MM should make a best
guess based on the current registration of the device and the mode
preference.  If you're registered on the LTE network and your mode pref
is 4G_PREFERRED then of course we'd start an EPS bearer.  If your mode
pref is 3G_4G and you're registered with CDMA then we'd try to start a
CDMA bearer.  There are some carrier-specific issues with this however;
an ATD#777 CDMA PPP bearer cannot hand off to LTE on Verizon devices,
but handoff is supposed to be transparent when you use QMI instead of
PPP.

What you're asking about is what bearer to create if the device is
registered with (or can register with) two 3G networks that use
different access technology.  For example, in Canada, Bell Mobility and
Telus run both EVDO and HSPA networks.  If you're a user, do you care
which one you connect to with your Gobi card?  Maybe you do.

So the bearer type property should certainly be a *suggestion*, not
mandatory.  At least for now I don't think most people will use it, but
it doesn't hurt anything to add it.  But the next question is if you
request a 3GPP bearer and the device later hands off to CDMA, do you
terminate the connection?  I would say no, since the device is making
the decision to hand off based on your subscriber data (ie, SIM and/or
ESN/MEID) and that's supposed to be automatic.

 On a side note, during the Simple interface's Connect(), for the case of
 mixed 3GPP+CDMA modems, we would create both a 3GPP and a CDMA bearer,
 and then connect one or the other based on allowed/preferred modes
 preferences and based on our registration status in each network. Seems
 like a good start for the generic case.

Yeah, though handoffs complicate that, since the bearer might not stay a
3GPP bearer or a CDMA bearer.  This probably complicates the code a
bunch and I didn't think of this problem until you asked the question.
So maybe bearer objects need to be soft classes too, like modems, that
can change some details of their implementation on-the-fly?

The only post-initialization bearer stuff that might be 3GPP specific is
the secondary PDP/EPS context and the QoS stuff, but here maybe we can
just return errors if the bearer doesn't support it.  Besides the
initial hint, I don't know if we want to expose whether the bearer is
CDMA or 3GPP to clients at all.  The access technology of the modem
indicates the network type, so the bearer probably doesn't need to do it
too.

Dan

___
networkmanager-list mailing list
networkmanager-list@gnome.org
http://mail.gnome.org/mailman/listinfo/networkmanager-list


Bearers in mixed CDMA+LTE modems

2012-01-11 Thread Aleksander Morgado
Hey,

I believe we need a MMBearerType enum in the 0.6 API, so that we can
tell in CreateBearer() whether we want a 3GPP or CDMA (well, or POTS)
bearer. This property would be redundant for 3GPP-only, CDMA-only or
POTS-only modems, but would be mandatory if we have a mixed
3GPP(LTE)+CDMA bearer. This value would also be shown as a property in
the Bearer interface, so that we can know the type of the bearer behind
a given DBus path. Another possibility to avoid the new enum would be to
assume that if apn is given when creating the bearer, we want a 3GPP
bearer, while if no apn is given we really want a CDMA bearer. But not
sure I like to rely just on this apn-based logic. What do others think?

On a side note, during the Simple interface's Connect(), for the case of
mixed 3GPP+CDMA modems, we would create both a 3GPP and a CDMA bearer,
and then connect one or the other based on allowed/preferred modes
preferences and based on our registration status in each network. Seems
like a good start for the generic case.

Cheers,

-- 
Aleksander
___
networkmanager-list mailing list
networkmanager-list@gnome.org
http://mail.gnome.org/mailman/listinfo/networkmanager-list