Patentable/Patents/US-6381656
US-6381656

Method and apparatus for monitoring input/output (“I/O”) performance in I/O processors

PublishedApril 30, 2002
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A method and system for monitoring performance of an input/output (“I/O”) processor in a server associated with a computing system, such as an intelligent I/O (“I2O”) compliant computer system. A virtual adapter in the I/O processor monitors messages passing through the I/O processor to produce message data. An I/O monitor associated with each server in the computing system constructs a server communications model for its respective server using the message data provided by each of the virtual adapters associated with the I/O processors in the server. The I/O monitor may also collect information regarding non-I2O devices. An I/O user interface builds a computing system communications model using the server communications models provided by the respective I/O monitors in each of the computing system's servers. The I/O user interface provides selectable views for the computing system communications model and the server communications model for each of the servers in the computing system. The I/O user interface also provides controls for adjusting the operating characteristics of the virtual adapters in the I/O processors and for adjusting operating characteristics of the I/O monitors in the servers. The virtual adapters are visible throughout the computing system by appearing to the other components of the computing system as disk drives.

Patent Claims
70 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A monitoring system in a computing system having at least one server that has a central processing unit and at least one input/output processor, comprising: at least one virtual adapter that monitors input/output messages passing through the at least one input/output processor to produce message data; and an input/output user interface communicating with the at least one virtual adapter, the input/output user interface building a computing system communications model using the message data from the at least one virtual adapter.

2

2. The monitoring system of claim 1 , further comprising: an input/output monitor in communication with the at least one server that generates a server communications model for the at least one server using the message data produced by the at least one virtual adapter.

3

3. The monitoring system of claim 2 wherein the at least one server has at least another input/output processor, the monitoring system further comprising: at least another virtual adapter on the at least one server that monitors input/output messages passing through the at least another input/output processor to produce other message data, wherein the input/output monitor generates the server communications model for the at least one server using the message data and the other message data.

4

4. The monitoring system of claim 2 wherein the computing system has at least another server having a central processing unit and at least another input/output processor, further comprising: at least another virtual adapter on the at least another server that monitors input/output messages passing through the at least another input/output processor to produce other message data; and another input/output monitor that communicates with the at least another server and that generates a server communications model for the at least another server using the other message data produced by the at least another virtual adapter.

5

5. The monitoring system of claim 2 wherein the input/output monitor monitors device messages passing through the at least one server to produce device data and uses the device data and the message data to generate the server communications model.

6

6. The monitoring system of claim 2 wherein the input/output monitor stores the message data received from the at least one virtual adapter.

7

7. The monitoring system of claim 2 wherein the input/output user interface builds the computing system communications model using the server communications model.

8

8. The monitoring system of claim 1 wherein the server has at least another input/output processor, the system further comprising: at least another virtual adapter that monitors messages passing through the at least another input/output processor to produce other message data, wherein the input/output user interface builds the computing system communications model using the message data and the other message data.

9

9. The monitoring system of claim 1 wherein the computing system has at least another server that has another central processing unit and has at least another input/output processor, the monitoring system further comprising: at least another virtual adapter that monitors messages passing through the at least another input/output processor of the at least another server to produce other message data; wherein the input/output user interface builds the computing system communications model using the message data and the other message data.

10

10. The monitoring system of claim 9 , further comprising: an input/output monitor associated with the at least one server that generates a server communications model for the at least one server using the message data produced by the at least one virtual adapter; and another input/output monitor associated with the at least another server that generates another server communications model using the other message data produced by the at least another virtual adapter.

11

11. The monitoring system of claim 1 wherein the at least one virtual adapter produces message data by capturing input/output messages passing through the at least one input/output processor.

12

12. The monitoring system of claim 1 wherein the at least one virtual adapter analyzes the messages passing through the at least one input/output processor to determine a message type for each message analyzed.

13

13. The monitoring system of claim 1 wherein the at least one virtual adapter may be accessed throughout the computing system.

14

14. The monitoring system of claim 13 wherein the at least one virtual adapter has access characteristics of a disk drive.

15

15. The monitoring system of claim 1 wherein the at least one virtual adapter includes in the message data a timestamp for the monitored input/output messages.

16

16. The monitoring system of claim 1 wherein the virtual adapter filters the input/output messages based on at least one of an input/output device type or an input/output message type.

17

17. The monitoring system of claim 1 wherein the at least one virtual adapter includes programming code for inserting itself into an operating environment of the at least one input/output processor.

18

18. The monitoring system of claim 1 wherein the input/output user interface adjusts performance characteristics of the at least one virtual adapter.

