2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  網(wǎng)絡(luò)工程課程設(shè)計(jì)</b></p><p><b>  設(shè)計(jì)說明書</b></p><p>  起止日期:2012年7月2日至2012年7月13日</p><p>  計(jì)算機(jī)與信息工程學(xué)院</p><p>  2012年7月13日</p><p>

2、<b>  課程設(shè)計(jì)任務(wù)書</b></p><p>  2011 —2012 學(xué)年第 二 學(xué)期</p><p>  電子與信息工程 系 網(wǎng)絡(luò)工程 專業(yè) 一 班級</p><p>  課程設(shè)計(jì)名稱: 網(wǎng)絡(luò)工程課程設(shè)計(jì) </p><p>  設(shè)計(jì)題目: 基

3、于C/S的簡單通信通信協(xié)議 </p><p>  完成期限:自 2012 年 7 月 2 日至 2012 年 7 月 13 日共 2 周</p><p>  設(shè)計(jì)依據(jù)、要求及主要內(nèi)容:</p><p><b>  一、 設(shè)計(jì)目的</b></p><p>  了解網(wǎng)絡(luò)協(xié)議工作原理,并

4、使用編程實(shí)現(xiàn)。</p><p><b>  二、設(shè)計(jì)要求 </b></p><p>  在本課程設(shè)計(jì)過程中要求學(xué)生:</p><p>  (1)重視課程設(shè)計(jì)環(huán)節(jié),用嚴(yán)謹(jǐn)、科學(xué)和踏實(shí)的工作態(tài)度對待課程設(shè)計(jì)的每一項(xiàng)任務(wù);</p><p> ?。?)按照課程設(shè)計(jì)的題目要求,獨(dú)立地完成各項(xiàng)任務(wù)。</p><

5、;p>  (3)學(xué)生在接受設(shè)計(jì)任務(wù)后,根據(jù)要求認(rèn)真完成。</p><p> ?。?)認(rèn)真編寫課程設(shè)計(jì)報告。</p><p><b>  三、設(shè)計(jì)內(nèi)容</b></p><p>  寫一個軟件,并用此軟件實(shí)現(xiàn)某個網(wǎng)絡(luò)傳輸協(xié)議的功能</p><p>  指導(dǎo)教師(簽字): </p>

6、;<p>  教研室主任(簽字): </p><p>  批準(zhǔn)日期: 年 月 日</p><p><b>  摘 要</b></p><p>  本次課程設(shè)計(jì)完成一個簡單的通信協(xié)議,使用C++語言在基于對C/S模式了解的基礎(chǔ)上,并利用Socket套接字完成這個協(xié)議。</p&

7、gt;<p><b>  目錄</b></p><p>  第1章 程序定義1</p><p>  第2章 需求分析1</p><p>  第3章 程序設(shè)計(jì)1</p><p>  3.1 開發(fā)環(huán)境及工具1</p><p><b>  3.2結(jié)構(gòu)設(shè)計(jì)1</b&

8、gt;</p><p>  3.2.1 Client客戶端1</p><p>  3.2.2服務(wù)器端2</p><p><b>  3.3詳細(xì)設(shè)計(jì)3</b></p><p>  3.3.1系統(tǒng)數(shù)據(jù)結(jié)構(gòu)3</p><p>  第4章 實(shí)驗(yàn)結(jié)果6</p><p> 

9、 第5章 實(shí)驗(yàn)心得7</p><p><b>  參考文獻(xiàn)7</b></p><p><b>  第1章 程序定義</b></p><p>  本程序采用TCP/IP協(xié)議的套接字功能完成,并在C/S模式的基礎(chǔ)上建立的,擁有一個Server客戶端以及Client客戶端,并能夠?qū)崿F(xiàn)兩個客戶端的相互通信。</p>

10、<p><b>  第2章 需求分析</b></p><p>  Socket通常也稱作"套接字",用于描述IP地址、端口和傳輸協(xié)議,是一個通信鏈的句柄。IP地址是每個主機(jī)的網(wǎng)絡(luò)地址,是唯一的,同時程序端口號是應(yīng)用軟件運(yùn)行的編號,而傳輸協(xié)議是通信過程中所采用的傳輸協(xié)議,所以每個Socket套接字是每個程序特定的編號。Server建立的時候在監(jiān)聽整個網(wǎng)絡(luò)環(huán)境,

11、當(dāng)以相同Socket套接字進(jìn)行建立連接請求的時候才會接受這種連接請求。每種服務(wù)都打開一個Socket,并綁定到一個端口上,不同的端口對應(yīng)于不同的服務(wù)。</p><p>  本程序是一個聊天程序,為了能過進(jìn)行簡單的通信過程。</p><p><b>  第3章 程序設(shè)計(jì)</b></p><p>  3.1 開發(fā)環(huán)境及工具</p>&

12、lt;p>  開發(fā)工具M(jìn)icrosoft Visual C++ 6.0</p><p><b>  開發(fā)語言C++</b></p><p><b>  3.2結(jié)構(gòu)設(shè)計(jì)</b></p><p>  3.2.1 Client客戶端</p><p><b>  3.2.2服務(wù)器端<

13、;/b></p><p><b>  3.3詳細(xì)設(shè)計(jì)</b></p><p>  3.3.1系統(tǒng)數(shù)據(jù)結(jié)構(gòu)</p><p>  Client客戶端程序:</p><p>  #include <winsock2.h></p><p>  #include <stdio.h&g

14、t;</p><p>  #pragma comment(lib,"ws2_32.lib")</p><p>  void main()</p><p><b>  {</b></p><p>  WORD wVersionRequested;</p><p>  WSADAT

