... xvii
Conventions used in this book xvii
Further information xviii
Acknowledgments xix
1 Understanding the Internet and Network Programming 1
1.1 Introduction 1
1.2 Why network programming in .NET? 2
1.3 ... Number of Distinct Addresses
10.0.0.0 to 10. 255 . 255 . 255 Up to 16 million computers (Class A)
172.16.0.0 to 172.31. 255 . 255 900,000 computers (Class B)
192.168.0....
... two
threads: one handles incoming UDP data, and the main thread of execu-
tion may continue to maintain the user interface, so that it does not appear
hung. The details of threading are not within the scope ... TcpListener(IPAddress.Any,8080)
C#
public void handlerThread()
{
Socket handlerSocket = (Socket)alSockets[alSockets.Count-1];
NetworkStream networkStream = new
NetworkStream(ha...
... server.
And, the usual namespaces are thrown in:
C#
using System.Threading;
using System .Net;
using System .Net. Sockets;
using System.Text;
using System.IO;
VB .NET
Imports System.Threading
Imports ... the namespaces we intend to use in
this application. Put this code at the beginning of the program:
C#
using System.Threading;
using System .Net;
using System .Net. Sockets;
usin...
... support for interoperating with Netware in .NET, and
it is no small undertaking to integrate a .NET application with a Novell net-
work. If you have to do so, look at the DOS command-line interfaces ... developers
working with real-world networks. It is designed to help solve network
problems for individual scenarios and provide tips and tricks to keep your
software from cr...
... may contain more information about the original
message. In either case, SHA1 should be sufficient.
9.4.2 Using SHA
Create a new Windows application in Visual Studio .NET as usual, and
draw ... certificate is known as X .50 9. This is
an international standard maintained by the IETF Public Key Infrastruc-
ture (PKIX) working group. X .50 9 comes in three versions: v1, v2, and...
... eliminating part of the safety net and trim-
ming some of the time involved in the turnaround of an ACK.
TcpWindowSize
can also exist under
\Parameters\Interface\
. If the
setting is ... authoritative in the domain. DNS servers routinely query each
other for updated information, and in this way the information slowly
10.8 Load balancing 269
Chapter 10
C#
public void ru...
... concludes with information
about how to use new classes introduced in .NET 2.0 Whidbey to gather
systemwide network information.
13.2 IP-level network tapping
Network tapping anything that ... raw TCP data flowing
between your browser and the Web server appear in the list box, as shown
in Figure 13.2.
13.2.1 Interpreting raw network data
Capturing and interpreting r...
... MMCKINFO mmckinfoParentIn = new MMCKINFO();
MMCKINFO mmckinfoSubchunkIn = new MMCKINFO();
int hmmioIn = 0;
mmioinfo mmioinf = new mmioinfo();
mmioinf.adwInfo =
(new StringBuilder()).Append(' ...
14.3
Listening for incoming phone calls 391
Chapter 14
C#
public delegate int LineCallBackDelegate(int dwDevice, int
dwMessage, int dwInstance, int dwParam1, int dwParam2,
int dwPar...
... forwarding and adver-
tising on the automatic tunneling pseudointerface, using the following
command (with the interface ID substituted accordingly):
netsh interface ipv6 set interface <
interface ... IPv6 network and
another connected to the IPv4 network. The first step in configuring a
Windows XP machine as an ISATAP router is to enable forwarding on all
interfaces connected to t...