基于tcp下多線程winsock編程new

基于tcp下多線程winsock編程new

ID:33694496

大小:83.97 KB

頁數(shù):3頁

時間:2019-02-28

基于tcp下多線程winsock編程new_第1頁
基于tcp下多線程winsock編程new_第2頁
基于tcp下多線程winsock編程new_第3頁
資源描述:

《基于tcp下多線程winsock編程new》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、基于TCP下多線程基于TCP下多線程WINSOCK編程Multi-threadWinsockProgrammingBasedonTCPWINSOCK張磊1、2王貞化2ZhangLeiWangZhenhua(1.蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院,蘇州215006;2.河南師范大學(xué)計算機與信息技術(shù)學(xué)院,新鄉(xiāng)453007)編程(1.SchoolofComputerScience&Technology,SoochowUniversity,Shuzhou215006;2.CollegeofComputer&Inform

2、ationTechnology,HenanNormalUniversity,Xinxiang453007)摘要:本文首先分析了在WINSOCK下具體網(wǎng)絡(luò)編程過程中的實際需求,利用線程創(chuàng)建函數(shù)編寫了服務(wù)器對多個客戶同時響應(yīng)的例子,即在每一個客戶提出請求后,主程序調(diào)用CreateThread子函數(shù)創(chuàng)建一個線程去服務(wù)客戶,而主程序返回去等待下一個客戶請求,從而實現(xiàn)多個客戶與服務(wù)器間的通信。關(guān)鍵詞:套接字;傳輸控制協(xié)議;多線程;客戶/服務(wù)器中圖分類號:TP393.04文獻標識碼:A文章編號:1671-4792-(

3、2006)7-0030-03Abstract:Firstly,thispaperanalysisactualdemandsinconcretenetworkprogrammingprocessatWinsock,compilestheexamplethattheserverprogramrespondstomanycustomersatthesametimebyusingtheCreateThreadfunction.Namelyproposedtherequestaftereachcustomer,th

4、emasterprogramadjuststheCreateThreadsub-functiontofoundathreadtoserveeachcustomer.Thenthemasterprogramreturnstowaitnextcustomertorequest,andsorealizecorrespondencebetweenmanycustomersandtheserver.Keywords:Sockets;TCP;Multi-thread;Client/Server0引言來討論,如圖一所示

5、。進程通信的概念最初來源于單機系統(tǒng),僅限于在本機進程之間通信[1]。網(wǎng)間進程通信要解決的是不同主機進程間的相互通信問題(可把同機進程通信看作是其中的特例),為此,首先要解決的是網(wǎng)間進程標識問題。同一主機上,不同進程可用進程號(processID)唯一標識[2],但在網(wǎng)絡(luò)環(huán)境圖一五層網(wǎng)絡(luò)協(xié)議下,各主機獨立分配的進程號不能唯一標識該進程。例如,按照OSI七層協(xié)議的描述,傳輸層與網(wǎng)絡(luò)層在功能上的主機A賦予某進程號5,在B機中也可以存在5號進程,因此,最大區(qū)別是傳輸層提供進程通信能力。從這個意義上講,網(wǎng)“5號進程

6、”這句話就沒有意義了。其次,操作系統(tǒng)支持的網(wǎng)絡(luò)通信的最終地址就不僅僅是主機地址了,還包括可以描述絡(luò)協(xié)議眾多,不同協(xié)議的工作方式不同,地址格式也不同。進程的某種標識符。為此,TCP/IP協(xié)議提出了協(xié)議端口因此,網(wǎng)間進程通信還要解決多重協(xié)議的識別問題。(protocolport,簡稱端口)的概念,用于標識通信的進程。我們引進了套接字,為了通訊時不發(fā)生混亂,一個TCP1.2端口連接由它的兩個端點來標志,而每個端點又是由IP地址和端端口是一種抽象的軟件結(jié)構(gòu)(包括一些數(shù)據(jù)結(jié)構(gòu)和I/O口號決定的。因此,TCP使用“連

7、接”作為最基本的抽象,同緩沖區(qū))。應(yīng)用程序(即進程)通過系統(tǒng)調(diào)用與某端口建立時將TCP連接的端點稱為插口(SOCKET),即套接字。本文中連接(binding)后,傳輸層傳給該端口的數(shù)據(jù)都被相應(yīng)進SOCKET指IP地址與端口號的組合[3]。程所接收,相應(yīng)進程發(fā)給傳輸層的數(shù)據(jù)都通過該端口輸出。1根據(jù)網(wǎng)絡(luò)協(xié)議進行模板設(shè)計我們所用的Port便是運輸層和應(yīng)用層之間的一個接口,1.1網(wǎng)絡(luò)的分層協(xié)議從某種意義上講,端口的作用就是標志應(yīng)用層的進程。網(wǎng)絡(luò)現(xiàn)代網(wǎng)絡(luò)中,通信雙方必須使用相同的協(xié)議才可以通中的每臺主機必須擁有地

8、址才可以通信,網(wǎng)絡(luò)中主機的地址信,而協(xié)議的復(fù)雜性導(dǎo)致了協(xié)議分層。由于OSI的七層協(xié)議不能重復(fù),IP地址是TCP/IP協(xié)議的地址,它是網(wǎng)絡(luò)層的接體系結(jié)構(gòu)既復(fù)雜又不實用,而TCP/IP協(xié)議是一個四層的體系口,在WindowsOS中通常采用32位,點分十進制表示[5]。結(jié)構(gòu),因為最下面的網(wǎng)絡(luò)接口層并沒有什么內(nèi)容,因此我們?nèi)纾?92.168.0.1。才用一個折中的辦法,即采用一種具有五層協(xié)議的體系結(jié)構(gòu)51科技廣場2006.7PORT(

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。