freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

lab8-socket編程原理-文庫吧

2025-07-21 00:46 本頁面


【正文】 c k e t ( )W S A C l e a n u p ( )三 次 握 手 過 程 建 立 T C P 連 接交 換 數 據交 換 數 據關 閉 T C P 連 接等 待 客 戶 連 接 請 求 的 到 來服 務 器 端 客 戶 端無連接的 C/S程序工作流程 (UDP) ?無連接的數據報傳輸服務通信時,客戶端與服務器端所使用的函數是類似的,其工作流程如下: ? 使用 WSAStartup()函數檢查系統(tǒng)協(xié)議棧的安裝情況 ? 使用 socket()函數創(chuàng)建套接口,以確定協(xié)議類型 ? 調用 bind()函數將創(chuàng)建的套接口與本地地址綁定,確定本地地址和本地端口號 ? 使用 sendto()函數發(fā)送數據,或者使用 recvfrom()函數接收數據 ? 使用 closesocket()函數關閉套接口 ? 調用 WSACleanup()函數,結束 Windows Sockets API 無連接的 C/S程序工作流程 (UDP) ?注意事項: ? 通信的一方可以不用 bind()綁定地址和端口,由系統(tǒng)分配 ? 不綁定 IP地址和端口號的一方必須首先向綁定地址的一方發(fā)送數據 ? 無連接的應用程序也可以調用 connect()函數,但是它并不向對方發(fā)出建立連接的請求,而是在本地返回,由內核將connect()中指定的目標 IP地址和端口號記錄下來,在以后的通信中就可以使用面向連接的數據發(fā)送函數 send()和數據接收函數 recv() ? 無連接的數據報傳輸過程中,作為服務器的一方必須先啟動 ? 無連接客戶端一般不調用 connect(),在數據發(fā)送前客戶與服務器各自通過 socket()和 bind()建立了半相關,發(fā)送數據時除指定本地套接口的地址外,還需要指定接收方套接口地址,從而在數據收發(fā)過程中動態(tài)建立全連接 無連接的 C/S程序工作流程圖 (UDP) W S A S t a r t u p ( )交 換 數 據s o c k e t ( )b i n d ( )r e c v f r o m ( )s e n d t o ( )c l o s e s o c k e t ( )W S A C l e a n u p ( )W S A S t a r t u p ( )s o c k e t ( )b i n d ( )s e n d t o ( )c l o s e s o c k e t ( )W S A C l e a n u p ( )r e c v f r o m ( )交 換 數 據服 務 器 客 戶 端阻塞通信與非阻塞通信 ?阻塞方式:套接字進行 I/O操作時,函數要等待到相關的操作完成以后才能返回,對提高處理機的利用率不利,但編程簡單。 ?非阻塞方式:套接字進行 I/O操作時,無論操作成功與否,調用都會立即返回。 ?阻塞方式編程簡單,一個套接口的默認操作模式為阻塞,可以調用函數 ioctlsocket()進行設置。 并發(fā)服務器 W S A S t a r t u p ( )s o c k e t ( )b i n d ( )l i s t e n ( )a c c e p t ( )c l o s e s o c k e t ( )W S A C l e a n u p ( )等 待 客 戶 連 接 請 求 的 到 來服 務 器 端r e c v ( )s e n d ( )c l o s e s o c k e t ( )C r e a t e T h r e a d ( )派 生 線 程主 進 程 在 a c c e p t 之 后 派生 新 線 程 , 然 后 主 進 程繼 續(xù) l i s t e n , 處 理 新 的 連接 請 求 , 新 線 程 自 行 和客 戶 端 通 信Socket常用函數介紹 ?基本函數 ?網絡信息檢索函數 基本函數 ?網絡連接函數 ? socket 創(chuàng)建套接字 ? bind 綁定本機端口 ? connect 建立連接 ? listen 監(jiān)聽端口 ? accept 接受連接 ? recv, recvfrom 數據接收 ? send, sendto 數據發(fā)送 ? close, shutdown 關閉套接字 基本函數 ?轉換函數 ? IP地址轉換函數 ? i_addr() 點分十進制數表示的 IP地址轉換為網絡字節(jié)序的 IP地址 ? i_ntoa() 網絡字節(jié)序的 IP地址轉換為點分十進制數表示的 IP地址 ? 字節(jié)排序函數 ? htonl 4字節(jié)主機字節(jié)序轉換為網絡字節(jié)序 ? ntohl 4字節(jié)網絡字節(jié)序轉換為主機字節(jié)序 ? htons 2字節(jié)主機字節(jié)序轉換為網絡字節(jié)序 ? ntohs 2字節(jié)網絡字節(jié)序轉換為主機字節(jié)序 網絡信息檢索函數 ?網絡信息檢索函數 ? gethostname 獲得主機名 ? getpeername 獲得與套接口相連的遠程協(xié)議地址 ? getsockname 獲得套接口本地協(xié)議地址 ? gethostbyname 根據主機名取得主機信息 ? gethostbyaddr 根據主機地址取得主機信息 ? getprotobyname 根據協(xié)議名取得主機協(xié)議信息 ? getprotobynumber 根據協(xié)議號取得主機協(xié)議信息 ? getservbyname 根據服務名取得相關服務信息 ?
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1