网际协议(IP)
網際協議
-
網際協議(英語:Internet Protocol,縮寫:IP),又稱互聯網協議,是用于分組交換數據網絡的協議。
IP是在TCP/IP協議族中網絡層的主要協議,任務僅僅是根據源主機和目的主機的地址來傳送數據。為此目的,IP定義了尋址方法和數據報的封裝結構。第一個架構的主要版本為IPv4,目前仍然是廣泛使用的互聯網協議,盡管世界各地正在積極部署IPv6。
IP封裝
- 數據在IP互聯網中傳送時會封裝為數據包。網際協議的獨特之處在于:在報文交換網絡中主機在傳輸數據之前,無須與先前未曾通信過的目的主機預先創建好特定的“通路”。互聯網協議提供了“不可靠的”數據包傳輸機制(也稱“盡力而為”或“盡最大努力交付”);也就是說,它不保證數據能準確的傳輸。數據包在到達的時候可能已經損壞,順序錯亂(與其它一起傳送的報文相比),產生冗余包,或者全部丟失。如果應用需要保證可靠性,一般需要采取其他的方法,例如利用IP的上層協議控制。
IP提供的服務
-
互聯網協議的設計原則,假定網絡基礎設施本身就是不可靠的單一網絡元素或傳輸介質,并且它使用的是動態的節點和連接。不存在中央監測和性能衡量機制來跟蹤和維護網絡的狀態。為了減少網絡的復雜性,大部分網絡只能故意地分布在每個數據傳輸的終端節點。傳輸路徑中的路由器只是簡單地將資料包發送到下一個匹配目的地址的路由前綴的本地網關。
由于這種設計的結果,互聯網協議只提供盡力傳送,其服務也不受信任。在網絡專業語言中是無連接的協議,相對于所謂的面向連接的模式。在缺乏可靠性的條件下允許下列任何故障發生:
1.數據損壞
2.丟失數據
3.重復到來
4.數據包傳遞亂序;意思是,報文A即使在報文B之前發送,B也可能在A之前先抵達。 -
互聯網協議提供的唯一幫助是,IPv4規定透過在路由器節點計算校驗和來確保IP數據報頭是正確的。這個帶來的副作用是當場丟棄報頭錯誤的資料包。在這種情況下不需要發送通知給任一終端節點,但是互聯網控制消息協議(ICMP)中存在做到這一點的機制。但是,IPv6為了快速傳輸已經放棄了計算校驗和的使用。
-
對這些可靠性問題的更正是上層協議的責任。例如,上層協議為了確保按順序傳送可能要緩存數據,直到數據可以傳遞給應用程序。
-
除了可靠性問題,互聯網及其組成部分的動態性和多樣性不能確保任何路徑是有能力地或合適地完成所要求的數據傳輸,即使路徑是有效并且可靠的。技術限制有在給定的鏈路上允許的數據包的大小。應用程序必須確保它使用適當的傳輸特性。這種責任還在于一些在應用層協議和IP之間的上層協議。存在審查的本地連接尺寸最大傳輸單位(MTU),以及整個預計到目標路徑時使用IPv6。IPv4的網絡層有自動分片成更小的單位進行傳輸原始數據報的能力。在這種情況下,IP確實能夠為亂序的分片進行順序排序。
IP尋址和路由
- 網際協議最為復雜的方面可能就是尋址和路由。尋址就是如何將IP地址分配給各個終端節點,以及如何劃分和組合子網。所有網絡端點都需要路由,尤其是網際之間的路由器。路由器通常用內部網關協議(Interior Gateway Protocols,IGPs)和外部網關協議(External Gateway Protocols,EGPs)決定怎樣發送IP數據包。
版本歷史
- 現在的國際互聯網普遍的采用了網際協議。而現在正在網絡中運行的網際協議是IPv4;IPv6為IPv4的后續版本?;ヂ摼W現在正慢慢的耗盡IP地址,而IPv6的出現解決了這個問題,與IPv4的32位的地址相比而言,IPv6擁有128位的地址空間,可以提供比前者多很多的地址。版本0至3不是保留就是沒有使用。而版本5用于實驗流傳輸協議。其他的版本也已經分配了,通常是用于實驗的協議,而沒有廣泛應用。
總結
- 上一篇: 网络套接字(Network socket
- 下一篇: 互联网协议套件(TCP/IP)及七层OS