python 網路程式設計 00 計算機網路相關知識

2021-10-02 14:58:43 字數 3235 閱讀 2685

思考:計算機如何組成通訊網路?

多台電腦通過交換機的單播、組播、廣播三種通訊方式組成區域網,經過內部處理解析資料,將資料以點對點,點對多的方式傳送給目標路由。

區域網(local area network,lan)是指在某一區域內由多台計算機互聯成的計算機組。一般是方圓幾千公尺以內。區域網可以實現檔案管理、應用軟體共享、印表機共享、工作組內的日程安排、電子郵件和傳真通訊服務等功能。區域網是封閉型的,可以由辦公室內的兩台計算機組成,也可以由乙個公司內的上千臺計算機組成。  

路由器(router),是連線網際網路中各區域網、廣域網的裝置,它會根據通道的情況自動選擇和設定路由,以最佳路徑,按前後順序傳送訊號。 路由器是網際網路絡的樞紐,"交通警察"。目前路由器已經廣泛應用於各行各業,各種不同檔次的產品已成為實現各種骨幹網內部連線、骨幹網間互聯和骨幹網與網際網路互聯互通業務的主力軍。路由和交換機之間的主要區別就是交換機發生在osi參考模型第二層(資料鏈路層),而路由發生在第三層,即網路層。這一區別決定了路由和交換機在移動資訊的過程中需使用不同的控制資訊,所以說兩者實現各自功能的方式是不同的。

路由器(router)又稱閘道器裝置(gateway)是用於連線多個邏輯上分開的網路,所謂邏輯網路是代表乙個單獨的網路或者乙個子網。當資料從乙個子網傳輸到另乙個子網時,可通過路由器的路由功能來完成。因此,路由器具有判斷網路位址和選擇ip路徑的功能,它能在多網路互聯環境中,建立靈活的連線,可用完全不同的資料分組和介質訪問方法連線各種子網,路由器只接受源站或其他路由器的資訊,屬網路層的一種互聯裝置。  

交換機和路由器的區別

交換機:屬於鏈路層,將多個機器組成區域網,經過交換機內部處理解析資訊後,將資訊以點對點,點對多的形式發給固定端,靠mac位址

路由器:屬於網路層,尋找最佳路線跨網段傳輸,靠ip

主機之間「一對所有」的通訊模式,網路對其中每一台主機發出的訊號都進行無條件複製並**,所有主機都可以接收到所有資訊(不管你是否需要),由於其不用路徑選擇,所以其網路成本可以很低廉。有線電視網就是典型的廣播型網路,我們的電視機實際上是接受到所有頻道的訊號,但只將乙個頻道的訊號還原成畫面。在資料網路中也允許廣播的存在,但其被限制在二層交換機的區域網範圍內,禁止廣播資料穿過路由器,防止廣播資料影響大面積的主機。

埠是作業系統為本機應用程式隨機分配的介面(0-65535,其中0-1024已經被定義不能使用)

tcp/ip 埠號大全(7549)

位址解析協議,即arp(address resolution protocol),是根據目標ip位址獲取目標實體地址的乙個tcp/ip協議。

主機傳送資訊時將包含目標ip位址的arp請求廣播到網路上的所有主機,並接收返回訊息,以此確定目標的實體地址。

收到返回訊息後將該ip位址和實體地址存入本機arp快取中並保留一定時間,下次請求時直接查詢arp快取以節約資源。

位址解析協議是建立在網路中各個主機互相信任的基礎上的,網路上的主機可以自主傳送arp應答訊息,其他主機收到應答報文時不會檢測該報文的真實性就會將其記入本機arp快取;由此攻擊者就可以向某一主機傳送偽arp應答報文,使其傳送的資訊無法到達預期的主機或到達錯誤的主機,這就構成了乙個arp欺騙。arp命令可用於查詢本機arp快取中ip位址和mac位址的對應關係、新增或刪除靜態對應關係等。相關協議有rarp、**arp。ndp用於在ipv6中代替位址解析協議。

