版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
《計算機網絡編程》第八講循環服務器電子科技大學計算機學院循環服務器概述循環的無連接的服務器:Time服務器實例循環的面向連接的服務器:Daytime服務器實例目錄計算機網絡編程電子科大計算機學院循環服務器的類型循環無連接服務器使用無連接的循環服務器,采用算法8.2TIME服務的例子循環面向連接的服務器循環的面向連接的服務器,采用算法8.1DAYTIME服務的例子特點:每次處理時間都很少服務器實現簡單計算機網絡編程電子科大計算機學院1.循環服務器概述創建一個過程隱藏創建一個被動套接字的細節passiveUDP:本章學習,使用無連接的被動套接字passiveTCP:使用面向連接的被動套接字獲得熟知的端口號,端口號的唯一性問題。使用什么協議綁定IP地址使用全局變量portbase的優點安全性:不修改程序中引用端口的地方導致少發生錯誤通用性:允許測試的時候,多個服務器版本共存運行,portbase的值不一樣,測試版本的端口不會沖突計算機網絡編程電子科大計算機學院創建被動的套接字passiveUDP調用passivesock實現passiveTCP調用passivesock實現passivesock三個參數第一個服務名,第二個協議名,第三個參數指明連接請求隊列所需要的長度(只用于TCP套接字)使用INADDR_ANY代替特定的本地IP地址getservbyname,getprotobyname,strcmp,memset,socket,bind,listen…分析passivesock.c計算機網絡編程電子科大計算機學院創建被動的套接字循環的無連接的服務器進程結構只需要一個執行線程計算機網絡編程電子科大計算機學院2.循環無連接服務器(算法8.2)用于所有通信的熟知套接字端口服務器操作系統服務器應用進程客戶使用TIME服務從另一個系統得到當前時間(前面已經討論過)TIME服務幾乎不需要什么計算UDPtimed.cpage91頭文件include宏定義,變量定義,函數聲明main函數參數分析調用passiveUDPrecvfrom,sendto循環計算機網絡編程電子科大計算機學院TIME服務器舉例(注意與算法8.2對應)使用這個服務器的原因簡單服務服務器為每個請求的計算很少循環服務器是個簡單的服務器建立被動的套接字的過程TIME服務獲得系統時間服務使用UDP訪問編程方法計算機網絡編程電子科大計算機學院循環無連接服務器小結分配被動的TCP套接字調用passiveTCP實現帶有兩個參數第一個是字符串:服務的名字或者端口號第二個:傳入連接的請求隊列所需的長度計算機網絡編程電子科大計算機學院3.循環的面向連接的服務器(算法8.1)DAYTIME服務:從另外機器上獲得當前的日期和時間(前面第7章已經談過)DAYTIME服務器不需要優化速率獲取和格式化日期要求很少的處理用戶對此服務的需求很少循環實現就足夠了服務器忙的時候,其他的請求可以排隊計算機網絡編程電子科大計算機學院用于DAYTIME服務的服務器使用一個單執行線程使用兩個套接字一個套接字處理請求另外一個套接字處理和客戶的通信(臨時的)計算機網絡編程電子科大計算機學院進程的結構用于連接請求的套接字服務器操作系統服務器應用進程用于單個連接的套接字TCPdaytimed.cpage96passiveTCP隱藏了很多套接字分配和綁定的細節QLEN:客戶連接請求等待隊列長度在循環中,使用accept從主套接字得到一個連接(accept完成三次握手過程)對于新的連接服務器調用過程TCPdaytimed進行處理處理完畢繼續循環,再次調用accept阻塞計算機網絡編程電子科大計算機學院DAYTIME服務器例子調用TCPdaytimed返回后,主程序關閉該連接的套接字調用close是從容關閉:TCP保證所有的數據可靠交付給客戶(連接終止前收到確認)close不能立刻返回,調用將會阻塞,直到收到客戶的確認計算機網絡編程電子科大計算機學院關閉連接連接終止問題DAYTIME服務器知道何時應該終止連接復雜客戶服務器系統的應用,必須了解客戶什么時候是最后一個請求,客戶必須發送一個完成的信號允許客戶控制連接時間有危險誤操作的客戶可能導致服務器消耗掉套接字和TCP連接相關的資源客戶快速的重復的發出請求,可以把服務器的資源用光計算機網絡編程電子科大計算機學院連接終止和服務器的脆弱性循環的面向連接的服務器每處理一個連接循環一次連接達到以前在accept阻塞建立新的連接以后創建新套接字處理處理完畢,關閉,返回accept阻塞DAYTIME服務不需要客戶的請求信息,檢測到連接就響應發送完響應,服務器主動關閉連接每個連接只發送一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 項目課程實施個案研究-以洛陽市B幼兒園為例
- 2026年腫瘤科化療廢棄物處置自查報告
- 裝修工程監理安全生產目標管理計劃
- 計算機網絡安全畢業論文
- 礦山作業安全防護及文明施工措施
- 2025年度供應鏈管理培訓工作計劃
- 建筑工地臨時用電安全施工方案
- 企業安全應急部制度
- 數據資產質量評價維度構建與智能化檢測工具設計研究
- 制造業數字化轉型路徑規劃與實施策略研究
- 《鐵路技術管理規程》(普速鐵路部分)
- 部編版小學二年級語文下冊《找春天》教學設計
- 《成人無創通氣設備相關面部壓力性損傷風險評估與預防指南》解讀課件
- 醫院護工護理合同范本
- 管道開挖土方計算表
- (高清版)DZT 0073-2016 電阻率剖面法技術規程
- 電力預防性試驗課件
- 石膏固定術課件
- 新概念英語第三冊課文(全60課)
- 營區消防安全培訓課件
- 鋼筋翻樣表-樣表
評論
0/150
提交評論