計算機網絡學習筆記

參考書籍:《計算機網絡自頂向下方法第六版》數據庫

第一章:計算機網絡和因特網編程

主要介紹了現有的接入網的方式、網絡核心的信息交換方式以及所帶來的一系列問題、因特網的層次結構各層所應承擔的責任後端

光纖速度超快,遠高於電纜和通州電纜緩存

網絡核心的數據轉發方式:分組交換和電路交換安全

電路交換是先創建鏈接再進行傳數據,相似與以前的打電話,先鏈接電話線再進行通訊,分組交換是將數據分割以後向外發服務器

因而在分組交換的過程當中就會遇到時延、丟包和擁塞的問題,而電路交換就會更加的穩定,可是浪費資源,由於並非一直傳輸數據,在雙方都不發送信息的間隔中就形成了帶寬資源浪費cookie

時分複用與頻分複用存在與電路交換中網絡

吞吐量是一個速率單位,表示的是路由器轉發分組的速率數據結構

流量強度用來衡量網絡架構的性能,及輸入速率與輸出速率的比值架構

應用層:網絡應用程序和應用層協議所在             (報文)應用層信息分組

             HTTP:Web文檔請求與訪問

             SMTP:電子郵件報文的傳輸

        FTP:端系統之間的文件傳遞

        DNS:域名服務,其實也是一個應用層協議

運輸層:TCP   UDP   端系統的應用程序端點之間傳送應用層報文(端口號就是給運輸層用的)      (報文段)運輸層分組

             TCP :  確保傳輸(可靠性)  流量控制(發送方與接收方速率一致,不至於將其中一方淹沒) 擁塞控制(將長報文劃分爲短報文)

             UDP : 面向無鏈接傳輸

網絡層:將網絡層分組從一臺主機移動到另外一臺主機               (數據包)  網絡層分組

             IP:經典的網絡層協議 定義了數據包中各個字段以及端系統與路由器如何做用於這些字段

             爲何只有路由器沒有鏈路層交換機呢 由於鏈路層交換機只有物理層與鏈路層沒有網絡層

             路由選擇協議:決定分組從入鏈路進入一個路由器的時候從哪一個出鏈路出去,由路由選擇協議來決定

鏈路層:將分組從一個結點移動到下一個結點                   (幀)

              特定的鏈路層協議提供可靠的傳遞服務,與TCP的傳遞不一樣,鏈路層自能保證完整的將這個幀傳送過去,在節點處的順序改變與丟包是TCP來解決的

物理層:將一個比特從一個結點移動到下一個結點

              跨國不一樣的實際傳輸媒體的方式不一樣,選擇的物理層協議也不一樣

OSI模型是七層的,多了表示層和會話層,因特網將這兩方面交由應用程序負責

在每個節點,路由器或者交換機都須要從底層向上跑一遍再從上向下跑一邊傳下去,例如必須到達網絡層才知道接下來去哪,因此在物理層接收以後 要自底向上分解一遍

第二章:應用層

更正了前一章的一些錯誤認識,吞吐量不專指路由器,只是一個象徵數據運輸速率的單位、DNS能夠被認爲是一個應用層的應用。

應用層保存了應用程序與應用層協議

該章首先介紹了一些前導知識(應用程序體系結構、進程之間是如何通訊的、兩種基本的運輸層協議的特色)以後分別介紹了支持Web的HTTP協議,支持文件傳送的端系統間文件傳送的FTP協議。。。。。。。。

應用程序體系結構有兩種,客戶服務器體系結構與對等體系結構(P2P)。對等體系結構下每一個客戶機既能夠做爲服務器又能夠做爲客戶機,主機之間直接通訊,對等體系結構的規模與主機的數量有關,當一臺主機提出請求的時候對系統都增長了服務壓力,可是當某一臺主機發出請求的時候也提供了服務能力,因而,P2P模式具備自擴展性。許多即時通信的應用是兩種體系結構結合的,服務器被用於跟蹤主機的Ip,主機之間直接通訊。

進程之間通訊使用了一個叫作套接字(socket)的門戶,套接字是一種特殊的API,位於應用程序與網絡之間,socket的應用端能夠進行編程選擇運輸協議,網絡端不能夠。socket至關於一個門,那端口號至關因而門牌號,不一樣主機之間的進程進行通訊,首先根據IP地址能夠定位到主機,主機定位到應用程序是根據端口號,目前流行的軟件有固定的端口號。

應用程序對運輸的要求有四個方面,可靠性,安全性,吞吐量和定時。可靠性是完整無誤,吞吐量是速率,定時是最晚幾點送達,安全就是不會被竊取。TCP與UDP等運輸協議只能在可靠性與安全性上下功夫,決定不了吞吐量與定時。TCP服務分兩方面,面向鏈接與可靠,鏈接就是先創建兩個socket之間的鏈接,TCP提供的可靠傳輸保證三方面,無差錯,流量控制與擁塞控制。UDP只管發出去,什麼也保證不了,不知道可否接到,不知道接到的是否正確。TCP保證安全性不是協議自己能夠的,而是接助外力,在兩端的socket與TCP之間加了一個SSL(安全性套接字)層,使用SSL加密,傳輸的不是明文是加密時候的密文。

三方面前導知識以後開始介紹應用層協議,應用層協議定義了四方面,報文的類型(請求|響應),報文的格式,報文每部分的意思(詞義),什麼時候發送報文(規則)。

