網路通訊 筆記

2021-10-07 20:19:32 字數 1225 閱讀 3217

b站資源:【網路】半小時看懂《計算機網路》 

計算機通訊的發展

兩台電腦要通訊,接一根線就可以了。

隨著越來越多的電腦要通訊,如果兩兩電腦需要接一根線就需要接很多的線。

為了解決這個問題,發明了hub(集線器,物理層)這樣所有資料就發到這個hub,然後這個hub會把資料報發給所有的計算機。

但是hub有個問題,所有電腦都會收到,並不是只有接受者才能收到這個資料

為了解決這個問題,就給資料報加標識。比如1給4發資料,這個資料標識為4,除了4以外如果收到這個資料報就直接銷毀。

還有乙個問題是,如果多台電腦同時發資訊到了hub之後會發生資訊雜糅。也就是說當1發給4和2發給5的時候,4可能會收到1和2發的資訊混在意思了,兩個資料報都沒法被解析出來。

為了解決這個問題,就發明了一種協議叫csma/cd用來檢測在鏈路是上是否有人正在傳送資料。沒有的時候才進行資料的傳送。防止衝突

hub的確定,進行資料的廣播會導致這個寬頻的利用率較低,因為每次只能有一台計算機傳送資料。

為了提高效率,發明了交換機switch(在資料鏈路層).

交換機的原理,交換機記錄每台計算機的mac 位址還有他所對應的埠。當比如mac 1 -> 1號,mac2 -> 2號,mac3->3號。當1號機給3號機發資訊的時候,資訊會由1號埠接受後,從3號埠發出去,然後3號機就會收到這個資訊。

新的交換機並沒有這個**。所以在第一次傳輸的時候。比如a 傳資料到b,a 資料傳送到交換機,他就會知道mac 位址a 還有它對應的埠。但是找不到b,所以他給每個埠都傳送,得到b 的回應之後,b 的mac 位址還有對應的埠就會被記錄下來。經過一段時間,**就會被填滿。

資料鏈路層的資料分為頭部和資料,頭部記錄了源位址和目的mac位址。

橋接,交換機的乙個埠連線著另一台交換機,並且兩台交換機分別連著不同的電腦。

就會出現,不同的電腦連線同乙個埠的情況。

交換機記錄位址數量有限,為了解決這個問題,發明了路由器

有了路由器(網路層)就發明了ip位址來表示裝置和網路。通過路由表就能進行不同網路下裝置之間的交流。

ip位址不能直接用於通訊,它是乙個虛擬位址。通訊還是要用到mac位址

先通過arp 協議通過ip位址去查目的地的mac 位址,然後資料就在物理層傳輸。

mac資料報的資料部分,包括ip 的源位址和目的位址還有ip包的資料

串列埠通訊筆記

串列埠通訊主要用到下面幾個函式 createfile 開啟通訊埠 closehandle 關閉通訊埠 getcommstate 取得埠的引數 setcommstate 設定埠引數 writefile 埠傳送資料 readfile 埠讀取資料 clearcommerror 清除埠錯誤,並取得資訊 pu...

Socket通訊筆記

當socket通訊的3次握手和四次揮手的問題了解了之後,下一步來到實際的程式開發階段了。首先,乙個簡單的應和答。當client第一次發出資訊之前大致有以下過程 如下 client public static void main string args server public static voi...

C Socket SSL通訊筆記

一 x.509證書 1.製作證書 先進入到vs2005的命令列狀態,即 開始 程式 microsoft visual studio 2005 visual studio tools visual studio 2005 命令提示 鍵入 makecert r pe n cn myserver ss m...