[id='cluster_transport']
:context: configuring
= Setting Up Cluster Transport
{brandname} nodes rely on a transport layer to join and leave clusters as well
as to replicate data across the network.

{brandname} uses JGroups technology to handle cluster transport. You configure
cluster transport with JGroups stacks, which define properties for either UDP
or TCP protocols.

include::{topics}/proc_using_jgroups_preconfigured.adoc[leveloffset=+1]
include::{topics}/ref_jgroups_preconfigured.adoc[leveloffset=+2]
include::{topics}/ref_default_jgroups_stacks.adoc[leveloffset=+2]
include::{topics}/proc_using_jgroups_inline.adoc[leveloffset=+1]
include::{topics}/proc_using_jgroups_inheritance.adoc[leveloffset=+1]
include::{topics}/ref_jgroups_stackcombine_attribute.adoc[leveloffset=+2]
include::{topics}/proc_using_jgroups_external.adoc[leveloffset=+1]
include::{topics}/proc_tuning_jgroups.adoc[leveloffset=+1]
include::{topics}/ref_jgroups_preconfigured_tuning.adoc[leveloffset=+2]
//Community
ifndef::productized[]
include::{topics}/proc_using_custom_jchannels.adoc[leveloffset=+1]
endif::productized[]

// Restore the parent context.
ifdef::parent-context[:context: {parent-context}]
ifndef::parent-context[:!context:]
