999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

網絡通信編程教學設計與實現(xiàn)

2011-11-03 11:37:20黑龍江徐鑒
職業(yè)技術 2011年3期
關鍵詞:網絡通信

黑龍江 徐鑒

網絡通信編程教學設計與實現(xiàn)

黑龍江 徐鑒

交互性是程序設計最大特性,而使用網絡通信技術是實現(xiàn)交互性的真正后臺工具。本文介紹了VC++實現(xiàn)網絡通信編程技術在教學中的實現(xiàn)。它是實現(xiàn)不同客戶進行數據交互、網絡通信的主要工具,并實現(xiàn)了多客戶間的實時聊天。

交互性;VC++;網絡通信

概述

網絡通信主要是在發(fā)送端把信息通過規(guī)定好的協(xié)議進行組裝包,在接收端按照規(guī)定好的協(xié)議把包進行解析,從而提取出對應的信息,達到通信的目的。中間最主要的就是數據包的組裝、過濾、捕獲和分析等處理。

(1)Internet網絡模型

網絡模型:網絡的結構原理和工作原理

OSI參考模型:七層

Internet網絡模型:四層

網絡協(xié)議:指定層上進行數據交換的規(guī)則

Internet的網絡層協(xié)議:IP協(xié)議;DNS協(xié)議 (輔助協(xié)議)

Internet的傳輸層協(xié)議:TCP協(xié)議;UDP協(xié)議

(2)套接字基礎

套接字(Sockets):應用程序和網絡協(xié)議的接口

TCPSockets:使用TCP協(xié)議實現(xiàn)可靠的網絡通信

UDPSockets:使用UDP協(xié)議實現(xiàn)效率較高的網絡通信

(3)Visual C++

VisualC++是一個功能強大的、完全可擴展的Windows開發(fā)系統(tǒng)。具有強有力的Internet支持,同時WinSock規(guī)范給應用程序開發(fā)提供了一套簡單的API,并制定了相應規(guī)范。

1Socket概論

Socket在計算機中提供了一個通信端口,可以通過它與任何一個具有Socket接口的計算機通信。應用程序在網絡上傳輸,與使用文件句柄相似,可以對Socket句柄進行讀、寫操作。將Socket翻譯為套接字,具體分為以下三種類型:

字節(jié)流套接字(StreamSocket) 它提供面向連接的、無差錯的、先后順序一致的、無記錄邊界和非重復的網絡信包傳輸。是最常用的套接字類型,TCP/IP協(xié)議族中的TCP協(xié)議使用此類接口。

數據報套接字(DatagramSocket) 它是無連接的服務,它以獨立的信包進行網絡傳輸,信包最大長度為32KB,傳輸不保證順序性、可靠性和無重復性,它通常用于單個報文傳輸或可靠性不重要的場合。TCP/IP協(xié)議族中的UDP協(xié)議使用此類接口,原始數據報套接字(RawSocket) 提供對網絡下層通訊協(xié)議(如IP協(xié)議)的直接訪問,它一般不是提供給普通用戶的,主要用于開發(fā)新的協(xié)議或用于提取協(xié)議較隱蔽的功能。

圖1 面向連接協(xié)議的SOCKET編程模型

2 常用Socket API

Socket API函數集

主要的系統(tǒng)調用包括:socket()-創(chuàng)建Socket;bind()-將創(chuàng)建的Socket與本地端口綁定;connect()與accept()-建立Socket連接;listen()-服務器監(jiān)聽是否有連接請求;send()-數據的可控緩沖發(fā)送;recv()-可控緩沖接收;closesocket()-關閉Socket。具體如下:

intbind(intsockfd,structsockaddr*my_addr,int addrlen);

intconnect(intsockfd,structsockaddr*serv_addr,intaddrlen);

intlisten(intsockfd,intbacklog);

intaccept(intsockfd,void*addr,int*addrlen);

intclose(sockfd);

int send(int sockfd,const void*msg,int len,int flags);

intrecv(intsockfd,void*buf,int len,unsigned int flags);

3 聊天程序的設計說明

聊天程序是以客戶端程序登錄服務器,服務器提供服務端連接響應,就可以與登錄在同一服務器上的用戶交談。因此,程序要在TCP/IP環(huán)境下實現(xiàn)服務器端和客戶端兩部分程序。

(1)服務器端工作流程:服務器端通過socket()調用創(chuàng)建一個Socket數組后,與指定的本地端口綁定bind(),就可以在端口進行偵聽listen()。如果有客戶端連接請求,則選擇一個空Socket,將客戶端地址賦給這個Socket。然后登錄成功的客戶就可以聊天。

