機(jī)房監(jiān)控系統(tǒng)設(shè)計(jì)與開發(fā)_第1頁
機(jī)房監(jiān)控系統(tǒng)設(shè)計(jì)與開發(fā)_第2頁
機(jī)房監(jiān)控系統(tǒng)設(shè)計(jì)與開發(fā)_第3頁
機(jī)房監(jiān)控系統(tǒng)設(shè)計(jì)與開發(fā)_第4頁
機(jī)房監(jiān)控系統(tǒng)設(shè)計(jì)與開發(fā)_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

機(jī)房監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)摘 要為提高機(jī)房使用效率,凈化上機(jī)環(huán)境,杜絕個(gè)別用戶使用機(jī)房內(nèi)電腦做違規(guī)的事情,為機(jī)房管理員提供一個(gè)好的機(jī)房監(jiān)控系統(tǒng)是必要的。作者在對(duì)機(jī)房微機(jī)管理過程進(jìn)行了詳細(xì)調(diào)查后,參考了一些網(wǎng)吧的微機(jī)管理系統(tǒng),獲得了機(jī)房監(jiān)控系統(tǒng)的設(shè)計(jì)思路。機(jī)房管理系統(tǒng)應(yīng)當(dāng)能使管理員極其方便的獲取某臺(tái)微機(jī)的屏幕視圖,鎖定某臺(tái)電腦的鍵盤和鼠標(biāo)輸入,并能發(fā)送消息給指定的電腦用戶。本論文從理論上分析了實(shí)現(xiàn)機(jī)房監(jiān)控系統(tǒng)所需要的基礎(chǔ)技術(shù)的原理,并以VC+6.0 作為開發(fā)工具,在 Win32 平臺(tái)下實(shí)現(xiàn)了一個(gè)機(jī)房監(jiān)控系統(tǒng)。論文第二部分簡述了 TCP/IP 協(xié)議以及 Socket 編程技術(shù),第三部分講述了系統(tǒng)的設(shè)計(jì)目標(biāo)和通信協(xié)議,第四章則介紹了實(shí)現(xiàn)過程中使用的核心技術(shù),包括屏幕截圖、鎖定屏幕以及服務(wù)器端和客戶端的通信。通過本文的研究,為機(jī)房監(jiān)控系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)展示了一個(gè)完整的方案,具有一定參考價(jià)值。關(guān)鍵詞:機(jī)房監(jiān)控系統(tǒng);屏幕截圖;鎖定屏幕;SocketThe Design and Implementation of the Computer Room Monitor and Control SystemAbstractIt is necessary to provide a computer room monitor and control system with good quality so that the users will obey the room rules and the room can work effectively in a steady environment. After analyzing the process of the computer room management and studying some Cyber-Cafe management system, the concept framework of the computer room monitor and control system was gained. At least, the monitor system must provide abilities to snap the screen of the computer specified by the manager, to disabled the input function of the keyboard and the mouse and to send messages to the computer users.This article enumerated the technologies needed for the implementation of the monitor system and introduced in detail about the issue that how to build a Win32 executable system by using the VC+6.0 as the development tools. In this article, the 2nd chapter introduced the TCP/IP protocol and the Socket programming; the 3rd chapter described the design goals and the communication protocol; the 4th chapter covered the technology cores of the monitor and control system, which were screen snapping, screen locking and communication between server and client. This article advanced a complete solution for the design and implementation of the computer room monitor system and the solution will be reference for similar applying.Key words: computer room monitor system; snap screen; lock screen; socket目 錄論文總頁數(shù):31 頁1.引言 .11.1 課題背景 .11.2 內(nèi)容介紹 .12.相關(guān)技術(shù)原理介紹 .22.1 TCP/IP 協(xié)議 .22.1.1 TCP/IP 協(xié)議簡介 .22.1.2 TCP 協(xié)議 .22.1.3 IP 協(xié)議 .32.1.4 TCP/IP 模型 .32.2 Socket 技術(shù) .62.2.1 Socket 基本概念 .62.2.2 Socket 類型及規(guī)范 .72.2.3 Win Socket API.82.3 Win32 編程技術(shù) .133.系統(tǒng)的設(shè)計(jì) .143.1 系統(tǒng)設(shè)計(jì)目標(biāo) .143.2 系統(tǒng)架構(gòu)設(shè)計(jì) .154.系統(tǒng)的實(shí)現(xiàn) .194.1 用戶界面的實(shí)現(xiàn) .194.2 核心算法的實(shí)現(xiàn) .204.2.1 客戶端和服務(wù)器端的通信 .204.2.2 屏幕截圖 .234.2.3 鎖屏 和解屏 .26結(jié) 論 .28參考文獻(xiàn) .28致 謝 .30聲 明 .311 引言1.1 課題背景當(dāng)今時(shí)代是一個(gè)信息種類多元化,信息量巨大化,傳播速度急速化的時(shí)代。要積極面臨這種現(xiàn)狀,就要能快速的處理各種信息,從而引申出人們對(duì)信息處理工具的高度關(guān)注。而各種電子設(shè)備,尤其是電腦等硬件設(shè)備的出現(xiàn),給人們的日常生活帶來極大的變化。隨著計(jì)算機(jī)網(wǎng)絡(luò)的出現(xiàn),更使得人們的信息處理方式發(fā)生了革命性的改變。毫無疑問,計(jì)算機(jī)以及由計(jì)算機(jī)組成的計(jì)算機(jī)網(wǎng)絡(luò)已經(jīng)成為當(dāng)今時(shí)代最佳的信息處理工具。掌握這個(gè)工具對(duì)于科研和學(xué)習(xí)有著重要意義。鑒于這種情況,現(xiàn)在許多學(xué)校都提供了微機(jī)室,讓在校學(xué)生可以很好的學(xué)習(xí)計(jì)算機(jī)操作,并使用計(jì)算機(jī)輔助學(xué)習(xí)。對(duì)于同學(xué)們來說,這本來是個(gè)很好的機(jī)會(huì),但有個(gè)別同學(xué)未能珍惜這個(gè)機(jī)會(huì),他們沒有好好利用這些微機(jī)進(jìn)行學(xué)習(xí)和研究,而是在機(jī)房內(nèi)打游戲或者閑聊等,甚至有人利用電腦進(jìn)行違反法規(guī)的活動(dòng)。這些同學(xué)不但浪費(fèi)了自身的學(xué)習(xí)機(jī)會(huì),同時(shí)也浪費(fèi)了學(xué)校的寶貴資源,而且給周圍的同學(xué)造成了很不好的影響。因此,如何對(duì)機(jī)房進(jìn)行有效的管理成為了一個(gè)不容忽視的問題。對(duì)于機(jī)房管理,一方面應(yīng)該設(shè)立專門的管理員,擬定詳細(xì)的機(jī)房使用規(guī)則;另一方面,也應(yīng)該配備強(qiáng)大的管理軟件,輔助管理員進(jìn)行管理。因此,如何設(shè)計(jì)和實(shí)現(xiàn)機(jī)房監(jiān)控系統(tǒng)成為了本次課題的研究問題。1.2 內(nèi)容介紹文章在第二章介紹了一些基本的技術(shù)原理,涉及到 TCP/IP 協(xié)議、Socket技術(shù)、Win32 編程等概念,這些都是實(shí)現(xiàn)機(jī)房監(jiān)控系統(tǒng)的基礎(chǔ)技術(shù)。在第三章,首先討論了機(jī)房監(jiān)控系統(tǒng)應(yīng)該具備哪些功能,接著設(shè)計(jì)出了服務(wù)器端和客戶端器的通信協(xié)議。在第四章,首先講述了用戶界面的實(shí)現(xiàn),接著著重介紹了幾個(gè)核心技術(shù)的實(shí)現(xiàn),包括如何對(duì)某個(gè)特定客戶端進(jìn)行屏幕截圖,如何鎖定指定客戶端的屏幕以及如何在服務(wù)器端和客戶端的進(jìn)行通信。2 相關(guān)技術(shù)原理介紹2.1 TCP/IP 協(xié)議2.1.1 TCP/IP 協(xié)議簡介所謂協(xié)議是一套用技術(shù)術(shù)語描述某些事物應(yīng)該如何做的規(guī)則。如果執(zhí)行不同的協(xié)議(一方知道某事的概念,但另一方卻不知道) ,那么他們會(huì)因各自的協(xié)議無法溝通而完不成有用的工作。在計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域中,為了完成一項(xiàng)任務(wù),所涉及的兩個(gè)(或多個(gè))通信實(shí)體必須運(yùn)行同樣的協(xié)議。Internet 是 由眾多的計(jì)算機(jī)網(wǎng)絡(luò)交錯(cuò)連接形成的網(wǎng)際網(wǎng),作為 Internet成員的各種網(wǎng)絡(luò)在通訊中分別執(zhí)行自己的協(xié)議。所謂 Internet 協(xié)議是指在Internet 的網(wǎng)絡(luò)之間以及各成員網(wǎng)內(nèi)部交換信息時(shí)要求遵循的協(xié)議。在Internet 中,到處運(yùn)行著協(xié)議,凡是涉及兩個(gè)或多個(gè)遠(yuǎn)程實(shí)體的通信活動(dòng)均由協(xié)議來支配。協(xié)議定義了兩個(gè)或多個(gè)通信實(shí)體間所交換消息的格式與順序,以及在發(fā)出和/或收到一個(gè)消息或者發(fā)生其他事件所采取的行動(dòng)。TCP/IP 是Internet 網(wǎng)絡(luò)上使用的通用協(xié)議。Internet 依靠上千個(gè)網(wǎng)絡(luò)和百萬計(jì)的計(jì)算機(jī),而 TCP/IP 是把它們合在一起的粘結(jié)劑。TCP/IP 的目標(biāo)是提供高速網(wǎng)絡(luò)通信鏈路。TCP/IP 的實(shí)際名字來源于兩個(gè)最重要的協(xié)議:TCP 協(xié)議與 IP 協(xié)議,其中傳輸控制協(xié)議 TCP 對(duì)應(yīng)于開放系統(tǒng)互聯(lián)0SI 參考模型的傳輸層協(xié)議;網(wǎng)絡(luò)連接協(xié)議 IP 則對(duì)應(yīng)于 OSI 參考模型的網(wǎng)絡(luò)層協(xié)議。所以 TCP/IP 分別是 Internet 在傳輸層和網(wǎng)絡(luò)層執(zhí)行的協(xié)議。2.1.2 TCP 協(xié)議TCP 協(xié)議是互聯(lián)網(wǎng)傳輸層協(xié)議。TCP 服務(wù)模型包括面向連接的服務(wù)和可靠的數(shù)據(jù)傳輸服務(wù),調(diào)用 TCP 作為其傳輸協(xié)議的應(yīng)用同時(shí)取得這兩種服務(wù)??傮w來說,TCP 保證遞送全部數(shù)據(jù),但對(duì)遞送速率和所經(jīng)歷的延遲不加保證。電子郵件、遠(yuǎn)程終端訪問、Web 和文件傳送都使用 TCP。這些應(yīng)用選擇 TCP 的主要原因在于 TCP 提供可靠的數(shù)據(jù)傳輸服務(wù),能夠保證所有數(shù)據(jù)最終到達(dá)其目的地。TCP 的傳輸實(shí)體一般為軟件實(shí)現(xiàn):一部分是用戶進(jìn)程,一部分是操作系統(tǒng)的部分核心(管理 TCP 字節(jié)流,實(shí)現(xiàn)與 IP 層的接口) 。TCP 的傳輸服務(wù)是通過在收發(fā)雙方創(chuàng)建套接字 Socket 來實(shí)現(xiàn)的;Socket 的地址是通過 IP 地址與端口號(hào)來標(biāo)識(shí)的。每條 TCP 的傳輸連接用發(fā)送端套接字、接收端套接字來表示,是點(diǎn)到點(diǎn)的全雙工通道(全雙工支持同時(shí)的雙向傳輸)運(yùn)行與 TCP 上的應(yīng)用程序包括 FTP、HTTP、SMTP 和 TELNET。在 Internet 內(nèi)部,從主機(jī)傳送到主機(jī)的信息不是一個(gè)恒定的流,而是把數(shù)據(jù)分解成小包,即數(shù)據(jù)包。例如你要發(fā)一分很長的電子郵件(E-mail)給一位朋友,TCP 就將該信息分成很多個(gè)數(shù)據(jù)包,每一個(gè)數(shù)據(jù)包用一序號(hào)和接收地址來標(biāo)記。此外 TCP 還插入一些糾錯(cuò)信息。接著數(shù)據(jù)包被傳過網(wǎng)絡(luò),即把它們傳送給遠(yuǎn)程的主機(jī)這就是 IP 的工作。在另一端 TCP 接收數(shù)據(jù)并檢查錯(cuò)誤。如果有錯(cuò)誤發(fā)生,TCP 就可以要求重發(fā)信息。換句話說,IP 的工作是把原始數(shù)據(jù)(數(shù)據(jù)包)從一端傳送到另一端;TCP 的工作就是管理這種流動(dòng)并確保其數(shù)據(jù)是正確的。把數(shù)據(jù)分解成數(shù)據(jù)包有很多的好處。首先,它允許 Internet 讓很多不同的用戶在同一時(shí)間用同一通訊線路。因?yàn)檫@些數(shù)據(jù)包不必一起輸送,所以通訊線路可以載著所有類型的數(shù)據(jù)包按它們自己的路徑從一地到另一地。就如同一條高速公路上,各類汽車(即使它們開向不同的地方)都在公共道路上行駛。當(dāng)數(shù)據(jù)包傳輸時(shí),它們沿規(guī)定的路由從主機(jī)到主機(jī),一直到它們到達(dá)最終目的地。這意味著 Internet 很具靈活性。如果一個(gè)特定的連接中斷了,控制數(shù)據(jù)流動(dòng)的計(jì)算機(jī)通常可以找到另一條路由。事實(shí)上,在單一數(shù)據(jù)傳輸中,多個(gè)數(shù)據(jù)包完全可能沿不同的路由傳輸。當(dāng)條件改變時(shí),網(wǎng)絡(luò)可獲得當(dāng)時(shí)最好的連接。如當(dāng)網(wǎng)絡(luò)的某一部分過載,數(shù)據(jù)包可以改變路線去走那些比較空閑的線路。用數(shù)據(jù)包傳輸?shù)牧硪粋€(gè)好處是,當(dāng)某處出錯(cuò),只須重新傳送單個(gè)數(shù)據(jù)包,而不是整個(gè)信息。這樣會(huì)大大加快 Internet 的傳輸總速度。這種靈活性產(chǎn)生很高的可靠性。Internet 運(yùn)行非常好,雖然所有數(shù)據(jù)包都必須通過很多計(jì)算機(jī),但它可以用幾秒鐘就把一個(gè)文件從一主機(jī)傳輸?shù)搅硪恢鳈C(jī),盡管它們相距很遠(yuǎn)。2.1.3 IP 協(xié)議網(wǎng)際網(wǎng)絡(luò)協(xié)議(IP)用于數(shù)據(jù)報(bào)交換網(wǎng)絡(luò)互連系統(tǒng)種,是 TCP/IP 協(xié)議堆棧所采用的傳輸協(xié)議。IP 協(xié)議的基本數(shù)據(jù)形態(tài)是數(shù)據(jù)元(datagram) ,一般都成為數(shù)據(jù)報(bào),此協(xié)議提供了從來源主機(jī)到目的主機(jī)之間數(shù)據(jù)報(bào)的傳輸機(jī)制。IP 數(shù)據(jù)報(bào)中攜帶這來源地址和目的地址,利用這些地址數(shù)據(jù),可將數(shù)據(jù)報(bào)傳輸?shù)侥康闹鳈C(jī)。IP 協(xié)議具有數(shù)據(jù)報(bào)分割以及重組機(jī)制,需要的時(shí)候可以將數(shù)據(jù)報(bào)作適當(dāng)?shù)姆指钜约爸亟M,以便能夠在網(wǎng)絡(luò)中傳輸。IP 協(xié)議是網(wǎng)絡(luò)層協(xié)議,它是一種不可靠的,無連接導(dǎo)向的協(xié)議,無論是端對(duì)端或者路由器對(duì)路由器,都不提供可靠的傳輸,也不會(huì)提供確認(rèn)信息,除了報(bào)頭校驗(yàn)和外,IP 協(xié)議本身沒有數(shù)據(jù)的錯(cuò)誤控制機(jī)制,一旦數(shù)據(jù)發(fā)生錯(cuò)誤或者未能完整的接收,都不能重傳。甚至即使是只有一個(gè)字節(jié)發(fā)生錯(cuò)誤或者沒有收到,也必須將整個(gè)數(shù)據(jù)報(bào)都丟棄。雖然,IP 協(xié)議提供了數(shù)據(jù)報(bào)的傳輸機(jī)制,但是并沒有提供傳輸?shù)目煽啃?、流量控制、順序性服?wù)機(jī)制,它所提供的只是最佳化的傳輸服務(wù)。2.1.4 TCP/IP 模型習(xí)慣上,人們把 Internet 的通訊協(xié)議籠統(tǒng)地稱為 TCP/IP 協(xié)議,也有人把Internet 稱為 TCP/IP 網(wǎng)或 TCP/IP Internet 網(wǎng)。在這種意義下,Internet 的TCP/IP 協(xié)議可以說就是基于四種模型的協(xié)議:即應(yīng)用層、傳輸層、網(wǎng)絡(luò)層和網(wǎng)絡(luò)訪問層。其中網(wǎng)絡(luò)訪問層又分為網(wǎng)絡(luò)接口層(鏈路層)和最基礎(chǔ)的物理層。所以也可以說 Internet 的網(wǎng)絡(luò)協(xié)議是基于五層模型的協(xié)議。根據(jù) TCP/IP 協(xié)議,互聯(lián)網(wǎng)分為 4 層,加上最底層的硬件層一共是 5 層應(yīng)用層(第五層)傳輸層(第四層)網(wǎng)絡(luò)層(第三層)鏈路層(第二層)物理層(第一層)圖 2-1 TCP/IP 協(xié)議分層1)物理層:物理層的任務(wù)是把幀中的各位從一個(gè)節(jié)點(diǎn)移往下一個(gè)節(jié)點(diǎn)。這一層的協(xié)議也取決于鏈路,而進(jìn)一步取決于鏈路真正的傳輸介質(zhì)。物理層提供了一個(gè)基本機(jī)制:對(duì)二進(jìn)制數(shù)據(jù)(比特)進(jìn)行編碼(發(fā)送到物理介質(zhì))和解碼(從物理介質(zhì)接收) ,例如 10Mbit/s(bit/s 指比特每秒)以太網(wǎng)的曼徹斯特編碼、光纖分布式數(shù)據(jù)接口(Fiber Distributed data Interface,簡稱 FDDI)的 4B/5B 編碼;物理層也負(fù)責(zé)通知第二層(鏈路層)何時(shí)訪問介質(zhì)。物理層以比特流的方式傳送來自鏈路層的數(shù)據(jù),而不理會(huì)數(shù)據(jù)的含義或格式;同樣,它接收數(shù)據(jù)以后,不加分析直接傳給鏈路層。物理層也定義與介質(zhì)的物理連接機(jī)制,但不是介質(zhì)本身,按照參考模型的原理,實(shí)際的物理介質(zhì)在物理層之下。2)鏈路層:鏈路層的任務(wù)是把完整的幀從一個(gè)網(wǎng)絡(luò)組建移往某個(gè)緊鄰的組件,負(fù)責(zé)管理數(shù)據(jù)格式。它定義了將數(shù)據(jù)組成正確幀的規(guī)程和在網(wǎng)絡(luò)中傳輸幀的規(guī)程,幀是指一串?dāng)?shù)據(jù),它是數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)膯挝弧>W(wǎng)絡(luò)層在源端和目的端之間經(jīng)由一系列分組交換機(jī)(路由器)路由分組。為了將一個(gè)分組從一個(gè)節(jié)點(diǎn)(主機(jī)或分組交換機(jī))移往其路徑上的下一個(gè)節(jié)點(diǎn),網(wǎng)絡(luò)層必須依賴由鏈路層提供的服務(wù)。鏈路層提供了對(duì)鏈路的管理,鏈路層提供的服務(wù)取決于應(yīng)用在鏈路上的特定鏈路層協(xié)議。分組從源端到目的端一般需要經(jīng)過多個(gè)鏈路,每個(gè)分組沿其路徑到達(dá)不同鏈路是,可能有不同的鏈路層協(xié)議來處理。既是說,IP 從不同的鏈路層協(xié)議獲取的服務(wù)會(huì)不一樣。鏈路層負(fù)責(zé)監(jiān)督相鄰網(wǎng)絡(luò)節(jié)點(diǎn)的信息流動(dòng),它使用檢錯(cuò)或糾錯(cuò)技術(shù)來確保正確的傳輸:當(dāng)鏈路檢測到錯(cuò)誤時(shí),它請(qǐng)求重發(fā),或是根據(jù)情況糾正。此外,鏈路層還要解決流量控制的問題。3)網(wǎng)絡(luò)層:網(wǎng)絡(luò)層提供越過多個(gè)網(wǎng)絡(luò)的選路功能,為端點(diǎn)提供無連接的數(shù)據(jù)報(bào)訪問,并定義端到端通過整個(gè)互聯(lián)網(wǎng)網(wǎng)絡(luò)的尋址功能。網(wǎng)絡(luò)層負(fù)責(zé)尋址、打包以及從一臺(tái)計(jì)算機(jī)通過一個(gè)或多個(gè)路由器到最終目標(biāo)的包轉(zhuǎn)發(fā)機(jī)制。網(wǎng)絡(luò)層的核心協(xié)議有:IP、ARP/RARP、ICMP 和 IGMP。IP 協(xié)議(Internet protocol,簡稱 IP)是 TCP/IP 模型的核心,它是一個(gè)路由協(xié)議,負(fù)責(zé) IP 尋址、路由選擇、分段及包重組。4)傳輸層:傳輸層給應(yīng)用提供在其客戶端和服務(wù)器之間傳輸應(yīng)用層消息的服務(wù)。即傳輸層負(fù)責(zé)為兩個(gè)用戶進(jìn)程之間建立、管理和拆除可靠而又有效的端到端連接。傳輸層的核心協(xié)議是傳輸控制協(xié)議 TCP(Transmission Control Protocol)和用戶數(shù)據(jù)報(bào)協(xié)議 UDP(User Datagram Protocol) 。TCP 給其應(yīng)用提供面向連接的服務(wù),該服務(wù)包括應(yīng)用層消息往目的地有保證的遞送以及流量控制(既發(fā)送端和接收端之間速度的匹配) 。TCP 還把長數(shù)據(jù)塊分割成較小的段,并提供擁塞控制機(jī)制。這樣當(dāng)網(wǎng)絡(luò)處于擁塞狀態(tài)時(shí),源端會(huì)抑制其發(fā)送速率。UDP 協(xié)議給其應(yīng)用提供無連接的服務(wù),是一個(gè)幾乎沒有任何修飾的服務(wù)。5)應(yīng)用層:應(yīng)用層負(fù)責(zé)支持網(wǎng)絡(luò)應(yīng)用,直接與用戶或應(yīng)用程序通信,它給應(yīng)用程序提供訪問其他層服務(wù)的能力并定義應(yīng)用程序用于交換數(shù)據(jù)的協(xié)議。應(yīng)用層包括許多協(xié)議,例如支持 Web 的 HTTP、支持文件傳送的 FTP、支持電子郵件的 SMTP 協(xié)議都建立在這一層。TCP/IP 應(yīng)用程序使用的應(yīng)用層接口有 Windows 套接字(Winsock) 、NetBIOS 等。Windows 套接字提供 Windows 下的標(biāo)準(zhǔn)應(yīng)用編程接口;NetBIOS 是工業(yè)標(biāo)準(zhǔn)接口,用于訪問協(xié)議服務(wù),如會(huì)話、數(shù)據(jù)報(bào)和名字解析等。Internet 的核心層是網(wǎng)絡(luò)層和傳輸層,相應(yīng)的核心協(xié)議是 IP 協(xié)議和 TCP協(xié)議。IP 協(xié)議的主要功能包括無連結(jié)數(shù)據(jù)報(bào)傳送數(shù)據(jù)報(bào)尋徑以及差錯(cuò)處理三部分。IP 協(xié)議的特點(diǎn)是點(diǎn)到點(diǎn)的,IP 對(duì)等實(shí)體間的通信不經(jīng)過中間機(jī)器,對(duì)等實(shí)體所在的機(jī)器位于同一物理網(wǎng)絡(luò),對(duì)等機(jī)器之間有直接的物理連接。IP 層的主要功能是屏蔽下面物理層的差別,向上一層提供一致的數(shù)據(jù)格式。所有要傳輸?shù)臄?shù)據(jù),被按照一定的格式分組封裝層 IP 數(shù)據(jù)報(bào),數(shù)據(jù)報(bào)單元通過尋徑等機(jī)制進(jìn)行傳輸,在接收方數(shù)據(jù)報(bào)進(jìn)行重組,得到最初要傳送的數(shù)據(jù)。由于 IP 協(xié)議是不可靠的數(shù)據(jù)傳輸協(xié)議,由于網(wǎng)絡(luò)的擁塞而發(fā)生的數(shù)據(jù)丟失等情況是不可避免的,因此 Internet 還必須有一定的控制重傳機(jī)制,這就是差錯(cuò)與控制報(bào)文協(xié)議(ICMP)。盡管計(jì)算機(jī)通過安裝 IP 軟件,從而保證了計(jì)算機(jī)之間可以發(fā)送和接收數(shù)據(jù),但 IP 協(xié)議還不能解決數(shù)據(jù)分組在傳輸過程中可能出現(xiàn)的問題。因此,若要解決可能出現(xiàn)的問題,還需要 TCP 協(xié)議來提供可靠的并且無差錯(cuò)的通信服務(wù)。TCP協(xié)議被稱作一種端對(duì)端協(xié)議。這是因?yàn)樗鼮閮膳_(tái)計(jì)算機(jī)之間的連接起了重要作用:當(dāng)一臺(tái)計(jì)算機(jī)需要與另一臺(tái)遠(yuǎn)程計(jì)算機(jī)連接時(shí),TCP 協(xié)議會(huì)讓它們建立一個(gè)連接、發(fā)送和接收數(shù)據(jù)以及終止連接。傳輸控制協(xié)議 TCP 協(xié)議利用重發(fā)技術(shù)和擁塞控制機(jī)制,向應(yīng)用程序提供可靠的通信連接,使它能夠自動(dòng)適應(yīng)網(wǎng)上的各種變化。即使在 Internet 暫時(shí)出現(xiàn)堵塞的情況下,TCP 也能夠保證通信的可靠。互聯(lián)網(wǎng)是一個(gè)龐大的國際性網(wǎng)絡(luò),網(wǎng)路上的擁擠和空閑時(shí)間總是交替不定的,加上傳送的距離也遠(yuǎn)近不同,所以傳輸數(shù)據(jù)所用時(shí)間也會(huì)變化不定。TCP協(xié)議具有自動(dòng)調(diào)整“超時(shí)值“的功能,能很好地適應(yīng) Internet 上各種各樣的變化,確保傳輸數(shù)值的正確。IP 協(xié)議只保證計(jì)算機(jī)能發(fā)送和接收分組數(shù)據(jù),而 TCP 協(xié)議則可提供一個(gè)可靠的、可流控的、全雙工的信息流傳輸服務(wù)。雖然 IP 和 TCP 這兩個(gè)協(xié)議的功能不盡相同,也可以分開單獨(dú)使用,但它們是在同一時(shí)期作為一個(gè)協(xié)議來設(shè)計(jì)的,并且在功能上也是互補(bǔ)的。只有兩者的結(jié)合,才能保證 Internet 在復(fù)雜的環(huán)境下正常運(yùn)行。凡是要連接到 Internet 的計(jì)算機(jī),都必須同時(shí)安裝和使用這兩個(gè)協(xié)議,因此在實(shí)際中常把這兩個(gè)協(xié)議統(tǒng)稱作 TCP/IP 協(xié)議。2.2 Socket 技術(shù)2.2.1 Socket 基本概念20 世紀(jì) 80 年代初,美國政府的高級(jí)研究機(jī)構(gòu)(ARPA)給加利福尼亞大學(xué)Berkeley 分校提供資金,讓他們?cè)?UNIX 操作系統(tǒng)下實(shí)現(xiàn) TCP/IP 協(xié)議。在這個(gè)項(xiàng)目中,研究人員為 TCP/IP 網(wǎng)絡(luò)通信開發(fā)了 API(應(yīng)用程序接口) 。這個(gè) API稱為 Socket 接口。如今 Socket 接口是 TCP/IP 網(wǎng)絡(luò)最為通用的 API,也是在Internet 上進(jìn)行應(yīng)用開發(fā)最為通用的 API。Internet 是有不同種類的網(wǎng)絡(luò)互連而成,實(shí)現(xiàn)不同網(wǎng)絡(luò)及計(jì)算機(jī)之間交互操作的關(guān)鍵問題是由 TCP/IP 協(xié)議來解決的。TCP/IP 協(xié)議的核心是傳輸層協(xié)議(TCP 和 UDP) 、網(wǎng)絡(luò)層協(xié)議(IP)和網(wǎng)絡(luò)接口層,前兩層在操作系統(tǒng)內(nèi)核中實(shí)現(xiàn)。操作系統(tǒng)內(nèi)核是不能直接為一般用戶所感受到的,一般用戶感受到的只有應(yīng)用程序(包括系統(tǒng)應(yīng)用程序) ,即各種應(yīng)用程序構(gòu)成了操作系統(tǒng)的用戶視圖。兩者之間的接口是網(wǎng)絡(luò)編程界面(程序員界面) 。因此,TCP/IP 網(wǎng)絡(luò)環(huán)境下的應(yīng)用程序也不是直接與 TCP/IP 核心打交道,而是與網(wǎng)絡(luò)應(yīng)用編程接口(套接字,socket)打交道,編程接口構(gòu)成了核心協(xié)議的用戶視圖。實(shí)際上,Socket 在計(jì)算機(jī)中提供了一個(gè)通信端口,可以通過這個(gè)端口與任何一個(gè)具有 Socket 接口的計(jì)算機(jī)通信。應(yīng)用程序在網(wǎng)絡(luò)上傳輸,接收的信息都通過這個(gè) Socket 接口來實(shí)現(xiàn)。在應(yīng)用開發(fā)中,就像使用文件句柄一樣,可以對(duì)Socket 句柄進(jìn)行讀、寫操作。可以把 Socket 看成是一根連接線,當(dāng)在兩臺(tái)計(jì)算機(jī)之間建立了一個(gè) Socket 之后,兩臺(tái)計(jì)算機(jī)就可以通過這根連接線來完成信息交互,所做的僅僅是向這根連接線里寫入數(shù)據(jù),再從其中讀出數(shù)據(jù),而不必?fù)?dān)心會(huì)不會(huì)由信息丟失,Socket 會(huì)負(fù)責(zé)照看好數(shù)據(jù)。Socket 用于表達(dá)兩臺(tái)機(jī)器

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論