15、A wsaData;</p><p><b>  int err;</b></p><p>  wVersionRequested = MAKEWORD( 1, 1 );//請求1.1版本的winsock庫</p><p>  err = WSAStartup( wVersionRequested, &wsaData );</p&

16、gt;<p>  if ( err != 0 ) {</p><p><b>  return;</b></p><p><b>  }</b></p><p>  if ( LOBYTE( wsaData.wVersion ) != 1 ||</p><p>  HIBYTE( ws

17、aData.wVersion ) != 1 ) {</p><p>  WSACleanup( );</p><p><b>  return; </b></p><p><b>  }</b></p><p>  SOCKET sockClient=socket(AF_INET,SOCK_DGRA

18、M,0);</p><p>  SOCKADDR_IN addrSrv;</p><p>  addrSrv.sin_addr.S_un.S_addr=inet_addr("127.0.0.1");</p><p>  addrSrv.sin_family=AF_INET;</p><p>  addrSrv.sin_po

19、rt=htons(6000);</p><p>  char recvBuf[100];</p><p>  char sendBuf[100];</p><p>  char tempBuf[200]; </p><p>  int len=sizeof(SOCKADDR);</p><p><b>  w

20、hile(1)</b></p><p><b>  {</b></p><p>  printf("請輸入消息:\n");</p><p>  gets(sendBuf);</p><p>  sendto(sockClient,sendBuf,strlen(sendBuf)+1,0,&l

21、t;/p><p>  (SOCKADDR*)&addrSrv,len);</p><p>  recvfrom(sockClient,recvBuf,100,0,(SOCKADDR*)&addrSrv,&len);</p><p>  sprintf(tempBuf,"%s 說: %s",inet_ntoa(addrSrv.s

22、in_addr),recvBuf);</p><p>  printf("%s\n",tempBuf);</p><p><b>  }</b></p><p>  closesocket(sockClient);</p><p>  WSACleanup();</p><p>

23、;<b>  while(1);</b></p><p><b>  }</b></p><p>  Server客戶端程序:</p><p>  #include <winsock2.h></p><p>  #include <stdio.h></p>&l

24、t;p>  #pragma comment(lib,"ws2_32.lib")</p><p>  void main()</p><p><b>  {</b></p><p>  WORD wVersionRequested;</p><p>  WSADATA wsaData;</p

25、><p><b>  int err;</b></p><p>  wVersionRequested = MAKEWORD( 1, 1 );//請求1.1版本的winsock庫</p><p>  err = WSAStartup( wVersionRequested, &wsaData );</p><p>  

26、if ( err != 0 ) {</p><p><b>  return;</b></p><p><b>  }</b></p><p>  if ( LOBYTE( wsaData.wVersion ) != 1 ||</p><p>  HIBYTE( wsaData.wVersion )

27、 != 1 ) {</p><p>  WSACleanup( );</p><p><b>  return; </b></p><p><b>  }</b></p><p>  //加載完套接字的庫后,創(chuàng)建套接字</p><p>  SOCKET sockSrv=soc

28、ket(AF_INET,SOCK_DGRAM,0);</p><p>  //將套接字綁定到地址</p><p>  SOCKADDR_IN addrSrv;</p><p>  addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY);</p><p>  addrSrv.sin_family=AF_IN

29、ET;</p><p>  addrSrv.sin_port=htons(6000);</p><p>  bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR));</p><p>  char recvBuf[100];</p><p>  char sendBuf[100];</

30、p><p>  char tempBuf[200];</p><p>  SOCKADDR_IN addrClient;//獲取通訊方的地址信息</p><p>  int len=sizeof(SOCKADDR);</p><p><b>  while(1)</b></p><p><b&g

31、t;  {</b></p><p>  recvfrom(sockSrv,recvBuf,100,0,(SOCKADDR*)&addrClient,&len);</p><p>  sprintf(tempBuf,"%s 說: %s",inet_ntoa(addrClient.sin_addr),recvBuf);</p>&l

32、t;p>  printf("%s\n",tempBuf);</p><p>  printf("請輸入消息:\n");</p><p>  gets(sendBuf);//獲取一行數(shù)據(jù),回車結(jié)束</p><p>  sendto(sockSrv,sendBuf,strlen(sendBuf)+1,0,(SOCKADDR*

33、)&addrClient,len);</p><p><b>  }</b></p><p>  closesocket(sockSrv);</p><p>  WSACleanup();</p><p><b>  while(1);</b></p><p><

34、;b>  }</b></p><p><b>  第4章 實(shí)驗(yàn)結(jié)果</b></p><p><b>  Server客戶端</b></p><p><b>  Client客戶端</b></p><p><b>  第5章 實(shí)驗(yàn)心得</b&g

35、t;</p><p>  通過此次的實(shí)驗(yàn),讓我對于Socket網(wǎng)絡(luò)聊天類的使用有了更深入的了解,在關(guān)于網(wǎng)絡(luò)編程的方面也有了新的認(rèn)識。雖然此程序的功能還比較的簡單,而且某些方面還沒能完善,但是,我相信我只是一個開始。</p><p>  課程設(shè)計(jì)是每一個大學(xué)生在大學(xué)生涯中都不可或缺的,它使我們在實(shí)踐中了 鞏固了所學(xué)的知識、在實(shí)踐中鍛煉自己的動手能力;實(shí)習(xí)又是對每一位大學(xué)生所 學(xué)專業(yè)知識的一種

36、拓展手段, 它讓我們學(xué)到了很多在課堂上根本就學(xué)不到的知識, 不僅開闊了自己的視野,增戰(zhàn)了自己的見識,也為我們以后進(jìn)一步走向社會打下 了堅(jiān)實(shí)的基礎(chǔ),是我們走向以后走向工作崗位的奠基石。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)第4版.電子工業(yè)出版社.2003</p><p>  [2]趙永發(fā),由大

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論