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

局域網(wǎng)時(shí)間同步系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2013-04-29 22:33:05胡紹波
計(jì)算機(jī)時(shí)代 2013年6期

胡紹波

摘 要: 目前很多軟件系統(tǒng)都是基于網(wǎng)絡(luò)環(huán)境的,擁有統(tǒng)一的時(shí)間是許多分布式軟件應(yīng)用的前提,但是這些軟件系統(tǒng)并沒(méi)有提供同步各計(jì)算機(jī)系統(tǒng)時(shí)間的功能。為此,探討了Windows環(huán)境下局域網(wǎng)系統(tǒng)時(shí)間同步的相關(guān)設(shè)計(jì)模型,介紹了系統(tǒng)的開(kāi)發(fā)原理、設(shè)計(jì)思想和具體實(shí)現(xiàn),給出了主要的程序代碼。該系統(tǒng)的開(kāi)發(fā),解決了實(shí)際工作中局域網(wǎng)計(jì)算機(jī)時(shí)間同步的問(wèn)題,達(dá)到了預(yù)期的效果。

關(guān)鍵詞: 時(shí)間同步; 系統(tǒng)設(shè)計(jì); 系統(tǒng)實(shí)現(xiàn); Socket

中圖分類號(hào):TP3 文獻(xiàn)標(biāo)志碼:B 文章編號(hào):1006-8228(2013)06-45-02

Design and implementation of time-synchronization system for LAN

Hu Shaobo

(Kunming Branch of the People's Bank of China, Kunming, Yunnan 650021, China)

Abstract: Since many software systems are based on the network environment, a unified time is the premise of many distributed software applications. However these software usually do not provide the synchronization function of computer system time. Therefore, the design model of time-synchronization system for LAN based on Windows is discussed. The principles of system development and design ideas are introduced, and the main program code is given. The problem of the LAN computer time synchronization is overcome by development of the system in practice, which achieves the desired effects.

Key words: time-synchronization; system design; system implementation; Socket

0 引言

隨著計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)用范圍的不斷擴(kuò)大,對(duì)網(wǎng)絡(luò)設(shè)備及網(wǎng)絡(luò)應(yīng)用的時(shí)間同步提出了越來(lái)越高的要求,擁有一個(gè)精準(zhǔn)的時(shí)間同步機(jī)制是許多分布式應(yīng)用的前提[1]。目前大部分軟件系統(tǒng)均是基于網(wǎng)絡(luò)環(huán)境的,但是相當(dāng)數(shù)量的軟件系統(tǒng),并未具有與各計(jì)算機(jī)系統(tǒng)的時(shí)間同步功能,通常是利用操作系統(tǒng)的時(shí)間同步功能進(jìn)行時(shí)間同步,步驟繁瑣[2]。如果人工修改各計(jì)算機(jī)時(shí)間,不但費(fèi)時(shí),而且很難做到精準(zhǔn)。為此,開(kāi)發(fā)一個(gè)能同步局域網(wǎng)內(nèi)各指定計(jì)算機(jī)時(shí)間的軟件系統(tǒng)是很有意義的。

1 系統(tǒng)功能

該系統(tǒng)的主要功能是以局域網(wǎng)中某一臺(tái)計(jì)算機(jī)(客戶端)的時(shí)間為基準(zhǔn),將局域網(wǎng)中計(jì)算機(jī)時(shí)間統(tǒng)一為該指定的計(jì)算機(jī)時(shí)間,從而實(shí)現(xiàn)局域網(wǎng)內(nèi)計(jì)算機(jī)時(shí)間的同步,保證其他應(yīng)用軟件數(shù)據(jù)采集的正確性。

1.1 系統(tǒng)用例圖

該系統(tǒng)的用例圖,如圖1所示。

[設(shè)置需同步時(shí)間的計(jì)算機(jī)網(wǎng)絡(luò)端口] [管理需同步時(shí)間的計(jì)算機(jī)網(wǎng)絡(luò)地址] [系統(tǒng)管理員][啟動(dòng)系統(tǒng)時(shí)間同步服務(wù)] [同步系統(tǒng)時(shí)間]

圖1 系統(tǒng)用例圖

1.2 系統(tǒng)界面

該系統(tǒng)的時(shí)間同步服務(wù)器和客戶端界面如圖2、圖3所示。

圖2 時(shí)間同步服務(wù)器界面

圖3 系統(tǒng)時(shí)間同步客戶端界面

2 系統(tǒng)設(shè)計(jì)

系統(tǒng)采用C/S架構(gòu),服務(wù)器端提供設(shè)置同步時(shí)間服務(wù)所對(duì)應(yīng)的網(wǎng)絡(luò)端口,啟動(dòng)系統(tǒng)時(shí)間同步服務(wù)和接收同步時(shí)間請(qǐng)求的功能;客戶端提供管理需同步時(shí)間的計(jì)算機(jī)網(wǎng)絡(luò)地址和對(duì)應(yīng)的服務(wù)端口的功能。

