IPX

IPX協議簇中的第三層協議

IPX(Internet work Packet Exchange,網際網路路數據包交換)是一個專用的協議簇,它主要由Novell NetWare操作系統使用。IPX是IPX協議簇中的第三層協議。

SPX(Sequenced Packet Exchange protocol,序列分組交換協議)是 Novell 早期傳輸層協議,為 Novell NetWare 網路提供分組發送服務。在區域網中用得比較多的網路協議是IPX/SPX.。

協議內容


●IPX(Internet work Packet Exchange網際網路路數據包交換):第三層協議,用來對通過網際網路路的數據包進行路由選擇和轉發,它指定一個無連接的數據報,相當於TCP/IP協議簇中的IP協議;
●SPX(Sequenced Packet Exchange,順序包交換協議):第四層協議,是IPX協議簇中的面向連接的協議,相當於TCP/IP協議簇中的TCP協議;
●NCP(NetWare Core Protocol,NetWare核心協議):提供從客戶到伺服器的連接和應用;
●SAP(Service Advertising Protocol,服務通告協議):用來在IPX網路上通告網路服務;
●IPX RIP(Routing Information Protocol,Novell路由選擇信息協議):完成路由器之間路由信息的交換並形成路由表。

IPX封裝


IPX協議在乙太網上支持以下4種封裝格式,也稱為幀格式,它們是:
●乙太網802.3:也叫原始乙太網,Cisco設備中稱為"novell-ether",它是NetWare版本2到版本3.1中預設的幀格式;
乙太網802.2,也稱sap,是標準的IEEE幀格式,它是NetWare版本3.12到4.x中的標準幀格式;
●乙太網II,也稱arpa,採用標準乙太網版本II的頭格式;
●乙太網SNAP(子網訪問協議),或snap,通過增加一個於網接入協議(SNAP)擴展了IEEE 802.2的頭格式。
採用不同IPX封裝格式的設備之間不能進行通信。

應用


IPX協議
全稱Internetwork Packet Exchange(網間數據包交換),IPX協議是Novell NetWare自帶的最底層網路協議,主要用來控制區域網內或區域網之間數據包的定址和路由,只負責數據包在區域網中的傳送,並不保證消息的完整性,也不提供糾錯服務。
應用:在區域網中傳輸數據包時,如果接收節點在同一網段內,通過IPX協議就直接按該節點的ID將數據傳給它;如果接收節點不在同一網段內,那麼通過IPX協議可以將數據包交給NetWare伺服器,再繼續傳輸。在使用過程中,網路管理員可以通過使用相應的IPX路由命令,比如“routing ipx add/set staticroute”表示在IPX路由表中添加或配置靜態IPX路由,“routing ipx set global”表示配置全局IPX路由設置。
SPX協議
全稱Sequences Packet Exchange(順序包交換),SPX協議是基於施樂Xerox SPP(Sequences Packet Protocol,順序包協議)協議,同樣是由Novell公司開發的一種用於區域網的網路協議。在區域網中,SPX協議主要負責對整個傳輸的數據進行無差錯處理,即糾錯。
應用:SPX協議一般和上面介紹的IPX協議組合成IPX/SPX協議來使用,多用於Netware網路環境以及聯網遊戲。

協議結構


NetWare IPX 數據包頭:
8 16 bit
Checksum
Packet Length
Transport control Packet Type
Destination Network (4 bytes)
Destination node (6 bytes)
Destination socket (2 bytes)
Source network (4 bytes)
Source node (6 bytes)
Source socket (2 bytes)
* Checksum ― 表示當16位欄位全設置為1(FFFF)時,不使用校驗和。
* Packet length ― 指定完整 IPX數據報的位元組長。IPX數據包大小任意,可以達到媒體最大傳輸單元(MTU)大小(不允許數據包分片)。
* Transport control ― 指明數據包傳送過程中經過的路由器數量。當該值為16時,假設發生路由迴路,並丟棄數據包。
* Packet type ― 指定哪個上層協議應該接收該數據包信息。通常包括兩個值:
o 5 ― 表示序列分組交換(SPX)
o 17 ― 表示NetWare核心協議(NCP)
* Destination network、Destination node、and Destination socket ― 表示目標信息。
* Source network、Source node and Source socket ― 表示源信息。

協議設置


