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级毛片一区二区三区| 亚洲国产精品国自产拍A| 欧美一区福利| 国产无码制服丝袜| 国产一级在线观看www色 | 丝袜亚洲综合| 亚洲经典在线中文字幕| 欧洲日本亚洲中文字幕| www.av男人.com| 国产福利不卡视频| 再看日本中文字幕在线观看| 亚洲第一成年网| 成人国产免费| 国产麻豆va精品视频| a国产精品| 国产精品自在在线午夜区app| 美女毛片在线| 99re在线视频观看| 日韩a在线观看免费观看| 免费在线色| 日韩av无码精品专区| 久久影院一区二区h| 夜夜爽免费视频| AV不卡无码免费一区二区三区| 夜夜拍夜夜爽| 国产精品区视频中文字幕| 亚洲美女视频一区| 伊人丁香五月天久久综合| 国产成人精品午夜视频'| 色爽网免费视频| 夜精品a一区二区三区| 亚洲人成网18禁| 18禁不卡免费网站| 男人天堂亚洲天堂| 91精品国产综合久久不国产大片| julia中文字幕久久亚洲| 久久伊人色| 99无码熟妇丰满人妻啪啪 | 人人91人人澡人人妻人人爽| 青草视频在线观看国产| 国产精品无码AV中文| 久久香蕉国产线看观看式| 五月婷婷综合色| 91av成人日本不卡三区| 亚洲天天更新| 日韩精品专区免费无码aⅴ| 波多野结衣爽到高潮漏水大喷| 亚洲精品第一页不卡| 免费a在线观看播放| 欧美精品高清| 欧美69视频在线| 青青国产成人免费精品视频| 国产成人精品男人的天堂下载| 99国产精品国产| 国产精品任我爽爆在线播放6080| 国产精品亚洲天堂| 欧美自慰一级看片免费| 亚洲一区免费看| 国产欧美日韩在线在线不卡视频| 一级高清毛片免费a级高清毛片| 亚洲欧洲日韩国产综合在线二区| 国产成人精品亚洲77美色| 国产AV无码专区亚洲精品网站| 亚洲精品欧美日韩在线| 在线免费不卡视频| 欧美国产三级| 强乱中文字幕在线播放不卡| 91丝袜美腿高跟国产极品老师| 在线欧美一区| 亚洲天堂成人在线观看| 免费精品一区二区h| 热99re99首页精品亚洲五月天| 直接黄91麻豆网站| 国产主播在线一区| 欧美精品在线免费| 国产色网站| 狠狠综合久久| 久久中文字幕2021精品| 在线毛片免费| 高清精品美女在线播放| 国产好痛疼轻点好爽的视频| 中文字幕佐山爱一区二区免费|