支持Web的HTTP協議。HTTP定義了Web客戶向Web服務器請求Web頁面的方式。HTTP採用TCP鏈接,無狀態協議(服務器不保存客戶端的信息),能夠支持持續鏈接也能夠支持非持續鏈接。非持續鏈接傳送一個對象以後就要斷開從新握手從新連,持續鏈接握手一次以後能夠持續傳輸對象。二者各有利弊。HTTP是無狀態的,可是當Web站點想要記錄客戶的信息的時候採用的是cookie的方式,HTTP爲了提升速率與節約帶寬資源引入了Web緩存,是一個本地緩存器,每次請求直接指向Web緩存,若緩存有就直接返回,若沒有再由緩存想服務器發出請求,此時引進一個問題就是緩存的內容可能不是最新的,因而引進了條件get的解決辦法。接下來討論四個問題,持續鏈接與非持續鏈接,cookie,Web緩存,條件get。

HTTP傳輸時不須要將多媒體數據轉換爲ASCII碼編碼

持續鏈接與非持續鏈接:1.非持續鏈接效率比較低,每次創建鏈接浪費了TCP緩存區,而且大量的鏈接給TCP服務器增長了壓力,重要的是每次傳輸一個對象就須要創建一個鏈接,一個RTT(往返時間)建立TCP,一個RTT傳送數據,時延較持續鏈接長。2.持續鏈接在空閒時間浪費了端口等資源,可是換取了時間,傳輸對象更快,僅須要一次握手 3.非持續鏈接沒有明確必定要串行,當同時請求多個對象時能夠並行。可是依然要前一個對象ack以後後面的請求才能夠發出,此時的請求可能同時請求多個  4. 持續鏈接分爲流水式與非流水式,非流水式就是一次握手以後串行,流水式能夠同時發送,不用等待前一個ack

cookie:1. 記錄不記錄在站點處而是記錄在用戶端系統

            2.Web站點提供一個後端數據庫

            3.用戶端系統的cookie文檔只能夠Web訪問 

            4. Web爲每一個用戶端分配了一個id,當用戶訪問站點的時候Web對該站點分配了一個id,用戶端保存的是本身的id與每一個站點的id,Web後端數據庫保存的是某id訪問某id的時                    刻與動做

Web緩存:在本地設置緩存的好處有兩點,首先大大減小了客戶的請求響應時間,其次,減小了ISP接入因特網的通訊量

條件get:緩存保存一個內容的時候記錄下來上次記錄的時間,當再次被訪問的時候,向服務器發送請求,當有改變是從新傳輸,沒有改變直接返回簡短的響應,減小了內容的傳輸時                  間,尤爲是大量數據的傳輸,減小了時間保證了正確性。

遠程文件傳輸FTP:FTP特色是帶外傳輸,控制流不與數據流在一塊兒,或許是爲了容許大文件的傳輸,不至於佔用控制流,沒一個文件的傳輸佔用一個單獨的數據流,的那個傳輸完畢以後數據鏈接關閉

 支持電子郵件的SMTP協議:

電子郵件的三部分用戶代理、郵件服務器、SMTP協議

SMTP是一個推協議,發送方即用戶代理維護一個報文隊列交給郵件服務器便可,接受方須要考慮接受的方式,HTTP或POP3或IMAP

POP3:容許屢次下載,可是郵件服務器不保存對於文件的修改,一直保存的都是接受到的原始郵件

IMAP:容許用戶進行遠程更改並保存

將媒體數據轉換爲ASCII數據,對於既有文本又有圖形等的文檔,將全部的報文對象放在同一個報文之中,不一樣於HTTP

DNS服務:

益處:不只能夠方便用戶使用,還能夠均衡負載,由於每個站點例如百度,能夠對應不少的服務器,不少的IP,DNS對於相同的站點能夠隨機分配IP,達到了負載均衡

DNS是一個分佈式、層次的數據結構,根DNS服務器,頂級DNS服務器,權威DNS服務器,首先向根DNS服務器詢問接下來應該向那個頂級DNS服務器發出請求,一步步找到本身須要的IP,是一個迭代的過程,也能夠採用遞歸的過程,問根服務器後,根服務器來詢問頂級服務器,一步步再返回,可是這樣會給根服務器形成太大的工做量。

本地DNS服務器是ISP自行設定的,緩存一部分鍵值對,可是不回主動更新,兩天以後直接丟棄。

P2P應用,不一樣於前面全部的協議都是針對服務器客戶端的模式的。

對等方的文件分發比服務器分發提速不少,每一個對等方均可以做爲服務器向外分發

分發採起一個協議(規則)BitTorrent協議

一個用戶進來以後嘗試與洪流之間的每一個對等方創建鄰近對等方關係(TCP鏈接),一段時間間隔以後詢問全部鄰近對等方的文件列表,找到最稀缺的本身須要的進行請求,稀缺優先;保存一個給本身發送速率最快的前四名做爲「疏通」,響應別人的請求時在本身的四個「疏通」裏隨機一個,一報還一報

P2P模式下沒有DNS服務,如何保存ip與主機的映射關係採用的是分佈式散列表。

將ip散列以後分給每個對應方存儲,每個對應方有一個標識符,每一個散列以後的鍵值對保存在後繼最近的標識符對應的主機上。

相關文章
相關標籤/搜索