Signiant Support

Why do my UDP SDK transfers work through a relay, but TCP and HTTP transfers don't? Print


Problem: 


I am running an application that uses the Content Transfer Engine SDK (Media Exchange, for example) and need to relay SDK transfers through an agent.  When the transfer is using the WAN Accelerated protocol (UDP) everything works fine.  But if the transfer is running with the TCP protocol, or if it fails back to HTTP, the connection fails.  I've checked the firewall rules and everythign is set up correctly.  The transfer tells me that the agent isn't configured to accept SDK transfers.  

What do I need to do to allow TCP and HTTP transfers to move through the relay?

Resolution:


Check that your relay agent is configured to accept Content Transfer Engine SDK connections.  This is on the Administration / Agents / Configure / your relay agent / Content Transfer Engine screen.  Set the "Content Transfer Engine SDK" value to "On".

The UDP protocol uses a different service when relaying through an agent, which does not require the CTE SDK transfers to be enabled in order to perform a relay function. The TCP and HTTP protocols, on the other hand, use a service that does require the enabling of SDK transfers.

If you want this agent to act as a relay only (that is, do not participate as a source or target for SDK transfers), it is recommended that you set the Authentication method to SOAP and enter an invalid URL.  This will prevent anyone from being able to connect to the relay agents as an endpoint server, but will not prevent the agent from relaying the connection to your internal box (that is, the auth URL is only accessed when this agent is the source or target of an SDK transfer, but is completely ignored when its relaying to another agent).