傳輸層提供的服務(wù)是通過兩端的傳輸實體之間所用的協(xié)議實現(xiàn)的!
傳輸層協(xié)議和數(shù)據(jù)鏈路層協(xié)議運(yùn)行環(huán)境的差異:
在數(shù)據(jù)鏈路層:兩個路由器(交換節(jié)點(diǎn))通過數(shù)據(jù)鏈路直接通信;建立連接的過程簡單,一個輸出線對應(yīng)一個路由器,且目的路由器一直處于等待連接狀態(tài)。
在傳輸層:兩端的主機(jī)通過整個通信子網(wǎng)進(jìn)行通信;建立連接過程較復(fù)雜,有較復(fù)雜的尋址過程,并且經(jīng)常存在多條連接,連接的數(shù)目也動態(tài)變化,因此傳輸層的緩沖器管理和流量控制較復(fù)雜。
一、傳輸協(xié)議的類型——傳輸層協(xié)議依賴網(wǎng)絡(luò)層提供的服務(wù)。
網(wǎng)絡(luò)層服務(wù)分類:
a類:提供完善服務(wù),分組的丟失、重復(fù)及亂序情況可忽略不計, 不使用n-reset原語。
b類:分組很少丟失,但時常使用n-reset原語,協(xié)議建立新的網(wǎng)絡(luò)連接,重新同步,然后繼續(xù)傳輸數(shù)據(jù)。
c類:提供完全不可靠的服務(wù)。用此類服務(wù)的傳輸層協(xié)議最復(fù)雜。
傳輸層協(xié)議分類:
0類(a類):最簡單類,只提供建立和釋放連接的機(jī)制。
1類(b類):基本錯誤恢復(fù)類,提供從n-reset中恢復(fù),不需要檢錯、流控。
2類(a類) :多路復(fù)用類,比0類增加了多路復(fù)用的功能。
3類(b類) :錯誤恢復(fù)和多路復(fù)用類,既可采用多路復(fù)用又可從n-reset中恢復(fù),且使用顯式流量控制。
4類(c類) :錯誤檢測和恢復(fù)類,能處理分組的丟失、重復(fù),從n—reset和其它錯誤中恢復(fù),以及多路復(fù)用等功能,是最復(fù)雜的協(xié)議。
通信雙方協(xié)商協(xié)議類型的過程:
本地用戶進(jìn)程在與遠(yuǎn)程用戶進(jìn)程建立連接時必須獲取對方的tsap地址!
獲取遠(yuǎn)端tsap地址的方法有兩種:
(1).固定tasp法:一些公共服務(wù)或固定不變的服務(wù)連到一些固定的用戶周知的tsap上。
①遠(yuǎn)端某一公用進(jìn)程,將自己連到122號tsap,處于掛起狀態(tài)。
②源端機(jī)上的一個進(jìn)程需查詢時間時,發(fā)送連接請求原語t-connect.request,說明源地址為6號tasp,目標(biāo)地址是122號tasp。
③源端機(jī)的傳輸層收到請求后,在源主機(jī)和目的主機(jī)上選擇nsap,并建立一個網(wǎng)絡(luò)連接,通過網(wǎng)絡(luò)連接兩傳輸實體可以通話。
④源端機(jī)的傳輸實體用上述網(wǎng)絡(luò)連接服務(wù)傳輸服務(wù)質(zhì)量參數(shù)。
⑤目標(biāo)主機(jī)傳輸實體向時間服務(wù)進(jìn)程發(fā)出一個t-connect.indication原語。如果122號tasp上的報時服務(wù)進(jìn)程同意,就發(fā)出連接響應(yīng)原語,返回到源端主機(jī)后,就建成傳輸連接。
(2).初始連接法:與遠(yuǎn)端進(jìn)程通過遠(yuǎn)端的公用傳送地址tsap來建立連接。
注冊進(jìn)程:進(jìn)程連接服務(wù)程序,常駐內(nèi)存,并與固定tsap連接。
傳輸服務(wù)用戶在已知遠(yuǎn)端進(jìn)程的tsap地址后,如何知道該tsap處于哪臺機(jī)器上呢?
即如何知道用哪個nsap建立網(wǎng)絡(luò)連接呢?
可以由tsap地址決定nsap地址:
tsap地址 = <國家> <網(wǎng)絡(luò)> <主機(jī)> <端口>
nsap地址
傳輸實體得到一個tsap地址后,可用其中的nsap地址建立一個網(wǎng)絡(luò)連接。
傳輸連接是從tasp到tasp,網(wǎng)絡(luò)連接是從nsap到nasp,網(wǎng)絡(luò)連接是傳輸連接的一部分,并且是不可靠的!
三次握手法——解決網(wǎng)絡(luò)服務(wù)不可靠問題
不可靠因素:超時重傳的連接請求tpdu因在網(wǎng)絡(luò)內(nèi)部滯留時間過長,連接釋放后才到達(dá)目的端,使目的端誤認(rèn)為是新連接請求而發(fā)出確認(rèn)予以連接,導(dǎo)致下一次源端真正再發(fā)請求建立連接時,目的端認(rèn)為是重復(fù)請求而丟棄,連接不能實現(xiàn)。
解決辦法:三次握手,即源端對目的端的回答響應(yīng)還要用ak加以確認(rèn)。
2.數(shù)據(jù)傳輸
(1).多路復(fù)用和分流
多路復(fù)用:將多個信息流較少的傳輸連接復(fù)用到一個網(wǎng)絡(luò)連接上,以減少網(wǎng)絡(luò)連接數(shù)目,降低費(fèi)用。
分流:當(dāng)一個用戶進(jìn)程的信息量大于一個網(wǎng)絡(luò)連接(電路)所能傳輸?shù)男畔⒘繒r,該用戶傳輸連接可同時打開多個網(wǎng)絡(luò)連接(多條虛電路),實現(xiàn)對用戶進(jìn)程信息的分流傳輸,以保證傳輸信息的吞吐量的要求。
(2).流量控制和緩沖器管理
傳輸層流量控制的實現(xiàn)方法:采用可變窗口尺寸的動態(tài)緩沖器分配法。
3.釋放連接——采用三次握手方法釋放連接
由于通信子網(wǎng)不可靠,當(dāng)突然發(fā)出斷連請求時,有可能造成數(shù)據(jù)丟失!
解決方法:雙方只有在確知對方所發(fā)出的數(shù)據(jù)已妥收,且本方也不準(zhǔn)備再發(fā)數(shù)據(jù)時,才能發(fā)出斷連請求,通常采用三次握手方法釋放連接。