freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于ip網(wǎng)絡公務電話系統(tǒng)設計與實現(xiàn)畢業(yè)論文-全文預覽

2025-07-17 21:05 上一頁面

下一頁面
  

【正文】 對于組呼通話,主叫端撥號后不會播放回鈴音;通話過程中,被叫端先掛機,主叫端不會播放忙音;主叫端先掛機,所有被叫端都會播放忙音。對端15秒內(nèi)未摘機通話,撥號超時,話機播放忙音。、是此次仿真系統(tǒng)軟件的三個界面: 撥號界面 系統(tǒng)設置界面 話機記錄界面第二節(jié) 初始化配置IP公務電話仿真系統(tǒng)必須在配置好每個電話對應的號碼、組號等信息才能正常使用。整個程序都是從IPPHONEdlg類開始和結束的,在消息出發(fā)機制的作用下,不停的調(diào)用各個類,完成各項功能,最終實現(xiàn)IP公務電話的功能。如果不是HOLDING_TALKING,則進行掛機等一系列操作。如果不是HOLDING_TALKING,則進行掛機等一系列操作。然后以同樣的方式做循環(huán),每次將緩存順序的變量自加,這樣就實現(xiàn)了向每個主機發(fā)送信令包。1.主叫端處理首先創(chuàng)立一個信令包結構體的對象,然后將本機的信息寫入這個信令包中。我們同樣先將本機的信息寫入一個信令包中,判斷話機是否進入HOLDING_TALKING狀態(tài)并判斷話機振鈴是否超時。在單呼主叫端通話進程中,我們首先也是將本機的信息寫入一個信令包中,然后判斷此時話機的狀態(tài),如果不是HOLDING_TALKING,則進行掛機等一系列操作。由流程圖我們可以知道,用戶摘機,撥號,掛機等操作都是在用戶的撥號界面(主界面)進行的,所以我們要實現(xiàn)通話流程,就應該在IPPHONEDlg類中的按鍵函數(shù)中實現(xiàn)。CSignalAcpSocket和CsignalSerSocket類CSignalAcpSocket和CsignalSerSocket類是服務器端的程序它們的主要成員函數(shù)有:OnAccept(int nErrorCode)、OnClose(int nErrorCode) 和OnSend(int nErrorCode) OnAccept(int nErrorCode):調(diào)用了CasyncSocket的成員函數(shù)OnAccept(nErrorCode),通知監(jiān)聽套接字現(xiàn)在可以調(diào)用Accept成員函數(shù)來接收懸掛的連接請求,再調(diào)用Accept成員函數(shù)接受請求。OnConnect(int nErrorCode):調(diào)用了CasyncSocket的成員函數(shù)OnConnect,實現(xiàn)客戶機向服務器套接字的連接請求。對于Socket的WSAStartup和bind的綁定,可以用create函數(shù)調(diào)用替代,IP地址類型轉(zhuǎn)換、主機名和IP地址轉(zhuǎn)換的過程中許多復雜的變量類型都被簡化成字符串和整數(shù)操作。第二節(jié) 用于信令傳輸?shù)拿嫦蜻B接的套接字由第一章我們可以發(fā)現(xiàn),面向非連接的套接字的客戶機與服務器的流程是一樣的,所以在編寫面向非連接的套接字時,我們可以將所有客戶服務器操作用同樣的函數(shù)完成。 JoinMulticast():這是用于組播的套接字綁定,先定義一個SOCKADDR_IN的對象addr,然后對里面的成員進行賦值,然后進行了組播的設置,并且屏蔽掉本機數(shù)據(jù),最后綁定各端口的套接字。以下是實現(xiàn)以上函數(shù)所實現(xiàn)的功能介紹:Create(UINT LocalPort,UINT RemotePort,char * pAddr):首先進行了版本協(xié)商,這也是最高版本,支持異步套接字的函數(shù)。并分析了12個類和3個結構體在系統(tǒng)結構中所完成的功能,介紹了信令機制設計,界面設計、話機狀態(tài)設計以及線程設計。 狀態(tài)轉(zhuǎn)移圖第七節(jié) 系統(tǒng)程序線程設計本系統(tǒng)設計中,我們采用了多線程技術對語音采集、語音播放、信令處理、鈴音播放、撥號采集、信息提示等等進行處理,利用多個線程協(xié)同完成話機的各個功能。 主界面系統(tǒng)設置界面的設計: 系統(tǒng)配置界面通話記錄界面: 通話記錄界面第六節(jié) 話機狀態(tài)設計在話機狀態(tài)設計中,我們充分考慮了公務IP電話的各個狀態(tài),設計了話機的狀態(tài)標志。具體實現(xiàn)是在CsignalDeal類中定義了SignalPacket的結構體。CSoundSocket類:負責語音數(shù)據(jù)的發(fā)送及接收,采用UDP方式,單呼和組呼的語音數(shù)據(jù)都使用這個類來傳輸。CSignalSerSocket類:異步套接字類,負責數(shù)據(jù)發(fā)送接收。首先創(chuàng)建并初始聲音采集設備,創(chuàng)建語音采集緩沖區(qū),設置緩沖區(qū)的通知位置,創(chuàng)建一個發(fā)送線程,把緩沖區(qū)中的語音數(shù)據(jù)發(fā)送到指定的用戶(單呼),或著小組中其他用戶(組呼)。并能使用戶可以添加、修改、刪除、清空和顯示配置情況,CHistoryDlg類:通話記錄的對話框類。這是整個程序的入庫函數(shù),即程序每次從開啟到終止時經(jīng)歷的全過程。能夠更高效的實現(xiàn)面向連接的套接字操作,交互客戶機/服務器之間的信令,當交互完成之后,交給CsignalDeal類來完成相應的信令處理;CSoundSocket則是實現(xiàn)對包括單呼和組呼的套接字數(shù)據(jù)傳輸,這是面向無連接的套接字操作,能夠更快速的傳輸數(shù)據(jù),滿足語音通信功能。CSignalDeal、CNumberList、CManageSound、CCaptureSound、CPlaySound類是實現(xiàn)業(yè)務邏輯層的類。第三節(jié) 類的設計一、類設計的基本情況為了實現(xiàn)上述三層的功能,按照VC++編程的思想,我們需要將完成不同功能的操作規(guī)劃成不同的類以及類里面的成員函數(shù)或構造函數(shù)。通過各線程之間的數(shù)據(jù)交互,實現(xiàn)了各自的功能,并交給下一層進行處理。用戶通過界面層的撥號按鍵的操作,可以發(fā)起單呼和組呼請求;通過對話機記錄的操作可以查看話機歷史記錄;通過對系統(tǒng)配置的操作可以完成對話務系統(tǒng)的系統(tǒng)配置工作。通過這個軟件,用戶可以將電腦作為公務電話進行所需通信。第三節(jié) 本章小結本章的主要內(nèi)容是對設計整個軟件的開發(fā)可行性的研究以及及需求分析。也就是說,我們做出的這個軟件,能讓用戶方便的操作,并且能夠安全可靠的進行即使語音傳輸,而且能夠直接拷貝,不需要安裝就能在Windows的電腦上運行。這個程序應該能夠在IP網(wǎng)絡中進行即時語音通訊。由此我們可知,在成本層面上開發(fā)這次軟件是可行的。另外,基于這次的程序開發(fā)是在VC++,只需要一個計算機就能進行開發(fā)。第三章 開發(fā)可行性及需求分析第一節(jié) 開發(fā)的可行性本次軟件開發(fā)是基于Virtual C++,這個平臺能夠不僅能夠?qū)崿F(xiàn)編譯、調(diào)試等功能,而且還包含了MFC,也就是說,在這個平臺下進行開發(fā),我們能夠享受MFC的所用類以及類里面的成員函數(shù)。本章第三節(jié)介紹了Socket的編程過程,并且,分析兩種不同的套接字,即面向連接的流式套接字和面向無連接的數(shù)據(jù)報套接字。TCP/IP協(xié)議是我們網(wǎng)絡程序?qū)崿F(xiàn)在IP網(wǎng)絡承載下進行通信所要遵守的重要協(xié)議。MFC是微軟公司提供的基于windows系統(tǒng)下程序開發(fā)的一種應用程序設計類庫。由于線程能夠記錄的東西很少,但消耗比進程小很多。第五節(jié) 多線程編程進程是在計算機的程序自身地址中的一次執(zhí)行活動,是程序的一個實例;線程是進程中一個單一順序的控制流[8]。 單鏈表結構單鏈表是用于數(shù)據(jù)元素之間是線性關系的時候[14]。在本次程序設計中,我們采用的是異步套接字的方法。最后,用closeSocket()和WSACleanup()函數(shù)來關閉套接字,終止服務[7]。客戶端的流程就比較簡單了。等到監(jiān)聽到客戶端的connect()的指令時,就立即調(diào)用accept()函數(shù)接受連接請求。當要進行一次通信時,首先同樣用Socket()函數(shù)來建立一個客戶端的套接字,調(diào)用bind函數(shù)將套接字和本地地址綁定在一起。是用于無連接的Socket系統(tǒng)調(diào)用流程圖[5]。在輕負載的網(wǎng)絡,你可以使用數(shù)據(jù)報套接字和提高溝通效率;原始套接字(SOCK_RAM)這主要是用于測試或安裝網(wǎng)絡設備時使用。這樣就實現(xiàn)了套接字的傳輸模式,[5]。網(wǎng)絡應用程序要使用TCP/IP協(xié)議來實現(xiàn)自己的功能,只能通過由系統(tǒng)提供給用戶的TCP/IP協(xié)議編程接口來實現(xiàn)[4]。服務器的程序必須在客戶機的程序的啟動之前開始,并且是在客戶機的響應結束之后整個進程才完全結束。四、C/S模式在網(wǎng)絡連接中,有一種常用的模式是客戶機/服務器網(wǎng)絡[12]。三、網(wǎng)絡組建方式網(wǎng)絡是由通信節(jié)點以及節(jié)點之間的連接構成的,不同的節(jié)點和連接方式構成了不同的網(wǎng)絡。從而區(qū)分不同的用戶。我們只需要在這些對話框里面進行我們所需要的程序邏輯設計就能完成所需功能。MFC是由很多類組成的這些類之間有繼承和派生的關系,其中Cobject類作為很多類的父類,CCmdTarget和CWnd是其派生出來的兩個大類。所謂面向?qū)ο螅褪且詫ο鬄榛A,以事件或消息來驅(qū)動對象執(zhí)行處理的程序設計技術。其中Developer Studio是一種集成開發(fā)環(huán)境,它能提供包括VC++、VC、VB、VJ以及VID的編譯器,而且可以提供很多Wizard,它就是我們完成很多功能的幕后英雄[17]。不僅如此,這個軟件可以輕松調(diào)用MFC這個數(shù)據(jù)庫,從而使你能夠很輕松的駕馭windows的程序設計。本次設計是一個IP網(wǎng)絡的網(wǎng)絡應用程序的開發(fā)。在編寫程序之前,我進行了系統(tǒng)框架設計、類設計、信令機制設計、界面設計、話機狀態(tài)設計以及線程設計,此外,為了完成單呼和組呼的功能,我還分別做了單呼和組呼通話過程的流程分解,具體的描述了通話過程中邏輯流程。我們可以將這些網(wǎng)元當作是二層或三層交換機或者路由器,由它們組成的IP網(wǎng)絡。三、網(wǎng)絡IP公務電話的需求以及模擬方式公務電話是傳輸設備的一種基本功能,隨著無線通信技術的普及和覆蓋,基于PCM方式的傳統(tǒng)公務電話的重要性在不斷的降低。 二、基于IP網(wǎng)絡協(xié)議的IP電話IP網(wǎng)絡雖然具有良好的開放性和通用性,但由于它的網(wǎng)絡層是用數(shù)據(jù)報形式以面向無連接的方式傳輸?shù)?,所以IP網(wǎng)絡只能提供“盡最大努力”的服務,不能保證數(shù)據(jù)何時到達以及能提供多少數(shù)據(jù),導致傳輸?shù)目煽啃院蜁r延成為了它必有的內(nèi)傷,這一缺點對于語音數(shù)據(jù)傳輸以及可視通信是致命的。TCP協(xié)議是通過一種面向連接的,可靠的數(shù)據(jù)傳輸服務,它具有:向應用進程提供面向連接的服務;通過三次握手,提供全雙工數(shù)據(jù)傳輸服務,但不支持廣播和組播。其中在網(wǎng)絡傳輸中,路由器可以通過處理網(wǎng)絡層的開銷字節(jié)來完成路由的功能。就像交通運輸一樣,人們一直在努力去尋求一種最為理想的運輸方式,使得在同樣的時間內(nèi),最有效的使用交通資源。從物理上看,Internet是由不同類型的物理組件作為節(jié)點,通過傳輸線路相互連接而構成的網(wǎng)絡,這些物理組件主要有主機、交換機和路由器。論文分為四個部分:第一章綜合闡述了本次設計運用到的IP網(wǎng)絡系統(tǒng)以及Windows的程序設計;第二章介紹了本次程序開發(fā)的總體設計;第三章介紹了程序的操作流程;第四章對這次程序設計的關鍵代碼和實現(xiàn)進行了分析和討論。只要一臺電腦里面安裝了設計好的應用程序,連接到Internet的,不論接入方式,不論組網(wǎng)方式,只需要能夠分配到一個IP地址,就能和另外的任意臺電腦進行通信,很好的完成公務電話的各種功能。各種各樣的應用程序以及不同類型的業(yè)務都可以通過這個網(wǎng)絡來承載,它不僅采用了標準的開放的TCP/IP協(xié)議,還提供開放的API。Internet與傳統(tǒng)電話網(wǎng)絡有著本質(zhì)的區(qū)別,也是它最突出的優(yōu)點,那就是設計上的通用性和開放性。然而,基于IP網(wǎng)絡的Internet的應用程序公務電話,則可以很好的克服這一點。實現(xiàn)了在Internet上進行公務電話的單呼功能和組呼功能。它的主導思想是在沒有發(fā)送端和接收端幫助的情況下,具有源地址和目的地址的的數(shù)據(jù)包能夠獨立地穿越由路由器構成的網(wǎng)絡[1]。IP網(wǎng)絡最大的特點就是它在路由的時候,沒有指定的路線,而是各個路由器通過自己當時的網(wǎng)絡拓撲結構和網(wǎng)絡線路情況,根據(jù)特定的某種算法決定下一個路由的方向,也就是說,同樣一個數(shù)據(jù)包從一個節(jié)點傳到另一節(jié)點在不同時候可能會有多種路徑。每一層都是在原有的數(shù)據(jù)包外附加了一部分開銷,用來完成特定的功能。這兩種協(xié)議有各自的優(yōu)缺點,但同時通過這兩種協(xié)議的綜合使用,能夠滿足不同用戶的需求。但它具有自己的特點:不存在連接上的時延;一臺服務器可以向多個用戶同時傳輸數(shù)據(jù);UDP的開銷比TCP斷;吞吐量不受流量算法的控制。到目前,這項技術已經(jīng)成熟,通過IP電話網(wǎng)關,我們就能實現(xiàn)IP網(wǎng)絡與PSTN的融合,實現(xiàn)傳統(tǒng)電話與IP電話、以及電腦的通信。 IP公務電話網(wǎng)絡示意圖如圖所示,通信設備的網(wǎng)元組成一個通信網(wǎng)絡,提供第一層和第二層的路由和報文轉(zhuǎn)發(fā)。這次程序能夠完成IP公務電話的單呼以及組呼的功能,即能夠使聯(lián)網(wǎng)的任意兩臺電腦相互進行語音通信,并且能使一個組內(nèi)的所有電腦進行通話。第二節(jié)對本次設計以及本次論文進行了概括。我們可以很輕松的編寫完C/C++程序代碼后進行編輯、調(diào)試和運行。SDK。由于VC++是用C++語言來編寫程序,所以它也是面向?qū)ο蟮某绦蚓幊?。二、MFC Windows程序設計MFC(MicrosoftFoundationClasses) 是微軟公司開發(fā)的一個C++的類庫,它里面封裝了大部分基于windows操作系統(tǒng)的 API函數(shù)。因為這個類里面包含的成員函數(shù)、成員變量已經(jīng)足夠我們?nèi)ラ_發(fā)一個基于對話框的應用程序了。通過與子網(wǎng)掩碼相與,我們能夠得到相應的網(wǎng)段以及同一網(wǎng)段內(nèi)的不同主機號。應用層包含了所有網(wǎng)絡中的高層協(xié)議,也就是能夠提供一組應用程序,這些協(xié)議包括遠程登錄協(xié)議Telnet、文件傳輸協(xié)議FTP、域名服務DNS、超文本傳輸協(xié)議HTTP、簡單郵件傳輸協(xié)議SMTP等[2];傳輸層則是使應用程序之間能夠進行通信,前面第一章第一節(jié)已經(jīng)詳細說明,不再累述;網(wǎng)絡層就是讓不同的主機進行交互;網(wǎng)絡接口層是負責成幀以及怎樣將幀放在IP網(wǎng)絡上面進行傳輸。 網(wǎng)絡的組建方式考慮到本次軟件是由任意兩臺電腦接入網(wǎng)絡后就能進行通信,因此選用第三種方式,即自組織特性網(wǎng)絡方式,只要需要通信時,主叫端就為客戶端,被叫為服務器端,這樣就能實現(xiàn)我們的單呼和組呼功能。它是軟件系統(tǒng)體系結構,通過它可以充分利用兩端硬件環(huán)境優(yōu)勢,將任務合理分配到客戶端和服務器端來實現(xiàn),降低了系統(tǒng)的通訊開銷[3]并且提高了效率。所謂的網(wǎng)絡應用程序就是通過IP網(wǎng)絡協(xié)議,也就是TCP/IP協(xié)議棧來進行通信。然后它們把要傳達的信息輸入到即將發(fā)送的Socket中,然后由這個Socke
點擊復制文檔內(nèi)容
研究報告相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1