網(wǎng)絡(luò)編程和并發(fā)知識(shí)倉庫

1. 簡述 OSI 七層協(xié)議。

  • 為了實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)的互連,OSI參考模型把整個(gè)網(wǎng)絡(luò)的通信功能劃分為7個(gè)層次,同時(shí)也定義了層次之間的相互關(guān)系以及各層所包括的服務(wù)及每層的功能。

  • OSI的七層由低到高依次為:物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、會(huì)話層、表示層、應(yīng)用層

  • 下三層(物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層)面向數(shù)據(jù)通信

  • 傳輸層則是七層中最為重要的一層,它位于上層和下層中間,起承上啟下的作用。

  • 上三層(會(huì)話層、表示層、應(yīng)用層)則面向資源子網(wǎng)

image

2. 什么是C/S和B/S架構(gòu)?

C/S架構(gòu)——客戶端/服務(wù)器架構(gòu)

B/S架構(gòu)——瀏覽器/服務(wù)器架構(gòu)

簡述 三次握手、四次揮手的流程。

什么是arp協(xié)議?

地址解析協(xié)議,即ARP(Address Resolution Protocol),是根據(jù)IP地址獲取物理地址的一個(gè)TCP/IP協(xié)議。主機(jī)發(fā)送信息時(shí)將包含目標(biāo)IP地址的ARP請(qǐng)求廣播到網(wǎng)絡(luò)上的所有主機(jī),并接收返回消息,以此確定目標(biāo)的物理地址;收到返回消息后將該IP地址和物理地址存入本機(jī)ARP緩存中并保留一定時(shí)間,下次請(qǐng)求時(shí)直接查詢ARP緩存以節(jié)約資源。地址解析協(xié)議是建立在網(wǎng)絡(luò)中各個(gè)主機(jī)互相信任的基礎(chǔ)上的,網(wǎng)絡(luò)上的主機(jī)可以自主發(fā)送ARP應(yīng)答消息,其他主機(jī)收到應(yīng)答報(bào)文時(shí)不會(huì)檢測(cè)該報(bào)文的真實(shí)性就會(huì)將其記入本機(jī)ARP緩存;由此攻擊者就可以向某一主機(jī)發(fā)送偽ARP應(yīng)答報(bào)文,使其發(fā)送的信息無法到達(dá)預(yù)期的主機(jī)或到達(dá)錯(cuò)誤的主機(jī),這就構(gòu)成了一個(gè)ARP欺騙。ARP命令可用于查詢本機(jī)ARP緩存中IP地址和MAC地址的對(duì)應(yīng)關(guān)系、添加或刪除靜態(tài)對(duì)應(yīng)關(guān)系等。相關(guān)協(xié)議有RARP、代理ARP。NDP用于在IPv6中代替地址解析協(xié)議。</pre>

TCP和UDP的區(qū)別?

UDP 是面向無連接的通訊協(xié)議,UDP 數(shù)據(jù)包括目的端口號(hào)和源端口號(hào)信息。 優(yōu)點(diǎn):UDP 速度快、操作簡單、要求系統(tǒng)資源較少,由于通訊不需要連接,可以實(shí)現(xiàn)廣播發(fā)送 缺點(diǎn):UDP 傳送數(shù)據(jù)前并不與對(duì)方建立連接,對(duì)接收到的數(shù)據(jù)也不發(fā)送確認(rèn)信號(hào),發(fā)送端不知道數(shù) 據(jù)是否會(huì)正確接收,也不重復(fù)發(fā)送,不可靠 。

TCP 是面向連接的通訊協(xié)議,通過三次握手建立連接,通訊完成時(shí)四次揮手 優(yōu)點(diǎn):TCP 在數(shù)據(jù)傳遞時(shí),有確認(rèn)、窗口、重傳、阻塞等控制機(jī)制,能保證數(shù)據(jù)正確性,較為可靠。 缺點(diǎn):TCP 相對(duì)于 UDP 速度慢一點(diǎn),要求系統(tǒng)資源較多

什么是局域網(wǎng)和廣域網(wǎng)?

為何基于tcp協(xié)議的通信比基于udp協(xié)議的通信更可靠?

什么是socket?簡述基于tcp協(xié)議的套接字通信流程。

什么是粘包? socket 中造成粘包的原因是什么? 哪些情況會(huì)發(fā)生粘包現(xiàn)象?

IO多路復(fù)用的作用?

什么是防火墻以及作用?

select、poll、epoll 模型的區(qū)別?

簡述 進(jìn)程、線程、協(xié)程的區(qū)別 以及應(yīng)用場景?

GIL鎖是什么鬼?

Python中如何使用線程池和進(jìn)程池?

threading.local的作用?

進(jìn)程之間如何進(jìn)行通信?

什么是并發(fā)和并行?

進(jìn)程鎖和線程鎖的作用?

解釋什么是異步非阻塞?

路由器和交換機(jī)的區(qū)別?

什么是域名解析?

如何修改本地hosts文件?

生產(chǎn)者消費(fèi)者模型應(yīng)用場景及優(yōu)勢(shì)?

什么是cdn?

LVS是什么及作用?

Nginx是什么及作用?

keepalived是什么及作用?

haproxy是什么以及作用?

什么是負(fù)載均衡?

什么是rpc及應(yīng)用場景?

簡述 asynio模塊的作用和應(yīng)用場景。

簡述 gevent模塊的作用和應(yīng)用場景。

twisted框架的使用和應(yīng)用?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容