Forum Discussion

Yuri_Duchovny_1's avatar
Yuri_Duchovny_1
Icon for Nimbostratus rankNimbostratus
Mar 02, 2008

Splitting Client-Server connection by i-rule

Hello,

 

 

I’m working on the i-rule that should split TCP traffic coming from one inbound connection to a number of servers configured in the pool.

 

In other words, F5 should work like: one client connection <-> number of server connections.

 

I succeeded to do some tests using OneConnect pool, but I can not meet two requirements:

 

 

1)The content of some TCP packets should be sent to all servers in the pool.

 

Here the “clone pool” command didn’t help a lot due to it can be used only once ( I have lets say 10 servers in the pool) and also it links servers forever.

 

2)Incoming TCP traffic from one particular client must go to all servers but only over TCP connections dedicated to this client. (Server should “think” that this client just connected to it over a number of TCP connections, but not a number of clients are sharing the same connection).

 

Here I’m looking for possibility to group somehow the F5 <-> Pool Members connections and make F5 perform balancing decision not using all connections in OneConnect pool, but using the kind of “virtual pool”.

 

 

Thanks to anyone who might have an idea how to solve these issues.

 

 

Thanks,

 

Yuri.

 

  • hoolio's avatar
    hoolio
    Icon for Cirrostratus rankCirrostratus
    I don't think there is a function within iRules or in LTM in general for duplicating packets to multiple destinations beyond cloning to one more destination. If it were HTTP you might be able to serially send a single request to multiple destinations, but this approach would be horribly inefficient for what you're describing.

     

     

    Aaron
  • Thank you very much for your answer.

     

     

    Unfortunately it’s not HTTP, so probably I can to solve the problem with duplication on the server application layer.

     

     

    Do you have any ideas about my second question? I’m still looking for possibility to split client connections to all servers in the pool, but not mash them.

     

     

    Thanks in advance,

     

    Yuri.

     

  • hoolio's avatar
    hoolio
    Icon for Cirrostratus rankCirrostratus
    If you want to use a serverside connection exclusively for one client, you can enable OneConnect with a mask of /32 (255.255.255.255).

     

     

    Aaron