1、協定
文法:通信雙方“如何講”
語義:确定通信雙方“講什麼”
時序:通信雙方“講話”的次序
2、TCP與UDP

3、套接字使用位址結構為:
sockaddr
IP v4位址為:
sockaddr_in
4、阻塞與非阻塞
阻塞:
函數不傳回,直到發送或接收資料等成功
套接字輸出隊列滿,函數send會阻塞等待
沒有資料可用時,函數recv會阻塞等待
非阻塞:函數直接傳回,無論是否成功
如果函數調用失敗,傳回EWOULDBLOCK或EAGAIN
用poll或select/epoll判斷何時可以發送或接收資料
The macro EWOULDBLOCK is another name for EAGAIN; they are always the same in the GNU C library.
5、負載均衡技術
兩層含義
大量的并發通路或資料流量分散到多台裝置處理
單個重負載的運算分擔到多台節點裝置上做并行處理,再彙總結果,例如Map Reduce
負載均衡在不同層次的實作
① 域名解析實作:DNS輪轉
② 協定實作:如HTTP重定向
③ IP層實作:如LVS,Linux Virtual Server。
6、LVS叢集采用IP負載均衡技術和基于内容請求分發技術。排程器具有很好的吞吐率,将請求均衡地轉移到不同的伺服器上執行,且排程器自動屏蔽掉伺服器的故障,進而将一組伺服器構成一個高性能的、高可用的虛拟伺服器。整個伺服器叢集的結構對客戶是透明的,而且無需修改用戶端和伺服器端的程式。【1】
在已有的IP負載均衡技術中,主要有通過網絡位址轉換(Network Address Translation)将一組伺服器構成一個高性能的、高可用的虛拟伺服器,我們稱之為VS/NAT技術(Virtual Server via Network Address Translation)。在分析VS/NAT的缺點和網絡服務的非對稱性的基礎上,我們提出了通過IP隧道實作虛拟伺服器的方法VS/TUN(Virtual Server via IP Tunneling),和通過直接路由實作虛拟伺服器的方法VS/DR(Virtual Server via Direct Routing),它們可以極大地提高系統的伸縮性。VS/NAT、VS/TUN和VS/DR技術是LVS叢集中實作的三種IP負載均衡技術。
參考