同步時(shí)間的具體處理流程如圖4、圖5所示。

圖4 服務(wù)器端處理流程

圖5 客戶端處理流程

3 系統(tǒng)關(guān)鍵功能實(shí)現(xiàn)

3.1 系統(tǒng)開(kāi)發(fā)環(huán)境

該系統(tǒng)的開(kāi)發(fā)環(huán)境為:Microsoft Visual Studio 2010+Windows 7。

3.2 系統(tǒng)實(shí)現(xiàn)關(guān)鍵代碼

3.2.1 系統(tǒng)時(shí)間的獲取和設(shè)置

系統(tǒng)實(shí)現(xiàn)中通過(guò)調(diào)用系統(tǒng)API函數(shù)對(duì)系統(tǒng)時(shí)間進(jìn)行操作,核心代碼如下:

//系統(tǒng)時(shí)間的獲取與設(shè)置操作類,調(diào)用API函數(shù)

public class TimeOperate

{ [DllImport("Kernel32.dll")]

public static extern void GetLocalTime (SystemTime sysTime);

//獲取系統(tǒng)時(shí)間

[DllImport("Kernel32.dll")]

public static extern bool SetLocalTime (SystemTime sysTime);

//設(shè)置系統(tǒng)時(shí)間

}

3.2.2 系統(tǒng)時(shí)間與數(shù)據(jù)流的轉(zhuǎn)換

系統(tǒng)實(shí)現(xiàn)中將獲取到的系統(tǒng)時(shí)間對(duì)象進(jìn)行序列化后通過(guò)網(wǎng)絡(luò)進(jìn)行傳輸,當(dāng)服務(wù)器收到后再將其進(jìn)行反序列化,得到時(shí)間對(duì)象。序列化和反序列化操作的主要代碼如下:

//序列化操作:將系統(tǒng)時(shí)間對(duì)象轉(zhuǎn)換為數(shù)據(jù)流

private byte[] TimeToStream(SystemTime st)

{ MemoryStream ms=new MemoryStream();

BinaryFormatter formatter=new BinaryFormatter();

formatter.Serialize(ms, st);

return ms.ToArray();

}

//反序列化操作:將數(shù)據(jù)流轉(zhuǎn)換為時(shí)間對(duì)象

private SystemTime StreamToTime(byte[] stream)

{ SystemTime st;

MemoryStream ms=new MemoryStream(stream);

BinaryFormatter bf=new BinaryFormatter();

st=(SystemTime)bf.Deserialize(ms);

return st;

}

3.2.3 時(shí)間同步服務(wù)監(jiān)聽(tīng)器的建立

系統(tǒng)中服務(wù)器與客戶端之間通訊使用.NET Framework提供的Sockets進(jìn)行通訊[3-5]。

服務(wù)器端建立時(shí)間同步服務(wù)器監(jiān)聽(tīng)器,監(jiān)聽(tīng)客戶端請(qǐng)求。核心代碼如下:

private IPAddress ipAddress; //綁定時(shí)間同步服務(wù)的IP地址

private int intPort; //綁定時(shí)間同步服務(wù)的端口號(hào)

private Socket listenerSocket; //時(shí)間同步服務(wù)的監(jiān)聽(tīng)器

//時(shí)間同步服務(wù)監(jiān)聽(tīng)過(guò)程

public void BeginListen()

{ IPEndPoint ipe=new IPEndPoint(ipAddress, intPort);

listenerSocket=new Socket(AddressFamily.InterNetwork,

SocketType.Stream, ProtocolType.Tcp);

listenerSocket.Bind(ipe);

listenerSocket.Listen(0); //開(kāi)時(shí)監(jiān)聽(tīng)服務(wù)

while (true) //循環(huán)監(jiān)聽(tīng)

{ Socket temp=listenerSocket.Accept(); //接受客戶端的請(qǐng)求

if (temp != null) //如果有連接請(qǐng)求

{ byte[] stream=new byte[1024];

temp.Receive(stream, stream.Length, 0);

//從客戶端接收客戶端的當(dāng)前時(shí)間

SystemTime st=StreamToTime(stream);

//將網(wǎng)絡(luò)數(shù)據(jù)流反序列化為系統(tǒng)時(shí)間對(duì)象

TimeOperate.SetLocalTime(st);

//根據(jù)客戶端系統(tǒng)時(shí)間設(shè)置本計(jì)算機(jī)的系統(tǒng)時(shí)間

temp.Close();

}

}

}

3.2.4 客戶端連接服務(wù)器

該部分完成客戶端發(fā)起連接服務(wù)器的請(qǐng)求,將客戶端當(dāng)期系統(tǒng)時(shí)間發(fā)送到服務(wù)器。該部分主要通過(guò)Socket類的Send方法完成操作,實(shí)現(xiàn)較為簡(jiǎn)單,代碼略。

