基于Socket進(jìn)行通用的網(wǎng)絡(luò)通信程序設(shè)計
本文關(guān)鍵詞:基于Socket進(jìn)行通用的網(wǎng)絡(luò)通信程序設(shè)計,由筆耕文化傳播整理發(fā)布。
關(guān)于在Linux下的Socket編程,很號的參考論文
馬喜春,等:基于Socket進(jìn)行通用的網(wǎng)絡(luò)通信程序設(shè)計59
算機(jī)通訊。如果需要這種功能,客戶端應(yīng)用程序必須建立多個套接字連接,每臺計算機(jī)一個套接字。在TCP、UDP通訊中用到的網(wǎng)絡(luò)類包括:(1)Socket:TCP連接的客戶方(Client);(2)ServerSoeket:TCP連接的服務(wù)器方(Server);(3)DatagramPacket:構(gòu)造一個要發(fā)送/接收的數(shù)據(jù)報對象;(4)DatagramSocket:構(gòu)造一個用于發(fā)送/接收數(shù)據(jù)報的socket對象。服務(wù)器程序通過Socket類的對象和客戶進(jìn)行通訊,即根據(jù)該對象生成輸入流和輸出流。
(1)客戶-服務(wù)器模式及其特點在TCP/IP互聯(lián)網(wǎng)中,最主要的進(jìn)程間交互的方式是客戶一服務(wù)器C/S(Client/Server)模式,,也可稱為客戶一服務(wù)器模型?蛻粝蚍⻊(wù)器主動發(fā)出服務(wù)請求,服務(wù)器做出響應(yīng),這就是C/S模式相互作用的基本過程。所謂客戶和服務(wù)器,它們分別是兩個應(yīng)用進(jìn)程,可以位于互聯(lián)網(wǎng)的兩臺不同主機(jī)上。有時人們也常把運(yùn)行客戶進(jìn)程的計算機(jī)稱為客戶,而運(yùn)行服務(wù)器進(jìn)程的計算機(jī)稱為服務(wù)器,市場上出售的配置有較高的資源適于運(yùn)行服務(wù)器程序的計算機(jī),廠商直接稱之為服務(wù)器。實際上,一臺計算機(jī)可以運(yùn)行多個不同的服務(wù)器進(jìn)程,提供多種服務(wù)。客戶/服務(wù)器的本質(zhì)區(qū)別是服務(wù)器方(Server)總在監(jiān)聽一個特定的端口而客戶(Client)則向該端口發(fā)出連接請求。
為什么TCP/IP采用C/S模式作為應(yīng)用程序間相互作用的最主要形式?它有什么特點?從技術(shù)方面講,互聯(lián)網(wǎng)上主機(jī)之間的進(jìn)程通信與單機(jī)進(jìn)程通信不同的一個特點是互聯(lián)網(wǎng)上主機(jī)發(fā)起通信完全是隨機(jī)的,一臺主機(jī)不知道另一臺主機(jī)會在什么時候發(fā)起一次通信,因此需要一種機(jī)制,為通信的進(jìn)程之間建立聯(lián)系,為它們之間的數(shù)據(jù)交換提供同步。C/S模式很好地解決了上述技術(shù)問題,每次通信過程都由客戶進(jìn)程主動發(fā)起,而且是隨機(jī)的,服務(wù)器進(jìn)程從開機(jī)起就處于等待狀態(tài),隨時準(zhǔn)備對客戶的請求做出及時的響應(yīng),因此客戶和服務(wù)器,一個主動請求,一個被動響應(yīng),一個啟動通信,一個等待通信。從實際應(yīng)用方面講,C/S模式最重要的特點是非對等性相互作用,客戶請求服務(wù),服務(wù)器提供服務(wù)。一般提供服務(wù)的計算機(jī)要比請求服務(wù)的計算機(jī)擁有更好更多的硬、軟件資源和更強(qiáng)的處理能力,客戶一服務(wù)器模式很好地適應(yīng)了Intemet上資源分布不均的客觀現(xiàn)實,充分地利用了資源。此外,C/S模式優(yōu)化了網(wǎng)絡(luò)的利用率?蛻艨梢哉埱蠓⻊(wù)器進(jìn)行大型計算,比如數(shù)據(jù)庫查詢等,客戶將查詢請求傳給服務(wù)器(這里是數(shù)據(jù)庫服務(wù)器),由服務(wù)器執(zhí)行大型數(shù)據(jù)庫的查詢,之后將查詢結(jié)果傳回給客戶,因此,網(wǎng)絡(luò)上傳輸?shù)闹皇呛喍痰牟樵冋埱蠛徒Y(jié)果。
我們在實驗中介紹的是更為基礎(chǔ)和通用的方法,即自己實現(xiàn)服務(wù)器程序,然后直接在客戶和服務(wù)器之間進(jìn)行通訊。目前最常用的服務(wù)器模型是重復(fù)服務(wù)器。重復(fù)服務(wù)器在同一個時刻只可以響應(yīng)一個客戶端的請求,而并發(fā)服務(wù)器在同一個時刻可以響應(yīng)多個客戶端的請求。
(2)并發(fā)服務(wù)器和重復(fù)服務(wù)器并發(fā)服務(wù)器用主從服務(wù)器的方式解決了并發(fā)請求的問題。主服務(wù)器(master)是一個守護(hù)進(jìn)程(daemon),系統(tǒng)啟動它就運(yùn)行,如果沒有客戶請求到達(dá)時,主服務(wù)器處于等待狀態(tài)。一旦有客戶請求到達(dá),主服務(wù)器立即為之產(chǎn)生一個子進(jìn)程,由子進(jìn)程響應(yīng)請求,而自己回到等待狀態(tài)。子進(jìn)程稱為從服務(wù)器
Word文檔免費(fèi)下載:基于Socket進(jìn)行通用的網(wǎng)絡(luò)通信程序設(shè)計 (下載1-4頁,共4頁)
本文關(guān)鍵詞:基于Socket進(jìn)行通用的網(wǎng)絡(luò)通信程序設(shè)計,由筆耕文化傳播整理發(fā)布。
本文編號:187069
本文鏈接:http://sikaile.net/kejilunwen/wltx/187069.html