¿Qué es Relay de Azure?What is Azure Relay?

El servicio Azure Relay le permite exponer de forma segura servicios que se ejecutan en la red corporativa en la nube pública.The Azure Relay service enables you to securely expose services that run in your corporate network to the public cloud. Puede hacerlo sin tener que abrir una conexión de firewall y sin realizar cambios molestos en la infraestructura de la red corporativa.You can do so without opening a firewall connection, or making intrusive changes to your corporate network infrastructure.

El servicio Azure Relay admite los siguientes escenarios entre servicios locales y aplicaciones que se ejecutan en la nube o en otro entorno local.The relay service supports the following scenarios between on-premises services and applications running in the cloud or in another on-premises environment.

  • Comunicación unidireccional tradicional, de solicitud/respuesta y de punto a punto.Traditional one-way, request/response, and peer-to-peer communication
  • Distribución de eventos en el ámbito de Internet para habilitar escenarios de publicación y suscripciónEvent distribution at internet-scope to enable publish/subscribe scenarios
  • Comunicación de socket bidireccional y sin almacenamiento en búfer en los límites de red.Bi-directional and unbuffered socket communication across network boundaries.

Azure Relay es diferente a las tecnologías de integración en el nivel de red, como VPN.Azure Relay differs from network-level integration technologies such as VPN. Una instancia de Azure Relay se puede limitar a un único punto de conexión de la aplicación de una única máquina.An Azure relay can be scoped to a single application endpoint on a single machine. La tecnología VPN es mucho más intrusiva, ya que se basa en modificar el entorno de red.The VPN technology is far more intrusive, as it relies on altering the network environment.

Flujo básicoBasic flow

En el patrón de transferencia de datos, los pasos básicos son:In the relayed data transfer pattern, the basic steps involved are:

  1. Un servicio local se conecta al servicio de retransmisión a través de un puerto de salida.An on-premises service connects to the relay service through an outbound port.
  2. Este servicio crea un socket bidireccional para la comunicación asociado a una dirección determinada.It creates a bi-directional socket for communication tied to a particular address.
  3. Después, el cliente puede comunicarse con el servicio local enviando tráfico al servicio de retransmisión destinado a esa dirección.The client can then communicate with the on-premises service by sending traffic to the relay service targeting that address.
  4. El servicio de retransmisión retransmite entonces los datos al servicio local a través de un socket bidireccional dedicado al cliente.The relay service then relays data to the on-premises service through the bi-directional socket dedicated to the client. El cliente no necesita una conexión directa al servicio local.The client doesn't need a direct connection to the on-premises service. No necesita conocer la ubicación del servicio.It doesn't need to know the location of the service. Y el servicio local no necesita ningún puerto de entrada abierto en el firewall.And, the on-premises service doesn't need any inbound ports open on the firewall.

CaracterísticasFeatures

Relay de Azure tiene dos características:Azure Relay has two features:

  • Conexiones híbridas: usa los sockets web de estándar abierto, con lo que se admiten escenarios multiplataforma.Hybrid Connections - Uses the open standard web sockets enabling multi-platform scenarios.
  • Retransmisiones de WCF: usa Windows Communication Foundation (WCF) para habilitar las llamadas a procedimientos remotos.WCF Relays - Uses Windows Communication Foundation (WCF) to enable remote procedure calls. WCF Relay es la oferta de Relay heredada que muchos clientes ya pueden utilizar con sus modelos de programación de WCF.WCF Relay is the legacy relay offering that many customers already use with their WCF programming models.

conexiones híbridasHybrid Connections

La característica Conexiones híbridas de Azure Relay es una evolución segura y de protocolo abierto de las características de Relay que ya existían anteriormente.The Hybrid Connections feature in Azure Relay is a secure, and open-protocol evolution of the Relay features that existed earlier. Puede usarla en cualquier plataforma y en cualquier lenguaje.You can use it on any platform and in any language. La característica Conexiones híbridas de Azure Relay se basa en protocolos de HTTP y WebSockets.Hybrid Connections feature in Azure Relay is based on HTTP and WebSockets protocols. Le permite enviar solicitudes y recibir respuestas a través de sockets web o HTTP (S).It allows you to send requests and receive responses over web sockets or HTTP(S). Esta característica es compatible con la API de WebSocket en los exploradores web más habituales.This feature is compatible with WebSocket API in common web browsers.

Para más información sobre el protocolo de Conexiones híbridas, consulte Guía del protocolo de conexiones híbridas.For details on the Hybrid Connection protocol, see Hybrid Connections protocol guide. Puede usar Conexiones híbridas con cualquier biblioteca de sockets web de cualquier entorno de ejecución o lenguaje.You can use Hybrid Connections with any web sockets library for any runtime/language.

Nota

