Windows socket error 10054

Fixes a "10054" error that occurs when an application receives data from a connection on a computer that is running Windows 7 or Windows Server 2008 R2 if a TDI filter driver is installed.

Symptoms

Consider the following scenario:

  • You have a computer that is running Windows 7 or Windows Server 2008 R2.

  • A Transport Driver Interface (TDI) filter driver is installed on the computer. For example, a TDI filter driver is installed when you install McAfee VirusScan.

  • An application opens a TCP listening port to receive connections.

In this scenario, the application may receive the following error message:

WSAECONNRESET (10054) Connection reset by peer.
A existing connection was forcibly closed by the remote host.

This issue occurs because the TCP/IP driver does not close an incomplete TCP connection. Instead, the TCP/IP driver sends a notification that the TCP/IP driver is ready to receive data when the incomplete TCP connection is created. Therefore, the application receives an instance of the 10054 error that indicates that a connection is reset when the application receives data from the connection.

Resolution

To resolve this issue, install this hotfix.

Note This hotfix temporarily resolves this issue for application vendors before they migrate their implementation to Windows Filtering Platform (WFP). These application vendors use the TDI filter driver or the TDI extension driver (TDX) on a computer that is running Windows 7 or Windows Server 2008 R2.

Hotfix information

A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing the problem described in this article. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.

If the hotfix is available for download, there is a «Hotfix download available» section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=supportNote The «Hotfix download available» form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix, you must be running Windows 7 or Windows Server 2008 R2.

Registry information

Important This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:

322756 How to back up and restore the registry in WindowsTo enable the hotfix in this package, follow these steps:

  1. In Registry Editor, locate the following registry subkey:

    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesTcpipParameters

  2. If you are running a 32-bit operating system, perform the following step:

    Right-click the Parameters registry subkey, point to New, and then click DWORD Value.If you are running a 64-bit operating system, perform the following step:

    Right-click the Parameters registry subkey, point to New, and then click DWORD (32-bit) Value.

  3. Rename the new registry entry to TdxPrematureConnectIndDisabled and set the value to 1.

Restart requirement

You may have to restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace a previously released hotfix.

File information

The global version of this hotfix installs files that have the attributes that are listed in the following tables. The dates and the times for these files are listed in Coordinated Universal Time (UTC). The dates and the times for these files on your local computer are displayed in your local time together with your current daylight saving time (DST) bias. Additionally, the dates and the times may change when you perform certain operations on the files.

Windows 7 and Windows Server 2008 R2 file information notes


Important Windows 7 hotfixes and Windows Server 2008 R2 hotfixes are included in the same packages. However, hotfixes on the Hotfix Request page are listed under both operating systems. To request the hotfix package that applies to one or both operating systems, select the hotfix that is listed under «Windows 7/Windows Server 2008 R2» on the page. Always refer to the «Applies To» section in articles to determine the actual operating system that each hotfix applies to.

  • The MANIFEST files (.manifest) and the MUM files (.mum) that are installed for each environment are listed separately in the «Additional file information for Windows Server 2008 R2 and for Windows 7» section. MUM and MANIFEST files, and the associated security catalog (.cat) files, are extremely important to maintain the state of the updated components. The security catalog files, for which the attributes are not listed, are signed with a Microsoft digital signature.

For all supported x86-based versions of Windows 7

File name

File version

File size

Date

Time

Platform

Tdx.sys

6.1.7600.20796

74,752

09-Sep-2010

02:19

x86

For all supported x64-based versions of Windows 7 and of Windows Server 2008 R2

File name

File version

File size

Date

Time

Platform

Tdx.sys

6.1.7600.20796

101,376

09-Sep-2010

02:52

x64

For all supported IA-64-based versions of Windows Server 2008 R2

File name

File version

File size

Date

Time

Platform

Tdx.sys

6.1.7600.20796

236,032

09-Sep-2010

01:47

IA-64

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the «Applies to» section.

More Information

For more information about WFP, visit the following Microsoft website:

General information about WFPFor more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates

Additional file information

Additional file information for Windows 7 and for Windows Server 2008 R2

Additional files for all supported x86-based versions of Windows 7

File name

Package_1_for_kb981344~31bf3856ad364e35~x86~~6.1.2.0.mum

File version

Not Applicable

File size

