?? d069.bmp.txt
字號:
與流式套接字不同的是,在數據報套接字中,服務器不調用accept(),客戶機不調用
connect()。同樣,在數據報套接字中,無連接服務器也必須是首先啟動的,否則客戶服務請
求傳不到服務器進程。在發送數據之前,客戶機和服務器之間尚未建立完整相關。在服務器
一端,無連接服務器通過socket()和bind0建立了本地半相關;在客戶一端,無連接客戶特別
調用bind(),也建立了一個本地半相關。在傳輸數據之前,無連接的2個端點已建立起來,
分別以一個本地socket號標識。然后在發送數據時,發送方指定本地socket號和信宿端socket
地址。于是,一個完整的相關在數據收發過程中動態地建立起來,實現無連接客戶和服務器
的彼此識別,如圖3-2所示。
服務器
服務器
圖3-1面向連接套接口應用程序時序圖 圖3-2無連接套接口應用程序時序圖
Winsock定義并記錄了如何使用API與Internet協議族TCP/IP連接,尤其要指出的是所
有的Winsock實現都支持流式套接字和數據報套接字。
為了簡化WinSock網絡編程,使用戶專注于應用程序算法的設計,微軟的基本類庫
(Microsoft Foundation Class.MFC)提供了兩種利用Windows Sockets進行網絡通信的編程
模式,這兩種模式分別為為用CAsyncSocket類和派生于CAsyncSocket的CSocket類來編程。
這兩個類在不同程度上對WinSock API的函數進行了封裝,在編程時使用經過封裝的MFC
WinSock類使編程工作大大簡化。而且,這兩個類都提供了事件處理函數,通過對事件處理
玀
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -