The UK Home Automation Archive

Archive Home
Group Home
Search Archive


Advanced Search

The UKHA-ARCHIVE IS CEASING OPERATIONS 31 DEC 2024


[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]

Strange issue with NFS - any ideas please


  • Subject: Strange issue with NFS - any ideas please
  • From: "Tony Tofts" <tony@xxxxxxxxxx>
  • Date: Fri, 5 Aug 2005 14:46:32 +0100

Hi all,

The NFS server in xplmedianet (I expect this effects xplrionet too) seems
to
work fine on a per unit basis

However if I boot 2 x rio at the same time, it works up to a point and then
stops for 30+ seconds before continuing the rio boot (eventually both
booting fine, and at basically the same time as expected).

Have debugged the code, and nothing is crashing or doing anything
unexpected.

However, when I sniff the packets with ethereal I find the rio's get so far
talking to nfs and then keep sending "send again" packets for 30+
secs, and
then everything carries on as normal...

At no time do these resend request packets (and theyre different packets
each time I sniff) get picked up by xplmedianet

Once they are picked up the boot continues fine. But can't work out why the
previous packets (roughly 1 sec intervals) don't get thru

Was wondering if any vb.net users have any thoughts please? Some code
snippets are below

Many thanks
Tony


The listener starts as follows:

Dim EP As New IPEndPoint(IPAddress.Any, NFSPort)
sockIncoming = New Socket(AddressFamily.InterNetwork, SocketType.Dgram,
ProtocolType.Udp)
sockIncoming.Bind(EP)
epIncoming = New IPEndPoint(IPAddress.Any, 0)
sockIncoming.BeginReceiveFrom(NFSIn, 0, 1024, SocketFlags.None, epIncoming,
AddressOf Me.ReceiveData, Nothing)

The incoming packets:

Private Sub ReceiveData(ByVal ar As IAsyncResult)

Dim epSource As EndPoint = New IPEndPoint(IPAddress.Any, 0)
Dim bytes_read As Integer
Try
bytes_read = sockIncoming.EndReceiveFrom(ar, epSource)
Catch
GoTo waitfornext
End Try
If bytes_read = 0 Then GoTo waitfornext

Process packet here, and send reply:

Try
Dim ep As New IPEndPoint(CType(epSource, IPEndPoint).Address, 800)
sockIncoming.SetSocketOption(SocketOptionLevel.Socket,
SocketOptionName.Broadcast, 1)
sockIncoming.SendTo(NFSOut, ep)
Catch
End Try

then tidy up:

waitfornext:
Try
sockIncoming.BeginReceiveFrom(NFSIn, 0, 1024, SocketFlags.None,
epIncoming, AddressOf Me.ReceiveData, Nothing)
Catch
End Try

When exiting the receive routine it must be going thru the 'waitfornext'
code, since there's no other way out. So I assume it must be listening.




xPL Main Index | xPL Thread Index | xPL Home | Archives Home

Comments to the Webmaster are always welcomed, please use this contact form . Note that as this site is a mailing list archive, the Webmaster has no control over the contents of the messages. Comments about message content should be directed to the relevant mailing list.