Posts from 2012
-
:
WASP download of XP versions now fixed
I’ve just noticed a problem with downloading the XP versions of WASP. This is now fixed. The XP versions can now be downloaded correctly again from here. Sorry for any inconvenience caused. -
:
The advantage of having lots of clients and clients with lots of clients
Our Secretive Online Game Company client uses The Server Framework for their custom application server for the games industry. They have thousands of users who run their server on a very diverse set of hardware. This is great for us as it … -
:
Latest release of The Server Framework: 6.5.4
Version 6.5.4 of The Server Framework was released today. This release contains two important bug fixes and a selection of minor improvements. If you run your code on Vista/Windows Server 2003 or later and you don’t explicitly disable … -
:
Windows 8 Registered I/O Example UDP Servers
I’ve been looking at the Windows 8 Registered I/O Networking Extensions since October when they first made an appearance as part of the Windows 8 Developer Preview. Whilst exploring and understanding the new API I spent some time … -
:
Windows 8 Registered I/O - Simple RIO Polled UDP Example Server
I’ve been looking at the Windows 8 Registered I/O Networking Extensions since October when they first made an appearance as part of the Windows 8 Developer Preview. Whilst exploring and understanding the new API I spent some time … -
:
Windows 8 Registered I/O - Single threaded RIO Event Driven UDP Example Server
This article presents the second in my series of example servers using the Windows 8 Registered I/O Networking extensions, RIO. This example server uses the event driven notification method to handle RIO completions. I’ve been looking … -
:
Windows 8 Registered I/O - Single threaded RIO IOCP UDP Example Server
This article presents the third in my series of example servers using the Windows 8 Registered I/O Networking extensions, RIO. This example server uses the I/O Completion Port notification method to handle RIO completions, but only uses a … -
:
Windows 8 Registered I/O - Multi threaded RIO IOCP UDP Example Server
This article presents the fourth in my series of example servers using the Windows 8 Registered I/O Networking extensions, RIO. This example server, like the last example, uses the I/O Completion Port notification method to handle RIO … -
:
Windows 8 Registered I/O - Traditional Polled UDP Example Server
This article presents the fifth in my series of example servers for comparing the performance of the Windows 8 Registered I/O Networking extensions, RIO, and traditional Windows networking APIs. This example server is a traditional polled … -
:
Windows 8 Registered I/O - Generating load for the performance tests
Now that we have five example servers, four RIO designs and a traditional polled UDP design, we can begin to look at how the RIO API performs compared to the traditional APIs. Of course these comparisons should be taken as preliminary since … -
:
Windows 8 Registered I/O Performance
I’ve been looking at the Windows 8 Registered I/O Networking Extensions since October when they first made an appearance as part of the Windows 8 Developer Preview. Whilst exploring and understanding the new API I spent some time … -
:
Windows 8 Registered I/O Performance - 10 Gigabit networking...
When I switched to looking at the performance of the more advanced RIO server designs that use IOCP it quickly became apparent that even multiple 1 Gigabit connections weren’t enough of a challenge to give me any meaningful figures; … -
:
Latest release of The Server Framework: 6.5.5
Version 6.5.5 of The Server Framework was released today. This release contains some bug fixes, a selection of minor improvements and support for Visual Studio 11 Beta and Windows 8. If you use either the Read Timeout filter or the Flow … -
:
Differences between Visual Studio 11 Beta and Visual Studio 2012 RC
As I mentioned in the release notes for version 6.5.5, The Server Framework now supports Visual Studio 11 Beta. It also supports Visual Studio 2012 RC but there are a couple of new warnings that you may need to suppress in Warnings.h. I … -
:
Bug in the 6.5.5 changes for the read timeout connection filter
The recent changes to 6.5.5 so that JetByteTools::Socket::CReadTimeoutStreamSocketConnectionFilter holds a socket reference when the timer is set causes problems when the socket is shutdown. The filter doesn’t see the shutdown and … -
:
Windows 8 Registered I/O Performance - finally using a full 10 Gigabit link...
As I mentioned back in March I’m now doing some RIO performance testing with a 10 Gigabit Ethernet link as I couldn’t push my test server hard enough with multiple 1 Gigabit links. This involves 2 Intel 10 Gigabit AT2 cards … -
:
Latest release of The Server Framework: 6.5.6
Version 6.5.6 of The Server Framework was released today. This release contains some bug fixes, a selection of minor improvements and improved support for the Visual Studio 2012 (Note that there will be a further release shortly after … -
:
Latest release of The Server Framework: 6.5.7
Version 6.5.7 of The Server Framework was released today. This release contains one important bug fix and support for Visual Studio 2012 RTM. The bug that was introduced in 6.5.6 has exposed a gap in our unit testing which has also been … -
:
Windows Server 2012 Registered I/O Performance - take 2...
I’ve been looking at the Windows 8 Registered I/O Networking Extensions since October when they first made an appearance as part of the Windows 8 Developer Preview. Whilst exploring and understanding the new API I spent some time … -
:
Worrying issue with Windows 8 and AcceptEx...
There’s an interesting question over on stack overflow about a perceived change in IOCP behaviour on Windows 8 (and Server 2012 RC). The question includes some code which demonstrates how an overlapped AcceptEx() call is blocked on by … -
:
Winsock Registered I/O - Traditional Multi threaded IOCP UDP Example Server
This article presents the sixth in my series of example servers for comparing the performance of the Winsock Registered I/O Networking extensions, RIO, and traditional Windows networking APIs. This example server is a traditional … -
:
Winsock Registered I/O, I/O Completion Port Performance
Continuing my analysis of the performance of the new Winsock Registered I/O API, RIO, compared to more traditional networking APIs we finally get to the point where we compare I/O completion port designs. I’ve been looking at the … -
:
AcceptEx() bug in Windows 8 and all Server 2012 variants
Be aware that there is a known bug in Windows 8 and all Server 2012 variants which causes AcceptEx() completions to be delayed in some situations. This was confirmed by a Microsoft representative on Microsoft Connect, see the error report … -
:
Write sequencing bug in all versions of The Server Framework
I’ve just found and fixed a bug which has been present in The Server Framework from the very beginning. The problem affects connections which are “sequenced” and which have had more than 2,147,483,647 writes performed on … -
:
Latest release of The Server Framework: 6.5.8
Version 6.5.8 of The Server Framework was released today. This release contains one bug fix for a bug which has been present in The Server Framework since at least release 5.0 and one change to work around a bug in Windows 8 and Server …