計算機網絡英文面試題,計算機網絡面試題整理

GET和POST的區別?

GET和POST方法沒有實質上區別,只是報文格式不同。GET和POST是HTTP協議中的兩種請求方法。而 HTTP 協議是基于 TCP/IP 的應用層協議,無論 GET 還是 POST,用的都是同一個傳輸層協議,所以在傳輸上,沒有區別。

(1)GET請求的參數是放在URL里的,POST請求參數是放在請求body里的。因此:

POST方法比GET方法安全,因為數據在地址欄不可見。

GET方法有長度限制,POST方法沒有。HTTP協議沒有Body和URL的長度限制,對URL限制大多數瀏覽器和服務器的原因。(大多數瀏覽器限制url長度在2k個字節,服務器最多處理64k字節的url)

GET請求的參數只能是ASCII碼,所以中文需要URL編碼,POST支持多種編碼方法。

(2)GET方法是冪等方法,對資源做查詢多次,此實現的結果都是一樣的。POST是非冪等方法,因為一次請求添加一份新資源,二次請求則添加了兩份新資源,多次請求會產生不同的結果,因此POST不是冪等操作。

PUT和POST方法的區別?

冪等性不同。PUT請求是冪等性方法,將A修改為B,它第一次請求值變為了B,再進行多次此操作,最終的結果還是B,與一次執行的結果是一樣的,所以PUT是冪等操作。

HTTP1.1和HTTP1.0區別?

HTTP 1.0默認支持短連接。瀏覽器的每次請求都需要與服務器建立一個TCP連接,服務器完成請求處理后立即斷開TCP連接,服務器不跟蹤每個客戶也不記錄過去的請求。

這也造成了一些性能上的缺陷,例如,一個包含有許多圖像的網頁文件中并沒有包含真正的圖像數據內容,而只是指明了這些圖像的URL地址,當WEB瀏覽器訪問這個網頁文件時,瀏覽器首先要發出針對該網頁文件的請求,當瀏覽器解析WEB服務器返回的該網頁文檔中的HTML內容時,發現其中的img圖像標簽后,瀏覽器將根據img標簽中的src屬性所指定的URL地址再次向服務器發出下載圖像數據的請求。

**HTTP 1.1支持持久連接,在一個TCP連接上可以傳送多個HTTP請求和響應,減少了建立和關閉連接的消耗和延遲。**一個包含有許多圖像的網頁文件的多個請求和應答可以在一個連接中傳輸,但每個單獨的網頁文件的請求和應答仍然需要使用各自的連接。

HTTP 1.1還允許客戶端不用等待上一次請求結果返回,就可以發出下一次請求,但服務器端必須按照接收到客戶端請求的先后順序依次回送響應結果,以保證客戶端能夠區分出每次請求的響應內容,這樣也顯著地減少了整個下載過程所需要的時間。

TCP擁塞控制方法?

慢開始、擁塞避免、快重傳、快恢復。

TCP和UDP區別?

(1)TCP面向連接,UDP面向無連接。

(2)TCP提供可靠的服務,通過TCP連接傳送的數據,無差錯,不丟失,不重復,且按序到達。UDP不保證可靠交付。

(3)TCP對系統資源要求較多,UDP對系統資源要求較少。

(4)每一條TCP連接只能是點到點的;UDP支持一對一,一對多,多對一和多對多的交互通信。

(5)UDP具有較好的實時性,工作效率比TCP高,適用于對高速傳輸和實時性有較高的通信或廣播通信。

(6)TCP首部開銷較大,20個字節;UDP首部開銷較小,8個字節。

TCP和UDP編程步驟

TCP:

TCP編程的服務器端一般步驟是:

1、創建一個socket,用函數socket();

2、設置socket屬性,用函數setsockopt(); * 可選

3、綁定IP地址、端口等信息到socket上,用函數bind();

4、開啟監聽,用函數listen();

5、接收客戶端上來的連接,用函數accept();

6、收發數據,用函數send()和recv(),或者read()和write();

7、關閉網絡連接;

8、關閉監聽;

TCP編程的客戶端一般步驟是:

1、創建一個socket,用函數socket();

2、設置socket屬性,用函數setsockopt();* 可選

3、綁定IP地址、端口等信息到socket上,用函數bind();* 可選

4、設置要連接的對方的IP地址和端口等屬性;

5、連接服務器,用函數connect();

6、收發數據,用函數send()和recv(),或者read()和write();

7、關閉網絡連接;

UDP:

與之對應的UDP編程步驟要簡單許多,分別如下:

UDP編程的服務器端一般步驟是:

1、創建一個socket,用函數socket();

2、設置socket屬性,用函數setsockopt();* 可選

3、綁定IP地址、端口等信息到socket上,用函數bind();

4、循環接收數據,用函數recvfrom();

