idnits 2.17.1 draft-hazewinkel-httpmib-00.txt: ** The Abstract section seems to be numbered Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Cannot find the required boilerplate sections (Copyright, IPR, etc.) in this document. Expected boilerplate is as follows today (2024-04-16) according to https://trustee.ietf.org/license-info : IETF Trust Legal Provisions of 28-dec-2009, Section 6.a: This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. IETF Trust Legal Provisions of 28-dec-2009, Section 6.b(i), paragraph 2: Copyright (c) 2024 IETF Trust and the persons identified as the document authors. All rights reserved. IETF Trust Legal Provisions of 28-dec-2009, Section 6.b(i), paragraph 3: This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. 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 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 537 instances of lines with control characters in the document. Miscellaneous warnings: ---------------------------------------------------------------------------- -- 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 (April 22, 1996) is 10221 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: '3' is defined on line 927, but no explicit reference was found in the text == Unused Reference: '4' is defined on line 931, but no explicit reference was found in the text == Unused Reference: '5' is defined on line 935, but no explicit reference was found in the text == Unused Reference: '6' is defined on line 939, but no explicit reference was found in the text == Unused Reference: '7' is defined on line 943, but no explicit reference was found in the text == Unused Reference: '8' is defined on line 947, but no explicit reference was found in the text ** Obsolete normative reference: RFC 1902 (ref. '1') (Obsoleted by RFC 2578) ** Obsolete normative reference: RFC 1903 (ref. '3') (Obsoleted by RFC 2579) ** Obsolete normative reference: RFC 1905 (ref. '4') (Obsoleted by RFC 3416) ** Obsolete normative reference: RFC 1904 (ref. '5') (Obsoleted by RFC 2580) ** Downref: Normative reference to an Historic RFC: RFC 1157 (ref. '6') ** Downref: Normative reference to an Historic RFC: RFC 1901 (ref. '7') -- Possible downref: Non-RFC (?) normative reference: ref. '8' Summary: 16 errors (**), 0 flaws (~~), 7 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 1 Internet Draft HTTP MIB April 22,1996 3 Definitions of Managed Objects for HTTP 5 April 22, 1996 7 9 Harrie Hazewinkel 10 University of Twente 11 hazewink@cs.utwente.nl 13 Eric van Hengstum 14 University of Twente 15 hengstum@cs.utwente.nl 17 Aiko Pras 18 University of Twente 19 pras@cs.utwente.nl 21 Status of this Memo 23 This document is an Internet-Draft. Internet-Drafts are working 24 documents of the Internet Engineering Task Force (IETF), its 25 areas, and its working groups. Note that other groups may also 26 distribute working documents as Internet-Drafts. 28 Internet-Drafts are draft documents valid for a maximum of six 29 months and may be updated, replaced, or obsoleted by other 30 documents at any time. It is inappropriate to use Internet- 31 Drafts as reference material or to cite them other than as ``work 32 in progress.'' 34 To learn the current status of any Internet-Draft, please check 35 the ``1id-abstracts.txt'' listing contained in the Internet- 36 Drafts Shadow Directories on ds.internic.net (US East Coast), 37 nic.nordu.net (Europe), ftp.isi.edu (US West Coast), or 38 munnari.oz.au (Pacific Rim). 40 1. Abstract 42 This draft defines a MIB to manage the HTTP protocol. The HTTP 43 protocol is used by World Wide Web applications to transfer 44 information between WWW clients and WWW servers. HTTP is 45 based on the request/response paradigm. 46 The HTTP MIB is especially useful to manage the WWW 47 server-side. The MIB is defined in such a way that it allows 48 multiple servers to run within a single system. 50 2. The SNMPv2 Network Management Framework 52 The SNMPv2 Network Management Framework consists of four major 53 components. They are: 55 o STD 17, RFC 1213 [2] defines MIB-II, the core set of managed 56 objects for the Internet suite of protocols. 58 o RFC 1901 Introduction to Community-based SNMPv2 60 o RFC 1902 Structure of Management Information for Version 2 of 61 the Simple Network Management Protocol (SNMPv2) 63 o RFC 1903 Textual Conventions for Version 2 of the Simple 64 Network Management Protocol (SNMPv2) 66 o RFC 1904 Conformance Statements for Version 2 of the Simple 67 Network Management Protocol (SNMPv2) 69 o RFC 1907 Management Information Base for Version 2 of the 70 Simple Network Management Protocol (SNMPv2) 72 o RFC 1908 Coexistence between Version 1 and Version 2 of the 73 Internet-standard Network Management Framework 75 The Framework permits new objects to be defined for the purpose of 76 experimentation and evaluation. 78 2.1. Object Definitions 80 Managed objects are accessed via a virtual information store, 81 termed the Management Information Base or MIB. Objects in the MIB 82 are defined using the subset of Abstract Syntax Notation One 83 (ASN.1) defined in the SMI[1]. In particular, each object type is 84 named by an OBJECT IDENTIFIER, an administratively assigned name. 85 The object type together with an object instance serves to 86 uniquely identify a specific instantiation of the object. For 87 human convenience, we often use a textual string, termed the 88 object descriptor, to refer to the object type. 90 3. Introduction. 92 The HTTP protocol instantiates the information transport in the 93 WWW application which is done with protocol entities exchanging 94 information with each other via the underlying service. 96 The work performed for this MIB is a result of a project performed 97 for the Centre of Earth Observations. The document should not be 98 considered to be complete, but should be seen as a first step 99 towards standardization of WWW management. 100 An implementation of this MIB already exists. Due to the use of a 101 commercial development package it cannot be distributed. However, 102 a public domain version is now being developed. 104 4. HyperText Transfer Protocol MIB structure 106 The HTTP MIB module contains detailed network management 107 information concerning HTTP. The MIB module is divided into entity- 108 and traffic-related information. 110 The HTTP MIB consists of three groups: 111 1. httpSystem, 112 2. httpStatistics, and 113 3. httpTimeOuts. 115 4.1. System group 117 The System group consists of the httpEntityTable. This table contains 118 not only basic network management information for (potentially) 119 multiple HTTP entities running on a single host machine, but also 120 entity information for virtual domains which give the physical 121 interface of the host multiple addresses. The table is indexed with 122 a unique number specifying the entity in the table which is also 123 used as index of the other tables in this MIB. For each entity the 124 following information is provided and: 125 - The protocol implemented by the entity; this value should be 126 derived from the assigned number for the service; in the case 127 of HTTP, this would be 80. 129 - A brief description of the entity and a contact e-mail address 130 for the person responsible. 132 - The version of the protocol implemented by the entity, the 133 producer of the software, the release version, and (optionally) 134 an object identifier for the producer. 136 - Configuration information such as the address of the host 137 machine (both in text form and as an IP address), the port in 138 use, the time of last initialization, and whether the entity 139 is a client, server, proxy, or a caching proxy. 141 4.2. Statistics group 143 The Statistics group provides network management information for the 144 network traffic received and transmitted by the entity. The group 145 consists of the httpSummaryTable, the httpRequestTable, and the 146 httpResponseTable. 148 - The SummaryTable contains a set of counters for each HTTP 149 entity which provide a quick summary of the number of requests 150 received, bytes transmitted, and so on. The SummaryTable also 151 holds counters for Requests and Responses which have been 152 discarded or received in error. 153 However certain variables are redundant with respect to the 154 Request and Response tables, they are added to reduce network 155 traffic. 157 - The Request and Response tables provide much more detailed 158 information broken down by entity and the type of Request or 159 Response. For each entity, each type of Request or Response 160 has a separate entry giving a count of the number received, 161 sent, and time stamps for the last interaction. 163 These tables are not only indexed by an entityIndex pointing to an 164 entry in the httpEntityTable, but also with the Request 165 c.q. Response type. The main reason to define this in a table is 166 that the MIB objects are not dependent on the protocol standard. 167 Only the textual convention should be changed then new types can 168 simply be added by the implementation. 170 2.3. TimeOuts group 172 The final group in the HTTP module contains timeout information for 173 each of the HTTP entities. The information is presented in the form 174 of a table which may be resized by the Network Management System, 175 and contains the address of the remote entity and the time at which 176 the timeout occurred. 178 5. HyperText Transfer Protocol MIB definition 180 HTTP-MIB DEFINITIONS ::= BEGIN 182 IMPORTS 183 MODULE-IDENTITY, OBJECT-TYPE, experimental, Counter32 184 FROM SNMPv2-SMI 185 TEXTUAL-CONVENTION, DisplayString, TimeStamp 186 FROM SNMPv2-TC 187 MODULE-COMPLIANCE, OBJECT-GROUP 188 FROM SNMPv2-CONF; 190 httpMIB MODULE-IDENTITY 191 LAST-UPDATED "9511080000Z" 192 ORGANIZATION "HTTP MIB Interest Group" 193 CONTACT-INFO 194 " Mark Gamble 196 Post: ESYS Limited 197 Berkeley House 198 London Square 199 Cross Lanes 200 GUILDFORD 201 Surrey 202 UK 204 Tel: +44 1483 304545 205 Fax: +44 1483 303878 206 Email: mgamble@esys.co.uk" 207 DESCRIPTION 208 "The MIB module for http Servers and Clients. The http 209 in the module name is intended to cover a family of 210 `Networked Information Retrieval' protocols such as 211 http, nntp, ftp, gopher and so on. 212 Membership of this family is difficult to define 213 exactly, but all members share a similar 214 request-response structure used to retrieve information 215 (in the form of files, documents, articles) from a 216 remote server." 217 ::= { enterprises universityOfTwente(785) 2 } 219 httpMIBObjects OBJECT IDENTIFIER ::= { httpMIB 1 } 220 httpMIBConformance OBJECT IDENTIFIER ::= { httpMIB 2 } 221 httpMIBCompliances OBJECT IDENTIFIER ::= { httpMIBConformance 1 } 222 httpMIBGroups OBJECT IDENTIFIER ::= { httpMIBConformance 2 } 223 HttpMethod ::= TEXTUAL-CONVENTION 224 STATUS current 225 DESCRIPTION 226 "This data type is used to describe http methods. The 227 value of a variable of this type is exactly the same 228 method token usedin an http request. The currently 229 defined methods for http areGET, HEAD and POST. 230 For ftp, this type would cover the access control, 231 transfer parameter, and service commands." 232 SYNTAX INTEGER { 233 get(1), head(2), put(3), post(4), 234 delete(5), link(6), unlink(7) } 236 HttpStatusCode ::= TEXTUAL-CONVENTION 237 STATUS current 238 DESCRIPTION 239 "The status code of an http response as defined in the 240 RFC specification. 242 The StatusCode (or reply code) is structured as a three 243 digit code of the attempt to understand and satisfy the 244 request. 245 The following description is derived from the HyperText 246 Transfer Protocol RFC: 248 The first digit of the Status-Code defines the class of 249 response. 250 The last two digits do not have any categorization role. 251 There are 5 values for the first digit: 253 1xx: Informational - Not used, but reserved for 254 future use. 255 2xx: Success - The action was successfully received, 256 understood, and accepted. 257 3xx: Redirection - Further action must be taken in 258 order to complete the request. 259 4xx: Client Error - The request contains bad syntax 260 or cannot be full filed. 261 5xx: Server Error - The server failed to fulfill an 262 apparently valid request. 264 Currently defined values for http are: 265 ok(200), created(201), accepted(202), noContent(204), 266 movedPermanently(301), movedTemporarily(302), 267 notModified(304), badRequest(400), unauthorized(401), 268 forbidden(403), notFound(404), internalServerError(500), 269 notImplemented(501), badGateway(502), 270 serviceUnavailable(503)." 272 SYNTAX INTEGER (100..999) 273 -- 274 -- The http System Group 275 -- 276 -- The http System group contains information about the http 277 -- protocol entity. 278 -- 280 httpSystem OBJECT IDENTIFIER ::= { httpMIBObjects 1 } 282 httpEntityTable OBJECT-TYPE 283 SYNTAX SEQUENCE OF HttpEntityEntry 284 MAX-ACCESS not-accessible 285 STATUS current 286 DESCRIPTION 287 "The table of http Servers and Clients present on the 288 system." 289 ::= { httpSystem 1 } 291 httpEntityEntry OBJECT-TYPE 292 SYNTAX HttpEntityEntry 293 MAX-ACCESS not-accessible 294 STATUS current 295 DESCRIPTION 296 "Details of a particular http Server or Client." 297 INDEX { httpEntityIndex } 298 ::= { httpEntityTable 1 } 300 HttpEntityEntry ::= SEQUENCE { 301 httpEntityIndex INTEGER, 302 httpEntityProtocol INTEGER, 303 httpEntityDescription DisplayString, 304 httpEntityContact DisplayString, 305 httpEntityProtocolVersion DisplayString, 306 httpEntityVendor DisplayString, 307 httpEntityVersion DisplayString, 308 httpEntityObjectID OBJECT IDENTIFIER, 309 httpEntityAddress DisplayString, 310 httpEntityPort INTEGER, 311 httpEntityIpAddress IpAddress, 312 httpEntityLastInitialisation TimeStamp, 313 httpEntityType INTEGER 314 } 316 httpEntityIndex OBJECT-TYPE 317 SYNTAX INTEGER (1..2147483647) 318 MAX-ACCESS not-accessible 319 STATUS current 320 DESCRIPTION 321 "A unique (on this machine) identifier for this entity." 322 ::= { httpEntityEntry 1 } 323 -- Instrumentation: Agent internal. 325 httpEntityProtocol OBJECT-TYPE 326 SYNTAX INTEGER (1..2147483647) 327 MAX-ACCESS read-only 328 STATUS current 329 DESCRIPTION 330 "This should be the number from /etc/services (or its 331 equivalent) which is associated with the service 332 implemented. For example, the value of this variable 333 would be 21 for ftp, 80 for http." 334 ::= { httpEntityEntry 2 } 335 -- Instrumentation: System file. 337 httpEntityDescription OBJECT-TYPE 338 SYNTAX DisplayString 339 MAX-ACCESS read-only 340 STATUS current 341 DESCRIPTION 342 "Textual description of the http Server or Client." 343 ::= { httpEntityEntry 3 } 344 -- Instrumentation: Configuration file. 346 httpEntityContact OBJECT-TYPE 347 SYNTAX DisplayString 348 MAX-ACCESS read-only 349 STATUS current 350 DESCRIPTION 351 "The textual identification of the contact person 352 for this http Server or Client, together with 353 information on how to contact this person." 354 ::= { httpEntityEntry 4 } 355 -- Instrumentation: Configuration file. 357 httpEntityProtocolVersion OBJECT-TYPE 358 SYNTAX DisplayString 359 MAX-ACCESS read-only 360 STATUS current 361 DESCRIPTION 362 "Textual description of the version of the protocol 363 implemented." 364 ::= { httpEntityEntry 5 } 365 -- Instrumentation: Log file 367 httpEntityVendor OBJECT-TYPE 368 SYNTAX DisplayString 369 MAX-ACCESS read-only 370 STATUS current 371 DESCRIPTION 372 "Textual description of the organization which 373 implemented the protocol." 374 ::= { httpEntityEntry 6 } 375 -- Instrumentation: Log file 376 httpEntityVersion OBJECT-TYPE 377 SYNTAX DisplayString 378 MAX-ACCESS read-only 379 STATUS current 380 DESCRIPTION 381 "Textual description of the implementated version." 382 ::= { httpEntityEntry 7 } 383 -- Instrumentation: Log file 385 httpEntityObjectID OBJECT-TYPE 386 SYNTAX OBJECT IDENTIFIER 387 MAX-ACCESS read-only 388 STATUS current 389 DESCRIPTION 390 "The authoritative identification for the private MIB 391 for this http Entity, presumably based on the vendor. 393 If no OBJECT IDENTIFIER exists for the private MIB, 394 attempts to access this object will return noSuchName 395 (SNMPv1) or noSuchInstance (SNMPv2)." 396 ::= { httpEntityEntry 8 } 397 -- Instrumentation: Direct access 399 httpEntityAddress OBJECT-TYPE 400 SYNTAX DisplayString 401 MAX-ACCESS read-only 402 STATUS current 403 DESCRIPTION 404 "The DNS address at which the http Entity listens for 405 Requests or Responses. This is variable is useful 406 when the entity listens to a virtual domain (address)." 407 ::= { httpEntityEntry 9 } 408 -- Instrumentation: Config file 410 httpEntityPort OBJECT-TYPE 411 SYNTAX INTEGER (0..4096) 412 MAX-ACCESS read-only 413 STATUS current 414 DESCRIPTION 415 "The TCP port at which the http Entity listens for 416 Requests or Responses." 417 ::= { httpEntityEntry 10 } 418 -- Instrumentation: Config file 420 httpEntityIpAddress OBJECT-TYPE 421 SYNTAX IpAddress 422 MAX-ACCESS read-only 423 STATUS current 424 DESCRIPTION 425 "The IP Address at which the http Entity listens for 426 Requests or Responses." 427 ::= { httpEntityEntry 11 } 428 -- Instrumentation: System 429 httpEntityLastInitialisation OBJECT-TYPE 430 SYNTAX TimeStamp 431 MAX-ACCESS read-only 432 STATUS current 433 DESCRIPTION 434 "The value of sysUpTime at the time the http Entity 435 was last initialised. If the http Entity was 436 last initialised prior to the last initialisation of the 437 network management subsystem, then this object contains 438 a zero value." 439 ::= { httpEntityEntry 12 } 440 -- Instrumentation: Config file 442 httpEntityType OBJECT-TYPE 443 SYNTAX INTEGER { server(1), client(2), proxy(3), 444 cachingProxy(4) } 445 MAX-ACCESS read-only 446 STATUS current 447 DESCRIPTION 448 "Identification of the role of the http Entity." 449 ::= { httpEntityEntry 13 } 450 -- Instrumentation: Direct access 452 -- 453 -- The http Statistics Group 454 -- 455 -- The http Statistics group contains information concerning the 456 -- utilization of the http protocol entity. 457 -- 459 httpStatistics OBJECT IDENTIFIER ::= { httpMIBObjects 2 } 461 httpSummaryTable OBJECT-TYPE 462 SYNTAX SEQUENCE OF HttpSummaryEntry 463 MAX-ACCESS not-accessible 464 STATUS current 465 DESCRIPTION 466 "The table providing overview statistics for the http 467 protocol entities on this system." 468 ::= { httpStatistics 1 } 470 httpSummaryEntry OBJECT-TYPE 471 SYNTAX HttpSummaryEntry 472 MAX-ACCESS not-accessible 473 STATUS current 474 DESCRIPTION 475 "Overview statistics for an individual http entity." 476 INDEX { httpSummaryEntityIndex } 477 ::= { httpSummaryTable 1 } 478 HttpSummaryEntry ::= SEQUENCE { 479 httpSummaryEntityIndex INTEGER, 480 httpSummaryRequests Counter32, 481 httpSummaryRequestErrors Counter32, 482 httpSummaryRequestDiscards Counter32, 483 httpSummaryResponses Counter32, 484 httpSummaryResponseErrors Counter32, 485 httpSummaryResponseDiscards Counter32, 486 httpSummaryInUnknowns Counter32, 487 httpSummaryInBytes Counter32, 488 httpSummaryOutBytes Counter32, 489 httpSummaryTimeOuts Counter32 490 } 492 httpSummaryEntityIndex OBJECT-TYPE 493 SYNTAX INTEGER (1..2147483647) 494 MAX-ACCESS not-accessible 495 STATUS current 496 DESCRIPTION 497 "The unique (on this machine) identifier for this 498 entity. This Index corresponds to httpEntityIndex in 499 the System group." 500 ::= { httpSummaryEntry 1 } 501 -- Instrumentation: Agent internal 503 httpSummaryRequests OBJECT-TYPE 504 SYNTAX Counter32 505 MAX-ACCESS read-only 506 STATUS current 507 DESCRIPTION 508 "The total number of Requests generated or received by 509 this entity." 510 ::= { httpSummaryEntry 2 } 511 -- Instrumentation: Log file 513 httpSummaryRequestErrors OBJECT-TYPE 514 SYNTAX Counter32 515 MAX-ACCESS read-only 516 STATUS current 517 DESCRIPTION 518 "The total number of Request errors detected by this 519 entity (server only.)" 520 ::= { httpSummaryEntry 3 } 521 -- Instrumentation: Log file 523 httpSummaryRequestDiscards OBJECT-TYPE 524 SYNTAX Counter32 525 MAX-ACCESS read-only 526 STATUS current 527 DESCRIPTION 528 "The total number of Requests discarded by this entity 529 (server only)." 530 ::= { httpSummaryEntry 4 } 531 -- Instrumentation: Direct Access 532 httpSummaryResponses OBJECT-TYPE 533 SYNTAX Counter32 534 MAX-ACCESS read-only 535 STATUS current 536 DESCRIPTION 537 "The total number of Responses generated or received by 538 this entity." 539 ::= { httpSummaryEntry 5 } 540 -- Instrumentation: Log file 542 httpSummaryResponseErrors OBJECT-TYPE 543 SYNTAX Counter32 544 MAX-ACCESS read-only 545 STATUS current 546 DESCRIPTION 547 "The total number of Response errors detected by this 548 entity (client only)." 549 ::= { httpSummaryEntry 6 } 550 -- Instrumentation: Direct Access 552 httpSummaryResponseDiscards OBJECT-TYPE 553 SYNTAX Counter32 554 MAX-ACCESS read-only 555 STATUS current 556 DESCRIPTION 557 "The total number of Responses discarded by this entity 558 (client only.)" 559 ::= { httpSummaryEntry 7 } 560 -- Instrumentation: Direct Access 562 httpSummaryInUnknowns OBJECT-TYPE 563 SYNTAX Counter32 564 MAX-ACCESS read-only 565 STATUS current 566 DESCRIPTION 567 "The total number of unknown messages received by this 568 entity." 569 ::= { httpSummaryEntry 8 } 570 -- Instrumentation: Log file 572 httpSummaryInBytes OBJECT-TYPE 573 SYNTAX Counter32 574 MAX-ACCESS read-only 575 STATUS current 576 DESCRIPTION 577 "The total number of bytes received by this entity." 578 ::= { httpSummaryEntry 9 } 579 -- Instrumentation: Log file 580 httpSummaryOutBytes OBJECT-TYPE 581 SYNTAX Counter32 582 MAX-ACCESS read-only 583 STATUS current 584 DESCRIPTION 585 "The total number of bytes generated by this entity." 586 ::= { httpSummaryEntry 10 } 587 -- Instrumentation: Log file 589 httpSummaryTimeOuts OBJECT-TYPE 590 SYNTAX Counter32 591 MAX-ACCESS read-only 592 STATUS current 593 DESCRIPTION 594 "The number of timeouts for this entities." 595 ::= { httpSummaryEntry 11 } 596 --Instrumentation: Log file 598 httpRequestTable OBJECT-TYPE 599 SYNTAX SEQUENCE OF HttpRequestEntry 600 MAX-ACCESS not-accessible 601 STATUS current 602 DESCRIPTION 603 "The table providing detailed request statistics for 604 the http protocol entities on this system." 605 ::= { httpStatistics 2 } 607 httpRequestEntry OBJECT-TYPE 608 SYNTAX HttpRequestEntry 609 MAX-ACCESS not-accessible 610 STATUS current 611 DESCRIPTION 612 "Request statistics for an individual http entity." 613 INDEX { httpRequestEntityIndex, httpRequestMethodIndex } 614 ::= { httpRequestTable 1 } 616 HttpRequestEntry ::= SEQUENCE { 617 httpRequestEntityIndex INTEGER, 618 httpRequestMethodIndex HttpMethod, 619 httpRequestInCount Counter32, 620 httpRequestInLastTime TimeStamp, 621 httpRequestOutCount Counter32, 622 httpRequestOutLastTime TimeStamp 623 } 624 httpRequestEntityIndex OBJECT-TYPE 625 SYNTAX INTEGER (1..2147483647) 626 MAX-ACCESS not-accessible 627 STATUS current 628 DESCRIPTION 629 "The unique (on this machine) identifier for this 630 entity. This Index corresponds to httpEntityIndex 631 in the System group." 632 ::= { httpRequestEntry 1 } 633 -- Instrumentation: Agent internal 635 httpRequestMethodIndex OBJECT-TYPE 636 SYNTAX HttpMethod 637 MAX-ACCESS not-accessible 638 STATUS current 639 DESCRIPTION 640 "The particular request method the statistics apply to." 641 ::= { httpRequestEntry 2 } 642 -- Instrumentation: Log file 644 httpRequestInCount OBJECT-TYPE 645 SYNTAX Counter32 646 MAX-ACCESS read-only 647 STATUS current 648 DESCRIPTION 649 "The number of requests of this type received by this 650 entity." 651 ::= { httpRequestEntry 3 } 652 -- Instrumentation: Log file 654 httpRequestInLastTime OBJECT-TYPE 655 SYNTAX TimeStamp 656 MAX-ACCESS read-only 657 STATUS current 658 DESCRIPTION 659 "The value of sysUpTime at the time the last request 660 was received." 661 ::= { httpRequestEntry 4 } 662 -- Instrumentation: Log file 664 httpRequestOutCount OBJECT-TYPE 665 SYNTAX Counter32 666 MAX-ACCESS read-only 667 STATUS current 668 DESCRIPTION 669 "The number of requests of this type generated by this 670 entity." 671 ::= { httpRequestEntry 5 } 672 -- Instrumentation: Log file 673 httpRequestOutLastTime OBJECT-TYPE 674 SYNTAX TimeStamp 675 MAX-ACCESS read-only 676 STATUS current 677 DESCRIPTION 678 "The value of sysUpTime at the time the last request 679 was generated." 680 ::= { httpRequestEntry 6 } 681 -- Instrumentation: Log file 683 httpResponseTable OBJECT-TYPE 684 SYNTAX SEQUENCE OF HttpResponseEntry 685 MAX-ACCESS not-accessible 686 STATUS current 687 DESCRIPTION 688 "The table providing detailed response statistics for 689 the http protocol entities on this system." 690 ::= { httpStatistics 3 } 692 httpResponseEntry OBJECT-TYPE 693 SYNTAX HttpResponseEntry 694 MAX-ACCESS not-accessible 695 STATUS current 696 DESCRIPTION 697 "Response statistics for an individual http Server or 698 Client." 699 INDEX { httpResponseEntityIndex, httpResponseStatusIndex } 700 ::= { httpResponseTable 1 } 702 HttpResponseEntry ::= SEQUENCE { 703 httpResponseEntityIndex INTEGER, 704 httpResponseStatusIndex HttpStatusCode, 705 httpResponseInCount Counter32, 706 httpResponseInLastTime TimeStamp, 707 httpResponseOutCount Counter32, 708 httpResponseOutLastTime TimeStamp 709 } 711 httpResponseEntityIndex OBJECT-TYPE 712 SYNTAX INTEGER (1..2147483647) 713 MAX-ACCESS not-accessible 714 STATUS current 715 DESCRIPTION 716 "The unique (on this machine) identifier for this 717 entity. This Index corresponds to httpEntityIndex in 718 the System group." 719 ::= { httpResponseEntry 1 } 720 -- Instrumentation: Agent internal 721 httpResponseStatusIndex OBJECT-TYPE 722 SYNTAX HttpStatusCode 723 MAX-ACCESS not-accessible 724 STATUS current 725 DESCRIPTION 726 "The particular response status the statistics apply 727 to." 728 ::= { httpResponseEntry 2 } 729 -- Instrumentation: Log file 731 httpResponseInCount OBJECT-TYPE 732 SYNTAX Counter32 733 MAX-ACCESS read-only 734 STATUS current 735 DESCRIPTION 736 "The number of responses of this type received by this 737 entity." 738 ::= { httpResponseEntry 3 } 739 -- Instrumentation: Log file 741 httpResponseInLastTime OBJECT-TYPE 742 SYNTAX TimeStamp 743 MAX-ACCESS read-only 744 STATUS current 745 DESCRIPTION 746 "The value of sysUpTime at the time the last response 747 was received." 748 ::= { httpResponseEntry 4 } 749 -- Instrumentation: Log file 751 httpResponseOutCount OBJECT-TYPE 752 SYNTAX Counter32 753 MAX-ACCESS read-only 754 STATUS current 755 DESCRIPTION 756 "The number of responses of this type generated by 757 this entity." 758 ::= { httpResponseEntry 5 } 759 -- Instrumentation: Log file 761 httpResponseOutLastTime OBJECT-TYPE 762 SYNTAX TimeStamp 763 MAX-ACCESS read-only 764 STATUS current 765 DESCRIPTION 766 "The value of sysUpTime at the time the last response 767 was generated." 768 ::= { httpResponseEntry 6 } 769 -- Instrumentation: Log file 770 -- 771 -- The Time Out group contains information about the time outs occurred 772 -- with the protocol entity. 773 -- 775 httpTimeOuts OBJECT IDENTIFIER ::= { httpMIBObjects 3 } 777 httpTimeoutTableSize OBJECT-TYPE 778 SYNTAX INTEGER (0..64) 779 MAX-ACCESS read-write 780 STATUS current 781 DESCRIPTION 782 "The number of last TimeOuts contained by the 783 httpTimeOutTable." 784 ::= { httpTimeOuts 1 } 785 -- Instrumentation: Log file 787 httpTimeoutTable OBJECT-TYPE 788 SYNTAX SEQUENCE OF HttpTimeoutEntry 789 MAX-ACCESS not-accessible 790 STATUS current 791 DESCRIPTION 792 "The table providing detailed timeout statistics for 793 the http protocol entities on this system." 794 ::= { httpTimeOuts 2 } 796 httpTimeoutEntry OBJECT-TYPE 797 SYNTAX HttpTimeoutEntry 798 MAX-ACCESS not-accessible 799 STATUS current 800 DESCRIPTION 801 "Timeout statistics for a particular http entity." 802 INDEX { httpTimeoutEntityIndex, httpTimeoutNumber } 803 ::= { httpTimeoutTable 1 } 805 HttpTimeoutEntry ::= SEQUENCE { 806 httpTimeoutEntityIndex INTEGER, 807 httpTimeoutNumber INTEGER, 808 httpTimeoutRemoteAddress DisplayString, 809 httpTimeoutTime TimeStamp 810 } 812 httpTimeoutEntityIndex OBJECT-TYPE 813 SYNTAX INTEGER (1..2147483647) 814 MAX-ACCESS not-accessible 815 STATUS current 816 DESCRIPTION 817 "The unique (on this machine) identifier for this 818 entity. This Index corresponds to httpEntityIndex 819 in the http System group." 820 ::= { httpTimeoutEntry 1 } 821 -- Instrumentation: Agent internal 822 httpTimeoutNumber OBJECT-TYPE 823 SYNTAX INTEGER (0..64) 824 MAX-ACCESS not-accessible 825 STATUS current 826 DESCRIPTION 827 "The unique identifier for the last Timeout." 828 ::= { httpTimeoutEntry 2 } 829 -- Instrumentation: Agent internal 831 httpTimeoutRemoteAddress OBJECT-TYPE 832 SYNTAX DisplayString 833 MAX-ACCESS read-only 834 STATUS current 835 DESCRIPTION 836 "The address of the remote entity." 837 ::= { httpTimeoutEntry 3 } 838 -- Instrumentation: Log file 840 httpTimeoutTime OBJECT-TYPE 841 SYNTAX TimeStamp 842 MAX-ACCESS read-only 843 STATUS current 844 DESCRIPTION 845 "The time when the time out occured with the 846 remote entity." 847 ::= { httpTimeoutEntry 4 } 848 -- Instrumentation: Log file 850 -- 851 -- Conformance and compliance definitions. 852 -- 854 httpMIBCompliance MODULE-COMPLIANCE 855 STATUS current 856 DESCRIPTION 857 "The compliance statement for SNMP entities 858 which implement the HTTP MIB." 859 MODULE -- this module 860 MANDATORY-GROUPS { httpMIBGroup } 861 ::= { httpMIBCompliances 4 } 862 httpMIBGroup OBJECT-GROUP 863 OBJECTS { 864 httpEntityIndex, httpEntityProtocol, 865 httpEntityDescription, httpEntityContact, 866 httpEntityProtocolVersion, httpEntityVendor, 867 httpEntityVersion, httpEntityObjectID, 868 httpEntityAddress, httpEntityPort, httpEntityIpAddress, 869 httpEntityLastInitialisation, httpEntityType, 870 httpSummaryEntityIndex, 871 httpSummaryRequests, httpSummaryRequestErrors, 872 httpSummaryRequestDiscards, 873 httpSummaryResponses, httpSummaryResponseErrors, 874 httpSummaryResponseDiscards, 875 httpSummaryInUnknowns, 876 httpSummaryInBytes, httpSummaryOutBytes, 877 httpSummaryTimeOuts, 878 httpRequestEntityIndex, 879 httpRequestMethodIndex, httpRequestInCount, 880 httpRequestInLastTime, httpRequestOutCount, 881 httpResponseEntityIndex, 882 httpResponseStatusIndex, httpResponseInCount, 883 httpResponseInLastTime, httpResponseOutCount, 884 httpResponseOutLastTime, 885 httpTimeoutNumber, 886 httpTimeoutEntityIndex, httpTimeoutRemoteAddress, 887 httpTimeoutTime } 888 STATUS current 889 DESCRIPTION 890 "The collection of objects allowing the 891 management of HTTP servers and clients." 892 ::= { httpMIBGroups 1 } 894 END 895 6. Acknowledgments 897 This document has been produced by the University of Twente 898 (The Netherlands), together with ESYS Limited (The United Kingdom), 899 as part of a `proof of concept' study for the `Centre of Earth 900 Observation' (CEO) of the `Joint Research Centre' (JRC) of the 901 European Community. This document has benefited greatly to the 902 comments of: 904 Carl W. Kalbfleisch 905 907 Mark Gamble 908 910 Rui Meneses 911 913 Juergen Schoenwaelder 914 915 7. References 917 [1] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and 918 S. Waldbusser, "Structure of Management Information for version 2 919 of the Simple Network Management Protocol (SNMPv2)", RFC 1902, 920 January 1996. 922 [2] McCloghrie, K., and M. Rose, Editors, "Management Information Base 923 for Network Management of TCP/IP-based internets: MIB-II", STD 17, 924 RFC 1213, Hughes LAN Systems, Performance Systems International, 925 March 1991. 927 [3] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and 928 S. Waldbusser, "Textual Conventions for version 2 of the Simple 929 Network Management Protocol (SNMPv2)", RFC 1903, January 1996. 931 [4] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and 932 S. Waldbusser, "Protocol Operations for version 2 of the Simple 933 Network Management Protocol (SNMPv2)", RFC 1905, January 1996. 935 [5] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and 936 S. Waldbusser, "Conformance Statements for version 2 of the Simple 937 Network Management Protocol (SNMPv2)", RFC 1904, January 1996. 939 [6] Case, J., M. Fedor, M. Schoffstall, J. Davin, "Simple Network 940 Management Protocol", RFC 1157, SNMP Research, Performance Systems 941 International, MIT Laboratory for Computer Science, May 1990. 943 [7] SNMPv2 Working Group, Case, J., McCloghrie, K., Rose, M., and 944 S. Waldbusser, "Introduction to Community-based SNMPv2", RFC 1901, 945 January 1996. 947 [8] HTTP Working Group, Berners-Lee, T., Fielding R. and Frystyk, H., 948 "Hypertext Transfer Protocol -- HTTP/1.0", Internet draft, 949 October 1995. 951 8. Security Considerations 953 Security issues are not discussed in this memo. 955 9. Authors' Addresses 957 Harrie Hazewinkel / Eric van Hengstum / Aiko Pras 958 University of Twente 959 Centre for Telematics and Information Technology (CTIT) 960 POBox 217 961 7500 AE Enschede, The Netherlands 962 Phone: +31-53-4893778 963 Email: hazewink@cs.utwente.nl 964 hengstum@cs.utwente.nl 965 pras@cs.utwente.nl 967 Table of Contents 969 1 Abstract .................................................. 2 970 2 The SNMPv2 Network Management Framework ................... 3 971 2.1 Object Definitions ...................................... 3 972 3 Introduction .............................................. 4 973 4 HyperText Transfer Protocol MIB structure ................. 5 974 4.1 System group ............................................ 5 975 4.2 Statistics group ........................................ 5 976 4.3 TimeOuts group .......................................... 6 977 5 HyperText Transfer Protocol MIB definition ................ 7 978 6 Acknowledgements .......................................... 22 979 7 References ................................................ 23 980 8 Security Considerations ................................... 23 981 9 Authors' Addresses ........................................ 23