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

局域網時間同步系統設計與實現

2013-04-29 22:33:05胡紹波
計算機時代 2013年6期

胡紹波

摘 要: 目前很多軟件系統都是基于網絡環境的,擁有統一的時間是許多分布式軟件應用的前提,但是這些軟件系統并沒有提供同步各計算機系統時間的功能。為此,探討了Windows環境下局域網系統時間同步的相關設計模型,介紹了系統的開發原理、設計思想和具體實現,給出了主要的程序代碼。該系統的開發,解決了實際工作中局域網計算機時間同步的問題,達到了預期的效果。

關鍵詞: 時間同步; 系統設計; 系統實現; Socket

中圖分類號:TP3 文獻標志碼:B 文章編號: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 引言

隨著計算機網絡應用范圍的不斷擴大,對網絡設備及網絡應用的時間同步提出了越來越高的要求,擁有一個精準的時間同步機制是許多分布式應用的前提[1]。目前大部分軟件系統均是基于網絡環境的,但是相當數量的軟件系統,并未具有與各計算機系統的時間同步功能,通常是利用操作系統的時間同步功能進行時間同步,步驟繁瑣[2]。如果人工修改各計算機時間,不但費時,而且很難做到精準。為此,開發一個能同步局域網內各指定計算機時間的軟件系統是很有意義的。

1 系統功能

該系統的主要功能是以局域網中某一臺計算機(客戶端)的時間為基準,將局域網中計算機時間統一為該指定的計算機時間,從而實現局域網內計算機時間的同步,保證其他應用軟件數據采集的正確性。

1.1 系統用例圖

該系統的用例圖,如圖1所示。

[設置需同步時間的計算機網絡端口] [管理需同步時間的計算機網絡地址] [系統管理員][啟動系統時間同步服務] [同步系統時間]

圖1 系統用例圖

1.2 系統界面

該系統的時間同步服務器和客戶端界面如圖2、圖3所示。

圖2 時間同步服務器界面

圖3 系統時間同步客戶端界面

2 系統設計

系統采用C/S架構,服務器端提供設置同步時間服務所對應的網絡端口,啟動系統時間同步服務和接收同步時間請求的功能;客戶端提供管理需同步時間的計算機網絡地址和對應的服務端口的功能。

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

圖4 服務器端處理流程

圖5 客戶端處理流程

3 系統關鍵功能實現

3.1 系統開發環境

該系統的開發環境為:Microsoft Visual Studio 2010+Windows 7。

3.2 系統實現關鍵代碼

3.2.1 系統時間的獲取和設置

系統實現中通過調用系統API函數對系統時間進行操作,核心代碼如下:

//系統時間的獲取與設置操作類,調用API函數

public class TimeOperate

{ [DllImport("Kernel32.dll")]

public static extern void GetLocalTime (SystemTime sysTime);

//獲取系統時間

[DllImport("Kernel32.dll")]

public static extern bool SetLocalTime (SystemTime sysTime);

//設置系統時間

}

3.2.2 系統時間與數據流的轉換

系統實現中將獲取到的系統時間對象進行序列化后通過網絡進行傳輸,當服務器收到后再將其進行反序列化,得到時間對象。序列化和反序列化操作的主要代碼如下:

//序列化操作:將系統時間對象轉換為數據流

private byte[] TimeToStream(SystemTime st)

{ MemoryStream ms=new MemoryStream();

BinaryFormatter formatter=new BinaryFormatter();

formatter.Serialize(ms, st);

return ms.ToArray();

}

//反序列化操作:將數據流轉換為時間對象

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 時間同步服務監聽器的建立

系統中服務器與客戶端之間通訊使用.NET Framework提供的Sockets進行通訊[3-5]。

服務器端建立時間同步服務器監聽器,監聽客戶端請求。核心代碼如下:

private IPAddress ipAddress; //綁定時間同步服務的IP地址

private int intPort; //綁定時間同步服務的端口號

private Socket listenerSocket; //時間同步服務的監聽器

