版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、TCP和UDP網(wǎng)絡(luò)編程教案TCP和UDP網(wǎng)絡(luò)編程20XX年3月9日ISO/OSI七層參考模型OSI(Open System Interconnection)參考模型將網(wǎng)絡(luò)的不同功能劃分為7層。通信實(shí)體的對(duì)等層之間不允許直接通信。各層之間是嚴(yán)格單向依賴。上層使用下層提供的服務(wù) Service user;下層向上層提供服務(wù) Service provider。應(yīng)用層表示層物理層會(huì)話層傳輸層網(wǎng)絡(luò)層數(shù)據(jù)鏈路層處理網(wǎng)絡(luò)應(yīng)用數(shù)據(jù)表示主機(jī)間通信端到端的連接尋址和最短路徑介質(zhì)訪問(接入)二進(jìn)制傳輸OSI各層所使用的協(xié)議 應(yīng)用層:遠(yuǎn)程登錄協(xié)議Telnet、文件傳輸協(xié)議FTP、 超文本傳輸協(xié)議HTTP、域名服務(wù)DN
2、S、簡單郵件傳輸協(xié)議SMTP、郵局協(xié)議POP3等。 傳輸層:傳輸控制協(xié)議TCP(面向連接的可靠的傳輸協(xié)議)、用戶數(shù)據(jù)報(bào)協(xié)議UDP(是無連接的,不可靠的傳輸協(xié)議)。 網(wǎng)絡(luò)層:網(wǎng)際協(xié)議IP、Internet互聯(lián)網(wǎng)控制報(bào)文協(xié)議ICMP、Internet組管理協(xié)議IGMP。數(shù)據(jù)封裝OSI參考模型中,對(duì)等層協(xié)議之間交換的信息單元統(tǒng)稱為協(xié)議數(shù)據(jù)單元(PDU,Protocol Data Unit)。OSI參考模型中每一層都要依靠下一層提供的服務(wù)。為了提供服務(wù),下層把上層的PDU作為本層的數(shù)據(jù)封裝,然后加入本層的頭部(和尾部)。頭部中含有完成數(shù)據(jù)傳輸所需的控制信息。這樣,數(shù)據(jù)自上而下遞交的過程實(shí)際上就是不斷封
3、裝的過程。到達(dá)目的地后自下而上遞交的過程就是不斷拆封的過程。由此可知,在物理線路上傳輸?shù)臄?shù)據(jù),其外面實(shí)際上被包封了多層“信封”。但是,某一層只能識(shí)別由對(duì)等層封裝的“信封”,而對(duì)于被封裝在“信封”內(nèi)部的數(shù)據(jù)僅僅是拆封后將其提交給上層,本層不作任何處理。數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)協(xié)議頭對(duì)等通信示例“你好你好”“Hello”傳真?zhèn)髡嬷袊袊處熃處煼g翻譯秘書秘書“Hallo”“Hello”傳真?zhèn)髡娴聡聡處熃處煼g翻譯秘書秘書對(duì)交談內(nèi)容的共識(shí)對(duì)交談內(nèi)容的共識(shí)用英語對(duì)話用英語對(duì)話使用傳真通信使用傳真通信P3P2P1物理通信線路物理通信線路 對(duì)等層實(shí)體之間虛擬通信。對(duì)等層實(shí)體之間虛擬通信。 下層向上層提供服務(wù)
4、,實(shí)際通信在最底層完成。下層向上層提供服務(wù),實(shí)際通信在最底層完成。TCP/IP模型 TCP/IP起源于美國國防部高級(jí)研究規(guī)劃署(DARPA)的一項(xiàng)研究計(jì)劃實(shí)現(xiàn)若干臺(tái)主機(jī)的相互通信。 現(xiàn)在TCP/IP已成為Internet上通信的工業(yè)標(biāo)準(zhǔn)。 TCP/IP模型包括4個(gè)層次: 應(yīng)用層 傳輸層 網(wǎng)絡(luò)層 網(wǎng)絡(luò)接口應(yīng)用層表示層會(huì)話層傳輸層物理層數(shù)據(jù)鏈路層網(wǎng)絡(luò)層OSI參考模型應(yīng)用層傳輸層網(wǎng)絡(luò)接口網(wǎng)絡(luò)層TCP/IP模型TCP/IP與OSI參考模型的對(duì)應(yīng)關(guān)系基于TCP(面向連接)的socket編程服務(wù)器端程序:1、創(chuàng)建套接字(socket)。2、將套接字綁定到一個(gè)本地地址和端口上(bind)。3、將套接字設(shè)為監(jiān)
5、聽模式,準(zhǔn)備接收客戶請求(listen)。4、等待客戶請求到來;當(dāng)請求到來后,接受連接請求,返回一個(gè)新的對(duì)應(yīng)于此次連接的套接字(accept)。5、用返回的套接字和客戶端進(jìn)行通信(send/recv)。6、返回,等待另一客戶請求。7、關(guān)閉套接字??蛻舳顺绦颍?、創(chuàng)建套接字(socket)。2、向服務(wù)器發(fā)出連接請求(connect)。3、和服務(wù)器端進(jìn)行通信(send/recv)。4、關(guān)閉套接字?;赨DP(面向無連接)的socket編程服務(wù)器端(接收端)程序:1、創(chuàng)建套接字(socket)。2、將套接字綁定到一個(gè)本地地址和端口上(bind)。3、等待接收數(shù)據(jù)(recvfrom)。4、關(guān)閉套接字。
6、客戶端(發(fā)送端)程序:1、創(chuàng)建套接字(socket)。2、向服務(wù)器發(fā)送數(shù)據(jù)(sendto)。3、關(guān)閉套接字。套接字的類型 流式套接字(SOCK_STREAM)提供面向連接、可靠的數(shù)據(jù)傳輸服務(wù),數(shù)據(jù)無差錯(cuò)、無重復(fù)的發(fā)送,且按發(fā)送順序接收。 數(shù)據(jù)報(bào)式套接字(SOCK_DGRAM)提供無連接服務(wù)。數(shù)據(jù)包以獨(dú)立包形式發(fā)送,不提供無錯(cuò)保證,數(shù)據(jù)可能丟失或重復(fù),并且接收順序混亂。 原始套接字(SOCK_RAW) 原始套接字保存了數(shù)據(jù)包中的完整IP頭,前面兩種套接字只能收到用戶數(shù)據(jù)。因此可以通過原始套接字對(duì)數(shù)據(jù)進(jìn)行分析。Socket相關(guān)接口Ioctlsocket 控制套接字的模式,例如FIONBIO,0為阻
7、塞模式,非0為非阻塞模式。 select 常用在recv之前以block或non-block方式檢測網(wǎng)絡(luò)上是否有數(shù)據(jù)setsockopt 設(shè)置套接字的選項(xiàng),例如發(fā)送或接收的socket緩沖區(qū)大小getsockopt 獲取套接字的選項(xiàng)多線程 創(chuàng)建線程 銷毀線程 設(shè)置線程優(yōu)先級(jí) 使用Semaphore實(shí)現(xiàn)上傳或下載的暫停或繼續(xù) 暫停pause(接口WaitForSingleObject) 繼續(xù)resume(接口ReleaseSemaphore)互斥量 使用互斥量實(shí)現(xiàn)盡可能快上傳文件,需要用到緩存。 1) 當(dāng)一個(gè)線程正在寫入數(shù)據(jù)時(shí),其他線程不能寫,也不能讀。 2) 當(dāng)一個(gè)線程正在讀入數(shù)據(jù)時(shí),其他線程不能寫,但能夠讀。 CreateMutex WaitForSingleObject ReleaseMutex作業(yè)內(nèi)容 描述:用UDP和TCP兩種方式,編寫C/S結(jié)構(gòu)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 物探課程設(shè)計(jì)報(bào)告總結(jié)
- 礦井通風(fēng)課程設(shè)計(jì)心得
- 綜合通信系統(tǒng)課程設(shè)計(jì)
- 電工電子課程設(shè)計(jì)概述
- 英文秋天主題課程設(shè)計(jì)
- 研學(xué)谷物分揀課程設(shè)計(jì)
- 線上公交類培訓(xùn)課程設(shè)計(jì)
- 按鍵電燈課程設(shè)計(jì)
- 職業(yè)素養(yǎng)課程設(shè)計(jì)總結(jié)
- 自然教育課程設(shè)計(jì)冬天
- 建設(shè)工程工程量清單計(jì)價(jià)規(guī)范有表格
- 2023版學(xué)前教育專業(yè)人才需求調(diào)研報(bào)告及人培方案(普招)
- 酒店客房部獎(jiǎng)懲制度
- DB43-T 2927-2024 中醫(yī)護(hù)理門診建設(shè)與管理規(guī)范
- 北師大版九下《直角三角形邊角關(guān)系》
- 2024年浙江杭州西湖文化旅游投資集團(tuán)有限公司招聘筆試參考題庫含答案解析
- 圍手術(shù)期血糖管理指南
- 國際經(jīng)濟(jì)學(xué)中文版(克魯格曼教材)課件
- 管理方案日間照料中心
- 2024福建省能化集團(tuán)下屬古雷熱電有限責(zé)任公司社會(huì)招聘筆試參考題庫附帶答案詳解
- 煤礦安全生產(chǎn)管理人員逢查必考題庫(500題)
評(píng)論
0/150
提交評(píng)論