ietf-openproxy
[Top] [All Lists]

Re: An opes usage question.

2004-03-09 23:31:26

On Tue, 9 Mar 2004, John G. Waclawsky wrote:

Let's assume a pool of proxies at a stage (of the pipeline) are all
measuring content bytes and amassing billing information.  The
traffic flows from the content servers are being distributed over
the pool of billing proxies in a particular stage by a load
balancer. The reason to identify a billing proxy individually is
simply because that is where a particular flow's billing information
is located. Even though all the proxies are doing the same thing,
monitoring the content passing by and billing by the byte, they will
be working with different content on a flow by flow basis. So what
they do in the case of each flow will be different and each flow
will have a different bill.

I agree that each proxy behind a load balancer works on different
flows and, hence, keeps different information. However, I argue that a
good protocol (and a compliant load balancer) will hide that fact from
outside observers. The load balancer will provide mapping between its
trace entry/ID and particular proxy in the pool. The outside observers
will only see an opaque ID and will not care that it maps to one of
the pooled proxies. Please see below for an example.

If we change the number of bytes at an adaptation stage down stream
from the billing proxies how do we get the information about the
adaptation change back to the correct billing proxy.

Let me sketch a solution:

        1) billing-proxy-i inserts its ID "B-i" into the trace

        2) load balancer replaces "B-i" with "LB-1/i" in the trace
           the tracing protocol requires that the optional
           information in the ID (stuff "after the slash") is
           forwarded but does not affect ID comparison and
           protocol-level addressing

        3) if an adaptation proxy wants to send an update about
           the current flow it is adapting, it talks directly to
           the load balancer, using the "LB-1/i" ID supplied by
           that load balancer

        4) upon receiving a notification from an adaptation
           proxy, the load balancer converts "LB-1/i" ID to
           "B-i" and forwards the notification to billing-proxy-i

Note that neither the billing proxy nor the adaptation proxy know that
they are talking to a load balancer. Each of them, perceives the load
balancer as a "standard" OPES proxy, just like they are themselves.
Only the load balancer knows about the address translation (to use a
forbidden expression; but it is fine to do address translation on this
level, we are not talking about IP NATs here, of course, more like
URNs).

Does this clarify my take on the problem?

Thanks,

Alex.


<Prev in Thread] Current Thread [Next in Thread>