摘要:為什么狀態需要經過最大報文段生存時間才能返回到狀態雖然按道理,四個報文都發送完畢,我們可以直接進入狀態了,但是我們必須假象網絡是不可靠的,有可以最后一個丟失。所以狀態就是用來重發可能丟失的報文。
1、TCP的三次握手和四次揮手 1.1 三次握手:
客戶端請求 -> 服務器響應 -> 客戶端確認收到響應,建立連接(保證網絡正常)
1.2 四次揮手客戶端請求 -> 服務器響應該請求 -> 服務器確認數據傳送完畢, 發送關閉連接的響應 -> 客戶端發送響應,在2MSL內未收到回復則視為服務器端已收到該響應并關閉連接接口,客戶端關閉連接。
1.3 為什么TIME_WAIT狀態需要經過2MSL(最大報文段生存時間)才能返回到CLOSE狀態?雖然按道理,四個報文都發送完畢,我們可以直接進入CLOSE狀態了,但是我們必須假象網絡是不可靠的,有可以最后一個ACK丟失。所以TIME_WAIT狀態就是用來重發可能丟失的ACK報文。
2、TCP和UDP的區別、比較UDP | TCP | |
---|---|---|
是否連接 | 無連接 | 面向連接 |
是否可靠 | 不可靠傳輸,不使用流量控制和擁塞控制 | 可靠傳輸,使用流量控制和擁塞控制 |
連接對象個數 | 支持一對一,一對多,多對一和多對多交互通信 | 只能是一對一通信 |
傳輸方式 | 面向報文 | 面向字節流 |
首部開銷 | 首部開銷小,僅8字節 | 首部最小20字節,最大60字節 |
適用場景 | 適用于實時應用(IP電話、視頻會議、直播等) | 適用于要求可靠傳輸的應用,例如文件傳輸 |
鏈表反轉有兩種方法:
就地反轉法
//就地反轉法 interface ListNode { value: string; next: ListNode; } function reverseList1(head:ListNode) { if (head == null) return head; let dummy = null; dummy.next = head; let prev = dummy.next; let pCur = prev.next; while (pCur != null) { prev.next = pCur.next; pCur.next = dummy.next; dummy.next = pCur; pCur = prev.next; } return dummy.next; }
頭節點插入法
interface ListNode { value: string; next: ListNode; } function reverseList2(head: ListNode) { let dummy = null; let pCur = head; while (pCur != null) { ListNode pNex = pCur.next; pCur.next = dummy.next; dummy.next = pCur; pCur = pNex; } return dummy.next; }
參考連接
TCP三次握手和四次揮手過程
TCP和UDP比較
單鏈表反轉總結篇
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/109410.html
摘要:某個請求任務耗時嚴重,不會影響到其它連接的正常執行如何實現長連接 1、sleep函數該如何實現的 sleep函數,將程序執行掛起一段時間,阻塞程序的運行 ES6方案: function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); } async function test() { con...
摘要:這是一次失敗的面經但是吃一塹才能長一智不是嗎字節跳動校招面經前端開發崗一介紹以及項目經歷吧啦吧啦此處省略字面試官會從項目經歷入手,考察項目中遇到的難題,以及解決方法,強調個人的努力以及在解決過程中扮演的角色是主導還是參與。 這是一次失敗的面經……但是吃一塹才能長一智不是嗎? 字節跳動2019校招面經 - 前端開發崗(一) 1. 介紹以及項目經歷 吧啦吧啦……此處省略10000字 面試官...
摘要:春招前端實習面試記錄從就開始漸漸的進行復習,月末開始面試,到現在四月中旬基本宣告結束。上海愛樂奇一面盒模型除之外的面向對象語言繼承因為是視頻面試,只記得這么多,只感覺考察的面很廣,前端后端移動端都問了,某方面也有深度。 春招前端實習面試記錄(2019.3 ~ 2019.5) 從2019.1就開始漸漸的進行復習,2月末開始面試,到現在四月中旬基本宣告結束。在3月和4月經歷了無數次失敗,沮...
摘要:今年歲,畢業之后進入一家小型的互聯網公司工作,名字就不說了,算是熟知的,在這家公司呆了兩年,直至今年才有了跳槽的想法。在眾多大廠中,最終選擇了字節跳動。這樣的調整,一方面對自己學習有幫助,另一方面讓自己應對面試更從容,更順利。 ...
閱讀 2287·2021-11-10 11:35
閱讀 899·2021-09-26 09:55
閱讀 2388·2021-09-22 15:22
閱讀 2318·2021-09-22 15:17
閱讀 3683·2021-09-09 09:33
閱讀 1821·2019-08-30 11:22
閱讀 970·2019-08-30 10:57
閱讀 641·2019-08-29 16:10