1.osi7層模型 vs 四層模型
bzero:#include ,不是標準函式,在ansi中沒有定義。
memset:考慮相容性等問題的時候還是使用memset吧。
3.tcp程式設計模型
時間伺服器的原始碼如下:
tcp的連線方式之前在tcpip網路程式設計中一致,尹聖雨的書籍。
裝置端連線上伺服器後,將伺服器的時間傳送給客戶端。
#include "socket_includes.h"
int main(int argc, char *argv)
if((ret = setsockopt(listenfd, sol_socket, so_reuseaddr, &opt, sizeof(opt))) < 0)
bzero(&server, sizeof(server));
server.sin_family = af_inet;
server.sin_port = htons(8888);
server.sin_addr.s_addr = htonl(inaddr_any);
len = sizeof(struct sockaddr);
if(bind(listenfd, (struct sockaddr *)&server, len)<0)
listen(listenfd, max_listen_que);
while(1)
timep = time(null);
snprintf(buf, sizeof(buf), "%s", ctime(&timep));
write(sockfd, buf, strlen(buf));
printf("bytes:%d\n", strlen(buf));
printf("sockfd=%d\n", sockfd);
close(sockfd);
} return 0;
}
4.三次握手、四次揮手流程
之前的課程中有提到過,這邊不再描述,尹聖雨的tcpip程式設計。
5.網路位元組序的轉換問題
6.程序傳遞到核心的函式:bind、connect、sendto
核心傳遞到程序的函式:accept, recvfrom,getsockname, getpeername
7.connect經常碰到的錯誤:
a.硬錯:埠號錯誤,伺服器程序未開啟,收到rst,立刻返回econnrefused;
b.軟錯:ip不可達,協議icmp,比如no route to host,通常是傳送arp請求無響應。
8.accept中的最大連線數
對應兩個佇列:乙個是已完成的連線佇列;另乙個是未完成的連線佇列。
最大數指的就是已完成的連線佇列最大數。
獲取客戶端時間程式
bzero 初始化資料為0 例 include include void main 輸出結果 1 wwwww 2 socket函式原型 int socket int domain,int type,int protocol 1.domain 即協議域,又稱為協議族 family 常用的協議族有,af...
批量獲取客戶端時間偏差
摘要 運維管理員往往需要定期檢視客戶端的時間同步情況,與ntp伺服器的時間偏差。奈何數量眾多,若不借助第三方工具是否有辦法批量獲取時間差呢?本文將介紹如何簡單使用命令解決問題。正文 1.在域內ntp伺服器上執行cmd,導航到p ec.exe路徑下,例如e 192.168.0.1 192.168.0....
獲取客戶端時間差
問題 試題頁面,通過獲取提交任務客戶端時間戳 試題顯示任務時間戳 使用者有效作業時間,對於使用者修改本機時間。會導致無效作業時間 new date gettime 獲取客戶端時間,毫秒級。使用者可以隨意更改方案1 通過jquery獲取服務端時間來計算差值 new date ajax getrespo...