網路

weixin_33728268發表於2018-03-26

HTTPS(全稱:Hypertext TransferProtocol over Secure Socket Layer),是以安全為目標的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎是SSL,因此加密的詳細內容就需要SSL。 它是一個URI scheme(抽象識別符號體系),句法類同http:體系。用於安全的HTTP資料傳輸。https:URL表明它使用了HTTP,但HTTPS存在不同於HTTP的預設埠及一個加密/身份驗證層(在HTTP與TCP之間)。這個系統的最初研發由網景公司進行,提供了身份驗證與加密通訊方法,現在它被廣泛用於全球資訊網上安全敏感的通訊,例如交易支付方面。

超文字傳輸協議 (HTTP-Hypertext transfer protocol) 是一種詳細規定了瀏覽器和全球資訊網伺服器之間互相通訊的規則,通過因特網傳送全球資訊網文件的資料傳送協議。

解釋下Http協議

HTTP是一個屬於應用層的物件導向的協議,由於其簡捷、快速的方式,適用於分散式超媒體資訊系統。

HTTP協議的主要特點可概括如下:

1.支援客戶/伺服器模式。

2.簡單快速:客戶向伺服器請求服務時,只需傳送請求方法和路徑。請求方法常用的有GET、HEAD、POST。每種方法規定了客戶與伺服器聯絡的型別不同。由於HTTP協議簡單,使得HTTP伺服器的程式規模小,因而通訊速度很快。

3.靈活:HTTP允許傳輸任意型別的資料物件。正在傳輸的型別由Content-Type加以標記。

4.無連線:無連線的含義是限制每次連線只處理一個請求。伺服器處理完客戶的請求,並收到客戶的應答後,即斷開連線。採用這種方式可以節省傳輸時間。

5.無狀態:HTTP協議是無狀態協議。無狀態是指協議對於事務處理沒有記憶能力。缺少狀態意味著如果後續處理需要前面的資訊,則它必須重傳,這樣可能導致每次連線傳送的資料量增大。另一方面,在伺服器不需要先前資訊時它的應答就較快。

什麼是UDP,什麼是Tcp:

     UDP是無連線的。只需要傳送就可以了

     TCP無狀態的有連線的,有傳送有接收  3次握手,4次揮手。

1 三次握手

[if !supportLists]1.   [endif]客戶端通過向伺服器端傳送一個SYN來建立一個主動開啟,作為三路握手的一部分。客戶端把這段連線的序號設定為隨機數 A。

[if !supportLists]2.   [endif]伺服器端應當為一個合法的SYN回送一個SYN/ACK。ACK 的確認碼應為 A+1,SYN/ACK 包本身又有一個隨機序號 B。

[if !supportLists]3.   [endif]最後,客戶端再傳送一個ACK。當服務端受到這個ACK的時候,就完成了三路握手,並進入了連線建立狀態。此時包序號被設定為收到的確認號 A+1,而響應則為 B+1。

2 四次揮手

CP的連線的拆除需要傳送四個包,因此稱為四次揮手(four-way

handshake)。客戶端或伺服器均可主動發起揮手動作,在socket程式設計中,任何一方執行close()操作即可產生揮手操作。

(1)客戶端A傳送一個FIN,用來關閉客戶A到伺服器B的資料傳送。

(2)伺服器B收到這個FIN,它發回一個ACK,確認序號為收到的序號加1。和SYN一樣,一個FIN將佔用一個序號。

(3)伺服器B關閉與客戶端A的連線,傳送一個FIN給客戶端A。

(4)客戶端A發回ACK報文確認,並將確認序號設定為收到序號加1。


HTTP1.0和HTTP1.1

推薦:http://blog.csdn.net/elifefly/article/details/3964766

1.  請求頭Host欄位,一個伺服器多個網站

2.  長連結

3.  檔案斷點續傳

4.  身份認證,狀態管理,Cache快取



CSRF(Cross-site request forgery)跨站請求偽造

XSS(Cross Site Scripting)跨站指令碼攻擊

CSRF重點在請求,XSS重點在指令碼


RESTful架構(SOAP,RPC)

推薦:http://www.ruanyifeng.com/blog/2011/09/restful.html

相關文章