2010-10-12 7 views
1

J'ai un bug très gênant qui apparaît.Le socket UDP commence à ne pas recevoir

Nous avons laissé notre application iPhone tourner pendant la nuit.

Toutes les 2 secondes, il envoie un ping de diffusion sur le réseau via le socket ouvert pour informer que le périphérique est en vie. Maintenant, l'autre application détecte ce ping et tente de renvoyer des messages. Le problème est que malgré le ping continuant à sortir, aucun paquet n'est reçu. Cela ne semble se produire qu'après plusieurs heures (ce qui est gênant, c'est que nous n'avons réussi à l'obtenir que du jour au lendemain). Il semble alors laisser l'iphone dans un état très confus où même après avoir redémarré l'application il est toujours incapable de recevoir les paquets. Finalement, après un certain temps (désolé, je n'ai aucune idée de la durée), le téléphone commence à agir normalement et je peux continuer.

Je devine que quelque part le long de la ligne iOS bloque le socket de recevoir des données (mais bizarrement pas d'envoyer sur le même socket!).

Quelqu'un at-il une idée de ce que cela pourrait être et, plus important encore, comment je pourrais résoudre le problème?

Répondre

0

Eh bien, cela s'est avéré être un problème très étrange. J'ai déclenché un renifleur de paquets pour inspecter ce qui se passait et j'ai constaté que mon PC envoyait des diffusions ARP essayant d'identifier qui avait l'adresse IP. Ces requêtes ARP ne recevaient pas de réponse du routeur ou de l'iPhone.

C'était très étrange. En fin de compte, j'ai commencé à vérifier le point d'accès wifi auquel j'étais attaché. J'ai désactivé le Wi-Fi, nous forçant à utiliser un point d'accès différent (quoique légèrement plus faible) et soudainement les demandes d'ARP ont reçu une réponse et tout a sauté dans la vie.

C'est à ce moment-là que je me suis souvenu que mon Patron avait trébuché sur le fil du point d'accès et qu'il s'était écroulé au sol. Il "semblait" de travailler .. mais, évidemment, il a cassé "quelque chose": (

Le problème est maintenant pas plus!

Questions connexes