一,HTTP的歷史 1,HTTP的概念 HTTP(HyperText Transfer Protocol,超文本傳輸協議)是一種通信協議,它允許將超文本標記語言(HTML)文檔從Web伺服器傳送到客戶端(如瀏覽器) 它是一個應用層的協議,承載於TCP之上 由請求和響應構成,是一個標準的客戶端伺服器模 ...
一,HTTP的歷史
1,HTTP的概念
HTTP(HyperText Transfer Protocol,超文本傳輸協議)是一種通信協議,它允許將超文本標記語言(HTML)文檔從Web伺服器傳送到客戶端(如瀏覽器)
它是一個應用層的協議,承載於TCP之上
由請求和響應構成,是一個標準的客戶端伺服器模型
2,HTTP的發展歷史
作為Web文檔傳輸協議的HTTP,它的版本更新十分緩慢,目前只更新了四個版本:
HTTP/0.9
HTTP/1.0
HTTP/1.1
HTTP/2.0
3,HTTP在Web應用中的重要性
HTTP協議是整個Web基礎,許多應用都離不開對HTTP協議的認識:
WebService=HTTP+XML
Reset=HTTP+JSON
API的實現:HTTP+XML/JSON
採集、小偷站
QQ、迅雷等桌面應用軟體
二,網路基礎TCP/IP協議
1,協議的概念
什麼是協議?
協議是指電腦通信網路中,兩台電腦進行通信,所必須遵循的規定或規則。
電腦網路中有各種各樣的協議,比如TCP協議、IP協議、HTTP協議、FTP協議等等。像這樣把與互聯網相關聯的協議集合起來,就稱為TCP/IP協議族。
2,TCP/IP的分層管理
TCP/IP協議族最重要的一點就是分層。按層次分別分為以下4層:
應用層
應用層決定了向用戶提供應用服務時通信的活動,負責處理特定的應用程式。
TCP/IP協議族內預存了各類通用的應用服務。比如FTP ( File Transfer Protocol )、DNS ( Domain Name System ) 等等。
HTTP也在該層。
傳輸層
對上層應用層,提供處於網路連接中兩台電腦之間的數據傳輸。
該層有兩個不同的協議:TCP ( Transmission Control Protocol,傳輸控制協議 )和UDP ( User Data Protocol 用戶數據報協議 )。
網路層
處理網路上流動的數據包。該層有協議有:IP、ICMP、IGMP。
數據鏈路層
處理連接網路的硬體部分。包括操作系統、硬體設備驅動、網卡、光纖等。
3,TCP/IP通信傳輸流程
發送端在層與層之間傳輸數據時,每經過一層必定會被打上該層所屬的首部信息。反之,接收端在層與層傳輸數據時,每經過一層會把對應的首部消去。
這種把數據信息包裝起來的做法稱為封裝。
把TCP/IP 層次化是有好處的。比如,如果互聯網只由一個協議統籌,某個地方需要改變設計時,就必須把所有部分整體替換掉。而分層之後只需把變動的層替換掉即可。把各層之間的介面部分規劃好之後,每個層次內部的設計就能夠自由改動了。
值得一提的是,層次化之後,設計也變得相對簡單了,處於應用層上的應用可以只考慮分派給自己的任務,而不需要弄清對方在地球上哪個地方,對方的傳輸路線是怎樣的,是否能確保傳輸送達等問題。
三,IP、TCP和DNS與HTTP的密切關係
1,IP協議的概念與作用
IP的概念:
英文為Internet Protocol,翻譯成網際協議,位於網路層。
IP的作用:
把各種數據包傳送給對方。如果要保證確定傳送到對方那裡,則需要滿足各類條件,其中最重要的兩個條件是IP地址和MAC地址。
(1)IP地址:指明瞭節點被分配到的地址
(2)MAC地址:是指網卡所屬的固定地址
(3)區別:IP地址可變換,但MAC地址基本上不會更改。
使用ARP協議憑藉MAC地址進行通信:
什麼是ARP?
ARP是一種用以解析地址的協議,根據通信方的IP地址就可以反查出對應的MAC地址。
2,TCP協議的概念與作用
TCP的概念:
英文為Transmission Control Protocol ,翻譯成傳輸控制協議,位於傳輸層。
TCP的作用:
提供可靠的位元組流服務。
3,TCP協議的三次握手過程
TCP如何才能保證提供可靠的服務?
採用了三次握手策略
4,DNS的概念與作用
DNS的概念:
英文為Domain Name System ,翻譯成功能變數名稱系統,位於應用層。
DNS的作用:
提供功能變數名稱到IP地址之間的解析服務。
5,HTTP與TCP、IP和DNS的關係
用圖來說明其關係:
四,URI和URL的概念
1,URI的概念
URI(Uniform Resource Identifier),翻譯為統一資源標識符,是一個用於標識某
一互聯網資源名稱的字元串。
2,URL的概念
URL(Uniform Resource Location),翻譯為統一資源定位符,它描述一臺特定服
務器上某特定資源的特定位置。
3,URI與URL的關係
URI用字元串標識某一互聯網資源,而URL表示資源的地點(資源所處的位置)由
此可見,URL是URI的子集。
URI由兩個主要的子集 URL 和 URN構成。
4,URI的格式
格式:
http://user:[email protected]:80/home/index.html?age=11#mask
http:協議方案名 (在獲取資源時要指定協議類型)
user:pass:登錄信息(認證) (指定用戶名和密碼作為從伺服器端獲取資源時必要的登錄信息,此項是可選的。)
www.example.com:伺服器地址 (使用絕對URI必須指定待訪問的伺服器地址。)
80:埠號 (指定伺服器連接的網路埠號,此項是可選的。)
/hone/index.html:文件路徑
age=11:查詢字元串
mask:片段標識符