TTTTTTZZZZZZ(網路程式設計) 1

2021-09-29 14:25:48 字數 831 閱讀 5375

網路其實就是跨主機的程序間通訊

協議分層:

1.為啥要分層

網路協議比較複雜。如果不拆分那就太複雜了
2.分層之後有什麼好處
a. 拆分成多個層之後,相當於拆分了很多的模組,同時降低了整個系統的耦合程度

b.根據實際需求,隨時可以替換其中的某一層協議

osi七層模型:

物數網傳會表應

tcp/ip模型

物數網傳應

最重要的協議有兩個乙個是tcp/乙個是http

一般而言:

對於一台主機而言,他的作業系統核心實現了從傳輸層到物理層的內容

對於一台路由器,它實現了從網路層到物理層

對於一台交換機,它實現了從數字鏈路層到物理層

對於集線器,他只實現了物理層

這些都只是一般而言,實際上還是有差別的

上下層協議之間互動資料的時候具體做了什麼事情?

1.封裝

2.復用(拆封裝)

源ip位址,目的ip位址

udp/tcp

可靠傳輸和不可靠傳輸

可靠傳輸並不是說100%就能傳送成功,畢竟網線斷了是不可能傳送成功的

可靠傳輸指的是傳送成功了,就會知道自己成功了

傳送失敗了,也能知道自己失敗了

不可靠傳輸指的是,傳送成功還是失敗,自己都不知道

位元組序和cpu有關.

socket本質上就是乙個檔案描述符

所謂的建立socket本質上就是開啟乙個檔案(socket型別的檔案)(這個檔案不是和磁碟上的檔案對應,而是和網絡卡 這樣的裝置對應)

讀檔案就是往網絡卡上讀資料,寫檔案就是往網絡卡中寫資料

TTTTTTZZZZZZ(基礎命令) 2

ctrl l clear 清屏 pwd 檢視你當前路徑 exit命令也可以從root使用者切換回普通使用者 yum install tree rm r 遞迴式的刪除 i 每乙個步驟都要確認 f 與 i相反,不用每個步驟確認 rm rf 一旦敲下萬劫不復快照一般是最好在關機狀態下拍攝快照,因為在開機狀...

linux 網路程式設計與 windows 網路程式設計

最近寫了乙個程式,涉及到在windows下執行的乙個程式到執行在linux下的伺服器取出資料。一開始還真沒有適應過來。下面說說我遇見的一些問題。1 windows下connect不成功。最開始也是不清楚 出錯,程式莫名其妙就在這個connect斷下,而且會花費很長的時間在connect這一句停留很長...

資料幀和網路編址

資料幀和網路編址 資料幀 1 ip報文頭部資訊用於指導網路裝置對報文進行路由和分片。2 同乙個網段 內的資料 通過鏈路層即可實現 單播,組播,廣播 而跨網段的資料 需要使用網路裝置的路由功能。3 分片是指資料報超過一定長度時,需要被劃分成不同 的片段使其能夠在網路中傳輸。4 ip報文頭部長度為20到...