Package internal contains functions/structs shared by xds balancers/resolvers.
const XDSClientID = clientID("xdsClientID")
XDSClientID is the attributes key used to pass the address of the xdsClient object shared between the resolver and the balancer. The xdsClient object is created by the resolver and passed to the balancer.
LocalityID is xds.Locality without XXX fields, so it can be used as map keys.
xds.Locality cannot be map keys because one of the XXX fields is a slice.
LocalityIDFromString converts a string representation of locality, of the form region:zone:sub-zone (as generated by the above String() method), into a LocalityID struct.
String generates a string representation of LocalityID by adding ":" between the components of the LocalityID.
|balancer||Package balancer installs all the xds balancers.|
|balancer/balancergroup||Package balancergroup implements a utility struct to bind multiple balancers into one balancer.|
|balancer/cdsbalancer||Package cdsbalancer implements a balancer to handle CDS responses.|
|balancer/edsbalancer||Package edsbalancer contains EDS balancer implementation.|
|balancer/lrs||Package lrs implements load reporting balancer for xds.|
|balancer/orca||Package orca implements Open Request Cost Aggregation.|
|balancer/weightedtarget||Package weightedtarget implements the weighted_target balancer.|
|balancer/weightedtarget/weightedaggregator||Package weightedaggregator implements state aggregator for weighted_target balancer.|
|balancer/xdsrouting||Package xdsrouting implements the routing balancer for xds.|
|client||Package client implementation a full fledged gRPC client for the xDS API used by the xds resolver and balancer implementations.|
|client/bootstrap||Package bootstrap provides the functionality to initialize certain aspects of an xDS client by reading a bootstrap file.|
|client/load||Package load provides functionality to record and maintain load data.|
|client/v2||Package v2 provides xDS v2 transport protocol specific functionality.|
|client/v3||Package v3 provides xDS v3 transport protocol specific functionality.|
|resolver||Package resolver implements the xds resolver, that does LDS and RDS to find the cluster to use.|
|testutils||Package testutils provides utility types, for use in xds tests.|
|testutils/fakeclient||Package fakeclient provides a fake implementation of an xDS client.|
|testutils/fakeserver||Package fakeserver provides a fake implementation of an xDS server.|
|version||Package version defines constants to distinguish between supported xDS API versions.|