• /  31
  • 下載費用: 27.9積分  

基于Linux網絡聊天室的設計3.doc

'基于Linux網絡聊天室的設計3.doc'
? : 方 建 學號:109074359 班級:網絡工程1031背景1.1 開發背景在網絡無所不在的今天,在Internet上,有ICQ、MSN、Gtalk、OICQ等網絡聊天軟件,極大程度上方便了處于在世界各地的友人之間的相互聯系,也使世界好像一下子縮小了,不管你在哪里,只要你上了網,打開這些軟件,就可以給你的朋友發送信息,不管對方是否也同時在線,只要知道他有。Linux 操作系統作為一個開源的操作系統被越來越多的人所應用,它的好處在于操作系統源代碼的公開化!只要是基于GNU公約的軟件你都可以任意使用并修改它的源代碼。但對很多習慣于Windows操作系統的人來說,Linux的操作不夠人性化、交互界面不夠美觀,這給Linux操作系統的普及帶來了很大的阻礙。因此制作一個Linux 操作系統下的擁有人性化界面的實時通訊工具,將給那些剛剛接觸Linux操作系統的用戶帶來極大的方便,而且通過設計這樣的一個應用程序還能更好的學習網絡編程知識和掌握LINUX平臺上應用程序設計開發的過程,將大學四年所學知識綜合運用,以達到檢驗學習成果的目的1.2 linux介紹 Linux是一種針對PC計算機和工作站的操作系統,它具有像Windows和Mac那樣的功能齊全的圖形用戶界面(GUI,Graphical User Interface)。Linus Torvald和其它的遍布世界各地的編程人員共同開發的。作為一種操作系統,它具有與Unix,Mac,Windows和Windows NT同樣的功能。 提到Linux我們不能不提GNU和Unix。Richard M.Stallman建立的自由軟件聯盟出版了兩種許可證,GNU通用公共許可證(GNU Gneral Public License,GPL)和GNU函數庫通用公共許可證(GNU Library Gneral Public License,LGPL)。大部分GNU工程的軟件和文檔是以GNU通用公共許可證發行的,但是有一些庫是以GNU函數庫通用公共許可證發行的。按照GNU通用公共許可證的規定,Linux的源代碼可以自由獲取,這滿足了我們學習該系統的強烈愿望。GPL充分體現了Stallman的思想:只要用戶所做的修改是同等自由的,用戶可以自由地使用、拷貝、查詢、重用、修改甚至發布這個軟件。通過這種方式,GPL保證了Linux(以及同一許可證下的大量其他軟件)不僅現在自由可用,而且皮后經過任何修改這后都仍然可以自由使用。 Unix是由AT—T貝爾實驗室的Ken Thompson和Dennis Ritchie于1969年在一臺已經廢棄了的PDP-7上開發的;最初它是一個用匯編語言寫成的單用戶操作系統。后來,他們又在PDP-11上用C語言重新編寫(發明C語言的部分目的就在于此),把Unix做成為了一個文本處理系統,這使Unix在貝爾實驗室得到廣泛的應用。Unix的最初版本免費提供給許多知名的大學的計算機系使用。加州大學伯克利分校的計算機系就是其中的一名,并地Unix進行了修改增加了許多新的特點,這就是主為人知的BSC版本的Unix。與此同時,其它獨立開發的Unix版本也開始萌生。Unix不斷發展了,各種版本被應用到不同的計算機使用。而Linux最初是專門為基于Intel的個人計算機設計的。(1)Linux的昨天 1991年,一名叫Linus Torvalds的芬蘭大學生對Unix各種版本對于80386類的機器的脆弱支持十分不滿,他決定要開發出一個全功能的、支持POSIX標準的、類Unix的操作系統核,該系統吸收了BSD和System V 的優點,同進摒棄了它們的缺點。他獨立把這個核開發到0.02版,這個版本已經可以運行gcc、bash和很少的一些應用程序。后來,他又開始了在因特網上尋求廣泛的幫助。 1994年,Linux已經升級到1.0版本。它的源代碼量也呈指數形式增長,實現了基本的TCP/IP功能,此時Linux已經擁有大約10萬的用戶。(2) Linux的今天 作為一各服務器級的操作系統,Linux已經成熟了?,F在的Linux核由150多行代碼組成,能作為Web服務器平臺,也為越來越多的商業用戶提供文件和打印服務。它既被當作服務器的一種候選平臺,也被當作一種強壯而安全的防火墻。 Linux的企業級特性,比如支持多處理器、支持大型文件系統、日志文件系統以及密集型計算和高可用性集群技術,也逐步成熟。 桌面上的Linux也在繼續完善。KDE桌面提供的圖形用戶界面在易用性和可配置方面都能和微軟的Windows相媲美。(3) Linux的明天 Linux最強大的生命力在于其公開的開發過程。每個人都有可以自由獲取核源程序,每個人都有要不得以運載源程序加以修改,而后他人也可以自由獲取你修改后的源程序。Linux這種獨特的自由流暢的開發模型已被命名為bazaar(集市模型)。Bazaar開發模型通過重視實驗,征集并充分利用早期的反饋,對巨大數量的腦力資源進行平衡配置,可以開發出更優秀的軟件。本聯盟就是想通過bazaar開發模型,在網上召集一些Linux的愛好者,開發出更優秀的操作系統或軟件。 2 技術說明2.1 TCP和UDP通信的概念2.1.1 UDP通信 UDP是用戶數據報協議的簡稱。它是以中午連接的邏輯通信信道。UDP在傳送數據之前不需要先建立連接,遠地主機的傳輸層在收到udp數據報后,不需要給出任何確認,所以不能保證其交付時可靠。它的特點是:因無連接,故提供的是不可靠的信道,但也是因無連接而具有很好的傳輸效率。 2.1.2 TCP通信 TCP是傳輸控制協議的簡稱,它是提供一條全雙工的、可靠的信道。TCP提供面向連接的服務,在傳送數據之前必須先建立連接,數據傳送結束后要釋放連接。TCP不提供廣播和多播服務。 由于TCP要提供可靠的、面向連接的運輸服務,所以不可避免地增加了許多系統開銷,比如確認、流量控制、計時器以及連接管理等都需要占用許多系統的時空資源。 兩個計算機之間如果使用TCP通信,其連接過程需要三次握手實現,如實驗圖1-1所示。圖1-1 用三次握手建立TCP連接 對于兩個計算機之間連接的釋放過程也需要類似的3次握手的互相確認的過程,如實驗圖1-2所示。圖1-2 TCP連接的釋放過程2.2客戶/服務器模型在客戶/服務器模型中,多個相互通信的計算機都作為客戶端,與網絡服務器進行連接,并通過服務器進行信息的傳遞。所以多個客戶端之間的通信就變為了客戶端與服務端的通信。所以,采用客戶/服務器模型進行網絡聊天需要分別編寫服務器端和客戶端的程序,服務器和客戶端之間相互通信的同步關系和各自的程序流程如實驗圖1-3所示。圖1-3 Socket通信流程圖2.3網絡套接字(socket)的概念 1 介紹 上世紀中后期, 在美國國防部高研署(DARPA)將TCP /IP 的軟件提供給加利尼亞大學Berkeley 分校后, TCP /IP。省略部分。條消息結束及下一條消息的開始;3) 輸入exit則推出運行。開始運行后,服務器端窗口的執行順序為:1) 鍵入“Hello,world!”發送給客戶端2) 接收客戶端發來的兩個消息;3) 鍵入“OK!”發送個客戶端;4) 輸入exit結束。服務器端運行結果如實驗圖4-1所示。圖4-1 服務器端窗口開始運行后,客戶端窗口的執行順序為:1) 接收服務器端發來的消息“Hello,world!”;2) 發送消息“hello!“和”Good!”給服務器端;3) 接收服務器發來的消息“OK!”;4) 鍵入exit結束??蛻舳诉\行結果如實驗圖4-2所示。圖4-2 客戶端窗口上述運行結果表明,客戶端與服務器端之間傳遞的消息已被對方成功接收。 袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羈膂莈蚅袇膁蒀袀螃膀薂蚃肂腿節衿羈腿莄螞襖羋蕆袇螀芇蕿蝕聿芆艿蒃肅芅蒁螈羈芄薃薁袆芃芃螆螂芃蒞蕿肁節蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈螞螂羂薁袈肀肁芀蟻羆肁莃袆袂肀薅蠆袈聿蚇蒂膇肈莇螇肅肇葿薀罿肆薂螆裊肅芁薈螁膅莃螄聿膄蒆薇袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈
關 鍵 詞:
設計 網絡 linux 聊天室 基于
 天天文庫所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:基于Linux網絡聊天室的設計3.doc
鏈接地址: http://www.094347.live/p-55568672.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服點擊這里,給天天文庫發消息,QQ:1290478887 - 聯系我們

本站為“文檔C2C交易模式”,即用戶上傳的文檔直接賣給(下載)用戶,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有【成交的100%(原創)】。本站是網絡服務平臺方,若您的權利被侵害,侵權客服QQ:1290478887 歡迎舉報。

[email protected] 2017-2027 http://www.094347.live 網站版權所有

粵ICP備19057495號 

收起
展開
有没有苹果软件赚钱的 东方财富股票行情查询 山东十一选五购买平台 类似pc蛋蛋网站 上海天天彩选4开奖结果查询r一上海 海南4 1四字游 山西十一选五官方网站 中彩网双色球 20选5复式投注计算器 最靠谱的投资理财平台 四川快乐12遗漏五真准网