1.4 Relationship to Other Protocols

This protocol defines the central mechanisms of the .NET Remoting Protocol stack, which convert a Remote Method invocation into an exchange of encoded messages. This protocol depends on other structures and protocols for the encoding and transport of its messages. Further protocols can extend this protocol to provide additional services, such as .NET Remoting Lifetime Services [MS-NRLS] which defines additional message and semantics to add activation and distributed lifetime management to .NET Remoting. User applications are layered on top of this protocol and use its services for application-specific purposes.

Before a message is sent, the Remote Method is converted to a serialized form for transmission on the wire. A binary encoding for .NET Remoting is specified in .NET Remoting Binary Format [MS-NRBF]. When the binary encoding is used, .NET Remoting can be bound to either TCP [RFC793] or HTTP [RFC2616]. The TCP binding is specified in TCP Transport (section 2.1.1), and the HTTP binding is specified in HTTP Transport (section 2.1.2).

.NET remoting can also use SOAP1.1, which includes both encoding semantics and transport bindings. The SOAP encoding is specified in [SOAP1.1], with .NET remoting-specific portions of the mapping specified in SOAP Serialization Format (section 2.2.4) of this specification. When SOAP is used, .NET remoting can be bound to either TCP [RFC793] or HTTP [RFC2616]. The TCP binding to SOAP is specified in SOAP on TCP (section 2.1.3.2), and the HTTP binding can be found in [SOAP1.1] section 6, with .NET remoting-specific portions of the mapping specified in SOAP on HTTP (section 2.1.3.1) of this specification.

Relationships between .NET Remoting protocols

Figure 4: Relationships between .NET Remoting protocols