UDP時間更新服務程式

2021-07-22 04:54:42 字數 2948 閱讀 1167

udp時間更新服務程式

網路程式設計,

最好採用兩台電腦

,或者一台電腦,

再開個虛擬機器

,虛擬機器採用網路橋接模式

特點:

發訊息方一直向指定ip

傳送報時訊息

收方一上線就能得到發來的即時訊息 (

未上線的訊息全被拋棄

)若收方上線期間, 

發訊息方關閉

, 收方也一直等待發訊息方的訊息

,只要發訊息方一上線傳送訊息,

收方可以繼續接收發來的訊息

應用: 

,遊戲畫面等的傳輸

原始碼:

#include

#include

#include

#include

#pragma

comment

(lib

,"ws2_32.lib")

#define

buf_size64

intmain()

socket

socksend;

socksend

= socket

(af_inet

, sock_dgram

, ipproto_udp);

if(invalid_socket

== socksend)

sockaddr_in

addrrecv;

addrrecv

.sin_family

= af_inet;

addrrecv

.sin_port

= htons

(9090);

// 向222的ip傳送資料

addrrecv

.sin_addr

.s_un

.s_addr

= inet_addr

("192.168.1.222");

// 就算繫結錯誤也不用管(這裡應該也會繫結出錯)

nres

= bind

(socksend

, (sockaddr

*)&addrrecv

, sizeof

(sockaddr_in

));

printf

("—-時間伺服器已啟動—–\n ");

intnsendlen

= 0;

struct

tmtlocal;

time_tt= 

time

(null);

char

chtime

[64];

intnlen

= sizeof

(sockaddr_in);

while

(true)

closesocket

(socksend);

wsacleanup

();

std::cout

<<

"server stoped! "

<<

std::

endl;

return0;

}

#include

#include

#include

#pragma

comment

(lib

,"ws2_32.lib")

#define

buf_size64

intmain()

socket

socktimerecv;

socktimerecv

= socket

(af_inet

, sock_dgram

, ipproto_udp);

if(invalid_socket

== socktimerecv)

sockaddr_in

addrrecv;

addrrecv

.sin_family

= af_inet;

addrrecv

.sin_port

= htons

(9090);

addrrecv

.sin_addr

.s_un

.s_addr

= htonl

(inaddr_any);

nres

= bind

(socktimerecv

, (sockaddr

*)&addrrecv

, sizeof

(sockaddr_in

));

char

chbufrecv

[buf_size

] = ;

intnlen

= sizeof

(sockaddr_in);

printf

("—-qzher.com start to recv data—–\n ");

char

* pchclientaddr

= nullptr;

intnrecvlen

= 0;

while

(true)

} closesocket

(socktimerecv);

wsacleanup

();

std::cout

<<

"server stoped! "

<<

std::

endl;

return0;

}

時間程式(基於UDP)

server 需求 寫乙個時間同步的伺服器 服務端接收請求 按照client端傳送的時間格式,將伺服器時間轉換成對應格式 傳送給客戶端 import time import socket sk socket.socket type socket.sock dgram sk.bind 127.0.0....

mysql更新時間 Mysql 更新時間

mysql時間加減函式為date add date sub 定義和用法 date add 函式向日期新增指定的時間間隔。date sub 函式向日期減少指定的時間間隔。語法date add date,interval expr type date sub date,interval expr typ...

更新Linux伺服器系統時間

rem copy right by ac del c temp.vbs echo onerror resume next c temp.vbs rem 建立臨時指令碼檔案 echo dimwshshell c temp.vbs echo setwshshell wscript.createobjec...