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

Windows Sockets控件在網(wǎng)絡(luò)通信中的程序?qū)崿F(xiàn)

2014-08-07 12:03:00萬(wàn)
天津科技 2014年11期
關(guān)鍵詞:按鈕設(shè)置

萬(wàn) 鵬

(天津市科技檔案館 天津 300011)

Windows Sockets控件在網(wǎng)絡(luò)通信中的程序?qū)崿F(xiàn)

萬(wàn) 鵬

(天津市科技檔案館 天津 300011)

Windows Sockets是基于TCP/IP參考模型,應(yīng)用于微軟Windows系統(tǒng)的網(wǎng)絡(luò)編程接口,因其具有開放和支持多協(xié)議的機(jī)制而得到了廣泛應(yīng)用。討論了 Windows Sockets的通信機(jī)理及通過(guò) Visual Basic編程實(shí)現(xiàn)網(wǎng)絡(luò)通信的過(guò)程。

TCP/IP參考模型 傳輸層 Windows Sockets Visual Basic 服務(wù)器 客戶機(jī)

1 網(wǎng)絡(luò)編程基礎(chǔ)

1.1 TCP/IP參考模型簡(jiǎn)介

TCP/IP參考模型是Internet的基礎(chǔ),它定義了電子設(shè)備如何接入 Internet,以及數(shù)據(jù)在設(shè)備之間傳輸?shù)臉?biāo)準(zhǔn)。TCP/IP參考模型將諸多網(wǎng)絡(luò)協(xié)議分為 4個(gè)層次,由下至上分別是:網(wǎng)絡(luò)接口層、網(wǎng)絡(luò)層、傳輸層和應(yīng)用層。所有協(xié)議組成了 TCP/IP協(xié)議簇。層次結(jié)構(gòu)以及各協(xié)議之間的對(duì)應(yīng)關(guān)系如圖1所示。

圖1 TCP/IP參考模型層次結(jié)構(gòu)與協(xié)議對(duì)應(yīng)關(guān)系Fig.1 Hierarchical structure and protocol correspondence of the TCP/IP reference model

1.2 傳輸層協(xié)議選擇

在使用Windows Sockets(簡(jiǎn)稱WinSock)控件編程之前,需要選擇合適的TCP/IP傳輸層協(xié)議,如圖1所示,可以選擇TCP協(xié)議或 UDP協(xié)議。兩者的差異主要體現(xiàn)在連接性和可靠性方面。

TCP協(xié)議提供的是面向連接的、可靠的數(shù)據(jù)傳輸。“面向連接”是指在數(shù)據(jù)傳輸之前,收發(fā)雙方需要建立點(diǎn)對(duì)點(diǎn)的會(huì)話連接,傳輸結(jié)束后需要釋放連接。“可靠”是指采取相應(yīng)糾錯(cuò)機(jī)制,使該協(xié)議具有錯(cuò)誤校驗(yàn)功能,如果在傳輸過(guò)程中數(shù)據(jù)發(fā)生錯(cuò)誤或無(wú)法到達(dá)對(duì)方,TCP協(xié)議會(huì)嘗試重新發(fā)送數(shù)據(jù)。

UDP協(xié)議提供的是非面向連接的、不可靠的數(shù)據(jù)傳輸。該協(xié)議在數(shù)據(jù)傳輸之前不會(huì)建立點(diǎn)對(duì)點(diǎn)的會(huì)話連接,發(fā)送方只是簡(jiǎn)單地向接收方發(fā)送數(shù)據(jù);也沒(méi)有糾錯(cuò)機(jī)制來(lái)避免數(shù)據(jù)傳輸錯(cuò)誤或確保數(shù)據(jù)成功到達(dá)目的地。

實(shí)際操作中,需要根據(jù)網(wǎng)絡(luò)環(huán)境以及數(shù)據(jù)的傳輸要求選擇合適的協(xié)議。如果對(duì)于數(shù)據(jù)傳輸?shù)目煽匦浴⒖煽啃院屯暾砸筝^高,建議選擇 TCP協(xié)議。如果數(shù)據(jù)連接開銷小,對(duì)傳輸效率和靈活性要求較高,UDP協(xié)議應(yīng)該是合適的選擇。WinSock控件中的Protocol屬性用來(lái)設(shè)定傳輸層協(xié)議,缺省設(shè)置是 TCP協(xié)議。

1.3 WinSock控件簡(jiǎn)介

Internet是基于 TCP/IP模型的互聯(lián)網(wǎng)絡(luò),而Windows是現(xiàn)有操作系統(tǒng)中最普及的一種。WinSock是Windows下得到廣泛應(yīng)用的、開放的、支持多種協(xié)議的網(wǎng)絡(luò)應(yīng)用程序編程接口(API)。目前,WinSock API已成為基于TCP/IP網(wǎng)絡(luò)環(huán)境中Windows編程事實(shí)上的標(biāo)準(zhǔn),為編程人員在 Windows平臺(tái)上開發(fā)通用和規(guī)范的網(wǎng)絡(luò)應(yīng)用程序提供了極大的方便。

1.4 基于Visual Basic的WinSock應(yīng)用

