Protocolo de mensajería de confianza versión 1.0
Este tema incluye los detalles de implementación de Windows Communication Foundation (WCF) para el protocolo WS-ReliableMessaging (versión 1.0) de febrero de 2005, que es necesario para la interoperación mediante el transporte HTTP. WCF sigue la especificación WS-Reliable Messaging con las restricciones y clarificaciones que se explican en este tema. Tenga en cuenta que la versión 1.0 del protocolo WS-ReliableMessaging se implementa a partir de WinFX.
ReliableSessionBindingElement implementa el protocolo WS-Reliable Messaging de febrero de 2005 en WCF.
Para su comodidad, el tema utiliza las siguientes funciones:
Iniciador: el cliente que inicia la creación de la secuencia de mensajes WS-Reliable
Respondedor: el servicio que recibe las solicitudes del iniciador
En este documento, se utilizan los prefijos y espacios de nombres de la tabla siguiente.
Prefijo | Espacio de nombres |
---|---|
wsrm | http://schemas.xmlsoap.org/ws/2005/02/rm |
netrm | http://schemas.microsoft.com/ws/2006/05/rm |
s | http://www.w3.org/2003/05/soap-envelope |
wsa | http://schemas.xmlsoap.org/ws/2005/08/addressing |
wsse | http://docs.oasis-open.org/wss/2004/01/oasis-200401-wssecurity-secext-1.0.xsd |
Mensajería
Mensajes de establecimiento de secuencia
WCF implementa mensajes CreateSequence
y CreateSequenceResponse
para establecer una secuencia de mensajes confiable. Se aplican las siguientes restricciones:
B1101: el iniciador WCF no genera el elemento Expires opcional en el mensaje
CreateSequence
o, en los casos en los que el mensajeCreateSequence
contiene un elementoOffer
, el elemento opcionalExpires
en el elementoOffer
.B1102: cuando se accede al mensaje
CreateSequence
,Responder
WCF envía y recibe los elementosExpires
si existen, pero no usa sus valores.
WS-Reliable Messaging incluye el mecanismo Offer
para establecer las dos secuencias correlacionadas inversas que forman una sesión.
R1103: si
CreateSequence
contiene un elementoOffer
, el respondedor de la mensajería de confianza debe aceptar la secuencia y responder conCreateSequenceResponse
, que contiene un elementowsrm:Accept
, formando dos secuencias correlacionadas inversas, o rechazar la solicitudCreateSequence
.R1104:
SequenceAcknowledgement
y los mensajes de la aplicación que fluyen en una secuencia inversa se deben enviar a la referencia de punto de conexiónReplyTo
deCreateSequence
.R1105: las referencias de punto de conexión
AcksTo
yReplyTo
enCreateSequence
deben tener valores de dirección que coincidan byte a byte.El respondedor WCF comprueba que la parte del URI de las EPR
AcksTo
yReplyTo
sea idéntica antes de la creación de una secuencia.R1106: las referencias de punto de conexión
AcksTo
yReplyTo
del mensajeCreateSequence
deberían tener el mismo conjunto de parámetros de referencia.WCF no exige, pero supone que los [parámetros de referencia] de
AcksTo
yReplyTo
enCreateSequence
son idénticos y usa los [parámetros de referencia] de la referencia de punto de conexiónReplyTo
para las confirmaciones y los mensajes de secuencia inversa.R1107: cuando dos secuencias inversas se establecen por medio del mecanismo
Offer
, los mensajes de aplicación ySequenceAcknowledgement
que fluyen en secuencias inversas se deben enviar a la referencia de punto de conexiónReplyTo
deCreateSequence
.R1108: cuando dos secuencias inversas se establecen mediante el mecanismo Offer, la propiedad
[address]
del elemento secundario de referencia de extremowsrm:AcksTo
del elementowsrm:Accept
deCreateSequenceResponse
debe coincidir byte a byte con el URI de destino deCreateSequence
.R1109: cuando se establecen dos secuencias inversas por medio del mecanismo
Offer
, los mensajes enviados por el iniciador y las confirmaciones de los mensajes por parte del respondedor se deben enviar a la misma referencia de punto de conexión.WCF usa WS-Reliable Messaging para establecer sesiones confiables entre el iniciador y el respondedor. La implementación de WS-Reliable Messaging WCF proporciona una sesión confiable para patrones de mensajería dúplex completa y de solicitud-respuesta unidireccional. El mecanismo
Offer
de WS-Reliable Messaging enCreateSequence
/CreateSequenceResponse
permite establecer dos secuencias inversas correlacionadas y proporciona un protocolo de sesión que es apto para todos los puntos de conexión de mensajes. Dado que WCF proporciona una garantía de seguridad para este tipo de sesiones, entre las que se incluyen la protección de un extremo a otro para la integridad de la sesión, resulta práctico para garantizar que los mensajes dirigidos a la misma parte lleguen al mismo destino. Esto también permite el “apoyo a caballo” de confirmaciones de secuencias en mensajes de aplicaciones. Por tanto, las restricciones R1104, R1105 y R1108 se aplican a WCF.
Ejemplo de mensaje CreateSequence
.
<s:Envelope>
<s:Header>
<a:Action s:mustUnderstand="1">
http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence
</a:Action>
<a:ReplyTo>
<a:Address>
http://Business456.com/clientA
</a:Address>
</a:ReplyTo>
<a:MessageID>
urn:uuid:addabbbf-60cb-44d3-8c5b-9e0841629a36
</a:MessageID>
<a:To s:mustUnderstand="1">
http://Business456.com/clientA
</a:To>
</s:Header>
<s:Body>
<wsrm:CreateSequence>
<wsrm:AcksTo>
<wsa:Address>
http://Business456.com/clientA
</wsa:Address>
</wsrm:AcksTo>
<wsrm:Offer>
<wsrm:Identifier>
urn:uuid:0afb8d36-bf26-4776-b8cf-8c91fddb5496
</wsrm:Identifier>
</wsrm:Offer>
</wsrm:CreateSequence>
</s:Body>
</s:Envelope>
Ejemplo de mensaje CreateSequenceResponse
.
<s:Envelope>
<s:Header>
<a:Action s:mustUnderstand="1">
http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequenceResponse
</a:Action>
<a:RelatesTo>
urn:uuid:addabbbf-60cb-44d3-8c5b-9e0841629a36
</a:RelatesTo>
<a:To s:mustUnderstand="1">
http://Business456.com/clientA
</a:To>
</s:Header>
<s:Body>
<wsrm:CreateSequenceResponse>
<Identifier>
urn:uuid:eea0a36c-b38a-43e8-8c76-2fabe2d76386
</Identifier>
<Accept>
<AcksTo>
<a:Address>
http://BusinessABC.com/serviceA
</a:Address>
</AcksTo>
</Accept>
</wsrm:CreateSequenceResponse>
</s:Body>
</s:Envelope>
Secuencia
A continuación, se muestra una lista de restricciones que se aplican a las secuencias:
B1201: WCF genera y tiene acceso a números de secuencia que no superan el valor máximo incluido de
xs:long
, 9223372036854775807.B1202: WCF siempre genera un último mensaje de cuerpo vacío con el URI de acción de
http://schemas.xmlsoap.org/ws/2005/02/rm/LastMessage
.B1203: WCF recibe y entrega un mensaje con un encabezado de secuencia que contiene un elemento
LastMessage
siempre que el URI de acción no seahttp://schemas.xmlsoap.org/ws/2005/02/rm/LastMessage
.
Ejemplo de encabezado de secuencia.
<wsrm:Sequence>
<wsrm:Identifier>
urn:uuid:addabbbf-60cb-44d3-8c5b-9e0841629a36
</wsrm:Identifier>
<wsrm:MessageNumber>
10
</wsrm:MessageNumber>
<wsrm:LastMessage/>
</wsrm:Sequence>
Encabezado AckRequested
WCF usa el encabezado AckRequested
como mecanismo de mantenimiento. WCF no genera el elemento MessageNumber
opcional. Cuando se recibe un mensaje con un encabezado AckRequested
que contiene el elemento MessageNumber
, WCF ignora el valor del elemento MessageNumber
, tal y como se muestra en el siguiente ejemplo.
<wsrm:AckRequested>
<wsrm:Identifier>
urn:uuid:addabbbf-60cb-44d3-8c5b-9e0841629a36
</wsrm:Identifier>
</wsrm:AckRequested>
Encabezado SequenceAcknowledgement
WCF usa un mecanismo de superposición para las confirmaciones de secuencias que se proporcionan en WS-Reliable Messaging.
R1401: cuando dos secuencias inversas se establecen utilizando el mecanismo
Offer
, el encabezadoSequenceAcknowledgement
puede estar incluido en cualquier mensaje de aplicación transmitido al destinatario previsto.B1402: cuando WCF debe generar una confirmación antes de recibir ningún mensaje de secuencia (por ejemplo, para satisfacer un mensaje
AckRequested
), WCF genera un encabezadoSequenceAcknowledgement
que contiene el rango 0-0, tal y como se muestra en el siguiente ejemplo.<wsrm:SequenceAcknowledgement> <wsrm:Identifier> urn:uuid:addabbbf-60cb-44d3-8c5b-9e0841629a36 </wsrm:Identifier> <wsrm:AcknowledgementRange Upper="0" Lower="0"/> </wsrm:SequenceAcknowledgement>
B1403: WCF no genera encabezados
SequenceAcknowledgement
que contengan un elementoNack
, pero admite elementosNack
.
Errores de WS-ReliableMessaging
A continuación, se muestra una lista de las restricciones que se aplican a la implementación WCF de errores de WS-Reliable Messaging:
B1501: WCF no genera errores
MessageNumberRollover
.B1502: el punto de conexión WCF puede generar errores
CreateSequenceRefused
, tal y como se describe en la especificación.B1503: cuando el punto de conexión de servicio alcanza el límite de conexiones y no puede procesar ninguna nueva, WCF genera un subcódigo de error
CreateSequenceRefused
adicional,netrm:ConnectionLimitReached
, tal y como se muestra en el siguiente ejemplo.<s:Envelope> <s:Header> <wsa:Action> http://schemas.xmlsoap.org/ws/2005/08/addressing/fault </wsa:Action> </s:Header> <s:Body> <s:Fault> <s:Code> <s:Value> s:Receiver </s:Value> <s:Subcode> <s:Value> wsrm:CreateSequenceRefused </s:Value> <s:Subcode> <s:Value> netrm:ConnectionLimitReached </s:Value> </s:Subcode> </s:Subcode> </s:Code> <s:Reason> <s:Text xml:lang="en"> [Reason] </s:Text> </s:Reason> </s:Fault> </s:Body> </s:Envelope>
Errores WS-Addressing
Dado que WS-Reliable Messaging usa WS-Addressing, la implementación de WS-Reliable Messaging WCF puede generar errores de WS-Addressing. Esta sección incluye los errores de WS-Addressing que WCF genera de forma explícita en la capa de WS-Reliable Messaging:
B1601: WCF genera el error Encabezado de direccionamiento de mensaje necesario cuando se cumple uno de los siguientes requisitos:
Falta un encabezado
Sequence
y un encabezadoAction
en un mensaje.Falta un encabezado
CreateSequence
en un mensajeMessageId
.Falta un encabezado
CreateSequence
en un mensajeReplyTo
.
B1602: WCF genera el error Acción no admitida en respuesta a un mensaje que carece de un encabezado
Sequence
y que tiene un encabezadoAction
que se reconoce en la especificación WS-Reliable Messaging.B1603: WCF genera el error Punto de conexión no disponible para indicar que el punto de conexión no procesa la secuencia en función del examen de los encabezados de direccionamiento del mensaje
CreateSequence
.
Composición de protocolos
Composición con WS-Addressing
WCF admite dos versiones de WS-Addressing: WS-Addressing 2004/08 [WS-ADDR] y las recomendaciones de WS-Addressing 1.0 de W3C [WS-ADDR-CORE] y [WS-ADDR-SOAP].
Aunque la especificación de WS-Reliable Messaging solo menciona a WS-Addressing 2004/08, no limita la versión de WS-Addressing que se ha de utilizar. A continuación, se muestra una lista de restricciones que se aplican a WCF:
R2101:WS-Addressing 2004/08 y WS-Addressing 1.0 se pueden utilizar con WS-Reliable Messaging.
R2102: se debe utilizar una única versión de WS-Addressing a en una secuencia de WS-Reliable Messaging determinada o un par de secuencias inversas correlacionadas mediante el mecanismo
wsrm:Offer
.
Composición con SOAP
WCF admite el uso de SOAP 1.1 y SOAP 1.2 con WS-Reliable Messaging.
Composición con WS-Security y WS-SecureConversation
WCF proporciona protección para secuencias de WS-Reliable Messaging mediante el transporte seguro (HTTPS), la creación con WS-Security y la composición con WS-Secure Conversation. A continuación, se muestra una lista de restricciones que se aplican a WCF:
R2301: para proteger la integridad de una secuencia de WS-Reliable Messaging además de la integridad y confidencialidad de mensajes individuales, WCF necesita que se use WS-Secure Conversation.
R2302:una sesión de WS-Secure Conversation se debe establecer antes de establecer las secuencias de WS-Reliable Messaging.
R2303: si la duración de la secuencia de WS-Reliable Messaging supera la duración de la sesión de WS-Secure Conversation, el
SecurityContextToken
establecido mediante WS-Secure Conversation se debe renovar utilizando el enlace de renovación de WS-Secure Conversation correspondiente.B2304:la secuencia de WS-Reliable Messaging o un par de secuencias inversas correlacionadas siempre se enlazan a una única sesión de WS-SecureConversation.
El origen WCF genera el elemento
wsse:SecurityTokenReference
en la sección de extensibilidad de elementos del mensajeCreateSequence
.R2305: cuando se realiza con WS-Secure Conversation, un mensaje
CreateSequence
debe contener el elementowsse:SecurityTokenReference
.
Aserción de WS-Policy de WS-Reliable Messaging
WCF usa la aserción de WS-Policy de WS-Reliable Messaging para wsrm:RMAssertion
a fin de describir funcionalidades de puntos de conexión. A continuación, se muestra una lista de restricciones que se aplican a WCF:
B3001: WCF adjunta la aserción de WS-Policy
wsrm:RMAssertion
a elementoswsdl:binding
. WCF admite datos adjuntos para los elementoswsdl:binding
ywsdl:port
.B3002: WCF admite las siguientes propiedades de aserción opcionales de WS-Reliable Messaging y proporciona control sobre estas en WCF
ReliableMessagingBindingElement
:wsrm:InactivityTimeout
wsrm:AcknowledgementInterval
A continuación se muestra un ejemplo.
<wsrm:RMAssertion> <wsrm:InactivityTimeout Milliseconds="600000" /> <wsrm:AcknowledgementInterval Milliseconds="200" /> </wsrm:RMAssertion>
Extensión de WS-Reliable Messaging de control de flujo
WCF usa la extensibilidad de WS-Reliable Messaging para proporcionar un control adicional más estricto y opcional sobre el flujo de mensajes de secuencias.
El control de flujo se habilita cuando la propiedad ReliableSessionBindingElement.FlowControlEnabled se establece en true
. A continuación, se muestra una lista de restricciones que se aplican a WCF:
B4001: cuando se habilitada el control de flujo de la mensajería confiable, WCF genera un elemento
netrm:BufferRemaining
en la extensibilidad de elementos del encabezadoSequenceAcknowledgement
.B4002: cuando está habilitado el control de flujo de la mensajería confiable, WCF no necesita que haya un elemento
netrm:BufferRemaining
en el encabezadoSequenceAcknowledgement
, tal y como se muestra en el ejemplo siguiente.<wsrm:SequenceAcknowledgement> <wsrm:Identifier> http://fabrikam123.com/abc </wsrm:Identifier> <wsrm:AcknowledgementRange Upper="1" Lower="1"/> <netrm:BufferRemaining> 8 </netrm:BufferRemaining> </wsrm:SequenceAcknowledgement>
B4003: WCF usa
netrm:BufferRemaining
para indicar cuántos mensajes nuevos puede almacenar en búfer el destino de la mensajería confiable.B4004: el servicio de mensajería confiable WCF limita el número de mensajes que se transmiten cuando la aplicación de destino de la mensajería confiable no puede recibir mensajes de forma rápida. El destino de la mensajería de confianza almacena en búfer los mensajes y el valor del elemento cae a 0.
B4005: WCF genera valores enteros
netrm:BufferRemaining
entre 0 y 4096, ambos incluidos, y lee valores enteros entre 0 y el valor 214748364maxInclusive
dexs:int
, ambos incluidos.
Modelos de intercambio de mensajes
En esta sección se describe el comportamiento de WCF cuando se usa WS-Reliable Messaging para patrones de intercambio de mensajes diferentes. Para cada patrón de intercambio de mensajes, se consideran los dos escenarios de implementación siguientes:
Iniciador no direccionable: el iniciador está tras un firewall; el respondedor solo puede entregar mensajes al iniciador mediante respuestas HTTP.
Iniciador direccionable: el iniciador y el respondedor pueden enviar solicitudes HTTP; en otras palabras, se pueden establecer dos conexiones HTTP inversas.
Iniciador unidireccional no direccionable
Enlace
WCF proporciona un patrón de intercambio de mensajes unidireccional mediante una secuencia a través de un canal HTTP. WCF usa las solicitudes HTTP para transmitir todos los mensajes del RMS al RMD y la respuesta HTTP para transmitir todos los mensajes del RMD al RMS.
Intercambio de CreateSequence
El iniciador WCF genera un mensaje CreateSequence
sin ninguna oferta. El respondedor WCF garantiza que CreateSequence
no tenga ninguna oferta antes de la creación de una secuencia. El respondedor WCF responde a la solicitud CreateSequence
con un mensaje CreateSequenceResponse
.
SequenceAcknowledgement
El iniciador WCF procesa las confirmaciones en la respuesta de todos los mensajes, excepto en los mensajes de error y el mensaje CreateSequence
. El respondedor WCF siempre genera una confirmación independiente en respuesta a la secuencia y los mensajesAckRequested
.
Mensaje TerminateSequence
WCF trata a TerminateSequence
como una operación unidireccional, lo que significa que la respuesta HTTP tiene un cuerpo vacío y un código de estado HTTP 202.
Iniciador unidireccional y direccionable
Enlace
WCF proporciona un patrón de intercambio de mensajes unidireccional mediante una secuencia sobre un canal HTTP entrante y uno saliente. WCF usa las solicitudes HTTP para transmitir todos los mensajes. Todas las respuestas HTTP tienen un cuerpo vacío y código de estado HTTP 202.
Intercambio de CreateSequence
El iniciador WCF genera un mensaje CreateSequence
sin ninguna oferta. El respondedor WCF garantiza que CreateSequence
no tenga ninguna oferta antes de la creación de una secuencia. El respondedor WCF transmite el mensaje CreateSequenceResponse
en una solicitud HTTP direccionada con la referencia de punto de conexión ReplyTo
.
Iniciador dúplex y direccionable
Enlace
WCF proporciona un patrón de intercambio de mensajes totalmente asincrónico y bidireccional mediante dos secuencias sobre un canal HTTP entrante y uno saliente. WCF usa las solicitudes HTTP para transmitir todos los mensajes. Todas las respuestas HTTP tienen un cuerpo vacío y código de estado HTTP 202.
Intercambio de CreateSequence
El iniciador WCF genera un mensaje CreateSequence
con una oferta. El respondedor WCF garantiza que CreateSequence
tenga una oferta antes de la creación de una secuencia. WCF envía CreateSequenceResponse
en la solicitud HTTP que está dirigida a la referencia de punto de conexión de CreateSequence
ReplyTo
.
Duración de la secuencia
WCF trata las dos secuencias como una sesión totalmente dúplex.
Al generar un error que produce un error en una secuencia, WCF espera que el punto de conexión remoto genere un error en ambas secuencias. Al leer un error en una secuencia, WCF producirá un error en ambas secuencias.
WCF puede cerrar la secuencia saliente y continuar con el procesamiento de mensajes en la secuencia entrante. En cambio, WCF puede procesar el cierre de la secuencia entrante y continuar con el envío de mensajes en la secuencia saliente.
Iniciador no direccionable de solicitud-respuesta
Enlace
WCF proporciona un patrón de intercambio de mensajes unidireccional de solicitud-respuesta mediante dos secuencias a través de un canal HTTP. WCF usa las solicitudes HTTP para transmitir los mensajes de la secuencia de solicitud y usa las respuestas HTTP para transmitir los mensajes de la secuencia de respuesta.
Intercambio de CreateSequence
El iniciador WCF genera un mensaje CreateSequence
con una oferta. El respondedor WCF garantiza que CreateSequence
tenga una oferta antes de la creación de una secuencia. El respondedor WCF responde a la solicitud CreateSequence
con un mensaje CreateSequenceResponse
.
Mensaje unidireccional
Para completar correctamente un protocolo de intercambio de mensajes unidireccional, el iniciador WCF transmite un mensaje de secuencia de solicitud en la solicitud HTTP y recibe un mensaje SequenceAcknowledgement
independiente en la respuesta HTTP. La SequenceAcknowledgement
debe confirmar el mensaje transmitido.
El respondedor WCF puede responder a la solicitud con una confirmación, un error o una respuesta con un cuerpo vacío y un código de estado HTTP 202.
Mensajes bidireccionales
Para completar correctamente un protocolo de intercambio de mensajes bidireccional, el iniciador WCF transmite un mensaje de secuencia de solicitud en la solicitud HTTP y recibe un mensaje de secuencia de respuesta en la respuesta HTTP. La respuesta debe llevar una SequenceAcknowledgement
que confirme que se ha transmitido el mensaje de secuencia de solicitud.
El respondedor WCF puede responder a la solicitud con una respuesta de la aplicación, un error o una respuesta con un cuerpo vacío y un código de estado HTTP 202.
Debido a la presencia de mensajes unidireccionales y al control de tiempo de las respuestas de la aplicación, el número de secuencia del mensaje de secuencia de solicitud y el número de secuencia del mensaje de respuesta no tienen ninguna correlación.
Reintento de respuestas
WCF depende de la correlación de solicitud-respuesta HTTP para la correlación del protocolo de intercambio de mensajes bidireccional. Por ese motivo, el iniciador WCF no deja de reintentar un mensaje de secuencia de solicitud cuando este se confirma, sino cuando la respuesta HTTP transmite una confirmación, un mensaje de usuario o un error. El respondedor WCF vuelve a intentar responder en la fase de la solicitud HTTP de la solicitud con la que se pone en correlación la respuesta.
Intercambio de LastMessage
El iniciador WCF genera y transmite un último mensaje con cuerpo vacío en la fase de la solicitud HTTP. WCF necesita una respuesta, pero omite el mensaje de respuesta real. El respondedor WCF responde al último mensaje de cuerpo vacío de la secuencia de solicitud con el último mensaje de cuerpo vacío de la secuencia de respuesta.
Si el respondedor WCF recibe un último mensaje en el que el URI de acción no es http://schemas.xmlsoap.org/ws/2005/02/rm/LastMessage
, WCF responderá con un último mensaje. En el caso de un protocolo de intercambio de mensajes bidireccional, el último mensaje lleva el mensaje de la aplicación; en el caso de un protocolo de intercambio de mensajes unidireccional, el último mensaje está vacío.
El respondedor WCF no requiere una confirmación para el último mensaje de cuerpo vacío de la secuencia de respuesta.
Intercambio de TerminateSequence
Cuando todas las solicitudes han recibido una respuesta válida, el iniciador WCF genera y transmite el mensaje TerminateSequence
de la secuencia de solicitud en la fase de la solicitud HTTP. WCF necesita una respuesta, pero omite el mensaje de respuesta real. El respondedor WCF responde al mensaje TerminateSequence
de la secuencia de solicitud con el mensaje TerminateSequence
de la secuencia de respuesta.
En una secuencia de apagado normal, ambos mensajes TerminateSequence
llevan un SequenceAcknowledgement
de intervalo completo.
Iniciador direccionable de solicitud-respuesta
Enlace
WCF proporciona un patrón de intercambio de mensajes de solicitud-respuesta mediante dos secuencias sobre un canal HTTP entrante y uno saliente. WCF usa las solicitudes HTTP para transmitir todos los mensajes. Todas las respuestas HTTP tienen un cuerpo vacío y código de estado HTTP 202.
Intercambio de CreateSequence
El iniciador WCF genera un mensaje CreateSequence
con una oferta. El respondedor WCF garantiza que CreateSequence
tenga una oferta antes de la creación de una secuencia. WCF envía CreateSequenceResponse
en la solicitud HTTP que está dirigida a la referencia de punto de conexión de CreateSequence
ReplyTo
.
Correlación entre solicitud y respuesta
El iniciador WCF garantiza que todos los mensajes de solicitud de la aplicación lleven un MessageId
y una referencia de punto de conexión ReplyTo
. El iniciador WCF aplica la referencia de punto de conexión ReplyTo
del mensaje CreateSequence
en cada mensaje de solicitud de la aplicación. El respondedor WCF necesita que los mensajes de solicitud entrantes lleven un MessageId
y un ReplyTo
. El respondedor WCF garantiza que el URI de la referencia del punto de conexión de CreateSequence
y de todos los mensajes de solicitud de la aplicación sean idénticos.