On Wednesday, December 17, 2014 4:10:37 PM UTC+5:30, Krishna Chaitanya 
wrote:
>
> Hi All, 
>
> We are working on p2p connection using android 4.4.2-r2 branch along with 
> 3rd party devices.
> We have seen disconnection during long run tests randomly and all can be 
> attributed to DHCP renewal timing out.
> The DHCP REQ is received by the server and DHCP ACK is being sent, but its 
> logs over the wifi connection due to some interference.
>
> In the current framework we have only one try at the DHCP renewal process 
> with a timeout of 30, which is not good for a wifi connection as single 
> packet loss is expected.
>
> As per RFC 2131 we should follow the below process for DHCP renewal.
>
> Per "Figure 5: State-transition diagram for DHCP clients" and in "4.4.5 
> Reacquisition and expiration"
> T1 expires: Start DHCP renew,  moves to RENEW state
>    if success
>            Resets T1, T2
>            moves to BOUND state from RENEW
>   if fails: (If no DHCPACK arrives before time T2)
>            If T2 expires, move to REBOUND state.
>
> Even the conditions for retrying DHCP request are put down under "SHOULD".
>
>
>>
>>
>>
>> * In both RENEWING and REBINDING states, if the client receives no 
>> response to its DHCPREQUEST message, the client SHOULD wait one-half of the 
>> remaining time until T2 (in RENEWING state) and one-half of the remaining 
>> lease time (in REBINDING state), down to a minimum of 60 seconds, before 
>> retransmitting the DHCPREQUEST message.*
>
>
> So we need to change the dhcp_do_request_renew to accomodate these changes, 
> so that DHCP is handled well befroe pronouncing the peer as DEAD especially 
> over wifi connections.
>
>
> I can submit a patch if we agree on these things.
>
>
> Regards,
>
> Chaitanya T K.
>
>
>

Adding Sachin. 

-- 
-- 
unsubscribe: android-kernel+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-kernel
--- 
You received this message because you are subscribed to the Google Groups 
"Android Linux Kernel Development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to android-kernel+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to