目錄
吞吐量(throughput)表示在單位時間內通過某個網絡(或信道、接口)的實際的數據量。
一、七個計算機網絡的性能指標
1.速率(數據的傳送速率) or數據率 or比特率
速率的單位是bit/s(或b/s,有時也寫爲bps,即bit per second).當數據率較高時,就常常在bit/s的前面加上一個字母。
例如,k(kilo)=10^3=千,M(Mega)=10^6=兆,G(Giga)=10^9=吉,T(Tera)=10^12=太,P(Peta)=10^15=拍,E(Exa)=10^18=艾,Z(Zetta)=10^21=澤,Y(Yotta)=10^24=堯。
提到網絡速率時,一般指額定速率,和實際差別挺大的。
在計算機領域中,數的計算使用二進制。因此,千=K=2^10=1024,兆=M=2^20,吉=G=2^30,太=T=2^40,
拍=P=2^50,艾=E=2^60,澤=Z=2^70,堯=Y=2^80.此外,此外計算機中的數據量往往用字節B作爲度量單位(B代表byte)。通常一個字節代表8個比特
字節是計算機中數據處理的基本單位。計算機中以字節爲單位存儲和解釋信息,規定一個字節由八個二進制位構成,即1個字節等於8個比特(1Byte=8bit)
在算計機領域,所有這些單位都用大小,在通信領域中,只有“1000”使用小寫“k”,其餘的也都用大寫。有的書不這樣嚴格區分,大寫K即可以表示1000,又可以表示1024。
(記着小寫b和大寫B,如果是大寫B計算時和bit相關,則可能會用到8倍關係)舉個栗子:
1Bit=8bit
1kb=1000bit
1KB=1024*8bit
2.帶寬
(1)信號具有的頻帶寬度 單位赫(或千赫、兆赫、吉赫)(頻域)
(2)在單位時間內網絡的某信道所能通過的最高數據率。單位就是數據率的單位bit/s,是“比特每秒”(時域)(計算機網絡中談論的通常指時域上的)
3.吞吐量
吞吐量(throughput)表示在單位時間內通過某個網絡(或信道、接口)的實際的數據量。
平時說的1Gbit/2的以太網,說的是其額定速率,實際上可能只有100Mbit/s甚至更低。
有時候吞吐量還可用每秒傳送的字節數或幀數來表示。
4.時延
時延(delay或latency)是指數據(一個報文或分組,甚至比特)從網絡一端到另一端所需的時間。時延是個很重要的性能指標,它有時也稱爲延遲或遲延。
網絡中的時延是由以幾個不同的部分組成的:
(1)發送時延
發送時延(transmission delay)是主機或路由器發送數據幀所需的時間,也就是從發送的數據幀的第一個比特算起,到該幀的最後一個比特發送完畢所需的時間。因此發送也叫傳輸時延。
發送時延=數據幀長度(bit)/發送速率(bit/s)
(2)傳播時延
傳播時延(propagation delay)是電磁波在信道中傳播一定距離需要花費的時間。
傳播時延=信道長度(m)/電磁波在信道上的傳播速率(m/s)
電磁波在自由空間的傳播速率是光速,即3.0*10^5km/s。電磁波在網絡傳輸中的傳播速率比在自由空間略低一些:在銅纜中的傳播速率約爲2.3*10^5km/s,在光纖中的傳播速率約爲2.0*10^5km/s。1000km光纖傳播時延約爲5ms。
(3)處理時延
主機或路由器在收到分組時要花費一定的時間進行處理,例如分析分組的首部、從分組中提取數據部分、進行差錯檢驗或查找適當的路由等,這就產生了處理時延。
(4)排隊時延
分組在經過網絡傳輸時,要經過許多路由器。但分組在進入路由器後要先在輸入隊列中排隊等待處理。在路由器確定了轉發接口後,還要輸出隊列中等待轉發。這就產生了排隊時延。排隊時延的長短往往取決於網絡當時的通信量。當網絡通信量很大時就會發生隊列溢出,使分組丟失,這就相當於排隊時延爲無窮大。
總時延=發送時延+傳播時延+處理時延+排隊時延
一般來說,小時延的網絡要優於大時延的網絡,在某些情況下,一個低速率、小時延的網絡很可能要優於一個高速率但大時延的網絡。
(5)時延帶寬積
時延帶寬積=傳播時延*帶寬
例如,設某段鏈路的傳播時延爲20ms,帶寬爲10Mbit/s。算出
時延帶寬積=20*10^(-3)*10*10^6=2*10^5bit
這表明,若發送端連續發送數據,則在發送的第一個比特即將到達終點時,發送端就已經發送了20萬比特,而這個20萬比特都正在鏈路上向前移動。因此,鏈路的時延帶寬積又稱爲以比特爲單位的鏈路長度
上面的例子好好體會,好有用的哦!!
(6)往返時間RTT
在計算機網絡中,網返時間RTT(Round_Trip Time)也是一個重要的性能指標。這是因爲在許多情況下,互聯網上的信息不僅僅單方向傳輸而是雙向交互的。因此,我們有時很需要知道雙向交互一次所需的時間。
例如,A向B發送數據。如果數據長度是100MB,發送速率是100Mbit/s,那麼
發送時間=數據長度/發送速率=100x2^20x8/(100x10^6)=8.39s
如果B正確收完100MB的數據後,就立即向A發送確認。再假定A只有在收到B的確認信息後,才能繼續向B發送數據。顯然,這需要等待一個往返時間RTT(這裏假定確 信息很短,可忽略B發送確認的時間)。如果RTT=2s,那麼可以算出A向B發送數據的有效數據率。
有效數據率= 數據長度/(發送時間+RTT)= 100×2^20x8/(8.39+2)≈80.7x10^6bit/s≈80.7Mbit/s
比原來的數據率100 Mbit/s小不少
在互聯網中,往返時間還包括各中間結點的處理時延、排隊時延以及轉發數據時的發送延。當使用衛星通信時,往返時間RTT相對較長,是很重要的一個性能指標。
(7)利用率
利用率有信道利用率和網絡利用率兩種。
信道利用率指出某信道有百分之幾的時間是被利用的(有數據通過)。完全空閒的信道的利用率是零。
網絡利用率則是全網絡的信道利用率的加權平均值。信道利用率並非越高越好。
根據排隊論的理論,當某信道的利用率增大時,該信道引起的時延也就迅速增加。當網絡的通信量很少時,網絡產生的時延並不大。但在網絡通信量的不斷增大的情況下,由於分組在網絡結點(路由器或結點交換機)進行處理時需要排隊等 因此網絡引起的時延就會增大。
D=D0/(1-U) (D0:網絡空閒時的時延,D:網絡當前的時延)適當的假定條件下(及理論條件下)
這裏U是網絡的利用率,數值在0到1之間。當網絡的利用率達到其容量的1/2時 ,時延就要加倍。特別值得注意的就是:當網絡的利用率接近最大值1時,網絡的時延就趨於無窮大。信道或網絡的利用率過高會產生非常大的時延。因此一些擁有較大主幹網的ISP通常控制信道利用率不超過50%。如果超過了就要準備擴容,增大線路的帶寬。
二、要點總結
1.分組交換的特點:(1)報文分組,加首部(2)經路由器存儲轉發(3)在目的地合併
2.電路交換、報文交換和分組交換的主要優缺點
(1)電路交換:端對端通信質量因約決定了通信資源獲得可靠保障,對連續傳送大量數據效率高
(2)報文交換:無需預約傳輸帶寬,動態逐段利用傳輸帶寬對突發式數據通信效率高,通信迅速。
(3)分組交換:具有報文交換之高效、迅速的要點,且各分組小,路由靈活,網絡生存性能好
以下是部分習題:
3.試在下列條件下比較電路交換和分組交換。要傳送的報文共 x(bit)。從源點到終點共經過 k 段鏈路,每段鏈路的傳播時延爲 d(s),數據率爲 b(b/s)。在電路交換時電路的建立時間爲 s(s)。在分組交換時分組長度爲 p(bit) ,且各結點的排隊等待時間可忽略不計。 問在怎樣的條件下,分組交換的時延比電路交換的要小?(提示:畫一下草圖觀察 k 段鏈路共有幾個結點。)
答:線路交換時延: kd+x/b+s, 分組交換時延: kd+(x/p)*(p/b)+ (k-1)*(p/b) ,其中 (k-1)*(p/b) 表示 K 段傳輸中,有(k-1) 次的儲存轉發延遲, 當 s>(k-1)*(p/b) 時,電路交換的時延比分組交換的時延大, 當 x>>p,相反。
4.在上題的分組交換網中, 設報文長度和分組長度分別爲 x 和(p+h)(bit), 其中 p爲分組的數據部分的長度,而 h 爲每個分組所帶的控制信息固定長度,與 p 的大小無關。 通信的兩端共經過 k 段鏈路。鏈路的數據率爲 b(b/s),但傳播時延和結點的排隊時間均可忽略不計。 若打算使總的時延爲最小,問分組的數據部分長度 p 應取爲多大? (提示: 參考圖 1-12 的分組交換部分, 觀察總的時延是由哪幾部分組成。 )
答:總時延 D 表達式,分組交換時延爲: D= kd+(x/p)*((p+h)/b)+ (k-1)*(p+h)/b D 對 p 求導後,令其值等於 0,求得 p=[(xh)/(k-1)]^0.5
5.收發兩端之間的傳輸距離爲 1000km ,信號在媒體上的傳播速率爲 2×108m/s。試計算以下兩種情況的發送時延和傳播時延:
(1) 數據長度爲 107bit, 數據發送速率爲 100kb/s。
(2) 數據長度爲 103bit, 數據發送速率爲 1Gb/s。
從上面的計算中可以得到什麼樣的結論?
解:(1)發送時延: ts=107/105=100s 傳播時延 tp=106/(2 ×108)=0.005s
(2)發送時延 ts =103/109=1 sμ傳播時延: tp=106/(2 ×108)=0.005s
結論:若數據長度大而發送速率低,則在總的時延中,發送時延往往大於傳播時延。但若數據長度短而發送速率高,則傳播時延就可能是總時延中的主要成分。
6.假設信號在媒體上的傳播速度爲 2.3×10^8m/s.媒體長度 L 分別爲:
(1)10cm(網絡接口卡) (2)100m(局域網)(3)100km(城域網)(4) 5000km(廣域網)
試計算出當數據率爲 1Mb/s 和 10Gb/s 時在以上媒體中正在傳播的比特數。
傳播時延=信道長度(m)/電磁波在信道上的傳播速率(m/s)
(1)傳播時延=0.1/(2.3x10^8)*2^10=4.35e-10s
數據率爲1Mbi/s時 bit=傳播時延*1Mbit/s=4.35e-10*2^10
7.長度爲 100 字節的應用層數據交給傳輸層傳送,需加上 20 字節的 TCP 首部。再交給網絡層傳送,需加上 20 字節的 IP 首部。最後交給數據鏈路層的以太網傳送,加上首部和尾部工 18 字節。試求數據的傳輸效率。數據的傳輸效率是指發送的應用層數據除以所發送的總數據(即應用數據加上各種首部和尾部的額外開銷)。若應用層數據長度爲 1000 字節,數據的傳輸效率是多少?
解:(1) 100/(100+20+20+18 )=63.3%
(2) 1000/( 1000+20+20+18 ) =94.5%
8.論述具有五層協議的網絡體系結構的要點,包括各層的主要功能。
答:綜合 OSI 和 TCP/IP 的優點,採用一種原理體系結構。各層的主要功能:
物理層 物理層的任務就是透明地傳送比特流。 (注意:傳遞信息的物理媒體,如雙絞線、同軸電纜、光纜等,是在物理層的下 面,當做第 0 層。) 物理層還要確定連接電纜插頭的定義及連接法。
數據鏈路層 數據鏈路層的任務是在兩個相鄰結點間的線路上無差錯地傳送以幀 (frame)爲單位的數據。 每一幀包括數據和必要的 控制信息。
網絡層 網絡層的任務就是要選擇合適的路由,使 發送站的運輸層所傳下來的分組能夠
正確無誤地按照地址找到目的站, 並交付給目的站的運輸層。
運輸層 運輸層的任務是向上一層的進行通信的兩個進程之間提供一個可靠的端到端服務, 使它們看不見運輸層以下的數據通信 的細節。
應用層 應用層直接爲用戶的應用進程提供服務。
9.假定要在網絡上傳送1.5MB的文件。設分組長度爲1KB,往返時間RTT=80ms。傳送數據之前還需要有建立TCP連接的時間,這時間是2×RTT=160ms。試計算在以下幾種情況下接收方收完該文件的最後一個比特所需的時間。
(1)數據發送速率爲10Mb/s,數據分組可以連續發送。
(2)數據發送速率爲10Mb/s,但每發送完一個分組後要等待一個RTT時間才能再發送一個分組。
(3)數據發送速率極快,可以不考慮發送數據所需的時間。但規定在每一個RTT往返時間內只能發送20個分組。
(4)數據發送速率極快,可以不考慮發送數據所需的時間。但在第一個RTT往返時間內只能發送一個分組,在第二個RTT內可發送兩個分 組,在第三個RTT內可發送四個分組(即23-1=22=4個分組)
答:題目的已知條件中的M=2^20=1048576,K=2^10=1024。
(1)發送這些比特所需時間=1.5×2^20x8/(10x10^6)=1.258s。
最後一個分組的傳播時間還需要0.5×RTT=40ms。
總共需要的時間=2×RTT+1.258+0.5×RTT=0.16+1.258+0.04=1.458s。
(2)需要劃分的分組數=1.5MB/1KB=1536。
從第一個分組到達直到最後一個分組到達要經歷1535×RTT=1535×0.08=122.8s。
總共需要的時間=1.458+122.8=124.258s。
(3)在每一個RTT往返時間內只能發送20個分組。1536個分組,需要76個RTT,76個RTT可以發送76×20=1520個分組,最後剩下16個分組,一次發送完。但最後一次發送的分組到達接收方也需要0.5×RTT。
因此,總共需要的時間=76.5×RTT+2×RTT=6.12+0.16=6.28s。
(4)在兩個RTT後就開始傳送數據。
經過n個RTT後就發送了1+2+4+…+2n=2^(n+1)-1個分組。
若n=9,那麼只發送了2^10-1=1023個分組。可見9個RTT不夠。
若n=10,那麼只發送了2^11-1=2047個分組。可見10個RTT足夠了。
這樣,考慮到建立TCP連接的時間和最後的分組傳送到終點需要的時間,現在總共需要的時間=(2+10+0.5)×RTT=12.5×0.08=1s。
10.有一個對點鏈路,長度爲50km。若數據在此鏈路上的傳播速度爲2x10^8m/s,試問鏈路的帶寬應爲多少才能使傳播時延和發送100字節的分組的發送時延一樣大?如果發送的是512字節長的分組,結果又應如何?
傳播時延(Tp)=信道長度/傳播速率=50*10^3/(2x10^8)=0.00025=2.5*10^(-4)s
發送時延=數據長度/發送速率
帶寬(某信道能通過的最高數據率)bit/s
答:
傳播時延Tp = 50 × 10^3 m / (2 × 10^8) m/s = 2.5 × 10^(-4) s
100字節時帶寬 = 100 字節/ 2.5 × 10^(-4) s = 字節/s = 3.2 Mbit/s
512字節時帶寬 =512 字節/ 2.5 × 10^(-4) s = 2.048 字節/s = 16.384 Mbit/
11.有一個點對點鏈路,長度爲20000km。數據的發送速率是1kbit/s,要發送的數據有100bit。數據在此鏈路上的傳播速度爲2×10^8m/s。假定我們可以看見在線路上傳輸的比特,試畫出我們看到的線路上的比特(畫兩個圖,一個在100bit剛剛發送完時,另一個是再經過0.05s後)。
12條件同上題。但數據的發送速率改爲1Mbit/s。和上題的結果相比較,你可以得出什麼結論?
1kbit=10^3bit 1Mbit=10^6bit
13以1 Gbit/s的速率發送數據。試問在以距離或時間爲橫座標時,一個比特的寬度分別是多少?
答:
距離:1 bit × 2 × 10^8 m/s(在光纖中的速率)/ 1 Gbit/s = 0.2 m
時間:1 bit / 1 Gbit/s = 10^(- 9) s