原创 鏈路匯聚控制協議-LACP

好久沒寫博客了!武漢肺炎也沒法上班,只能在家學習學習,安排了學習lacp,上網查找資料,整理彙總了一下。 以太網鏈路聚合Eth-Trunk簡稱鏈路聚合,通過將多個物理接口捆綁爲一個邏輯接口,可以在不進行硬件升級的條件下,達到增加鏈路帶寬的

原创 DHCP-packet

DHCP Dynamic Host Configuration Protocol,動態主機配置協議,採用C/S模式,主要應用在爲客戶機自動分配IP地址、子網掩碼、缺省網關、DNS服務器的IP地址等。 基於UDP協議,採用的知名端口號如下:

原创 linux-文件權限

chmod #include <sys/stat.h> int chmod (const char* filename, int mode); filename是文件名 mode文件權限,八進制數 返回值:成功 返回0,失敗返回-1

原创 const-常量指針和指針常量

const 常量指針 eg:const int *p; 指針指向的內容是常量。因此,內容不可以改變,但是指針地址可以改變。 指針常量 eg:int *const p; 指針是常量。因此,指針地址不可以改變,指向的內容可以改變。 #inc

原创 VLAN Tag/Untag Frame Forward Process

Link Type: Access:端口只能屬於一個vlan,一般用於連接PC Trunk:端口可以屬於多個vlan,可以接收和發送多個vlan的報文,一般用於交換機之間連接的端口 Hybird:端口可以屬於多個vlan,可以接收和發送多

原创 linux-內存尋址-內存地址

內存地址 1.邏輯地址 包含在機器語言指令中用來指定一個操作數或一條指令的地址。每個邏輯地址都由一個段(segment)和偏移量(offset)組成,偏移量指明瞭從段開始的地方到實際地址之間的距離。 2.線性地址 是一個32位無符號整數,

原创 linux-啓動過程-systemd

操作系統的啓動分爲兩個過程:boot(引導)和startup(啓動)。 boot階段開始於打開電源開關,結束於內核初始化完成和systemd進程成功。啓動階段接管了剩餘工作,直到操作系統進入可操作狀態。 因此,linux系統的啓動過程如下

原创 linux-IPC-Semaphore

信號量semaphore 信號量是一個計數器,用於爲多個進程提供對共享數據對象的訪問。常用的信號量形式爲二元信號量(Binary semaphore)。它控制單個資源,初始值爲1。但是,一般而言,信號量的初值可以是任意正數,該值表明有多少

原创 linux-IPC-ShareMemory

共享內存(ShareMemory) 共享內存允許兩個或多個進程共享一個給定的存儲區。因爲數據不需要在客戶進程和服務器進程之間複製,因此,這是最快的一種IPC方式。 使用共享內存的關鍵點在於:多個進程同步訪問一個給定的存儲區,若服務器進程正

原创 linux-IPC-消息隊列

消息隊列 消息隊列是消息的鏈接表,存儲在內核中,由消息隊列標誌符標識。 每個消息都包含一個正的長整型類型的字段、一個非負的長度以及實際的數據字節數,這些都在消息添加到隊列時,傳送給msgsnd。msgrcv用於在隊列中取消息,消息並不一定

原创 linux-IPC -PIPE

進程間通信 (InterProcess Communication,IPC) 原因:由於不同進程地址空間也不同,A進程無法訪問B進程的地址空間。任何一個進程的全局變量也無法被其他進程所見,因此,進程間通信必須通過內核。在內核中開闢一塊緩衝

原创 linux-UNIX socket

UNIX域套接字 域套接字作爲進程間通信的一種手段,值得我們研究一下。 域套接字實現本地進程間通信,同樣有服務端和客戶端之分。一個進程作爲客戶端,另一個進程作爲服務端。這個和TCP socket類似,但是不一樣。域套接字不經過底層網絡。數

原创 linux-socket

socket系統調用 socket函數族在系統調用時,同樣遵循我上篇博客的 用戶態->內核態,但是,我在尋找sys_socket定義時,只有函數聲明 asmlinkage long sys_socket(int, int, int); 那