5、關閉網絡連接;

UDP編程的客戶端一般步驟是:

1、創建一個socket,用函數socket();

2、設置socket屬性,用函數setsockopt();* 可選

3、綁定IP地址、端口等信息到socket上,用函數bind();* 可選

4、設置對方的IP地址和端口等屬性;

5、發送數據,用函數sendto();

6、關閉網絡連接;

UDP應用場景

(1)面向數據包方式。

(2)數據多為短消息。

(3)擁有大量Client。

(4)對安全性無特殊要求。

(5)網絡負擔重,對響應速度要求高。

UDP實現可靠傳輸

UDP是面向無連接的協議,擁有資源消耗少,處理數據快的優點。所以音頻、視頻和普通數據在傳送時,使用UDP較多。

傳輸層無法保證數據的可靠傳輸,可以在應用層模仿TCP的可靠性傳輸。

(1)添加seq/ack機制。

(2)添加發送和接受緩沖區,主要為用戶超時重傳。

(3)添加超時重傳機制。

實現了udp可靠傳輸的開源程序:

(1)RUDP

RUDP 提供一組數據服務質量增強機制,如擁塞控制的改進、重發機制及淡化服務器算法等,從而在包丟失和網絡擁塞的情況下, RTP 客戶機(實時位置)面前呈現的就是一個高質量的 RTP 流。在不干擾協議的實時特性的同時,可靠 UDP 的擁塞控制機制允許 TCP 方式下的流控制行為。

(2)RTP

RTP為數據提供了具有實時特征的端對端傳送服務,如在組播或單播網絡服務下的交互式視頻音頻或模擬數據。

應用程序通常在 UDP 上運行 RTP 以便使用其多路結點和校驗服務;這兩種協議都提供了傳輸層協議的功能。但是 RTP 可以與其它適合的底層網絡或傳輸協議一起使用。如果底層網絡提供組播方式,那么 RTP 可以使用該組播表傳輸數據到多個目的地。

RTP 本身并沒有提供按時發送機制或其它服務質量(QoS)保證,它依賴于底層服務去實現這一過程。 RTP 并不保證傳送或防止無序傳送,也不確定底層網絡的可靠性。 RTP 實行有序傳送, RTP 中的序列號允許接收方重組發送方的包序列,同時序列號也能用于決定適當的包位置,例如:在視頻解碼中,就不需要順序解碼。

(3)UDT

基于UDP的數據傳輸協議(UDP-basedData Transfer Protocol,簡稱UDT)是一種互聯網數據傳輸協議。UDT的主要目的是支持高速廣域網上的海量數據傳輸,而互聯網上的標準數據傳輸協議TCP在高帶寬長距離網絡上性能很差。

顧名思義,UDT建于UDP之上,并引入新的擁塞控制和數據可靠性控制機制。UDT是面向連接的雙向的應用層協議。它同時支持可靠的數據流傳輸和部分可靠的數據報傳輸。由于UDT完全在UDP上實現,它也可以應用在除了高速數據傳輸之外的其它應用領域,例如點到點技術(P2P),防火墻穿透,多媒體數據傳輸等等。

負載均衡

將服務器部署多臺,然后通過負載均衡將用戶的請求發送到不同的服務器來提高服務的性能以及可靠性。

負載均衡算法:

(1)隨機算法

按權重設置隨機概率。在一個截面上碰撞的概率高,但調用量越大分布越均勻,而且按概率使用權重后也比較均勻,有利于動態調整提供者權重。

(2)輪詢以及加權輪詢

輪詢(Round Robbin)當服務器群中各服務器的處理能力相同時,且每筆業務處理量差異不大時,最適合使用這種算法。 輪循,按公約后的權重設置輪循比率。存在慢的提供者累積請求問題,比如:第二臺機器很慢,但沒掛,當請求調到第二臺時就卡在那,久而久之,所有請求都卡在調到第二臺上。

加權輪詢(Weighted Round Robbin)為輪詢中的每臺服務器附加一定權重的算法。比如服務器1權重1,服務器2權重2,服務器3權重3,則順序為1-2-2-3-3-3-1-2-2-3-3-3- …

(3)最小連接以及加權最小連接

最少連接(Least Connections)在多個服務器中,與處理連接數(會話數)最少的服務器進行通信的算法。即使在每臺服務器處理能力各不相同,每筆業務處理量也不相同的情況下,也能夠在一定程度上降低服務器的負載。

加權最少連接(Weighted Least Connection)為最少連接算法中的每臺服務器附加權重的算法,該算法事先為每臺服務器分配處理連接的數量,并將客戶端請求轉至連接數最少的服務器上。

(4)哈希算法

普通哈希

一致性哈希一致性Hash,相同參數的請求總是發到同一提供者。當某一臺提供者掛時,原本發往該提供者的請求,基于虛擬節點,平攤到其它提供者,不會引起劇烈變動。

