Linux高效能伺服器程式設計(一)

2021-07-28 02:58:57 字數 1244 閱讀 9017

osi分層模型:應用層、表示層、會話層、傳輸層、網路層、資料鏈路層、物理層

tcp/ip模型:應用層、傳輸層、網路層、資料鏈路層

應用層:

https 工作原理

1. tls與https的關係

2. 什麼是證書、數字簽名

傳輸層:

tcp(三次握手、四次揮手)

三次握手:

1. 客戶端傳送syn,seq=x

2. 伺服器接收到客戶端的請求之後,傳送syn,ack=1,seq=y,ack=x+1;

3. 客戶端向伺服器傳送ack=1,seq=x+1,ack=y+1;

四次揮手:

1. 客戶端:fin,seq=u。

2. 伺服器:ack=1,seq=v,ack=u+1

3. 伺服器:fin=1,ack=1,seq=w,ack=u+1;

4. 客戶端:ack=1,seq=u+1,ack=w+1;

疑難解析:

tcp疑難解析1

tcp疑難解析2

udp

udp疑難解析

網路層

ip資料鏈路層:

工作過程:

1> 當主機a向本區域網上的某個主機b傳送ip資料報時,就先在自己的arp緩衝表中檢視有無主機b的ip位址。

2> 如果有,就可以查出其對應的硬體位址,再將此硬體位址寫入mac幀,然後通過乙太網將資料報傳送到目的主機中。

3> 如果查不到主機b的ip位址的表項。可能是主機b才入網,也可能是主機a剛剛加電。其高速緩衝表還是空的。在這中情況下,主機a就自動執行arp。

(1)arp程序在本區域網上廣播乙個arp請求分組。arp請求分組的主要內容是表明:我的ip位址是192.168.0.2,我的硬體位址是00-00-c0-15-ad-18.我想知道ip位址為192.168.0.4的主機的硬體位址。

(2)在本區域網上的所有主機上執行的arp進行都收到此arp請求分組。

(3)主機b在arp請求分組中見到自己的ip位址,就向主機a傳送arp響應分組,並寫入自己的硬體位址。其餘的所有主機都不理睬這個arp請求分組。arp響應分組的主要內容是表明:「我的ip位址是192.168.0.4,我的硬體位址是08-00-2b-00-ee-aa」,請注意:雖然arp請求分組是廣播傳送的,但arp響應分組是普通的單播,即從乙個源位址傳送到乙個目的位址。

(4)主機a收到主機b的arp響應分組後,就在其arp高速緩衝表中寫入主機b的ip位址到硬體位址的對映。

常見的網路面試題

linux高效能伺服器程式設計

linux高效能伺服器程式設計 當當網 亞馬遜 目錄 第一章 tcp ip協議族 第二章 ip協議族 第三章 tcp協議詳解 第四章 tcp ip通訊案例 訪問internet 第五章 linux網路程式設計基礎api 第六章 高階io函式 第七章 linux伺服器程式規範 第八章 高效能伺服器框架...

linux 高效能伺服器程式設計

1.高效能定時器 時間輪,時間堆 處理超時時間,如nginx使用紅黑樹,找出最可能超時的事件 2.高效能伺服器程式框架 nginx 使用的是基於事件模型,epoll,不阻塞,非同步處理 兩種高效的事件處理模式 reactor模式 proactor模式 兩種高效的併發模式 半同步 半非同步模式 領導者...

linux高效能伺服器程式設計(1)

linux網路程式設計基礎api 1 socket位址api 2 sockt基礎api sockt的api全部定義在sys socket.h檔案中,包括 建立socket,命名socket,監聽socket,接受連線,發起連線,讀寫資料,獲取位址資訊,檢測帶外標記,以及讀取和設定socket選項。3...