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.

主站蜘蛛池模板: 国产乱码精品一区二区三区中文| 日韩黄色在线| 亚洲第一视频免费在线| 婷婷丁香在线观看| 狠狠综合久久| 免费jjzz在在线播放国产| 国产成人久久777777| 日本a级免费| 青草精品视频| 爽爽影院十八禁在线观看| 国产成人综合亚洲网址| 国产簧片免费在线播放| 久久香蕉国产线看观| 最新精品国偷自产在线| 久久久精品国产亚洲AV日韩| 亚洲永久免费网站| 国产精品第一区| 欧美在线视频a| 一本无码在线观看| 中国毛片网| 99re热精品视频国产免费| 精品国产中文一级毛片在线看| 国产免费好大好硬视频| 免费在线a视频| 国产人碰人摸人爱免费视频| 久久永久精品免费视频| 1024国产在线| 日本手机在线视频| 91久草视频| 91成人在线观看| 超碰aⅴ人人做人人爽欧美| 亚洲中久无码永久在线观看软件| 国产丰满大乳无码免费播放| 成人年鲁鲁在线观看视频| 亚洲欧美天堂网| a级毛片免费网站| 亚洲天堂区| 久久精品波多野结衣| 日韩色图在线观看| 98超碰在线观看| 亚洲日韩日本中文在线| 国产亚洲精久久久久久久91| 亚洲人成影视在线观看| 欧洲精品视频在线观看| 亚洲欧美综合另类图片小说区| 亚洲第一视频网| 久久国产精品娇妻素人| 午夜不卡视频| 亚洲经典在线中文字幕| 亚洲va欧美ⅴa国产va影院| 国产美女一级毛片| 久久精品日日躁夜夜躁欧美| 精品少妇人妻av无码久久| 91久久夜色精品国产网站 | 午夜无码一区二区三区| 国产精品视频第一专区| 精品国产一区二区三区在线观看 | 99精品一区二区免费视频| 伊人久久婷婷| 亚洲性日韩精品一区二区| 在线国产91| 伊人精品成人久久综合| 99国产精品免费观看视频| 亚洲成aⅴ人在线观看| 成人一级黄色毛片| 成人福利在线视频免费观看| 国产精品浪潮Av| 四虎永久在线| 国产精女同一区二区三区久| jizz亚洲高清在线观看| 人妻一本久道久久综合久久鬼色| 毛片基地美国正在播放亚洲 | 69国产精品视频免费| 亚洲国产综合第一精品小说| 无码AV动漫| 88av在线看| 在线一级毛片| 在线a网站| 精品久久久无码专区中文字幕| 国产午夜精品一区二区三| 成人日韩欧美| 久久免费视频播放|