Big Bro uses a simple Telnet connection to the gateway (Why Telnet? see dicussion). The gateway is required to have its "calltracker" feature enabled (see discussion). Through this connection, it will constantly poll for its status in order to deliver real-time monitoring. Though the querying is quite more intense than what a normal operator can do by typing commands, still this extra burden can show about 8% in the gateway's CPU usage and the bandwidth it takes is somewhere up to 8 KHz. The Big Bro scheme needs only one telnet connection to the gateway no matter haw many monitors are watching it, this is because it has two components, the GW_Relay and the GW_Monitor.The GW_Relay has a listen socket to allow the Gw_Monitor's to open TCP connections. The GW_Relay gathers information from the gateway and updates all the connected GW_Monitor's on any status change. Normally the GW_Relay works in the same subnet as the gateway, this is convenient because the connection is very reliable and fast, which makes real-time more real. Though convenient in some ways it is not necessary, the scheme is has been proved to work perfectly well through the Internet cloud. It is common practice to hide the gateways behind firewalls, this is secure, but it hurdles the necessary monitor and control operations, This scheme will allow to keep gateways hidden while still allowing the operations through the GW_Relay which will be the only one with an exposed port or IP address.
By default the Telnet port is TCP 23 and the GW_Relay listen port will be 1066. The listen port can be configured to any other number so as to allow more than one GW_Relay to work in the same computer with the same IP address.
GW_Relay is a Win32 application. It requires Window 2000, Windows XP or Windows NT 4.0 (with service pack 6)
The text-box on the right displays the computer names that currently have a TCP connection to its listening port. The window also shows the version and the license number. Bytes are counted and displayed as they are received from the gateway. The text box at the bottom display different items depending on the DEBUGLEVEL bit mapped parameter in the GW_Relay.ini file. In the above example it the parameter is such that it shows a description of the last task and how much time did it take. With the lowest debug level, it displays only critical errors. The Window caption features the gateway name.
GW_Relay has some security features implemented that sometimes are needed. You may specify an access list of authorized computer names, you may specify which computers have administrative privileges and can, finally, you also specify which dial peer activity each computer is allowed to watch. All this and a lot more is what you configure in the GW_Relay.ini file.
The GW_Relay is configured by its this file. Below a description of the syntax and the meaning of the parameters
Everything above the ******* line is a comment. A misspelled keyword is also a comment.
If a Keyword is misspelled or missing from the ini script, the parameter will take the default value.
The Keywords with no defaults must be present and the value provided.
ACCESS_LIST, “[Computer name list]” default is an empty list
[Computer name list] are the names of the computers that will the have rights to open
a connection separated by a space. When this line exists, only the monitors running in computers with their network names in the list are allowed to connect.
The list may take as many lines as needed. If the selective monitoring feature is going to be used, a
SelectID Number must be added to the computer name as a prefix, no spaces, dashes or slashes.
Example:
ACCESS_LIST, “0DOMAIN1 1STATION3 2REPORT_SYS”
ADMIN_LIST, “[Computer name list]” default is an empty list..The [Computer name list] are the names of the computers that will the have rights to
restart the app, order traces or order busyouts... If this line does not exists every
monitor will enjoy administrative privileges. The list may take as many lines as needed. No need for a SelectID here.
Example:
ADMIN_LIST, “DOMAIN1 REPORT_SYS”
MAX_TYPES, [number greater than Max ID used +1] Default is 0. This command reserves memory for the selective monitoring feature. If you have, say, 3 computers in the access list, like in the example above, you probably want to use 0, 1 and 2 as SelectID’s.
In this case you need at least a MAX_TYPES of 4., but 5,8 and 20 would also be OK
Example:
MAX_TYPES, 4
SEL_MON_DS0G, "[SelectID]-[DS0 group strings separated by spaces]” default is an empty list
SelectID is the number prefixed to the computer name in the access list. The DS0 group strings list, is the set of DS0 group strings for monitoring, expressed as
<DS1(base1)>:<DS0_Group>(1:0, 1:1, 2:0…) and separated by simple spaces.
The whole string must be inside quotes. One line per SelectID with limited monitoring rights.
You may simply omit a Select ID line to grant full monitoring rights for all DS0
groups.
Example
SEL_MON_DS0G, “0-1:0 1:1 2:0 3:0”
SEL_MON_DS0G, “1-1:0”
The GWMonitor in the DOMAIN1 computer will be allowed to monitor DS0 group 0 and 1 in the first DS1, DS0 group 0 in DS1 2 and 3, but is not allowed to monitor any group in DS1 4, the one
in STATION3 may monitor only the first DS1, REPORT_SYS have full rights for all DS0 group because is not listed.
SEL_MON_IP, “[SelectID]-[IP List separated by spaces]” default is an empty list
SelectID id the number prefixed to the computer name in the access list. The IP list
is the set of IP addresses for monitoring separated by simple spaces. The whole string must be inside quotes. One line per SelectID with limited monitoring rights.
You may simply omit a Select ID line to grant full monitoring rights for all
IP's.
Example:
SEL_MON_IP, “0-207.135.45.12 66.25.136.144”
SEL_MON_IP, “1-02 207.135.45.12”
The OmniMonitor in the DOMAIN1 computer will be allowed to monitor IP's 207.135.45.12 and 66.25.136.144,
while the one in STATION3 may monitor only 207.135.45.12, the one in REPORT_SYS have full rights
for all IP's because is not listed.
ALIVE_TO 60 GW_Relay receives packets all the time during normal operation, if it stops, then it is that something went wrong and the Gateway is not responding. If silence goes beyond this timeout spec, the TELNET session will be restarted. If more than 10 attempts to restart the session fail, the application will exit. This is one reason why it is recommended that GW_Relay is run from a restarting batch.
POLL_INTERVAL
400 Polling interval sets how real is the real-time in
monitoring. 200 ms render almost true real-time monitoring but, the price is a
15% cpu usage and 15KHz bandwidth usage, 400 is quite real-time and the usage is
half, even 600 still looks good. Telnet sessions have medium priority, the
mentioned cpu usages were measured in absence of traffic. Under heavy traffic,
cpu usage of these processes could be reduced, doing the effect of automatic
adjustment of the polling rate (see discussion). This parameter is not critical, is useful
if you need to limit, for some reason, maximum usages.
LOCAL_TCP_PORT 1066 Number of the relay listen port
ODBC_DSN_SRC ""
ODBC DNS source name, point to the database were the CDRs will be stored
CDR_TXT_PATH NULL NULL stands for "same as GW_Relay.exe"
Path where to save the Text CDR files.
If you specify an ODBC DNS, this line
will be ignored
FILE_INTERVAL h Could be 'h' for one file hourly or 'd' for one file daily.
Applies to text
CDR's only.
GRAPH_SUMM_PATH NULL NULL stands for "same as GW_Relay.exe"
24 Hour Summaries are always enabled when the CDR's are.
You need this parameter if no CDR has been enabled.
DEBUGLEVEL
0 This parameter is bit mapped and acts on
Debug Info Window
of all monitors
bit
0-2 Send no debug info
3 Reserved (no useful info on the gateway)
4 all info from active calls to Debug window
5 Debug information involving busyouts
6 Syslogs to Debug Info window
CALLINFOMASK 0xFFFF The information available
to a call takes more space than than available in the GW_Monitor Call-Info
Text-Box with this parameter, you can select the information that you consider
relevant to be displayed in real-time. This parameter is bit mapped as follows:
Bit
0 Latencey and Gap
1 Codec
2 Packets or Bytes In
3 Packets or Bytes Out
4 1 for Bytes 0 for packets
5 Reserved for future use
6 Call setup time
7 No charge time or answer delay in seconds
8 Charge time or call length (mins:secs)
9 DNIS or Called Number
10 ANI or Calling Number
11 Bandwidth in Hz
RTT_MAX 150 This is a value in milliseconds, it is the maximum return time to be considered good, RTT affects one aspect of the call's sound quality, the latency. Beyond this value, the Sound Quality Circle will start showing on the GW_Monitor. If the average RTT for more than five call in the same IP or DS0 group is more 3 times this value, an alarm #5 will be issued.
PLAY/GAP_RATIO_MIN 100 Play time is the time filled with sound from
the playing back the packets, the Gap is what the CODEC algorithm has filled in
when no packets have been available. The bigger the Gap, the poorer the sound.
If the Play to Gap ratio goes under this value, the Sound
Quality Circle will
start showing on the GW_Monitor. If the average ratio for more than five calls
in the same IP or DS0 group is more than 5 times smaller than this value, an alarm #3 will be
issued.
WD_SAMPLE_SIZE 50 Sample use to calculate completion rates, low traffic (More info in 2.1.5)
WD_MIN_CR 20 Minimum completion rate, below this, alarm 1 is issued
WD_BAD_IN_A_ROW 5 The next failure in a row, generates alarm 6.
WD_AVG_TIME_TOLERANCE 7 How long to wait for the next call attempt before issuing the low traffic alarm 8.
WD_SHORT_CALL_DEF 0 Calls shorter than this value in seconds would be considered as bad by the watchdog. See discussion in 2.1.5
GATEWAY_IP
IP of the gateway to monitor. (IP should be changed without notifying
#include)
TELNET_UID
The a valid user ID for a TELNET session, if the gateway is set as not to have a
user ID, you may omit the parameter
TELNET_PWD
Password for the above user ID
TELNET_PORT
23 Only needed in
the strange case TELNET is not using port 23, normally, this parameter can be
omited
ISE1 0 0 for a T1 gateway or 1 for an E1 gateway.
MAX_SPANS
4 GW_Relay is
would recognize some gateway and set this parameter automatically, in case it
doesn't, this parameter may be used to set the right number of spans.
INTERFACE_NAME ethernetfast0 The name
the gateway gives you main interface Async BVI Bridge, CTunnel, Dialer, Ethernet,
FastEthernet, Loopback Multilink Serial, Tunnel, etc
INTERFACEBW 1000000 Bandwidth of your link, this value is needed to calculate your bandwidth usage
These parameters are set by #include. If edited or deleted, Big Bro will stop working
LICENSE_NUM:
AUTHCODE1
AUTH_CODE