//時間同步服務監聽過程

public void BeginListen()

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

listenerSocket=new Socket(AddressFamily.InterNetwork,

SocketType.Stream, ProtocolType.Tcp);

listenerSocket.Bind(ipe);

listenerSocket.Listen(0); //開時監聽服務

while (true) //循環監聽

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

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

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

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

//從客戶端接收客戶端的當前時間

SystemTime st=StreamToTime(stream);

//將網絡數據流反序列化為系統時間對象

TimeOperate.SetLocalTime(st);

//根據客戶端系統時間設置本計算機的系統時間

temp.Close();

}

}

}

3.2.4 客戶端連接服務器

該部分完成客戶端發起連接服務器的請求,將客戶端當期系統時間發送到服務器。該部分主要通過Socket類的Send方法完成操作,實現較為簡單,代碼略。

4 結束語

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

參考文獻:

[1] 劉愛東等.一種基于通用PC的局域網時間同步方法[J].科學技術與

工程,2012.12(28):7434-7438

[2] 趙勇等.時間同步服務器在中、小型局域網中的應用[N].科技創新導

報,2010.26:29

[3] 許毅,馮山.使用C#語言進行多線程程序設計[J].計算機工程,

2003.29(5):1-2

[4] 吳晨等.C#網絡與通訊程序設計案例精講[M].清華大學出版社,

2006.

[5] 姜曉東.C#4.0權威指南[M].機械工業出版社,2010.

主站蜘蛛池模板: 国产精品蜜臀| 欧美成一级| 亚洲欧美自拍一区| 亚洲精品欧美日韩在线| 在线免费不卡视频| 夜精品a一区二区三区| 中国特黄美女一级视频| 精品一区二区无码av| AV在线天堂进入| 在线无码九区| 中文字幕第1页在线播| 九色最新网址| 亚洲有无码中文网| 色哟哟国产精品| 中文字幕伦视频| 91在线国内在线播放老师| 蜜桃臀无码内射一区二区三区| 精品国产免费第一区二区三区日韩| 毛片一级在线| 亚洲一级毛片| 伊人久久久久久久| 成人毛片免费观看| 精品久久777| 亚洲av无码成人专区| 免费无码网站| 又爽又黄又无遮挡网站| 亚洲av色吊丝无码| 爽爽影院十八禁在线观看| 精品人妻无码中字系列| 中文国产成人精品久久一| 国产精品白浆在线播放| 91精品啪在线观看国产| 国产福利一区视频| 亚洲第一天堂无码专区| 日本国产精品| a网站在线观看| 国产精品xxx| 欧美成一级| 天堂在线视频精品| 99精品国产电影| 在线播放真实国产乱子伦| 中文字幕丝袜一区二区| 亚洲欧洲日本在线| 国产精品毛片一区视频播| 欧美色丁香| 欧美精品二区| 青草免费在线观看| 国产黄网永久免费| 欧美成a人片在线观看| 婷婷丁香色| 无码人中文字幕| 久久中文字幕2021精品| 久久人人97超碰人人澡爱香蕉| 污视频日本| 蝴蝶伊人久久中文娱乐网| 久久美女精品| 日本一区二区三区精品AⅤ| 国产后式a一视频| 国产a在视频线精品视频下载| 无码日韩精品91超碰| 国产成人综合网| A级毛片高清免费视频就| 国产在线观看第二页| 亚洲国产欧洲精品路线久久| 91亚洲精品第一| 国产精品手机在线播放| 台湾AV国片精品女同性| 日韩AV手机在线观看蜜芽| 中文字幕日韩视频欧美一区| 婷婷开心中文字幕| 久久中文无码精品| 日本久久免费| 国产乱人伦偷精品视频AAA| 一级一级特黄女人精品毛片| 成人亚洲国产| 91精品国产自产91精品资源| 精品国产中文一级毛片在线看| 久久综合色天堂av| 色综合日本| 三上悠亚一区二区| 亚洲视频a| 亚洲黄网视频|