.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal
Post New Web Links

Issues regarding sockets (stopping receiving packets).

Posted By:      Posted Date: August 29, 2010    Points: 0   Category :.NET Framework
Hello, I've created a server for my game, but for some unknown reason the server (most likely) stops receiving packets while the client still tries to send them. I've tried to use a couple examples from MSDN, but it still just stops receiving. This is what I think that happens: Client connects to server Server sends packets as response Client responds to those packets Server sends a lot of packets (one packet at a time) Client tries to send packet, but it kinda fails (it does send packets though!) Server waits (doesn't get any packet anymore) Client triggers timeout code on the server side and gets disconnected from the server Does anyone have an idea how and why this can happen? Here are the receive functions I use: BeginReceive (SocketInfo includes data such as amount of data to receive, state of packet (header or content) and the buffer) public void BeginReceive(SocketInfo socketInfo) { if (mDisconnected != 0) return; try { args = new SocketAsyncEventArgs(); args.Completed += (s, a) => EndReceive(a); args.UserToken = socketInfo; args.SetBuffer(socketInfo.DataBuffer, socketInfo.Index, socketInfo.DataBuffer.Length - socketInfo.Index); if (args != null) { try { if (!Socket.ReceiveAsync(args)) EndReceive(args); } catch (ObjectDisposedException) { Disconnect(); return; }

View Complete Post

More Related Resource Links

Receiving ipv6 message with raw sockets


I am trying to receive a message along with its layer 3 (IPv6) and layer 4 (UDP) headers using raw sockets in C#.

The problem is that I receive 8 bytes of data before the ipv6 header and I don't know what they represent

In wireshark, I don't see these bytes.

If I use a similar code for Ipv4, everything works ok (no extra bytes before the Ipv4 header)


Do you have any idea?




This is the message that I receive :


the extra bytes : 01 04 b6 6a 00 00 00 00

the ipv6 header : 60 00 00 00 00 0b 11 40 fe 80 00 00 00 00 00 00 02 15 17 ff fe d7 ed 94 fe 80 00 00 00 00 00 00 99 a8 3d 54 5c 78 9f f4

the udp header: bd c4 27 0f 00 0b 45 6c 

my payload : ff aa ff



This is the code that I use for capturing the packets:


using System;

using System.Net;

using System.Net.Sockets;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading;

using System.IO;



namespace Ipv6Utils


    class Program


        private byte[] byteData = new byte[4096];


IE 8 Issues with Chinese/Japanese Characters


On my web application, I display information in different languages. Everything works fine in IE compatibility mode and FireFox but it shows boxes for chinese/japanese languages. I am pretty much having the same issue as described here



Thanks for your help.

Test Run: WCF Service Testing with Sockets


There are many ways to test WCF services, but the socket-based approach is flexible and very useful for security and performance testing. We show you show you how to test a WCF service using a network socket based approach.

James McCaffrey

MSDN Magazine February 2010

Concurrency: Tools And Techniques to Identify Concurrency Issues


Efficient parallel applications aren't born by merely running an old app on a parallel processor machine. Tuning needs to be done if you're to gain maximum benefit.

Rahul V. Patil and Boby George

MSDN Magazine June 2008

CLR Inside Out: Investigating Memory Issues


Memory issues can manifest in a wide variety of ways. This column shows you how to collect the data you need to determine what types of mem¬ory issues you are experiencing.

Claudio Caldato and Maoni Stephens

MSDN Magazine November 2006

Winsock: Get Closer to the Wire with High-Performance Sockets in .NET


The Win32 Windows Sockets library (Winsock) provides mechanisms to improve the performance of programs that use sockets, and the Microsoft .NET Framework provides a layer over Winsock so that managed applications can communicate over sockets. To use all these layers to write a truly high-performance socket-based application requires a little background information, as Daryn Kiely explains here.

Daryn Kiely

MSDN Magazine August 2005

Stress Testing: Custom LoadGenerator Tool Identifies the Issues Your Application Faces Under Stress


It's easy to postpone stress testing when developing an application, and it's easy to forgo it altogether. Having an easy-to-use framework at your fingertips to conduct these tests can make the task far less painful. This article walks you through an application that eases the task of generating load for a variety of layers within an application.

Brian Otto

MSDN Magazine April 2004

Secure It: WS-Security and Remoting Channel Sinks Give Message-Level Security to Your SOAP Packets


As more organizations adopt XML-based Web Services, the need for message-level security has become evident. WS-Security, now supported in the Microsoft .NET Framework, addresses this need. Using the WS-Security framework, developers can implement channel sinks to intercept Remoting messages as they pass through the .NET Remoting infrastructure. The sink can read the message, change it, and pass it along. During this process, the message can be signed for added security. This article explains how to implement a Remoting channel sink that will modify the Remoting message by including a UserName token in the header, then sign the body using the token.

Neeraj Srivastava

MSDN Magazine November 2003

Secure Sockets Layer: Protect Your E-Commerce Web Site with SSL and Digital Certificates


Security is one of the most important factors in the future growth of e-businesses. Making sure that communications remain secure between customers and the Web server is a critical issue. Secure Sockets Layer (SSL) is the standard that secure Web sites are built upon today. This article presents an overview of SSL-based Web security, explaining such fundamental concepts as digital certificates and their distribution, encryption, and the proper configuration of Microsoft Internet Information Services (IIS). Acquiring a certificate, installing it, and configuring IIS for SSL are outlined in a step-by-step process.

John Papa

MSDN Magazine April 2001

Windows Sockets 2.0: Write Scalable Winsock Apps Using Completion Ports


Writing a network-aware application isn't difficult, but writing one that is scalable can be challenging. Overlapped I/O using completion ports provides true scalability on Windows NT and Windows 2000. Completion ports and Windows Sockets 2.0 can be used to design applications that will scale to thousands of connections. The article begins with a discussion of the implementation of a scalable server, discusses handling low-resource, high-demand conditions, and addresses the most common problems with scalability.

Anthony Jones and Amol Deshpande

MSDN Magazine October 2000

Versioning Issues With Optional Arguments

One nice new feature introduced in C# 4 is support for named and optional arguments . While these two features are often discussed together, they really are orthogonal concepts. Let's look at a quick example of these two concepts at work. Suppose we have a class with one method having the following signature. // v1 public static void Redirect( string url, string protocol = "http" ); This hypothetical library contains a single method that takes in two parameters, a required string url and an optional string protocol . The following shows the six possible ways this method can be called. HttpHelpers.Redirect( "http://haacked.com/" ); HttpHelpers.Redirect(url: "http://haacked.com/" ); HttpHelpers.Redirect( "http...(read more)

Issues with Visual Studio 2010 editor


hi all,

I am having a weird problem with VS 2010. I am using the premium edition.

It seems that none of the asp controls <asp:..> tag are recognized by the editor. I keep getting a green underline under each control name. To check this, I have created a brand new web site targeting .NET framework 4.0 and even in the auto-generated pages, none of the asp controls is recognized. I am also unable to see the properties of any control if I click inside the tag (at an attribute). All I get is the ID of the button and the tag <HTML ELEMENT>! Furthermore, when I drop an ASP control from the toolbox, the attribute "ID" is not generated. Only when I switch to the design view that I can get to see the properties of the control and the ID is set automatically. The message for the green underline says: Element 'Button' is not a known element. This can occur if there is a compilation error in the Web Site, or the web.config file is missing.

Does anyone know what is going on?





Session Variable issues


Hello everyone,

I ran into an issud to day with the follwoing code.  The strPanelOrder session variable is false, however, once it goes into the next if statement and sets the strTrimOrder to True, it changes the strPanelOrder session varialbe to true as well.  Why is this and how to I stop that from happening?

If Session(strPanelOrder) Is "False" Then
                If (strItemNumber.Length() = 10) And (strItemNumber.Substring(0, 2) = "FS" Or strItemNumber.Substring(0, 2) = "FC" Or strItemNumber.Substring(0, 2) = "DS" Or strItemNumber.Substring(0, 2) = "DC") Then
                    Session(strPanelOrder) = "True"
                End If
End If
If Session(strTrimOrder) Is "False" Then
               If (strItemNumber.Substring(4, 1) = "T") And (strItemNumber.Substring(0, 2) <> "AC") And (strItemNumber <> "Length") Then
                    Session(strTrimOrder) = "True"
                End If
End If


Thanks in advance for taking a look at this.



Session issues with IE8



I am trying to invoke a window using the following commands:

Response.Write("<script>" & vbCrLf)"

Response.Write(window.open('" & url & "','','toolbar=0,status=1,resizable=1,scrollbars=1,menubar=1');" & vbCrLf)"


The problem however is that on IE8 the session object is not carried over to this new window. I get "Nullpointerexception" when I try to retrieve the connection object from the session. It works on IE6 though.

Any help would be greatly appreciated.


ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend