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

基于Java網(wǎng)絡(luò)編程中組播技術(shù)的應(yīng)用與研究

2018-06-27 02:38:48舒小松
無線互聯(lián)科技 2018年5期

舒小松

摘 要:Java網(wǎng)絡(luò)編程技術(shù)是Java程序設(shè)計(jì)中重要的一個(gè)環(huán)節(jié)。Java程序設(shè)計(jì)中提供了很強(qiáng)大的跨平臺(tái)網(wǎng)絡(luò)庫的語言。組播技術(shù)在Java網(wǎng)絡(luò)編程中的應(yīng)用很廣泛,它兼容單播和廣播的特點(diǎn)。當(dāng)采用組播方式傳送數(shù)據(jù)包時(shí),發(fā)送方只需要發(fā)送一份相同的數(shù)據(jù)包,通過路由器尋找組播組的地址,然后將數(shù)據(jù)發(fā)送到這個(gè)組的每一個(gè)主機(jī)中。它可以大大提高數(shù)據(jù)傳送效率,減少了核心網(wǎng)絡(luò)出現(xiàn)網(wǎng)絡(luò)擁塞的可能性。文章通過一個(gè)詳細(xì)的案例介紹了Java網(wǎng)絡(luò)編程中組播技術(shù)在Java平臺(tái)中的應(yīng)用,并進(jìn)行了相關(guān)的分析與研究。

關(guān)鍵詞:Java;組播;套接字;網(wǎng)絡(luò)編程

Java網(wǎng)絡(luò)編程技術(shù)是Java程序設(shè)計(jì)中重要的一個(gè)環(huán)節(jié)。Java程序設(shè)計(jì)中提供了很強(qiáng)大的跨平臺(tái)網(wǎng)絡(luò)庫的語言。Java網(wǎng)絡(luò)編程中組播技術(shù)應(yīng)用很廣泛,它是IP網(wǎng)絡(luò)數(shù)據(jù)傳輸3種方式之一,組播解決了單播和廣播方式效率低的問題。目前IPv4組播地址的范圍為224.0.0.0到239.255.255.255之間。

1 組播Socket介紹

在Java中,要使用Java.net中的MulticastSocket類來組播數(shù)據(jù)[1]。具體的步驟如下:首先,創(chuàng)建一個(gè)MulticastSocket。其次,用MulticastSocket的ijoinGroup()方法加入到一個(gè)組播組。再次,創(chuàng)建一個(gè)DatagramPacket,用字節(jié)數(shù)組作為數(shù)據(jù)緩沖區(qū),并放入循環(huán)體繼承DatagramPacket類的receive()方法,不需要接收數(shù)據(jù)時(shí)調(diào)用該Socket的leaveGroup()方法離開組播組,然后用繼承DatagramPacket類的close()方法關(guān)閉該Socket。注意:如果向組播地址發(fā)送數(shù)據(jù)可以不需要加入組播組,可以創(chuàng)建一個(gè)新的DatagramPacket,在其中填充數(shù)據(jù)和組播組的地址,并傳輸send()方法即可。

2 Java組播Socket網(wǎng)絡(luò)編程的應(yīng)用與研究

2.1 前期的基本操作

安裝好JDK以及Eclipse軟件。進(jìn)入Eclipse,編寫相關(guān)Java源程序。

2.2 創(chuàng)建接收端類MulticastReceive

2.2.1 創(chuàng)建組播地址和端口

(1)需要?jiǎng)?chuàng)建一個(gè)組播地址。

InetAddress group - InetAddress.getByName(”228.0.0.1”);

(2)需要?jiǎng)?chuàng)建一個(gè)端口。

int port= 8000;

上述代碼中,組播地址為228.0.0.1,端口為8000。

2.2.2 創(chuàng)建組播套接字并加入到組播組

(1)創(chuàng)建一個(gè)組播套接字。

MulticastSocket msr -new MulticastSocket(port);

(2)加入到一個(gè)組播組。

msrjoinGroup(group);

一旦創(chuàng)建了MulticastSocket就可以完成加入組播組、向組中任何成員發(fā)送數(shù)據(jù)、接受組中任何成員的數(shù)據(jù)、離開該組播組等4種操作。

2.2.3 創(chuàng)建一個(gè)指定緩沖區(qū)大小組播數(shù)據(jù)包

byte[] buffer= new byte[8192];

DatagramPacket dp=new DatagramPacket(buffer,buffer.length);

2.2.4 接受組播數(shù)據(jù)包

msr.receive(dp);

2.2.5 解碼組播數(shù)據(jù)包提取信息

String s=new String(dp.getData(),O,dp.getLength(》;

接收端代碼如圖1所示。

2.3 創(chuàng)建發(fā)送端類MulticastSend

2.3.1 創(chuàng)建組播地址和端口

(1)需要?jiǎng)?chuàng)建一個(gè)組播地址。

InetAddress group = InetAddress.getByName(”228.0.0.1”);

(2)需要?jiǎng)?chuàng)建一個(gè)端口。

int port= 8000;

需要注意的是發(fā)送端的組播IP地址和端口需要和接收端的IP地址及端口一致。

2.3.2 創(chuàng)建組播套接字并加入到組播組

MulticastSocket mss - new MulticastSocket(port);

mssjoinGroup(group);

