Uses of Class
org.jgroups.stack.Protocol
Packages that use Protocol
Package
Description
Provides top-level public JGroups classes such as Channel, Message, etc.
Provides building blocks that are layered on top of channels.
Provides ways to configure a protocol stack.
Provides implementations of transport protocols which are
responsible for sending and receiving messages to/from the network.
Support for managing protocol stacks.
Provides useful functionality which cannot be assigned to any particular other package.
-
Uses of Protocol in org.jgroups
Methods in org.jgroups with parameters of type ProtocolModifier and TypeMethodDescriptionprotected MethodJChannelProbeHandler.findMethod(Protocol prot, String method_name, String[] args) Constructors in org.jgroups with parameters of type ProtocolModifierConstructorDescriptionCreates a channel from an array of protocols.Constructor parameters in org.jgroups with type arguments of type Protocol -
Uses of Protocol in org.jgroups.blocks
Subclasses of Protocol in org.jgroups.blocksFields in org.jgroups.blocks declared as ProtocolModifier and TypeFieldDescriptionprotected ProtocolRequestCorrelator.down_protThe protocol layer to use to pass up/down messages.Methods in org.jgroups.blocks with type parameters of type ProtocolModifier and TypeMethodDescription<T extends Protocol>
TMessageDispatcher.ProtocolAdapter.setAddress(Address addr) <T extends Protocol>
TMessageDispatcher.ProtocolAdapter.setDownProt(Protocol d) Methods in org.jgroups.blocks with parameters of type ProtocolModifier and TypeMethodDescriptionprotected static RequestCorrelatorMessageDispatcher.createRequestCorrelator(Protocol transport, RequestHandler handler, Address local_addr) <T extends Protocol>
TMessageDispatcher.ProtocolAdapter.setDownProt(Protocol d) Constructors in org.jgroups.blocks with parameters of type ProtocolModifierConstructorDescriptionRequestCorrelator(Protocol down_prot, RequestHandler handler, Address local_addr) Constructor. -
Uses of Protocol in org.jgroups.conf
Methods in org.jgroups.conf that return types with arguments of type ProtocolModifier and TypeMethodDescriptionProtocolConfiguration.loadProtocolClass(Class<?> loadingClass) Load the class of theProtocolconfigured by this instance.Methods in org.jgroups.conf with parameters of type ProtocolModifier and TypeMethodDescriptiondefault voidProtocolStackConfigurator.afterCreation(Protocol prot) private static intPropertyConverters.InitialHosts.getPortRange(Protocol protocol) private static voidPropertyConverters.BindInterface.setBindAddress(Protocol protocol, InetAddress bind_addr) Method parameters in org.jgroups.conf with type arguments of type ProtocolModifier and TypeMethodDescriptionbooleanProtocolConfiguration.isAssignableProtocol(Class<? extends Protocol> other, Class<?> loadingClass) Determines if the classotheris the same or superclass (or superinterface) as theProtocolconfigured by this instance. -
Uses of Protocol in org.jgroups.fork
Subclasses of Protocol in org.jgroups.forkModifier and TypeClassDescriptionclassActs as bottom protocol of a fork-stack.classProtocol stack which maintains the mapping between fork-channel IDs and ForkChannelsFields in org.jgroups.fork with type parameters of type ProtocolMethods in org.jgroups.fork that return types with arguments of type ProtocolMethod parameters in org.jgroups.fork with type arguments of type ProtocolModifier and TypeMethodDescriptionprotected static FORKForkChannel.getFORK(JChannel ch, ProtocolStack.Position position, Class<? extends Protocol> neighbor, boolean create_fork_if_absent) Creates a new FORK protocol, or returns the existing one, or throws an exception.Constructors in org.jgroups.fork with parameters of type ProtocolModifierConstructorDescriptionForkChannel(JChannel main_channel, String fork_stack_id, String fork_channel_id, boolean create_fork_if_absent, ProtocolStack.Position position, Class<? extends Protocol> neighbor, Protocol... protocols) Creates a new fork-channel from a main-channel.ForkChannel(JChannel main_channel, String fork_stack_id, String fork_channel_id, Protocol... protocols) Creates a new fork-channel from a main-channel.Constructor parameters in org.jgroups.fork with type arguments of type ProtocolModifierConstructorDescriptionForkChannel(JChannel main_channel, String fork_stack_id, String fork_channel_id, boolean create_fork_if_absent, ProtocolStack.Position position, Class<? extends Protocol> neighbor, Protocol... protocols) Creates a new fork-channel from a main-channel.ForkProtocolStack(UnknownForkHandler unknownForkHandler, List<Protocol> protocols, String fork_stack_id) -
Uses of Protocol in org.jgroups.jmx
Methods in org.jgroups.jmx with parameters of type ProtocolModifier and TypeMethodDescriptionprivate static StringJmxConfigurator.getProtocolRegistrationName(String clusterName, String domain, Protocol p) private static StringJmxConfigurator.getProtocolRegistrationName(String clusterName, ObjectName prefix, Protocol p) static DynamicMBeanWrap Protocol with DynamicMBean interface. -
Uses of Protocol in org.jgroups.protocols
Subclasses of Protocol in org.jgroups.protocolsModifier and TypeClassDescriptionclassEncrypts and decrypts communication in JGroups by using a secret key distributed to all cluster members by the key server (coordinator) using asymmetric (public/private key) encryption.
The secret key is identical for all cluster members and is used to encrypt messages when sending and decrypt them when receiving messages.classThe AUTH protocol adds a layer of authentication to JGroups.classAll messages up the stack have to go through a barrier (read lock, RL).classShared base class for TCP protocolsclassBatches messages near the top of the stack.classBatches messages near the top of the stack.classBroadcast PING.classDeprecated.See http://belaban.blogspot.com/2020/11/i-hate-distributed-locks.html.classDeprecated.See http://belaban.blogspot.com/2020/11/i-hate-distributed-locks.html.classProtocol which clears a set of flags in the down or up direction for all messagesclassCompresses the payload of a message.classProtocol which is used byCounterServiceto provide a distributed atomic counterclassImplementation of daisy chaining.classDelays incoming/outgoing messages by a random number of milliseconds (range between 0 and n where n is determined by the user) and nanoseconds (constant amount).classDetects unicast loopbacks: messages where dest == local addressclassKey exchange based on Diffie-Hellman-Merkle (https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange).classDiscards up or down messages based on a percentage; e.g., setting property 'up' to 0.1 causes 10% of all up messages to be discarded.classDiscards a message whose sequence number (in the payload, as a Long) matches seqno 2 times, before passing it down.classThe Discovery protocol retrieves the initial membership (used by GMS and MERGE3) by sending discovery requests.classProtocol which drops up or down messages according to user-defined filtersclassDuplicates outgoing or incoming messages by copying themclassEncrypt<E extends KeyStore.Entry>Super class of symmetric (SYM_ENCRYPT) and asymmetric (ASYM_ENCRYPT) encryption protocols.classExample of a protocol layer.classclassFailure detection based on simple heartbeat protocol.classFailure detection based on simple heartbeat protocol.classFailure detection based on simple heartbeat protocol.classFailure detection protocol which detects the crash or hanging of entire hosts and suspects all cluster members on those hosts.classFailure detection protocol based on sockets.classFailure detection protocol based on TCP connections, successor toFD_SOCK.classSimple discovery protocol which uses a file on shared storage such as an SMB share, NFS mount or S3.classSimple flow control protocol based on a credit system.classThe FORK protocol; multiplexes messages to different forks in a stack (https://issues.redhat.com/browse/JGRP-1613).classFragmentation layer.classFragmentation layer.classFragmentation protocol which uses less memory to store fragments thanFRAG2.classFragmentation layer.classBase class for all fragmentation protocols.classPrints the headers of all sent or received messagesclassSimple protocol to inject an arbitrary view on one or more cluster nodes.classDiscovery protocol using a JDBC connection to a shared database.classNew version ofJDBC_PING.classBase class for protocols implementing key exchange: a secret key to be used for encryption is exchanged between 2 parties (usually the key server and a new cluster member) securely; ie.classDiscovery protocol for finding members in the local process only.classDeprecated.See http://belaban.blogspot.com/2020/11/i-hate-distributed-locks.html.classIntercepts individual up messages and creates batches from them, passing the batches up.classProtocol to discover subgroups; e.g., existing due to a network partition (that healed).classSimple flow control protocol based on a credit system.classNon-blocking alternative toMFC.classUses its own IP multicast socket to send and receive discovery requests/responses.classDetects sends during processing of incoming messages and sets flagMessage.TransientFlag.DONT_BLOCKto prevent blocking the incoming thread on a send.classPersistent Discovery Cache.classProtocol measuring latency between stacks.classThe PING protocol retrieves the initial membership by mcasting a discovery request (via the multicast capable transport) to all current cluster membersclassDiscovery protocol based on Rackspace Cloud Files storage solutionclassMeasures incoming and outgoing rates: messages/sec, bytes/sec.classProtocol which sends at most max_bytes in time_period milliseconds.classRate limiter based credits (max_bytes).classImplementation of Random Early Drop: messages are discarded when the bundler's queue in the transport nears exhaustion.classReverses the next N messages that are received.classProtocol which implements synchronous messages (https://issues.redhat.com/browse/JGRP-1389).classImplementation of total order protocol using a sequencer.classImplementation of total order protocol using a sequencer_uum.classSerializes the entire message (including payload, headers, flags and destination and src) into the payload of another message that's then sent.classLoopback transport shared by all channels within the same VM.classDiscovery protocol running overSHARED_LOOPBACKonly.classReorders messages by buffering them and shuffling the result after TIMEOUT ms.classBare-bones thread-per-connection TCP-based transport.classProtocol which prints out the real size of a message.classProtocol trying to print message payloads as stringsclassPeriodically fetches some attributes and writes them to a file (https://issues.redhat.com/browse/JGRP-2402)classKey exchange based on SSL sockets.classProvides various statsclassProtocol which provides STOMP (https://stomp.github.io/) support.classDiscovery protocol based on Openstack Swift (object storage).classEncrypts and decrypts communication in JGroups by using a secret key shared by all cluster members.classTCP based protocol.classProtocol using TCP/IP to send and receive messages.classThe TCPGOSSIP protocol layer retrieves the initial membership (used by GMS when started by sending event FIND_INITIAL_MBRS down the stack).classThe TCPPING protocol defines a static cluster membership.classMaintains averages of up- and down-threadsclassProtocol measuring delivery times.classGeneric transport - specific implementations should extend this abstract class.classclassReplacement for UDP.classIP multicast transport based on UDP.classSimple flow control protocol based on a credit system.classNon-blocking alternative toUFC.classInterceptsup(MessageBatch)and passes up each message of a message batch as a single message.classReliable unicast protocol using a combination of positive and negative acks.classCatches SUSPECT events traveling up the stack.classDouble-checks that a suspected member is really dead.Fields in org.jgroups.protocols with type parameters of type ProtocolMethods in org.jgroups.protocols with type parameters of type ProtocolModifier and TypeMethodDescriptionprotected <T extends Protocol>
TRSVP.findDownProtocol(Class<? extends Protocol> cl) protected <T extends Protocol>
TKeyExchange.findProtocolAbove(Class<? extends Protocol> clazz) <T extends Protocol>
TFORK.setAddress(Address addr) <T extends Protocol>
TTP.setAddress(Address addr) <T extends Protocol>
T<T extends Protocol>
TMethods in org.jgroups.protocols that return ProtocolMethods in org.jgroups.protocols with parameters of type ProtocolModifier and TypeMethodDescriptionstatic ForkProtocolStackFORK.getForkStack(Protocol prot) protected voidFORK.getStateFrom(JChannel channel, Protocol prot, String stack, String ch, DataOutputStream out) FORK.putIfAbsent(String fork_stack_id, Protocol p) Method parameters in org.jgroups.protocols with type arguments of type ProtocolModifier and TypeMethodDescriptionFORK.createForkStack(String fork_stack_id, List<Protocol> protocols, boolean initialize) Returns the fork stack for fork_stack_id (if exitstent), or creates a new fork-stack from protocols and adds it into the hashmap of fork-stack (key is fork_stack_id).protected <T extends Protocol>
TRSVP.findDownProtocol(Class<? extends Protocol> cl) protected <T extends Protocol>
TKeyExchange.findProtocolAbove(Class<? extends Protocol> clazz) -
Uses of Protocol in org.jgroups.protocols.dns
Subclasses of Protocol in org.jgroups.protocols.dns -
Uses of Protocol in org.jgroups.protocols.pbcast
Subclasses of Protocol in org.jgroups.protocols.pbcastModifier and TypeClassDescriptionclassDeprecated, for removal: This API element is subject to removal in a future version.Over 20 years old and nodoby uses it.classGroup membership protocol.classNegative AcKnowledgement layer (NAKs).classComputes the broadcast messages that are stable; i.e., have been delivered by all members.classSTATE streams the state (written to an OutputStream) to the state requester in chunks (defined by chunk_size).classSTATE_SOCKhas the state provider create a server socket to which the state requester connects and from which the latter reads the state.classSTATE_TRANSFER protocol based on byte array transfer.classBase class for state transfer protocols which use streaming (or chunking) to transfer state between two members.Methods in org.jgroups.protocols.pbcast with type parameters of type Protocol -
Uses of Protocol in org.jgroups.protocols.relay
Subclasses of Protocol in org.jgroups.protocols.relay -
Uses of Protocol in org.jgroups.protocols.relay.config
Fields in org.jgroups.protocols.relay.config declared as ProtocolModifier and TypeFieldDescriptionprotected Protocol[]RelayConfig.ProgrammaticBridgeConfig.protocolsMethods in org.jgroups.protocols.relay.config with parameters of type ProtocolModifier and TypeMethodDescriptionprotected static StringRelayConfig.ProgrammaticBridgeConfig.printProtocols(Protocol[] protocols) Constructors in org.jgroups.protocols.relay.config with parameters of type Protocol -
Uses of Protocol in org.jgroups.stack
Subclasses of Protocol in org.jgroups.stackModifier and TypeClassDescriptionclassA ProtocolStack manages a number of protocols layered above each other.Fields in org.jgroups.stack declared as ProtocolModifier and TypeFieldDescriptionprotected ProtocolProtocolStack.bottom_protprotected ProtocolProtocol.down_prot(package private) ProtocolConfigurator.InetAddressInfo.protocolprotected ProtocolProtocolStack.top_protprotected ProtocolProtocol.up_protFields in org.jgroups.stack with type parameters of type ProtocolModifier and TypeFieldDescriptionCheckCallerRunsPolicy.NAKACK2CheckForAbsenceOfRED.NAKACK2CheckForAbsenceOfRED.REDCheckCallerRunsPolicy.UNICAST3CheckForAbsenceOfRED.UNICAST3Methods in org.jgroups.stack with type parameters of type ProtocolModifier and TypeMethodDescription<T extends Protocol>
T<T extends Protocol>
T<T extends Protocol>
TProtocolStack.findProtocol(Class<? extends Protocol> clazz) final <T extends Protocol>
TProtocolStack.findProtocol(Class<? extends Protocol>... classes) Finds the first protocol of a list and returns it.<T extends Protocol>
TProtocolStack.findProtocol(String name) Returns a given protocol or null if not foundstatic <T extends Protocol>
TProtocolStack.findProtocol(Protocol start, boolean down, Class<? extends Protocol> clazz) ProtocolStack.findProtocols(String regexp) <T extends Protocol>
TProtocolStack.getBottomProtocol()<T extends Protocol>
TProtocol.getDownProtocol()<T extends Protocol>
TProtocol.getUpProtocol()<T extends Protocol>
T<T extends Protocol>
TProtocol.removePolicy(Policy p) <T extends Protocol>
TProtocolStack.removeProtocol(Class<? extends Protocol> prot) final <T extends Protocol>
TProtocolStack.removeProtocol(Class<? extends Protocol>... protocols) <T extends Protocol>
TProtocolStack.removeProtocol(String prot_name) Removes a protocol from the stack.<T extends Protocol>
TProtocolStack.removeProtocol(T prot) <T extends Protocol>
TProtocol.setAddress(Address addr) <T extends Protocol>
TProtocol.setDownProtocol(Protocol prot) <T extends Protocol>
TProtocol.setErgonomics(boolean ergonomics) <T extends Protocol>
TProtocol.setId(short id) <T extends Protocol>
TSets the level of a logger.<T extends Protocol>
TProtocol.setPolicies(List<Policy> l) <T extends Protocol>
TProtocol.setProtocolStack(ProtocolStack s) <T extends Protocol>
TProtocol.setUpProtocol(Protocol prot) <T extends Protocol>
TMethods in org.jgroups.stack that return ProtocolModifier and TypeMethodDescriptionstatic ProtocolConfigurator.connectProtocols(List<Protocol> protocol_list) Creates a protocol stack by iterating through the protocol list and connecting adjacent layers.protected static ProtocolConfigurator.createLayer(ProtocolStack stack, ProtocolConfiguration config) static ProtocolConfigurator.createProtocol(String prot_spec, ProtocolStack stack) static ProtocolConfigurator.createProtocol(String prot_spec, ProtocolStack stack, boolean init_attrs) Creates a new protocol given the protocol specification.protected ProtocolProtocolStack.createProtocol(String classname) ProtocolStack.getTopProtocol()Configurator.setupProtocolStack(List<ProtocolConfiguration> config) static ProtocolConfigurator.setupProtocolStack(List<ProtocolConfiguration> protocol_configs, ProtocolStack st) Sets up the protocol stack.Methods in org.jgroups.stack that return types with arguments of type ProtocolModifier and TypeMethodDescriptionConfigurator.createProtocols(List<ProtocolConfiguration> protocol_configs, ProtocolStack stack) Takes a list of configurations, creates a protocol for each and returns all protocols in a list.Configurator.createProtocolsAndInitializeAttrs(List<ProtocolConfiguration> cfgs, ProtocolStack st) ProtocolStack.getProtocols()Returns all protocols in a list, from top to bottom.Methods in org.jgroups.stack with parameters of type ProtocolModifier and TypeMethodDescriptionProtocolStack.addProtocol(Protocol prot) Adds a protocol at the tail of the protocol listProtocolStack.addProtocols(Protocol... prots) Adds a list of protocolsvoidProtocolHook.afterCreation(Protocol prot) Called after all protocols have been created, connected and its attributes set, but beforeinit()is called.ProtocolStack.bottomProtocol(Protocol bottom) protected static voidProtocolStack.callAfterCreationHook(Protocol prot, String classname) voidvoidvoidChecks that a condition is met in a given protocolprivate voidProtocolStack.checkAndSwitchTop(Protocol oldTop, Protocol newTop) protected MethodNonReflectiveProbeHandler.findMethod(Protocol prot, String method_name, String[] args) static <T extends Protocol>
TProtocolStack.findProtocol(Protocol start, boolean down, Class<? extends Protocol> clazz) static voidProtocolStack.initComponents(Protocol p, ProtocolConfiguration cfg) NonReflectiveProbeHandler.initialize(Protocol[] protocols) static voidConfigurator.initializeAttrs(Protocol prot, ProtocolConfiguration config, StackType ip_version) Sets the attributes in a given protocol from propertiesvoidProtocolStack.insertProtocol(Protocol prot, ProtocolStack.Position position, Class<? extends Protocol> neighbor_prot) final voidProtocolStack.insertProtocol(Protocol prot, ProtocolStack.Position position, Class<? extends Protocol>... neighbor_prots) voidProtocolStack.insertProtocol(Protocol prot, ProtocolStack.Position position, String neighbor_prot) Inserts an already created (and initialized) protocol into the protocol list.voidProtocolStack.insertProtocolAtTop(Protocol prot) voidProtocolStack.insertProtocolInStack(Protocol prot, Protocol neighbor, ProtocolStack.Position position) protected static voidConfigurator.removeProvidedDownServices(Protocol protocol, List<Integer> events) Removes all events provided by the protocol above protocol from eventsprotected static voidConfigurator.removeProvidedUpServices(Protocol protocol, List<Integer> events) Removes all events provided by the protocol below protocol from eventsvoidProtocolStack.replaceProtocol(Protocol existing_prot, Protocol new_prot) Replaces one protocol instance with another.<T extends Protocol>
TProtocol.setDownProtocol(Protocol prot) <T extends Protocol>
TProtocol.setUpProtocol(Protocol prot) ProtocolStack.topProtocol(Protocol top) Method parameters in org.jgroups.stack with type arguments of type ProtocolModifier and TypeMethodDescriptionProtocolStack.addProtocols(List<Protocol> prots) Adds a list of protocolsstatic ProtocolConfigurator.connectProtocols(List<Protocol> protocol_list) Creates a protocol stack by iterating through the protocol list and connecting adjacent layers.static voidConfigurator.ensureValidBindAddresses(List<Protocol> protocols) Makes sure that all fields annotated with @LocalAddress is (1) an InetAddress and (2) a valid address on any local network interface<T extends Protocol>
TProtocolStack.findProtocol(Class<? extends Protocol> clazz) static <T extends Protocol>
TProtocolStack.findProtocol(Protocol start, boolean down, Class<? extends Protocol> clazz) static List<InetAddress> Configurator.getInetAddresses(List<Protocol> protocols) static Map<String, InetAddress> Configurator.getInetAddresses2(List<Protocol> protocols) Returns a map of protocol.attr/InetAddress tuplesNonReflectiveProbeHandler.initialize(Collection<Protocol> prots) voidProtocolStack.insertProtocol(Protocol prot, ProtocolStack.Position position, Class<? extends Protocol> neighbor_prot) <T extends Protocol>
TProtocolStack.removeProtocol(Class<? extends Protocol> prot) static voidConfigurator.sanityCheck(List<Protocol> protocols) Throws an exception if sanity check fails.static voidConfigurator.setDefaultAddressValues(List<Protocol> protocols, StackType ip_version) Processes fields and methods which are inet address related, and assigns them default values defined by (Property.defaultValueIPv4()andProperty.defaultValueIPv6()).Constructors in org.jgroups.stack with parameters of type ProtocolModifierConstructorDescription(package private)InetAddressInfo(Protocol protocol, AccessibleObject fieldOrMethod, Map<String, String> properties, String stringValue, Object convertedValue) -
Uses of Protocol in org.jgroups.util
Methods in org.jgroups.util that return ProtocolModifier and TypeMethodDescriptionstatic Protocol[]Util.getTestStack(Protocol... additional_protocols) Returns a default stack for testing with transport = SHARED_LOOPBACKMethods in org.jgroups.util that return types with arguments of type ProtocolModifier and TypeMethodDescriptionUtil.getUnicastProtocols()Util.loadProtocolClass(String protocol_name, Class<?> cl) Methods in org.jgroups.util with parameters of type ProtocolModifier and TypeMethodDescriptionstatic Map<String, Metrics.Entry<Object>> static Map<String, Metrics.Entry<Object>> Metrics.extract(Protocol p, Predicate<AccessibleObject> filter) static Protocol[]Util.getTestStack(Protocol... additional_protocols) Returns a default stack for testing with transport = SHARED_LOOPBACK