GRPC Core  18.0.0
Data Structures | Namespaces | Macros | Functions | Variables
xds_client.cc File Reference
#include <grpc/support/port_platform.h>
#include <inttypes.h>
#include <limits.h>
#include <string.h>
#include "absl/container/inlined_vector.h"
#include "absl/strings/str_format.h"
#include "absl/strings/str_join.h"
#include "absl/strings/string_view.h"
#include <grpc/byte_buffer_reader.h>
#include <grpc/grpc.h>
#include <grpc/support/alloc.h>
#include <grpc/support/time.h>
#include "src/core/ext/filters/client_channel/client_channel.h"
#include "src/core/ext/filters/client_channel/service_config.h"
#include "src/core/ext/xds/xds_api.h"
#include "src/core/ext/xds/xds_bootstrap.h"
#include "src/core/ext/xds/xds_channel_args.h"
#include "src/core/ext/xds/xds_client.h"
#include "src/core/ext/xds/xds_client_stats.h"
#include "src/core/ext/xds/xds_http_filters.h"
#include "src/core/lib/address_utils/sockaddr_utils.h"
#include "src/core/lib/backoff/backoff.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/channel/channel_stack.h"
#include "src/core/lib/gpr/env.h"
#include "src/core/lib/gprpp/memory.h"
#include "src/core/lib/gprpp/orphanable.h"
#include "src/core/lib/gprpp/ref_counted_ptr.h"
#include "src/core/lib/gprpp/sync.h"
#include "src/core/lib/iomgr/sockaddr.h"
#include "src/core/lib/iomgr/timer.h"
#include "src/core/lib/slice/slice_internal.h"
#include "src/core/lib/slice/slice_string_helpers.h"
#include "src/core/lib/surface/call.h"
#include "src/core/lib/surface/channel.h"
#include "src/core/lib/surface/channel_init.h"
#include "src/core/lib/transport/static_metadata.h"

Data Structures

class  grpc_core::XdsClient::ChannelState::RetryableCall< T >
 
class  grpc_core::XdsClient::ChannelState::AdsCallState
 
class  grpc_core::XdsClient::ChannelState::LrsCallState
 
class  grpc_core::XdsClient::ChannelState::StateWatcher
 

Namespaces

 grpc_core
 Round Robin Policy.
 
 grpc_core::internal
 

Macros

#define GRPC_XDS_INITIAL_CONNECT_BACKOFF_SECONDS   1
 
#define GRPC_XDS_RECONNECT_BACKOFF_MULTIPLIER   1.6
 
#define GRPC_XDS_RECONNECT_MAX_BACKOFF_SECONDS   120
 
#define GRPC_XDS_RECONNECT_JITTER   0.2
 
#define GRPC_XDS_MIN_CLIENT_LOAD_REPORTING_INTERVAL_MS   1000
 
#define GRPC_ARG_XDS_CLIENT   "grpc.internal.xds_client"
 

Functions

void grpc_core::XdsClientGlobalInit ()
 
void grpc_core::XdsClientGlobalShutdown () ABSL_NO_THREAD_SAFETY_ANALYSIS
 
void grpc_core::internal::SetXdsChannelArgsForTest (grpc_channel_args *args)
 
void grpc_core::internal::UnsetGlobalXdsClientForTest ()
 
void grpc_core::internal::SetXdsFallbackBootstrapConfig (const char *config)
 
grpc_slice grpc_dump_xds_configs ()
 EXPERIMENTAL. More...
 

Variables

TraceFlag grpc_core::grpc_xds_client_trace (false, "xds_client")
 
TraceFlag grpc_core::grpc_xds_client_refcount_trace (false, "xds_client_refcount")
 

Macro Definition Documentation

◆ GRPC_ARG_XDS_CLIENT

#define GRPC_ARG_XDS_CLIENT   "grpc.internal.xds_client"

◆ GRPC_XDS_INITIAL_CONNECT_BACKOFF_SECONDS

#define GRPC_XDS_INITIAL_CONNECT_BACKOFF_SECONDS   1

◆ GRPC_XDS_MIN_CLIENT_LOAD_REPORTING_INTERVAL_MS

#define GRPC_XDS_MIN_CLIENT_LOAD_REPORTING_INTERVAL_MS   1000

◆ GRPC_XDS_RECONNECT_BACKOFF_MULTIPLIER

#define GRPC_XDS_RECONNECT_BACKOFF_MULTIPLIER   1.6

◆ GRPC_XDS_RECONNECT_JITTER

#define GRPC_XDS_RECONNECT_JITTER   0.2

◆ GRPC_XDS_RECONNECT_MAX_BACKOFF_SECONDS

#define GRPC_XDS_RECONNECT_MAX_BACKOFF_SECONDS   120

Function Documentation

◆ grpc_dump_xds_configs()

grpc_slice grpc_dump_xds_configs ( )

EXPERIMENTAL.

Dumps xDS configs as a serialized ClientConfig proto. The full name of the proto is envoy.service.status.v3.ClientConfig.