HTTP(HyperText Transfer Protocol,超文本傳輸協議),這種譯法並不嚴謹,或許叫作超文本轉移協議更爲嚴謹一些。html
URL(Unigotm Trsource Locator,統一資源定位符)。瀏覽器
WWW這一名稱,是Web瀏覽器當年用來瀏覽超文本的客戶端應用程序時的名稱。如今則用來表示這一系列的集合,也能夠簡稱爲Web。服務器
TCP/IP協議族,一般使用的網絡(包括互聯網)是在TCP/IP協議族的基礎上運行的,而HTTP屬於它內部的一個子集。網絡
計算機與網絡設備要互相通訊,雙方必須基於相同的方法,好比:如何探測通訊目標,由哪一邊先發起通訊,使用何種語言通訊,怎麼樣結束通訊,不一樣硬件,不一樣操做系統之間的通訊,全部的這一切都須要一種規則,因而咱們把這一種規則稱爲協議(protocol)。(IEEE802.3,FDDI,ICMP,TCP,HTTP,IP,DNS,FTP,SNMP,PPPoE,UDP,IP)等...大數據
TCP/IP是指具體的TCP協議和IP協議仍是實在IP協議的通訊過程當中使用到協議族的統稱呢?ui
TCP/IP協議族分層:spa
應用層操作系統
傳輸層code
網絡層orm
數據鏈路層
分層的優點既是靈活
應用層: 應用層決定了向用戶提供應用服務時通訊的活動,TCP/IP協議族預存了各種通用的應用服務。好比FTP(File Tansfer Protocol,文件傳輸協議)和DNS(Domain Name System,域名系統)服務就是其中兩種。HTTP協議也處於該層。
傳輸層: 傳輸層對上層應用層,提供處於網絡鏈接中的兩臺計算機之間的數據傳輸。在傳輸層有兩個性質不一樣的協議:TCP(Transmission Control Protocol,傳輸控制協議)和UDP(User Data Protocol,用戶數據報協議)。
網絡層(網絡鏈接層): 網絡層用來處理在網絡上流動的數據包。數據包是網絡傳輸的最小數據單位。該層規定了經過怎樣的路徑(所謂的傳輸路線)到達對方的計算機,並把數據包給到對方。與對方的計算機之間經過多臺計算機或是網絡設備進行傳輸時,網絡層所起的做用就是在衆多的選項內選擇一條傳輸路線。
鏈路層(數據鏈路層/網絡接口層): 用來處理鏈接網絡的硬件部分,包括控制操做系統,硬件設備的驅動器,NIC(Network Interface Card,網絡適配器,即網卡)及光纖等物理可見部分(還包括鏈接器等一切傳輸媒介)。硬件上的範疇均在鏈路層的做用範圍以內。
[客戶端]:HTTP <==> TCP <==> IP <==> 網絡
應用層 傳輸層 網絡層 鏈路層 ↑↓
複製代碼
[服務端]:HTTP <==> TCP <==> IP <==> 網絡
[客戶端]:HTTP數據 => [TCP首部 [HTTP數據]] => [IP首部 [TCP首部 [HTTP數據]]]=>[以太網首部 [IP首部 [TCP首部 [HTTP數據]]] ]
[服務端]: [以太網首部 [IP首部 [TCP首部 [HTTP數據]]] ] => [IP首部 [TCP首部 [HTTP數據]]] => [TCP首部 [HTTP數據]] => HTTP數據
按層次分,IP(Internet Protocol)網際協議位於網絡層。Internet Prorocol 這個名稱可能聽起來有點誇張,但事實正是如此,由於幾乎全部使用網絡的系統都會用到IP協議。TCP/IP協議族中的IP指的就是網際協議,協議名稱中佔據了一半的位置。
IP協議的做用是把各類數據包傳遞給對方。而要保證確實傳遞到了對方那裏,則須要知足各種條件。其中兩個重要條件是IP地址和MAC地址(Media Assess Control Address)。
IP地址指明瞭節點被分配到的地址,MAC地址是指網卡所屬的固定地址,IP地址能夠和MAC地址進行配對,IP地址可變換,但MAC地址基本上不會更改。
使用ARP協議憑藉MAC地址進行通訊。IP間的通訊依賴MAC地址。在網絡上,通訊的雙方在同一局域網(LAN)內的狀況是不多的,一般是通過多臺計算機和網絡設備中轉才能鏈接到對方。而在進行中轉時,會利用下一站中轉設備的MAC地址來搜索下一個中轉目標。這時,會採用ARP協議(Address ResolutionProtocol)。ARP是一種用以解析地址的協議,根據通訊方的IP地址就能夠反查出對應的MAC地址。
確保可靠的TCP協議。TCP位於傳輸層,提供可靠的字節流服務。所謂的字節流服務(Byte Stream Service)是指爲了方便傳輸大數據時將數據分割爲以報文段爲單位的數據包進行管理。而可靠的傳輸服務是指,可以準確無誤的將數據傳遞給對方。一言蔽之,TCP協議爲了更容易傳送大數據才把數據分割,並且TCP亦可以確認數據是否最終到達對方。
三次握手:首先發送端會發送一個帶SYN標誌的數據包給對方,接收端收到後,回傳一個帶有SYN/ACK標誌的數據包以示數據已經接收到,最後發送端發送一個ACK標誌的數據包,表明握手結束。
解析域名的DNS服務。每個域名都有對應的IP地址,DNS服務提供IP查詢域名以及反向經過域名查詢IP地址的服務。
URI是URI是Uniform Resource Identifier的縮寫,RFC2396分別對這三個單詞進行了以下定義。
Uniform:規定統一格式可方便處理多種不一樣類型的資源,而不用根據上下文環境來識別資源制定的訪問方式。另外,加入新增的協議方案(如:http或ftp)也更容易。
Resource:資源的定義是:「可標識的任何東西」。不只僅是文檔文件,圖像或是服務等可以區別於其餘類型的,所有均可看成資源。另外,資源不只僅能夠是單一的,也能夠是多數的集合體。
Identifier:表示可標識的對象,也稱做標識符。
URL是URI的子集,URI表示的某一互聯網資源,URL表示資源的地點,L(location,位置)。
絕對URI格式: 「user:pass@www.example.com:80/dir/index.h… 」
上述URI中包含:
協議方案:http://
登陸信息:user:pass
服務器地址:www.example.com
服務端口號:80
帶層次的文件路徑:/dir/index.html
查詢字符串:uid=1
片斷字符串:#ch1