IPv4如何向IPv6过渡?—Vecloud微云
網絡分層的設計,將各個功能分開,交付給不同的層,這樣的好處是便于更新和維護,也便于我們的學習和理解。
下面為各版本的網絡體系的結構圖:
以五層網絡體系為例,我們來了解下各層的工作職責都有哪些:
應用層,該層協議主要負責各個應用程序之間交互的規則。如HTTP、DN、其交互的數據單元可以稱為”報文”;
運輸層,為應用層提供通用的數據傳輸服務。為上層跑腿的,TCP、UDP均是運輸層協議;
網絡層,為網絡中不同的主機提供通信服務。IP協議工作在該層;
數據鏈路層,負責相鄰兩點的數據傳送;
物理層,傳輸比特流,0或1,每一層將數據封裝成自己能理解的數據格式交付給下一層,下一層將收到的作為自己的數據再次添加本層的必要數據向下交付,直到鏈路層,傳遞到目的地后,每層再將該層的必要數據去掉,交付給上層。
如下圖:
在理解了網絡模型和各層工作職責后,下面了解下IP協議的功能作用:為網絡中的主機(PC或路由或網關)提供身份證;
定義了網絡主機的基本交流方式,從IP數據報的格式可以看出;
為路由尋址提供方便,從路由表結構可以看出。
任何一個協議都可以由語法、語義和同步三部分組成。
語法,交換信息的格式,對于IP協議,就是IP報文的格式;
語義,即需要發出何種控制信息,以及接收到信息后如何響應;
同步,對事件順序的詳細說明。
也就是定義了使用IP協議進行交流的法則。
IPv4中IP地址的含義
網絡上的主機都需要一個IP地址,這樣才能知道彼此的位置。IPv4地址由32bit構成,常使用點分十進制表示(192.168.1.1)。
IP地址的分類
IP地址的分類就是把所有IP劃分為若干類別,每一類都由固定長度的字段組成。分別為網絡號和主機號。下面是各類地址組成示意圖:
A類地址,8位網絡號,第一位固定為0。可用的網絡號只有126個(27-2),網絡號從0到127。減去2是因為IP地址全為0表示”本網絡”保留;網絡號為127作為軟件回環測試使用,若主機發出目的地為127.0.0.1的數據時,該數據不會向任何網絡上的主機發送。也就是說127開頭的地址不能使用。對于A類地址中的每一個網絡號,對應的主機號有(224-2)個,主機號全0表示,其網絡號對應的網絡地址,全1表示所有主機的意思。
B類地址網絡號為16位,但前面2位以固定為1
0。無論怎么取值,無法出現全0或全1的情況。128.0.0.0的網絡是不使用的,實際使用的最小B類網絡地址為128.1.0.0.所以B類的網絡地址有(2^14-1)個。
C類的地址有24位的網絡號,最前面的3位固定為1 1 0.192.0.0.0的網絡地址也是不使用的,最小的C類地址為192.0.1.0 。
IP地址分類的好處
方便管理,IP地址管理機構只需管理網絡號,剩下的可以由下級管理;
路由尋址時根據網絡地址轉發分組,減小路由表。
IPv4數據報的基本格式
下圖可以看到IP數據報包含了首部和數據部分。其中首部包含固定的20字節和可變的部分。
以下為各個部分的解釋
版本,占4位,IP協議的版本號,通信雙方需要相同;
首部長度,占4位,單位4字節。最大能表示(2^4-1) * 4 = 60字節。當IP分組的首部長度不是4的整數倍時,需要使用填充字段填充;
區分服務,占8位,表示服務類型未使用;
總長度,占16位,表示首部和數據部分的總長度(單位字節)。因此數據報的最大總長度為(2^16-1 = 65535)字節;
標識(identification),占16位,當數據報長度超過下層的MTU時,需要分片, 被分片的數據報的標識一樣,這樣可以進行重組;
標志(Flag), 占3位,目前只有2位有意義;
最低位,MF(More Fragment) = 1 表示后面還有分片。MF = 0 表示分片中的最后一個;
中間一位,DF(Don’t Fragment),不要分片,只有當DF=0才允許分片;
片偏移, 占13位,較長的分組在分片后,某片在原分組的相對位置必須是8字節的整數倍;
生存時間,占8位,Time To
Live(TTL),開始指生存的秒數,后來變為經過路由的跳數,每經過一個路由TTL減小1,當為0時丟棄該數據。顯然最大跳數為255,為1時就只能在局域網中傳播了;
協議, 占8位,支出該數據報的數據是使用何種協議, 以便目的主機IP層知道將數據交付給哪個協議處理。
常用的協議及對應數值
首部校驗和, 占16位,數據報的首部校驗和,不包括數據部分;
源地址, 目的地址, 各占32位。
IPV6是什么?
IPv6的出現是解決IPv4資源枯竭的問題。其仍然支持無連接的傳送,但傳送的是PDU分組,而不是IPv4的數據報。
IPv6中的IP地址
IPv6的地址是128bit,在可預見的未來是夠用的。但和IPv4版本并不兼容,若使用IPv4版本的主機A和使用IPv6版本的主機B之間通信需要特殊處理。IPv6的地址表示采用冒號十六進制記法 , 8組4個16進制數字,中間使用冒號隔開。例如:6845:8C64:FFFF:FFFF:0:1180:9000:FFFF
若一組中全是0,可以省略三個;
若存在連續多組0,可以使用冒號取代,但只能壓縮一次 FF05:0:0:0:0:0:0:B3 可以壓縮為 FF05::B3
1090:0:0:0:8:800:200C:417A 可以壓縮為 1090::8:800:200C:417A 全零可記為 ::;
最后的2組可以使用IPv4的點分十進制表示 0:0:0:0:0:0:128.10.2.1 可表示為 ::128.10.2.1。
IPv6數據報格式
IPv6數據報由兩大部分組成,基本首部和有效載荷。有效載荷運行有0個或多個擴展首部。
可以看到IPv6的首部是固定的40字節,和IPv4不同;在組成上也有很大區別。
版本,占4位,協議的版本通信雙方需要相同
通信量類,占8位,區分不同的IPv6的數據報或優先級
流標號,占20位,IPv6一個新機制就是支持資源預分配,運行路由把每個數據報與特定的資源分配和聯系。IPv6提出流的概念指互聯網上從特定源點到特定終點的一系列數據報(如實時的音頻或視頻傳輸),在這個流經過的路徑上路由都保證指明的服務質量。所有屬于同一個流的數據報具有相同的流標號。賦值為0即為關閉
有效載荷長度,占16位,指明除基本首部以外的字節數。最大64KB;
下一首部,占8位,相當于IPv4的協議字段或可選字段。
當IPv6沒有擴展首部時,該字段和IPv4的協議字段一樣;
有擴展首部時,表示第一個擴展首部的類型
跳數限制,和IPv4的TTL一樣
源地址,目的地址,各占128位。
從IPv4向IPv6過渡
網絡如此龐大,從IPv4向IPv6的變換不可能一蹴而就。若要在兩個版本的協議下通信,有下面的2個方法。
雙協議棧
簡單的說就是一個主機能夠理解兩個版本的內容,這樣主機也要有2個版本對應的IP地址。具有雙協議棧的主機,可以通過DNS系統知道目的主機使用的協議版本了。
下面是兩臺使用IPv6的主機通信示意圖,它們之間需要通過IPv4網絡,在必要的時候經過雙協議棧的主機進行協議的轉換,當然轉換的時候有些信息可能丟失,這也是不可避免的。
使用隧道技術
隧道技術的原理是,在IPv6的數據需要進入IPv4網絡時,將IPv6的數據報(準確的說是PDU)當成IPv4數據報的數據部分,使用IPv4版本傳輸,在離開IPv4網絡時在此組裝成IPv6的數據,發往目的地。
下面是一個示意圖:
VeCloud微云網絡的總部位于香港,并在中國北京和深圳設有分支機構,是一家面向企業提供云交換網絡服務為核心業務的技術創新企業。基于創新的云網技術,以及優質的全球網絡與IDC數據中心資源,推出了全球直連,快速可達的VeConnect平臺,實現網絡服務商、IDC數據中心、云服務商以及企業應用服務商的直連互通,為企業提供高效、安全、穩定、可靠的網絡連接服務。Vecloud在全球的數據中心節點30個,POP節點超過200個,服務的大客戶超過300個,涉及金融、互聯網、游戲、AI、教育、制造業、跨國企業等行業領域。
總結
以上是生活随笔為你收集整理的IPv4如何向IPv6过渡?—Vecloud微云的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 别人可以随便查你的征信吗?中国人民银行是
- 下一篇: IPv6的利与弊—Vecloud微云