John, First the bad news: I'm being a bit critical - again. Now the good news: you've raised an important issue which needs to be covered. Now some even worse news - for me: chasing up this point, I discovered that my lectures, which were supposed to cover all important VTAM and NCP issues, had missed treating "initialization mode" (IM) as a separate topic worthy of having some research behind it.
What I'd been doing was treating IM as being the same as "normal disconnect mode" (NDM). One of the characteristics of NDM is that there are no limits to retrying sending the frame which initiates a connection. The NCP manuals are quite clear that there are retry limits in IM and that REPLYTO and RETRIES apply, at least in the case of SDLC. Other media can cause an NCP load module to be loaded from the disk and it may be said that, during this loading, they are also in IM and the retry limits as determined by the different media apply - in a quite complicated way for frame relay according to the manuals. Which replies are we talking about here to which a limit applies? Well, it is each reply during the load process. If the load is being performed over the link, there is a response to each load module block* and thus the timeout, the retry limit, and any resend delay, will apply to each of these responses. * I believe. There is nothing in the manual to confirm this and it's not a point made in my notes but I vaguely remember that this is the case - and it makes sense for flow control with a fairly basic bit of programming, the "Controller Load and Dump Program" (CLDP). You mentioned that the response time must cover loading of the NCP. That applies only when the NCP is being loaded from the disk. In this case there is one message to request loading and to provide the name of the load module and one response. The CLDP gets on with loading the NCP load module and says nothing, no matter how much it is pestered, until the loading is complete. (I was going to say that CLDP had first to be loaded but it makes sense that that happens when the "Set Initialization Mode" (SIM) frame appears and consistency demands that receiving the response to a SIM frame, a response sent only when the CLDP is loaded, is also covered by the retry limits. The reason "When you load a NCP over a link, the timeout has to be greater than the time it takes to load the NCP." is nearly correct is that the most lengthy operation without a response is this loading from disk (and maybe also storing to disk) so if you had added "from disk" you would have been entirely correct. However that is not the context of this thread. OK so how do you control these retry limits? Well, it's REPLYTO and RETRIES in combination, not just RETRIES. You need to apply the famous formula: Total time from the first try until the last retry times out = (T x (1 + P) x (1 + Q)) + (D x Q) where T = the REPLYTO value P = the first RETRIES value, the immediate retry count D = the second RETRIES value, the delay between retry sequences Q = the third RETRIES value, the number of retry sequences Now the question arises which you also tried to address, which RETRIES (and which REPLYTO)? I even have some support from the manual in saying that it is the GROUP, LINE (and PU) statements - in their hierarchical form rather than there being any influence from the SDLCST statements. The reason for this is that SDLCST statements and their stand-alone GROUP statements come into play only once contact has been made between the two link stations on the link, XID frames have been exchanged and the link stations have decided who is primary and who is secondary. The link stations (strictly it's only the secondary to which the "mode" applies) then enter "normal response mode" (NRM) with a "Set Normal Response Mode" (SNRM) frame or, to be complete, a "Set Normal Response Mode Extended" (SNRME) frame if modulo 128 rather than modulo 8 is agreed. You may have remembered that there is some trickery in the assigning of parameters during this configuration process. The parameter that is particularly tricky is MAXOUT. It's a long story but the conclusion is in the rule: "The MAXOUT specified on the SDLCST statement with MODE=PRI is never used." Thus the MAXOUT values that will apply are the value specified on the SDLCST statements with MODE=SEC when the link station is the secondary and the value specified on the PU statement subordinate to the hierarchical GROUP and LINE statements when the when the link station is the primary. Just to be complete about this matter of timeout control and retry limits, during normal operation, this configuration process rules. Thus, if the NCP contains the primary link station, the REPLYTO and RETRIES as specified by the SDLCST MODE=PRI will apply; if the NCP contains the secondary link station, the ACTIVTO as specified by the SDLCST MODE=SEC will apply. In the case of a link-attached NCP it's important to consider the extension to the configuration process which permits imposing the primary role on one link station and the secondary role on the other link station. There's a lot to be said for ensuring that the NCP that does the loading eventually contains the primary link station and the NCP which is loaded contains the secondary link station. Unfortunately this isn't always the case naturally since people habitually assign numbers from the bottom up. Thus if a link-attached NCP is to be added to the configuration, it tends to have the higher subarea number and, if the traditional configuring process is allowed to operate, it will contain the primary link station. The possibility to impose roles can deal with this unfortunate, in this instance, assigning habit. I did quite a lot of testing of disk support when it became available in order to be able to talk about it. In fact I made another mistake in assuming that REPLYTO=10 would apply for contact processing - which (the "left hand" would have told the "right hand" if it had been listening) operates with indefinite retries and a fixed 2.2 second timeout for NCP SDLC support. However taking REPLYTO=10 and the default RETRIES=(15,0,0), the formula above gives a total delay of 160 seconds. This appears always to have been sufficient time for whenever a disk access was needed. The manuals actually mention a delay of 3 minutes when the flow of the text demands. Thus, if you specify REPLYTO=10, RETRIES=(17,0,0) or RETRIES=17 exactly meets the 3 minutes suggested maximum estimate for disk activity. If there is some failure during the load process over the link you are going always to have to wait 3 minutes from the time of the failure in order to be informed that there has been a failure. It is not possible to have retry control for the disk access operation different from that for the individual blocks being sent over the link. In a way it's a shame I didn't have problems with my testing of disk support, or my very infrequent link loads, or I would have paid more attention to just exactly what happened. Chris Mason ----- Original Message ----- From: "John S. Giltner, Jr." <[EMAIL PROTECTED]> Newsgroups: bit.listserv.ibm-main To: <[email protected]> Sent: Thursday, 22 December, 2005 5:49 AM Subject: Re: Remote 3745 Definition > Ali Serdar Yakut wrote: > > Hi there, > > I do not know if this is the right list to post this, but I'm trying > > anything for help. > > I have got a very urgent situation. > > > > I am trying to have a configuration like - > > > > VTAM1 - NCP1 - NCP2 > > > > NCP1 is loaded in a channel attached 3745. NCP2 will be on a link attached > > 3745. > > In the NCP generation and loading guide the following is stated: > > > > > > <Snip> > > > When you activate a remote linkstation there is a timeout waiting for > the remote station to reply, this is specified by the RETRIES parameter. > When you load a NCP over a link, the timeout has to be greater than > the time it takes to load the NCP. > > Now, what I can't remember is where the RETRIES parameter used from. > There is one specified on the PU defintion and on the SDLCST macros. > Now the hazy part. One PU is the primary (IIRC the PU with the higher > number SA) and one PU is the secondary. The primary PU will use the > RETRIES on the PU statment and the secondary PU will use the RETRIES > from the SDLCST macro defined on its PU statment. > > Now you don't want to make this too high, as this is also the timeout > value for noticing that the remote NCP has died or gone away. So if you > set RETRIES so that it takes 15 minutes, the remote NCP could be down > for 15 minutes before the PU go INOP. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

