org.jgroups.protocols

Class WANPIPE

Implemented Interfaces:
LogicalLink.Receiver

public class WANPIPE
extends Protocol
implements LogicalLink.Receiver

Logical point-to-point link. Uses multiple physical links to provide a reliable transport. For example, if there are 2 physical links over different networks, and one of them fails, the WAN pipe will still be able to send traffic over the other link. Currently traffic is sent over the physical links round-robin, but this will be made configurable in the future. Example: 70% over first link, 30% over second, or packets are split and sent across both links (increasing the available bandwidth).

Nested Class Summary

class
WANPIPE.WanPipeHeader

Field Summary

Fields inherited from class org.jgroups.stack.Protocol

down_handler, down_prot, down_queue, down_thread, down_thread_prio, log, observer, props, stack, up_handler, up_prot, up_queue, up_thread, up_thread_prio

Constructor Summary

WANPIPE()

Method Summary

void
down(Event evt)
Sent to destination(s) using the WAN pipe.
String
getName()
void
linkDown(InetAddress local, int local_port, InetAddress remote, int remote_port)
void
linkUp(InetAddress local, int local_port, InetAddress remote, int remote_port)
void
missedHeartbeat(InetAddress local, int local_port, InetAddress remote, int remote_port, int num_hbs)
void
receive(byte[] buf)
void
receivedHeartbeatAgain(InetAddress local, int local_port, InetAddress remote, int remote_port)
boolean
setProperties(Properties props)
Setup the Protocol instance acording to the configuration string
void
start()
This method is called on a Channel.connect(String).
void
stop()
This method is called on a Channel.disconnect().
String
toString()

Methods inherited from class org.jgroups.stack.Protocol

destroy, down, getDownProtocol, getDownQueue, getName, getProperties, getUpProtocol, getUpQueue, handleSpecialDownEvent, init, passDown, passUp, providedDownServices, providedUpServices, receiveDownEvent, receiveUpEvent, requiredDownServices, requiredUpServices, setDownProtocol, setObserver, setProperties, setPropertiesInternal, setProtocolStack, setUpProtocol, start, startDownHandler, startUpHandler, stop, stopInternal, up

Constructor Details

WANPIPE

public WANPIPE()

Method Details

down

public void down(Event evt)
Sent to destination(s) using the WAN pipe. Send local messages directly back up the stack
Overrides:
down in interface Protocol

getName

public String getName()
Overrides:
getName in interface Protocol

linkDown

public void linkDown(InetAddress local,
                     int local_port,
                     InetAddress remote,
                     int remote_port)
Specified by:
linkDown in interface LogicalLink.Receiver

linkUp

public void linkUp(InetAddress local,
                   int local_port,
                   InetAddress remote,
                   int remote_port)
Specified by:
linkUp in interface LogicalLink.Receiver

missedHeartbeat

public void missedHeartbeat(InetAddress local,
                            int local_port,
                            InetAddress remote,
                            int remote_port,
                            int num_hbs)
Specified by:
missedHeartbeat in interface LogicalLink.Receiver

receive

public void receive(byte[] buf)
Specified by:
receive in interface LogicalLink.Receiver

receivedHeartbeatAgain

public void receivedHeartbeatAgain(InetAddress local,
                                   int local_port,
                                   InetAddress remote,
                                   int remote_port)
Specified by:
receivedHeartbeatAgain in interface LogicalLink.Receiver

setProperties

public boolean setProperties(Properties props)
Setup the Protocol instance acording to the configuration string
Overrides:
setProperties in interface Protocol

start

public void start()
            throws Exception
This method is called on a Channel.connect(String). Starts work. Protocols are connected and queues are ready to receive events. Will be called from bottom to top. This call will replace the START and START_OK events.
Overrides:
start in interface Protocol

stop

public void stop()
This method is called on a Channel.disconnect(). Stops work (e.g. by closing multicast socket). Will be called from top to bottom. This means that at the time of the method invocation the neighbor protocol below is still working. This method will replace the STOP, STOP_OK, CLEANUP and CLEANUP_OK events. The ProtocolStack guarantees that when this method is called all messages in the down queue will have been flushed
Overrides:
stop in interface Protocol

toString

public String toString()

Copyright B) 2001,2002 www.jgroups.com . All Rights Reserved.