UNIX網路程式設計 簡介以及獲取服務端時間例項

2021-09-29 18:13:47 字數 795 閱讀 9806

貼圖**

讀/寫

while

((n =

read

(sockfd, recvline, maxline)

)>0)

使用read函式讀取伺服器返回的資料。函式返回值為實際讀取的位元組數;若未讀取到資料,返回負值。

從使用read函式也可以看出,linux將通訊裝置看作"檔案"來處理,伺服器返回的資料會先存放在該"檔案"中,通過read系統呼叫來讀取這些資料。在傳送資料時,我們通過wirte系統呼叫往某類似"檔案"中寫入資料,再由作業系統將"檔案"中的資料傳送出去。

關閉套接字

if

(close

(sockfd)==-

1)err_sys

("close error"

);

不同實驗環境

主要的差異在於ip位址。

前兩種環境下,繫結的ip即主機或虛擬機器的ip,可以使用ifconfig命令

第三種環境下,繫結的為伺服器的公網ip,同時注意防火牆是否開啟了對應的埠(或者直接關閉防火牆)

UNIX網路程式設計

在unix network programming 的 3.7 inet pton and inet ntop functions 中提到中有如下兩個巨集定義 define inet addrstrlen 16 for ipv4 dotted decimal define inet6 addrstr...

unix網路程式設計

任何tcp的實現都需要為msl選擇乙個合適的值,rfc的建議值是2分鐘。分組可能出現迷途,若迷途分組在msl中找到路,造成重複,tcp必須修復 time wait存在的理由 可靠的實現全雙工的連線和終止 考慮最終ack丟失的情況,允許老的重複分組在網路中消逝 tcp的化生身現象,因為time wai...

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

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