180 likes | 289 Views
Introduction to USB Reasons to Monitor USB Design of USBMon Capabilities of USBMon Demonstration Conclusion + Update Questions. USB Monitoring. Final Presentation 10 th June 2001 David Harding. Dave Harding Final Presentation USB Monitoring 11 th June 2001.
E N D
Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions USB Monitoring Final Presentation 10th June 2001 David Harding Dave Harding Final Presentation USB Monitoring 11th June 2001
Agenda • Introduction to USB • Reasons for Monitoring • Design of USBMon • Capabilities of USBMon • Demonstration • Conclusion and Update • General Questions • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001
Universal Serial Bus • Replacement for RS-232 serial and parallel interfaces. • Higher Bandwidth (12 MBps total) • Up to 127 devices connected to one port • Wide diversity of devices from mice to ADSL modems and storage devices. • Very Widely used. • Multi-platform Multi-OS. • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001
Reasons to Monitor USB • USB bandwidth can be viewed as a limited system resource that should be of interest to a system administrator. • Debugging device drivers. • Debugging devices. • Reverse engineering of closed source device drivers. • Debugging Host Controller Drivers. • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001
USB System Model • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Host computer Hub Hub Keyboard Hub Camera Dave Harding Final Presentation USB Monitoring 11th June 2001 CD-ROM Printer Scanner
USB System Model Traditional Hardware Monitoring CustomHardware Undefined high-bandwidth link Monitoring computer • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Host computer Hub Hub Keyboard Hub Camera Dave Harding Final Presentation USB Monitoring 11th June 2001 CD-ROM Printer Scanner
Linux and USB • Linux USB development started in kernel version 2.2.7 • Linux USB widely available and usable in kernel version 2.4.0 (January 2001). • Linux USB supports kernel and user space device drivers. • Linux USB has a wide and growing number of device drivers. • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001
USB System Model • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Host computer Hub Hub Keyboard Hub Camera Dave Harding Final Presentation USB Monitoring 11th June 2001 CD-ROM Printer Scanner
USB System Model • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions DD DD DD Host computer USB core Linux Kernel Host controller driver Hub Hub Keyboard Hub Camera Dave Harding Final Presentation USB Monitoring 11th June 2001 CD-ROM Printer Scanner
USB System Model • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions DD DD DD Host computer Debug Information Modified USB core Linux Kernel Host controller driver Hub Monitoring Application Hub Keyboard Hub Camera Dave Harding Final Presentation USB Monitoring 11th June 2001 CD-ROM Printer Scanner
Design of USBMon • 2 Parts – • kernel patch • Monitoring Application • Interface via /proc filesystem • Optional levels of monitoring on a per endpoint basis. Monitoring levels can be changed dynamically during run-time. • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001
Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Existing Filesystem DD DD DD Configuration Information USB core Linux Kernel Host controller driver Existing Linux-USB configuration files Monitoring Application Dave Harding Final Presentation USB Monitoring 11th June 2001
Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Adapted Filesystem DD DD DD Level setting commands IN, Monitoring Information OUT Debug Information Modified USB core Linux Kernel Host controller driver New /proc files Existing Linux-USB configuration files Use existing Configuration Channel, and create new Data channel Monitoring Application Dave Harding Final Presentation USB Monitoring 11th June 2001
Capabilities of USBMon • Displays Bus topology and device details • Able to selectively monitor different endpoints on different devices at differing monitoring levels. • Able to report timing details of data transfers with microsecond accuracy. • Minimal effect on other USB traffic. • Able to trap the contents of a data transfer and display using various decoders. • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001
Demonstration Test Machine: 650 MHz Pentium III 128Mb SDRAM Integrated UHCI HC Red Hat 6.2 Linux 2.4.4 kernel IBM JVM 1.3 • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001
Conclusion and Update • Effective and Usable Monitoring tool. • A number of real users. • Strong interest from Linux USB community. • “An interesting idea” – David Brownell, jUSB website. http://jusb.sourceforge.net • Ideas being considered for inclusion in code for 2.5 kernel. • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001
Questions • Introduction to USB • Reasons to Monitor • USB • Design of USBMon • Capabilities of • USBMon • Demonstration • Conclusion + Update • Questions Dave Harding Final Presentation USB Monitoring 11th June 2001