2.3.3 建立一個(gè)指定緩沖區(qū)大小及組播地址和端口組播數(shù)據(jù)包

byte口buffer= message.getBytes();

DatagramPacket dp=new DatagramPacket(buffer,buffer.length,group,port);

mss.send(dp);

其中send()方法的作用是用于發(fā)送DatagramSocket對應(yīng)的數(shù)據(jù)包。注意的是如果不需要接收數(shù)據(jù)時(shí)調(diào)用該Socket的leaveGroup()方法離開組播組,并關(guān)閉Socket。發(fā)送端代碼如圖2所示。

3 結(jié)語

通過Java Socket網(wǎng)絡(luò)編程中Java組播Socket的應(yīng)用研究,使我們對Java Socket網(wǎng)絡(luò)編程有了新的認(rèn)識(shí),并得出結(jié)論。編寫一個(gè)Java組播應(yīng)用程序需要完成如下過程[2]。

(1)創(chuàng)建一個(gè)MulticastSocket組播套接字對象,為發(fā)送端和接收端使用。

(2)創(chuàng)建一個(gè)DatagramPacket組播數(shù)據(jù)包對象,需要指定其緩沖區(qū)大小及組播地址和端口。注意發(fā)送端和接收端中組播地址和端口一致。

(3)使用組播套接字joinGroup(),將其加入到同一個(gè)組播。

(4)將組播數(shù)據(jù)包對象放入其中,組播套接字的send()方法中或者組播套接字的receive()方法中發(fā)送組播數(shù)據(jù)包或者接收組播數(shù)據(jù)包。

(5)解碼組播數(shù)據(jù)包提取信息,并依據(jù)得到的信息作出響應(yīng)。

(6)在while循環(huán)中重復(fù)步驟4和5。

(7)使用組播套接字的leaveGroup()方法,離開組播組并關(guān)閉組播套接字。

運(yùn)行結(jié)果如圖3所示,接收端準(zhǔn)備好以后,發(fā)送端就一直會(huì)發(fā)送數(shù)據(jù),實(shí)驗(yàn)成功。

[參考文獻(xiàn)]

[1]哈諾德.Java網(wǎng)絡(luò)編程[M]李帥,荊濤,譯北京:中國電力出版社,2014.

[2]馬曉敏,肖明,姜遠(yuǎn)明,等Java網(wǎng)絡(luò)編程原理與JSP Web開發(fā)核心技術(shù)[M].北京:中國鐵道出版社,2010.

主站蜘蛛池模板: 五月天婷婷网亚洲综合在线| 国产精品视频a| 亚洲91精品视频| 亚洲国产清纯| 亚洲水蜜桃久久综合网站| 亚洲精品午夜无码电影网| 中文成人在线视频| 亚洲国产日韩欧美在线| 欧美国产日韩另类| 欧美性爱精品一区二区三区 | 国内熟女少妇一线天| 久久免费精品琪琪| 欧美一级黄片一区2区| 亚洲人成成无码网WWW| 无码又爽又刺激的高潮视频| 999精品在线视频| 免费全部高H视频无码无遮掩| 最新国产午夜精品视频成人| 97成人在线视频| 国产日韩精品欧美一区灰| 久久久久人妻精品一区三寸蜜桃| 国产精品jizz在线观看软件| 91精品国产自产91精品资源| 国产成人免费视频精品一区二区| 97超爽成人免费视频在线播放| 国产成人久久综合777777麻豆| 91青青草视频在线观看的| 亚洲国产成人精品无码区性色| 亚洲国产欧美自拍| 国产欧美性爱网| 青青青亚洲精品国产| 国产另类视频| 国产色婷婷视频在线观看| 夜夜操天天摸| 久久精品中文字幕少妇| 成人精品视频一区二区在线 | 色婷婷视频在线| 青青久久91| 亚洲av无码成人专区| 亚洲国产精品VA在线看黑人| 国产成人高清精品免费软件| 欧美成人精品高清在线下载| 精品亚洲国产成人AV| 亚洲国产中文在线二区三区免| 国模视频一区二区| 超碰91免费人妻| 国产成人亚洲无吗淙合青草| 黄色片中文字幕| 久久精品丝袜高跟鞋| 国产精品分类视频分类一区| 麻豆AV网站免费进入| 国产91高清视频| 国产福利拍拍拍| 无码专区国产精品一区| 国产99视频精品免费视频7| 欧美一区二区啪啪| 国产成人艳妇AA视频在线| 少妇极品熟妇人妻专区视频| 欧美一区二区自偷自拍视频| 久久精品国产国语对白| 天堂网亚洲系列亚洲系列| 性网站在线观看| 精品一区二区三区无码视频无码| 91久久偷偷做嫩草影院精品| www欧美在线观看| 一本二本三本不卡无码| 亚洲欧州色色免费AV| 国产精品美女免费视频大全| 精品久久久久成人码免费动漫| 精品综合久久久久久97| 色亚洲成人| 亚洲国产综合自在线另类| 日韩视频免费| 国产成人区在线观看视频| 伊人91视频| 国产亚洲高清在线精品99| 亚洲欧洲日韩综合色天使| 尤物成AV人片在线观看| 91青青在线视频| www.精品国产| 久久精品免费国产大片| 欧美笫一页|