Unix網路程式設計實踐 時間獲取伺服器程式

2021-08-10 21:50:20 字數 1081 閱讀 7510

daytimetcpsrv.c程式原始碼如下:

#include #include #include #include #include #include #include #include #include #include #include #define maxline 256 

#define listenq 5

int main(int argc, char **argv)

bzero(&servaddr, sizeof(servaddr));

servaddr.sin_family = af_inet;

servaddr.sin_addr.s_addr = htonl(inaddr_any);

servaddr.sin_port = htons(13);

if (bind(listenfd, (struct sockaddr *) &servaddr, sizeof(servaddr)) == -1)

if (listen(listenfd, listenq) == -1)

for ( ; ; )

snprintf(buff, sizeof(buff), "%.24s\r\n", ctime(&ticks));

if (write(connfd, buff, strlen(buff)) == -1)

close(connfd);

}}

編譯: gcc -o daytimetcpsrv daytimetcpsrv.c

執行生成的伺服器指令碼:sudo ./daytimetcpsrv

來檢視下伺服器現在的狀態吧:

1. ps aux | grep daytimetcpsrv (檢視程序是否執行)

2. sudo lsof -i:13 (檢視13埠是否被程序使用)

3. telnet 127.0.0.1 13 ,訪問此埠服務即可獲得伺服器時間,如下:thu jan 1 08:00:00 1970

4. 也可以用我們上一節的客戶端程式呼叫此伺服器服務, ./daytimetcpcli 127.0.01 , 獲得返回如下: thu jan 1 08:00:00 1970

Unix網路程式設計實踐 時間獲取客戶程式

對於乙個初學者來說,把多個標頭檔案封裝到unp.h不是很方便學習,遂擴充套件於此。daytimetcpcli.c檔案如下 include include include include include include include include define maxline 256 int ma...

unix網路程式設計 時間同步

以下 在centos6.2測試通過 客戶端 如下 include include include include include include include using namespace std define maxline 4096 max text line length int main...

unix網路程式設計初探 獲取伺服器時間

客戶端向伺服器端傳送請求,伺服器收到請求做相應的處理,將處理結果傳回客戶端。下面採用tcp協議實現伺服器和客戶端之間的連線。1.客戶端 約定雙方的傳輸協議 udp或者tcp 根據傳輸協議建立socket 伺服器的ip位址和埠號 連線伺服器 獲取伺服器傳遞回來的資料。include include i...