1,820

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Package_2_for_kb981344~31bf3856ad364e35~x86~~6.1.2.0.mum

File version

Not Applicable

File size

1,825

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Package_3_for_kb981344~31bf3856ad364e35~x86~~6.1.2.0.mum

File version

Not Applicable

File size

1,805

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Package_for_kb981344_rtm~31bf3856ad364e35~x86~~6.1.2.0.mum

File version

Not Applicable

File size

2,421

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

X86_bfb7f2e54887b839240a44ae0de89137_31bf3856ad364e35_6.1.7600.20796_none_3f3df7432361a4c5.manifest

File version

Not Applicable

File size

702

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

X86_microsoft-windows-tdi-over-tcpip_31bf3856ad364e35_6.1.7600.20796_none_ea93f14a568e0aaf.manifest

File version

Not Applicable

File size

2,924

Date (UTC)

09-Sep-2010

Time (UTC)

04:58

Platform

Not Applicable

Additional files for all supported x64-based versions of Windows 7 and of Windows Server 2008 R2

File name

Amd64_8e30a6e4951f89c20ce3f8a1c04b9f2a_31bf3856ad364e35_6.1.7600.20796_none_8d28eb4c99ddf2d4.manifest

File version

Not Applicable

File size

706

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Amd64_microsoft-windows-tdi-over-tcpip_31bf3856ad364e35_6.1.7600.20796_none_46b28cce0eeb7be5.manifest

File version

Not Applicable

File size

2,926

Date (UTC)

09-Sep-2010

Time (UTC)

06:11

Platform

Not Applicable

File name

Package_1_for_kb981344~31bf3856ad364e35~amd64~~6.1.2.0.mum

File version

Not Applicable

File size

1,830

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Package_2_for_kb981344~31bf3856ad364e35~amd64~~6.1.2.0.mum

File version

Not Applicable

File size

2,057

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Package_3_for_kb981344~31bf3856ad364e35~amd64~~6.1.2.0.mum

File version

Not Applicable

File size

1,815

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Package_for_kb981344_rtm~31bf3856ad364e35~amd64~~6.1.2.0.mum

File version

Not Applicable

File size

2,659

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

Additional files for all supported IA-64-based versions of Windows Server 2008 R2

File name

Ia64_0bb425f9d3502a4be9efc4af61147428_31bf3856ad364e35_6.1.7600.20796_none_09467879be47b542.manifest

File version

Not Applicable

File size

704

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Ia64_microsoft-windows-tdi-over-tcpip_31bf3856ad364e35_6.1.7600.20796_none_ea959540568c13ab.manifest

File version

Not Applicable

File size

2,925

Date (UTC)

09-Sep-2010

Time (UTC)

05:48

Platform

Not Applicable

File name

Package_1_for_kb981344~31bf3856ad364e35~ia64~~6.1.2.0.mum

File version

Not Applicable

File size

2,051

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

File name

Package_for_kb981344_rtm~31bf3856ad364e35~ia64~~6.1.2.0.mum

File version

Not Applicable

File size

1,683

Date (UTC)

09-Sep-2010

Time (UTC)

18:48

Platform

Not Applicable

Need more help?

Socket errors are one of the most common problems that can occur when using a computer. The socket error 10054 is caused by an existing connection that is forcibly closed by the remote. The error could be solved by restarting your router, checking if the address of the computer or host is correct, scanning for malware and lastly trying to connect through a different port.

This is an error that occurred when attempting to connect with the server. The primary reason for this issue is due to a software or network problem. Error 10054 might also be caused by accidentally shutting down or disconnecting a program while the computer is attempting to establish contact with a server.

There might be a problem with your Internet connection or a proxy server shutting down server connections. The firewall might be malfunctioning and causing the connection to break, as it does with all concerns.

How to Fix Socket Error 10054

Restart Your Router or DNS

When you are connecting to a new network, it is best to restart your router. If the computer is able to make a direct connection with the internet, then the problem lies somewhere else and not with your network.

You can follow these steps to clear DNS cache:

  1. Click Windows Start and type Command Prompt.
  2. Right-click the Command prompt and select Run as Administrator.
  3. In the Command Prompt, type netsh winsock reset and press Enter key.
  4. Type netsh int ip reset and press Enter key.
  5. Type ipconfig /release and press Enter key.
  6. Type ipconfig /renew and press Enter key.
  7. Type ipconfig /flushdns and press Enter key.

