OpenH323 Gatekeeper Frequently Asked Questions
Version 0.6. See also OpenH323 Gatekeeper home
page.
- 1. What is a H.323
gatekeeper ?
- 1.1. Tell me
more about H.323, OpenH323 and gatekeepers.
- 1.2. Can I use
the gatekeeper for NAT/masquerading H323 calls through a firewall ?
- 2. Why should I
use a gatekeeper ?
- 3. How can I
control my VoIP network with the gatekeeper ?
- 4. Compiling the
source
- 4.1. What OS
do I need to compile / run the gatekeeper ?
- 4.2. Can I get
a pre-compiled binary ?
- 5. gk and gktest
usage
- 6. Can I help in
the development ?
- 7. What additional
functionality is needed / planned ?
- 8. What
implications does the GPL license have ?
- 9. How to contact
us
1. What is a H.323 gatekeeper ?
A H.323 gatekeeper controls all H.323
clients (endpoints like MS Netmeeting) in his zone. Its most important function
is address translation between symbolic alias addresses and IP addresses. This
way you can call "jan" instead of knowing which IP address he currently works
on.
1.1. Tell me more about H.323, OpenH323 and gatekeepers.
In brief; H.323
is a communications standard for audio, video, and data over the Internet.
See also Paul Jones' primer
on H.323.
And Henning Schulzrinne's page on H.323.
The OpenH323 project is developing an
Open Source H.323 protocol stack. This gatekeeper is based on the OpenH323
source.
This is also a nice description of what a
gatekeeper does.
1.2. Can I use the gatekeeper for NAT/masquerading H323 calls through a
firewall ?
Use the proxy function that has been introduced in version 2.0.
2. Why should I use a gatekeeper ?
If you currently use a client and are
happy with the way it works there may be no reason to use a gatekeeper. If you
however work in a larger VoIP setup using symbolic addresses is definitely a
great plus. More importantly the gatekeeper is the key to the management of a
VoIP network.
VoIP gateways for example register at the gatekeeper and the gatekeeper finds
the right one for you to use to call a specific number.
A gatekeeper can also manage the bandwidth used by the clients. Currently we
grant all bandwidth requests until a predefined limit is reached. In the future
we could implement a more detailed schema.
3. How can I control my VoIP network with the gatekeeper ?
You need a
program that connects to the gatekeeper status port (TCP port 7000). Currently
it will receive information which endpoint is engaged in a call and which is
not.
We will provide such a monitoring client in the near future.
In the future this interface will receive much more detailed call information
and will allow active control over the calls, like terminating calls via the
gatekeeper.
4. Compiling the source
See gk/compiling.txt
4.1. What OS do I need to compile / run the gatekeeper ?
Stable version
of the gatekeeper run on all platforms supported by the OpenH323 library, which
include a wide variety of Unixes and MS-Windows and others OSs.
4.2. Can I get a pre-compiled binary ?
I believe everybody should have a
C / C++ compiler and be able to compile simple projects. This way source code
gets spread and I get good patches and bugfixes.
Some people have a different opinion about this (which is perfectly ok) and
some OS vendors don't even provide a compiler. Because of this some folks
actually go through the trouble of providing pre-compiled OpenH323 Gatekeeper
binaries.
There are a few pre-compiled binaries on the project homepage, but they might
not be the most recent version.
5. gnugk and gktest usage
gnugk is the gatekeeper program. Usage: gnugk [-b bandwidth] [-r] [-h home-ip] [-t -t ...] [-o file]
gktest is a small endpoint test program. But if possible use a commercial
endpoint or gateway or voxilla for testing the gatekeeper. Usage: gktest -k hostname [-g] [-r] [-a] [-d]
-k hostname Gatekeeper Host Name [--gatekeeper]
[-g ] Discovery (send GRQ) [--GRQ]
[-r ] Register (Send RRQ) [--RRQ]
[-a ] Admission (Send ARQ) [--ARQ]
[-d ] Disengage (Send DRQ) [--DRQ]
6. Can I help in the development ?
Sure, this is an Open Source project!
Even if you are not a programmer we always need people for testing newly
implemented features. Especially if you have commercial H.323 endpoints or
gateways to test with, we need your help.
If you are a programmer, go ahead and fix things you find are broken or
missing. I suggest that you contact me before you start, so I can provide you
with the most current development version. I also try to coordinate the various
people who are working on the gatekeeper to get you somebody to discuss your
problems with and avoid duplication of work. If you send if patches I preferr a
"diff -u".
BTW: We could also use somebody to help us further with the documentation...
7. What additional functionality is needed / planned ?
This is a fast
moving target. Please look into todo.txt of the current gatekeeper distribution.
You'll find many suggested projects; some with guidelines on how they could be
implemented.
8. What implications does the GPL license have ?
The gatekeeper is not
published under the same license as OpenH323. While OpenH323 uses the MPL
(Mozilla Public License), the gatekeeper is published under GPL (GNU Public
License).
The GPL requires that all derived works must be published under GPL
also. That means that you must publish full source for all extensions to the
gatekeeper and for all programms you include the gatekeeper into.
If that's not what you want, you must interface to the gatekeeper through the
status thread and communicatie via TCP with it. That way you only have to
integrate the basic funtionality into the gatekeeper (and provide source for
that) and can keep other parts of your application private.
9. How to contact us
Please send questions and comments to the Gatekeeper
Users mailinglist (Subscribe).
Bugs and patches should be directed to the Gatekeeper
Developers mailinglist (Subscribe).