IBM Support

PH20788: ULB IS NOT HANDLING MBUFS CORRECTLY

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • a) mbufs received from collocated clients do not contain the
    ethernet headers but ULB assumes they do and overwrites memory
    where the ethernet headers normally exist.
    
    b) ULB is
    attempting to modify the ethernet headers for packets forwarded
    to collocated servers and it should not (packets should be
    passed to collocated server unchanged).
    
    c) ULB is not
    handling mbuf reads correct and assumes all required data is in
    the first mbuf which may not be the case
    
    d) ULB handles some
    pings without forwarding to backend servers (NAT defined
    servers for example). ULB is not responding correctly because
    it attempts to read the entire payload which is typically not
    in a single mbuf.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  IBM WebSphere Application Server Load       *
    *                  Balancer for IPv4 and IPv6 users on AIX     *
    ****************************************************************
    * PROBLEM DESCRIPTION: Users could experience hangs or         *
    *                      crashes on the ULB system.              *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    The Load Balancer for IPv4 and IPv6 intercepts network traffic
    at the kernel level which means it reads packets from the
    adapter level rather than from IP. As such, the data is stored
    in mbuf structures rather than a contiguous data stream. The
    load balancer must handle the data structures in a different
    manner to ensure it does not corrupt the data structure or
    access memory which is out of bounds.
    

Problem conclusion

  • Code was corrected to ensure LB AIX code handles data stored
    in mbufs correctly.
    
    Fix levels:
       8.5.5.18
       9.0.5.4
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH20788

  • Reported component name

    WS EDGE LB IPV4

  • Reported component ID

    5724H8812

  • Reported release

    850

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-01-08

  • Closed date

    2020-03-02

  • Last modified date

    2020-03-02

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    WS EDGE LB IPV4

  • Fixed component ID

    5724H8812

Applicable component levels

[{"Business Unit":{"code":"BU048","label":"IBM Software"},"Product":{"code":"SSCRMEM","label":"Edge Component"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.5","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
27 March 2020