This course provides networking professionals a functional understanding of iRules development. The course builds on the foundation of the Administering BIG-IP course, demonstrating how to logically plan and write iRules to help monitor and manage common tasks involved with processing traffic on the BIG-IP system. Extensive course labs consist of writing, applying and evaluating the effect of iRules on local traffic.
Pre-requisite(s):
Administering BIG-IP or Configuring BIG-IP LTM: Local Traffic Manager or hold the F5 Certified BIG-IP Administrator certification.
Audience:
This course is intended for system administrators, network administrators and application developers responsible for the customization of traffic flow through a BIG-IP system.
Outline:
Lesson 1 : Setting Up the BIG-IP System
Introducing the BIG-IP System
Initially Setting Up the BIG-IP System
Archiving the BIG-IP System Configuration
Leveraging F5 Support Resources and Tools
Lesson 2 : Getting Started with iRules
Customizing Application Delivery with iRules
Triggering an iRule
Leveraging the DevCentral Ecosystem
Using the F5 iRule Editor
Assigning and Testing iRules
Lesson 3 : Exploring iRule Elements
Introducing iRule Constructs
Understanding iRule Events and Event Context
Working with iRule Commands
Logging from an iRule Using SYSLOG-NG
Working with User-Defined Variables
Working with Operators and Data Types
Working with Control Structures
Incorporating Best Practices in iRules
Lesson 4 : Developing and Troubleshooting iRules
Mastering Whitespace and Special Symbols
Developing and Troubleshooting Tip
Tracing iRule Execution and Profiling Performance
Using Fiddler to Test and Troubleshoot iRules
Lesson 5 : Optimizing iRule Execution
Understanding the Need for Efficiency
Profiling iRule Performance with the Rule Profiler
Measure iRule Runtime Efficiency Using Timing Statistics
Modularizing iRules for Administrative Efficiency
Using Procedures to Modularize Code
Optimizing Logging
Using High-Speed Logging Commands in an iRule
Implementing Other Efficiency Recommendations
Using Looping Control Structures (Iteration)
Lesson 6 : Securing Web Applications with iRules
Integrating iRules into Web Application Defense
Mitigating HTTP Version Attacks
Mitigating Path Traversal Attacks
Using iRules to Defends Against Cross-Site Request Forgery (CSRF)
Mitigating HTTP Method Vulnerabilities
Securing HTTP Cookies with iRules
Adding HTTP Security Headers
Removing Undesirable HTTP Headers
Lesson 7 : Working with Numbers and Strings
Understanding Number Forms and Notation
Working with Strings
Combining Strings
Using iRule String Parsing Functions
Lesson 8 : Processing the HTTP Payload
Reviewing HTTP Headers and Commands
Accessing and Manipulating HTTP Headers
Parsing the HTTP URI
Selectively Compressing HTTP Data
Lesson 9 : Working with iFiles and Data Groups
Working with iFiles
Introducing Data Groups
Working with Old Format Data Groups
Working with New Format Data Groups
Lesson 10 : Using iRules with Universal Persistence, Stream, and Statistics Profiles
Implementing Universal Persistence
Working with the Stream Profile
Collecting Statistics Using a Statistics Profile (STATS Command)
Collecting Statistics Using iStats (ISTATS Command)
Lesson 11 : Working with Advanced Variables
Reviewing the Local Variable Namespace
Working with Arrays
Using Static and Global Variables
Using the Session Table