TWI591987B - 負載平衡下的資料交換系統、方法及裝置 - Google Patents

負載平衡下的資料交換系統、方法及裝置 Download PDF

Info

Publication number
TWI591987B
TWI591987B TW102108644A TW102108644A TWI591987B TW I591987 B TWI591987 B TW I591987B TW 102108644 A TW102108644 A TW 102108644A TW 102108644 A TW102108644 A TW 102108644A TW I591987 B TWI591987 B TW I591987B
Authority
TW
Taiwan
Prior art keywords
packet
address
nickname
slb
virtual
Prior art date
Application number
TW102108644A
Other languages
English (en)
Other versions
TW201417541A (zh
Inventor
Meng Tang
Po Chen
Ying-Bin Wang
Jia Wan
Qian Wang
Original Assignee
Alibaba Group Services Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Services Ltd filed Critical Alibaba Group Services Ltd
Publication of TW201417541A publication Critical patent/TW201417541A/zh
Application granted granted Critical
Publication of TWI591987B publication Critical patent/TWI591987B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1038Load balancing arrangements to avoid a single path through a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/568Load balancing, smoothing or shaping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Description

負載平衡下的資料交換系統、方法及裝置
本發明涉及通信技術領域,尤其涉及一種負載平衡下的資料交換系統、方法及裝置。
目前,隨著業務量的提高,訪問量和資料流量的快速增長,單一的伺服器由於其處理能力的瓶頸已經無法滿足需求,因此,採用多個伺服器所構成的伺服器集群,並利用負載平衡技術將大量的資料流量分擔到集群中的多個伺服器上的方法應運而生。
圖1為現有技術中負載平衡下的資料交換系統結構示意圖,如圖1所示,在現有技術中,用戶端發送的用於訪問伺服器的第一封包先經過負載平衡伺服器(Server Load Blancer,SLB),由SLB選擇為該用戶端服務的後臺伺服器(Real Server,RS),並將用戶端發送的第一封包發送給選擇出的RS,RS接收到該第一封包後,同樣透過SLB向用戶端傳回第二封包,完成一次用戶端與RS的資料交換。
由上述過程可以看出,進入RS的流量首先要經過 SLB,由SLB採用一定的負載平衡策略選擇為用戶端服務的RS,被選擇的RS再透過SLB與用戶端進行資料交換。需要說明的是,雖然被選擇的RS是透過SLB與用戶端進行資料交換的,也即從被選擇的RS中流出的流量也是透過SLB到達用戶端的,但是SLB對於從RS中流出的流量卻無需進行負載平衡處理。
然而,對於RS而言,進入RS的流量往往遠小於從RS中流出的流量,這些從RS中流出的大量流量也要經過SLB才能到達用戶端,就會增大SLB的的負擔。
本發明實施例提供一種負載平衡下的資料交換系統、方法及裝置,用以解決現有技術中SLB的負擔較大的問題。
本發明實施例提供的一種負載平衡下的資料交換系統,包括:負載平衡伺服器SLB,用於接收用戶端發送的第一封包,根據預設的負載平衡策略選擇後臺伺服器RS,將所述第一封包中攜帶的目的地址調整為選擇出的RS的真實網際網路協定IP地址,得到第二封包,並將所述第二封包發送給選擇出的RS,其中,所述用戶端發送的所述第一封包中攜帶的目的地址為所述SLB的虛擬IP地址;RS,用於在接收到第二封包後,產生第三封包並發送給所述用戶端,所述第三封包中攜帶的來源地址為所述 RS自身的真實IP地址; 轉換設備,用於攔截所述RS發送的所述第三封包,並將所述第三封包中攜帶的來源地址調整為預先記錄的所述SLB的虛擬IP地址,得到第四封包,將所述第四封包發送給所述用戶端。
本發明實施例提供的一種負載平衡下的資料交換方法,包括:轉換設備攔截後臺伺服器RS根據接收到的第二封包向用戶端發送的第三封包,所述第三封包中攜帶的來源地址為所述RS自身的真實網際網路協定IP地址;其中,所述第二封包為:負載平衡伺服器SLB接收到所述用戶端發送的目的地址為所述SLB的虛擬IP地址的第一封包後,根據預設的負載平衡策略選擇所述RS,並將所述第一封包中攜帶的目的地址調整為所述RS的真實IP地址,得到的第二封包;所述轉換設備將攔截到的所述第三封包中的來源地址調整為預先記錄的所述SLB的虛擬IP地址,得到第四封包;並將所述第四封包發送給所述用戶端。
本發明實施例提供的一種負載平衡下的資料交換裝置,包括:第一攔截模組,用於攔截後臺伺服器RS根據接收到的第二封包向用戶端發送的第三封包,所述第三封包中攜帶的來源地址為所述RS自身的真實網際網路協定IP地 址;其中,所述第二封包為:負載平衡伺服器SLB接收到所述用戶端發送的目的地址為所述SLB的虛擬IP地址的第一封包後,根據預設的負載平衡策略選擇所述RS,並將所述第一封包中攜帶的目的地址調整為所述RS的真實IP地址,得到的第二封包;調整模組,用於將攔截到的所述第三封包中的來源地址調整為預先記錄的所述SLB的虛擬IP地址,得到第四封包;第一發送模組,用於將所述第四封包發送給所述用戶端。
本發明實施例提供一種負載平衡下的資料交換系統、方法及裝置,該系統包括SLB、RS和轉換設備,對於從用戶端發往RS的封包,則由SLB進行處理並發送給RS,對於從RS發往用戶端的封包,則由轉換設備進行處理並發送給用戶端。由於在本發明實施例提供的上述系統中,從RS中流出的流量並非是透過SLB發送給用戶端,而是由轉換設備進行處理並發送給用戶端的,因此有效的減輕了SLB的負擔。
601‧‧‧第一攔截模組
602‧‧‧調整模組
603‧‧‧第一發送模組
604‧‧‧第二攔截模組
605‧‧‧記錄模組
606‧‧‧第二發送模組
圖1為現有技術中負載平衡下的資料交換系統結構示意圖;圖2為本發明實施例提供的負載平衡下的資料交換系統結構示意圖; 圖3為本發明實施例提供的基於圖2所示的系統的資料交換過程;圖4為本發明實施例提供的負載平衡下的資料交換系統詳細結構示意圖;圖5為本發明實施例提供的基於圖4所示的系統的資料交換詳細過程;圖6為本發明實施例提供的負載平衡下的資料交換裝置結構示意圖。
在如圖1所示的現有系統中,從用戶端發往RS的一個封包經過SLB的處理後進入RS,RS根據用戶端發送的該封包,向用戶端傳回另一個封包時,傳回的該另一個封包也同樣要經過SLB才能夠傳回到用戶端,而由於在實際用中,進入RS的流量往往是遠小於從RS中流出的流量的,因此現有技術中的系統會增大SLB的負擔,尤其是在RS集群的規模較大時,會進一步加劇SLB的負擔。而且,由於從RS發往用戶端的封包要經過SLB,因此也需要將RS預設的從RS到RS閘道的路由修改為從RS到SLB的路由,進而需要將RS和SLB部署在同一個虛擬區域網路(VLAN)中,這也降低了RS和SLB部署的靈活性。
本發明實施例提供一種負載平衡下的資料交換系統、方法及裝置,該系統包括SLB、RS和轉換設備,對於從 用戶端發往RS的封包,則由SLB進行處理並發送給RS,對於從RS發往用戶端的封包,則由轉換設備進行處理並發送給用戶端。由於在本發明實施例提供的上述系統中,從RS中流出的流量並非是透過SLB發送給用戶端,而是由轉換設備進行處理並發送給用戶端的,因此有效的減輕了SLB的負擔。
下面結合說明書圖式,對本發明實施例進行詳細描述。
圖2為本發明實施例提供的負載平衡下的資料交換系統結構示意圖,具體包括:SLB、若干個RS以及轉換設備。
透過如圖2所示的系統,用戶端與RS進行資料交換的過程具體如圖3所示。圖3為本發明實施例提供的基於圖2所示的系統的資料交換過程,具體包括以下步驟:
S301:SLB接收用戶端發送的第一封包。
其中,用戶端發送的第一封包中攜帶的目的地址為該SLB的虛擬網際網路協定(Internet Protocol,IP)地址,第一封包中攜帶的來源地址為該用戶端的真實IP地址。
一般的,對於一個網站,在採用由若干個RS構成的RS集群分擔訪問該網站的流量時,會對SLB以及每個RS都設置同一個虛擬IP地址,以方便用戶的訪問。因此,當用戶要訪問該網站時,先透過其使用的用戶端發送目的地址為該虛擬IP地址的第一封包,從而,SLB就會接收到該第一封包。
S302:SLB根據預設的負載平衡策略選擇RS,將第一封包中攜帶的目的地址調整為選擇出的RS的真實IP地址,得到第二封包。
在本發明實施例中,SLB接收到用戶端發送的第一封包後,則根據預設的負載平衡策略,在RS集群中選擇出一個用於與該用戶端進行資料交換的RS。
SLB選擇出RS後,則基於自身預先記錄的RS集群中每個RS的真實IP地址,確定選擇出的該RS的真實IP地址,再將第一封包中攜帶的目的地址(SLB的虛擬IP地址)調整為選擇出的該RS的真實IP地址。此時,SLB已將第一封包中的目的地址調整為選擇出的該RS的真實IP地址,將調整了目的地址後的第一封包作為第二封包。
即,第二封包中攜帶的目的地址為選擇出的RS的真實IP地址,第二封包中攜帶的來源地址仍然是第一封包中攜帶的來源地址,也就是用戶端的真實IP地址。
S303:SLB將第二封包發送給選擇出的RS。
S304:RS接收到第二封包後,產生第三封包並發送給用戶端。
在本發明實施例中,RS接收到SLB發送的第二封包後,確定該第二封包中攜帶的目的地址是該RS自身的真實IP地址,因此對該第二封包進行處理,產生第三封包並傳回用戶端。
其中,產生的該第三封包中攜帶的來源地址為該RS自身的真實IP地址,該第三封包中攜帶的目的地址為第 二封包中攜帶的來源地址,也就是用戶端的真實IP地址。
S305:轉換設備攔截RS向用戶端發送的第三封包。
S306:轉換設備將第三封包中攜帶的來源地址調整為預先記錄的SLB的虛擬IP地址,得到第四封包。
由於用戶端發送的第一封包中攜帶的目的地址是SLB的虛擬IP地址,來源地址是該用戶端自身的真實IP地址,因此用戶端只處理目的地址是該用戶端自身的真實IP地址、且來源地址是SLB的虛擬IP地址的封包,對於來源地址不是SLB的虛擬IP地址的封包,用戶端則不會進行處理。從而,如果RS直接將來源地址是該RS的真實IP地址的第三封包發送給用戶端,用戶端就不會對第三封包進行處理,導致資料交換的異常。
因此,在本發明實施例中,轉換設備要對RS發送給用戶端的第三封包進行攔截,並基於預先記錄的SLB的虛擬IP地址,將第三封包中攜帶的來源地址調整為該SLB的虛擬IP地址,進而得到第四封包。
即,第四封包中攜帶的來源地址是SLB的虛擬IP地址,第四封包中攜帶的目的地址仍然是第三封包中攜帶的目的地址,也就是用戶端的真實IP地址。
S307:轉換設備將第四封包發送給用戶端。
用戶端接收到該第四封包後,由於該第四封包中攜帶的來源地址(SLB的虛擬IP地址)與用戶端發送的第一封包中攜帶的目的地址(SLB的虛擬IP地址)相同,並 且,該第四封包中攜帶的目的地址(用戶端的真實IP地址)與用戶端發送的第一封包中攜帶的來源地址(用戶端的真實IP地址)相同,因此對該第四封包進行處理,從而完成用戶端與RS的資料交換。
透過上述方法,由用戶端發往RS的封包(第一封包)是由SLB進行處理的,而由RS傳回給用戶端的封包(第三封包)是由轉換設備進行處理的,也就是說,從RS中流出的流量繞過了SLB而透過轉換設備到達用戶端,因此可以有效的減輕SLB的負擔。
在本發明實施例中,當對SLB以及RS集群中的每個RS只設置一個虛擬IP地址時,則可以直接將該虛擬IP地址預置在轉換設備中,在圖3所示的步驟S306中,轉換設備可以直接基於預置的虛擬IP地址調整第三封包的來源地址。
然而,考慮到在實際應用中,往往存在兩個甚至兩個以上的網站共用一個RS集群的情況,這種情況下,為SLB以及每個RS設置的虛擬IP地址也會存在兩個或兩個以上。例如,為SLB以及每個RS設置的虛擬IP地址包括VIP1和VIP2,此時,如果直接將VIP1和VIP2預置在轉換設備中,則在圖3所示的步驟S306中,轉換設備在基於預先記錄的虛擬IP地址調整第三封包中攜帶的來源地址時,就不能確定究竟採用VIP1和VIP2中的哪一個來調整,如果採用的虛擬IP地址不正確,則會影響用戶端與RS進行資料交換的準確性。
因此,為了保證用戶端與RS進行資料交換的準確性,在本發明實施例中,SLB在接收到用戶端發送的第一封包後,對第一封包進行調整,得到第二封包的方法具體為:SLB提取第一封包中作為目的地址攜帶的該SLB的虛擬IP地址,提取第一封包中作為目的埠號攜帶的該SLB的公共埠號,並將提取的該虛擬IP地址和公共埠號插入到第一封包的TCP選項中,再將第一封包中攜帶的目的地址調整為選擇出的RS的真實IP地址,將第一封包中攜帶的目的埠號調整為選擇出的RS的埠號,得到第二封包。
其中,用戶端發送的第一封包中除了攜帶來源地址和目的地址之外,還攜帶源埠號、目的埠號以及協定資訊,第一封包攜帶的源埠號為該用戶端的埠號,目的埠號為SLB的公共埠號。
SLB透過上述方法得到的第二封包中攜帶的目的地址為選擇出的RS的真實IP地址,目的埠號為選擇出的RS的埠號,來源地址仍然是用戶端的真實IP地址,源埠號仍然是該用戶端的埠號,協定資訊也仍然不變,並且,第二封包的TCP選項中插入有SLB的虛擬IP地址和公共埠號。SLB得到該第二封包後,將該第二封包發送給RS。
進一步的,轉換設備預先記錄SLB的虛擬IP地址的方法具體為:轉換設備攔截SLB向RS發送的第二封包,根據第二封包確定該用戶端與該RS進行資料交換的資料流標識資訊,並記錄第二封包的TCP選項中插入的虛擬 IP地址和公共埠號,建立確定的該資料流標識資訊與記錄的該虛擬IP地址和公共埠號的對應關係。
其中,確定的資料流標識資訊包括:第二封包中攜帶的來源地址、目的地址、源埠號、目的埠號、協定資訊中的至少一種。
較佳的,可以採用第二封包中攜帶的來源地址、目的地址、源埠號、目的埠號以及協定資訊,作為該用戶端與該RS進行資料交換的資料流標識資訊。也即,確定包含第二封包中攜帶的來源地址、目的地址、源埠號、目的埠號以及協定資訊的五元組,採用該五元組作為資料流標識資訊。後續則可以記錄第二封包的TCP選項中插入的虛擬IP地址和公共埠號,並建立該五元組與該虛擬IP地址和公共埠號的對應關係。
轉換設備建立了確定的資料流標識資訊與虛擬IP地址和公共埠號的對應關係後,則可以將攔截的該第二封包轉發給RS,由RS根據該第二封包繼續進行後續處理。
相應的,轉換設備採用上述方法記錄SLB的虛擬IP地址時,將攔截到的RS發往用戶端的第三封包中的來源地址調整為預先記錄的該SLB的虛擬IP地址,得到第四封包的方法具體為:轉換設備根據攔截的該RS發送的第三封包確定資料流標識資訊,查找與根據該第三封包確定出的資料流標識資訊對應的虛擬IP地址和公共埠號,並將第三封包中攜帶的來源地址調整為查找到的虛擬IP地址,將第三封包中攜帶的源埠號調整為查找到的公共埠 號,得到第四封包。
圖4為本發明實施例提供的負載平衡下的資料交換系統詳細結構示意圖,具體包括:SLB、SLB閘道、若干個RS、轉換設備、RS閘道。
圖5為本發明實施例提供的基於圖4所示的系統的資料交換詳細過程,具體包括以下步驟:
S501:SLB透過SLB閘道接收用戶端發送的第一封包。
例如,假設該SLB的虛擬IP地址為VIP1,SLB的公共埠號為Np,用戶端的真實IP地址為IPc,用戶端的埠號為Nc,則SLB接收到的第一封包中攜帶的來源地址為IPc,目的地址為VIP1,源埠號為Nc,目的埠號為Np,協定資訊為用戶端所採用的協定資訊。
S502:SLB根據預設的負載平衡策略選擇RS,提取第一封包中作為目的地址攜帶的該SLB的虛擬IP地址,以及作為目的埠號攜帶的該SLB的公共埠號,將提取的虛擬IP地址和公共埠號插入到第一封包的TCP選項中,將第一封包中攜帶的目的地址調整為選擇出的RS的真實IP地址,將第一封包中攜帶的目的埠號調整為選擇出的RS的埠號,得到第二封包。
繼續沿用上例,SLB接收到第一封包後,根據預設的負載平衡策略選擇RS,提取第一封包的目的地址和目的埠號,也即提取VIP1和Np,將提取的VIP1和Np插入到第一封包的TCP選項中。假設SLB選擇的RS的真實 IP地址為IPr,該RS的埠號為Nr,則SLB再將第一封包的目的地址調整為IPr,將第一封包的目的埠號調整為Nr,從而得到第二封包。
得到的第二封包中攜帶的來源地址為IPc,目的地址為IPr,源埠號為Nc,目的埠號為Nr,協定資訊不變,並且TCP選項中插入了VIP1和Np。
S503:SLB將第二封包發送給選擇出的RS。
S504:轉換設備攔截SLB向RS發送的第二封包。
S505:轉換設備根據第二封包確定該用戶端與該RS進行資料交換的資料流標識資訊,記錄第二封包的TCP選項中插入的虛擬IP地址和公共埠號,建立確定的資料流標識資訊與記錄的該虛擬IP地址和公共埠號的對應關係。
繼續沿用上例,轉換設備將攜帶的來源地址為IPc、目的地址為IPr、源埠號為Nc、目的埠號為Nr、且TCP選項中插入了VIP1和Np的第二封包攔截後,將包括該第二封包中攜帶的來源地址(IPc)、目的地址(IPr)、源埠號(Nc)、目的埠號(Nr)以及協定資訊的五元組確定為該用戶端與該RS進行資料交換的資料流標識資訊,也即,採用該五元組唯一標識該用戶端與該RS之間的資料流。然後,轉換設備再記錄第二封包的TCP選項中插入的虛擬IP地址和公共埠號,也即記錄VIP1和Np,並建立上述五元組與記錄的VIP1和Np之間的對應關係。
S506:轉換設備將第二封包轉發給RS。
S507:RS根據接收到的第二封包,產生第三封包,並發送給RS閘道。
繼續沿用上例,RS接收到第二封包後,確定第二封包中攜帶的目的地址是IPr,也就是該RS自身的真實IP地址,並且目的埠號是Nr,也就是該RS的埠號,因此根據該第二封包產生第三封包。
產生的該第三封包的來源地址為該RS自身的真實IP地址,也即IPr,目的地址為第二封包的來源地址,也即用戶端的真實IP地址(IPc),源埠號為該RS自身的埠號,也即Nr,目的埠號為第二封包的源埠號,也即Nc,協定資訊仍然不變。
產生上述第三封包後,則RS可以按照預設的從RS到RS閘道的路由,將該第三封包發送給RS閘道,使RS閘道根據該第三封包中攜帶的目的地址(IPc)以及目的埠號(Nc),將該第三封包發送給用戶端。
S508:轉換設備攔截RS發送給RS閘道的第三封包。
S509:轉換設備根據攔截的第三封包確定資料流標識資訊,查找與根據該第三封包確定出的資料流標識資訊對應的虛擬IP地址和公共埠號。
繼續沿用上例,由於在上述步驟S505中,轉換設備記錄的與VIP1和Np對應的資料流標識資訊為包括IPc、IPr、Nc、Nr、協定資訊在內的五元組,而根據第三封包確定的資料流標識資訊仍然是上述五元組,因此,轉換設 備據此可以確定該第三封包是屬於以上述五元組所標識的資料流(該用戶端與該RS進行資料交換的資料流)中的一個封包,從而,查找該資料流標識資訊對應的虛擬IP地址和公共埠號,也即查找上述五元組對應的虛擬IP地址和公共埠號,查找到的虛擬IP地址和公共埠號即為VIP1和Np。
S510:轉換設備將第三封包中攜帶的來源地址調整為查找到的虛擬IP地址,將第三封包中攜帶的源埠號調整為查找到的公共埠號,得到第四封包。
繼續沿用上例,由於查找到的虛擬IP地址和公共埠號為VIP1和Np,因此,轉換設備將第三封包中攜帶的來源地址由IPr調整為VIP1,將源埠號由Nr調整為Np,從而得到第四封包。
也即,得到的第四封包中攜帶的來源地址為VIP1,目的地址為IPc,源埠號為Np,目的埠號為Nc,協定資訊仍然不變。
S511:轉換設備將第四封包透過RS閘道發送給用戶端。
繼續沿用上例,轉換設備先將第四封包發送給RS閘道,由RS閘道根據該第四封包中攜帶的目的地址和目的埠號,將該第四封包發送給用戶端。由於用戶端初始發出的第一封包中攜帶的來源地址為IPc,目的地址為VIP1,源埠號為Nc,目的埠號為Np,協定資訊為用戶端所採用的協定資訊,並且用戶端接收到的第四封包中攜帶的來源 地址為VIP1,目的地址為IPc,源埠號為Np,目的埠號為Nc,協定資訊仍然不變,因此,用戶端對該第四封包進行處理,從而完成用戶端與RS的交換。
由圖5所示的過程可見,在本發明實施例中,轉換設備透過資料流標識資訊來唯一標識用戶端與RS之間進行資料交換的資料流,並建立該資料流標識資訊與虛擬IP地址和公共埠號的對應關係,當攔截到從RS發往用戶端的封包時,就可以根據攔截到的封包確定資料流標識資訊,並據此查找相應的虛擬IP地址和公共埠號對攔截到的該封包進行調整,保證了用戶端與RS進行資料交換的準確性。
另外,在現有技術中,由於從RS發往用戶端的封包要經過SLB,因此需要將RS預設的從RS到RS閘道的路由修改為從RS到SLB的路由,進而需要將RS和SLB部署在同一個虛擬區域網路(VLAN)中,這也降低了RS和SLB部署的靈活性。
而由上述圖4所示的系統和圖5所示的過程可見,本發明實施例中轉換設備部署在RS和RS閘道之間,對從RS透過RS閘道發往用戶端的封包進行攔截,因此,無需修改RS預設的從RS到RS閘道的路由,轉換設備對於RS來說是透明的。從而,在圖4所示的系統中,只需將RS和轉換設備部署在同一個VLAN中即可,RS和SLB不需要部署在同一個VLAN中。也即,RS和轉換設備可以位於第一VLAN中,SLB可以位於第二VLAN中,有 效的提高了RS和SLB部署的靈活性。
另外,在實際應用中,在用戶端與RS進行資料交換的過程中,首先需要進行的就是透過三向交握的方式建立虛連接,而用戶端透過三向交握的方式與RS建立虛連接時,首先發送的就是同步序列編號(Synchronize Sequence Numbers,SYN)封包。
因此,基於上述情況,在本發明實施例提供的上述資料交換過程中,如果SLB確定接收到的用戶端發送的第一封包為SYN封包,則提取出該SYN封包中作為目的地址攜帶的虛擬IP地址以及作為目的埠號攜帶的公共埠號,並將提取的虛擬IP地址和公共埠號插入到該SYN封包的TCP選項中,再對該SYN封包的目的地址和目的埠號進行調整,並發送給RS。相應的,轉換設備攔截到該SYN封包後,則根據該SYN封包確定資料流標識資訊,並建立該資料流標識資訊與該SYN封包的TCP選項中插入的虛擬IP地址和公共埠號的對應關係,並將該SYN包發送給RS,進行後續流程。
相反的,如果SLB確定接收到的用戶端發送的第一封包不是SYN封包,則說明該第一封包所在的資料流中的SYN包之前已經被SLB和轉換設備處理過,進而說明該第一封包所在的資料流的資料流標識資訊之前已經被轉換設備確定過,並建立了該資料流標識資訊與相應的虛擬IP地址和公共埠號的對應關係,因此,SLB無需將第一封包中的虛擬IP地址以及公共埠號插入到該第一封包的 TCP選項中,只需調整該第一封包中的目的地址和目的埠號,並發送給RS即可。相應的,轉換設備攔截到該第一封包後,由於該第一封包的TCP選項中並未插入虛擬IP地址和公共埠號,因此也無需確定資料流標識資訊並建立其與虛擬IP地址和公共埠號的對應關係,直接將第一封包轉發給相應的RS,並進行後續流程即可。
在本發明實施例中,RS集群中的RS具體可以是虛擬機(Virtual Machine,VM)形式的RS,並可以運行在與轉換設備位於同一VLAN中的網路設備的虛擬機監控器Hypervisor上。
圖6為本發明實施例提供的負載平衡下的資料交換裝置結構示意圖,具體包括:第一攔截模組601,用於攔截後臺伺服器RS根據接收到的第二封包向用戶端發送的第三封包,所述第三封包中攜帶的來源地址為所述RS自身的真實網際網路協定IP地址;其中,所述第二封包為:負載平衡伺服器SLB接收到所述用戶端發送的目的地址為所述SLB的虛擬IP地址的第一封包後,根據預設的負載平衡策略選擇所述RS,並將所述第一封包中攜帶的目的地址調整為所述RS的真實IP地址,得到的第二封包;調整模組602,用於將攔截到的所述第三封包中的來源地址調整為預先記錄的所述SLB的虛擬IP地址,得到第四封包;第一發送模組603,用於將所述第四封包發送給所述 用戶端。
所述裝置還包括:第二攔截模組604,具體用於攔截所述SLB向所述RS發送的第二封包,所述第二封包為:所述SLB提取所述第一封包中作為目的地址攜帶的所述SLB的虛擬IP地址,提取所述第一封包中作為目的埠號攜帶的所述SLB的公共埠號,將提取的所述虛擬IP地址和公共埠號插入到所述第一封包的TCP選項中,並將所述第一封包中攜帶的目的地址調整為選擇出的所述RS的真實IP地址,將所述第一封包中攜帶的目的埠號調整為選擇出的RS的埠號,得到的第二封包;記錄模組605,用於根據所述第二封包確定所述用戶端與所述RS進行資料交換的資料流標識資訊,並記錄所述第二封包的TCP選項中插入的虛擬IP地址和公共埠號,建立確定的所述資料流標識資訊與記錄的虛擬IP地址和公共埠號的對應關係,其中,確定的所述資料流標識資訊包括:所述第二封包中攜帶的來源地址、目的地址、源埠號、目的埠號、協定資訊中的至少一種;第二發送模組606,用於將所述第二封包發送給所述RS。
所述調整模組602具體用於,根據攔截的所述RS發送的第三封包確定資料流標識資訊,查找與根據所述第三封包確定出的資料流標識資訊對應的虛擬IP地址和公共埠號,並將所述第三封包中攜帶的來源地址調整為查找到 的虛擬IP地址,將所述第三封包中攜帶的源埠號調整為查找到的公共埠號,得到第四封包。
具體的上述負載平衡下的資料交換裝置可以位於轉換設備中。
本發明實施例提供一種負載平衡下的資料交換系統、方法及裝置,該系統包括SLB、RS和轉換設備,對於從用戶端發往RS的封包,則由SLB進行處理並發送給RS,對於從RS發往用戶端的封包,則由轉換設備進行處理並發送給用戶端。由於在本發明實施例提供的上述系統中,從RS中流出的流量並非是透過SLB發送給用戶端,而是由轉換設備進行處理並發送給用戶端的,因此有效的減輕了SLB的負擔。
顯然,本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存介質(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。
顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和範圍。這樣,倘若本發明的這些修改和變型屬於本發明申請專利範圍及其等同技術的範圍之內,則本發明也意圖包含這些改動和變型在內。

Claims (10)

  1. 一種負載平衡下的資料交換系統,其特徵在於,包括:負載平衡伺服器SLB,用於接收用戶端發送的第一封包,根據預設的負載平衡策略選擇後臺伺服器RS,將該第一封包中攜帶的目的地址調整為選擇出的RS的真實網際網路協定IP地址,得到第二封包,並將該第二封包發送給選擇出的RS,其中,該用戶端發送的該第一封包中攜帶的目的地址為該SLB的虛擬IP地址;RS,用於在接收到第二封包後,產生第三封包並發送給該用戶端,該第三封包中攜帶的來源地址為該RS自身的真實IP地址;轉換設備,用於攔截該RS發送的該第三封包,並將該第三封包中攜帶的來源地址調整為預先記錄的該SLB的虛擬IP地址,得到第四封包,將該第四封包發送給該用戶端。
  2. 如申請專利範圍第1項所述的系統,其中,該SLB具體用於,提取該第一封包中作為目的地址攜帶的該SLB的虛擬IP地址,並提取該第一封包中作為目的埠號攜帶的該SLB的公共埠號,將提取的該虛擬IP地址和公共埠號插入到該第一封包的TCP選項中,並將該第一封包中攜帶的目的地址調整為選擇出的RS的真實IP地址,將該第一封包中攜帶的目的埠號調整為選擇出的RS的埠號,得到第二封包; 該轉換設備具體用於,攔截該SLB向選擇出的RS發送的第二封包,根據該第二封包確定該用戶端與該RS進行資料交換的資料流標識資訊,並記錄該第二封包的TCP選項中插入的虛擬IP地址和公共埠號,建立確定的該資料流標識資訊與記錄的虛擬IP地址和公共埠號的對應關係,將該第二封包發送給該RS;其中,確定的該資料流標識資訊包括:該第二封包中攜帶的來源地址、目的地址、源埠號、目的埠號、協定資訊中的至少一種;該RS具體用於,接收該轉換設備發送的該第二封包。
  3. 如申請專利範圍第2項所述的系統,其中,該轉換設備具體用於,根據攔截的該RS發送的第三封包確定資料流標識資訊,查找與根據該第三封包確定出的資料流標識資訊對應的虛擬IP地址和公共埠號,並將該第三封包中攜帶的來源地址調整為查找到的虛擬IP地址,將該第三封包中攜帶的源埠號調整為查找到的公共埠號,得到第四封包。
  4. 如申請專利範圍第1~3項中任一項所述的系統,其中,該轉換設備與該RS位於第一虛擬區域網路VLAN中,該SLB位於第二VLAN中。
  5. 一種負載平衡下的資料交換方法,其特徵在於,包括:轉換設備攔截後臺伺服器RS根據接收到的第二封包向用戶端發送的第三封包,該第三封包中攜帶的來源地址 為該RS自身的真實網際網路協定IP地址;其中,該第二封包為:負載平衡伺服器SLB接收到該用戶端發送的目的地址為該SLB的虛擬IP地址的第一封包後,根據預設的負載平衡策略選擇該RS,並將該第一封包中攜帶的目的地址調整為該RS的真實IP地址,得到的第二封包;該轉換設備將攔截到的該第三封包中的來源地址調整為預先記錄的該SLB的虛擬IP地址,得到第四封包;並將該第四封包發送給該用戶端。
  6. 如申請專利範圍第5項所述的方法,其中,該SLB將該第一封包中攜帶的目的地址調整為該RS的真實IP地址,得到第二封包,具體包括:該SLB提取該第一封包中作為目的地址攜帶的該SLB的虛擬IP地址,提取該第一封包中作為目的埠號攜帶的該SLB的公共埠號;並將提取的該虛擬IP地址和公共埠號插入到該第一封包的TCP選項中;以及將該第一封包中攜帶的目的地址調整為選擇出的該RS的真實IP地址,將該第一封包中攜帶的目的埠號調整為選擇出的RS的埠號,得到第二封包;該轉換設備預先記錄該SLB的虛擬IP地址,具體包括:該轉換設備攔截該SLB向該RS發送的第二封包;並根據該第二封包確定該用戶端與該RS進行資料交換的資料流標識資訊,其中,確定的該資料流標識資訊包 括:該第二封包中攜帶的來源地址、目的地址、源埠號、目的埠號、協定資訊中的至少一種;以及記錄該第二封包的TCP選項中插入的虛擬IP地址和公共埠號,建立確定的該資料流標識資訊與記錄的虛擬IP地址和公共埠號的對應關係;該方法還包括:該轉換設備將該第二封包發送給該RS。
  7. 如申請專利範圍第6項所述的方法,其中,該轉換設備將攔截到的該第三封包中的來源地址調整為預先記錄的該SLB的虛擬IP地址,得到第四封包,具體包括:該轉換設備根據攔截的該RS發送的第三封包確定資料流標識資訊,查找與根據該第三封包確定出的資料流標識資訊對應的虛擬IP地址和公共埠號;並將該第三封包中攜帶的來源地址調整為查找到的虛擬IP地址,將該第三封包中攜帶的源埠號調整為查找到的公共埠號,得到第四封包。
  8. 一種負載平衡下的資料交換裝置,其特徵在於,包括:第一攔截模組,用於攔截後臺伺服器RS根據接收到的第二封包向用戶端發送的第三封包,該第三封包中攜帶的來源地址為該RS自身的真實網際網路協定IP地址;其中,該第二封包為:負載平衡伺服器SLB接收到該用戶端發送的目的地址為該SLB的虛擬IP地址的第一封包後,根據預設的負載平衡策略選擇該RS,並將該第一封 包中攜帶的目的地址調整為該RS的真實IP地址,得到的第二封包;調整模組,用於將攔截到的該第三封包中的來源地址調整為預先記錄的該SLB的虛擬IP地址,得到第四封包;第一發送模組,用於將該第四封包發送給該用戶端。
  9. 如申請專利範圍第8項所述的裝置,其中,該裝置還包括:第二攔截模組,具體用於攔截該SLB向該RS發送的第二封包,該第二封包為:該SLB提取該第一封包中作為目的地址攜帶的該SLB的虛擬IP地址,提取該第一封包中作為目的埠號攜帶的該SLB的公共埠號,將提取的該虛擬IP地址和公共埠號插入到該第一封包的TCP選項中,並將該第一封包中攜帶的目的地址調整為選擇出的該RS的真實IP地址,將該第一封包中攜帶的目的埠號調整為選擇出的RS的埠號,得到的第二封包;記錄模組,用於根據該第二封包確定該用戶端與該RS進行資料交換的資料流標識資訊,並記錄該第二封包的TCP選項中插入的虛擬IP地址和公共埠號,建立確定的該資料流標識資訊與記錄的虛擬IP地址和公共埠號的對應關係,其中,確定的該資料流標識資訊包括:該第二封包中攜帶的來源地址、目的地址、源埠號、目的埠號、協定資訊中的至少一種;第二發送模組,用於將該第二封包發送給該RS。
  10. 如申請專利範圍第9項所述的裝置,其中,該調整模組具體用於,根據攔截的該RS發送的第三封包確定資料流標識資訊,查找與根據該第三封包確定出的資料流標識資訊對應的虛擬IP地址和公共埠號,並將該第三封包中攜帶的來源地址調整為查找到的虛擬IP地址,將該第三封包中攜帶的源埠號調整為查找到的公共埠號,得到第四封包。
TW102108644A 2012-10-17 2013-03-12 負載平衡下的資料交換系統、方法及裝置 TWI591987B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210394875.5A CN103780502A (zh) 2012-10-17 2012-10-17 一种负载均衡下的数据交互系统、方法及装置

Publications (2)

Publication Number Publication Date
TW201417541A TW201417541A (zh) 2014-05-01
TWI591987B true TWI591987B (zh) 2017-07-11

Family

ID=49552407

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102108644A TWI591987B (zh) 2012-10-17 2013-03-12 負載平衡下的資料交換系統、方法及裝置

Country Status (5)

Country Link
US (1) US10135915B2 (zh)
JP (1) JP6434415B2 (zh)
CN (2) CN107483574B (zh)
TW (1) TWI591987B (zh)
WO (1) WO2014062940A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104811383B (zh) * 2015-03-19 2018-01-09 新华三技术有限公司 一种报文转发方法和设备
JP6505171B2 (ja) 2016-08-25 2019-04-24 エヌエイチエヌ エンターテインメント コーポレーションNHN Entertainment Corporation 仮想ネットワーク環境でループバックインタフェースを利用してdsrロードバランシングを処理する方法およびシステム
JP6505172B2 (ja) 2016-08-25 2019-04-24 エヌエイチエヌ エンターテインメント コーポレーションNHN Entertainment Corporation 仮想ネットワーク環境で仮想スイッチを利用してロードバランシングを処理する方法およびシステム
CN106302225B (zh) * 2016-10-18 2019-05-03 优刻得科技股份有限公司 一种服务器负载均衡的方法与装置
CN106412114A (zh) * 2016-11-16 2017-02-15 广州市品高软件股份有限公司 一种基于sdn的负载均衡方法及系统
CN108123890A (zh) * 2016-11-30 2018-06-05 阿里巴巴集团控股有限公司 一种负载均衡系统中的链路检测方法、装置及电子设备
US10581962B2 (en) * 2017-11-01 2020-03-03 Alibaba Group Holding Limited Direct communication between physical server and storage service
CN108768878A (zh) * 2018-06-06 2018-11-06 北京奇艺世纪科技有限公司 一种负载均衡系统、方法、装置及负载均衡设备
CN109547580B (zh) * 2019-01-22 2021-05-25 网宿科技股份有限公司 一种处理数据报文的方法和装置
CN110417921B (zh) * 2019-09-06 2020-11-06 广州华多网络科技有限公司 一种负载均衡的方法及负载均衡服务装置
CN110708309A (zh) * 2019-09-29 2020-01-17 武汉极意网络科技有限公司 反爬虫系统及方法
CN110677417A (zh) * 2019-09-29 2020-01-10 武汉极意网络科技有限公司 反爬虫系统及方法
CN110708393B (zh) * 2019-10-21 2023-11-21 北京百度网讯科技有限公司 用于传输数据的方法、装置和系统
CN112788072B (zh) * 2019-11-01 2022-05-27 阿里巴巴集团控股有限公司 数据处理方法、数据处理系统、计算机设备、存储介质
CN111800499B (zh) * 2020-06-30 2022-04-15 北京百度网讯科技有限公司 一种数据传输方法、装置及电子设备
CN112866338B (zh) * 2020-12-31 2023-03-24 杭州迪普科技股份有限公司 一种服务器状态检测的方法及装置
CN113691460B (zh) * 2021-08-26 2023-10-03 平安科技(深圳)有限公司 基于负载均衡的数据传输方法、装置、设备及存储介质
CN113794703A (zh) * 2021-08-31 2021-12-14 上海弘积信息科技有限公司 一种负载均衡系统中获取客户端ip的方法
US12034707B2 (en) 2021-11-18 2024-07-09 Cisco Technology, Inc. Randomizing server-side addresses
US11683286B2 (en) * 2021-11-18 2023-06-20 Cisco Technology, Inc. Anonymizing server-side addresses
CN114726930A (zh) * 2022-03-30 2022-07-08 深信服科技股份有限公司 一种数据包跟踪方法、系统、装置及可读存储介质
CN117201497A (zh) * 2022-05-31 2023-12-08 华为云计算技术有限公司 一种云服务系统及基于云服务系统的业务处理方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182139B1 (en) * 1996-08-05 2001-01-30 Resonate Inc. Client-side resource-based load-balancing with delayed-resource-binding using TCP state migration to WWW server farm
US6665702B1 (en) * 1998-07-15 2003-12-16 Radware Ltd. Load balancing
US6549516B1 (en) * 1999-07-02 2003-04-15 Cisco Technology, Inc. Sending instructions from a service manager to forwarding agents on a need to know basis
US6996615B1 (en) * 2000-09-29 2006-02-07 Cisco Technology, Inc. Highly scalable least connections load balancing
WO2003105006A1 (en) * 2001-04-30 2003-12-18 America Online, Inc. Load balancing with direct terminal response
CN1163029C (zh) * 2001-08-03 2004-08-18 华为技术有限公司 数据网络用户进行数据交换的方法及其网络系统
US20030033463A1 (en) * 2001-08-10 2003-02-13 Garnett Paul J. Computer system storage
JP3898498B2 (ja) * 2001-12-06 2007-03-28 富士通株式会社 サーバ負荷分散システム
CN1272724C (zh) * 2002-12-31 2006-08-30 联想(北京)有限公司 基于内核中套接字对接的第七层负载均衡的方法
CN1276629C (zh) * 2003-11-21 2006-09-20 清华大学深圳研究生院 基于Netfilter架构的流媒体集群服务内容调度方法
US8018847B2 (en) 2006-11-15 2011-09-13 Starent Networks Llc System and method for redirecting requests
CN101252591B (zh) * 2008-04-03 2011-05-04 中国科学技术大学 实现上下行数据分离的方法和装置
US8180896B2 (en) 2008-08-06 2012-05-15 Edgecast Networks, Inc. Global load balancing on a content delivery network
CN101404616A (zh) 2008-11-04 2009-04-08 北京大学深圳研究生院 一种负载均衡分组交换结构及其构造方法
US8416692B2 (en) * 2009-05-28 2013-04-09 Microsoft Corporation Load balancing across layer-2 domains
WO2011083567A1 (ja) 2010-01-06 2011-07-14 富士通株式会社 負荷分散システム及びその方法
JP5648926B2 (ja) * 2010-02-01 2015-01-07 日本電気株式会社 ネットワークシステム、コントローラ、ネットワーク制御方法
CN102164116B (zh) 2010-03-30 2013-11-13 青岛海信传媒网络技术有限公司 均衡负载的方法、系统及相应设备
US8499093B2 (en) 2010-05-14 2013-07-30 Extreme Networks, Inc. Methods, systems, and computer readable media for stateless load balancing of network traffic flows
US8676980B2 (en) * 2011-03-22 2014-03-18 Cisco Technology, Inc. Distributed load balancer in a virtual machine environment
US20130159487A1 (en) 2011-12-14 2013-06-20 Microsoft Corporation Migration of Virtual IP Addresses in a Failover Cluster
US9253144B2 (en) 2011-12-22 2016-02-02 International Business Machines Corporation Client-driven load balancing of dynamic IP address allocation
US9083709B2 (en) * 2012-05-11 2015-07-14 Cisco Technology, Inc. Virtual internet protocol migration and load balancing

Also Published As

Publication number Publication date
JP2015533458A (ja) 2015-11-24
TW201417541A (zh) 2014-05-01
WO2014062940A1 (en) 2014-04-24
CN103780502A (zh) 2014-05-07
CN107483574B (zh) 2021-05-28
US20140108661A1 (en) 2014-04-17
CN107483574A (zh) 2017-12-15
JP6434415B2 (ja) 2018-12-05
US10135915B2 (en) 2018-11-20

Similar Documents

Publication Publication Date Title
TWI591987B (zh) 負載平衡下的資料交換系統、方法及裝置
US11765057B2 (en) Systems and methods for performing end-to-end link-layer and IP-layer health checks between a host machine and a network virtualization device
US20220206908A1 (en) Techniques for replicating state information for high availability
KR101863024B1 (ko) 분산 로드 밸런서
EP3229407A1 (en) Application signature generation and distribution
US20230396539A1 (en) Scalable routing and forwarding of packets in cloud infrastructure
US11856097B2 (en) Mechanism to provide customer VCN network encryption using customer-managed keys in network virtualization device
US11777897B2 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
JP2017502605A (ja) プロキシipアドレスの識別方法及び装置
WO2017071328A1 (zh) 一种负载分担方法以及相关装置
US20220210005A1 (en) Synchronizing communication channel state information for high flow availability
US12074846B2 (en) Scaling IP addresses in overlay networks
US20220200972A1 (en) End-to-end network encryption from customer on-premise network to customer virtual cloud network using customer-managed keys
US20230396579A1 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
EP4272399A1 (en) Layer-2 networking storm control in a virtualized cloud environment
US20220417138A1 (en) Routing policies for graphical processing units
US20230222007A1 (en) Publishing physical topology network locality information for graphical processing unit workloads
US9185155B2 (en) Internet presence for a home network
WO2022271990A1 (en) Routing policies for graphical processing units
WO2022146787A1 (en) Synchronizing communication channel state information for high flow availability
WO2023205004A1 (en) Customized processing for different classes of rdma traffic
WO2023136964A1 (en) Publishing physical topology network locality information for graphical processing unit workloads
WO2022271991A1 (en) Routing policies for graphical processing units
WO2023136965A1 (en) Publishing physical topology network locality for general workloads