F5 Developing iRules for BIG-IP v1.2



This course provides networking professionals a functional understanding of iRules development. In this course, you will learn how to logically plan and write iRules to help monitor and manage common tasks involved with processing traffic on the BIG-IP. This hands-on course includes lectures, labs, and discussions.


  • System administrators
  • Network administrators
  • Application developers
  • Individuals responsible for the customization of traffic flow through a BIG-IP system

Learning Objectives

  • Setting up the BIG-IP system
  • Getting started with iRules
  • Using the iRules Editor
  • Leveraging DevCentral resources for iRule development
  • Exploring iRule elements, including events, functions, commands, variables, and operators
  • Using control structures for branching and looping
  • Mastering whitespace, grouping, and special symbols
  • Logging from an iRule using syslog-ng and high-speed logging (HSL)
  • Optimizing iRules execution, including implementing efficiency best practices
  • Modularizing iRules for administrative efficiency, including using procedures
  • Securing applications with iRules, including preventing common HTTP attacks
  • Working with strings, including using Tcl parsing commands and iRules parsing functions
  • Accessing and manipulating HTTP traffic, including selective HTTP compression
  • Working with iFiles and data groups
  • Using iRules with universal persistence and stream profiles
  • Gathering statistics using the statistics profile and iStats
  • Incorporating advanced variables, including arrays, static global variables, and the session table

Course Outline:

1. Setting Up the BIG-IP System

  • Introducing the BIG-IP System
  • Initially Setting Up the BIG-IP System
  • Archiving the BIG-IP Configurations
  • Leveraging F5 Support Resources and Tools

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

3. Exploring iRule Elements

  • Understanding Events and Event Context
  • Introducing iRule Constructs
  • Working with iRule Commands
  • Working with User-Defined Variables
  • Working with Operators and Data Types
  • Working with Control Structures
  • Logging from an iRule Using syslog-ng
  • Incorporating Best Practices in iRules

4. Developing and Troubleshooting iRules

  • Mastering Whitespace and Special Symbols
  • Developing and Troubleshooting Tips
  • Using Fiddler to Test and Troubleshoot iRules

5. Optimizing iRules Execution

  • Understanding the Need for Efficiency
  • Measuing iRule Runtime Efficiency
  • Modularizing for Administrative Efficiency
  • Using Procedures to Modularize Code
  • Optimizing Logging
  • Implementing Other Efficiency Best Practices

6. Securing Applications with iRules

  • Reviewing BIG-IP Security Features
  • Preventing Common HTTP Attacks

7. Working with Numbers and Strings

  • Understanding Number Forms and Notation
  • Working with Strings

8. Focusing on HTTP Traffic

  • Reviewing HTTP Headers and Commands
  • Accessing and Manipulating HTTP Headers
  • Parsing the HTTP URI
  • Selectively Compressing HTTP Data

9. Working with iFiles and Data Groups

  • Working with iFiles
  • Working with Data Groups
  • Processing Data Groups

10. Using iRules with Universal Persistence, Stream, and Statistics Profiles

  • Implementing Universal Persistence
  • Working with the Stream Profile
  • Working with the Statistics Profile
  • Using iStats

11. Incorporating Advanced Variables

  • Using Advanced Variables
  • Using Static Variables
  • Understanding Global Variables
  • Using the Session Table

12. Additional Training and Certification

  • Getting Started Series Web-Based Training
  • F5 Instructor Led Training Curriculum
  • F5 Professional Certification Program

13. Appendix A: Possible Lab Solutions