(5)IP地址散列

通過管理發送方IP和目的地IP地址的散列,將來自同一發送方的分組(或發送至同一目的地的分組)統一轉發到相同服務器的算法。當客戶端有一系列業務需要處理而必須和一個服務器反復通信時,該算法能夠以流(會話)為單位,保證來自相同客戶端的通信能夠一直在同一服務器中進行處理。

(6)URL散列

通過管理客戶端請求URL信息的散列,將發送至相同URL的請求轉發至同一服務器的算法。

OSI七層模型的每一層都有哪些協議

物理層:EIA/TIA-232, EIA/TIA-499, V.35, V.24, RJ45, Ethernet, 802.3, 802.5, FDDI, NRZI, NRZ, B8ZS

數據鏈路層:Frame Relay, HDLC, PPP, IEEE 802.3/802.2, FDDI, ATM, IEEE 802.5/802.2

網絡層:IP,IPX,AppleTalk DDP

傳輸層:TCP,UDP,SPX

會話層:RPC,SQL,NFS,NetBIOS,names,AppleTalk,ASP,DECnet,SCP

表示層:TIFF,GIF,JPEG,PICT,ASCII,EBCDIC,encryption,MPEG,MIDI,HTML

應用層:FTP,WWW,Telnet,NFS,SMTP,Gateway,SNMP

TCP/IP用到了那些協議,在哪一層

數據鏈路層:ARP,RARP

網絡層: IP,ICMP,IGMP

傳輸層:TCP ,UDP,UGP

應用層:Telnet,FTP,SMTP,SNMP.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/394571.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/394571.shtml
英文地址,請注明出處:http://en.pswp.cn/news/394571.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

利用遞歸求某數的階乘——C/C++

#include<stdio.h>int getFactorial(int n) {if(n0)return 1;else return n*getFactorial(n-1); }int main() {int n,res;scanf("%d",&n);res getFactorial(n);printf("%d",res);return 0; } 轉載于:https://www.cnblogs.com/daemon94011/p/106…

intern_充分利用Outreachy Intern申請流程

internby Joannah Nanjekye喬安娜南耶基(Joannah Nanjekye) 充分利用Outreachy Intern申請流程 (Get the most out of your Outreachy Intern application process) Outreachy gives three-month paid internships for persons that are underrepresented in tech. Interns ar…

Put-Me-Down項目Postmortem2

一.設想和目標二.計劃三.資源四.變更管理五.設計/實現六.測試/發布總結一.設想和目標 1. 我們的軟件要解決什么問題&#xff1f;是否定義得很清楚&#xff1f;是否對典型用戶和典型場景有清晰的描述&#xff1f; 我們的軟件要幫助低頭族控制使用手機時間。功能很明確&#xff0…

大數據實驗報告總結體會_建設大數據中臺架構思考與總結

簡介本文介紹完善的大數據中臺架構了解這些架構里每個部分的位置&#xff0c;功能和含義及背后原理及應用場景。幫助技術與產品經理對大數據技術體系有個全面的了解。數據中臺定義&#xff1a;集成離線數倉與實時數倉&#xff0c;并以多數據源統一整合采集到kafka,再通過kafka進…

半數集問題

給定一個自然數n&#xff0c;由n開始可以依次產生半數集set(n)中的數如下&#xff1a; (1) n ∈set(n)&#xff1b; (2) 在n的左邊加上一個自然數&#xff0c;但該自然數不能超過最近添加的數的一半&#xff1b; (3) 按此規則進行處理&#xff0c;直到不能再添加自然數為止。…

微型計算機控制理論基礎答案,微型計算機控制技術試卷c