19

19. The monitoring system of claim 1 wherein the input/output user interface presents a selectable view of the computing system communications model.

20

20. The monitoring system of claim 19 wherein the selectable view of the computing system communications model includes at least one of a three-dimensional plot showing utilization of the at least one input/output processor over time, cumulative input/output message utilization over time, and cumulative input/output message utilization in megabytes on the computing system over time.

21

21. A virtual adapter that monitors input/output messages transmitted in an input/output processor in a computing system having a central processing unit and communicates input/output message data to a monitoring system, comprising: a message interface module that communicates the input/output message data to the monitoring system; and an input/output message capture module that copies a portion of the input/output messages transmitted in the input/output processor to produce the input/output message data provided by the message interface module.

22

22. The virtual adapter of claim 21 , further comprising: an input/output message buffer that stores the copied portions of the input/output messages.

23

23. The virtual adapter of claim 21 , further comprising: a virtual disk addressable by the monitoring system that contains at least one virtual file, wherein reading of the at least one virtual file by the monitoring system causes the virtual adapter to send data associated with the at least one virtual file to the monitoring system.

24

24. The virtual adapter of claim 23 wherein writing to the at least one virtual file by the monitoring system causes the virtual adapter to receive new control data.

25

25. The virtual adapter of claim 21 wherein the message interface module communicates with an operating system of the input/output processor.

26

26. The virtual adapter of claim 21 wherein the monitoring system is an input/output user interface that builds a computing system communications model using the input/output message data.

27

27. The virtual adapter of claim 21 wherein the input/output processor resides in a server in the computing system and the monitoring system is an input/output monitor on the server and generates a server communications model using the input/output message data sent by the virtual adapter.

28

28. The virtual adapter of claim 27 wherein the input/output monitor receives the copied portion of input/output messages from the virtual adapter.

29

29. The virtual adapter of claim 21 wherein the input/output message capture module analyzes the input/output messages passing through the one input/output processor to determine a message type for each message.

30

30. The virtual adapter of claim 21 wherein the input/output message capture module timestamp each copied portion of the input/output messages.

31

31. The virtual adapter of claim 21 wherein the virtual adapter filters the input/output messages based on at least one of an input/output device type or an input/output message type.

32

32. The virtual adapter of claim 21 wherein the message interface modules includes programming code for inserting itself into an operating environment of the input/output processor.

33

33. A method for monitoring a computing system having at least one server that has a central processing unit and has at least one input/output processor, the method comprising: monitoring input/output messages passing through the at least one input/output processor by a virtual adapter that produces message data; and generating a server communications model using the message data provided by the virtual adapter.

34

34. The method of claim 33 wherein generating the server communications model comprises: transferring the message data from the virtual adapter to a remote input/output user interface, in communication with the virtual adapter, that generates the server communications model.

35

35. The method of claim 33 , further comprising: providing user selectable views of the server communications model in an input/output user interface.

36

36. The method of claim 33 wherein the server has at least one other input/output processor, the method further comprising: monitoring input/output messages passing through the at least one other input/output processor by at least one other virtual adapter that produces other message data; and generating the server communications model using the message data and the other message data.

37

37. The method of claim 33 wherein the computing system has at least one other server that has another central processing unit and has at least one input/output processor, the method further comprising: monitoring input/output messages passing through the at least one other input/output processor of the at least one other server by at least one other virtual adapter that produces other message data; and producing a computing system communications model using the message data and the other message data.

38

38. The method of claim 33 , further comprising: analyzing the input/output messages passing through the at least one input/output processor to determine a message type for each input/output message monitored.

39

39. The method of claim 33 , further comprising: making the virtual adapter accessible throughout the computing system by generating a virtual disk for the virtual adapter.

40

40. The method of claim 33 , further comprising: timestamping the monitored input/output messages placed in the message data by the at least one virtual adapter.

41

41. The method of claim 33 , further comprising: inserting the virtual adapter into an operating environment of the at least one input processor.

42

42. The method of claim 33 , further comprising: adjusting performance characteristics of the virtual adapter through commands sent from an input/output user interface.

43

43. The method of claim 33 , further comprising providing selectable views of the server communications model, wherein the selectable view of the server communications model includes at least one of a three-dimensional plot showing utilization of the input/output processor over time, cumulative input/output message utilization over time, and cumulative input/output message utilization in megabytes on the server over time.

44

44. The method of claim 33 , further comprising: filtering the input/output messages passing through the computing system using selectable filters.

45

