網路其實就是跨主機的程序間通訊
協議分層:
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到...