Any way to change ARP retry count and interval in Windows XP? - Programmer

This is a discussion on Any way to change ARP retry count and interval in Windows XP? - Programmer ; Hi, I have an application that is sending a UDP message very infrequently (about once per 30 minutes) to an embedded device on the network. That interval is more than the ARP timeout. There is a strange bug in some ...

+ Reply to Thread
Results 1 to 12 of 12

Thread: Any way to change ARP retry count and interval in Windows XP?

  1. Any way to change ARP retry count and interval in Windows XP?

    Hi,

    I have an application that is sending a UDP message very infrequently (about
    once per 30 minutes) to an embedded device on the network. That interval is
    more than the ARP timeout. There is a strange bug in some switches that
    sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF) to
    be dropped. This unfortunately also happens with the ARP requests.

    I really expected Windows XP to retry a failed ARP a few times (e.g. 5) with
    a small interval (e.g. 1..2 seconds) before giving up. What I see in
    Wireshark is that the PC just sends out one ARP, and the application
    probably received an internal error status but does not retry to send the
    packet. I cannot change that application.

    I know I could add a static ARP entry but the customer sometimes exchanges
    the destination module, and I do not want to bother him with manually adding
    a new entry each time.

    Is there any way to change the ARP retry count and retry interval in Windows
    XP?

    Regards,
    Arie.




  2. Re: Any way to change ARP retry count and interval in Windows XP?

    On Fri, 10 Oct 2008 11:22:20 +0200, Arie wrote:
    >
    > I have an application that is sending a UDP message very infrequently (about
    > once per 30 minutes) to an embedded device on the network. That interval is
    > more than the ARP timeout. There is a strange bug in some switches that
    > sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF) to
    > be dropped. This unfortunately also happens with the ARP requests.
    >
    > I really expected Windows XP to retry a failed ARP a few times (e.g. 5) with
    > a small interval (e.g. 1..2 seconds) before giving up. What I see in
    > Wireshark is that the PC just sends out one ARP, and the application
    > probably received an internal error status but does not retry to send the
    > packet. I cannot change that application.
    >
    > I know I could add a static ARP entry but the customer sometimes exchanges
    > the destination module, and I do not want to bother him with manually adding
    > a new entry each time.
    >
    > Is there any way to change the ARP retry count and retry interval in Windows
    > XP?


    If you have control of the S/W, what if you just pinged it periodically to
    keep the connection open?

    Good Luck!
    Rich


  3. Re: Any way to change ARP retry count and interval in Windows XP?

    On Oct 10, 5:22*am, "Arie" wrote:
    > I have an application that is sending a UDP message very infrequently (about
    > once per 30 minutes) to an embedded device on the network. That interval is
    > more than the ARP timeout. There is a strange bug in some switches that
    > sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF) to
    > be dropped. This unfortunately also happens with the ARP requests.
    >
    > I really expected Windows XP to retry a failed ARP a few times (e.g. 5) with
    > a small interval (e.g. 1..2 seconds) before giving up. What I see in
    > Wireshark is that the PC just sends out one ARP, and the application
    > probably received an internal error status but does not retry to send the
    > packet. I cannot change that application.


    If missed packets are an issue, why use UDP?

    And since UDP receivers must be prepared to deal with duplicates, why
    not just send the datagram five times?

  4. Re: Any way to change ARP retry count and interval in Windows XP?

    On Oct 10, 10:47*am, Rich Grise wrote:
    > On Fri, 10 Oct 2008 11:22:20 +0200, Arie wrote:
    >
    > > I have an application that is sending a UDP message very infrequently (about
    > > once per 30 minutes) to an embedded device on the network. That interval is
    > > more than the ARP timeout. There is a strange bug in some switches that
    > > sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF) to
    > > be dropped. This unfortunately also happens with the ARP requests.

    >
    > > I really expected Windows XP to retry a failed ARP a few times (e.g. 5)with
    > > a small interval (e.g. 1..2 seconds) before giving up. What I see in
    > > Wireshark is that the PC just sends out one ARP, and the application
    > > probably received an internal error status but does not retry to send the
    > > packet. I cannot change that application.

    >
    > > I know I could add a static ARP entry but the customer sometimes exchanges
    > > the destination module, and I do not want to bother him with manually adding
    > > a new entry each time.

    >
    > > Is there any way to change the ARP retry count and retry interval in Windows
    > > XP?

    >
    > If you have control of the S/W, what if you just pinged it periodically to
    > keep the connection open?


    There's no connection on UDP. But yes, he can just ping the device
    from the XP periodically to keep the ARP entry. He can run another
    apps to do so.

    >
    > Good Luck!
    > Rich



  5. Re: Any way to change ARP retry count and interval in Windows XP?

    > I have an application that is sending a UDP message very infrequently
    > (about once per 30 minutes) to an embedded device on the network.
    > That interval is more than the ARP timeout. There is a strange bug in
    > some switches that sometimes causes a broadcast frame (destination
    > MAC = FF-FF-FF-FF-FF-FF) to be dropped. This unfortunately also
    > happens with the ARP requests.
    > I really expected Windows XP to retry a failed ARP a few times (e.g.
    > 5) with a small interval (e.g. 1..2 seconds) before giving up. What I
    > see in Wireshark is that the PC just sends out one ARP, and the
    > application probably received an internal error status but does not
    > retry to send the packet. I cannot change that application.
    >
    > I know I could add a static ARP entry but the customer sometimes
    > exchanges the destination module, and I do not want to bother him
    > with manually adding a new entry each time.
    >
    > Is there any way to change the ARP retry count and retry interval in
    > Windows XP?


    While the windows app is running, change the arp entry to static from within
    the app itself. I do this in an app because the arp queries affect the
    bandwidth.

    Bill


  6. Re: Any way to change ARP retry count and interval in Windows XP?

    "Bill A." wrote in message
    news:9qqdndX429kWn2_VnZ2dnUVZ_vednZ2d@comcast.com. ..
    >> I have an application that is sending a UDP message very infrequently
    >> (about once per 30 minutes) to an embedded device on the network.
    >> That interval is more than the ARP timeout. There is a strange bug in
    >> some switches that sometimes causes a broadcast frame (destination
    >> MAC = FF-FF-FF-FF-FF-FF) to be dropped. This unfortunately also
    >> happens with the ARP requests.
    >> I really expected Windows XP to retry a failed ARP a few times (e.g.
    >> 5) with a small interval (e.g. 1..2 seconds) before giving up. What I
    >> see in Wireshark is that the PC just sends out one ARP, and the
    >> application probably received an internal error status but does not
    >> retry to send the packet. I cannot change that application.
    >>
    >> I know I could add a static ARP entry but the customer sometimes
    >> exchanges the destination module, and I do not want to bother him
    >> with manually adding a new entry each time.
    >>
    >> Is there any way to change the ARP retry count and retry interval in
    >> Windows XP?

    >
    > While the windows app is running, change the arp entry to static from
    > within the app itself. I do this in an app because the arp queries affect
    > the bandwidth.



    Hmmm, a good idea. I could run a script on the PC that periodically requests
    the ARP table, then gets the device entry (filter on known first 3 bytes of
    the MAC) and then makes that entry static. It would keep any obsoleted
    devices in the table but that would not pose a problem. And new devices
    would be added after they have been detected by ARP once.

    Thanks,
    Arie.



  7. Re: Any way to change ARP retry count and interval in Windows XP?

    "Rich Grise" wrote in message
    newsan.2008.10.10.18.47.04.765622@example.net...
    > On Fri, 10 Oct 2008 11:22:20 +0200, Arie wrote:
    >>
    >> I have an application that is sending a UDP message very infrequently
    >> (about
    >> once per 30 minutes) to an embedded device on the network. That interval
    >> is
    >> more than the ARP timeout. There is a strange bug in some switches that
    >> sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF)
    >> to
    >> be dropped. This unfortunately also happens with the ARP requests.
    >>
    >> I really expected Windows XP to retry a failed ARP a few times (e.g. 5)
    >> with
    >> a small interval (e.g. 1..2 seconds) before giving up. What I see in
    >> Wireshark is that the PC just sends out one ARP, and the application
    >> probably received an internal error status but does not retry to send the
    >> packet. I cannot change that application.
    >>
    >> I know I could add a static ARP entry but the customer sometimes
    >> exchanges
    >> the destination module, and I do not want to bother him with manually
    >> adding
    >> a new entry each time.
    >>
    >> Is there any way to change the ARP retry count and retry interval in
    >> Windows
    >> XP?

    >
    > If you have control of the S/W, what if you just pinged it periodically to
    > keep the connection open?
    >
    > Good Luck!
    > Rich


    Well I don't have control of the application or device SW but I can add
    something to the PC.
    But: if the user exchanges the device the new IP and MAC address are not
    known, so pinging the device is a problem. The closed application does
    device detection by broadcasting requests, I really don't want to add a
    WinPcap driver + app to snoop these tranfers.

    Thanks,
    Arie




  8. Re: Any way to change ARP retry count and interval in Windows XP?


    "Dingo" ...
    On Oct 10, 5:22 am, "Arie" wrote:
    > I have an application that is sending a UDP message very infrequently
    > (about
    > once per 30 minutes) to an embedded device on the network. That interval
    > is
    > more than the ARP timeout. There is a strange bug in some switches that
    > sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF)
    > to
    > be dropped. This unfortunately also happens with the ARP requests.
    >
    > I really expected Windows XP to retry a failed ARP a few times (e.g. 5)
    > with
    > a small interval (e.g. 1..2 seconds) before giving up. What I see in
    > Wireshark is that the PC just sends out one ARP, and the application
    > probably received an internal error status but does not retry to send the
    > packet. I cannot change that application.



    >If missed packets are an issue, why use UDP?
    >And since UDP receivers must be prepared to deal with duplicates, why
    >not just send the datagram five times?



    I cannot change the application or the device. And it is not the UDP that
    gets lost, it is the ARP because that has a broadcast destination. And
    Windoze does NOT repeat the ARP.

    Regards,
    Arie





  9. Re: Any way to change ARP retry count and interval in Windows XP?

    In comp.arch.embedded Arie wrote:
    > .............. There is a strange bug in some switches that
    > sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF) to
    > be dropped. This unfortunately also happens with the ARP requests.


    Because ARP requests are broadcasts.

    My advice would be to replace the faulty switches.


  10. Re: Any way to change ARP retry count and interval in Windows XP?

    "Jim Jackson" ...
    > In comp.arch.embedded Arie wrote:
    >> .............. There is a strange bug in some switches that
    >> sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF)
    >> to
    >> be dropped. This unfortunately also happens with the ARP requests.

    >
    > Because ARP requests are broadcasts.


    I know. And the device discovery protocol also uses broadcasts, but those
    are repeated a few times. The ARP not.

    > My advice would be to replace the faulty switches.


    I'm afraid it's going to be my advice too, this week. I would have liked to
    save the day with an alternative idea.

    Thanks,
    Arie



  11. Re: Any way to change ARP retry count and interval in Windows XP?

    On Oct 12, 10:38*am, "Arie" wrote:
    > "Dingo" ...
    > On Oct 10, 5:22 am, "Arie" wrote:
    >
    >
    >
    >
    >
    > > I have an application that is sending a UDP message very infrequently
    > > (about
    > > once per 30 minutes) to an embedded device on the network. That interval
    > > is
    > > more than the ARP timeout. There is a strange bug in some switches that
    > > sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF)
    > > to
    > > be dropped. This unfortunately also happens with the ARP requests.

    >
    > > I really expected Windows XP to retry a failed ARP a few times (e.g. 5)
    > > with
    > > a small interval (e.g. 1..2 seconds) before giving up. What I see in
    > > Wireshark is that the PC just sends out one ARP, and the application
    > > probably received an internal error status but does not retry to send the
    > > packet. I cannot change that application.
    > >If missed packets are an issue, why use UDP?
    > >And since UDP receivers must be prepared to deal with duplicates, why
    > >not just send the datagram five times?

    >
    > I cannot change the application or the device. And it is not the UDP that
    > gets lost, it is the ARP because that has a broadcast destination. And
    > Windoze does NOT repeat the ARP.
    >

    In that case, you may be helped by the registry entries for
    ArpCacheLife and
    AprCacheMinReferencedLife. If you can modify the registry and are
    running
    the proper flavor of Windows, you can use these to extend the ARP
    caches.

  12. Re: Any way to change ARP retry count and interval in Windows XP?


    "Dingo" ...
    On Oct 12, 10:38 am, "Arie" wrote:
    > "Dingo" ...
    > On Oct 10, 5:22 am, "Arie" wrote:
    > > I have an application that is sending a UDP message very infrequently
    > > (about
    > > once per 30 minutes) to an embedded device on the network. That interval
    > > is
    > > more than the ARP timeout. There is a strange bug in some switches that
    > > sometimes causes a broadcast frame (destination MAC = FF-FF-FF-FF-FF-FF)
    > > to
    > > be dropped. This unfortunately also happens with the ARP requests.

    >
    > > I really expected Windows XP to retry a failed ARP a few times (e.g. 5)
    > > with
    > > a small interval (e.g. 1..2 seconds) before giving up. What I see in
    > > Wireshark is that the PC just sends out one ARP, and the application
    > > probably received an internal error status but does not retry to send
    > > the
    > > packet. I cannot change that application.
    > >If missed packets are an issue, why use UDP?
    > >And since UDP receivers must be prepared to deal with duplicates, why
    > >not just send the datagram five times?

    >
    > I cannot change the application or the device. And it is not the UDP that
    > gets lost, it is the ARP because that has a broadcast destination. And
    > Windoze does NOT repeat the ARP.
    >

    In that case, you may be helped by the registry entries for
    ArpCacheLife and
    AprCacheMinReferencedLife. If you can modify the registry and are
    running
    the proper flavor of Windows, you can use these to extend the ARP
    caches.


    I think I discovered yesterday that even when there are packets sent from
    the device to the PC with the proper device MAC address, the PC's ARP cache
    does not learn them. It almost looks as if the PC only learns the MAC from
    the ARP responses. That means there will always be a timeout on the ARP
    cache. Increasing these values would make the problem more infrequent but
    will not stop it. But I'll experiment with them.

    Still, no-one knows how to force Windoze to do an ARP retry... :-(

    Arie



+ Reply to Thread