Conexiones híbridas de Azure Relay reemplaza a la anterior característica Conexiones híbridas de BizTalk Services.Hybrid Connections of Azure Relay replaces the old Hybrid Connections feature of BizTalk Services. La característica Conexiones híbridas de BizTalk Services se basaba en Azure Service Bus WCF Relay.The Hybrid Connections feature in BizTalk Services was built on the Azure Service Bus WCF Relay. La funcionalidad Conexiones híbridas de Azure Relay complementa la característica WCF Relay que ya existía anteriormente.The Hybrid Connections capability in Azure Relay complements the pre-existing WCF Relay feature. Estas dos funcionalidades del servicio (WCF Relay y Conexiones híbridas) coexisten en el servicio Azure Relay.These two service capabilities (WCF Relay and Hybrid Connections) exist side-by-side in the Azure Relay service. Aunque comparten una puerta de enlace común, se trata de implementaciones diferentes.They share a common gateway, but are otherwise different implementations.

Retransmisión de WCFWCF Relay

WCF Relay es totalmente compatible con .NET Framework y WCF.WCF Relay works with the full .NET Framework and for WCF. Puede crear una conexión entre el servicio local y el servicio de retransmisión mediante un conjunto de enlaces de “retransmisión” WCF.You create a connection between your on-premises service and the relay service using a suite of WCF "relay" bindings. En segundo plano, los enlaces de retransmisión se asignan a nuevos elementos de enlace de transporte diseñados para crear componentes de canal WCF que se integran con Service Bus en la nube.Behind the scenes, the relay bindings map to new transport binding elements designed to create WCF channel components that integrate with Service Bus in the cloud. Para más información, consulte Introducción a WCF Relay.For more information, see getting started with WCF Relay.

Conexiones híbridas en comparación con Retransmisión de WCFHybrid Connections vs. WCF Relay

Conexiones híbridas y WCF Relay habilitan una conexión segura a los recursos de dentro de una red corporativa.Hybrid Connections and WCF Relay both enable secure connection to assets that exist within a corporate network. El uso de una u otra depende de sus necesidades particulares que se detallan en la siguiente tabla:Use of one over the other depends on your particular needs, as described in the following table:

Retransmisión de WCFWCF Relay conexiones híbridasHybrid Connections
WCFWCF xx
.NET Core.NET Core xx
.NET Framework.NET Framework xx xx
Script de Java/Node.JSJava script/Node.JS xx
Protocolo abierto basado en estándaresStandards-Based open protocol xx
Varios modelos de programación de RPCMultiple RPC programming models xx

Arquitectura: Procesamiento de solicitudes entrantes de retransmisiónArchitecture: Processing of incoming relay requests

El siguiente diagrama muestra el control de las solicitudes de transmisión entrantes por parte del servicio Azure Relay:The following diagram shows you how incoming relay requests are handled by the Azure Relay service:

Procesamiento de solicitudes entrantes de retransmisión WCF

  1. El cliente de escucha envía una solicitud de escucha al servicio Azure Relay.Listening client sends a listening request to the Azure Relay service. Azure Load Balancer enruta la solicitud a uno de los nodos de la puerta de enlace.The Azure load balancer routes the request to one of the gateway nodes.
  2. El servicio Azure Relay crea una retransmisión en el almacén de puerta de enlace.The Azure Relay service creates a relay in the gateway store.
  3. El cliente de envío envía una solicitud para conectarse al servicio de escucha.Sending client sends a request to connect to the listening service.
  4. La puerta de enlace que recibe la solicitud busca la transmisión en el almacén de puerta de enlace.The gateway that receives the request looks up for the relay in the gateway store.
  5. La puerta de enlace reenvía la solicitud de conexión a la puerta de enlace correcta mencionada en el almacén de puerta de enlace.The gateway forwards the connection request to the right gateway mentioned in the gateway store.
  6. La puerta de enlace envía una solicitud al cliente de escucha para que cree un canal temporal al nodo de la puerta de enlace que esté más próximo al cliente de envío.The gateway sends a request to the listening client for it to create a temporary channel to the gateway node that's closest to the sending client.
  7. El cliente de escucha crea un canal temporal a la puerta de enlace más cercana al cliente de envío.The listening client creates a temporary channel to the gateway that's closest to the sending client. Ahora que la conexión está establecida entre los clientes a través de una puerta de enlace, estos pueden intercambiarse mensajes.Now that the connection is established between clients via a gateway, the clients can exchange messages with each other.
  8. La puerta de enlace reenvía cualquier mensaje del cliente de escucha al cliente de envío.The gateway forwards any messages form the listening client to the sending client.
  9. La puerta de enlace reenvía cualquier mensaje del cliente de envío al cliente de escucha.The gateway forwards any messages from the sending client to the listening client.

Pasos siguientesNext steps