深入理解TCP協議及其源代碼 TCP close分析 close背后的連接終止過程 TCP協議作為一個可靠的、基於連接的流協議,要通過IP層的不可靠傳輸來,給上層協議提供"可靠"的數據流。 可靠:TCP要保證用戶數據完整以及數據的順序。 基於連接:啟動前要建立連接,結束 ...
本文主要描述了Linux系統上關於位置無關代碼PIC,位置無關可執行程序PIE及地址空間布局隨機化ASLR三個主要特性的原理及聯系。第一部分首先介紹了應用程序地址空間的基礎知識作為鋪墊 第二部分重點講解PIC的實現原理 第三部分簡單介紹了PIE的概念 第四部分講解ASLR和PIE如何配合工作,以實驗的方式來說明二者的聯系。 本文主要基於Linux X 平台和X 平台講解,水平有限,如果有錯誤,敬 ...
2020-08-28 17:00 0 642 推薦指數:
深入理解TCP協議及其源代碼 TCP close分析 close背后的連接終止過程 TCP協議作為一個可靠的、基於連接的流協議,要通過IP層的不可靠傳輸來,給上層協議提供"可靠"的數據流。 可靠:TCP要保證用戶數據完整以及數據的順序。 基於連接:啟動前要建立連接,結束 ...
最近玩linux,遇到一些問題,百度到了幾篇好文章,現在分享下. linux 從ls命令開始 Linux學習的第一步就是掌握常用命令,Linux命令眾多,以筆者使用的Red Hat Enterprise Linux 5.4來說,有大概兩千多個命令,假設每個命令有二十個選項,如此多的命令和選項 ...
3.進程管理 3.1 進程:處於執行期程序和相關資源的總稱 線程:私有:進程棧,程序計數器,進程寄存器 進程資源:打開的文件,掛起的信號,內核內部數據,處理器狀態,內存地址空間,數據段 調用for ...
深入理解TCP協議及其源代碼 實驗環境:Linux-5.0.1 內核 32位系統的MenuOS 本次主要分析理解TCP三次握手,和跟蹤三次握手的基本過程 該TCP協議的狀態轉換圖,完整的描述了TCP狀態的變化: 從中可以清楚的了解到整個TCP狀態轉移的過程。總共有11個狀態。 先說 ...
本次實驗,我們來探究connect及bind、listen、accept背后的三次握手。 實驗原理 首先簡要回顧一下TCP三次握手的過程: 第一次握手:client向server發送SY ...
目錄 TCP三次握手理論 三次握手過程 狀態轉換 三次握手源代碼分析 創建Socket 客戶端流程 發送SYN報文,向服務器發起tcp連接 收到服務端的SYN+ACK,發送ACK ...
TCP在linux下的實現過程: 首先服務器端調用socket()創建服務器端的套接字之后調用bind()綁定創建socket是所拿到的socket文件描述符,之后調用acppet()阻塞自己等待客戶端的連接。 客戶端同樣調用socket()創建客戶端的套接字,之后調用connect()去連接 ...
在 Linux 系統之中有一個核心武器:epoll 池,在高並發的,高吞吐的 IO 系統中常常見到 epoll 的身影。 IO 多路復用 在 Go 里最核心的是 Goroutine ,也就是所謂的協程,協程最妙的一個實現就是異步的代碼長的跟同步代碼一樣。比如在 Go ...