Check if The Address of Your Computer or Host Is Correct

The default gateway address should be different from the IP address assigned by DHCP (Dynamic Host Configuration Protocol). When there’s no difference in these values, it shows that something might be wrong with the settings in all programs that are related to the internet like firewalls.

You can check this by typing in “ipconfig /all” on Command Prompt (which will show your IP address and default gateway).

Scan for Malware

When you suspect that malware might be causing the issue, then it’s time to scan again with an antivirus if necessary. Sometimes, even after restarting your computer and router, malware can still cause problems as they are installed on a deeper level into the system.

It is best to scan for Malware at least twice to make sure that any remaining traces of malicious programs have been detected. If the problem persists even after removing them from your computer, then you may need a deeper analysis or a complete reformatting of your machine.

Reboot Your Computer

It doesn’t matter whether you want to call it a “warm reboot” or a “cold boot”, but rebooting your computer is a basic step in troubleshooting any problems that could affect your PC performance.

Check Your Settings In All Programs That Are Related to the Internet (Like Firewalls)

If you don’t have enough knowledge about networking, then it’s best to consult with a network specialist when dealing with internet-related problems. Or if you still think that you can handle it on your own, then make sure to check and change all of your settings in every program related to the internet.

For instance, anything related to Skype or Firefox should be disabled especially if you suspect that these programs might cause this issue.

Try Connecting Through a Different Port

If nothing seems out of order regarding your router and hardware settings but socket error 10054 keeps on occurring, then it is best to try connecting through a different port.

These errors usually mean that there’s a problem with the connection settings where it creates a faulty connection between two programs for a specific port number. This means that you have to configure your network so that outgoing connections use other ports instead of the default one.

I am working on a Windows (Microsoft Visual C++ 2005) application that uses several processes
running on different hosts in an intranet.

Processes communicate with each other using TCP/IP. Different processes can be on the
same host or on different hosts (i.e. the communication can be both within the same
host or between different hosts).

We have currently a bug that appears irregularly. The communication seems to work
for a while, then it stops working. Then it works again for some time.

When the communication does not work, we get an error (apparently while a process
was trying to send data). The call looks like this:

send(socket, (char *) data, (int) data_size, 0);

By inspecting the error code we get from

WSAGetLastError()

we see that it is an error 10054. Here is what I found in the Microsoft documentation
(see here):

WSAECONNRESET
10054

Connection reset by peer.

An existing connection was forcibly closed by the remote host. This normally
results if the peer application on the remote host is suddenly stopped, the
host is rebooted, the host or remote network interface is disabled, or the
remote host uses a hard close (see setsockopt for more information on the
SO_LINGER option on the remote socket). This error may also result if a
connection was broken due to keep-alive activity detecting a failure while
one or more operations are in progress. Operations that were in progress
fail with WSAENETRESET. Subsequent operations fail with WSAECONNRESET.

So, as far as I understand, the connection was interrupted by the receiving process.
In some cases this error is (AFAIK) correct: one process has terminated and
is therefore not reachable. In other cases both the sender and receiver are running
and logging activity, but they cannot communicate due to the above error (the error
is reported in the logs).

My questions.

  • What does the SO_LINGER option mean?
  • What is a keep-alive activity and how can it break a connection?
  • How is it possible to avoid this problem or recover from it?

Regarding the last question. The first solution we tried (actually, it is rather a
workaround) was resending the message when the error occurs. Unfortunately, the
same error occurs over and over again for a while (a few minutes). So this is not
a solution.

At the moment we do not understand if we have a software problem or a configuration
issue: maybe we should check something in the windows registry?

One hypothesis was that the OS runs out of ephemeral ports (in case connections are
closed but ports are not released because of TcpTimedWaitDelay), but by analyzing
this issue we think that there should be plenty of them: the problem occurs even
if messages are not sent too frequently between processes. However, we still are not
100% sure that we can exclude this: can ephemeral ports get lost in some way (???)

Another detail that might help is that sending and receiving occurs in each process
concurrently in separate threads: are there any shared data structures in the
TCP/IP libraries that might get corrupted?

What is also very strange is that the problem occurs irregularly: communication works
OK for a few minutes, then it does not work for a few minutes, then it works again.

Thank you for any ideas and suggestions.

