| <?xml version="1.0" encoding="US-ASCII"?> |
| <!DOCTYPE rfc SYSTEM "rfc2629.dtd"> |
| |
| <rfc category="info" docName="sp-publish-subscribe-01"> |
| |
| <front> |
| |
| <title abbrev="Publish/Subscribe SP"> |
| Publish/Subscribe Scalability Protocol |
| </title> |
| |
| <author fullname="Martin Sustrik" initials="M." role="editor" |
| surname="Sustrik"> |
| <address> |
| <email>sustrik@250bpm.com</email> |
| </address> |
| </author> |
| |
| <date month="May" year="2014" /> |
| |
| <area>Applications</area> |
| <workgroup>Internet Engineering Task Force</workgroup> |
| |
| <keyword>Publish</keyword> |
| <keyword>Subscribe</keyword> |
| <keyword>PUB</keyword> |
| <keyword>SUB</keyword> |
| <keyword>distribution</keyword> |
| <keyword>SP</keyword> |
| |
| <abstract> |
| <t>This document defines a scalability protocol used for distributing |
| data to arbitrary number of subscriber nodes.</t> |
| </abstract> |
| |
| </front> |
| |
| <middle> |
| |
| <section title = "Introduction"> |
| |
| <t>Blah-blah.</t> |
| |
| </section> |
| |
| <section title = "Underlying protocol"> |
| |
| <t>The publish/subscribe protocol can be run on top of any SP mapping, |
| such as, for example, <xref target='SPoverTCP'>SP TCPmapping</xref>. |
| </t> |
| |
| <t>Also, given that SP protocols describe the behaviour of entire |
| arbitrarily complex topology rather than of a single node-to-node |
| communication, several underlying protocols can be used in parallel. |
| For example, publisher can send a message to intermediary node via TCP. |
| The intermediate node can then forward the message via PGM etc.</t> |
| |
| <figure> |
| <artwork> |
| +---+ TCP +---+ PGM +---+ |
| | |----------->| |---------->| | |
| +---+ +---+ +---+ |
| | |
| | PGM +---+ |
| +------------>| | |
| +---+ |
| </artwork> |
| </figure> |
| |
| </section> |
| |
| <section title = "Overview of the algorithm"> |
| <t>Blah-blah.</t> |
| </section> |
| |
| <section title = "Hop-by-hop vs. End-to-end"> |
| <t>Blah-blah.</t> |
| </section> |
| |
| <section title = "Hop-by-hop functionality"> |
| |
| <section title = "PUB endpoint"> |
| <t>Blah-blah.</t> |
| </section> |
| |
| <section title = "SUB endpoint"> |
| <t>Blah-blah.</t> |
| </section> |
| |
| </section> |
| |
| <section title = "End-to-end functionality"> |
| |
| <t>End-to-end functionality is built on top of hop-to-hop functionality. |
| Thus, an endpoint on the edge of a topology contains all the |
| hop-by-hop functionality, but also implements additional |
| functionality of its own. This end-to-end functionality acts |
| basically as a user of the underlying hop-by-hop functionality.</t> |
| |
| <section title = "PUB endpoint"> |
| <t>Blah-blah.</t> |
| </section> |
| |
| <section title = "SUB endpoint"> |
| <t>Blah-blah.</t> |
| </section> |
| |
| </section> |
| |
| <section title = "Loop avoidance"> |
| <t>TODO: Do we want any loop avoidance in PUB/SUB?</t> |
| </section> |
| |
| <section anchor="IANA" title="IANA Considerations"> |
| <t>New SP endpoint types PUB and SUB should be registered by IANA. For |
| now, value of 32 should be used for PUB endpoints and value of 33 for |
| SUB endpoints.</t> |
| |
| <t>IANA should eventually also register and issue numbers for different |
| message matching algorithms.</t> |
| </section> |
| |
| <section anchor="Security" title="Security Considerations"> |
| <t>The mapping is not intended to provide any additional security to the |
| underlying protocol. DoS concerns are addressed within |
| the specification.</t> |
| </section> |
| |
| </middle> |
| |
| <back> |
| <references> |
| <reference anchor='SPoverTCP'> |
| <front> |
| <title>TCP mapping for SPs</title> |
| <author initials='M.' surname='Sustrik' fullname='M. Sustrik'/> |
| <date month='August' year='2013'/> |
| </front> |
| <format type='TXT' target='sp-tcp-mapping-01.txt'/> |
| </reference> |
| </references> |
| </back> |
| |
| </rfc> |
| |