HTTP
互聯?通信協議HTTP協議,是?個?狀態協議,這意味著,所有的狀態都保存在服務器端,
HTTP協議??,四個表示操作?式的動詞:GET、POST、PUT、DELETE,
它們分別對應四種基本操作,簡單的說,GET就是獲取資源,POST就是創建資源,PUT就是更新資源,DELETE就是洗掉資源,
HTTP1和HTTP2
Http1是?本傳送,Http2是?進制傳送
Http2?持多路復?,流ID是?個Http請求完成多個Http請求傳輸變成可能
Http2?持在客戶端未經請求許可的情況下主動向客戶端推送內容
常?的編程協議
TCP:傳輸控制協議,三次握?和四次分?
UDP:?戶資料報協議,適?于?次只傳輸少量資料,穩定性要求不?
SPX:順序包交換協議,保證資料傳輸的完整性,?般?于?型?絡和局域?游戲環境(反恐精英和星際爭霸)
NetBIOS:?絡輸?輸出系統
TCP
三次握?:(ACK和SYN(ACK起應答作?,?SYN起同步作?)放在? 個報??來發送,)
客戶端發送?個帶有SYN(SYN-send)標志的報?到服務器(請求連接)
服務端收到這個報?后發回?個帶有SYN(SYN-recived)和ACK標志的報?給客戶端(可以連接,做好連接準備了?)
客戶端?將帶有ACK標志的報?再次發送給服務器(ok)
四次分?:(FIN報?通知時,它僅僅表示對?沒有資料發送給你了;但未必你所有的資料都全部發送給對?了,所以ACK報?和FIN報?多數情況下都是分開發送的,)
客戶端發送?個Fin標志給服務器;
服務器收到回傳?個帶有ACK標志的報?,并確認序號為收到序號 +1;
服務器關閉客戶端的連接,并回傳Fin給客戶端;
客戶端回傳ACK確認,并將確認序號設定為收到序號+1;
標志
Closed:初始狀態
Listen:服務器的 某個Socket處于監聽狀態,表示可以連接
SYN-received:服務器收到報?
SYN-sent:客戶端發送報?
ESTABLISHED:建?連接
FIN_WAIT_1:準備主動關閉連接
FIN_WAIT_2:主動關閉連接(但是表示還有點資料要傳給你,等下關閉)
TIME_WAIT: 表示收到了對?的FIN報?,并發送出了ACK報?,就等2MSL后即可回到CLOSED
可?狀態了,(因為假象?絡并不可靠,你?法保證你最后發送的ACK報?會?定被對?收到,
所以TIME_WAIT狀態的作?就是?來重發可能丟失的 ACK報?,)
CLOSING:雙?都正在關閉Socket
CLOSE_WAIT:等待關閉
LAST_ACK: 被動關閉??在發送FIN報?后,最后等待對?的ACK報?,當收到ACK報?后,也
即可以進?到CLOSED可?狀態了,
兩個應?程式同時執?主動打開的情況是可能的,雖然發?的可能性較低,但多數伯克利版的
tcp/ip實作并不?持同時打開,
3TCP(傳輸控制協議)和UDP(?戶資料報協議)
這兩種傳輸?式都是實際的?絡編程中進?使?,重要的資料?般使?TCP?式進?資料傳輸,
??量的?核?資料則都通過UDP?式進?傳遞.
TCP/IP
TCP/IP 意味著 TCP 和 IP 在?起協同?作,
TCP 負責應?軟體(?如你的瀏覽器)和?絡軟體之間的通信,
IP 負責計算機之間的通信,
TCP 負責將資料分割并裝? IP 包,然后在它們到達的時候重新組合它們,
IP 負責將包發送?接受者,
Socket
Java中基于TCP協議實作?絡通信的類
補充:ajax的原理就是HTTP協議的異步通信
補充:以太網基本的重要的知識——OSI參考模型https://www.cnblogs.com/qishui/p/5428938.html

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/196874.html
標籤:Java
