熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

淺析C#中的套接字編程

2013-11-13 10:21:32  來源: .NET編程 
大家都知道Java語言的強大功能尤其在網絡編程方面於是C#在網絡編程方面也自然不甘落後於人本文就向大家介紹一下C#下實現套接字(Sockets)編程的一些基本知識以期能使大家對此有個大致了解首先我向大家介紹一下套接字的概念
 
  套接字基本概念套接字是通信的基石是支持TCP/IP協議的網絡通信的基本操作單元可以將套接字看作不同主機間的進程進行雙向通信的端點它構成了單個主機內及整個網絡間的編程界面套接字存在於通信域中通信域是為了處理一般的線程通過套接字通信而引進的一種抽象概念套接字通常和同一個域中的套接字交換數據(數據交換也可能穿越域的界限但這時一定要執行某種解釋程序)各種進程使用這個相同的域互相之間用Internet協議簇來進行通信
 
  套接字可以根據通信性質分類這種性質對於用戶是可見的應用程序一般僅在同一類的套接字間進行通信不過只要底層的通信協議允許不同類型的套接字間也照樣可以通信套接字有兩種不同的類型流套接字和數據報套接字
 
  套接字工作原理要通過互聯網進行通信你至少需要一對套接字其中一個運行於客戶機端我們稱之為ClientSocket另一個運行於服務器端我們稱之為ServerSocket根據連接啟動的方式以及本地套接字要連接的目標套接字之間的連接過程可以分為三個步驟服務器監聽客戶端請求連接確認
 
  所謂服務器監聽是服務器端套接字並不定位具體的客戶端套接字而是處於等待連接的狀態實時監控網絡狀態
 
  所謂客戶端請求是指由客戶端的套接字提出連接請求要連接的目標是服務器端的套接字為此客戶端的套接字必須首先描述它要連接的服務器的套接字指出服務器端套接字的地址和端口號然後就向服務器端套接字提出連接請求
 
  所謂連接確認是指當服務器端套接字監聽到或者說接收到客戶端套接字的連接請求它就響應客戶端套接字的請求建立一個新的線程把服務器端套接字的描述發給客戶端一旦客戶端確認了此描述連接就建立好了而服務器端套接字繼續處於監聽狀態繼續接收其他客戶端套接字的連接請求
From:http://tw.wingwit.com/Article/program/net/201311/13368.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.