所謂」子網掩碼」,就是表示子網路特徵的乙個引數。它在形式上等同於ip位址,也是乙個32位二進位制數字,它的網路部分全部為1,主機部分全部為0。比如,ip位址172.16.10.1,如果已知網路部分是前24位,主機部分是後8位,那麼子網路掩碼就是11111111.11111111.11111111.00000000,寫成十進位制就是255.255.255.0。

知道」子網掩碼」,我們就能判斷,任意兩個ip位址是否處在同乙個子網路。方法是將兩個ip位址與子網掩碼分別進行and運算(兩個數字都為1,運算結果為1,否則為0),然後比較結果是否相同,如果是的話,就表明它們在同乙個子網路中,否則就不是。 

子網掩碼 && ip位址 = 網段

用於應用程式之間的通訊。如果說ip位址和mac位址幫我們確定唯一的一台機器,那麼我們怎麼找到一台機器上的乙個軟體呢?

tcp(transmission control protocol)可靠的、面向連線的協議(eg:打**)、傳輸效率低全雙工通訊(傳送快取&接收快取)、面向位元組流。使用tcp的應用:web瀏覽器;電子郵件、檔案傳輸程式。

這個全雙工的通訊將占用兩個計算機之間的通訊線路,直到它被一方或雙方關閉為止。

tcp三次握手四次揮手最通俗理解

當應用程式希望通過udp與乙個應用程式通訊時,傳輸資料之前源端和終端不建立連線。

當它想傳送時就簡單地去抓取來自應用程式的資料,並盡可能快地把它扔到網路上。

tcp---傳輸控制協議,提供的是面向連線、可靠的位元組流服務。當客戶和伺服器彼此交換資料前,必須先在雙方之間建立乙個tcp連線,之後才能傳輸資料。tcp提供超時重發,丟棄重複資料,檢驗資料,流量控制等功能,保證資料能從一端傳到另一端。 

udp---使用者資料報協議,是乙個簡單的面向資料報的運輸層協議。udp不提供可靠性,它只是把應用程式傳給ip層的資料報傳送出去,但是並不能保證它們能到達目的地。由於udp在傳輸資料報前不用在客戶和伺服器之間建立乙個連線,且沒有超時重發等機制,故而傳輸速度很快

udp特點:不面向連線,不可靠,面向資料報,速度快

tcp特點:面向連線,可靠的,面向位元組流形式的

網際網路協議按照功能不同分為osi七層或tcp/ip五層或tcp/ip四層

模型屬性對應 協議

物理裝置

應用層http https ftp

傳輸層udp tcp

層交換機,四層路由器

網路層ip協議

路由器 三層交換機

資料鏈路層

arp協議

交換機 網絡卡 網橋

物理層光纖 集線器 雙絞線

Linux筆記00 計算機概論

什麼是電腦 計算機 接收使用者通過輸入裝置 觸控螢幕或鍵盤等 輸入的指令或資料,經由 處理器的數學與邏輯單元運算處理後,產生或儲存成有用的資訊 再通過輸出裝置 電腦螢幕或印表機等 輸出的裝置。例題 最新的intel amd的 x86架構中,請查詢出多 虛擬化 省電功能各有哪些重要的微指令集?僅供參考...

Python計算機視覺程式設計

本書是計算機視覺程式設計的權威實踐指南,通過python語言講解了基礎理論與演算法,並通過大量示例細緻分析了物件識別 基於內容的影象搜尋 光學字元識別 光流法 跟蹤 3d重建 立體成像 增強現實 姿態估計 全景建立 影象分割 降噪 影象分組等技術。另外,書中附帶的練習還能讓讀者鞏固並學會應用程式設計...

python計算機基礎 python計算機基礎

一 計算機基礎 首先python是一門程式語言 語言 那什麼是語言?語言就是一種事物與另一種事物溝通的介質。所以說程式語言是程式設計師跟計算機溝通的介質,那麼為什麼要跟計算機溝通呢?沒計算機行不行?因為計算機幫人做了好多事情,說白了計算機是一台機器,這台機器用來解放人力,替代任務幹活的。什麼是程式設...