IPX協議與IP協議是兩種不同的網路層協議,它們的路由協議也不一樣,IPX的路由協議不像IP的路由協議那樣豐富,所以設置起來比較簡單。但IPX協議在乙太網上運行時必須指定封裝形式。
□有關命令
啟動IPX路由
ipxrouting
設置IPX網路及乙太網封裝形式
ipxnetworknetwork[encapsulationencapsulation-type]1
指定路由協議,默認為RIP
ipxrouter{eigrpautonomous-system-number|nlsp[tag]|rip}
註:
1.network範圍是1到FFFFFFFD.
□舉例:
在此例中,WAN的IPX網路為3a00,Router1所連接的區域網IPX網路號為2a00,在此區域網有一台Novell伺服器,IPX網路號也是2a00,路由器介面的IPX網路號必須與在同一網路的Novell伺服器上設置的IPX網路號相同。路由器通過監聽SAP來建立已知的服務及自己的網路地址表,並每60秒發送一次自己的SAP表。
IPX/SPX協議
說明:IPX/SPX協議即 IPX 與 SPX 協議的組合,它是 Novell 公司為了適應網路的發展而開發的通信協議,具有很強的適應性,安裝方便,同時還具有路由功能,可以實現多網段間的通信。其中, IPX 協議負責數據包的傳送; SPX 負責數據包傳輸的完整性。在微軟NT操作系統中,一般使用 NWLink IPX/SPX 兼容協議和 NWLink NetBIOX 兩種 IPX/SPX 的兼容協議,即 NWLink 協議,該兼容協議繼承了 IPX/SPX 協議的優點,更適應 Windows 的網路環境。
應用: IPX/SPX 協議一般可以應用於大型網路(比如 Novell )。不過,如果不是在 Novell 網路環境中,一般不使用 IPX/SPX 協議,而是使用 IPX/SPX 兼容協議,尤其是在 Windows 9x/2000 組成的對等網中。
Windows NT中提供了兩個與IPX/SPX兼容的協議:“NWLink IPX/SPX兼容傳輸協議”和“NWLink NetBIOS”,兩者統稱為“NWLink通信協議”。NWLink協議是IPX/SPX協議在微軟網路中的實現,它一方面擁有IPX/SPX協議的優點,另一方面又能夠適應微軟的操作系統和網路環境。Windows NT網路和Windows 9X用戶可以利用NWLink協議獲得NetWare伺服器的服務。當網路從Novell平台轉向微軟平台,或兩種平台共存時,NWLink通信協議是最好的選擇。不過,在NWLink中,“NWLink IPX/SPX兼容協議”類似於Windows 9X中的“IPX/SPX兼容協議”,只能作為客戶端的協議實現對NetWare伺服器的訪問,離開了NetWare伺服器,此兼容協議將失去作用;而“NWLink NetBIOS”協議不但可在NetWare伺服器與Windows NT之間傳遞信息,而且能夠用於Windows NT計算機之間、Windows 95/98計算機之間以及Windows NT計算機與Windows 9X計算機之間的通信。

IPX編址


IPX網路的地址長度為80位 (bit,由兩部分構成,第一部分是32位的網路號,第二部分是48位的節點號。IPX地址通常用十六進位數來表示。
IPX網路號是由網管人員分配的,可以根據需要來定義網路號。
IPX節點號通常是網路介面本身的MAC地址。

IPX服務


SAP是IPX服務通告協議,它可以通告諸如網路伺服器和列印伺服器等網路資源設備的地址和所能提供的服務。
路由器可以監聽SAP更新消息,建立一個已知服務和相應網路地址的對應表。客戶機可以利用路由器上的SAP表得到網上服務和地址的信息,從而直接訪問相應服務。
網際網路分組交換協議(IPX)是 Novell NetWare操作系統所支持的在網際網路路中路由數據包的早期網路協議。IPX 是一種面向無連接通信的數據報協議 - 類似於 TCP/IP 協議組中的網際協議(即IP)。其高層協議,如 SPX 和 NCP,主要提供差錯恢復服務。
為了選擇最佳路徑,IPX 使用動態距離矢量(distance vector)路由選擇協議,如路由信息協議(RIP:Routing Information Protocol)或鏈路狀態協議(NLSP:NetWare Link-State Protocol)。
Novell IPX網路地址是唯一的,以十六進位表示。它由兩部分組成:網路號和節點號。IPX 網路號由網路管理員分配,地址長 32 位。節點號,通常是系統網路介面卡(NIC)的介質訪問控制(MAC)地址,地址長 48 位。通過 MAC 地址作為節點號,系統可以通過發送節點以判斷數據鏈路使用的 MAC 地址。
Novell NetWare IPX 支持單路由器介面的四種封裝模式:
1、Novell 私有( Novell Proprietary ) -也稱為原始 802.3 或者 Novell Ethernet_802.3 , Novell 私有 是 Novell 公司最初使用的封裝模式。
2、802.3 - 也稱為 Novell_802.2,802.3 是IEEE 802.3的標準幀格式。
3、Ethernet v 2 - 也稱為 Ethernet-II 或 ARPA,Ethernet v2 包括標準 Ethernet v2 協議頭,它由目標地址和源地址欄位構成,後面是 EtherType 欄位。
4、SNAP - 也稱為 Ethernet_SNAP,SNAP 在原 IEEE 802.2 協議頭增加了 type代碼,與 Ethernet v2 中定義的 EtherType 類似。
IPX數據包數據部分的長最小為 30位元組(只有頭部分) ,最大值不定,這主要取決於使用的低層 MAC 協議(乙太網或令牌環)。