版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 信號與信息處理綜合應用課程設計</p><p><b> 指 導 書</b></p><p><b> 2011年6月</b></p><p><b> 第一 設計要求</b></p><p><b> 設計題目</b>&l
2、t;/p><p> 基于Socket的即時通訊系統(tǒng)</p><p><b> 設計目的</b></p><p> 通過綜合課程設計,使學生能夠運用《數(shù)字信號處理》、《信號與系統(tǒng)》、《通信原理》、《面向對象的程序設計》、《計算機通信網(wǎng)》、《通信協(xié)議開發(fā)及應用》等課程的知識來設計一個基于Socket的即時通訊系統(tǒng),培養(yǎng)學生的動手能力以及分析問題、
3、解決問題的能力。</p><p><b> 設計要求</b></p><p><b> (一)基本要求</b></p><p> 熟練掌握面向對象的程序設計方法;</p><p> 實現(xiàn)點對點通訊,能進行文字對話傳輸,包括客戶端與服務器端;</p><p> 能對系
4、統(tǒng)參數(shù)進行配置。</p><p><b> ?。ǘ┨岣咭?lt;/b></p><p> 1、實現(xiàn)文件、圖片傳輸;</p><p> 2、語音對話(兩人及兩人以上);</p><p> 3、友好的對話界面。</p><p><b> 進度安排</b></p>
5、<p> 2011年6月7(星期一)上午9:00開始 作課程設計動員和課程設計任務安排。</p><p> 2011年6月7日下午, 為調研、收集資料階段??梢缘綀D書館、書店或網(wǎng)絡上查閱相關資料,主要收集有關網(wǎng)絡編程的基本原理、方法等方面的資料,以及IP協(xié)議、ICMP協(xié)議文本。</p><p> 2011年6月8日至2011年6月17日上午,編寫源程序、上機調試。&l
6、t;/p><p> 2011年6月17日星期五下午(2:00)提交課程任務結題報告,并參加答辯(良、優(yōu))。</p><p><b> 設計提示</b></p><p><b> 系統(tǒng)設計框圖</b></p><p> 注:局域網(wǎng)中任一端點都可作為客戶端或服務器端。</p><
7、p><b> 設計參考資料</b></p><p> TCP/IP網(wǎng)絡編程技巧</p><p><b> Windows編程</b></p><p> Microsoft Visual C++6.0從入門到精通</p><p> DELPHI 網(wǎng)絡編程</p><
8、p><b> 計算機通信網(wǎng)基礎</b></p><p> 綜合課程設計報告書要求</p><p><b> 報告內容</b></p><p><b> 設計目的。</b></p><p><b> 設計內容。</b></p>
9、<p><b> 設計要求。</b></p><p><b> 設計原理。</b></p><p> 軟件設計(附程序流程圖、源程序清單)。</p><p> 調試過程(論述調試中所遇到的各種問題,以及解決這些問題的思路和過程)。</p><p> 實驗結果分析(對設計的系統(tǒng)和運
10、行結果進行簡要分析)。</p><p><b> 體會和建議。</b></p><p> 參考文獻,參考文獻的標注注意一定要符合《科技論文標注國家標準》相關的規(guī)定。</p><p><b> 第二 評分標準</b></p><p> 課程設計的成績從以下4個方面進行考核:</p>
11、<p> 紀律:由指導教師根據(jù)平時考勤、學習態(tài)度及是否遵守設計安排 </p><p><b> 酌情評分;</b></p><p> 答辯:由指導教師統(tǒng)一安排答辯時間及順序,根據(jù)設計內容及論 </p><p> 文提問相關問題,根據(jù)學生的回答決定答辯成績;</p><p> 實作:根據(jù)設計過程中,
12、由指導教師記錄的學生編程及調試的相</p><p> 關情況,以及答辯時學生上機操作的情況進行評分;</p><p> 論文:論文要求包括文獻綜述、開題報告、結題報告及附源程序</p><p> 等內容,并對具體的格式及內容提出要求,根據(jù)學生完成論文的情況及內容給出相應成績。</p><p> 其中紀律占20%,答辯占40%,實作占2
13、0%,論文占20%。</p><p> 按照百分比給出優(yōu)、良、中、及格、不及格五個等級。</p><p><b> 第三 原理簡介</b></p><p> 1 TCP/IP簡介</p><p> TCP/IP的歷史要追溯到70年代中期,當時ARPA為了實現(xiàn)異種網(wǎng)之間的互連(interconnection)與互通
14、(intercommunication),大力資助網(wǎng)間網(wǎng)技術的研究和開發(fā),于1977年到1979年推出目前形式的TCP/IP體系結構和協(xié)議規(guī)范.到今天,TCP/IP技術以及Internet網(wǎng)間網(wǎng)已經(jīng)為廣大計算機工作者,機算機廠商和機算機用戶所接受.據(jù)統(tǒng)計,到1990年,Internet以包含遍布歐美的五千個活動網(wǎng)絡,超過三十萬臺機算機.作為一種事實上的工標準,TCP/IP技術方興未艾.</p><p> 2 T
15、CP/IP的網(wǎng)絡分層結構</p><p> 對TCP/IP協(xié)議來說,TCP提供傳輸層服務,IP提供網(wǎng)絡層服務.TCP/IP協(xié)議組(或Internet協(xié)議組)的分層結構及其與OSI模型的對應關系如圖4所示.圖中有關協(xié)議的名稱及其基本含義如下:</p><p> (1) TCP. 為傳輸控制協(xié)議(Transmission Control Protocol).它是提供給用戶進程的
16、一個可靠的全雙工字節(jié)流的面向連接的協(xié)議.大多數(shù)Internet應用程序使用TCP.因為TCP使用IP,所以整個Internet協(xié)議組也常稱為TCP/IP協(xié)議組.</p><p> (2) UDP. 為用戶數(shù)據(jù)報協(xié)議 (User Datagram Protocol).</p><p> (3) ICMP. 為網(wǎng)間報文控制協(xié)議 (Internet Control Message Proto
17、col).</p><p> (4) IP. 網(wǎng)間協(xié)議 (Internet Protocol). IP協(xié)議是為TCP,UDP和ICMP提供分組發(fā)送服務協(xié)議.</p><p> (5) ARP. 地址轉換協(xié)議.</p><p> (6) RARP. 反向地址轉換協(xié)議.</p><p> 3 Socket編程界面</p>&
18、lt;p> (1) Socket 原理</p><p> Socket編程界面由4BSD UNIX首先提出,目的是解決網(wǎng)間網(wǎng)進程通信問題.Socket接口為進程間通信提供了一種新的手段,它不但能用于同一機器中的進程之間的通信,而且支持網(wǎng)絡通信功能.Socket具有類型,反應了對用戶透明的通信特性.</p><p> 一個完整的Socket連接用一個相關描述:</p>
19、<p> { 協(xié)議,本地地址,本地端口,遠地地址,遠地端口 }</p><p> Socket 是面向客戶-服務器模型而設計的,針對客戶和服務器程序提供不同的Socket系統(tǒng)調用.</p><p> (2) Socket系統(tǒng)調用</p><p> 不管Socket內部機制如何,它提供給應用程序員的最終界面是一組系統(tǒng)功能調用.下面,我們一一給出重
20、要的Socket系統(tǒng)調用.</p><p> 1. 創(chuàng)建 Socket ----- socket()</p><p><b> 調用格式如下:</b></p><p> sockid = socket (af,type,protocol)</p><p> af : 地址族,指本socket所用地址類型.<
21、/p><p> type : 類型,指創(chuàng)建socket的應用程序所希望的通信服務器類型.</p><p> protocol : 協(xié)議,指本socket請求的協(xié)議.</p><p> 2. 指定本地地址 ---- bind()調用</p><p> bind()將本地socket地址與所創(chuàng)建的socket聯(lián)系起來,即將本soc
22、ket地址賦予socket,以指定本地半相關.bind()的作用相當于給socket命名,調用格式為:</p><p> bind (sockid,localaddr,addrlen)</p><p> sockid : socket號.</p><p> localaddr : 本地socket地址.</p><p> addrle
23、n : 地址長度.</p><p> 3. 建立socket連接 ---- connect () 與 accept ()調用</p><p> 這兩個系統(tǒng)調用用于完成整個相關的建立.其中connect用于建立連接 .調用格為:</p><p> connect (sockid,destaddr,addrlen)</p><p> de
24、staddr : 指向對方socket地址(信宿地址)結構的指針.</p><p> accept : 用于面向連接的服務器,其調用格式為:</p><p> newsock = accept (sockid,clientaddr,paddrlen)</p><p> clientaddr : 指向客戶socket地址指針.</p><p&
25、gt; paddrlen : 客戶socket地址長度.</p><p> 4. listen() 調用</p><p> 此調用用于面向連接服務器,表明它愿意接收連接,listen()在accept()之前調用,格式為: </p><p> listen (sockid,quelen)</p><p> quelen : 請求
26、隊列長度.</p><p> 5. 發(fā)送數(shù)據(jù) ---- write(),writev(),send()與sendto(),sendmsg()</p><p> 用于socket數(shù)據(jù)發(fā)送的系統(tǒng)調用一共有五個,其中三個,write(),writev()和send()用于面向連接傳輸,其余兩個用于無連接傳輸.面向連接的調用可以不指定信宿地址,而無連接的調用必須指定.假如無連接socket的雙
27、方均調用過connect(),可以認為是建立有連接的socket,也可以面向連接調用發(fā)送數(shù)據(jù).</p><p> 三個面向連接調用三者的格式大致相同:</p><p> write (sockid,buff,bufflen) : 緩沖發(fā)送</p><p> writev (sockid,iovector,vectorlen) : 集中發(fā)送</p>
28、<p> send (sockid,buff,bufflen,flags) : 可控緩沖發(fā)送</p><p> 其中buff指向發(fā)送緩沖區(qū)的指針,bufflen是發(fā)送緩沖區(qū)大小.</p><p> 用于無連接數(shù)據(jù)發(fā)送的調用有兩個:</p><p> sendto (sockid,buff,bufflen,flags,dsadd,addrlen)&
29、lt;/p><p> sendmsg (sockid,message,flags):可控集中無連接發(fā)送.</p><p> 6. 接收數(shù)據(jù) ---- read(),readv(),recv()與recvfrom(),recvmsg()</p><p> 接收數(shù)據(jù)與發(fā)送數(shù)據(jù)系統(tǒng)調用是一一對應的,兩者參數(shù)的最大區(qū)別是,前者buffer是一個指針,其所指單元初值為欲讀數(shù)
30、據(jù)長度,調用后的值是實際讀出的值.</p><p> 4 客戶--服務器模型的Socket實現(xiàn)框架</p><p> 1)客戶--服務器模型時序圖</p><p> 下圖是面向連接客戶--服務器模型的典型時序圖</p><p> 服務器 客戶</p><p>
31、 socket() socket()</p><p> bind() bind()</p><p> listen() </p><p> accept() 等待客戶連接請求 </p><p> 阻塞
32、160; <━━━━━━━━━━━━━━━ connect()</p><p> read() <━━━━━━━━━━━━━━━> write()</p><p> 2)服務器socket地址的確定</p><p> 在客戶--服務器模型中,所有的作用者都是客戶首先發(fā)起的(如連接請求,服務請求等),因此客戶必須要知道服務器socket地址,另
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園即時通訊設計與開發(fā)課程設計
- 計算機綜合課程設計--即時通訊系統(tǒng)的設計與實現(xiàn)
- 即時通訊畢業(yè)設計--企業(yè)內部即時通訊系統(tǒng)的設計
- 即時通訊系統(tǒng)開題報告
- 文思海輝即時通訊系統(tǒng)設計
- 即時通訊聊天系統(tǒng) 畢業(yè)設計
- 基于JXTA的即時通訊系統(tǒng)應用.pdf
- 學術即時通訊mathq
- 安卓即時通訊
- 即時通訊系統(tǒng)---畢業(yè)論文
- 文思海輝即時通訊系統(tǒng)
- 基于Android即時通訊系統(tǒng)的設計與實現(xiàn).pdf
- 基于android系統(tǒng)的即時通訊系統(tǒng)設計與實現(xiàn).pdf
- 即時通訊工具畢業(yè)設計
- 基于AVS的即時通訊系統(tǒng)的設計與實現(xiàn).pdf
- 基于Java的即時通訊系統(tǒng)的設計與實現(xiàn).pdf
- 基于Android平臺即時通訊系統(tǒng)設計與實現(xiàn).pdf
- 基于java的即時通訊的設計與開發(fā)
- 網(wǎng)絡即時通訊系統(tǒng)的設計與實現(xiàn).pdf
- 基于WPF的即時通訊系統(tǒng)的設計與實現(xiàn).pdf
評論
0/150
提交評論