導航:首頁 > 編程語言 > 基於多線程的csocket網路編程技術

基於多線程的csocket網路編程技術

發布時間:2025-06-13 21:51:42

『壹』 急求:網路問題:伯克利套接字是什麼

本文介紹 Windows Sockets 的性質和用途。其他內容還包括:

定義術語「套接字」。
描述 SOCKET 句柄數據類型。
描述套接字的用途。

Windows Sockets 規范為 Microsoft Windows 定義了一個二進制兼容網路編程介面。Windows Sockets 基於 Berkeley Software Distribution(BSD,4.3 版)中的 UNIX 套接字實現,後者是美國加州大學伯克利分校開發的。該規范包括針對 Windows 的 BSD 樣式套接字常式和擴展。通過使用 Windows Sockets,應用程序能夠在任何符合 Windows Sockets API 的網路上通信。在 Win32 上,Windows Sockets 提供線程安全。

許多網路軟體供應商支持網路協議下的 Windows Sockets,這些協議包括:傳輸控制協議/網際協議 (TCP/IP)、Xerox 網路系統 (XNS)、Digital Equipment Corporation 的 DECNet 協議和 Novell Corporation 的互聯網包交換協議/順序分組報文交換協議 (IPX/SPX) 等。雖然目前的 Windows Sockets 規范定義了 TCP/IP 的套接字抽象化,但任何網路協議都可以通過提供自己版本的、實現 Windows Sockets 的動態鏈接庫 (DLL) 來滿足 Windows Sockets。用 Windows Sockets 編寫的商用應用程序示例包括 X Windows 伺服器、終端模擬器和電子郵件系統。

注意: Windows Sockets 的用途是將基礎網路抽象出來,這樣,您不必對網路非常了解,並且您的應用程序可在任何支持套接字的網路上運行。因此,本文檔不討論網路協議的細節內容。

Microsoft 基礎類庫 (MFC) 通過提供兩個類來支持使用 Windows Sockets API 進行編程。其中一個類為 CSocket ,它提供高級抽象化來簡化網路通信編程。

Windows Sockets 規范「Windows Sockets:用於 Microsoft Windows 環境下的網路計算的開放介面」現在為 1.1 版本,它是 TCP/IP 群體中一個由個人和公司組成的大團體開發的,是一個開放的網路標准,可免費使用。套接字編程模型當前支持一個「通信域」,該「通信域」使用網際協議組 (Internet Protocol Suite)。該規范可在 Platform SDK 中獲得。

提示: 因為套接字使用網際協議組,所以它們對於支持「信息高速公路」上 Internet 通信的應用程序是首選方式。

套接字的定義

套接字是一個通信終結點,它是 Windows Sockets 應用程序用來在網路上發送或接收數據包的對象。套接字具有類型,與正在運行的進程相關聯,並且可以有名稱。目前,套接字一般只與使用網際協議組的同一「通信域」中的其他套接字交換數據。

這兩種套接字都是雙向的,是可以同時在兩個方向上(全雙工)進行通信的數據流。

可用的套接字類型有以下兩種:

流式套接字

流式套接字提供沒有記錄邊界的數據流,即位元組流。位元組流能確保以正確的順序無重復地被送達。

數據文報套接字

數據文報套接字支持面向記錄的數據流,但不能確保能被送達,也無法確保按照發送順序或不重復。

「有序」指數據包按發送的順序送達。「不重復」指一個特定的數據包只能獲取一次。

注意: 在某些網路協議下(如 XNS),流可以面向記錄,即作為記錄流而非位元組流。但在更常用的 TCP/IP 協議下,流為位元組流。Windows Sockets 提供與基礎協議無關的抽象化級別。

有關上述類型以及各種套接字適用情形的信息,請參見 Windows Sockets:流式套接字和 Windows Sockets:數據文報套接字。

SOCKET 數據類型

每一個 MFC 套接字對象封裝一個 Windows Sockets 對象的句柄。該句柄的數據類型為 SOCKET。SOCKET 句柄類似於窗口的 HWND。MFC 套接字類提供對封裝句柄的操作。

Platform SDK 中詳細描述了 SOCKET 數據類型。

套接字的用途

套接字的作用非常大,至少在下面三種通信上下文中如此:

客戶端/伺服器模型。
對等網路方案,如聊天應用程序。
通過讓接收應用程序將消息解釋為函數調用來進行遠程過程調用 (RPC)。

閱讀全文

與基於多線程的csocket網路編程技術相關的資料

熱點內容
動態鏈接編譯為什麼需要庫文件 瀏覽:461
程序員求職簡歷模板下載 瀏覽:600
wpf編程寶典c2010版 瀏覽:409
進口氫氣高壓壓縮設備價目表 瀏覽:981
怎麼將pdf文件免費轉為幻燈片 瀏覽:353
程序員簡歷有小公司經歷 瀏覽:728
幕布app有什麼缺點 瀏覽:739
單片機自製遙控車 瀏覽:628
程序員怎麼把軟體設置成全屏 瀏覽:972
atr通道指標源碼 瀏覽:900
dos自動關機命令 瀏覽:594
php寶典pdf 瀏覽:181
java地圖代碼 瀏覽:290
php100代碼 瀏覽:228
php編譯命令 瀏覽:436
最新絕地求生如何更換伺服器 瀏覽:21
ps3壓縮文件 瀏覽:533
杭州哪個app可以查第二課堂 瀏覽:539
方舟生存計劃手游如何開伺服器 瀏覽:734
路由器交換機pdf 瀏覽:488