① 在OSI網路模型中,數據在哪層傳輸數據
數據鏈路層
數據鏈路層是建立在物理傳輸能力的基礎上,以幀為單位傳輸數據,它的主要任務就是進行數據封裝和數據鏈接的建立。
網路層
它解決的是網路與網路之間,即網際的通信問題,而不是同一網段內部的事。網路層的主要功能即是提供路由網路邊界中的路由器就工作在這個層次上,現在較高檔的交換機也可直接工作在這個層次上,因此它們也提供了路由功能,俗稱「第三層交換機」。
傳輸層
傳輸層的功能包括:映像傳輸地址到網路地址、多路復用與分割、傳輸連接的建立與釋放、分段與重新組裝、組塊與分塊。
會話層
會話層利用傳輸層來提供會話服務,會話可能是一個用戶通過網路登錄到一個主機,或一個正在建立的用於傳輸文件的會話。
應用層
這是OSI參考模型的最高層,它解決的也是最高層次,即程序應用過程中的問題,它直接面對用戶的具體應用。應用層包含用戶應用程序執行通信任務所需要的協議和功能,如電子郵件和文件傳輸等,在這一層中TCP/IP協議中的FTP、SMTP、POP等協議得到了充分應用。
物理層 為數據鏈路層提供物理連接,在其上串列傳送比特流,即所傳送數據的單位是比特。此外,該層中還具有確定連接設備的電氣特性和物理特性等功能。
數據鏈路層 負責在網路節點間的線路上通過檢測、流量控制和重發等手段,無差錯地傳送以幀為單位的數據。為做到這一點,在每一幀中必須同時帶有同步、地址、差錯控制及流量控制等控制信息。
網路層 為了將數據分組從源(源端系統)送到目的地(目標端系統),網路層的任務就是選擇合適的路由和交換節點,使源的傳輸層傳下來的分組信息能夠正確無誤地按照地址找到目的地,並交付給相應的傳輸層,即完成網路的定址功能。
傳輸層 傳輸層是高低層之間銜接的介面層。數據傳輸的單位是報文,當報文較長時將它分割成若干分組,然後交給網路層進行傳輸。傳輸層是計算機網路協議分層中的最關鍵一層,該層以上各層將不再管理信息傳輸問題。
會話層 該層對傳輸的報文提供同步管理服務。在兩個不同系統的互相通信的應用進程之間建立、組織和協調交互。例如,確定是雙工還是半雙工工作。
表示層 該層的主要任務是把所傳送的數據的抽象語法變換為傳送語法,即把不同計算機內部的不同表示形式轉換成網路通信中的標准表示形式。此外,對傳送的數據加密(或解密)、正文壓縮(或還原)也是表示層的任務。
應用層 該層直接面向用戶,是OSI中的最高層。它的主要任務是為用戶提供應用的介面,即提供不同計算機間的文件傳送、訪問與管理,電子郵件的內容處理,不同計算機通過網路交互訪問的虛擬終端功能等。
更詳細看這個網頁:
http://www.zahui.com/html/13/28342.htm
③ [計算機網路之六] 傳輸層
傳輸層向它上面的應用層提供通信服務,它屬於面向通信部分的最高層,同時也是用戶功能中的最底層。
從傳輸層的角度,通信的真正端點並不是主機而是主機中的進程。
傳輸層有 分用 和 復用 的功能。 「復用」 是指在發送方不同的應用進程都可以使用同一個運輸層協議傳送數據, 「分用」 是指接收方的運輸層在剝去報文的首部後能夠把這些數據正確交付目的應用進程。
網路層和運輸層有明顯的區別,網路層為主機之間提供邏輯通信,而運輸層為應用進程之間提供端到端的邏輯通信。
知名埠號 :0~1023
登記埠號 :1024~49151
客戶端短暫埠號 :49152~65535
① 無連接。 發送數據之前不需要建立連接,因此減少了開銷和發送數據之前的時延。
② 盡最大努力交付。 即不保證可靠交付,因此主機不需要維持復雜的連接狀態表。
③ 面向報文的。 對應用層交下來的報文,既不合並,也不拆分,而是保留這些報文的邊界,UDP 一次交付一個完整的報文。
用戶數據報 UDP 有兩個欄位:數據欄位和首部欄位。首部欄位很簡單,只有 8 個位元組,由四個欄位組成,每個欄位的長度都是兩個位元組。各欄位意義如下:
① 源埠 在需要對方回信時選用。不需要時可用全0。
② 目的埠 目的埠號。這在終點交付報文時必須使用。
③ 長度 用戶數據報的長度,最小值為 8 (僅有首部)。
④ 檢驗和 檢測用戶數據報在傳輸中是否有錯。有錯就丟棄。
用戶數據報首部檢驗和的計算和校驗都要計算出一個偽首部。
① 面向連接。
應用程序在使用 TCP 協議之前,必須先建立 TCP 連接;傳送數據完畢後,必須釋放已經建立的 TCP 連接。類似於打電話:通話前要先撥號建立連接,通話結束後要掛機釋放連接。
② 一對一。
TCP 連接只能是點對點的(一對一)。
③ 可靠交付。
通過 TCP 連接傳送的數據,無差錯、不丟失、不重復,並且按序到達。
④ 全雙工通信。
通信雙方的應用進程在任何時候都能發送和接收數據,TCP 連接的兩端都設有發送緩存和接收緩存,用來臨時存放雙向通信的數據。
⑤ 面向位元組流。
TCP 中的 「流」 指的是流入到進程或從進程流出的位元組序列。
「面向位元組流」 的含義:雖然應用程序和 TCP 的互動式一次一個數據塊(大小不等),但 TCP 把應用程序交下來的數據僅僅看成是一連串無結構的位元組流。TCP 並不知道所傳送的位元組流的含義。TCP 不保證接收方應用程序鎖收到的數據塊和發送方應用程序所發出的數據塊具有對應的大小關系。但接收方應用程序收到的位元組流必須和發送方應用程序發出的位元組流完全一樣,當然接收方的應用程序必須有能力識別收到的位元組流,把它還原成有意義的應用層數據。
TCP 連接是協議軟體提供的一種抽象,每一條 TCP 連接唯一地被通信兩端的兩個端點(即兩個套接字)所確定,即:
TCP 連接 ::= {socket1, socket2} = {(IP1: port1), (IP2: port2)}
IP1 和 IP2 分別是兩個端點主機的 IP 地址,port1 和 port2 分別是兩端端點主機中的埠號。
網路只能提供最大努力的服務,是不可靠的,因此 TCP 必須採用適當的措施才能使得兩個運輸層之間的通信變得可靠。當出現差錯時讓發送方重傳出現差錯的數據,同時在接收方來不及處理收到的數據時,及時告知發送方適當降低發送數據的速度,這樣就可以在不可靠的傳輸信道實現可靠傳輸。
ARQ(Auto Repeat-reQuest):自動重傳請求。
發送方每發送完一個分組就停止發送,等待接收方確認,在收到確認後再發送下一個分組。
A 是發送方,B 是接收方。
A 每發送一個分組後,等待 B 對該分組的確認後,再接著發送下一個分組。
【發送方】A 發送的分組在傳輸過程中出錯,可能是丟失了,也可能是分組受到干擾出錯了
【接收方】這時 B 直接丟棄分組,什麼也不做(也不通知 A 受到的分組有差錯)。
【解決方案】發送方在每發送完一個分組時設置一個 超時計數器 ,只要超過一段時間仍然沒有接收到確認,就認為剛才發送的分組丟失了,因而重傳前面發送過的分組,這叫 超時重傳 。反之在超時計時器到期之前收到了相應的確認,就撤銷該超時計時器。
第一,A 在發送完一個分組後, 必須暫時保留已發送的分組的副本 (在發生超時重傳時使用)。只有在收到相應的確認後才能清楚暫時保留的分組副本。
第二,分組和確認分組都必須進行 編號 。這樣才能明確是哪一個發送出去的分組受到了確認,而哪一個分組還沒有收到確認。
第三,超時計時器設置的 重傳時間應當比數據在分組傳輸的平均往返時間更長一些 。
【發送方】超時重傳時間內沒有收到確認報文,無法確認是發送出錯、丟失,還是接收方的確認丟失,超時計時器到期後就要重傳。
【接收方】丟棄收到的重復分組,不向上層交付;向發送方發送確認。
【發送方】收下遲到的確認,並且丟棄
發送方大部分時間都在等待確認,信道的利用率低
使用流水線的 ARQ 可以提高信道利用率
【發送方】維持一個發送窗口,位於發送窗口內的分組都可連續發送出去,而不需要等待對方的確認。
回退N幀協議 :如果發送方發送了多個分組,但中間的某個分組丟失了,這時接收方只能對丟失分組之前的分組發出確認,而發送方無法知道丟失分組及後面分組的接收情況,只好把丟失分組及後面的分組重傳一次,這叫 Go-back-N ,表示需要再退回來重傳已發送過的 N 個分組。
前面 20 個位元組固定,因此 TCP 首部最小長度是 20 位元組。
TCP 的滑動窗口以位元組為單位,窗口後沿的部分表示已發送且已收到通知,窗口裡的序號表示允許發送的序號,窗口前沿之前的數據暫時不允許發送,需要等待收到接收方的確認後前沿往前移才可發送。
描述一個發送窗口需要三個指針:P1、P2 和 P3,如圖所示:
小於 P1 的是已發送並已收到確認的部分,而大於 P3 的是不允許發送的部分。
P3 - P1 = A 的發送窗口
P2 - P1 = 已發送但尚未收到確認的位元組數
P3 - P2 = 允許發送但當前尚未發送的位元組數(又稱為 可用窗口 或 有效窗口 )
接收方 B 接收窗口大小為20,因為未收到 31 的數據,即使已收到後面的序號 32、33 的數據,返回的確認號仍然是 31。
現在接收方收到了 31、32、33,並返回確認號 33,接收窗口往前滑動 3 個序號,發送方接收到確認,發送窗口也向前滑動 3 個序號大小,現在 A 可以發送序號 51~53 的數據了。
當發送方將發送窗口內的數據都發送出去,但是接收方的確認可能由於網路擁塞滯留,這時發送方發送窗口已滿,可用窗口為 0,只能等待接收方的確認報文到達。
TCP 為了保證可靠傳輸,要求必須受到對已發送報文的確認,如果超過一定時間未受到確認報文,則重傳已發送的報文。這個時間就叫 超時重傳時間 ,很明顯超時重傳時間的大小設置應該更貼近網路的實際情況,如果網路狀況好,就設短一點,否則使網路的空閑時間增大,降低了傳輸效率;網路差就設長一點,否則會引起很多不必要的重傳,使網路負荷增大。
TCP 採用了一種自適應的演算法:
RTT(報文段的往返時間)、RTTs(加權平均往返時間),RTTs 的計算公式:
RTTd(RTT 的偏差的加權平均值)、RTO(RetransmissionTime-Out 超時重傳時間):
【場景】TCP 的接收方在接收對方發送過來的數據位元組流的序號不連續,形成一些不連續的位元組塊,如果簡單按照回退N幀協議處理,意味著要重傳第一個未收到的序號數據塊及之後的數據,如果能通知發送方已收到了哪些數據(選擇確認),就可以讓發送方只發送接收方未收到的數據。
流量控制就是讓發送方的發送速率不要太快,要讓接收方來得及接收。
當發送方收到接收方通知,將窗口縮小為 0 時,發送方將暫時不能發送數據了,必須等接收方通知更新接收窗口大小,但是這個通知又有可能丟失,導致發送方沒收到通知。
為了避免雙方互相等待死鎖,TCP 為每個鏈接設有一個 持續計時器 ,只要 TCP 連接的一方收到對方的零窗口通知,就啟動持續計時器。若持續計時器設置的時間到期,就發送一個零窗口 探測報文段 (僅攜帶 1 位元組的數據),而對方就在確認這個探測報文段時給出了現在的窗口值。如果窗口仍然是零,那麼受到這個報文段的一方就重新設置持續計時器;如果窗口不是零,那麼死鎖的僵局就可以打破了。
【優點】提高網路利用率
【缺點】可能會發生某種程度的延遲
【場景】接收數據的主機如果每次都立刻回復確認應答的話,可能會返回一個較小的窗口,因為接收方剛接收完數,緩沖區已滿。
【糊塗窗口綜合征問題】
TCP 接收方緩存已滿,而互動式的應用進程一次只從接收緩存中讀取 1 個位元組(這樣就使接收緩存空間僅騰出 1 個位元組),然後向發送方發送確認,並把窗口設置為 1 個位元組(但發送的數據報是 40 位元組長,TCP 首部 + IP 數據報首部)。接著,發送方又發來 1 個位元組的數據(注意發送方發送的 IP 數據報是 41 位元組長)。接收方發回確認,仍然將窗口設置為 1 個位元組。這樣進行下去,使網路的效率很低。
TCP 文件傳輸中,就採用了兩個數據段返回一次確認應答,並且等待一定時間後沒有其他數據包到達時也依然發送確認應答。
當對網路中某一資源的需求超過了該資源所能提供的可用部分,網路的性能就要變壞,這種情況就叫做 擁塞 。
慢開始(slow-start)、擁塞避免(congestion avoidance)、快重傳(fast retransmit)和快恢復(fast recovery)。
【演算法思路】
當主機開始發送數據時,由於並不清楚網路的負荷情況,所以如果立即把大量數據位元組注入網路,那麼就有可能引起網路發生擁塞。較好的方法是先探測一下,即 由小到大逐漸增大發送窗口 ,也就是說, 由小到大逐漸增大擁塞窗口數值 。
【處理過程】
慢開始門限值 ssthresh 決定了擁塞窗口達到多大時要執行什麼演算法。
① 當 cwnd < ssthresh 時,使用慢開始演算法;
② 當 cwnd > ssthresh 時,停止使用慢開始演算法而改用擁塞避免演算法;
③ 當 cwnd = ssthresh 時,既可使用慢開始演算法,也可使用擁塞避免演算法。
在擁塞窗口 cwnd 達到門限值之前,發送方每一輪次收到確認應答後,cwnd 就增大為原來的兩倍;達到門限值後,執行擁塞避免演算法。
PS. 慢開始只是表示初始發送數據少,不代表發送速率增長速度慢,實際上是指數級增長非常快。
【演算法思路】
讓擁塞窗口 cwnd 緩慢地增大,即每經過一個往返時間 RTT 就把發送方的擁塞窗口 cwnd 加 1,而不是像慢開始階段那樣加倍增長。擁塞避免階段有 「加法增大」 的特點,按線性規律緩慢增長,使網路比較不容易出現擁塞 。
【處理過程】
在執行擁塞避免演算法階段,當網路出現超時時,發送方判斷為網路擁塞,調整門限值為當前擁塞窗口的一半,即 ssthresh = cwnd / 2,同時擁塞窗口重置為 1,即 cwnd = 1,進入慢開始階段。
【演算法原理】
① 快重傳
【場景】有時,個別報文段會在網路中丟失,但實際上網路並未發生擁塞。如果發送方遲遲收不到確認,就會產生超時,就會誤認為網路發生了擁塞,導致發送方錯誤地啟動慢開始,把擁塞窗口 cwnd 又設置為 1,因而降低了傳輸效率。
【方案】接收方不要等待自己發送數據時才進行捎帶確認,而是要立即發送確認,即使收到了失序的報文段也要立即發出對已收到的報文段的重復確認,當發送方 一連收到 3 個重復確認 ,就知道接收方確實沒有收到某個報文段,因而應當 立即進行重傳 。
② 快恢復:
發送方知道只是丟失了個別的報文段,於是不啟動慢開始,而是執行快恢復演算法,調整發送方門限值 ssthresh = cwnd / 2,同時設置擁塞窗口 cwnd = ssthresh = 8,並開始執行擁塞避免演算法。
擁塞控制的流程如下:
擁塞窗口 cwnd,接收方窗口 rwnd, 發送方發送窗口的上限值 = Min[rwnd, cwnd] 。
① 當 rwnd < cwnd,接收方的接收能力限制發送方窗口大小;
② 當 cwnd < rwnd,網路的擁塞程度限制發送方窗口大小。
【問題背景】
路由器採取分組丟棄策略,即按照 先進先出(FIFO) 規則處理分組,當隊列已滿時,則丟棄後面到達的分組,這叫 尾部丟棄策略 。
丟失的分組會導致發送方出現超時重傳,發送方轉而執行慢開始演算法,不同分組屬於不同 TCP 連接,導致很多 TCP 同時進入慢開始狀態,這種現象稱為 全局同步 。
【解決方案】
主動隊列管理 AQM:不等到路由器的隊列長度已經達到最大值時才不得不丟棄後面到達的分組,而是在隊列長度達到某個警惕值時就主動丟棄到達的分組,這樣就提醒了發送方放慢發送的速率,因而有可能使網路擁塞的程度減輕,甚至不出現網路擁塞。
TCP 是面向連接的協議,運輸連接有三個階段: 連接建立、數據傳送、連接釋放 。
TCP 連接建立過程要解決的幾個問題:
① 使每一方能夠確知對方的存在;
② 允許雙方協商一些參數(如最大窗口值、是否使用窗口擴大選項和時間戳選項以及服務質量等);
③ 能夠對運輸實體資源(如緩存大小、連接表中的項目等)進行分配。
TCP 建立連接的過程叫做握手,握手需要在客戶和伺服器之間交換三個 TCP 報文段,即 三次握手 。
最初客戶端和服務端都處於 CLOSED(關閉) 狀態,A(Client)主動打開連接,B(Server)被動打開連接。
一開始,B 的 TCP 伺服器進程先創建 傳輸控制塊 TCB ,准備接受客戶進程的連接請求。然後伺服器進程就處於 LISTEN(收聽)狀態,等待客戶端的連接請求。如有,即作出響應。
第一次握手 :A 的 TCP 客戶進程也是首先創建傳輸控制塊 TCB,准備接受客戶進程的連接請求。然後在打算建立 TCP 連接時,向 B 發出連接請求報文段,這時首部中的同步位 SYN = 1,同時選擇一個初始序號 seq = x。TCP 規定,SYN 報文段(即 SYN = 1 的報文段)不能攜帶數據,但要 消耗掉一個序號 。這時,TCP 客戶進程進入 SYN-SENT(同步已發送) 狀態。
第二次握手 :B 收到連接請求報文段後,如同意建立連接,則向 A 發送確認。在確認報文段中應把 SYN 位和 ACK 位都置 1,確認號是 ack = x + 1,同時也為自己選擇一個初始序號 seq = y。請注意,這個報文段也不能攜帶數據,但同樣 要消耗掉一個序號 。這時 TCP 伺服器進程進入 SYN-RCVD(同步收到) 狀態。
第三次握手 :TCP 客戶進程收到 B 的確認後,還要向 B 給出確認。確認報文段的 ACK 置 1,確認號 ack = y + 1,而自己的序號 seq = x + 1。TCP 的標准規定,ACK 報文段可以攜帶數據。但 如果不攜帶數據則不消耗序號 ,在這種情況下,下一個數據報文段的序號仍是 seq = x + 1。這時,TCP 連接已經建立,A 進入 ESTABLISHED(已建立連接) 狀態。當 B 收到 A 的確認後,也進入 ESTABLISHED(已建立連接)狀態。
數據傳輸結束後,通信的方法都可釋放連接。現在 A 和 B 都處於 ESTABLISHED 狀態。
第一次揮手 :A 的應用進程先向其 TCP 發出連接釋放報文段,並停止再發送數據,主動關閉 TCP 連接。A 把連接釋放報文段首部的終止控制位 FIN 置 1,其序號 seq = u,它等於前面已傳送過的數據的最後一個位元組的序號加 1。這時 A 進入 FIN-WAIT-1(終止等待 1)狀態,等待 B 的確認。請注意,TCP 規定,FIN 報文段即使不攜帶數據,它也消耗掉一個序號。
第二次揮手 :B 收到連接釋放報文後即發出確認,確認號是 ack = u + 1,而這個報文段自己的序號是 v,等於 B 前面已傳送過的最後一個位元組的序號加 1。然後 B 就進入 CLOSE-WAIT(關閉等待)狀態。TCP 伺服器進程這時應通知高層應用程序,因而從 A 到 B 這個方向的連接就釋放了,這時的 TCP 連接處於半關閉(half-close)狀態,即 A 已經沒有數據要發送了,但 B 若發送數,A 仍要接收。也就是說,從 B 到 A 這個方向的連接並未關閉,這個狀態可能會持續一段時間。A 收到來自 B 的確認後,就進入 FIN-WAIT-2(終止等待 2)狀態,等待 B 發出的連接釋放報文段。
第三次揮手 :若 B 已經沒有要向 A 發送的數據,其應用進程就通知 TCP 釋放連接。這時 B 發出的連接釋放報文段必須使 FIN = 1。現假定 B 的序號為 w(在半關閉狀態 B 可能又發送了一些數據)。B 還必須重復上次已發送過的確認號 ack = u + 1。這時 B 就進入 LAST-ACK(最後確認)狀態,等待 A 的確認。
第四次揮手 :A 在收到 B 的連接釋放報文段後,必須對此發出確認。在確認報文段中把 ACK 置 1,確認號 ack = w + 1,而自己的序號是 seq = u + 1(根據 TCP 標准,前面發送過的 FIN 報文段要消耗一個序號)。然後進入 TIME-WAIT(時間等待)狀態。請注意,現在 TCP 連接還沒有釋放掉。必須經過時間等待計時器(TIME-WAIT timer)設置的時間 2MSL 後,A 才進入到 CLOSED 狀態,然後撤銷傳輸控制塊,結束這次 TCP 連接。當然如果 B 一收到 A 的確認就進入 CLOSED 狀態,然後撤銷傳輸控制塊。所以在釋放連接時,B 結束 TCP 連接的時間要早於 A。
④ OSI/RM共分為哪幾層簡要說明各層的功能。 請您詳細解答。謝謝!
OSI/RM共分為物理層、數據鏈路層、網路層、傳輸層、會話層、表示層和應用層7層。
第1層:物理層,在物理信道上傳輸原始的數據比特(bit)流,提供為建立、維護和拆除物理鏈路連接所需的各種傳輸介質、通信介面特性等。
第2層:數據鏈路層,在物理層提供比特流服務的基礎上,建立相鄰節點之間的數據鏈路,通過差錯控制提供數據幀在信道上無差錯地傳輸,並進行數據流量控制。
第3層:網路層,為傳輸層的數據傳輸提供建立、維護和終止網路連接的手段,把上層來的數據組織成數據包(Packet)在節點之間進行交換傳送,並且負責路由控制和擁塞控制。
第4層:傳輸層,為上層提供端到端(最終用戶到最終用戶)的透明的、可靠的數據傳輸服務。所謂透明的傳輸是指在通信過程中傳輸層對上層屏蔽了通信傳輸系統的具體細節。
第5層:會話層,為表示層提供建立、維護和結束會話連接的功能,並提供會話管理服務。
第6層:表示層,為應用層提供信息表示方式的服務,如數據格式的變換、文本壓縮和加密技術等。
第7層:應用層,為網路用戶或應用程序提供各種服務,如文件傳輸、電子郵件(E-mail)、分布式資料庫以及網路管理等。
(4)網路傳輸層一般在哪裡擴展閱讀:
OSI參考模型的特性:
是一種異構系統互連的分層結構;提供了控制互連系統交互規則的標准骨架;定義一種抽象結構,而並非具體實現的描述;
不同系統中相同層的實體為同等層實體;同等層實體之間通信由該層的協議管理;相信層間的介面定義了原語操作和低層向上層提供的服務;
所提供的公共服務是面向連接的或無連接的數據服務;直接的數據傳送僅在最低層實現;每層完成所定義的功能,修改本層的功能並不影響其他層。
⑤ tcp和udp分別在osi七層模型的哪一層還有七層模型里哪些層主要是做什麼工作,請自己回答。謝謝
TCP和UDP協議都是傳輸層的協議。
OSI參考模型從底至頂分別為: 物理層、數據鏈路層、網路層、運輸層、會話層、表示層、應用層。
物理層功能:
①提供物理鏈路所需的機械(設備)、電氣(信號)、功能和規程(單工、半雙工、全雙工)
②為數據鏈路層提供服務,從數據鏈路層接收數據,並按規定形式的信號和格式將數據發送。
③向數據鏈路層提供數據(把比特流還原為數據鏈路層可以理解的格式)和電路標識、故障狀態及服務質量參數等等
2 數據鏈路層
為網路層提供服務,從源開放系統的網路層向目的開放系統的網路層傳輸數據,屏蔽了物理層的特徵。
3 網路層
處理與定址和傳輸有關的管理問題(這里所說的傳輸有關問題是指提供傳輸基礎、准備工作)同一LAN內可以省略該層
4 傳輸層
數據核對和初步整理。
5 會話層
數據傳輸的「中間商」角色,負責數據傳輸的「售後服務」
6 表示層
隱藏不同硬體間的差異,使不同計算機互聯數據的最終處理,供用戶使用
7 應用層
提供OSI用戶服務,如事務處理、文件傳輸、數據檢索、網路管理、加密
⑥ 計算機網路中五層協議它們分別的主要功能是什麼它們具體分別是在哪裡(從硬體層面上談)實現的
1,物理層;其主要功能是:主要負責在物理線路上傳輸原始的二進制數據。
2、數據鏈路層;其主要功能是:主要負責在通信的實體間建立數據鏈路連接。
3、網路層;其主要功能是:要負責創建邏輯鏈路,以及實現數據包的分片和重組,實現擁塞控制、網路互連等功能。
4、傳輸層;其主要功能是:負責向用戶提供端到端的通信服務,實現流量控制以及差錯控制。
5、應用層;其主要功能是:為應用程序提供了網路服務。
物理層和數據鏈路層是由計算機硬體(如網卡)實現的,網路層和傳輸層由操作系統軟體實現,而應用層由應用程序或用戶創建實現。
(6)網路傳輸層一般在哪裡擴展閱讀:
應用層是體系結構中的最高層。應用層確定進程之間通信的性質以滿足用戶的需要。這里的進程就是指正在運行的程序。
應用層不僅要提供應用進程所需要的信息交換
和遠地操作,而且還要作為互相作用的應用進程的用戶代理,來完成一些為進行語義上有意義的信息交換所必須的功能。應用層直接為用戶的應用進程提供服務。
傳輸層的任務就是負責主機中兩個進程之間的通信。網際網路的傳輸層可使用兩種不同協議:即面向連接的傳輸控制協議TCP,和無連接的用戶數據報協議UDP。
面向連接的服務能夠提供可靠的交付,但無連接服務則不保證提供可靠的交付,它只是「盡最大努力交付」。這兩種服務方式都很有用,備有其優缺點。在分組交換網內的各個交換結點機都沒有傳輸層。
網路層負責為分組交換網上的不同主機提供通信。在發送數據時,網路層將運輸層產生的報文段或用戶數據報封裝成分組或包進行傳送。
在TCP/IP體系中,分組也叫作IP數據報,或簡稱為數據報。網路層的另一個任務就是要選擇合適的路由,使源主
機運輸層所傳下來的分組能夠交付到目的主機。
⑦ 網線等傳輸介質實現數據傳輸主要工作在網路七層交換的哪一層
OSI七層網路模型由下至上為1至7層,分別為物理層(Physical layer),數據鏈路層(Data link layer),網路層(Network layer),傳輸層(Transport layer),會話層(Session layer),表示層(Presentation layer),應用層(Application layer)。
應用層,很簡單,就是應用程序。這一層負責確定通信對象,並確保由足夠的資源用於通信,這些當然都是想要通信的應用程序乾的事情。
表示層,負責數據的編碼、轉化,確保應用層的正常工作。這一層,是將我們看到的界面與二進制間互相轉化的地方,就是我們的語言與機器語言間的轉化。數據的壓縮、解壓,加密、解密都發生在這一層。這一層根據不同的應用目的將數據處理為不同的格式,表現出來就是我們看到的各種各樣的文件擴展名。
會話層,負責建立、維護、控制會話,區分不同的會話,以及提供單工(Simplex)、半雙工(Half plex)、全雙工(Full plex)三種通信模式的服務。我們平時所知的NFS,RPC,X Windows等都工作在這一層。
傳輸層,負責分割、組合數據,實現端到端的邏輯連接。數據在上三層是整體的,到了這一層開始被分割,這一層分割後的數據被稱為段(Segment)。三次握手(Three-way handshake),面向連接(Connection-Oriented)或非面向連接(Connectionless-Oriented)的服務,流控(Flow control)等都發生在這一層。
網路層,負責管理網路地址,定位設備,決定路由。我們所熟知的IP地址和路由器就是工作在這一層。上層的數據段在這一層被分割,封裝後叫做包(Packet),包有兩種,一種叫做用戶數據包(Data packets),是上層傳下來的用戶數據;另一種叫路由更新包(Route update packets),是直接由路由器發出來的,用來和其他路由器進行路由信息的交換。
數據鏈路層,負責准備物理傳輸,CRC校驗,錯誤通知,網路拓撲,流控等。我們所熟知的MAC地址和交換機都工作在這一層。上層傳下來的包在這一層被分割封裝後叫做幀(Frame)。
物理層,就是實實在在的物理鏈路,負責將數據以比特流的方式發送、接收,就不多說了。
具體說:
網線,集線器----物理層
網卡,網橋----數據鏈路
路由器-----網路層
交換機就是用來進行報文交換的機器.它和HUB最重要的區別就HUB是物理層設備,採用廣播的形式來傳輸信息,交換機多為鏈路層設備(二層交換機),能夠進行地址學習,採用存儲轉發的形式來交換報文.它和路由器的區別在於路由器由DDN,ADSL等介面,交換機只有乙太網介面.
⑧ OSI七層結構以及集線器、交換機、路由器各工作在哪一層
集線器工作在物理層,交換機工作在數據鏈路層,路由器工作在網路層。
OSI七層結構分別是:物理層、數據鏈路層、網路層、傳輸層、會話層、表示層、應用層。
OSI模型的設計目的是成為一個所有銷售商都能實現的開放網路模型,來克服使用眾多私有網路模型所帶來的困難和低效性。這個模型把網路通信的工作分為7層,分別是物理層、數據鏈路層、網路層、傳輸層、會話層、表示層和應用層。
OSI模型的設計目的是成為一個所有銷售商都能實現的開放網路模型,來克服使用眾多私有網路模型所帶來的困難和低效性。OSI是在一個備受尊敬的國際標准團體的參與下完成的,這個組織就是ISO(國際標准化組織)。
⑨ TCP屬於OSI哪一層IP屬於哪層
運輸層。
在OSI模型中ARP協議屬於鏈路層;而在TCP/IP模型中,ARP協議屬於網路層,ARP分層的位置是TCP/IP的網路層。實際上對網路介面層的乙太網幀來講,同樣是幀的上層協議,當收到以太幀時,根據幀的協議欄位判斷是送到ARP還是IP。
(9)網路傳輸層一般在哪裡擴展閱讀:
注意事項:
tcp伺服器一般情況下都需要綁定,否則客戶端找不到這個伺服器,更無法連接到伺服器
tcp伺服器一般情況下都需要綁定,否則客戶端找不到這個伺服器,更無法連接到伺服器。
tcp伺服器中通過listen可以將socket創建出來的主動套接字變為被動的,這是做tcp伺服器時必須要做的。
當客戶端需要鏈接伺服器時,就需要使用connect進行鏈接,udp是不需要鏈接的而是直接發送,但是tcp必須先鏈接,只有鏈接成功才能通信。
⑩ 網路分為幾個層
分七層:
1、物 理 層(Physical Layer)
要傳遞信息要利用些物理媒體雙紐線、同軸電纜等具體物理媒體並OSI7層之內有人把物理媒體當作第0層物理層任務上層提供物理連接及們機械、電氣、功能和過程特性 規定使用電纜和接頭 類型傳送信號電壓等層數據還沒有被組織僅作原始位流或電氣電壓處理單位比特。
2、 數 據 鏈 路 層(Data Link Layer)
數據鏈路層負責兩相鄰結點間線路上無差錯傳送幀單位數據每幀包括定數量數據和些必要控制信息和物理層相似數據鏈路層要負責建立、維持和釋放數據鏈路連接傳送數據時接收點檢測所傳數據有差錯要通知發方重發幀 。
3、 網 絡 層(Network Layer)
計算機網路進行通信兩計算機之間能會經過多數據鏈路也能還要經過多通信子網網路層任務選擇合適網間路由和交換結點 確保數據及時傳送網路層數據鏈路層提供幀組成數據包包封裝有網路層包頭其含有邏輯地址信息-,源站點和目站點地址網路地址 。
4、 傳 輸 層(Transport Layer)
該層任務時根據通信子網特性佳利用網路資源並靠和經濟方式兩端系統(也源站和目站)會層之間提供建立、維護和取消傳輸連接功能負責靠地傳輸數據層信息傳送單位報文 。
5、 會 層(Session Layer)
層也稱會晤層或對層會層及上高層次數據傳送單位,再另外命名統稱報文會層,參與具體傳輸提供,包括訪問驗證和會管理內建立和維護應用之間通信機制伺服器,驗證用戶登錄便由會層完成 。
6、 表 示 層(Presentation Layer)
層主要解決擁護信息語法表示問題欲交換數據,從適合於某用戶抽象語法轉換適合於OSI系統內部使用傳送語法,即提供格式化表示和轉換數據服務數據壓縮和解壓縮,加密和解密等工作都由表示層負責 。
7、 應 用 層(Application Layer)
應用層確定進程之間通信性質滿足用戶需要及提供網路與用戶應用軟體之間介面服務。