World Wide Conferencing Network
The World Wide Conferencing Network is a brandnew conferencing network,
representing a whole new era in the field of realtime text-based
conferencing. It uses the most advanced distributed conferencing protocol
currently available, enabling it to scale up to thousands of servers
supporting millions of users. As development goes on, this number
will even increase further. Read all about the
cnd development project for the latest
updates on the protocol and the software.
Contents
-
-
-
- Recreational use
- Cooperative working
- News and Data distribution
-
- Network Administration Group
- Site administrators
- Users
-
- How to connect to WWCN?
- How to setup a WWCN server and join the net?
- What has caused all this to happen?
-
1. Introduction
Thanks to the Internet, geographical distances between people disappear. Now that the Internet
is becoming available to the masses, the need for a large worldwide conferencing
system grows, mainly because people desire a medium to exchange thoughts, culture,
to make friends or even a partner for life, or just relax while chatting with
formerly strangers. Such a worldwide conferencing system
already exists, called IRC.
However, IRC was not designed to be deployed in the large configurations as it is
currently in use (40 to 100 servers, supporting up to 30.000 users), for example on the EFNet,
Undernet and
DALNet conferencing networks.
This has given rise to a
strong motivation to develop a protocol that will be able to scale from small configurations
up to tens of thousands of servers, supporting millions of users. This protocol is
called World Wide Conferencing Protocol.
However, developing and implementing a protocol is not enough. The servers on which the
software runs have to be managed in some way, and the persons managing them should be
united in some sort of organisational structure. A policy should exist that gives guidelines
to handle unregular situations, and central databases should be administrated. It is this
total organisational structure of people and materials that forms the World Wide
Conferencing Network.
2. The Network's Philosophy
The World Wide Conferencing Network will be an independent organization run by people who
want nothing more than to create and maintain the worldwide communication medium that
the Internet community
needs. As a free service is provided, the people administrating servers, databases and
the overall network will also have to be volunteers. Their only reward will be the
gratefullness of the endusers and the feeling that together they maintain what is going to
become the largest conferencing network on the globe.
The World Wide Conferencing Network is going to be a communication medium for people of
all religions, skin colours, sexual orientation, culture, or whatever you can think of.
Users will have the utter freedom of expressing their thoughts freely, whatever these
thoughts are. In this respect, the World Wide Conferencing Network places itself on
the same line as postal services. We merely carry a message from one person to other
persons, and only those persons that the originator of the message wants. No censoring,
monitoring or logging will take place.
It is hoped that by allowing people to exchange thoughts, more understanding and
tolerance
will grow between
the ever increasing number of human beings on this planet. We will have to accept that
individuals have their own thoughts and opinions, which they are entitled to.
If local laws decide otherwise, it is up to the citizens of those countries to act according
to the laws they are subject to; for example with respect to illegally spreading software
or exchanging unappropriate pictures. The users are fully responsible for their own behaviour. In
no situation shall the administration of the World Wide Conferencing Network be held
responsible for the behaviour of one or more of its users. The administration of WWCN
shall not promote illegal actions, and shall not accept channel registrations of which is
strongly suspected that they will be used for illegal actions.
There are, however, a couple of rules that users will have to obey, described in a
net etiquette. These rules are meant to protect
the personal integrity and privacy of all users attending the network, and protection of
the physical and logical equipment (computers and software) the network runs on.
To support this,
In the same thought of tolerance and conflict avoidance, it has been decided that no user
shall have more power than other users in any way. This means that the concept of 'Operators'
in any sense (channel operators, network operators) has been removed. No user shall have
more power over a public channel than another user. Channels with restricted access shall
know a 'channel contact' that has the ability to request restrictions to be modified.
However, in no way shall a user have direct control over the presence of arbitrary users
on a public channel. It is believed that this disables the Channel Wars that have
plagued the IRC networks since the inception of Channel Operators.
The philosophy of the World Wide Conferencing Network is that the provision of a command
to ignore all of a certain user's texts and actions will suffice to cut oneself off of
abusive users. Users will have to have sufficient self discipline not to want revenge.
As users are given a personal access code, their access can be revoked unambiguously on
an individual basis. The protocol implementation allows users to be uniquely identified,
and it is the network's philosophy to not allow anonymous access. Users
will have to be able to carry the responsibility of what they say and/or do.
3. Target use
The people that run the network, should have a clear understanding of the wishes of
the endusers. As at this moment the network is about to be initiated, it is worth while
to investigate in advance for what uses the network will be deployed, and what the user
wants in this
case. This is also relevant for determining what functionality has to be provided by
the implementation.
Recreational use
The current worldwide conferencing networks are mainly used for recreational purposes.
Many people may say that all this chatting is a waste of bandwidth and other resources,
but as has been stressed before, mutual understanding will be a crucial factor in keeping
this planet and all its people a bit unified.
Furthermore, the World Wide Conferencing Network uses a protocol that is highly optimized
for low bandwidth use. Servers without users draw only a minimum of traffic from other servers;
the administrator can determine in advance how much bandwidth each inter-server link may
use.
This type of application requires a lot of public channels in all kinds of languages, with
loose 'topics'. Most of the time, the conversation in these channels goes where it goes.
A charter can hardly be given, and access is open to the whole world.
Academic Cooperative Working
A totally other use for the World Wide Conferencing Network is to support cooperative work,
especially if the participants are at geographically distant locations. A lot of (scientific)
institutions run their own conferencing network, mostly implementing audio and video conferencing
on the fly. Institutions that are looking for an easy way to implement text-based
cooperative work can make use of the logical infrastructure built by the World Wide
Conferencing Network. They merely have to install clients, and off they go. It is not
necessary to go throught the effort to configure their own (IRC) servers; our network
partly runs on universities' equipment, so the least we can do is provide our service
to the academic community.
As the people using these facilities will have to be able to work undisturbedly, provisions
are offered to restrict access to channels to a predetermined list of hosts or internet
domains.
News and Data Distribution
The protocol used by WWCN implements a powerful multicasting
infrastructure, whose potential is only partly used. Large multicasting trees can be built to
distribute news or, generally, data. WWCN can be extended to make optimal use of the multicast
infrastructure, and to provide each user with uptodate news in a highly efficient way.
These developments, however, have been stalled due to the limitation in manpower. The first
item planned for development is the implementation of Distribution Channels. These channels
make a distinction between senders and receivers; only senders can 'talk' on a channel, while
receivers can only listen. Receivers are not aware of eachother's presence, they just
consume what is being said.
4. Organisational Structure
In this section, the organisational structure of WWCN will be presented. It is believed that
this structure will have the best chances of surviving; experience shows that it is very hard
to have a distributed management, consisting of people who hardly know eachother personally
and who have, in most cases, never seen eachother.
Network Administration Group
The Network Administration Group is a relatively small group (between three and about seven
people) that take care of central administration. Their tasks are limited to Public Relations,
creating and maintaining the network's guidelines, and delegating channel-, server-
and user blacklist registration to committees.
The members of the Administration group decide upon new members to enter the Administration
group. They will in practice choose a site administrator who has turned out to have
leadership and diplomacy capabilities, and who fits in the group. This may seem a bit
dictatorial, however, if too many users have complaints about the Administration group,
then the entire group can be sent home, and a new one can be elected by the users. The
conditions in which this is allowed are still undetermined. Once decided, however, these
conditions cannot be changed by the sitting Administration group.
The Network Administration Group also decides which sites are allowed to link a server
into the net. They shall also provide administrators with routing guidelines. These guidelines,
however, do not need to be followed as the WWCP protocol performs automatic routing.
Site Administrators
The site administrator is responsible for maintaining one or more WWCP servers (either a
conferencing server, a channel directory server or a user directory server). This involves
granting access to users and servers that want a connection, revoking access from users and
servers that have been abusive, and passing on information about highly abusive users and
servers to the Administration group.
Users
Users can gain access by registering their real name and password with the server administrator
of the server that is closest to them, netwise. The administrator may only use this
information for account administration. Unless the user states that this information be kept
private, this information will be entered into the User Directory Servers whenever the user
is online, so that other users can request it. If a user denotes that his or her user
information be kept secret, then no other user on the network can retrieve this information.
Only those users that are on the same channel, will be able to see it.
As said before, users will have to live by the net etiquette as much as possible. If they
do not, they will be warned a few times, after which their access is revoked. If they really
make a mess of it, their name should be passed onto the Administration group, who will place
them on a black list. This black list is distributed amongst administrators, whose account
administration tools will notice the presence of a user on the black list. The user is then
denied access. Only direct communication with the Administration group can get the user off
the list, so it should be used as a last resort.
5. Practical Matters
How to connect to WWCN?
To connect to WWCN, you need an ordinary IRC client. It will take quite a while before
dedicated WWCP clients become available, so for the time being we try to be as IRC
compatible as possible.
At the time of writing, all servers allow public access, so you do not need to register
with a password. Check the server list for a server
near you, and connect to it. Please take notice of the fact that WWCN uses portnumber 8000,
and that most IRC clients default to 6667.
How to setup a WWCN server and join the net?
Setting up a server involves downloading the
software, compiling it, and applying for admission to the World Wide Conferencing Network.
We ask you to include any experience you have in assisting computer users, any UNIX
experience, your current profession or your current study. Also, you will have to get
permission of your Internet provider, and include a copy or quote and a contact address.
If your admission is granted, you will be given a unique server ID that is used on the
network to identify your server. You will then have to find server administrators
to link to. We advise you to keep your server connected to at least two local servers
and one distant server. You can consult the server list for mail addresses of other
administrators. Please consult the documentation in the source package for further
details.
This procedure is highly subject to change!
What has caused all this to happen?
A long, long time ago back in 1989, I, Gerrit Hiddink, started to study Computer
Science at the University of Twente. After having lived with a landlady for half a
year, I moved to the campus.
It struck me that there were no computer networking facilities available, but hey, back in
those days the university lived on a 56k line to the European research net Bitnet.
But help was at hand. A dorm mate of mine found a couple of so-called Multilink Boxes,
which had become redundant at the Faculty of Educational Technology of the
University of Twente.
The equipment was some sort of RS232 concentrators. There had 8 serial connectors, and one ring
connector that could be used to connect the boxes into a backbone ring, which ran on a modest
250 kbit/s. It was a true Local Area Network.
So I decided to find some people to create a network. I invested 1500 guilders (about $700)
into cables, connectors and stuff, and connected the first two dorm flats on the
calslaan together.
Thus the physical network and student's association
Data Net Drienerlo was born
(the country-seat on which the Campus is built, is called
Drienerlo); official date of birth: April 30, 1991. Within a year, about 10 dorm flats
and about 50 students were connected.
I wrote a
primitive chatbox, and there were about 5 or 6 Bulletin Board Systems, each
providing games, files, messages and fun.
Well there's an awfull lot more to tell about DND, but let's move on.
A few years later in 1993, the University's computer centre (CIV) decided
after a visit of the board of DND that
the time was right to connect all dorm rooms to the Internet using an Ethernet infrastructure.
The University agreed, and agreed to fund the project.
As we had experience with setting up an infrastructure, services and an association, we were
asked to join the task force groups within the project. As a side effect, each member of
these groups were given an Internet account, as you have know what you are talking about
when making decisions about which Internet services to support. From these working groups,
the association Student's Net Twente was initiated.
Anyway, now we're getting almost to the bottom of it, so hang on.
I already knew IRC from a few friends, and had occasionally been chatting. I was addicted at
the first sight. So when I got the account, I became a regular visitor. But I wanted to let my
friends on Data Net Drienerlo also enjoy IRC. So I wrote a program, again in Borland Pascal,
called "IRCGATE".
Nowadays such a program would be called a "bot".
It logged in on both chatboxes, joined equally named channels, and wrote everything
from one side to another so that the people on both sides of the gateway could see eachother.
It also allowed /whois information to be retrieved from one side to the other, and it could even
propagate /kick's and private /msg's.
It first connected to a 2400 baud modem on our network, dialled the computer centre, connected to a
VAX/VMS machine via a terminal server, logged in, dropped to a shell, telnetted to a
"raw" IRC server port, and started communicating directly with the IRC server.
Meanwhile it also connected to our own chatbox, that had grown to quite a monster with a
rich functionality.
And it worked well, insofar as the IRC users weren't bothered by the double nicks: a user "joe"
on DND saying something looked like
*** DND (hiddinkg@utcivc.utwente.nl) has joined this channel
(DND) (Joe) hello, here we are!
(IRCUser) Wtf is this!?!?
on IRC. And this made me think:
How come we can chat with 10 people simultaneously in a world wide context
via only 2400 baud?
People had always told me that IRC consumed truckloads of bandwidth. And there we were,
happily chatting around the globe with only 2400 baud, only experiencing some cosmetic
problems. This was the proof that IRC could be written much, much, much
more efficiently! So I started to write a protocol, testing my ideas on our local chatbox,
and thus evolved the World Wide Conferencing Protocol. During the past three years
I have steadily worked on it while finishing my study. The project stalled while I was
working on my graduation assignment from january 1995 untill october 1995. After that, I
did a small programming project to earn a small living, while filling the rest of my
time implementing WWCN and looking for a job. I was hit by such a thing as of july 15th,
so now I only have a few hours in the evening to work on it. I hope to have my Ph.D within
4 years, so you can expect some more time to be spent on it by then ;) But I surely hope
to have finished this project before that.
6. Differences with Internet Relay Chat (IRC)
As the server software used by the World Wide Conferencing Network tries to be compliant
to RFC 1459 (the IRC protocol) as much as possible, you can connect using an IRC client.
However, due to some differences the functionality may be reduced. In particular, the
following phenomena will confuse your client (ranging from an error to total malfunction):
- Nick names are not unique, so someone with the same nickname may enter
your channel. The development team is looking into an elegant
patch (insofar as this is achievable) to avoid your client from going braindead. This
is, for the time being, the price you have to pay for abolishing nick collides.
- The channel structure is not 'flat' anymore, but consists of directories. Testing
shows that ircII clients can be convinced without too much effort to handle the /list
output nicely, but mIRC totally refuses it. The development team is negotiating with the
mIRC developers as to how to solve these problems (as soon as Tjerk has returned from
his holiday ;)
- Channel- and user modes do not work yet. The +b (ban) mode (and /kick) will never
be implemented, some others will. Please be patient.
- the "ISON" message, used by /notify, does not work either. For this to become
functional, the User Directory Service will have to be implemented first. The framework
to implement arbitrary servers has been completed, the only thing that is needed is time.
- Proper dataflow control prohibits flooding. If a user's receive queue
is about to overflow, all its data sources are throttled. On IRC, the
receiving user would be disconnected, which is contradicts the service
the network is supposed to offer.
(c) 1997 by G. Hiddink
If you have any comments, please mail to
grit@wwcn.student.utwente.nl