Visual Basic(簡(jiǎn)稱VB)是目前使用最廣泛的編程語(yǔ)言之一,其簡(jiǎn)單易學(xué)的語(yǔ)言、結(jié)構(gòu)化的程序設(shè)計(jì)思想、可視化的編程手段以及事件驅(qū)動(dòng)的編程機(jī)制,使得在 Windows環(huán)境下編寫應(yīng)用程序變得非常容易。利用它,用戶僅僅設(shè)置幾個(gè)與控件有關(guān)的屬性及引用與幾個(gè)控件有關(guān)的方法即可實(shí)現(xiàn) WinSock系統(tǒng)調(diào)用所完成的功能,極大地方便了用戶在基于 TCP/IP協(xié)議的網(wǎng)絡(luò)上開發(fā)網(wǎng)絡(luò)通信程序。

2 WinSock控件的使用

WinSock控件采用的是客戶機(jī)/服務(wù)器模式(Client/Server,簡(jiǎn)稱 C/S)。此模式包括客戶機(jī)和服務(wù)器程序,客戶機(jī)向服務(wù)器發(fā)出服務(wù)請(qǐng)求,服務(wù)器偵聽(tīng)到客戶機(jī)的請(qǐng)求后對(duì)客戶機(jī)作出應(yīng)答。

2.1 主要屬性

Text:設(shè)置控件中顯示的文本內(nèi)容;

Protocol:返回或設(shè)置使用的傳輸協(xié)議類型(TCP或UDP,默認(rèn)為TCP);

Local Host Name:返回本機(jī)名字;

Local IP:返回本機(jī)IP地址;

Local Port:返回或設(shè)置偵聽(tīng)端口;

Remote Host:返回或設(shè)置遠(yuǎn)程主機(jī)名或IP地址;

Remote Host IP:返回或設(shè)置遠(yuǎn)程主機(jī)IP地址;

Remote Port:返回或設(shè)置遠(yuǎn)程主機(jī)端口;

State:返回控件當(dāng)前的狀態(tài)。

2.2 主要方法

Accept:通過(guò)接收 request ID 參數(shù)的方式,使服務(wù)器接收一個(gè)客戶機(jī)的連接請(qǐng)求;

Close:關(guān)閉當(dāng)前連接;

Listen:使服務(wù)器程序處于偵聽(tīng)狀態(tài);

Connect:向遠(yuǎn)程主機(jī)發(fā)送連接請(qǐng)求;

Get Data:接收遠(yuǎn)程主機(jī)發(fā)來(lái)的數(shù)據(jù);

Send Data:向遠(yuǎn)程主機(jī)發(fā)送數(shù)據(jù)。

2.3 主要事件

Load:當(dāng)前窗體載入時(shí)觸發(fā)的事件;

Click:?jiǎn)螕羰髽?biāo)鍵時(shí)觸發(fā)的事件;

Connect:當(dāng)一個(gè)連接完成時(shí)觸發(fā)的事件;

Connection Request:客戶機(jī)向服務(wù)器發(fā)送請(qǐng)求時(shí)觸發(fā)的事件,該事件生成一個(gè)參數(shù) request ID,通常與 Accept方法一同使用,用來(lái)接收客戶機(jī)的連接請(qǐng)求;

Data Arrival:有數(shù)據(jù)到達(dá)時(shí)觸發(fā)的事件,通常與Get Data方法一同使用,用來(lái)獲取到達(dá)的數(shù)據(jù);

Close:遠(yuǎn)程主機(jī)關(guān)閉連接時(shí)觸發(fā)的事件。

3 程序?qū)崿F(xiàn)

3.1 服務(wù)器功能的實(shí)現(xiàn)

3.1.1 服務(wù)器控件設(shè)計(jì)

① Command1:退出按鈕;

② Command2:設(shè)置偵聽(tīng)端口按鈕;

③ Command3:發(fā)送按鈕;

④ Textlclport:設(shè)置偵聽(tīng)端口文本框;

⑤ Textlclip:顯示本地ip地址文本框;

⑥ Textsend:發(fā)送文本框;

⑦ Textget:接收文本框;

⑧ Winsockserver:服務(wù)器 Winsock。

3.1.2 服務(wù)器程序代碼

3.2 客戶機(jī)功能的實(shí)現(xiàn)

3.2.1 客戶機(jī)控件的設(shè)計(jì)

① Command1:退出按鈕;

② Command2:連接按鈕;

③ Command3:設(shè)置服務(wù)器IP按鈕;

④ Command4:設(shè)置服務(wù)器偵聽(tīng)端口按鈕;

⑤ Command5:發(fā)送數(shù)據(jù)按鈕;

⑥ Textrmtip:遠(yuǎn)程服務(wù)器IP文本框;

⑦ Textrmtport:遠(yuǎn)程服務(wù)器偵聽(tīng)端口文本框;

⑧ Textsend:發(fā)送文本框;

⑨ Textget:接收文本框;

⑩ Winsockclient:客戶機(jī) Winsock。

3.2.2 客戶機(jī)程序代碼

4 總 結(jié)

