Written: Dec 29, 1995
Updated: Jan 1, 1996 - Notes: Dial-up access, Security issues, AUTHINFO GENERIC.
Updated: April 24, 1996 - New location of document referenced

Technical Enablers for the Future of the National Capital Freenet

If it is assumed that the Freenet needs to make changes in order to not be left behind and become irrelevant in a very changing world, we must look at ways of creating a Freenet that will be able to change with that world. I believe that the vision of the future that I have presented in my little story is just that change.

In the story, an emphasis is made on two key factors:

The technology required to make the presented future vision of the Freenet possible can be broken down into a number of independent tools. Individually a number of these tools are being made available to the NCF community, but if any of these are looked over, some aspect of the community that the Freenet has built will be lost as it makes changes in the future.

These tools and technologies are:

Electronic Mail
This tool is already very familiar to dial-up users. Currently, however, Email services are only available in two forms: Dial-up access and Email forwarding. In the future it may be desirable to extend Email services to include POP mailbox services where a user need not tie up a dial-up connection in order to pick up Email stored on the NCF host computers.

Bulletin Board Discussions/Usenet Newsgroups
There is already an online debate about exporting of newsgroups. There are cases, however, where the Freenet may not want to export a newsgroup to the entire of the Usenet community. This does not mean, however, that the Freenet should require that a user be a dial-up user in order to read these groups. The Newsgroup reading technology allows User-Id's and Passwords to be entered while accessing a news server, and this service should be made available to those who can make use of it.

Electronic Publishing and Information Searching
The NCF is already making more and more information available via the World Wide Web. As more and more other services become available, the WEB publishing tools become a glue for all the other tools. WEB services can be enhanced with the addition of tools (CGI's) that allow for searching, electronic forms, and other forms of interaction that will be required by the Freenet.

Inter-user online chatting/Who's online listing
Many people wish others to know that they are online, and wish to have others be able to contact them live. Currently, a user logging into the NCF can have others type 'who' and see that they are online, and then send a 1-liner message. This interaction has an equivalent in the distributed Internet environment, and the enabling technology is IRC. Gateways can be written so that the Freenet IRC server can be tied into the 'who is online' command, as well as the 1-liner messaging system. A remote user could then log into the IRC server with their Freenet User-ID and password, and be able to interact with users on the NCF host computer as if they were logged in.

User Databases
A user can currently use a number of search tools on the NCF in order to find other users who have similar interests, have a name that matches a certain pattern, or other search criteria. As the number of Freenet members greatly increases as the membership no longer is limited by the dial-up capabilities of a group of host computers, a User Database method not based on user accounts on these host computers needs to be found. We already know that there are limitations to the number of dial-up accounts that can exist, and we should design our sustainable Freenet so that we will not be held back by these limitations.

What would need to be done?

A number of changes would need to be made to the NCF software suit in order to allow for this expanded vision to be possible. I will leave the training and other issues related to the Outreach center to be discussed by more appropriate people.

  1. Since many of the features are dependent on membership and being able to authenticate a member, a central part of this software suite is the User Database. The current limitation for members is a limitation of user-ID numbers, not a limitation for user names. The only service that requires a User-ID is the ability to do Dial-up, which is also the most expensive service, and the service that will be needed less and less in the future.

    The NCF currently has a copy of the Oracle database server. With appropriate programming it would be possible to add all the required fields to a database on this server so that each Freenet member has a search-able record in this database. All the information that is currently stored in the NIS database, .dbinterests, .dbaffils, .signature and .forward should be stored in fields of this database.

    It may be found that the searching of this database may be slow for looking up user-names and passwords. A caching system can be set up that could be utilized by the WEB, IRC, News and POP servers. Dial-up members will still need to have a user-ID number allocated for them and thus would also be stored in the NIS database.

    Members that do not log in for a certain amount of time can automatically be removed from the NIS database and disk storage made available. If a dial-up user attempts to log in that has been archived in this manner, they can be told that they should try again in a few moments as the software automatically allocates a user-ID number for the user, creates a fresh home directory, and adds the user to the NIS database.

  2. Electronic mail would require minor modifications to the local delivery mechanism. A few different situations exist:

    In addition to modifications in local delivery, a POPmail server would need to be modified and added. This server would have the ability to check for mailboxes stored in the users home directory as they are currently, as well as being stored in a single directory for those who do not require a dial-up account. User-Names and Passwords would be checked against the master membership database rather than the NIS database.

  3. The news server would be updated to require a User-Name and Password for all accesses not from a Freenet host computer. A standard exists for this with the AuthInfo mechanism used by both the NNTP and INN servers. After the move to the more advanced INN server, the INND and NNRPD daemons would need to be modified to check User-Name and Password information from the master membership database. Once authenticated, this information should also be added to a news message so that the 'user responsible for a post' is always recorded with any post, regardless of what information is used within the From: field of the message.

    It should be noted that a growing number of News clients are having this mechanism added. For instance, the news browser within the very popular Netscape software already has this added. Commercial news services are moving to this mechanism in order to sell newsgroups to members.

    Much of the Authenticated News technology (AUTHINFO GENERIC) was developed at BNR by Chris Lewis, a local Ottawa News administrator. Much local experience exists for this technology.

  4. The WEB server would also be updated to accept a User-Name and Password for remote accesses to it, and to also make use of IDENTD for local accesses so that local dial-up users (who have already typed in a password) are not required to type their password again. While only certain pages will require authentication in order to access them, having the user-name information for all accesses to the server allows for better statistics to be gathered. Having a password asked of the user for a URL such as '/login' also allows the password to be asked for once, and not each time the user goes into a different restricted area.(See Note)

    Various tools such as the search tools, membership registration forms, and other such things should either be moved to the WEB, or have an exact duplicate of the Freeport feature for a WEB user.

  5. Currently the online user list used by the 'who' command makes use of a database that was created for the Freenet itself. In a move to a distributed environment, this 'who is online' should be configured to show both dial-up and distributed users. For this purpose the existing IRC protocol can be used. The IRC server already has the ability to show what users are online with a server, regardless of whether they are in a channel or not. The Freenet system could be configured to log dial-up users into the IRC server automatically when they log in, and log them out automatically when they log out. This would allow a WHO listing on the IRC server to give a listing of all members that have logged in, regardless of whether they are dial-up users or distributed users who automatically log into the IRC server.

    The 1-liner message system should also be tied into the 'msg' command of the IRC server. This would allow external users to send 1-liner messages to a dial-up user, as well as allowing a dial-up user to send a message to a remote user. Since the IRC server would require a Freenet ID in order to log in, the simple and unique Freenet membership ID's could then be used to send online messages just as is used by the current 1-liner message system, regardless of where the user is connected to.


My Vision for the Future of the National Capital Freenet
Technical enablers for this vision.