PSYC : Technical Details

The PSYC architecture is made of three parts: MMP, the Conferencing Module and the technical PSYC itself. MMP is the Modular Message Protocol, it's a simple carrier protocol for the PSYC packets which therefore do not need to get parsed and understood by simple MMP routers and proxies. The Conferencing Module is a particularely elaborate approach in steering chatrooms and online conferences in general - it is an extension to MMP.

PSYC itself operates end-to-end, leaving routing and multicast issues to the lower layers. PSYC and MMP share a common syntax, which looks unusual compared to traditional text-based protocols, but has advantages in its abilities to get compressed and to be semantically extended. It is important to understand, that the architecture is totally different. You could at best see it as something in-between IRC and XMPP, but that's still quite a simplification.

In theory, servers dictate how users and groups want to be treated, from then on clients communicate with each other according to the rules set up by the servers, optionally using routers, proxies or complex multicast infrastructures as transport media. This is why PSYC conference control can be very well applied to audio/video conferences, too. The actual data is still spread using the appropriate realtime protocols. The current real situation has servers relaying for their users a lot, however. But that doesn't mean we won't become more peer-to-peer-capable later on. The protocol is prepared for that step. There is no central database whatsoever, the system works in a worldwide distributed fashion like the web.

Current Specification (PSYC'96/99).

MMP - the Modular Message Protocol.
PSYC - Method Names of PSYC Objects.
Common Keyword Naming strategy
and Variable Modifiers for PSYC and MMP.
psyc: Uniform Network Locator Scheme.

Other Materials on PSYC.

IRC vs. PSYC - Conference Control Comparison Chart.
NEW: IRC+ and PSYC, how Timo Sirainen of irssi fame comes to the same conclusions as ours.
Discussion with Gerrit Hiddink from WWCN.
PSYC'94 drafts (historic).

Related Internet Standards.

  • RFC 1324 Network Conferencing - the problems of IRC and what to do about it
  • RFC 1459 - IRC Protocol - the Internet Relay Chat
  • RFC 1312 - the Message Send Protocol - a simple non-conferencing message protocol
  • RFC 1034, RFC 1035 - the Domain Name System (concepts and implementation)
  • RFC 768 - UDP - the User Datagram Protocol.
  • RFC 1112 - IP Multicast - The protocol of the Internet Multicast Backbone (MBONE).
  • Further Readings.

  • Related Work.
  • Information about IRC - Web pages about the IRC.
  • The DCC - Direct Client Communication protocol allows IRC clients to have direct TCP links between each other. For negotiation the CTCP - ClientToClient Protocol is used, which is a set of encoded messages sent over IRC.
  • Undernet's Channel Service
  • Undernet introduction to bots - These two show you how IRCers are getting around the problem of not having permanently owned channels in the first place.