微型計算機控制技術試卷a潘新民 微型計算機控制技術實用教程微型計算機控制技術試卷C一、選擇題(本題共10小題&#xff0c;每小題 1.5分&#xff0c;共15分)1. DAC0832的VREF接-5V&#xff0c;IOUT1接運算放大器異名端&#xff0c;輸入為1000000B &#xff0c;輸出為( )。A. 5V…

aws lambda_四處奔走:初學者遇到AWS Lambda

aws lambdaby Janaka Bandara通過Janaka Bandara 四處奔走&#xff1a;初學者遇到AWS Lambda (Running around the block: a beginner meets AWS Lambda) Computing! It sure has a very long, vivid (and sometimes awkward) history. Some key milestones include:計算&…

python打開快捷方式_Python創建啟動目錄的快捷方式,python,到

# -*- coding:utf-8 -*-# author&#xff1a;lizonezhiimport osimport sysimport pythoncomimport win32com.client as clientdef createShortCut(filename): # 目前創建的無起始位置"""filename should be abspath, or there will be some strange errors&quo…

二叉樹的基本操作及應用(三)

#include <stdio.h> #include <stdlib.h> #include <malloc.h> #include <string.h> typedef char DataType; int depth0; int h11; int nlayer1; char ch2; typedef struct node {DataType data;//節點數據元素struct node *lchild;//指向左孩子struc…

maven的profile詳解

詳細內容請見&#xff1a;https://www.cnblogs.com/wxgblogs/p/6696229.html Profile能讓你為一個特殊的環境自定義一個特殊的構建&#xff1b;profile使得不同環境間構建的可移植性成為可能。Maven中的profile是一組可選的配置&#xff0c;可以用來設置或者覆蓋配置默認值。有…

夏至未至計算機版音樂,夏至未至有哪些插曲背景音樂 夏至未至所有bgm歌曲匯總...

夏至未至有哪些插曲背景音樂 夏至未至所有bgm歌曲匯總夏至未至第一集插曲是什么?夏至未至插曲曝光。夏至未至是由陳學冬、鄭爽、白敬亭等聯袂主演的青春偶像劇,昨晚已經開播了&#xff0c;那么第一集的插曲是什么呢?和小編一起去看看吧!夏至未至第一集插曲《那些花兒》那片笑…

了解如何在20分鐘內創建您的第一個Angular應用

Angular is a JavaScript framework, created my Misko Hevery and maintained by Google. It’s an MVC (Model View Vontroller). You can visit the official page to learn more about it.Angular是一個JavaScript框架&#xff0c;創建了我的Misko Hevery&#xff0c;并由G…

js閉包使用

閉包就是在一個函數內定義一個內部函數 并返回內部函數 function f1(){var a1; addfunction(){aa1;} function f1Sub(){ console.log(a); } return f1Sub; } var ff1();f();add();f();var f2f1();add();f(); 輸出為 1 2 2 可以看到輸出結果 定義f2后執行add 這時 f2的add函數已…

BIO,NIO,AIO總結(二)

這里重點介紹NIO 待定 http://www.apigo.cn/2018/11/09/javacore5/ https://juejin.im/entry/598da7d16fb9a03c42431ed3 https://mp.weixin.qq.com/s/c9tkrokcDQR375kiwCeV9w?轉載于:https://www.cnblogs.com/smallJunJun/p/10607078.html

思科配置計算機ip地址子網掩碼,計算機系統與網絡技術IP地址 子網掩碼 主機號等計算復習...

IP地址 子網掩碼 主機號等計算復習IP地址、子網掩碼、網絡號、主機號、網絡地址、主機地址復習 IP地址&#xff1a;4段十進制&#xff0c;共32位二進制&#xff0c;如&#xff1a;192.168.1.1 二進制就是&#xff1a;11000000&#xff5c;10101000&#xff5c;00000001&#xf…

nmap常用參數詳解

nmap常用參數詳解 作者&#xff1a;尹正杰 版權聲明&#xff1a;原創作品&#xff0c;謝絕轉載&#xff01;否則將追究法律責任。 借用英雄聯盟的一個英雄趙信的一句話&#xff1a;“即使敵眾我寡,末將亦能萬軍叢中取敵將首級!”。三國關羽&#xff0c;萬軍叢中斬了顏良&#x…

r語言r-shiny_使用Shiny和R構建您的第一個Web應用程序儀表板

r語言r-shinyby AMR通過AMR 使用Shiny和R構建您的第一個Web應用程序儀表板 (Build your first web app dashboard using Shiny and R) One of the beautiful gifts that R has (that Python missed,until dash) is Shiny. Shiny is an R package that makes it easy to build …

RHEL5.8配置開機自動掛載磁盤

Linux環境中可以通過fstab來設置自動掛載磁盤或者共享存儲&#xff0c;操作如下&#xff1a; fstab配置文件路徑&#xff1a;/etc/fstab 每行代表一個存儲位置。 [rootappsrv01 ~]# cat /etc/fstab LABEL/ / ext3 defaults 1…

909計算機基礎大綱,《計算機應用基礎》(專科)考試大綱

《計算機應用基礎》(專科)考試大綱《計算機應用基礎》考試大綱考試對象&#xff1a;《計算機應用基礎》考試大綱適用于網絡教育所有專業的高中起點專科學生。 考試教材&#xff1a;《全國計算機等級考試一級MS Office教程》(2004版)&#xff0c;南開大學出版社 課程學時&#x…

模板變量,過濾器和靜態文件引用

模板變量&#xff0c;過濾器和靜態文件引用 模板路徑 Djiango先到settings里面找templates下的DIRS查看是否有路徑&#xff0c;也是從上往下依次尋找&#xff0c;找到就返回。如果DIRS沒有&#xff0c;就到APP_DIRS里面尋找。但是APP要先在INSTALLED_APPS里面進行注冊然后根據I…