網(wǎng)絡中的網(wǎng)絡模型拆分詳解,困擾已久終于明白了,一分鐘看下
七層模型分解
從應用層上層往下進行了解:
1. Application layer【應用層】
Application layer 作為實際應用程序和presentation layer 的接口通過某種方式把應用程序的有關信息送達到協(xié)議棧的下面各層,它只是應用程序的一個接口,需要處理遠程資源時才會起作用,應用層還負責識別并建立想要通信的計算機一方的可用性。
2. Presentation layer【表示層】
表示層因為它的用途而得名,它為應用層提供數(shù)據(jù),并負責數(shù)據(jù)轉換和代碼的格式化。主要提供數(shù)據(jù)壓縮加密轉換服務,例如tiff jpeg midi rtf 等…
3. Session layer【會話層】
負責建立,管理和終止表示層實體之間的session 連接,他在系統(tǒng)之間協(xié)調通信過程,并提供3 種不同的方式來組織他們之間的通信 全雙工,半雙工,單工(full duplex ,half duplex simplex)通信,總之,會話層基本上用來使不同應用程序的數(shù)據(jù)與其它應用程序的數(shù)據(jù)保持隔離.
一些Session layer 協(xié)議和接口的例子:
- Network File System(NFS)
- Structured Query Language(SQL)
- Remote Procedure Call(RPC)
- X Window
- AppleTalk Session Protocol
- Digital Network Architecture Session Control Protocol(DNA SCP)
4. Transport layer【傳輸層】
將數(shù)據(jù)分段并重組為數(shù)據(jù)流(data stream)。TCP UDP 都工作在傳輸層,當采用TCP/IP 協(xié)議時,程序開發(fā)者可以在這2 者之間做出選擇。傳輸層負責為實現(xiàn)上層應用程序的多路復用,建立會話連接和斷開虛電路提供機制.通過提供透明的數(shù)據(jù)傳輸,他也對高層隱藏了任何與網(wǎng)絡有關的細節(jié)信息。
(1) 流量控制:(flow control)
在傳輸層通過進行流量控制,以及通過在系統(tǒng)之間允許用戶請求可靠的數(shù)據(jù)傳輸, 就可以保證數(shù)據(jù)的完整性。流量控制可以防止在連接的一側的發(fā)送主機使接受主機的緩沖區(qū)產(chǎn)生溢出。緩沖區(qū)溢出將導致數(shù)據(jù)的不完整.如果數(shù)據(jù)發(fā)送方傳輸數(shù)據(jù)過快,接受方將數(shù)據(jù)報(datagrams)暫時存儲在緩沖區(qū)(buffer)可靠的數(shù)據(jù)傳輸采用了面向連接
(connection-oriented)通信方式,保證:
- 接受方接受到被傳輸?shù)亩?segment)以后將發(fā)回確認(acknowledge)給發(fā)送方
- 任何沒有經(jīng)過確認的段將被重新傳輸
- 段在達到接受方之前應按照適當?shù)捻樞?/li>
- 可以進行管理的流控制技術用于避免擁塞,超載(overloading)和數(shù)據(jù)的丟失
面向連接的通信:( connection-oriented communication)
在可靠的傳輸層操作中,一個想要傳送的設備同過創(chuàng)建會話與遠程設備建立連接,通常稱為3 次握手協(xié)議。
(2) 握手協(xié)議:(three-way handshake);
- 第一個”同意連接”數(shù)據(jù)段用來請求同步,
- 第二個,第三個數(shù)據(jù)段用來確認請求,并在主機之間建立連接參數(shù)。 這里,接受方的排序也要求進行同步,以便建立雙向連接.
- 最后一個數(shù)據(jù)段也用來確認。她通知目的主機已同意建立連接,并且已經(jīng)建立了實際的連接??梢蚤_始
數(shù)據(jù)傳輸了.傳輸數(shù)據(jù)量過大時,會出現(xiàn)一些問題,某一臺機器收到大量的數(shù)據(jù)包,數(shù)度太快,造成緩沖區(qū)溢出,最后不得不丟棄.隨后到來的所有數(shù)據(jù)包。但不用擔心,網(wǎng)絡中有流量控制系統(tǒng),出現(xiàn)這種情況,接收方會發(fā)出一個not ready 的信號, 待處理完畢后,又發(fā)出 ready,go on 的信號,繼續(xù)傳輸。 流量控制類型: 窗口機制, 緩沖和擁塞避免。
a. 窗口機制( windowing)
發(fā)送方在沒有收到確認是,別允許發(fā)送的數(shù)據(jù)段的數(shù)量,稱為窗口。
窗口的尺寸大小控制了有多少信息從一端傳向另一端,雖然有些協(xié)議以數(shù)據(jù)包的數(shù)量來量化信息,但tcp/ip通過計算字節(jié)數(shù)來量化信息。
b. 確認
為了保證數(shù)據(jù)傳送的不重復性和不被丟失,可以同過“帶重傳的肯定確認”來實現(xiàn),方法是要求接收方在收到數(shù)據(jù)是,發(fā)給發(fā)送方一個確認信息,來與發(fā)送方機器保持通信。 當發(fā)送一個數(shù)據(jù)包時,發(fā)送方及其啟動一個計時器,在規(guī)定時間內,未收到對方確認是, 顯示request time out, 重新發(fā)送一次。
5. Network layer【網(wǎng)絡層】
負責設備的尋址,跟蹤網(wǎng)絡中設備的位置,并決定傳送數(shù)據(jù)的最佳路徑。 路由器和3 層交換機工作在這個層上。
路由工作原理:
首先,接受到一個包,然后檢查其目的ip,查詢路由表,選擇最佳路徑,選擇一個interface,包就被送到那個端口,并被封裝成幀,送出本地網(wǎng)絡,如果在路由表里找不到相應的目的網(wǎng)絡的表項,則自動丟棄該包。網(wǎng)絡層有2 種類型的包(packets):數(shù)據(jù)包(data)和路由更新(router update)包,前者,很顯然,用來傳送用戶數(shù)據(jù)。后者,用來向相鄰路由器通知連接到網(wǎng)絡的所有路由器的更新信息。這種協(xié)議為主動路由協(xié)議,如RIP EiGRPOSPF.
路由表:
- CCIE Routing and Switching note by Ka\(^oo^)/Ka
- Part 1. - 4 -
包含如下信息:
- Network Address:他們與特定的協(xié)議有關的網(wǎng)絡地址。
- Interface : 當數(shù)據(jù)包被發(fā)送到特定的網(wǎng)絡時,數(shù)據(jù)包將選擇一個外出接口
- Metric : 指到遠程網(wǎng)絡的距離。不同的協(xié)議度量方式不同。
路由器特點:
- 屏蔽廣播包和組播包(multicast)
- 使用logic address, 它存在于網(wǎng)絡層的報頭中,用來決定下一跳(hop)的路由地址
- 可管理,創(chuàng)建訪問列表
- 可提供第2 層的橋接功能,并通過同一個接口傳送。
- 可提供vlan 間的連接
- 提供quality of service(Qos)
6. Data link layer【數(shù)據(jù)鏈路層】
the Data Link layer 負責數(shù)據(jù)的物理傳輸,錯誤檢測,網(wǎng)絡拓撲和流控制.這個意味著在數(shù)據(jù)LAN 上將根據(jù)硬件地址來進行投遞,還要把Network layer 的包翻譯成比特用于在Physicallayer 上傳輸。
IEEE 以太網(wǎng)(Ehernet)的Data Link layer 有2 個子層:
- Media Access Control(MAC)802.3:這層定義了物理地址和拓撲結構,錯誤檢測,流控制等.共享帶寬,先到先服務原則(first come/first served)
- Logical Link Control(LLC)802.2:負責識別Network layer 協(xié)議然后封裝(encapsulate)數(shù)據(jù).LLC 頭部信息告訴Data Link layer 如何處理接收到的幀,LLC 也提供流控制和控制比特的編號
- Switches and Bridges at the Data Link Layer
第二層的設備switches 被認為是基于硬件的bridges, 因為采用的是1 種叫做application-specific integrated circuit(ASIC)的特殊硬件.ASICs 可以在很低的延時(latency)里達到gigabit 的速度;而bridges 是基于軟件性質的。
延時:1 個幀從進去的端口到達出去的端口所耗費的時間
透明橋接(transparent bridging):如果目標設備和幀是在同1個網(wǎng)段,那么2層 設備將堵塞端口防止該幀被傳送到其他網(wǎng)段;如果是和目標設備處于不同網(wǎng)段,則該幀將只會被傳送到那個目標設備所在的網(wǎng)段每個和switches 相連的網(wǎng)段必須是相同類型的設備,比如你不能把令牌環(huán)(Token Ring)上的主機和以太網(wǎng)上的主機用switches 混合相連,這種方式叫做media translation,不過你可以用routers 來連接這樣不同類型的網(wǎng)絡.在LAN 內使用switches 比使用hubs 的好處:
- 插入switches 的設備可以同時傳輸數(shù)據(jù),而hubs 不可以
- 在switches 中,每個端口處于1 個單獨的沖突域里,而hubs 的所有端口處于1 個大的沖突域里,可想而知,前者在LAN 內可以有效的增加帶寬.但是這2 種設備的所有端口仍然處于1 個大的廣播域里
7. Physical layer【物理層】
the Physical layer 負責發(fā)送和接受比特,比特由1 或者0 組成.這層也用于識別數(shù)據(jù)終端裝備(data terminal equipment,DTE)和數(shù)據(jù)通信裝備(data communication equipment,DCE)的接口,DCE 一般位于服務商(sevice provider)而DTE 一般是附屬設備.可用的DTE 服務通常是經(jīng)由modem 或者channel service unit/data sevice unit(CSU/DSU)來訪問hubs:其實是多端口的repeaters,重新放大信號用,解決線路過長,信號衰減等問題。
1 個物理星形(star)拓撲結構,實際在邏輯上是邏輯總線(bus)拓撲結構: