org.jgroups.stack

Class Router


public class Router
extends java.lang.Object

Router for TCP based group comunication (using layer TCP instead of UDP). Instead of the TCP layer sending packets point-to-point to each other member, it sends the packet to the router which - depending on the target address - multicasts or unicasts it to the group / or single member.

This class is especially interesting for applets which cannot directly make connections (neither UDP nor TCP) to a host different from the one they were loaded from. Therefore, an applet would create a normal channel plus protocol stack, but the bottom layer would have to be the TCP layer which sends all packets point-to-point (over a TCP connection) to the router, which in turn forwards them to their end location(s) (also over TCP). A centralized router would therefore have to be running on the host the applet was loaded from.

An alternative for running JGroups in an applet (IP multicast is not allows in applets as of 1.2), is to use point-to-point UDP communication via the gossip server. However, then the appplet has to be signed which involves additional administrative effort on the part of the user.

Author:
Bela Ban

Field Summary

static int
DUMP
static int
GET
static int
REGISTER
protected Log
log

Constructor Summary

Router(int port)
Router(int port, InetAddress bind_address)

Method Summary

static void
main(String[] args)
void
start()
void
stop()

Field Details

DUMP

public static final int DUMP
Field Value:
-21

GET

public static final int GET
Field Value:
-10

REGISTER

public static final int REGISTER
Field Value:
-11

log

protected final Log log

Constructor Details

Router

public Router(int port)
            throws Exception

Router

public Router(int port,
              InetAddress bind_address)
            throws Exception

Method Details

main

public static void main(String[] args)
            throws Exception

start

public void start()

stop

public void stop()

Copyright B) 1998-2005 Bela Ban. All Rights Reserved.