0
votes

We have Azure worker role which is accessing messages from Azure Service Bus Topic. This process is reading some messages from one Topic & sending some message to another Topic.

This was working properly till now. Suddenly we are getting below error-

The underlying connection was closed: An unexpected error occurred on a receive. ---> System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a receive. ---> System.ComponentModel.Win32Exception: The client and server cannot communicate, because they do not possess a common algorithm at System.Net.SSPIWrapper.AcquireCredentialsHandle(SSPIInterface SecModule, String package, CredentialUse intent, SecureCredential scc) at System.Net.Security.SecureChannel.AcquireCredentialsHandle(CredentialUse credUsage, SecureCredential& secureCredential) at System.Net.Security.SecureChannel.AcquireClientCredentials(Byte[]& thumbPrint) at System.Net.Security.SecureChannel.GenerateToken(Byte[] input, Int32 offset, Int32 count, Byte[]& output) at System.Net.Security.SslState.StartSendBlob(Byte[] incoming, Int32 count, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest) at System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult) at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result) at System.Net.TlsStream.BeginWrite(Byte[] buffer, Int32 offset, Int32 size, AsyncCallback asyncCallback, Object asyncState) at System.Net.ConnectStream.WriteHeaders(Boolean async) --- End of inner exception stack trace --- at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at Microsoft.ServiceBus.Messaging.ServiceBusResourceOperations.GetAsyncResult1.b__49(GetAsyncResult1 thisPtr, IAsyncResult r) at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)

Some other details of environment-

.Net Framework - 4.0 Worker Role osFamily="3" and osVersion="*"

We have tried following options-

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls;

But this does not resolved the issue.

Thanks Dharam

1

1 Answers

0
votes

Is the error intermittent or always happening?

Since the osVersion is marked as "*", which means guest os updates are automatically installed, so suspecting the Azure worker role got installed with the latest guest updates.

From the below link, it appears that the latest guest OS, brings .Net version 4.5.2 with it instead of the 4.5. So suspecting some issue with the new .Net version that might be causing this issue. https://azure.microsoft.com/en-us/documentation/articles/cloud-services-guestos-update-matrix/

So one thing you could try is going back to an older version of Guest OS, say "Release 201511-01". This version can be easily updated from the Azure portal, under "configure" option.

Try this and see if this resolves the issue. Keep the thread posted.