這是一張很內(nèi)涵的漫畫——愛情是靠不住的,即使你使用TCP連接也是如此。一心要握手成功,卻被RST的男人就是個徹底的杯具……
小知識:
一個虛擬連接的建立是通過三次握手來實現(xiàn)的。
第一次握手:建立連接時,客戶端發(fā)送syn包(syn=j)到服務(wù)器,并進(jìn)入SYN_SEND狀態(tài),等待服務(wù)器確認(rèn);
第二次握手:服務(wù)器收到syn包,必須確認(rèn)客戶的SYN(ack=j+1),同時自己也發(fā)送一個SYN包(syn=k),即SYN+ACK包,此時服務(wù)器進(jìn)入 SYN_RECV狀態(tài);
第三次握手:客戶端收到服務(wù)器的SYN+ACK包,向服務(wù)器發(fā)送確認(rèn)包ACK(ack=k+1),此包發(fā)送完畢,客戶端和服務(wù)器進(jìn)入ESTABLISHED狀態(tài),完成三次握手。
完成三次握手,客戶端與服務(wù)器開始傳送數(shù)據(jù)。
四次握手用來關(guān)閉已建立的TCP連接。有時,如果主機需要盡快關(guān)閉連接(或連接超時,端口或主機不可達(dá)),RST (Reset)包將被發(fā)送。由于RST包不是TCP連接中的必須部分,可以只發(fā)送RST包(即不帶ACK標(biāo)記)。