======================================================================== CONSOLE APPLICATION : isb Project Overview ======================================================================== This file contains a summary of what you will find in each of the files that make up your isb application. isb.vcproj This is the main project file for VC++ projects generated using an Application Wizard. It contains information about the version of Visual C++ that generated the file, and information about the platforms, configurations, and project features selected with the Application Wizard. isb.cpp This is the main application source file. ///////////////////////////////////////////////////////////////////////////// Other standard files: StdAfx.h, StdAfx.cpp These files are used to build a precompiled header (PCH) file named isb.pch and a precompiled types file named StdAfx.obj. ///////////////////////////////////////////////////////////////////////////// Other notes: AppWizard uses "TODO:" comments to indicate parts of the source code you should add to or customize. ///////////////////////////////////////////////////////////////////////////// /******************************************************************************\ * isb.cpp * * This simple IPv6 sample demonstrates the use of Winsock Ideal Send Backlog functionality. * * The Ideal Send Backlog functionality is new to Windows Sockets in Windows Vista SP1 * and Windows Server 2008. * * This sample requires that TCP/IP version 6 be installed on the system (default * configuration for Windows Vista and Windows Server 2008). * * For an application to effectively use this functionality, the application should: * 1. First query for the initial ideal send backlog value (idealsendbacklogquery). * 2. Post overlapped idealsendbacklognotify to receive isb change indications. * 3. Upon notify completion, immediately post another idealsendbacklognotify and * query for new isb value (idealsendbacklogquery). * * The I/O model in the sample uses blocking send/recv calls to keep the sample simple. * A real world application could use non-blocking or overlapped I/O for possibly better performance. * * Note: * On Windows 7/Server 2008 R2 and later versions, a new feature called Send Path Auto-Tuning is available. * With this new functionaly, Windows can perform the send auto-tuning (ideal send backlog) * on the application's behalf. To enable this functionality, the application: * 1. Must not change the connected socket's send buffer limit (SO_SNDBUF). * 2. Must not query for the ideal send backlog value. In other words, application must * not call idealsendbacklogquery. * * If application does either of the above, the send auto-tuning will be disabled for that connection. * * The appication may however, post idealsendbacklognotify to receive indications that a send auto-tuning * event has occurred. * * * * This is a part of the Microsoft Source Code Samples. * Copyright 1996 - 2009 Microsoft Corporation. * All rights reserved. * This source code is only intended as a supplement to * Microsoft Development Tools and/or WinHelp documentation. * See these sources for detailed information regarding the * Microsoft samples programs. \******************************************************************************/ To run the sample in Ideal Send Backlog mode (on VistaSP1/Server2008 and later): Listener: isb -l -e For example: isb -l -e 12345 Originator: isb -n -e For example: isb -n machine1.live.com -e 12345 To run the sample in Send Auto Tuning mode (on Windows 7/Server 2008 R2 and later): Add -a switch to the listener commandline. For example: isb -l -e 12345 -a