EDIT

Thanks for the hints confirming that the only possible explanation was a connection closed error. By further analysis of the problem, we found out that the server-side process of the connection had crashed / had been terminated and had been restarted. So there was a new server process running and listening on the correct port, but the client had not detected this and was still trying to use the old connection. We now have a mechanism to detect such situations and reset the connection on the client side.

Причины возникновения
Причины этой ошибки разняться по своей «природе», но их объединяето то, что уже существующее (т.е. ранее установленое) соединение с клиентом разрывает сервер.

1. С версии 8.1.11 включен циклический перезапуск процессов, по наступлению интервала происходит автоматический перезапуск рабочих процессов rphost.

2. В некоторых случаях причиной ошибки могут стать утечки памяти.

3. Действия администратора в консоли (команда удалить пользователя)

4. Процесс rphost на серверном компьютере завершился аварийно

5. Ошибочное принятие высокой интенсивности пользователей за атаку на протокол в некоторых случаях Windows

6. Устаревание данных в кэшах

7. Плохо отслеживаемые события в фоновых процессах

8. Нестандартные запросы могут приводить к падениям rphost

Способы устранения
1. с 8.1.11 включен циклический перезапуск процессов, для анализа этого события на компьютере сервера 1С:Предприятия необходимо включить запись в технологический журнал событий PROC (пример файла logcfg.xml).
Когда процесс выключается, будет выведено событие PROC со свойством Txt=Process become disable.
Когда процесс останавливается, будет выведено событие PROC со свойством Txt=Process terminated. Any clients finished with error. Если аварийные завершения работы пользователей совпадают по времени с выводом этого события, то причиной является принудительная остановка рабочего процесса либо администратором (через консоль кластера), либо вследствие автоматического перезапуска.

