Professional Documents
Culture Documents
C#
1386
C# .
TCP/IP
.
C# .NET
.
2...................................................................................................................................................
3.................................................................................................................................................
3.........................................................................................................................TCP/IP
4...........................................................................................................................TCP/IP
5........................................................................................................................TCP/IP
5..........................................................................................................................
6............................................................................................................................................IP
6..................................................................................................................................TCP/UDP
) 6..................................................................................................................................(Socket
6....................................................................................................................................
8......................................................................................................C#
8........................................................................................................................................
8.............................................................................................................................
9............................................................................................................
12.........................................................................................................
17....................................................................................................................................
: 20................................................................................................
20...................................................................................................................................System.Net
20.....................................................................................................................................System.IO
20........................................................................................................................System.Threading
TCP/IP
TCP/IP .
.
.
: TCP/IP
.
TCP/IP
TCP/IP . .
:
.
.
TCP/IP
.
: IP
TCP/IP .
TCP/IP
TCP/IP 2000 .
.
.
TCP/IP ) ( .
TCP/IP .
.
TCP/IP
.
TCP/IP .
) . ( .
)
( . )
( .
.
TCP/IP
TCP/IP
TCP/IP .
.
.
TCP/IP .
Application ,Transport ,Internet : Network Interface
TCP/IP . TCP/IP
.
.
TCP/IP
. ) (Socket
.
IP
)
( .
IP
. 10.1.1 .10 : IP .
.
TCP/UDP
.
"" ) TCP ( UDP TCP UDP .
65535 . TCP/IP
" " 1024
. FTP TCP
.
)(Socket
IP TCP UDP .
IP ) TCP (UDP
. IP
.
) ( 20 .
) (80
C Unix .
.
.
.
Windows
C C++
Windows
.NET Framework
.NET
API
C Java
Windows
C#
C#
C#
C#
. C#
.
C#
-
:
.1
.2 IP IP Bind
.3
.4 IP
.5
.6
.7
.8
.9
.10
.11
11
C# .
.
using
:
System.Net
System.Net.Socket
System.Text
static ) Main
static
static(
.
static
Main new
}
AddressFamily.InterNetwork IP 4
.
SocketType.Stream Stream
ProtocolType.Tcp
IP Port
IP 1800
. IPEndPoint
:
;)sktListener.Listen(100
100 connection 4
:
;)(sktListener = sktListener.Accept
: .
.... . System.Text
. salam Ascii
;)"byte[] byt = Encoding.ASCII.GetBytes("salam
:
;)string str = Encoding.ASCII.GetString(byt
:
;)Console.WriteLine(Data
.
.
accept
... .
: delegate . Delegate
delegate
1800
AcceptCallBack .
delegate
) (
;)Mainlistener.Listen(4
;)Mainlistener.BeginAccept(AcceptCallback,Mainlistener
AcceptCallBack
.
: BeginAccept
. .
null .
IAsyncResult .
AcceptCallback
.
)private void AcceptCallback(IAsyncResult ar
{
...
{
IAsyncResult .
. :
;)Socket temp = ((Socket)ar.AsyncState
:
;)Socket worker = temp.EndAccept(ar
.
.
.
:
;]byte[] buffer = new byte[1024
:
.
BeginReceive .
.
;)AsyncCallback ReceiveMethod = new AsyncCallback(ReceiveCallBack
worker.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None,new
;)ReceiveMethod, worker
AcceptCallback
ReceiveCallBack
.
: . EndReceive
int bytesReceived = worker.EndReceive(ar);
:( string)
string str = System.Text.UTF8Encoding.UTF8.GetString(buffer);
Client Server
: Thread Threading
class TcpServer
{
private TcpListener _tcpListener;
C#
.
TcpListener
TCP .
IP
.
13000 Localhost
:
;using System
;using System.IO
;using System.Net
;using System.Net.Sockets
;using System.Text
class MyTcpListener
{
)(public static void Main
{
;TcpListener server=null
try
{
// Set the TcpListener on port 13000.
;Int32 port = 13000
;)"IPAddress localAddr = IPAddress.Parse("127.0.0.1
;)// TcpListener server = new TcpListener(port
;)server = new TcpListener(localAddr, port
// Start listening for client requests.
;)(server.Start
// Buffer for reading data
}
catch(SocketException e)
{
Console.WriteLine("SocketException: {0}", e);
}
finally
{
// Stop listening for new clients.
server.Stop();
}
:
System.Net HTTP :
namespace . WebRequest WebResponse
. URL
System.Net . namespace
System.Net.Sockets . namespace
TCP UDP WinSock
System.Net. HTTP,TCP
.
DNS
System.IO
.
.
System.Threading namespace
. namespace
multithreaded .
C++
CLR
threads
threading
System.Threading
. namespace
Thread thread