PatternsOfProtocols


Protocols

Protocols are rules that govern a conversation: who talks first, what language is used, what replies are like. They keep the conversation polite and organized.

Network Protocols

Network protocols govern communications involving networks. They are often specified by standards organizations so that conversations can be conducted between entities previously unknown to one another.

Patterns of Protocols

These are types of conversation that often occur within dialogues that follow protocols. Most often they are "round-trip protocols", meaning a pattern of queries and replies (sometimes called requests and responses) related to a specific situation.

blog               wiki
There are 2 parts in addition to this main page. The blog is intended for current thoughts about what is being done on the project, and the wiki is intended for continuing thoughts about various ideas related to the project.

My notes on Patterns of Protocols

Communicating
the WISE Model
the World as System and Environment connected by an Interface.
CommunicatingComponents
the Flow of Information Through Components.

Short Papers on Patterns of Protocols

Communicating Across A Channel (as layers of communications across virtual channels).
fpg: Format and Parse with Respect to a Grammar (where the grammar is designed for communication over a channel).
fufefr: Furnish or Fetch and Freshen (the pattern for caching of reads).
eeefffaaa: Event-Exception-Error: Fact-Fault-Failure: Act-Adjust-Abort (what to do when something happens and why).

References for Patterns of Protocols

Pattern Languages of Programs,

home page.

Patterns for Software Architectures,

by Arvind S. Krishna of UC-Irvine, explains in particular the "Layers" pattern.

Patterns for Protocol System Architecture

from Proceedings of the Seventh Pattern Languages of Programs Conference, August, 2000, Monticello, Illinois.

Pattern Language for Communications Protocols,

by YoungJoon Byun, Beverly Sanders, and KiSook Chung, from the 9th Conference on Pattern Language of Programs 2002.

Pattern Language for Specification of Communications Protocols,

by Juha Parssinen and Markku Turunene, from the EuroPLop 2002.

The Case for Informed Transport Protocols,

by Stefan Savage, Neal Cardwell, and Tom Anderson from the University of Washington, in Proceedings of the Seventh Workshop on Hot Topics in Operating systems, Rio Rico, AZ, March, 1999.

Java Idioms: Exception Handling,

by Arno Haase, from EuroPLop2002, Workshop A.

A Distributed Computing Pattern Language,

by Frank Buschmann, from EuroPLop2002, Workshop B.

Session Patterns,

by Kristian Elof Sorensen, from EuroPlop2002 C.