2. перезагрузить сервер
3. убедиться, что причиной являются/не являются действия администратора в консоли
4. создать на сервере приложения два или более рабочих процесса, чтобы иметь возможность переподключиться в случаи сбоя рабочего процесса
5. Запусти программу regedit.exe, добавь новое значение типа DWORD с именем SynAttackProtect в раздел реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters и присвой ему значение 00000000
Имеет смысл делать для ОС Windows 2003 SP1 (http://msdn.microsoft.com/ru-ru/library/ms189083.aspx).

6. arp -d *
ipconfig /flushdns
ipconfig /registerdns
nbtstat -R
nbtstat -RR

7. отключить фоновые процессы во всех базах

8. найти технологическим журналом запрос, приводящий к падению

p.s. Кроме того, 54 ошибку можно получить на релизах <= 8.1.12.98 при ри конвертации конвертором ИБ 77(DBF) -> 81(SQL) в типовой ТиС (демо, взятой с ИТС) релиз. 954 в клиент-серверном варианте.

обойти можно так:

— выполните конвертацию в файловый фариант информационной базы 1С:Предприятия 8.1,
— выгрузите полученную информационную базу в файл,
— загрузите в клиент-серверный вариант информационной базы 1С:Предприятия 8.1.

Подробнее на www.gilev.ru

Windows error 10054: Connection reset by peer.
An existing connection was forcibly closed by the remote host.

Got this error message and looking for a fix?

This Windows error 10054 occurs when the connection is reset by the peer application.

It happens usually due to an incorrect firewall configuration.

At Bobcares, we often get requests to fix windows errors, as a part of our Server Management Services

Today, let’s see how our Support Engineers fix the Windows error 10054 for our customers.

5 Symptoms of Windows error 10054

Basically, the error indicates that the remote host closed the connection unexpectedly. So we cannot do anything on the program except to accept that the connection lost.

Let’s discuss the symptoms of this windows error.

  1. When running the same script, the PC frequently crashes with Error 10054.
  2. System displays “Windows Error Code 10054”.
  3. Windows is slow to react to mouse or keyboard input.
  4. The system periodically “freezes” for a few seconds at a time.
  5. “Error 10054” appears and crashes the active program window.

Causes of Windows Error 10054?

We just saw the 5 Symptoms of windows error 10054.

Let’s check the main causes of this Error 10054.

  1. Infection with a virus or malware that has infected Windows system files.
  2. Another program maliciously or mistakenly deleted Windows-related files.
  3. Corrupt update/download and incomplete Windows software installation.
  4. Corruption in the Windows registry.
  5. Firewall restrictions.

The typical error shows up as :

How we fix the Windows Error 10054?

Let’s see how our Support Engineers fix this error for our customers.

 1. Firewall and router configuration

One of the main reasons for this windows error is an incorrect configuration of firewall and router. So we recommend that the customers test the firewall and that the routers configured properly.

If any unwanted settings are existing on the customers’ system, we ask them to uninstall it or reinstall it again.

2. Disable peer-to-peer functionality.

On certain systems, the problem occurs when connected via a peer-to-peer connection.

To disable this functionality, we do like this:

  1.  We open the Windows Update.
  2. Then after, we click or tap Advanced options
  3. And then click or tap Choose how updates are delivered.
  4. On this screen, we choose to toggle the slider to Off to completely disable P2P.

This fixes the error.

3. Clean Out System Junk (Temporary Files and Folders).

If the system accumulates junk files, it can also cause Windows to respond slowly or show a 10054 error.

So cleaning up these temporary files usually solve the 10054 error. We use the utility cleanmgr on the Windows servers to perform this task.

4. Install All Available Windows Updates.

Sometimes resolving your Runtime Errors problems help to resolve the windows error.
To check for the windows updates.

  1. We first, Click >> Start button.
  2. Then we type >> update into the search box and hit ENTER
  3. Then after the Windows Update dialog box will appear.
  4. If updates are available, we click >> Install Updates button.

5. Conduct a Full Malware Scan of Your PC

At times, there is a chance that the 10054 error could be related to a malware infection on the PC.

These malicious intruders can destroy, corrupt, or even delete files associated with runtime errors.

So we help our customers to run a full malware scan on their PC to resolve the windows error.

6. Perform a Clean Installation of Windows

This is the last option in trying to resolve the Error 10054.

Reinstalling Windows will erase everything from your hard drive, allowing you to start again with a fresh system. However, this method requires the proper backup of data. A clean install of Windows will also quickly clean out any and all “junk” that has accumulated over the normal usage of your computer.

This fixes the customer’s windows error.

[Need more assistance in windows error 10054?  We’ll fix it for you.]

Conclusion

In short, the windows error 10054 occurs when the connection is reset by the peer application. It usually due to an incorrect firewall configuration. Today we saw how our Support Engineers fix this error for our customers.

Computers are rife with potential errors and, of all of them, socket error 10054 is one of the easier ones to fix. This error is usually caused accidentally when the user shuts down the software or closes the connection while the computer is attempting to connect with a server. More serious causes of this error are the Internet connection suddenly dropping or a proxy server disabling server connections. As with all errors, the firewall also could be acting up and causing the connection to break.

The overall reason why this socket error occurs is because the server connection has been broken by something outside the server. Most of the time, this is an action caused, either purposefully or accidentally, by the user. When 10054 manifests, as with other errors, the first thing that the user should do is to temporarily disable the firewall, because firewalls sometimes break good connections, thinking they are bad.

Socket error 10054 often means a lost internet connection.

Socket error 10054 often means a lost internet connection.

If the problem occurred because of an accidental or manual shutdown of the program, then this will be even easier to fix than the firewall method. Sometimes, when a user is attempting to connect to a server, he or she will close the program. This may be because he no longer needs to connect to the server or because the program was closed mistakenly. In this instance, he can just start the program again and the connection should work.

A failed internet connection may be caused by a faulty router.

A failed internet connection may be caused by a faulty router.

A break in the Internet connection also can cause a socket error 10054. As with the program, this can occur manually. If the user is not at fault for breaking the Internet connection, he should check the modem, router, and any internal device connecting to the Internet to ensure they are working. Manually resetting the device and calling the Internet service provider (ISP) can help get the Internet back online. In more serious cases, the device may have to be repaired or replaced.

Another reason for this error is that the user is using a proxy server to mask his computer address. This happens if the server is attempting to connect to the computer’s inherent address, and not the proxy server. If this occurs, the user can manually tell the server to connect to the proxy and not directly to the computer. Otherwise, the connection will keep breaking.

Понравилась статья? Поделить с друзьями:
  • Windows socket error 10051
  • Windows setup experienced an unexpected error to install windows restart the installation windows 7
  • Windows update error 80070002
  • Windows setup encountered an internal error while loading or searching
  • Windows update error 0xc1900223