以上程序?qū)嵗肳inSock控件,采用客戶機(jī)/服務(wù)器模式,實(shí)現(xiàn)了 2臺(tái)主機(jī)之間的數(shù)據(jù)通信。該程序可以運(yùn)行于企事業(yè)單位內(nèi)部局域網(wǎng),也可以在Internet環(huán)境下使用,為企事業(yè)單位員工的信息溝通搭建一個(gè)可靠、穩(wěn)定的服務(wù)平臺(tái)。

[1] 卞志強(qiáng). Visual Basic網(wǎng)絡(luò)程序設(shè)計(jì)[M]. 北京:人民郵電出版社,2003.

[2] 苗長(zhǎng)云. 現(xiàn)代通信原理及應(yīng)用[M]. 2版. 北京:電子工業(yè)出版社,2009.

[3] 邵志方. 基于WinSock控件的網(wǎng)絡(luò)程序設(shè)計(jì)[J]. 無(wú)線互聯(lián)科技,2013(4) :116.

[4] 俞時(shí)權(quán),呂智慧. 在 TCP/IP協(xié)議支撐之上的Windows Socket應(yīng)用開發(fā)[J]. 計(jì)算機(jī)應(yīng)用與軟件,2000(8):1-8.

Programme Implementation of Windows Sockets in Network Communication

WAN Peng
(Tianjin Archives of Science and Technology,Tianjin 300011,China)

The Windows Sockets specification defines an API for Microsoft Windows based on the TCP/IP reference model. It is widely applied due to its open and multi-protocol supporting mechanism. The paper discussed the communication mechanism of Windows Sockets and the process of network communication implementation through Visual Basic programming.

TCP/IP reference model;transport layer;Windows Sockets;Visual Basic;server;client

TP311.1

A

1006-8945(2014)11-0013-03

2014-10-10

猜你喜歡
按鈕設(shè)置
這些按鈕能隨便按嗎?
哪個(gè)是門鈴真正的按鈕
當(dāng)你面前有個(gè)按鈕
中隊(duì)崗位該如何設(shè)置
7招教你手動(dòng)設(shè)置參數(shù)
死循環(huán)
本刊欄目設(shè)置說(shuō)明
中俄臨床醫(yī)學(xué)專業(yè)課程設(shè)置的比較與思考
內(nèi)心不能碰的按鈕
艦船人員編制的設(shè)置與控制
主站蜘蛛池模板: 国产福利微拍精品一区二区| 免费久久一级欧美特大黄| 日韩黄色大片免费看| 欧美国产综合色视频| 91福利一区二区三区| 久久国产V一级毛多内射| 欧美激情福利| 国产精品亚洲一区二区三区在线观看| 伊人成色综合网| 中文精品久久久久国产网址| 亚洲精品va| 亚洲中久无码永久在线观看软件| 国产精品人莉莉成在线播放| 搞黄网站免费观看| 国产精品网曝门免费视频| 亚洲精品无码久久久久苍井空| 国产农村1级毛片| 91尤物国产尤物福利在线| 久一在线视频| 精品无码人妻一区二区| 婷婷中文在线| 9久久伊人精品综合| 亚洲国产日韩欧美在线| 这里只有精品在线播放| 亚洲人成网7777777国产| 亚洲精品中文字幕午夜| 青青青伊人色综合久久| 伊人色综合久久天天| 在线毛片网站| 久久国产拍爱| 五月婷婷导航| 99久久国产综合精品2020| 怡春院欧美一区二区三区免费| www.av男人.com| 色欲综合久久中文字幕网| 丁香亚洲综合五月天婷婷| 免费看一级毛片波多结衣| 在线播放国产99re| 久久午夜夜伦鲁鲁片不卡| 一本视频精品中文字幕| 亚洲精品无码人妻无码| 无码福利日韩神码福利片| 欧美日韩精品在线播放| 国产网站在线看| 爆乳熟妇一区二区三区| 亚洲系列中文字幕一区二区| 99ri精品视频在线观看播放| yy6080理论大片一级久久| 欧美黄色网站在线看| 国产aaaaa一级毛片| 国产成人精品高清不卡在线| 欧美午夜久久| 国产视频自拍一区| 伊人精品成人久久综合| 91亚洲免费视频| 国产精品毛片一区视频播| 久久伊人操| 国产va欧美va在线观看| 91尤物国产尤物福利在线| 精品视频在线观看你懂的一区| 欧美精品二区| 女人18毛片久久| 高清免费毛片| 亚洲综合天堂网| 伊人久久精品无码麻豆精品 | 国模沟沟一区二区三区| 五月婷婷综合色| 日本道综合一本久久久88| 免费av一区二区三区在线| 亚洲无码91视频| 久久久久人妻一区精品色奶水 | 青青草a国产免费观看| 欧美日一级片| 国产人妖视频一区在线观看| 欧美一区二区三区香蕉视| 亚洲成在线观看| 中文无码精品A∨在线观看不卡| 欧美日韩在线观看一区二区三区| 精品久久综合1区2区3区激情| 亚洲第一网站男人都懂| www亚洲精品| 亚洲国产日韩在线成人蜜芽 |