45. The method of claim 44 wherein the selectable filters filter the input/output messages based on at least one of an input/output device type or an input/output message type.

46

46. A method for monitoring input/output messages transmitted in an input/output processor in a computing system having a central processing unit and communicating input/output message data to a monitoring system, comprising: communicating the input/output message data to the monitoring system from a message interface module associated with the input/output processor; and copying a portion of the input/output messages transmitted in the input/output processor to produce the input/output message data.

47

47. The method of claim 46 , further comprising: storing the copied portions of the input/output messages in an input/output message buffer associated with the input/output processor.

48

48. The method of claim 46 , further comprising: creating a virtual disk on the input/output processor that is addressable by the monitoring system and contains at least one virtual file; and reading the at least one virtual file by the monitoring system to cause data associated with the at least one virtual file to be sent to the monitoring system.

49

49. The method of claim 48 , further comprising: writing to the at least one virtual file from the monitoring system to download new control data.

50

50. The method of claim 46 wherein the message interface module communicates with an operating system on the input/output processor.

51

51. The method of claim 46 wherein the monitoring system is an input/output user interface in the computing system, further comprising: building a computing system communications model the input/output message data from the message interface module.

52

52. The method of claim 46 wherein the monitoring system resides in a server in the computing system, further comprising: generating a server communications model using the input/output data.

53

53. The method of claim 52 wherein the server communications model is produced in an input/output monitor that receives the copied portion of the input/output messages from the virtual adapter.

54

54. The method of claim 46 , further comprising: analyzing the input/output messages passing through the input/output processor to determine a message type for each message.

55

55. The method of claim 46 , further comprising: associating a timestamp with each copied portion of the input/output messages by the message capture module.

56

56. The method of claim 46 , further comprising: filtering the input/output messages based on at least one of an input/output device type or an input/output message type.

57

57. The method of claim 46 wherein the message interface module inserts itself into an operating environment of the input/output processor.

58

58. A computer-implemented method for monitoring a computing system having at least one server that has a central processing unit and has at least one input/output processor, comprising: monitoring input/output messages passing through the at least one input/output processor by a virtual adapter that produces message data; and generating a server communications model using the message data provided by the virtual adapter.

59

59. The computer-implemented method of claim 58 wherein generating the server communications model comprises: transferring the message data from the virtual adapter to a remote input/output user interface, in communication with the virtual adapter, that generates the server communications model.

60

60. The computer-implemented method of claim 58 , further comprising: providing user selectable views of the server communications model in an input/output user interface.

61

61. The computer-implemented method of claim 58 wherein the server has at least one other input/output processor, the computer-implemented method further comprising: monitoring input/output messages passing through the at least one other input/output processor by at least one other virtual adapter that produces other message data; and generating the server communications model using the message data and the other message data.

62

62. The computer-implemented method of claim 58 wherein the computing system has at least one other server that has another central processing unit and has at least one input/output processor, the computer-implemented method further comprising: monitoring input/output messages passing through the at least one other input/output processor of the at least one other server by at least one other virtual adapter that produces other message data; and producing a computing system communications model using the message data and the other message data.

63

63. The computer-implemented method of claim 58 , further comprising: analyzing the input/output messages passing through the at least one input/output processor to determine a message type for each input/output message monitored.

64

64. The computer-implemented method of claim 58 , further comprising: making the virtual adapter accessible throughout the computing system by generating a virtual disk for the virtual adapter.

65

65. The computer-implemented method of claim 58 , further comprising: timestamping the monitored input/output messages placed in the message data by the at least one virtual adapter.

66

66. The computer-implemented method of claim 58 , further comprising: inserting the virtual adapter into an operating environment of the at least one input processor.

67

67. The computer-implemented method of claim 58 , further comprising: adjusting performance characteristics of the virtual adapter through commands sent from an input/output user interface.

68

68. The computer-implemented method of claim 58 , further comprising providing selectable views of the server communications model, wherein the selectable view of the server communications model includes at least one of a three-dimensional plot showing utilization of the input/output processor over time, cumulative input/output message utilization over time, and cumulative input/output message utilization in megabytes on the server over time.

69

69. The computer-implemented method of claim 58 , further comprising: filtering the input/output messages passing through the computing system using selectable filters.

70

70. The computer-implemented method of claim 69 wherein the selectable filters filter the input/output messages based on at least one of an input/output device type or an input/output message type.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

March 10, 1999

Publication Date

April 30, 2002

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Method and apparatus for monitoring input/output (“I/O”) performance in I/O processors” (US-6381656). https://patentable.app/patents/US-6381656

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.