網際網絡協定

網際網絡協定internet protocolIP)是互聯網協定套件中的網絡層通訊協定,用於跨網絡邊界封包交換。它的路由功能實現了互聯互通,並從本質上建立了互聯網。

IP是在TCP/IP協定套組網絡層的主要協定,任務是僅根據封包檔頭中的IP位址將封包從源主機傳遞到目標主機。為此,IP協定定義了封裝要傳遞的數據的封包結構。它還定義了用於用源和目的地資訊標記數據報的定址方法。

第一個架構的主要版本為IPv4,目前仍然是廣泛使用的互聯網協定,儘管世界各地正在積極部署IPv6

IP封裝

數據在IP互聯網中傳送時會封裝為資料包。網際網絡協定的獨特之處在於:在封包交換網絡中主機在傳輸數據之前,無須與先前未曾通訊過的目的主機預先建立好特定的「通路」。互聯網協定提供了「不可靠的」封包傳輸機制(也稱「盡力而為英語Best-effort delivery」或「盡最大努力交付」);也就是說,它不保證數據能準確的傳輸。封包在到達的時候可能已經損壞,順序錯亂(與其它一起傳送的封包相比),產生冗餘包,或者全部遺失。如果應用需要保證可靠性,一般需要採取其他的方法,例如利用IP的上層協定控制。

IP提供的服務

由於封裝帶來的抽象機制,IP能夠在各種各樣的網絡上工作,例如乙太網路非同步傳輸模式FDDIWi-Fi權杖環等等。每個鏈路層的實現可能有自己的方法(也有可能是完全沒有它自己的方法),把IP位址解析成相應的數據鏈路地址。IPv4使用地址解析協定(ARP),而IPv6採用鄰居發現協定(NDP)。

可靠性

互聯網協定的設計原則,假定網絡基礎設施本身就是不可靠的單一網絡元素或傳輸媒介,並且它使用的是動態的節點和連接。不存在中央監測和效能衡量機制來跟蹤和維護網絡的狀態。為了減少網絡的複雜性,大部分網絡只能故意地分佈在每個數據傳輸的終端節點。傳輸路徑中的路由器只是簡單地將資料包傳送到下一個匹配目的地址的路由字首的本地閘道。

由於這種設計的結果,互聯網協定只提供盡力傳送,其服務也不受信任。在網絡專業語言中是無連接的協定,相對於所謂的面向連接的模式。在缺乏可靠性的條件下允許下列任何故障發生:

  • 數據損壞
  • 遺失封包
  • 重複到來
  • 封包傳遞亂序;意思是,封包A即使在封包B之前傳送,B也可能在A之前先抵達。

互聯網協定提供的唯一幫助是,IPv4規定透過在路由器節點計算校驗和來確保IP數據報頭是正確的。這個帶來的副作用是當場丟棄報頭錯誤的資料包。在這種情況下不需要傳送通知給任一終端節點,但是互聯網控制訊息協定(ICMP)中存在做到這一點的機制。但是,IPv6為了快速傳輸已經放棄了計算校驗和的使用。

對這些可靠性問題的更正是上層協定的責任。例如,上層協定為了確保按順序傳送可能要快取數據,直到數據可以傳遞給應用程式。

除了可靠性問題,互聯網及其組成部分的動態性和多樣性不能確保任何路徑是有能力地或合適地完成所要求的數據傳輸,即使路徑是有效並且可靠的。技術限制有在給定的鏈路上允許的封包的大小。應用程式必須確保它使用適當的傳輸特性。這種責任還在於一些在應用層協定和IP之間的上層協定。存在審查的本地連接尺寸最大傳輸單位(MTU),以及整個預計到目標路徑時使用IPv6。IPv4的網絡層有自動分片成更小的單位進行傳輸原始數據報的能力。在這種情況下,IP確實能夠為亂序的分片進行順序排序。

IP定址和路由

網際網絡協定最為複雜的方面可能就是定址和路由。定址就是如何將IP位址分配給各個終端節點,以及如何劃分和組合子網絡。所有網絡端點都需要路由,尤其是網際之間的路由器。路由器通常用內聯網關協定Interior Gateway Protocols,IGPs)和外部閘道協定External Gateway Protocols,EGPs)決定怎樣傳送IP封包。

版本歷史

現在的互聯網普遍的採用了網際網絡協定。而現在正在網絡中執行的網際網絡協定是IPv4IPv6為IPv4的後續版本。互聯網現在正慢慢地耗盡IP位址,而IPv6的出現解決了這個問題,與IPv4的32位元的地址相比而言,IPv6擁有128位元的地址空間,可以提供比前者多很多的地址。

版本0至3不是保留就是沒有使用。而版本5用於實驗流傳輸協定。其他的版本也已經分配了,通常是用於實驗的協定,而沒有廣泛應用。

參見

外部連結