More Information on PSYC resides at http://www.psyc.eu

Protocol for SYnchronous Conferencing (english)

PSYC is a flexible text-based protocol for delivery of data to a flexible amount of recipients or people, by unicast or multicast. It is primarily used for chat conferencing, presence, pubsub and instant messaging, but not limited to that. Existing systems can easily use PSYC, since PSYC hides its complexity from them. For example if an application wants to send data to one person or a group of people, it just needs to drop a few lines of text into a TCP connection or signed UDP packet to a static address. In other words: trivial.

The original PSYC1 network resembles more the Web rather than IRC, which it once was inspired by. Each administrator of a machine on the Internet can install a PSYC server which has equal rights in the worldwide network. No hierarchies and no boundaries. The administrator then has the right to decide which rooms or people to host, without interfering with other PSYC servers. This approach, later termed federation, however has devastating disadvantages for privacy, therefore PSYC2 is in process of being developed.

PSYC theory and protocol was first written down in 1995. The software has been in production use since 1997. Around 2005 it reached a certain degree of completeness.


Protocol for SYnchronous Conferencing (deutsch)

PSYC ist ein flexibles Protokoll zum Aufbau einer weltweiten verteilten Messaging-Infrastruktur primär für text-basierte Konferenzschaltungen (auch Chats oder Chatsysteme genannt). Es entstand mit der Zielsetzung, das Internet- Relay- Chat- System ersetzen zu können, hat sich aber weiterentwickelt zur Unterstützung von multimedialer Kommunikation und kann auf allerlei Einsatzzwecke zugeschnitten werden. Bestehende Kommunikationssysteme können relativ leicht in das PSYC-Netzwerk eingebunden werden, da die PSYC-Infrastruktur seinen Empfängern einfache feste Adressen zuweist. Eine Nachricht einem oder mehreren menschlichen Empfängern zu senden beispielsweise, egal ob diese online sind und woher, reduziert sich darauf, einige Zeilen Text in eine fest adressierbare TCP-Verbindung zu schicken, oder als UDP Paket zu versenden. Softwaretechnisch also ein Handgriff.

Der Grundgedanke ist es, eine weltweite Datenbank über die Anwesenheit von Personen und Existenz von Konferenzen gar nicht erst aufzubauen, sondern ganz wie im Web den Ressourcen und Personen URL-konforme Locators zuzuweisen, und daraufhin die Client-Programme direkte oder smart geroutete Verbindungen untereinander aufbauen zu lassen. Die Server nehmen dabei eine vermittelnde Hilfestellung ein, und sind von Datenbank oder Routingproblemen gänzlich befreit. Passend dazu kommt ein minimalistisches Konferenzsteuerungsprotokoll, welches totale Programmierbarkeit der Politik des Konferenzraumes ermöglicht (Wer darf hinein? Wer darf nur zuhören? etc.). Zugleich kann die Zustellung der Nachrichten durch Multicast- Protokolle optimiert werden. Der Server trägt nicht die Last der eigentlichen Kommunikation, es sei denn man möchte es so.

Das Original-PSYC-Netz ähnelt eher dem Web als einem IRC-Netzwerk: Auf jedem Rechner im Internet kann vom Besitzer/Administator ein eigener, gleichgestellter PSYC-Server betrieben werden - ohne Hierarchien, ohne besondere Berechtigungen für Administratoren, außer dem Recht, zu entscheiden, welche Räume und Personen man hostet. Mißbraucht ein Administrator seine Macht, wechseln seine Benutzer einfach auf einen anderen PSYC-Server. Somit gibt es einen direkten Wettbewerb, und als Administrator ist man gezwungen, sich zu benehmen. Der Federation-Ansatz, wie er heutzutage genannt wird, hat sich leider als desaströs für die Privatsphäre der Beteiligten erwiesen, weswegen das neue PSYC2-Netzwerk ohne stark involvierten Servern auszukommen plant.

PSYC wurde 1995 erstmals theoretisch niedergeschrieben. Die Software-Implementation ist seit 2005 soweit fertig und einsatzbereit, wobei die "unvollständigen" Versionen seit 1997 produktiv im Einsatz waren.



More defining moments

psycbrain_8bit.png

Have a look at the starting page of about.psyc.eu:

PSYC is, as benchmarks show, the fastest yet extensible text-based protocol we are aware of, providing a messaging infrastructure for human conversation and social exchange of possibly binary data.

It has learned from protocols such as IRC and XMPP and chose an approach that should scale globally by generalizing the multicast concept beyond programmable chatrooms to presence awareness, event notification, news- and friendcasting. In commercial settings PSYC is also being used for telephony and audio/video.

PSYC provides trust metrics for a distributed social graph and publish/subscribe data. In combination with pseudonymous routing technology it turns into secure share, a platform for maximum privacy social networking and applications.