I am studying RFC 3539. While I have some difficulties to understand "Appendix A - Detailed Watchdog Algorithm". Please provide some help.
1) Does AAA client or AAA Server (direct connection scenario) need to follow the algorithm?
In section 3.4 we have: "The watchdog is used in order to enable a AAA client or agent to determine when to resend on another connection." Does it mean the algorithm is only required in AAA client? Without following the algorithm AAA server would utilize the newly connected link earlier than AAA client, which would cause some AAA server initiated procedures, such as RAR, result in failure.
2) If the algorithm is required in AAA server, how to avoid the infinite loop when both AAA client and AAA server enter "REOPEN" phase?
If the "connection up" event indicates to AAA client and AAA server, both of them would send DWR to verify the link and enter "REOPEN" phase. While in this phase only DWA is allowed to be a signal to trigger the state machine going forward. It seems to me that both sides would discard the DWR sent by their peer and run into an infinite loop.
3) If the DWR was out of the scope of Non-DWA, how to avoid the inconsistent states between 2 AAA peers?
The total link verification time by the algorithm would be 2 x Tw + 3 x (time of DWA - time of DWR). If one side sets its Tw much longer than the other, it would run into the similar consequence of my question 1) - one side would utilize the newly connected link earlier than the other.
4) Is RFC 3539 so strictly binding to RFC 3588?
RFC 3588 has many statements referring to RFC 3539, especially in its transport description. I am quite confused about the coordination between the state machine logic in the Section 5.6 of RFC 3588 and that in the Appendix A of RFC 3539. I am wondering the strong binding is necessary to the application of AAA or very diameter application.