4 結(jié)束語(yǔ)

該系統(tǒng)的開(kāi)發(fā)源于實(shí)際工作的需要,解決實(shí)際工作中局域網(wǎng)計(jì)算機(jī)同步時(shí)間的問(wèn)題。系統(tǒng)提供一鍵式同步局域網(wǎng)計(jì)算機(jī)系統(tǒng)時(shí)間的功能,操作方便,不需要用戶對(duì)計(jì)算機(jī)進(jìn)行其余配置,極大地減少了用戶的工作負(fù)擔(dān)。但是,該系統(tǒng)仍然存在兩方面的不足:一是實(shí)現(xiàn)中并未考慮到網(wǎng)絡(luò)傳輸時(shí)延對(duì)時(shí)間同步精度的影響;二是系統(tǒng)的實(shí)現(xiàn)是基于Windows系統(tǒng)的,目前尚不支持非Windows系統(tǒng)的時(shí)間同步。以上問(wèn)題需進(jìn)一步完善和研究。

參考文獻(xiàn):

[1] 劉愛(ài)東等.一種基于通用PC的局域網(wǎng)時(shí)間同步方法[J].科學(xué)技術(shù)與

工程,2012.12(28):7434-7438

[2] 趙勇等.時(shí)間同步服務(wù)器在中、小型局域網(wǎng)中的應(yīng)用[N].科技創(chuàng)新導(dǎo)

報(bào),2010.26:29

[3] 許毅,馮山.使用C#語(yǔ)言進(jìn)行多線程程序設(shè)計(jì)[J].計(jì)算機(jī)工程,

2003.29(5):1-2

[4] 吳晨等.C#網(wǎng)絡(luò)與通訊程序設(shè)計(jì)案例精講[M].清華大學(xué)出版社,

2006.

[5] 姜曉東.C#4.0權(quán)威指南[M].機(jī)械工業(yè)出版社,2010.

主站蜘蛛池模板: 无码国内精品人妻少妇蜜桃视频| 欧美亚洲一区二区三区在线| 亚洲国产综合自在线另类| 欧美国产综合视频| 亚洲经典在线中文字幕| 久久精品丝袜| 亚洲成人一区在线| 色成人综合| 欧美va亚洲va香蕉在线| 91网站国产| 91九色最新地址| 国产综合精品日本亚洲777| 久久久久国产精品熟女影院| 日韩欧美视频第一区在线观看| 中文字幕人成人乱码亚洲电影| 欧美日韩va| 热热久久狠狠偷偷色男同| 色AV色 综合网站| 在线观看免费人成视频色快速| 国产成人免费视频精品一区二区| 国产十八禁在线观看免费| 国产99视频精品免费视频7| 日韩在线1| 亚洲黄色高清| 午夜丁香婷婷| 欧美三级自拍| 成人综合网址| 久久精品亚洲热综合一区二区| av一区二区三区在线观看| 国产日本欧美在线观看| 久久一级电影| 国产亚洲视频免费播放| 亚洲国产看片基地久久1024| 白丝美女办公室高潮喷水视频| 精品国产香蕉在线播出| 欧美亚洲欧美区| 亚洲va视频| 欧美亚洲另类在线观看| 欧美日韩国产成人高清视频| 国产成人亚洲综合A∨在线播放 | 精品伊人久久大香线蕉网站| 中文毛片无遮挡播放免费| 免费无码网站| 日本一本正道综合久久dvd | 国产综合精品日本亚洲777| 亚洲国内精品自在自线官| 国产精品三级专区| 中文字幕人成人乱码亚洲电影| 久久人人妻人人爽人人卡片av| 国产精品亚洲片在线va| 91免费精品国偷自产在线在线| 五月丁香在线视频| 久久精品亚洲中文字幕乱码| 欧美中出一区二区| 午夜不卡福利| a级毛片网| AV片亚洲国产男人的天堂| 四虎成人免费毛片| 国内精品九九久久久精品| 伊人久久婷婷| 最新亚洲人成网站在线观看| 中文字幕在线观| 国产丝袜第一页| 亚洲第一在线播放| 国产午夜无码片在线观看网站| Aⅴ无码专区在线观看| 亚洲第一av网站| 日韩欧美国产成人| 九色视频最新网址| 青青青国产精品国产精品美女| 四虎永久免费在线| 天天色天天综合| 性网站在线观看| 99人体免费视频| 五月天香蕉视频国产亚| 97国产精品视频人人做人人爱| 青青青视频91在线 | 日韩欧美中文字幕在线精品| 色综合五月婷婷| 色呦呦手机在线精品| 欧美视频在线播放观看免费福利资源| 久久午夜夜伦鲁鲁片不卡|