idnits 2.17.1 draft-ietf-tn3270e-rt-mib-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** Missing expiration date. The document expiration date should appear on the first and last page. ** The document seems to lack a 1id_guidelines paragraph about Internet-Drafts being working documents. ** The document seems to lack a 1id_guidelines paragraph about 6 months document validity. ** The document seems to lack a 1id_guidelines paragraph about the list of current Internet-Drafts. ** The document seems to lack a 1id_guidelines paragraph about the list of Shadow Directories. == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 40 longer pages, the longest (page 2) being 59 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. ** There are 3 instances of too long lines in the document, the longest one being 2 characters in excess of 72. ** The abstract seems to contain references ([16]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year == Line 1484 has weird spacing: '...ble can wrap:...' -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (June 1998) is 9447 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Unused Reference: '17' is defined on line 2156, but no explicit reference was found in the text == Unused Reference: '18' is defined on line 2159, but no explicit reference was found in the text ** Downref: Normative reference to an Historic RFC: RFC 1157 (ref. '1') ** Obsolete normative reference: RFC 1902 (ref. '3') (Obsoleted by RFC 2578) ** Obsolete normative reference: RFC 1903 (ref. '4') (Obsoleted by RFC 2579) ** Obsolete normative reference: RFC 1904 (ref. '5') (Obsoleted by RFC 2580) ** Obsolete normative reference: RFC 1905 (ref. '6') (Obsoleted by RFC 3416) ** Obsolete normative reference: RFC 2271 (ref. '7') (Obsoleted by RFC 2571) ** Obsolete normative reference: RFC 2272 (ref. '8') (Obsoleted by RFC 2572) ** Obsolete normative reference: RFC 2273 (ref. '9') (Obsoleted by RFC 2573) ** Obsolete normative reference: RFC 2274 (ref. '10') (Obsoleted by RFC 2574) ** Obsolete normative reference: RFC 2275 (ref. '11') (Obsoleted by RFC 2575) ** Downref: Normative reference to an Historic RFC: RFC 1041 (ref. '14') -- Possible downref: Non-RFC (?) normative reference: ref. '16' -- Possible downref: Non-RFC (?) normative reference: ref. '17' ** Obsolete normative reference: RFC 2028 (ref. '18') (Obsoleted by RFC 9281) Summary: 22 errors (**), 0 flaws (~~), 6 warnings (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 TN3270E Working Group Kenneth White 2 INTERNET DRAFT: IBM Corp. 3 Expiration Date: December, 1998 Robert Moore 4 IBM Corp. 5 June 1998 7 Definitions of Protocol and Managed Objects for 8 TN3270E Response Time Collection Using SMIv2 9 (TN3270E-RT-MIB) 10 12 Status of this Memo 14 This document is an Internet Draft. Internet Drafts are working 15 documents of the Internet Engineering Task Force (IETF), its Areas, and 16 its Working Groups. Note that other groups may also distribute working 17 documents as Internet Drafts. 19 Internet Drafts are draft documents valid for a maximum of six months. 20 Internet Drafts may be updated, replaced, or obsoleted by other 21 documents at any time. It is not appropriate to use Internet Drafts as 22 reference material or to cite them other than as a "working draft" or 23 "work in progress." 25 Please check the I-D abstract listing contained in each Internet Draft 26 directory to learn the current status of this or any Internet Draft. 27 Distribution of this document is unlimited. 29 Copyright Notice 31 Copyright (C) The Internet Society (1998). All Rights Reserved. 33 Abstract 35 This memo defines the protocol and the Management Information Base (MIB) 36 for performing response time data collection on TN3270 and TN3270E 37 sessions by a TN3270E server. The response time data collected by a 38 TN3270E server is structured to support both validation of service level 39 agreements and performance monitoring of TN3270 and TN3270E Sessions. 40 This MIB has as a prerequisite the TN3270E-MIB, reference [16]. 42 TN3270E, defined by RFC 2355 [15], refers to the enhancements made to 43 the Telnet 3270 (TN3270) terminal emulation practices. Refer to RFC 44 1041 [14], RFC 854 [12], and RFC 860 [13] for a sample of what is meant 45 by TN3270 practices. 47 The specification of this MIB uses the Structure of Management 48 Information (SMI) for Version 2 of the Simple Network Management 49 Protocol (refer to RFC1902 [3]). 51 Table of Contents 53 1.0 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2 55 2.0 The SNMP Network Management Framework . . . . . . . . . . . . 3 57 3.0 Response Time Collection Methodology . . . . . . . . . . . . . 3 58 3.1 General Response Time Collection . . . . . . . . . . . . . . . 3 59 3.2 TN3270E Server Response Time Collection . . . . . . . . . . . 5 60 3.3 Correlating TN3270E Server and Host Response Times . . . . . . 9 61 3.4 Timestamp Calculation . . . . . . . . . . . . . . . . . . . . 10 62 3.4.1 DR Usage . . . . . . . . . . . . . . . . . . . . . . . . . 10 63 3.4.2 TIMING-MARK Usage . . . . . . . . . . . . . . . . . . . . 11 64 3.5 Performance Data Modelling . . . . . . . . . . . . . . . . . . 13 65 3.5.1 Averaging Response Times . . . . . . . . . . . . . . . . . 13 66 3.5.2 Response Time Buckets . . . . . . . . . . . . . . . . . . 15 68 4.0 Structure of the MIB . . . . . . . . . . . . . . . . . . . . . 16 69 4.1 tn3270eRtCollCtlTable . . . . . . . . . . . . . . . . . . . . 17 70 4.2 tn3270eRtDataTable . . . . . . . . . . . . . . . . . . . . . . 19 71 4.3 Notifications . . . . . . . . . . . . . . . . . . . . . . . . 21 72 4.4 Advisory Spin Lock Usage . . . . . . . . . . . . . . . . . . . 22 74 5.0 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 22 76 6.0 Security Considerations . . . . . . . . . . . . . . . . . . . 38 78 7.0 Intellectual Property . . . . . . . . . . . . . . . . . . . . 39 80 8.0 Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 39 82 9.0 References . . . . . . . . . . . . . . . . . . . . . . . . . . 39 84 10.0 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . 41 86 11.0 Full Copyright Statement . . . . . . . . . . . . . . . . . . 41 88 1.0 Introduction 90 This document is a product of the TN3270E Working Group. It defines a 91 protocol and a MIB module to enable a TN3270E server to collect and keep 92 track of response time data for both TN3270 and TN3270E clients. Basis 93 for implementing this MIB: 95 o TN3270E-MIB, Base Definitions of Managed Objects for TN3270E Using 96 SMIv2 [16] 98 o TN3270E RFCs 100 o Telnet Timing Mark Option RFC [13]. 102 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 103 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 104 document are to be interpreted as described in RFC 2119, reference [19]. 106 2.0 The SNMP Network Management Framework 108 The SNMP Network Management Framework presently consists of six major 109 components. They are: 111 o the overall architecture, described in RFC 2271 [7]. 113 o the SMI, described in RFC 1902 [3], - the mechanisms used for 114 describing and naming objects for the purpose of management. 116 o the MIB-II, STD 17, RFC 1213 [2], - the core set of managed objects 117 for the Internet suite of protocols. 119 o the protocol, RFC 1157 [1] and/or RFC 1905 [6] and/or RFC 2272 [8] 120 -- the protocol for accessing managed information. 122 o the user-based security model defined in RFC 2274 [10]. 124 o the view-based access control model defined in RFC 2275 [11]. 126 Textual conventions are defined in RFC 1903 [4], and conformance 127 statements are defined in RFC 1904 [5]. Common applications are defined 128 in RFC 2273 [9]. 130 The Framework permits new objects to be defined for the purpose of 131 experimentation and evaluation. 133 This memo specifies a MIB module that is compliant to the SMIv2. A MIB 134 conforming to the SMIv1 can be produced through the appropriate 135 translation. 137 3.0 Response Time Collection Methodology 139 This section explains the methodology and approach used by the MIB 140 defined by this memo for response time data collection by a TN3270E 141 server. 143 3.1 General Response Time Collection 145 Two primary methods exist for measuring response times in SNA networks: 147 o The Systems Network Architecture Management Services (SNA/MS) 148 Response Time Monitoring (RTM) function. 150 o Timestamping using definite response flows. 152 This memo defines an approach using definite responses to timestamp the 153 flows between a client and its TN3270E server, rather than by use of the 154 RTM method. Extensions to the SNA/MS RTM flow were considered, but this 155 approach was deemed unsuitable since not all TN3270E server 156 implementations have access to their underlying SNA stacks. The RTM 157 concepts of keeping response time buckets for service level agreements 158 and of interval-based response time collection for performance 159 monitoring are preserved in the MIB module defined in this memo. 161 As mentioned, this memo focuses on using definite responses to timestamp 162 the flows between a client and its TN3270E server for generating 163 performance data. Use of a definite response flow requires that the 164 client supports TN3270E with the RESPONSES function negotiated. The 165 TN3270 TIMING-MARK option can be used instead of definite response for 166 supporting TN3270 clients or TN3270E clients that don't support 167 RESPONSES. This document focuses first on defining the protocol and 168 methods for generating performance data using definite responses, and 169 then describes how the TIMING-MARK option can be used instead of 170 definite response. 172 In an SNA network, a transaction between a client Logical Unit (LU) and 173 a target host in general looks as follows: 175 ------------------------------------------------ 176 | | 177 | Client LU Target SNA Host | 178 | | 179 | Timestamps | 180 | request A | 181 | -----------------------------------------> | 182 | reply(DR) B | | 183 | <---------------------------------------< | 184 | | +/-RSP C | 185 | >---------------------------------------> | 186 | | 187 | DR: Definite Response requested | 188 | +/-RSP: Definite Response | 189 | | 190 ------------------------------------------------ 192 This transaction is a simple one, and is being used only to illustrate 193 how timestamping at a target SNA host can be used to generate response 194 times. An IBM redbook [12] provides a more detailed description of 195 response time collection for a transaction of this type. Note that for 196 the purpose of calculating an approximation for network transit time, it 197 doesn't matter if the response is positive or negative. Two response 198 time values are typically calculated: 200 o Host Transit Time: Timestamp B - Timestamp A 201 o Network Transit Time: Timestamp C - Timestamp B 203 Network transit time is an approximation for the amount of time that a 204 transaction requires to flow across a network, since the response flow 205 is being substituted for the request flow at the start of the 206 transaction. Network transit time, timestamp C - timestamp B, is the 207 amount of time that the definite response request and its response 208 required. Host time, timestamp B - timestamp A, is the actual time that 209 the host required to process the transaction. Experience has shown that 210 using the response flow to approximate network transit times is useful, 211 and does correlate well with actual network transit times. 213 A client SHOULD respond to a definite response request when it completes 214 processing the transaction. This is important since it increases the 215 accuracy of a total response time. Clients that immediately respond to 216 a definite response request will be attributed with lower total response 217 times then those that actually occurred. 219 The TN3270E-RT-MIB describes a method of collecting performance data 220 that is not appropriate for printer (LU Type 1 or LU Type 3) sessions; 221 thus collection of performance data for printer sessions is excluded 222 from this MIB. This exclusion of printer sessions is not considered a 223 problem, since these sessions are not the most important ones for 224 response time monitoring, and since historically they were excluded from 225 SNA/MS RTM collection. The tn3270eTcpConnResourceType object in a 226 tn3270eTcpConnEntry (in the TN3270E-MIB) can be examined to determine if 227 a client session is ineligible for response time data collection for 228 this reason. 230 3.2 TN3270E Server Response Time Collection 232 A TN3270E server connects a Telnet client performing 3270 emulation to a 233 target SNA host over both a client-side network (client to TN3270E 234 server) and an SNA Network (TN3270E server to target SNA host). The 235 client-side network is typically TCP/IP, but it need not be. For ease 236 of exposition this document uses the term "IP network" to refer to the 237 client-side network, since IP is by far the most common protocol for 238 these networks. 240 A TN3270E server can use SNA definite responses and the TN3270 241 Enhancement (RFC 2355 [15]) RESPONSES function to calculate response 242 times for a transaction, by timestamping when a client request arrives 243 at the server, when the reply arrives from the target host, and when the 244 response acknowledging this reply arrives from the client. 246 Section 3.4, Timestamp Calculation, provides specifics on when in the 247 sequence of flows between a TN3270E client and its target SNA host a 248 TN3270E server takes the required timestamps. In addition, it provides 249 information on how a TN3270 TIMING-MARK request/response flow can be 250 used instead of DR for approximating IP network transit times. 252 The following figure adds a TN3270E server between the client, in this 253 case a TN3270E client and the target SNA host: 255 ------------------------------------------------ 256 | | 257 | Client TN3270E Target | 258 | Server SNA Host | 259 | Timestamps | 260 | | 261 | <---IP Network-------><---SNA Network---> | 262 | | 263 | request D | 264 | ------------------------------------------> | 265 | reply(DR) E | | 266 | <----------------------------------------< | 267 | | +/-RSP F | 268 | >-------------------- - - - - - - - - - > | 269 | | 270 ------------------------------------------------ 272 A TN3270E server can save timestamp D when it receives a client request, 273 save timestamp E when the target SNA host replies, and save timestamp F 274 when the client responds to the definite response request that flowed 275 with the reply. It doesn't matter whether the target SNA host requested 276 a definite response on its reply: if it didn't, the TN3270E server 277 makes the request on its own, to enable it to produce timestamp F. In 278 this case the TN3270E server does not forward the response to the target 279 SNA host, as the dotted line in the figure indicates. 281 Because it is a special case, a transaction in which a target SNA host 282 returns an UNBIND in response to a client's request, and the TN3270E 283 server forwards the UNBIND to the client, is not included in any 284 response time calculations. 286 In order to generate timestamp F, a TN3270E server MUST insure that the 287 transaction specifies DR, and that the TN3270E RESPONSES function has 288 been negotiated between itself and the client. Negotiation of the 289 TN3270E RESPONSES function occurs during the client's TN3270E session 290 initialization. The TN3270E servers that the authors are aware of do 291 request the RESPONSES function during client session initialization. 292 TN3270E clients either automatically support the RESPONSES function, or 293 can be configured during startup to support it. 295 Using timestamps D, E, and F the following response times can be 296 calculated by a TN3270E server: 298 o Total Response time: Timestamp F - Timestamp D 299 o IP Network Transit Time: Timestamp F - Timestamp E 301 Just as in the SNA case presented above, these response times are also 302 approximations, since the final +/- RSP from the client is being 303 substituted for the request from the client that began the transaction. 305 The MIB provides an object, tn3270eRtCollCtlType, to control several 306 aspects of response time data collection. One of the available options 307 in setting up a response time collection policy is to eliminate the 308 IP-network component altogether. This might be done because it is 309 determined either that the additional IP network traffic would not be 310 desirable, or that the IP-network component of the overall response 311 times is not significant. 313 Excluding the IP-network component from response times also has an 314 implication for the way in which response time data is aggregated. A 315 TN3270E server may find that some of its clients simply don't support 316 any of the functions necessary for the server to calculate the 317 IP-network component of response times. For these clients, the most 318 that the server can calculate is the SNA-network component of their 319 overall response times; the server records this SNA-network component as 320 the TOTAL response time each of these clients' transactions. If a 321 response time collection is aggregating data from a number of clients, 322 some of which have the support necessary for including the IP-network 323 component in their total response time calculations, and some of which 324 do not, then the server aggregates the data differently depending on 325 whether the collection has been defined to include or exclude the 326 IP-network component: 328 o If the IP-network component is included, then transactions for the 329 clients that don't support calculation of the IP-network component 330 of their response times are excluded from the aggregation 331 altogether. 333 o If the IP-network component is excluded, then total response times 334 for ALL clients include only the SNA-network component, even though 335 the server could have included an IP-network component in the 336 overall response times for some of these clients. The server does 337 this by setting timestamp F, which marks the end of a transaction's 338 total response time, equal to timestamp E, the end of the 339 transaction's SNA-network component. 341 The principle here is that all the transactions contributing their 342 response times to an aggregated value MUST make the same contribution. 343 If the aggregation specifies that an IP-network component MUST be 344 included in the aggregation's response times, then transactions for 345 which an IP-network component cannot be calculated aren't included at 346 all. If the aggregation specifies that an IP-network component is not 347 to be included, then only the SNA-network component is used, even for 348 those transactions for which an IP-network component could have been 349 calculated. 351 There is one more complication here: the MIB allows a management 352 application to enable or disable dynamic definite responses for a 353 response time collection. Once again the purpose of this option is to 354 give the network operator control over the amount of traffic introduced 355 into the IP network for response time data collection. A DYNAMIC 356 definite response is one that the TN3270E server itself adds to a reply, 357 in a transaction for which the SNA application at the target SNA host 358 did not specify DR in its reply. When the +/-RSP comes back from the 359 client, the server uses this response to calculate timestamp F, but then 360 it does not forward the response on to the SNA application (since the 361 application is not expecting a response to its reply). 363 The dynamic definite responses option is related to the option of 364 including or excluding the IP-network component of response times 365 (discussed above) as follows: 367 o If the IP-network component is excluded, then there is no reason for 368 enabling dynamic definite responses: the server always sets 369 timestamp F equal to timestamp E, so the additional IP-network 370 traffic elicited by a dynamic definite response would serve no 371 purpose. 373 o If the IP-network component is included, then enabling dynamic 374 definite responses causes MORE transactions to be included in the 375 aggregated response time values: 377 - For clients that do not support sending of responses, timestamp 378 F can never be calculated, and so their transactions are never 379 included in the aggregate. 381 - For clients that support sending of responses, timestamp F will 382 always be calculated for transactions in which the host SNA 383 application specifies DR in its reply, and so these transactions 384 will always be included in the aggregate. 386 - For clients that support sending of responses, having dynamic 387 definite responses enabled for a collection results in the 388 inclusion of additional transactions in the aggregate: 389 specifically, those for which the host SNA application did not 390 specify DR in its reply. 392 A TN3270E server also has the option of substituting TIMING-MARK 393 processing for definite responses in calculating the IP-network 394 component of a transaction's response time. Once again, there is no 395 reason for the server to do this if the collection has been set up to 396 exclude the IP-network component altogether in computing response times. 398 The MIB is structured to keep counts and averages for total response 399 times (F - D) and their IP-network components (F - E). A management 400 application can obviously calculate from these two values an average 401 SNA-network component (E - D) for the response times. This SNA-network 402 component includes the SNA node processing time at both the TN3270E 403 server and at the target application. 405 A host TN3270E server refers to an implementation where the TN3270E 406 server is collocated with the Systems Network Architecture (SNA) System 407 Services Control Point (SSCP) for the dependent Secondary Logical Units 408 (SLUs) that the server makes available to its clients for connecting 409 into an SNA network. A gateway TN3270E server resides on an SNA node 410 other than an SSCP, either an SNA type 2.0 node, a 411 boundary-function-attached type 2.1 node, or an APPN node acting in the 412 role of a Dependent LU Requester (DLUR). Host and gateway TN3270E 413 server implementations typically differ greatly as to their internal 414 implementation and System Definition (SYSDEF) requirements. 416 If a host TN3270E server is in the same SNA host as the target 417 application, then the SNA-network component of a transaction's response 418 time will approximately equal the host transit time (B - A) described 419 previously. A host TN3270E server implementation can, however, 420 typically support the establishment of sessions to target applications 421 in SNA hosts remote from itself. In this case the SNA-network component 422 of the response time equals the actual SNA-network transit time plus two 423 host transit times. 425 3.3 Correlating TN3270E Server and Host Response Times 427 It is possible that response time data is collected from TN3270E servers 428 at the same time as a management application is monitoring the SNA 429 sessions at a host. For example, a management application can be 430 monitoring a secondary logical unit (SLU) while retrieving data from a 431 TN3270E server. Consider the following figure: 433 ------------------------------------------------ 434 | | 435 | Client TN3270E Target | 436 | Server SNA Host | 437 | Timestamps (PLU) | 438 | (SLU) Timestamps| 439 | <---IP Network-------><---SNA Network---> | 440 | | 441 | request D A | 442 | ------------------------------------------> | 443 | reply(DR) E B | | 444 | <----------------------------------------< | 445 | | +/-RSP F C | 446 | >--------------------------------------> | 447 | | 448 ------------------------------------------------ 450 The following response times are available: 452 o Target SNA host transit time: Timestamp B - Timestamp A 453 o Target SNA host network transit time: Timestamp C - Timestamp B 454 o TN3270E server total response time: Timestamp F - Timestamp D 455 o TN3270E server IP-network component: Timestamp F - Timestamp E 457 The value added by the TN3270E server in this situation is its 458 approximation of the IP-network component of the overall response time. 459 The IP-network component can be subtracted from the total network 460 transit time (which can be captured at an SSCP monitoring SNA traffic 461 from/to the SLU) to see the actual SNA versus IP network transit times. 463 The MIB defined by this memo does not specifically address correlation 464 of the data it contains with response time data collected by direct 465 monitoring of SNA resources: its focus is exclusively response time 466 data collection from a TN3270E server perspective. It has, however, in 467 conjunction with the TN3270E-MIB [10], been structured to provide the 468 information necessary for correlation between TN3270E server-provided 469 response time information and that gathered from directly monitoring SNA 470 resources. 472 A management application attempting to correlate SNA resource usage to 473 Telnet clients can monitor either the tn3270eResMapTable or the 474 tn3270eTcpConnTable to determine resource-to-client address mappings. 475 Both of these tables are defined by the TN3270E-MIB [10]. Another 476 helpful table is the tn3270eSnaMapTable, which provides a mapping 477 between SLU names as they are known at the SSCP (VTAM) and their local 478 names at the TN3270E server. Neither the tn3270eClientGroupTable, the 479 tn3270eResPoolTable, nor the tn3270eClientResMapTable from the 480 TN3270E-MIB can be used for correlation, since the mappings defined by 481 these tables can overlap, and may not provide one-to-one mappings. 483 3.4 Timestamp Calculation 485 This section goes into more detail concerning when the various 486 timestamps can be taken as the flows between a TN3270E client and its 487 target SNA host pass through a TN3270E server. In addition, information 488 is provided on how the TN3270 TIMING-MARK request/response flow can be 489 used in place of DR for approximating IP network transit times. 491 3.4.1 DR Usage 493 Consider the following flow: 495 ---------------------------------------------------------- 496 | | 497 | Client TN3270E Target SNA | 498 | Server Host | 499 | Timestamps | 500 | | 501 | <---IP Network-------><---SNA Network---> | 502 | | 503 | request D (BB,CD,OIC,ER) | 504 | -------------------------------------------> | 505 | reply(DR) (FIC,ER,EB) | | 506 | <-----------------------------------------< | 507 | reply (MIC,ER) | 508 | <-----------------------------------------< | 509 | reply (MIC,ER) | 510 | <-----------------------------------------< | 511 | reply E (LIC,DR) | 512 | <-----------------------------------------< | 513 | | +/-RSP F | 514 | >----------------------------------------> | 515 | | 516 | BB : Begin Bracket ER : Response by exception | 517 | EB : End Bracket DR : Definite Response Requested | 518 | CD : Change Direction FIC : First in chain | 519 | OIC: Only in chain MIC: Middle in chain | 520 | LIC: Last in chain | 521 ---------------------------------------------------------- 523 Timestamp D is taken at the TN3270E server when the server has received 524 data from a client for forwarding to its target SNA host, and the 525 direction of the SNA session allows the server to forward the data 526 immediately (either the direction is inbound towards the SNA host, or 527 the session is between brackets). This is most likely when the server 528 finds the end of record indicator in the TCP data received from the 529 client. 531 The target SNA application returns its reply in one or more SNA Request 532 Units (RUs); in this example there are four RUs in the reply. The first 533 RU is marked as first in chain (FIC), the next two are marked as middle 534 in chain (MIC), and the last is marked as last in chain (LIC). If the 535 SNA host sends a multiple-RU chain, the server does not know until the 536 last RU is received whether DR is being requested. The server's only 537 chance to request DR from the client, however, comes when it forwards 538 the FIC RU, since this is the only time that the TN3270E header is 539 included. Since a server may forward the FIC RU to the client before it 540 receives the LIC RU from the SNA host, some servers routinely specify DR 541 on all FIC RUs. 543 If the server has specified DR on the TN3270E request for the FIC RU in 544 a chain, it takes timestamp E when it forwards the LIC RU to the client. 545 Since timestamp E is used for calculating the IP-network time for the 546 transaction, the server SHOULD take timestamp E as close as possible to 547 its "Telnet edge". The server takes timestamp F when it receives the 548 RESPONSES response from the client. 550 A target SNA application doesn't necessarily return data to a client in 551 a transaction; it may, for example, require more data from the client 552 before it can formulate a reply. In this case the application may 553 simply return to the TN3270E server a change of direction indicator. At 554 this point the server must send something to the client (typically a 555 Write operation with a WCC) to unlock the keyboard. If the server 556 specifies DR on the request to the client triggered by its receipt of 557 the change of direction indicator from the SNA application, then 558 timestamps E and F can be taken, and the usual response times can be 559 calculated. When the client sends in the additional data and gets a 560 textual response from the SNA application, the server treats this as a 561 separate transaction from the one involving the change of direction. 563 3.4.2 TIMING-MARK Usage 565 It is possible for a TN3270E server to use the TIMING-MARK flow for 566 approximating IP network transit times. Using TIMING-MARKs would make 567 it possible for a server to collect performance data for TN3270 clients, 568 as well as for TN3270E clients that do not support the RESPONSES 569 function. In order for TIMING-MARKs to be used in this way, a client 570 can't have the NOP option enabled, since responses are needed to the 571 server's TIMING-MARK requests. An IP network transit time approximation 572 using a TIMING-MARK is basically the amount of time it takes for a 573 TN3270 server to receive from a client a response to a TIMING-MARK 574 request. 576 To get an estimate for IP network transit time, a TN3270E server sends a 577 TIMING-MARK request to a client after a LIC RU has been received, as a 578 means of approximating IP network transit time: 580 --------------------------------------------------- 581 | | 582 | Client TN3270E Target | 583 | Server Host | 584 | Timestamps | 585 | | 586 | <---IP Network-------><---SNA Network---> | 587 | | 588 | request D (BB,CD,OIC,ER) | 589 | -------------------------------------------> | 590 | reply (FIC,ER,EB) | | 591 | <-----------------------------------------< | 592 | reply (MIC,ER) | 593 | <-----------------------------------------< | 594 | reply (MIC,ER) | 595 | <-----------------------------------------< | 596 | reply E (LIC,ER) | 597 | <-----------------------------------------< | 598 | TIMING-MARK Rqst E' | 599 | <--------------------- | 600 | | TIMING-MARK Rsp F' | 601 | >-------------------> | 602 | | 603 --------------------------------------------------- 605 The response times can then be calculated as follows: 607 o TN3270E server total response time: 608 (Timestamp E - Timestamp D) + (Timestamp F' - Timestamp E') 610 o TN3270E server IP network time: Timestamp F' - Timestamp E' 612 If a TN3270E server is performing the TIMING-MARK function (independent 613 of the response time monitoring use of the function discussed here), 614 then it most likely has a TIMING-MARK interval for determining when to 615 examine client sessions for sending the TIMING-MARK request. This 616 interval, which is ordinarily a global value for an entire TN3270E 617 server, is represented in the TN3270E-MIB by the 618 tn3270eSrvrConfTmNopInterval object. A TIMING-MARK request is sent only 619 if, when it is examined, a client session is found to have had no 620 activity for a different fixed length of time, represented in the 621 TN3270E-MIB by the tn3270eSrvrConfTmNopInactTime object. 623 Servers that support a large number of client sessions should spread out 624 the TIMING-MARK requests they send to these clients over the activity 625 interval, rather than sending them all in a single burst, since 626 otherwise the network may be flooded with TIMING-MARK requests. When a 627 server uses TIMING-MARKs for approximating response times, this tends to 628 introduce a natural spreading into its TIMING-MARK requests, since the 629 requests are triggered by the arrival of traffic from an SNA host. 631 A TN3270E server MUST integrate its normal TIMING-MARK processing with 632 its use of TIMING-MARKs for computing response times. In particular, it 633 MUST NOT send a second TIMING-MARK request to a client while waiting for 634 the first to return, since this is ruled out by the TIMING-MARK protocol 635 itself. If a TIMING-MARK flow has just been performed for a client 636 shortly before the LIC RU arrives, the server MAY use the interval from 637 this flow as its approximation for IP network transit time, (in other 638 words, as its (F' - E') value) when calculating its approximation for 639 the transaction's total response time, rather than sending a second 640 TIMING-MARK request so soon after the preceding one. 642 Regardless of when the server sends its TIMING-MARK request, the 643 accuracy of its total response time calculation depends on exactly when 644 the client responds to the TIMING-MARK request. 646 3.5 Performance Data Modelling 648 The following two subsections detail how the TN3270E-RT-MIB models and 649 controls capture of two types of response time data: average response 650 times and response time buckets. 652 3.5.1 Averaging Response Times 654 Average response times play two different roles in the MIB: 656 o They are made available for management applications to retrieve. 657 o They serve as triggers for emitting notifications. 659 Sliding-window averages are used rather than straight interval-based 660 averages, because they are often more meaningful, and because they cause 661 less notification thrashing. Sliding-window average calculation can, if 662 necessary, be disabled, by setting the sample period multiplier, 663 tn3270eRtCollCtlSPMult, to 1, and setting the sample period, 664 tn3270eRtCollCtlSPeriod, to the required collection interval. 666 In order to calculate sliding-window averages, a TN3270E server MUST: 668 o Select a fixed, relatively short, sample period SPeriod; the default 669 value for SPeriod in the MIB is 20 seconds. 671 o Select an averaging period multiplier SPMult. The actual collection 672 interval will then be SPMult times SPeriod. The default value for 673 SPMult in the MIB is 30, yielding a default collection interval of 674 10 minutes. Note that the collection interval (SPMult*SPeriod) is 675 always a multiple of the sample period. 677 Clearlly, SPMult*SPeriod should not be thought of as literally the 678 averaging period. The average calculated will include contributions 679 older than that time, and does not weight equally all contributions 680 since that time. In fact, it gives a smoother result than a 681 traditional sliding average, as used in finance. More subtly, it is 682 best to think of the effective averaging period as being 683 2*SPMult*SPeriod. To see this, consider how long the contribution 684 to the result made by a particular transaction lasts. With a 685 traditional sliding average, it lasts exactly the averaging period. 686 With the aging mechanism described here, it has a half-life of 687 SPMult*SPeriod. 689 o Maintain the following counters to keep track of activity within the 690 current sample period; these are internal counters, not made visible 691 to a management application via the MIB. 693 - T (number of transactions in the period) 695 - TotalRts (sum of the total response times for all transactions 696 in the period) 698 - TotalIpRts (sum of the IP network transit times for all 699 transactions in the period; note that if IP network transit 700 times are being excluded from the response time collection, this 701 value will always be 0). 703 o Also maintain sliding counters, initialized to zero, for each of the 704 quantities being counted: 706 - AvgCountTrans (sliding count of transactions) 707 - TotalRtsSliding (sliding count of total response times) 708 - TotalIpRtsSliding (sliding count of IP network transit times) 710 o At the end of each sample period, update the sliding interval 711 counters, using the following floating-point calculations: 713 AvgCountTrans = AvgCountTrans + T 714 - (AvgCountTrans / SPMult) 716 TotalRtsSliding = TotalRtsSliding + TotalRts 717 - (TotalRtsSliding / SPMult) 719 TotalIpRtsSliding = TotalIpRtsSliding + TotalIpRts 720 - (TotalIpRtsSliding / SPMult) 722 Then reset T, TotalRts, and TotalIpRts to zero for use during the 723 next sample period. 725 o At the end of a collection interval, update the following MIB 726 objects as indicated; the floating-point numbers are rounded rather 727 than truncated. 729 tn3270eRtDataAvgCountTrans = AvgCountTrans 730 tn3270eRtDataAvgRt = TotalRtsSliding / AvgCountTrans 731 tn3270eRtDataAvgIpRt = TotalIpRtsSliding / AvgCountTrans 733 As expected, if IP network transit times are being excluded from 734 response time collection, then tn3270eRtDataAvgIpRt will always 735 return 0. 737 The sliding transaction counter AvgCountTrans is not used for updating 738 the MIB object tn3270eRtDataCountTrans: this object is an ordinary SMI 739 Counter32, which maintains a total count of transactions since its last 740 discontinuity event. The sliding counters are used only for calculating 741 averages. 743 Two mechanisms are present in the MIB to inhibit the generation of an 744 excessive number of notifications related to average response times. 745 First, there are high and low thresholds for average response times. A 746 tn3270eRtExceeded notification is generated the first time a 747 statistically significant average response time is found to have 748 exceeded the high threshold. (The test for statistical significance is 749 described below.) After this, no other tn3270eRtExceeded notifications 750 are generated until an average response time is found to have fallen 751 below the low threshold. 753 The other mechanism to limit notifications is the significance test for 754 a high average response time. Intuitively, the significance of an 755 average is directly related to the number of samples that go into it; so 756 we might be inclined to use a rule such as "for the purpose of 757 generating tn3270eRtExceeded notifications, ignore average response 758 times based on fewer than 20 transactions in the sample period." 760 In the case of response times, however, the number of transactions 761 sampled in a fixed sampling period is tied to these transactions' 762 response times. A few transactions with long response times can 763 guarantee that there will not be many transactions in a sample, because 764 these transactions "use up" the sampling time. Yet this case of a few 765 transactions with very poor response times should obviously be 766 classified as a problem, not as a statistical anomaly based on too small 767 a sample. 769 The solution is to make the significance level for a sample a function 770 of the average response time. A value IdleCount is specified, which is 771 used to qualify an sample as statistically significant. In order to 772 determine at a collection interval whether to generate a 773 tn3270eRtExceeded notification, a TN3270E server uses the following 774 algorithm: 776 if AvgCountTrans * ((AvgRt/ThreshHigh - 1) ** 2) >= IdleCount 777 then generate the notification, 779 where AvgRt is the value that would be returned by the object 780 tn3270eRtDataAvgRt at the end of the interval, and the "**" notation 781 indicates exponientiation. 783 Two examples illustrate how this algorithm works. Suppose that 784 IdleCount has been set to 20 transactions, and the high threshold to 200 785 msecs per transaction. If the average observed response time is 300 786 msecs, then a notification will be generated only if AvgCountTrans >= 787 80. If, however, the observed response time is 500 msecs, then a 788 notification is generated if AvgCountTrans >= 9. 790 There is no corresponding significance test for the tn3270eRtOkay 791 notification: this notification is generated based on an average 792 response time that falls below the low threshold, regardless of the 793 sample size behind that average. 795 3.5.2 Response Time Buckets 796 The MIB also supports collection of response time data into a set of 797 five buckets. This data is suitable either for verification of service 798 level agreements, or for monitoring by a management application to 799 identify performance problems. The buckets provide counts of 800 transactions whose total response times fall into a set of specified 801 ranges. 803 Like everything for a collection, the "total" response times collected 804 in the buckets are governed by the specification of whether IP network 805 transit times are to be included in the totals. Depending on how this 806 option is specified, the response times being counted in the buckets 807 will either be total response times (F - D), or only SNA network transit 808 times (effectively E - D, because when it is excluding the IP-network 809 component of transactions, a server makes timestamp F identical to 810 timestamp E). 812 Four bucket boundaries are specified for a response time collection, 813 resulting in five buckets. The first response time bucket counts those 814 transactions whose total response times were less than or equal to 815 Boundary 1, the second bucket counts those whose response times were 816 greater than Boundary 1 but less than or equal to Boundary 2, and so on. 817 The fifth bucket is unbounded on the top, counting all transactions 818 whose response times were greater than Boundary 4. 820 The four bucket boundaries have default values of: 1 second, 2 seconds, 821 5 seconds, and 10 seconds, respectively. These values are the defaults 822 in the 3174 controller's implementation of the SNA/MS RTM function, and 823 are thought to be appropriate for this MIB as well. 825 In SNA/MS the counter buckets were (by today's standards) relatively 826 small, with a maximum value of 65,535. The bucket objects in the MIB 827 are all Counter32's. 829 The following figure represents the buckets pictorially: 831 ---------------------------------------------- 832 | | 833 | Response Time Boundaries | 834 | | | | | | | | 835 | | | | | | | | 836 | | | | | | no | 837 | 0 B-1 B-2 B-3 B-4 bound| 838 | | | | | | | | 839 | |Bucket1|Bucket2|Bucket3|Bucket4|Bucket5| | 840 | ----------------------------------------- | 841 | | 842 ---------------------------------------------- 844 4.0 Structure of the MIB 846 The TN3270E-RT-MIB has the following components: 848 o tn3270eRtCollCtlTable 849 o tn3270eRtDataTable 850 o Notifications 851 o Advisory Spin Lock Usage 853 4.1 tn3270eRtCollCtlTable 855 The tn3270eRtCollCtlTable is indexed by tn3270eSrvrConfIndex and 856 tn3270eClientGroupName imported from the TN3270E-MIB. 857 tn3270eSrvrConfIndex identifies within a host a particular TN3270E 858 server. tn3270eClientGroupName identifies a collection of IP clients 859 for which response time data is to be collected. The set of clients is 860 defined using the tn3270eClientGroupTable from the TN3270E-MIB. 862 A tn3270eRtCollCtlEntry contains the following objects: 864 -------------------------------------------------- 865 1st Index | tn3270eSrvrConfIndex Unsigned32 | 866 2nd Index | tn3270eClientGroupName Utf8String | 867 | tn3270eRtCollCtlType BITS | 868 | tn3270eRtCollCtlSPeriod Unsigned32 | 869 | tn3270eRtCollCtlSPMult Unsigned32 | 870 | tn3270eRtCollCtlThreshHigh Unsigned32 | 871 | tn3270eRtCollCtlThreshLow Unsigned32 | 872 | tn3270eRtCollCtlIdleCount Unsigned32 | 873 | tn3270eRtCollCtlBucketBndry1 Unsigned32 | 874 | tn3270eRtCollCtlBucketBndry2 Unsigned32 | 875 | tn3270eRtCollCtlBucketBndry3 Unsigned32 | 876 | tn3270eRtCollCtlBucketBndry4 Unsigned32 | 877 | tn3270eRtCollCtlRowStatus RowStatus | 878 -------------------------------------------------- 880 The tn3270eRtCollCtlType object controls the type(s) of response time 881 collection that occur, the granularity of the collection, whether 882 dynamic definite responses SHOULD be initiated, and whether 883 notifications SHOULD be generated. This object is of BITS SYNTAX, and 884 thus allows selection of multiple options. 886 The BITS in the tn3270eRtCollCtlType object have the following meanings: 888 o aggregate(0) - If this bit is set to 1, then data SHOULD be 889 aggregated for the whole client group. In this case there will be 890 only one row created for the collection in the tn3270eRtDataTable. 891 The first two indexes for this row, tn3270eSrvrConfIndex and 892 tn3270eClientGroupName, will have the same values as the indexes for 893 the corresponding tn3270eRtCollCtlEntry. The third and fourth 894 indexes of an aggregated tn3270eRtDataEntry have the values 895 unknown(0) (tn3270eRtDataClientAddrType) and a zero-length octet 896 string (tn3270eRtDataClientAddress). The fifth index, 897 tn3270eRtDataClientPort, has the value 0. 899 If this bit is set to 0, then a separate entry is created in the 900 tn3270eRtDataTable for each member of the client group. In this 901 case tn3270eRtDataClientAddress contains the client's actual IP 902 Address, tn3270eRtDataClientAddrType indicates the address type, and 903 tn3270eRtDataClientPort contains the number of the port the client 904 is using for its TN3270/TN3270E session. 906 o excludeIpComponent(1) - If this bit is set to 1, then the server 907 SHOULD exclude the IP-network component from all the response times 908 for this collection. If the target SNA application specifies DR in 909 any of its replies, this DR will still be passed down to the client, 910 and the client's response will still be forwarded to the 911 application. But this response will play no role in the server's 912 response time calculations. 914 If this bit is set to 0, then the server includes in the collection 915 only those transactions for which it can include an (approximate) 916 IP-network component in the total response time for the transaction. 917 This component MAY be derived from a "natural" DR (if the client 918 supports the RESPONSES function), from a dynamic DR introduced by 919 the server (if the client supports the RESPONSES function and the 920 ddr(2) bit has been set to 1), or from TIMING-MARK processing (if 921 the client supports TIMING-MARKs). 923 If this bit is set to 1, then the ddr(2) bit is ignored, since there 924 is no reason for the server to request additional responses from the 925 client(s) in the group. 927 o ddr(2) - If this bit is set to 1, then the server SHOULD, for those 928 clients in the group that support the RESPONSES function, add a DR 929 request to the FIC reply in each transaction, and use the client's 930 subsequent response for calculating an (approximate) IP-network 931 component to include in the transaction's total response times. 933 If this bit is set to 0, then the server does not add a DR request 934 that it was not otherwise going to add to any replies from the 935 target SNA application. 937 If the excludeIpComponent(1) bit is set to 1, then this bit is 938 ignored by the server. 940 o average(3) - If this bit is set to 1, then the server SHOULD 941 calculate a sliding-window average for the collection, based on the 942 parameters specified for the group. 944 If this bit is set to 0, then an average is not calculated. In this 945 case the tn3270eRtExceeded and tn3270eRtOkay notifications are not 946 generated, even if the traps(5) bit is set to 1. 948 o buckets(4) - If this bit is set to 1, then the server SHOULD create 949 and increment response time buckets for the collection, based on the 950 parameters specified for the group. 952 If this bit is set to 0, then response time buckets are not created. 954 o traps(5) - If this bit is set to 1, then a TN3270E Server is enabled 955 to generate notifications pertaining to an tn3270eCollCtlEntry. 956 tn3270CollStart and tn3270CollEnd generation is enabled simply by 957 traps(5) being set to 1. tn3270eRtExceeded and tn3270eRtOkay 958 generation enablement requires that average(3) be set to 1 in 959 addition to the traps(5) requirement. 961 If traps(5) is set to 0, then none of the notifications defined in 962 this MIB are generated for a particular tn3270eRtCollCtlEntry. 964 Either the average(3) or the buckets(4) bit MUST be set to 1 in order 965 for response time data collection to occur; both bits MAY be set to 1. 966 If the average(3) bit is set to 1, then the following objects have 967 meaning, and are used to control the calculation of the averages, as 968 well as the generation of the two notifications related to them: 970 o tn3270eRtCollCtlSPeriod 971 o tn3270eRtCollCtlSPMult 972 o tn3270eRtCollCtlThreshHigh 973 o tn3270eRtCollCtlThreshLow 974 o tn3270eRtCollCtlIdleCount 976 The previous objects' values are meaningless if the associated 977 average(3) bit is not set to 1. 979 If the buckets(4) bit is set to 1, then the following objects have 980 meaning, and specify the bucket boundaries: 982 o tn3270eRtCollCtlBucketBndry1 983 o tn3270eRtCollCtlBucketBndry2 984 o tn3270eRtCollCtlBucketBndry3 985 o tn3270eRtCollCtlBucketBndry4 987 The previous objects' values are meaningless if the associated 988 buckets(4) bit is not set to 1. 990 If an entry in the tn3270RtCollCtlTable has the value active(1) for its 991 RowStatus, then an implementation SHALL NOT allow Set operations for any 992 objects in the entry except: 994 o tn3270eRtCollCtlThreshHigh 995 o tn3270eRtCollCtlThreshLow 996 o tn3270eRtCollCtlRowStatus 998 4.2 tn3270eRtDataTable 1000 Either a single entry or multiple entries are created in the 1001 tn3270eRtDataTable for each tn3270eRtCollCtlEntry, depending on whether 1002 tn3270eRtCollCtlType in the control entry has aggregate(0) selected. 1003 The contents of an entry in the tn3270eRtDataTable depend on the 1004 contents of the corresponding entry in the tn3270eRtCollCtlTable: as 1005 described above, some objects in the data entry return meaningful values 1006 only when the average(3) option is selected in the control entry, while 1007 others return meaningful values only when the buckets(4) option is 1008 selected. If both options are selected, then all the objects return 1009 meaningful values. When an object is not specified to return a 1010 meaningful value, an implementation may return any syntactically valid 1011 value in response to a Get operation. 1013 The following objects return meaningful values if and only if the 1014 average(3) option was selected in the corresponding 1015 tn3270eRtCollCtlEntry: 1017 o tn3270eRtDataAvgRt 1018 o tn3270eRtDataAvgIpRt 1019 o tn3270eRtDataAvgCountTrans 1020 o tn3270eRtDataIntTimeStamp 1021 o tn3270eRtDataTotalRts 1022 o tn3270eRtDataTotalIpRts 1023 o tn3270eRtDataCountTrans 1024 o tn3270eRtDataCountDrs 1025 o tn3270eRtDataElapsRndTrpSq 1026 o tn3270eRtDataElapsIpRtSq 1028 The first three objects in this list return values derived from the 1029 sliding-window average calculations described earlier. The time of the 1030 most recent sample for these calculations is returned in the 1031 tn3270eRtDataIntTimeStamp object. The next four objects are normal 1032 Counter32 objects, maintaining counts of total response time and total 1033 transactions. The last two objects return sum of the squares values, to 1034 enable variance calculations by a management application. 1036 The following objects return meaningful values if and only if the 1037 buckets(4) option was selected in the corresponding 1038 tn3270eRtCollCtlEntry: 1040 o tn3270eRtDataBucket1Rts 1041 o tn3270eRtDataBucket2Rts 1042 o tn3270eRtDataBucket3Rts 1043 o tn3270eRtDataBucket4Rts 1044 o tn3270eRtDataBucket5Rts 1046 A discontinuity object, tn3270eRtDataDiscontinuityTime, can be used by a 1047 management application to detect when the values of the counter objects 1048 in this table may have been reset, or otherwise experienced a 1049 discontinuity. A possible cause for such a discontinuity is the TN3270E 1050 server's being stopped or restarted. This object returns a meaningful 1051 value regardless of which collection control options were selected. 1053 An object, tn3270eRtDataRtMethod, identifies whether the IP Network Time 1054 was calculated using either the definite response or TIMING-MARK 1055 approach. 1057 When an entry is created in the tn3270eRtCollCtlTable with its 1058 tn3270eRtCollCtlType aggregate(0) bit set to 1, an entry is 1059 automatically created in the tn3270eRtDataTable; this entry's 1060 tn3270eRtDataClientAddress has the value of a zero-length octet string, 1061 its tn3270eRtDataClientAddrType has the value of unknown(0), and its 1062 tn3270eRtDataClientPort has the value 0. 1064 When an entry is created in the tn3270eRtCollCtlTable with its 1065 tn3270eRtCollCtlType aggregate(0) bit set to 0, a separate entry is 1066 created in the tn3270eRtDataTable for each member of the client group 1067 that currently has a session with the TN3270E server. Entries are 1068 subsequently created for clients that the TN3270E server determines to 1069 be members of the client group when these clients establish sessions 1070 with the server. Entries are also created when clients with existing 1071 sessions are added to the group. 1073 All entries associated with a tn3270eRtCollCtlEntry are deleted from the 1074 tn3270eRtDataTable when that entry is deleted from the 1075 tn3270eRtCollCtlTable. An entry for an individual client in a client 1076 group is deleted when its TCP connection terminates. Once it has been 1077 created, a client's entry in the tn3270eRtDataTable remains active as 1078 long as the collection's tn3270eRtCollCtlEntry exists, even if the 1079 client is removed from the client group for the tn3270eRtCollCtlEntry. 1081 4.3 Notifications 1083 This MIB defines four notifications related to a tn3270eRtDataEntry. If 1084 the associated tn3270eRtCollCtlType object's traps(5) bit is set to 1, 1085 then the tn3270RtCollStart and tn3270RtCollEnd notifications are 1086 generated when, respsectively, the tn3270eRtDataEntry is created and 1087 deleted. If, in addition, this tn3270eRtCollCtlType object's average(3) 1088 bit is set to 1, then the the tn3270eRtExceeded and tn3270eRtOkay 1089 notifications are generated when the conditions they report occur. 1091 The following notifications are defined by this MIB: 1093 o tn3270eRtExceeded - The purpose of this notification is to signal 1094 that a performance problem has been detected. If average(3) 1095 response time data is being collected, then this notification is 1096 generated whenever (1) an average response time is first found, on a 1097 collection interval boundary, to have exceeded the high threshold 1098 tn3270eRtCollCtlThreshHigh specified for the client group, AND (2) 1099 the sample on which the average is based is determined to have been 1100 a significant one, via the significance algorithm described earlier. 1101 This notification is not generated again for a tn3270eRtDataEntry 1102 until an average response time falling below the low threshold 1103 tn3270eRtCollCtlThreshLow specified for the client group has 1104 occurred for the entry. 1106 o tn3270eRtOkay - The purpose of this notification is to signal that a 1107 previously reported performance problem has been resolved. If 1108 average(3) response time data is being collected, then this 1109 notification is generated whenever (1) a tn3270eRtExceeded 1110 notification has already been generated, AND (2) an average response 1111 time is first found, on a collection interval boundary, to have 1112 fallen below the low threshold tn3270eRtCollCtlThreshLow specified 1113 for the client group. This notification is not generated again for 1114 a tn3270eRtDataEntry until an average response time exceeding the 1115 high threshold tn3270eRtCollCtlThreshHigh specified for the client 1116 group has occurred for the entry. 1118 Taken together, the two preceding notifications serve to minimize the 1119 generation of an excessive number of traps in the case of an average 1120 response time that oscillates about its high threshold. 1122 o tn3270eRtCollStart - This notification is generated whenever data 1123 collection begins for a client group, or when a new 1124 tn3270eRtDataEntry becomes active. The primary purpose of this 1125 notification is signal to a management application that a new client 1126 TCP session has been established, and to provide the IP-to-resource 1127 mapping for the session. This notification is not critical when 1128 average(3) data collection is not being performed for the client 1129 group. 1131 o tn3270eRtCollEnd - This notification is generated whenever a data 1132 collection ends. For an aggregate collection, this occurs when the 1133 corresponding tn3270eRtCollCtlEntry is deleted. For an individual 1134 collection, this occurs either when the tn3270eRtCollCtlEntry is 1135 deleted, or when the client's TCP connection terminates. The 1136 purpose of this notification is to enable a management application 1137 to complete a monitoring function that it was performing, by 1138 returning final values for the collection's data objects. 1140 4.4 Advisory Spin Lock Usage 1142 Within the TN3270E-RT-MIB, tn3270eRtSpinLock is defined as an advisory 1143 lock that allows cooperating TN3270E-RT-MIB applications to coordinate 1144 their use of the tn3270eRtCollCtlTable. When creating a new entry or 1145 altering an existing entry in the tn3270eRtCollCtlTable, an application 1146 SHOULD make use of tn3270eRtSpinLock to serialize application changes or 1147 additions. Since this is an advisory lock, its use by management 1148 applications SHALL NOT be enforced by agents. Agents MUST, however, 1149 implement the tn3270eRtSpinLock object. 1151 5.0 Definitions 1153 TN3270E-RT-MIB DEFINITIONS ::= BEGIN 1155 IMPORTS 1156 MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, 1157 Counter32, Unsigned32, Gauge32 1158 FROM SNMPv2-SMI 1159 RowStatus, DateAndTime, TimeStamp, TestAndIncr 1160 FROM SNMPv2-TC 1161 MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP 1162 FROM SNMPv2-CONF 1163 Tn3270eTAddress, tn3270eSrvrConfIndex, 1164 tn3270eClientGroupName, tn3270eResMapElementType 1165 FROM TN3270E-MIB 1166 IANATn3270eAddrType 1167 FROM IANATn3270eTC-MIB 1168 snanauMIB 1169 FROM SNA-NAU-MIB; 1171 tn3270eRtMIB MODULE-IDENTITY 1172 LAST-UPDATED "9806050000Z" -- June 5, 1998 1173 ORGANIZATION "TN3270E Working Group" 1174 CONTACT-INFO 1175 "Kenneth White (kennethw@vnet.ibm.com) 1176 IBM Corp. - Dept. BRQA/Bldg. 501/G114 1177 P.O. Box 12195 1178 3039 Cornwallis 1179 RTP, NC 27709-2195 1181 Robert Moore (remoore@us.ibm.com) 1182 IBM Corp. - Dept. BRQA/Bldg. 501/G114 1183 P.O. Box 12195 1184 3039 Cornwallis 1185 RTP, NC 27709-2195 1186 (919) 254-4436" 1187 DESCRIPTION 1188 "This module defines a portion of the management 1189 information base (MIB) that enables monitoring of 1190 TN3270 and TN3270E clients' response times by a 1191 TN3270E server." 1192 ::= { snanauMIB 9 } 1193 -- snanauMIB ::= { mib-2 34 } 1195 -- Top level structure of the MIB 1197 tn3270eRtNotifications OBJECT IDENTIFIER ::= { tn3270eRtMIB 0 } 1198 tn3270eRtObjects OBJECT IDENTIFIER ::= { tn3270eRtMIB 1 } 1199 tn3270eRtConformance OBJECT IDENTIFIER ::= { tn3270eRtMIB 3 } 1201 -- MIB Objects 1203 -- Response Time Control Table 1205 tn3270eRtCollCtlTable OBJECT-TYPE 1206 SYNTAX SEQUENCE OF Tn3270eRtCollCtlEntry 1207 MAX-ACCESS not-accessible 1208 STATUS current 1209 DESCRIPTION 1210 "The response time monitoring collection control table, 1211 which allows a management application to control the 1212 types of response time data being collected, and the 1213 clients for which it is being collected. 1215 This table is indexed by tn3270eSrvrConfIndex and 1216 tn3270eClientGroupName imported from the 1217 TN3270E-MIB. tn3270eSrvrConfIndex indicates within 1218 a host which TN3270E server an entry applies to. 1219 tn3270eClientGroupName it identifies the set of IP 1220 clients for which response time data is being collected. 1221 The particular IP clients making up the set are identified 1222 in the tn3270eClientGroupTable in the TN3270E-MIB." 1223 ::= { tn3270eRtObjects 1} 1225 tn3270eRtCollCtlEntry OBJECT-TYPE 1226 SYNTAX Tn3270eRtCollCtlEntry 1227 MAX-ACCESS not-accessible 1228 STATUS current 1229 DESCRIPTION 1230 "An entry in the TN3270E response time monitoring collection 1231 control table. To handle the case of multiple TN3270E 1232 servers on the same host, the first index of this table is 1233 the tn3270eSrvrConfIndex from the TN3270E-MIB." 1234 INDEX { 1235 tn3270eSrvrConfIndex, -- Server's index 1236 tn3270eClientGroupName } -- What to collect on 1238 ::= { tn3270eRtCollCtlTable 1 } 1240 Tn3270eRtCollCtlEntry ::= SEQUENCE { 1241 tn3270eRtCollCtlType BITS, 1242 tn3270eRtCollCtlSPeriod Unsigned32, 1243 tn3270eRtCollCtlSPMult Unsigned32, 1244 tn3270eRtCollCtlThreshHigh Unsigned32, 1245 tn3270eRtCollCtlThreshLow Unsigned32, 1246 tn3270eRtCollCtlIdleCount Unsigned32, 1247 tn3270eRtCollCtlBucketBndry1 Unsigned32, 1248 tn3270eRtCollCtlBucketBndry2 Unsigned32, 1249 tn3270eRtCollCtlBucketBndry3 Unsigned32, 1250 tn3270eRtCollCtlBucketBndry4 Unsigned32, 1251 tn3270eRtCollCtlRowStatus RowStatus } 1253 -- The OID { tn3270eRtCollCtlEntry 1 } is not used 1255 tn3270eRtCollCtlType OBJECT-TYPE 1256 SYNTAX BITS { 1257 aggregate(0), 1258 excludeIpComponent(1), 1259 ddr(2), 1260 average(3), 1261 buckets(4), 1262 traps(5) 1263 } 1264 MAX-ACCESS read-create 1265 STATUS current 1266 DESCRIPTION 1267 "This object controls what types of response time data to 1268 collect, whether to summarize the data across the members 1269 of a client group or keep it individually, whether to 1270 introduce dynamic definite responses, and whether to 1271 generate traps. 1273 aggregate(0) - Aggregate response time data for the 1274 client group as a whole. If this bit 1275 is set to 0, then maintain response 1276 time data separately for each member 1277 of the client group. 1278 excludeIpComponent(1) - Do not include the IP-network 1279 component in any response times. 1280 ddr(2) - Enable dynamic definite response. 1281 average(3) - Produce an average response time 1282 based on a specified collection 1283 interval. 1284 buckets(4) - Maintain tn3270eRtDataBucket values in 1285 a corresponding tn3270eRtDataEntry, 1286 based on the bucket boundaries specified 1287 in the tn3270eRtCollCtlBucketBndry 1288 objects . 1289 traps(5) - generate the notifications specified 1290 in this MIB module. The 1291 tn3270eRtExceeded and tn3270eRtOkay 1292 notifications are generated only if 1293 average(3) is also specified." 1294 ::= { tn3270eRtCollCtlEntry 2 } 1296 tn3270eRtCollCtlSPeriod OBJECT-TYPE 1297 SYNTAX Unsigned32 (15..86400) -- 15 second min, 24 hour max 1298 UNITS "seconds" 1299 MAX-ACCESS read-create 1300 STATUS current 1301 DESCRIPTION 1302 "The number of seconds that defines the sample period. 1303 The actual interval is defined as tn3270eRtCollCtlSPeriod 1304 times tn3270eRtCollCtlSPMult. 1306 The value of this object is used only if the corresponding 1307 tn3270eRtCollCtlType has the average(3) setting." 1308 DEFVAL {20} -- 20 seconds 1309 ::= { tn3270eRtCollCtlEntry 3 } 1311 tn3270eRtCollCtlSPMult OBJECT-TYPE 1312 SYNTAX Unsigned32 (1..5760) -- 5760 x SPeriod of 15 is 24 hours 1313 UNITS "period" 1314 MAX-ACCESS read-create 1315 STATUS current 1316 DESCRIPTION 1317 "The sample period multiplier; this value is multiplied by 1318 the sample period, tn3270eRtCollCtlSPeriod, to determine 1319 the collection interval. 1321 Sliding-window average calculation can, if necessary, be 1322 disabled, by setting the sample period multiplier, 1323 tn3270eRtCollCtlSPMult, to 1, and setting the sample 1324 period, tn3270eRtCollCtlSPeriod, to the required 1325 collection interval. 1327 The value of this object is used only if the corresponding 1328 tn3270eRtCollCtlType has the average(3) setting." 1329 DEFVAL { 30 } -- yields an interval of 10 minutes when 1330 -- used with the default SPeriod value 1331 ::= { tn3270eRtCollCtlEntry 4 } 1333 tn3270eRtCollCtlThreshHigh OBJECT-TYPE 1334 SYNTAX Unsigned32 1335 UNITS "seconds" 1336 MAX-ACCESS read-create 1337 STATUS current 1338 DESCRIPTION 1339 "The threshold for generating a tn3270eRtExceeded 1340 notification, signalling that a monitored total response 1341 time has exceeded the specified limit. A value of zero 1342 for this object suppresses generation of this notification. 1343 The value of this object is used only if the corresponding 1344 tn3270eRtCollCtlType has average(3) and traps(5) selected." 1345 DEFVAL { 0 } -- suppress notifications 1346 ::= { tn3270eRtCollCtlEntry 5 } 1348 tn3270eRtCollCtlThreshLow OBJECT-TYPE 1349 SYNTAX Unsigned32 1350 UNITS "seconds" 1351 MAX-ACCESS read-create 1352 STATUS current 1353 DESCRIPTION 1354 "The threshold for generating a tn3270eRtOkay notification, 1355 signalling that a monitored total response time has fallen 1356 below the specified limit. A value of zero for this object 1357 suppresses generation of this notification. The value of 1358 this object is used only if the corresponding 1359 tn3270eRtCollCtlType has average(3) and traps(5) selected." 1360 DEFVAL { 0 } -- suppress notifications 1361 ::= { tn3270eRtCollCtlEntry 6 } 1363 tn3270eRtCollCtlIdleCount OBJECT-TYPE 1364 SYNTAX Unsigned32 1365 UNITS "transactions" 1366 MAX-ACCESS read-create 1367 STATUS current 1368 DESCRIPTION 1369 "The value of this object is used to determine whether a 1370 sample that yields an average response time exceeding the 1371 value of tn3270eRtCollCtlThreshHigh was a statistically 1372 valid one. If the following statement is true, then the 1373 sample was statistically valid, and so a tn3270eRtExceeded 1374 notification should be generated: 1376 AvgCountTrans * ((AvgRt/ThreshHigh - 1) ** 2) >= IdleCount 1378 This comparison is done only if the corresponding 1379 tn3270eRtCollCtlType has average(3) and traps(5) selected." 1380 DEFVAL { 1 } 1381 ::= { tn3270eRtCollCtlEntry 7 } 1383 tn3270eRtCollCtlBucketBndry1 OBJECT-TYPE 1384 SYNTAX Unsigned32 1385 UNITS "tenths of seconds" 1386 MAX-ACCESS read-create 1387 STATUS current 1388 DESCRIPTION 1389 "The value of this object defines the range of transaction 1390 response times counted in the Tn3270eRtDataBucket1Rts 1391 object: those less than or equal to this value." 1392 DEFVAL { 10 } 1393 ::= { tn3270eRtCollCtlEntry 8 } 1395 tn3270eRtCollCtlBucketBndry2 OBJECT-TYPE 1396 SYNTAX Unsigned32 1397 UNITS "tenths of seconds" 1398 MAX-ACCESS read-create 1399 STATUS current 1400 DESCRIPTION 1401 "The value of this object, together with that of the 1402 tn3270eRtCollCtlBucketBndry1 object, defines the range 1403 of transaction response times counted in the 1404 Tn3270eRtDataBucket2Rts object: those greater than the 1405 value of the tn3270eRtCollCtlBucketBndry1 object, and 1406 less than or equal to the value of this object." 1407 DEFVAL { 20 } 1408 ::= { tn3270eRtCollCtlEntry 9 } 1410 tn3270eRtCollCtlBucketBndry3 OBJECT-TYPE 1411 SYNTAX Unsigned32 1412 UNITS "tenths of seconds" 1413 MAX-ACCESS read-create 1414 STATUS current 1415 DESCRIPTION 1416 "The value of this object, together with that of the 1417 tn3270eRtCollCtlBucketBndry2 object, defines the range of 1418 transaction response times counted in the 1419 Tn3270eRtDataBucket3Rts object: those greater than the 1420 value of the tn3270eRtCollCtlBucketBndry2 object, and less 1421 than or equal to the value of this object." 1422 DEFVAL { 50 } 1423 ::= { tn3270eRtCollCtlEntry 10 } 1425 tn3270eRtCollCtlBucketBndry4 OBJECT-TYPE 1426 SYNTAX Unsigned32 1427 UNITS "tenths of seconds" 1428 MAX-ACCESS read-create 1429 STATUS current 1430 DESCRIPTION 1431 "The value of this object, together with that of the 1432 tn3270eRtCollCtlBucketBndry3 object, defines the range 1433 of transaction response times counted in the 1434 Tn3270eRtDataBucket4Rts object: those greater than the 1435 value of the tn3270eRtCollCtlBucketBndry3 object, and 1436 less than or equal to the value of this object. 1438 The value of this object also defines the range of 1439 transaction response times counted in the 1440 Tn3270eRtDataBucket5Rts object: those greater than the 1441 value of this object." 1442 DEFVAL { 100 } 1443 ::= { tn3270eRtCollCtlEntry 11 } 1445 tn3270eRtCollCtlRowStatus OBJECT-TYPE 1446 SYNTAX RowStatus 1447 MAX-ACCESS read-create 1448 STATUS current 1449 DESCRIPTION 1450 "This object allows entries to be created and deleted 1451 in the tn3270eRtCollCtlTable. An entry in this table 1452 is deleted by setting this object to destroy(6). 1453 Deleting an entry in this table has the side-effect 1454 of removing all entries from the tn3270eRtDataTable 1455 that are associated with the entry being deleted." 1456 ::= { tn3270eRtCollCtlEntry 12 } 1458 -- TN3270E Response Time Data Table 1460 tn3270eRtDataTable OBJECT-TYPE 1461 SYNTAX SEQUENCE OF Tn3270eRtDataEntry 1462 MAX-ACCESS not-accessible 1463 STATUS current 1464 DESCRIPTION 1465 "The response time data table. Entries in this table are 1466 created based on entries in the tn3270eRtCollCtlTable." 1467 ::= { tn3270eRtObjects 2 } 1469 tn3270eRtDataEntry OBJECT-TYPE 1470 SYNTAX Tn3270eRtDataEntry 1471 MAX-ACCESS not-accessible 1472 STATUS current 1473 DESCRIPTION 1474 "Entries in this table are created based upon the 1475 tn3270eRtCollCtlTable. When the corresponding 1476 tn3270eRtCollCtlType has aggregate(0) specified, a single 1477 entry is created in this table, with a tn3270eRtDataClientAddrType 1478 of unknown(0), a zero-length octet string value for 1479 tn3270eRtDataClientAddress, and a tn3270eRtDataClientPort value of 1480 0. When aggregate(0) is not specified, a separate entry is 1481 created for each client in the group. 1483 Note that the following objects defined within an entry in this 1484 table can wrap: 1485 tn3270eRtDataTotalRts 1486 tn3270eRtDataTotalIpRts 1487 tn3270eRtDataCountTrans 1488 tn3270eRtDataCountDrs 1489 tn3270eRtDataElapsRnTrpSq 1490 tn3270eRtDataElapsIpRtSq 1491 tn3270eRtDataBucket1Rts 1492 tn3270eRtDataBucket2Rts 1493 tn3270eRtDataBucket3Rts 1494 tn3270eRtDataBucket4Rts 1495 tn3270eRtDataBucket5Rts" 1496 INDEX { 1497 tn3270eSrvrConfIndex, -- Server's local index 1498 tn3270eClientGroupName, -- Collection target 1499 tn3270eRtDataClientAddrType, 1500 tn3270eRtDataClientAddress, 1501 tn3270eRtDataClientPort } 1502 ::= { tn3270eRtDataTable 1 } 1504 Tn3270eRtDataEntry ::= SEQUENCE { 1505 tn3270eRtDataClientAddrType IANATn3270eAddrType, 1506 tn3270eRtDataClientAddress Tn3270eTAddress, 1507 tn3270eRtDataClientPort Unsigned32, 1508 tn3270eRtDataAvgRt Gauge32, 1509 tn3270eRtDataAvgIpRt Gauge32, 1510 tn3270eRtDataAvgCountTrans Gauge32, 1511 tn3270eRtDataIntTimeStamp DateAndTime, 1512 tn3270eRtDataTotalRts Counter32, 1513 tn3270eRtDataTotalIpRts Counter32, 1514 tn3270eRtDataCountTrans Counter32, 1515 tn3270eRtDataCountDrs Counter32, 1516 tn3270eRtDataElapsRndTrpSq Unsigned32, 1517 tn3270eRtDataElapsIpRtSq Unsigned32, 1518 tn3270eRtDataBucket1Rts Counter32, 1519 tn3270eRtDataBucket2Rts Counter32, 1520 tn3270eRtDataBucket3Rts Counter32, 1521 tn3270eRtDataBucket4Rts Counter32, 1522 tn3270eRtDataBucket5Rts Counter32, 1523 tn3270eRtDataRtMethod INTEGER, 1524 tn3270eRtDataDiscontinuityTime TimeStamp 1525 } 1527 tn3270eRtDataClientAddrType OBJECT-TYPE 1528 SYNTAX IANATn3270eAddrType 1529 MAX-ACCESS not-accessible 1530 STATUS current 1531 DESCRIPTION 1532 "Indicates the type of address represented by the value 1533 of tn3270eRtDataClientAddress. The value unknown(0) is 1534 used if aggregate data is being collected for the client 1535 group." 1536 ::= { tn3270eRtDataEntry 1 } 1538 tn3270eRtDataClientAddress OBJECT-TYPE 1539 SYNTAX Tn3270eTAddress 1540 MAX-ACCESS not-accessible 1541 STATUS current 1542 DESCRIPTION 1543 "Contains the IP address of the TN3270 client being 1544 monitored. A zero-length octet string is used if 1545 aggregate data is being collected for the client group." 1546 ::= { tn3270eRtDataEntry 2 } 1548 tn3270eRtDataClientPort OBJECT-TYPE 1549 SYNTAX Unsigned32(0..65535) 1550 MAX-ACCESS not-accessible 1551 STATUS current 1552 DESCRIPTION 1553 "Contains the client port number of the TN3270 client being 1554 monitored. The value 0 is used if aggregate data is being 1555 collected for the client group, or if the 1556 tn3270eRtDataClientAddrType identifies an address type that 1557 does not support ports." 1558 ::= { tn3270eRtDataEntry 3 } 1560 tn3270eRtDataAvgRt OBJECT-TYPE 1561 SYNTAX Gauge32 1562 UNITS "tenths of seconds" 1563 MAX-ACCESS read-only 1564 STATUS current 1565 DESCRIPTION 1566 "The average total response time measured over the last 1567 collection interval." 1568 DEFVAL { 0 } 1569 ::= { tn3270eRtDataEntry 4 } 1571 tn3270eRtDataAvgIpRt OBJECT-TYPE 1572 SYNTAX Gauge32 1573 UNITS "tenths of seconds" 1574 MAX-ACCESS read-only 1575 STATUS current 1576 DESCRIPTION 1577 "The average IP response time measured over the last 1578 collection interval." 1579 DEFVAL { 0 } 1580 ::= { tn3270eRtDataEntry 5 } 1582 tn3270eRtDataAvgCountTrans OBJECT-TYPE 1583 SYNTAX Gauge32 1584 UNITS "transactions" 1585 MAX-ACCESS read-only 1586 STATUS current 1587 DESCRIPTION 1588 "The sliding transaction count used for calculating the 1589 values of the tn3270eRtDataAvgRt and tn3270eRtDataAvgIpRt 1590 objects. The actual transaction count is available in 1591 the tn3270eRtDataCountTrans object. 1593 The initial value of this object, before any averages have 1594 been calculated, is 0." 1595 ::= { tn3270eRtDataEntry 6 } 1597 tn3270eRtDataIntTimeStamp OBJECT-TYPE 1598 SYNTAX DateAndTime 1599 MAX-ACCESS read-only 1600 STATUS current 1601 DESCRIPTION 1602 "The date and time of the last interval that 1603 tn3270eRtDataAvgRt, tn3270eRtDataAvgIpRt, and 1604 tn3270eRtDataAvgCountTrans were calculated. 1606 Prior to the calculation of the first interval 1607 averages, this object returns the value 1608 0x0000000000000000000000. When this value is 1609 returned, the remaining objects in the entry have 1610 no significance." 1611 ::= { tn3270eRtDataEntry 7 } 1613 tn3270eRtDataTotalRts OBJECT-TYPE 1614 SYNTAX Counter32 1615 UNITS "tenths of seconds" 1616 MAX-ACCESS read-only 1617 STATUS current 1618 DESCRIPTION 1619 "The count of the total response times collected. 1621 A management application can detect discontinuities in this 1622 counter by monitoring the tn3270eRtDataDiscontinuityTime 1623 object." 1624 ::= { tn3270eRtDataEntry 8 } 1626 tn3270eRtDataTotalIpRts OBJECT-TYPE 1627 SYNTAX Counter32 1628 UNITS "tenths of seconds" 1629 MAX-ACCESS read-only 1630 STATUS current 1631 DESCRIPTION 1632 "The count of the total IP-network response times 1633 collected. 1635 A management application can detect discontinuities in this 1636 counter by monitoring the tn3270eRtDataDiscontinuityTime 1637 object." 1638 ::= { tn3270eRtDataEntry 9 } 1640 tn3270eRtDataCountTrans OBJECT-TYPE 1641 SYNTAX Counter32 1642 UNITS "transactions" 1643 MAX-ACCESS read-only 1644 STATUS current 1645 DESCRIPTION 1646 "The count of the total number of transactions detected. 1648 A management application can detect discontinuities in this 1649 counter by monitoring the tn3270eRtDataDiscontinuityTime 1650 object." 1651 ::= { tn3270eRtDataEntry 10 } 1653 tn3270eRtDataCountDrs OBJECT-TYPE 1654 SYNTAX Counter32 1655 UNITS "definite responses" 1656 MAX-ACCESS read-only 1657 STATUS current 1658 DESCRIPTION 1659 "The count of the total number of definite responses 1660 detected. 1662 A management application can detect discontinuities in this 1663 counter by monitoring the tn3270eRtDataDiscontinuityTime 1664 object." 1665 ::= { tn3270eRtDataEntry 11 } 1667 tn3270eRtDataElapsRndTrpSq OBJECT-TYPE 1668 SYNTAX Unsigned32 1669 UNITS "tenths of seconds squared" 1670 MAX-ACCESS read-only 1671 STATUS current 1672 DESCRIPTION 1673 "The sum of the elapsed round trip time squared. The sum 1674 of the squares is kept in order to enable calculation of 1675 a variance." 1676 DEFVAL { 0 } 1677 ::= { tn3270eRtDataEntry 12 } 1679 tn3270eRtDataElapsIpRtSq OBJECT-TYPE 1680 SYNTAX Unsigned32 1681 UNITS "tenths of seconds squared" 1682 MAX-ACCESS read-only 1683 STATUS current 1684 DESCRIPTION 1685 "The sum of the elapsed IP round trip time squared. 1686 The sum of the squares is kept in order to enable 1687 calculation of a variance." 1688 DEFVAL { 0 } 1689 ::= { tn3270eRtDataEntry 13 } 1691 tn3270eRtDataBucket1Rts OBJECT-TYPE 1692 SYNTAX Counter32 1693 MAX-ACCESS read-only 1694 STATUS current 1695 DESCRIPTION 1696 "The count of the response times falling into bucket 1. 1698 A management application can detect discontinuities in this 1699 counter by monitoring the tn3270eRtDataDiscontinuityTime 1700 object." 1701 ::= { tn3270eRtDataEntry 14 } 1703 tn3270eRtDataBucket2Rts OBJECT-TYPE 1704 SYNTAX Counter32 1705 MAX-ACCESS read-only 1706 STATUS current 1707 DESCRIPTION 1708 "The count of the response times falling into bucket 2. 1710 A management application can detect discontinuities in this 1711 counter by monitoring the tn3270eRtDataDiscontinuityTime 1712 object." 1713 ::= { tn3270eRtDataEntry 15 } 1715 tn3270eRtDataBucket3Rts OBJECT-TYPE 1716 SYNTAX Counter32 1717 MAX-ACCESS read-only 1718 STATUS current 1719 DESCRIPTION 1720 "The count of the response times falling into bucket 3. 1722 A management application can detect discontinuities in this 1723 counter by monitoring the tn3270eRtDataDiscontinuityTime 1724 object." 1725 ::= { tn3270eRtDataEntry 16 } 1727 tn3270eRtDataBucket4Rts OBJECT-TYPE 1728 SYNTAX Counter32 1729 MAX-ACCESS read-only 1730 STATUS current 1731 DESCRIPTION 1732 "The count of the response times falling into bucket 4. 1734 A management application can detect discontinuities in this 1735 counter by monitoring the tn3270eRtDataDiscontinuityTime 1736 object." 1737 ::= { tn3270eRtDataEntry 17 } 1739 tn3270eRtDataBucket5Rts OBJECT-TYPE 1740 SYNTAX Counter32 1741 MAX-ACCESS read-only 1742 STATUS current 1743 DESCRIPTION 1744 "The count of the response times falling into bucket 5. 1746 A management application can detect discontinuities in this 1747 counter by monitoring the tn3270eRtDataDiscontinuityTime 1748 object." 1749 ::= { tn3270eRtDataEntry 18 } 1751 tn3270eRtDataRtMethod OBJECT-TYPE 1752 SYNTAX INTEGER { 1753 none(0), 1754 responses(1), 1755 timingMark(2) 1756 } 1757 MAX-ACCESS read-only 1758 STATUS current 1759 DESCRIPTION 1760 "The value of this object indicates the method that was 1761 used in calculating the IP network time. 1763 The value 'none(0) indicates that response times were not 1764 calculated for the IP network." 1765 ::= { tn3270eRtDataEntry 19 } 1767 tn3270eRtDataDiscontinuityTime OBJECT-TYPE 1768 SYNTAX TimeStamp 1769 MAX-ACCESS read-only 1770 STATUS current 1771 DESCRIPTION 1772 "The value of sysUpTime on the most recent occasion at 1773 which one or more of this entry's counter objects 1774 suffered a discontinuity. This may happen if a TN3270E 1775 server is stopped and then restarted, and local methods 1776 are used to set up collection policy 1777 (tn3270eRtCollCtlTable entries)." 1778 ::= { tn3270eRtDataEntry 20 } 1780 tn3270eRtSpinLock OBJECT-TYPE 1781 SYNTAX TestAndIncr 1782 MAX-ACCESS read-write 1783 STATUS current 1784 DESCRIPTION 1785 "An advisory lock used to allow cooperating TN3270E-RT-MIB 1786 applications to coordinate their use of the 1787 tn3270eRtCollCtlTable. 1789 When creating a new entry or altering an existing entry 1790 in the tn3270eRtCollCtlTable, an application should make 1791 use of tn3270eRtSpinLock to serialize application changes 1792 or additions. 1794 Since this is an advisory lock, the use of this lock is 1795 not enforced." 1796 ::= { tn3270eRtObjects 3 } 1798 -- Notifications 1800 tn3270eRtExceeded NOTIFICATION-TYPE 1801 OBJECTS { 1802 tn3270eRtDataIntTimeStamp, 1803 tn3270eRtDataAvgRt, 1804 tn3270eRtDataAvgIpRt, 1805 tn3270eRtDataAvgCountTrans, 1806 tn3270eRtDataRtMethod 1807 } 1808 STATUS current 1809 DESCRIPTION 1810 "This notification is generated when the average response 1811 time, tn3270eRtDataAvgRt, exceeds 1812 tn3270eRtCollCtlThresholdHigh at the end of a collection 1813 interval specified by tn3270eCollCtlSPeriod 1814 times tn3270eCollCtlSPMult. Note that the corresponding 1815 tn3270eCollCtlType must have traps(5) and average(3) set 1816 for this notification to be generated. In addition, 1817 tn3270eRtDataAvgCountTrans, tn3270eRtCollCtlThreshHigh, and 1818 tn3270eRtDataAvgRt are algorithmically compared to 1819 tn3270eRtCollCtlIdleCount for determination if this 1820 notification will be suppressed." 1821 ::= { tn3270eRtNotifications 1 } 1823 tn3270eRtOkay NOTIFICATION-TYPE 1824 OBJECTS { 1825 tn3270eRtDataIntTimeStamp, 1826 tn3270eRtDataAvgRt, 1827 tn3270eRtDataAvgIpRt, 1828 tn3270eRtDataAvgCountTrans, 1829 tn3270eRtDataRtMethod 1830 } 1831 STATUS current 1832 DESCRIPTION 1833 "This notification is generated when the average response 1834 time, tn3270eRtDataAvgRt, falls below 1835 tn3270eRtCollCtlThresholdLow at the end of a collection 1836 interval specified by tn3270eCollCtlSPeriod times 1837 tn3270eCollCtlSPMult, after a tn3270eRtExceeded 1838 notification was generated. Note that the corresponding 1839 tn3270eCollCtlType must have traps(5) and average(3) 1840 set for this notification to be generated." 1842 ::= { tn3270eRtNotifications 2 } 1844 tn3270eRtCollStart NOTIFICATION-TYPE 1845 OBJECTS { 1846 tn3270eRtDataRtMethod, -- type of collection 1847 tn3270eResMapElementType -- type of resource 1848 } 1849 STATUS current 1850 DESCRIPTION 1851 "This notification is generated when response time data 1852 collection is enabled for a member of a client group. 1853 In order for this notification to occur the corresponding 1854 tn3270eRtCollCtlType must have traps(5) selected. 1856 tn3270eResMapElementType contains a valid value only if 1857 tn3270eRtDataClientAddress contains a valid address 1858 (rather than a zero-length octet string)." 1859 ::= { tn3270eRtNotifications 3 } 1861 tn3270eRtCollEnd NOTIFICATION-TYPE 1862 OBJECTS { 1863 tn3270eRtDataDiscontinuityTime, 1864 tn3270eRtDataAvgRt, 1865 tn3270eRtDataAvgIpRt, 1866 tn3270eRtDataAvgCountTrans, 1867 tn3270eRtDataIntTimeStamp, 1868 tn3270eRtDataTotalRts, 1869 tn3270eRtDataTotalIpRts, 1870 tn3270eRtDataCountTrans, 1871 tn3270eRtDataCountDrs, 1872 tn3270eRtDataElapsRndTrpSq, 1873 tn3270eRtDataElapsIpRtSq, 1874 tn3270eRtDataBucket1Rts, 1875 tn3270eRtDataBucket2Rts, 1876 tn3270eRtDataBucket3Rts, 1877 tn3270eRtDataBucket4Rts, 1878 tn3270eRtDataBucket5Rts, 1879 tn3270eRtDataRtMethod 1880 } 1881 STATUS current 1882 DESCRIPTION 1883 "This notification is generated when an tn3270eRtDataEntry 1884 is deleted after being active (actual data collected), in 1885 order to enable a management application monitoring an 1886 tn3270eRtDataEntry to get the entry's final values. Note 1887 that the corresponding tn3270eCollCtlType must have traps(5) 1888 set for this notification to be generated." 1889 ::= { tn3270eRtNotifications 4 } 1891 -- Conformance Statement 1893 tn3270eRtGroups OBJECT IDENTIFIER ::= { tn3270eRtConformance 1 } 1894 tn3270eRtCompliances OBJECT IDENTIFIER ::= { tn3270eRtConformance 2 } 1896 -- Compliance statements 1897 tn3270eRtCompliance MODULE-COMPLIANCE 1898 STATUS current 1899 DESCRIPTION 1900 "The compliance statement for agents that support the 1901 TN327E-RT-MIB." 1902 MODULE -- this module 1903 MANDATORY-GROUPS { tn3270eRtGroup, tn3270eRtNotGroup } 1905 OBJECT tn3270eRtCollCtlType 1906 MIN-ACCESS read-only 1907 DESCRIPTION 1908 "The agent is not required to support a SET operation to 1909 this object in the absence of adequate security." 1911 OBJECT tn3270eRtCollCtlSPeriod 1912 MIN-ACCESS read-only 1913 DESCRIPTION 1914 "The agent is not required to allow the user to change 1915 the default value of this object, and is allowed to 1916 use a different default." 1918 OBJECT tn3270eRtCollCtlSPMult 1919 MIN-ACCESS read-only 1920 DESCRIPTION 1921 "The agent is not required to support a SET operation 1922 to this object in the absence of adequate security." 1924 OBJECT tn3270eRtCollCtlThreshHigh 1925 MIN-ACCESS read-only 1926 DESCRIPTION 1927 "The agent is not required to support a SET operation 1928 to this object in the absence of adequate security." 1930 OBJECT tn3270eRtCollCtlThreshLow 1931 MIN-ACCESS read-only 1932 DESCRIPTION 1933 "The agent is not required to support a SET operation 1934 to this object in the absence of adequate security." 1936 OBJECT tn3270eRtCollCtlIdleCount 1937 MIN-ACCESS read-only 1938 DESCRIPTION 1939 "The agent is not required to support a SET operation 1940 to this object in the absence of adequate security." 1942 OBJECT tn3270eRtCollCtlBucketBndry1 1943 MIN-ACCESS read-only 1944 DESCRIPTION 1945 "The agent is not required to support a SET operation 1946 to this object in the absence of adequate security." 1948 OBJECT tn3270eRtCollCtlBucketBndry2 1949 MIN-ACCESS read-only 1950 DESCRIPTION 1951 "The agent is not required to support a SET operation 1952 to this object in the absence of adequate security." 1954 OBJECT tn3270eRtCollCtlBucketBndry3 1955 MIN-ACCESS read-only 1956 DESCRIPTION 1957 "The agent is not required to support a SET operation 1958 to this object in the absence of adequate security." 1960 OBJECT tn3270eRtCollCtlBucketBndry4 1961 MIN-ACCESS read-only 1962 DESCRIPTION 1963 "The agent is not required to support a SET operation 1964 to this object in the absence of adequate security." 1966 OBJECT tn3270eRtCollCtlRowStatus 1967 SYNTAX INTEGER { 1968 active(1) -- subset of RowStatus 1969 } 1970 MIN-ACCESS read-only 1971 DESCRIPTION 1972 "Write access is not required, and only one of the six 1973 enumerated values for the RowStatus textual convention 1974 need be supported, specifically: active(1)." 1976 ::= {tn3270eRtCompliances 1 } 1978 -- Group definitions 1980 tn3270eRtGroup OBJECT-GROUP 1981 OBJECTS { 1982 tn3270eRtCollCtlType, 1983 tn3270eRtCollCtlSPeriod, 1984 tn3270eRtCollCtlSPMult, 1985 tn3270eRtCollCtlThreshHigh, 1986 tn3270eRtCollCtlThreshLow, 1987 tn3270eRtCollCtlIdleCount, 1988 tn3270eRtCollCtlBucketBndry1, 1989 tn3270eRtCollCtlBucketBndry2, 1990 tn3270eRtCollCtlBucketBndry3, 1991 tn3270eRtCollCtlBucketBndry4, 1992 tn3270eRtCollCtlRowStatus, 1993 tn3270eRtDataDiscontinuityTime, 1994 tn3270eRtDataAvgRt, 1995 tn3270eRtDataAvgIpRt, 1996 tn3270eRtDataAvgCountTrans, 1997 tn3270eRtDataIntTimeStamp, 1998 tn3270eRtDataTotalRts, 1999 tn3270eRtDataTotalIpRts, 2000 tn3270eRtDataCountTrans, 2001 tn3270eRtDataCountDrs, 2002 tn3270eRtDataElapsRndTrpSq, 2003 tn3270eRtDataElapsIpRtSq, 2004 tn3270eRtDataBucket1Rts, 2005 tn3270eRtDataBucket2Rts, 2006 tn3270eRtDataBucket3Rts, 2007 tn3270eRtDataBucket4Rts, 2008 tn3270eRtDataBucket5Rts, 2009 tn3270eRtDataRtMethod, 2010 tn3270eRtSpinLock } 2011 STATUS current 2012 DESCRIPTION 2013 "This group is mandatory for all implementations that 2014 support the TN3270E-RT-MIB. " 2015 ::= { tn3270eRtGroups 1 } 2017 tn3270eRtNotGroup NOTIFICATION-GROUP 2018 NOTIFICATIONS { 2019 tn3270eRtExceeded, 2020 tn3270eRtOkay, 2021 tn3270eRtCollStart, 2022 tn3270eRtCollEnd 2023 } 2024 STATUS current 2025 DESCRIPTION 2026 "The notifications that must be supported when the 2027 TN3270E-RT-MIB is implemented. " 2028 ::= { tn3270eRtGroups 2 } 2030 END 2032 6.0 Security Considerations 2034 Certain management information defined in this MIB may be considered 2035 sensitive in some network environments. Therefore, authentication of 2036 received SNMP requests and controlled access to management information 2037 SHOULD be employed in such environments. An authentication protocol is 2038 defined in [10]. A protocol for access control is defined in [11]. 2040 Several objects in this MIB allow write access or provide for row 2041 creation. Allowing this support in a non-secure environment can have a 2042 negative effect on network operations. It is RECOMMENDED that 2043 implementers seriously consider whether set operations or row creation 2044 SHOULD be allowed without providing, at a minimum, authentication of 2045 request origin. It is RECOMMENDED that without such support that the 2046 following objects be implemented as read-only: 2048 o tn3270eRtCollCtlType 2049 o tn3270eRtCollCtlSPeriod 2050 o tn3270eRtCollCtlSPMult 2051 o tn3270eRtCollCtlThreshHigh 2052 o tn3270eRtCollCtlThreshLow 2053 o tn3270eRtCollCtlIdleCount 2054 o tn3270eRtCollCtlBucketBndry1 2055 o tn3270eRtCollCtlBucketBndry2 2056 o tn3270eRtCollCtlBucketBndry3 2057 o tn3270eRtCollCtlBucketBndry4 2058 o tn3270eRtCollCtlRowStatus 2059 The administrative method to use to create and manage the 2060 tn3270eRtCollCtlTable when SET support is not allowed is outside of the 2061 scope of this memo. 2063 7.0 Intellectual Property 2065 The IETF takes no position regarding the validity or scope of any 2066 intellectual property or other rights that might be claimed to pertain 2067 to the implementation or use of the technology described in this 2068 document or the extent to which any license under such rights might or 2069 might not be available; neither does it represent that it has made any 2070 effort to identify any such rights. Information on the IETF's 2071 procedures with respect to rights in standards-track and 2072 standards-related documentation can be found in BCP-11. Copies of 2073 claims of rights made available for publication and any assurances of 2074 licenses to be made available, or the result of an attempt made to 2075 obtain a general license or permission for the use of such proprietary 2076 rights by implementers or users of this specification can be obtained 2077 from the IETF Secretariat. 2079 The IETF invites any interested party to bring to its attention any 2080 copyrights, patents or patent applications, or other proprietary rights 2081 which may cover technology that may be required to practice this 2082 standard. Please address the information to the IETF Executive 2083 Director. 2085 8.0 Acknowledgments 2087 This document is a product of the TN3270E Working Group. Special thanks 2088 are due to Derek Bolton and Michael Boe of Cisco Systems for their 2089 numerous comments and suggestions for improving the structure of this 2090 MIB. Thanks also to Randy Presuhn of BMC Software for his valuable 2091 review comments on several versions of the document. 2093 9.0 References 2095 [1] Case, J., M. Fedor, M. Schoffstall, J. Davin, "Simple Network 2096 Management Protocol", RFC 1157, SNMP Research, Performance Systems 2097 International, MIT Laboratory for Computer Science, May 1990. 2099 [2] McCloghrie, K., and M. Rose, Editors, "Management Information Base 2100 for Network Management of TCP/IP-based internets: MIB-II", STD 17, 2101 RFC 1213, Hughes LAN Systems, Performance Systems International, 2102 March 1991. 2104 [3] Case, J., McCloghrie, K., Rose, M., and Waldbusser S., "Structure 2105 of Management Information for Version 2 of the Simple Network 2106 Management Protocol (SNMPv2)", RFC 1902, January 1996. 2108 [4] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S., "Textual 2109 Conventions for Version 2 of the Simple Network Management Protocol 2110 (SNMPv2)", RFC 1903, January 1996. 2112 [5] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S., 2113 "Conformance Statements for Version 2 of the Simple Network 2114 Management Protocol (SNMPv2)", RFC 1904, January 1996. 2116 [6] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S., "Protocol 2117 Operations for Version 2 of the Simple Network Management Protocol 2118 (SNMPv2)", RFC 1905, January 1996. 2120 [7] Harrington D., Presuhn, R., Wijnen, B., "An Architecture for 2121 Describing SNMP Management Frameworks", RFC 2271, Cabletron 2122 Systems, BMC Software, Inc., IBM T.J. Watson Research, January 2123 1998. 2125 [8] Harrington D., Presuhn, R., Wijnen, B., "Message Processing and 2126 Dispatching for the Simple Network Management Protocol (SNMP)", RFC 2127 2272, Cabletron Systems, BMC Software, Inc., IBM T.J. Watson 2128 Research, January 1998. 2130 [9] Levi D., Meyer P., Stewart, B., "SNMPv3 Applications", RFC 2273, 2131 SNMP Research, Inc., Secure Computing Corporation, Cisco Systems, 2132 January 1998. 2134 [10] Blumenthal, U., Wijnen, B., "User-based Security Model (USM) for 2135 version 3 of the Simple Network Management Protocol (SNMPv3)", RFC 2136 2274, IBM T. J. Watson Research, January 1998. 2138 [11] Wijnen, B., Presuhn, R., McCloghrie, K., "View-based Access Control 2139 Model (VACM) for the Simple Network Management Protocol (SNMP)", 2140 RFC 2275, IBM T.J. Watson Research, BMC Software, Inc., Cisco 2141 Systems, Inc., January 1998. 2143 [12] Postel, J., and Reynolds, J., "Telnet Protocol Specification", RFC 2144 854, May 1983. 2146 [13] Postel, J., and Reynolds, J., "Telnet Timing Mark Option", RFC 860, 2147 May 1983. 2149 [14] Rekhter, J., "Telnet 3270 Regime Option", RFC 1041, January 1988. 2151 [15] Kelly, B., "TN3270 Enhancements", RFC 2355, June 1998. 2153 [16] White, K. and Moore, R., "Base Definitions of Managed Objects for 2154 TN3270E Using SMIv2", Internet-Draft Work in progress, April 1998. 2156 [17] IBM, International Technical Support Centers, "Response Time Data 2157 Gathering", GG24-3212-01, November 1990. 2159 [18] Hovey, R., and S. Bradner, "The Organizations Involved in the IETF 2160 Standards Process", BCP 11, RFC 2028, October 1996. 2162 [19] Bradner, S., "Key words for use in RFCs to Indicate Requirement 2163 Levels", BCP 14, RFC 2119, March 1997. 2165 10.0 Authors' Addresses 2167 Kenneth D. White 2168 Dept. BRQA/Bldg. 501/G114 2169 IBM Corporation 2170 P.O.Box 12195 2171 3039 Cornwallis 2172 Research Triangle Park, NC 27709, USA 2173 E-mail: kennethw@vnet.ibm.com 2175 Robert Moore 2176 Dept. BRQA/Bldg. 501/G114 2177 IBM Corporation 2178 P.O.Box 12195 2179 3039 Cornwallis 2180 Research Triangle Park, NC 27709, USA 2181 Phone: +1-919-254-7507 2182 E-mail: remoore@us.ibm.com 2184 11.0 Full Copyright Statement 2186 Copyright (C) The Internet Society (1997). All Rights Reserved. 2188 This document and translations of it may be copied and furnished to 2189 others, and derivative works that comment on or otherwise explain it or 2190 assist in its implementation may be prepared, copied, published and 2191 distributed, in whole or in part, without restriction of any kind, 2192 provided that the above copyright notice and this paragraph are included 2193 on all such copies and derivative works. However, this document itself 2194 may not be modified in any way, such as by removing the copyright notice 2195 or references to the Internet Society or other Internet organizations, 2196 except as needed for the purpose of developing Internet standards in 2197 which case the procedures for copyrights defined in the Internet 2198 Standards process must be followed, or as required to translate it into 2199 languages other than English. 2201 The limited permissions granted above are perpetual and will not be 2202 revoked by the Internet Society or its successors or assigns. 2204 This document and the information contained herein is provided on an "AS 2205 IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK 2206 FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT 2207 LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT 2208 INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR 2209 FITNESS FOR A PARTICULAR PURPOSE.