(2)客戶端工作流程:客戶端程序相對簡單,只需要建立一個Socket與服務器端連接,成功后通過這個Socket來發(fā)送和接收數據。

4 核心代碼分析(這里僅給出核心代碼,其它的代碼可以自行添加)

(1)服務器端代碼

voidCChatServerDlg::UpdateUser(CClientSocket*pSocket)//聊天用戶Socket信息更新

(2)客戶端代碼

[1]四維科技,等.VisualC++網絡通信編程實用案例精選.人民郵電出版社,2006.

[2]李媛媛.VisualC++網絡通信開發(fā)入門與編程實踐.電子工業(yè)出版社,2008.

(作者單位:黑龍江省哈爾濱華夏計算機職業(yè)技術學院)

(編輯 王旸)

猜你喜歡
網絡通信
基于NoC架構的網絡通信抗干擾方法研究
海上軍用網絡通信的安全控制技術
基于網絡通信的智能照明系統(tǒng)設計
電子制作(2019年15期)2019-08-27 01:11:48
基于CAN總線的網絡通信信道的建模與研究
測控技術(2018年7期)2018-12-09 08:57:54
移動計算機網絡通信技術研究
電子測試(2018年14期)2018-09-26 06:05:06
計算機網絡通信常見問題與技術發(fā)展研究
電子制作(2018年10期)2018-08-04 03:24:46
網絡通信中信息隱藏技術的應用
基于網絡通信的校園智能音箱設計
電子制作(2018年1期)2018-04-04 01:48:30
談計算機網絡通信常見問題及技術發(fā)展
電子制作(2017年17期)2017-12-18 06:41:06
汽車檢測控制系統(tǒng)網絡通信技術分析
電子測試(2017年23期)2017-04-04 05:07:12
主站蜘蛛池模板: 欧美另类第一页| 国产激爽大片高清在线观看| 亚洲精品桃花岛av在线| 日韩第一页在线| 国产精品第| 国产成人欧美| 亚洲欧美日韩视频一区| 久久亚洲综合伊人| 麻豆精品在线播放| 午夜电影在线观看国产1区| 夜夜操天天摸| 欧美乱妇高清无乱码免费| 日韩无码视频播放| 在线无码九区| a在线亚洲男人的天堂试看| 国产精品高清国产三级囯产AV| 国产精品女主播| 波多野结衣一二三| 亚洲一区网站| 老汉色老汉首页a亚洲| 国产亚洲欧美另类一区二区| 高清无码手机在线观看| 久久五月视频| 久久国产精品电影| 在线观看亚洲精品福利片| 午夜福利亚洲精品| 国产十八禁在线观看免费| 欧美第九页| 欧美午夜在线视频| 欧美有码在线观看| 精品国产福利在线| 中文字幕无码中文字幕有码在线| 农村乱人伦一区二区| 99精品久久精品| 国产成人av大片在线播放| 成人精品区| 久久久精品无码一区二区三区| 免费一级毛片在线观看| 日韩一区二区在线电影| 国产主播在线一区| 无码专区国产精品第一页| 色婷婷啪啪| 伊人婷婷色香五月综合缴缴情| 国产91在线|日本| 欧洲成人在线观看| 99久久无色码中文字幕| 亚洲色无码专线精品观看| 欧美国产精品不卡在线观看 | 黄色片中文字幕| 亚洲欧美日韩中文字幕一区二区三区 | 在线视频亚洲欧美| 热思思久久免费视频| 最新国语自产精品视频在| 亚洲男人的天堂视频| 九色在线观看视频| 亚洲天堂网视频| 欧美高清三区| 国产在线一区视频| 丁香六月综合网| 午夜啪啪网| 国产丝袜无码精品| 亚洲福利片无码最新在线播放| 99久久精彩视频| 亚洲va视频| www.狠狠| aaa国产一级毛片| 一级全黄毛片| 亚洲天堂日本| 欧美精品v欧洲精品| 97视频精品全国在线观看| 亚洲免费黄色网| 国产午夜人做人免费视频中文| 人妻少妇久久久久久97人妻| 88av在线看| 99re在线免费视频| 免费a在线观看播放| 伊人无码视屏| 露脸一二三区国语对白| 国产视频 第一页| 久久久久中文字幕精品视频| 久久99精品久久久久纯品| 动漫精品中文字幕无码|