UDP::hold¶
Description¶
This iRules command holds back processing of input packets until
UDP::release is called.
In certain use cases, it is desirable to delay processing of UDP input
packets until after certain routing, address translation, or load
balancing determinations have occured. For example, certain media
control protocols embed IP addresses in the payload, which need to be
translated from public IP to private IP inbound through a firewall,
and vice versa on the way out.
Since this command could introduce some delay, it is advisable to
enable some amount of packet buffering in the UDP profile. See the Max
Buffer Packets and Max Buffer Bytes settings.
This command holds data back, so it is not compatible with other
filters and event handlers that require data to make load balancing
decisions, and could find themselves blocked waiting on data that is
being held.