cern(歐洲核子研究組織)的蒂姆 • 伯納斯 - 李(tim bernerslee) 博士提出了一種能讓遠隔兩地的研究者們共享知識的設想。
最初設想的基本理念是:借助多文件之間相互關聯形成的超文字 (hypertext),連成可相互參閱的 www(world wide web,萬維 網)。
現在已提出了 3 項 www 構建技術,分別是:把 sgml(standard generalized markup language,標準通用標記語言)作為頁面的文字標 記語言的 html(hypertext markup language,超文字標記語言); 作為文件傳遞協議的 http ;指定文件所在位址的 url(uniformresource locator,統一資源定位符)。 www 這一名稱,是 web 瀏覽器當年用來瀏覽超文字的客戶端應用 程式時的名稱。現在則用來表示這一系列的集合,也可簡稱為 web。
分層:tcp/ip 協議族按層次分別分 為以下四層:應用層、傳輸層、網路層和資料鏈路層。(分層的好處:每個層次內部能夠自由設計,當某個地方需要改變設計時,就必須把所有部分整體替換掉。)
應用層應用層決定了向使用者提**用服務時通訊的活動。
tcp/ip 協議族內預存了各類通用的應用服務。比如,ftp(file transfer protocol,檔案傳輸協議)和 dns(domain name system,網域名稱系統)服務就是其中兩類。http(hypertext transfer protocol,超文字傳輸協議) 協議也處於該層。
傳輸層
傳輸層對上層應用層,提供處於網路連線中的兩台計算機之間的資料傳輸。
在傳輸層有兩個性質不同的協議:tcp(transmission control protocol,傳輸控制協議)和 udp(user data protocol,使用者資料報 協議)。
網路層(又名網路互連層)
網路層用來處理在網路上流動的資料報。資料報是網路傳輸的最小資料單位。該層規定了通過怎樣的路徑(所謂的傳輸路線)到達對方計算機,並把資料報傳送給對方。與對方計算機之間通過多台計算機或網路裝置進行傳輸時,網路層所起的作用就是在眾多的選項內選擇一條傳輸路線。
鏈路層(又名資料鏈路層,網路介面層)
用來處理連線網路的硬體部分。包括控制作業系統、硬體的裝置驅動、nic(network inte***ce card,網路介面卡,即網絡卡),及光纖等物理可見部分(還包括聯結器等一切傳輸媒介)。硬體上的範疇均在鏈路層的作用範圍之內。
3.通訊傳輸流:
利用 tcp/ip 協議族進行網路通訊時,會通過分層順序與對方進行通訊。傳送端從應用層往下走,接收端則往應用層往上走。接收端的伺服器在鏈路層接收到資料,按序往上層傳送,一直到應用 層。當傳輸到應用層,才能算真正接收到由客戶端傳送過來的 http 請求。
傳送端在層與層之間傳輸資料時,每經過一層時必定會被打上乙個該 層所屬的首部資訊。反之,接收端在層與層傳輸資料時,每經過一層 時會把對應的首部消去。這種把資料資訊包裝起來的做法稱為封裝(encapsulate)。
1.負責傳輸的 ip 協議
ip(internet protocol)網際協議位於網路層。internet protocol 這個名稱可能聽起來有點誇張,但事實正是如此,因為幾乎 所有使用網路的系統都會用到 ip 協議。
ip 協議的作用是把各種資料報傳送給對方。而要保證確實傳送到對方那裡,則需要滿足各類條件。其中兩個重要的條件是 ip 位址和 mac 位址(media access control address)。
ip 位址指明了節點被分配到的位址,mac 位址是指網絡卡所屬的固定位址。ip 位址可以和 mac 位址進行配對。ip 位址可變換,但 mac 位址基本上不會更改。
使用 arp 協議(address resolution protocol,位址解析協議)憑藉 mac 位址進行通訊,根據通訊方的 ip 位址就可以反查出對應的 mac 位址。
在到達通訊目標前的中轉過程中,那些計算機和路由器等網路裝置只能獲悉很粗略的傳輸路線。這種機制稱為路由選擇(routing),機制如圖所示:
2.確保可靠性的 tcp 協議 :
tcp 位於傳輸層,提供可靠的位元組流服務。 所謂的位元組流服務(byte stream service)是指,為了方便傳輸,將大塊資料分割成以報文段(segment)為單位的資料報進行管理。
可靠的傳輸服務是指,能夠把資料準確可靠地傳給對方。一言以蔽之, tcp 協議為了更容易傳送大資料才把資料分割,而且 tcp 協議能夠確認資料最終是否送達到對方。tcp 協議採用了三次握手 (three-way handshaking)策略,該過程使用了 tcp 的標誌(flag) —— syn(synchronize) 和 ack(acknowledgement)。傳送端首先傳送乙個帶 syn 標誌的資料報給對方。接收端收到後, 回傳乙個帶有 syn/ack 標誌的資料報以示傳達確認資訊。最後,發 送端再回傳乙個帶 ack 標誌的資料報,代表「握手」結束。 若在握手過程中某個階段莫名中斷,tcp 協議會再次以相同的順序發 送相同的資料報。附上更容易理解噢:
3.負責網域名稱解析的 dns 服務:
使用者通常使用主機名或網域名稱來訪問對方的計算機,而不是直接通過 ip 位址訪問。dns 協議提供通過網域名稱查詢 ip 位址,或逆向從 ip 位址反查網域名稱的服務。
通過下面這張圖來了解下 ip 協議、tcp 協議和 dns 服務在使用 http 協議的通訊過程中各自發揮了哪些作用
1.定義:
uri(uniform resource identifier,統一資源識別符號),uri 就是由某個協議方案
表示的資源的定位識別符號。協議方案是指訪問資源所使用的協議型別名稱。採用 http協議時,協議方案就是 http。除此之外,還有 ftp、mailto、telnet、file 等。
url(uniform resource locator,統一資源定位符),url 正是使用 web 瀏覽器等訪問 web 頁面時需要輸入的網頁位址。
2.關係:uri 用字串標識某一網際網路資源,而url表示資源的地點(網際網路上所處的位置)。 可見 url 是 uri 的子集。
3.uri 格式
設計模式總結性試題
1 設計模式一般用來解決什麼樣的問題 a a.同一問題的不同表相 b不同問題的同一表相 c.不同問題的不同表相 d.以上都不是 2 下列屬於物件導向基本原則的是 c a.繼承 b.封裝 c.黎克特制代換 d都不是 3 open close原則的含義是乙個軟體實體 a a.應當對擴充套件開放,對修改關...
C hashtable使用說明 總結性
一,雜湊表 hashtable 簡述 在.net framework中,hashtable是system.collections命名空間提供的乙個容器,用於處理和表現類似key value的鍵值對,其中key通常可用來快速查詢,同時key是區分大小寫 value用於儲存對應於key的值。hashta...
網路基礎 TCP IP詳解》學習筆記1
一 第三章 ip,網際協議 問題一 如何理解ip的不可靠和無連線。不可靠 指的是不能保證資料報能成功地到達目的地。發生錯誤時候,丟棄該資料報,傳送icmp訊息給信源端。可靠性由上層提供。無連線 ip不維護關於後續資料報的狀態資訊。體現在,ip資料可以不按順序傳送和接收。a傳送連續的資料報,到達b不一...