[go: up one dir, main page]

TWI873672B - System and method for network connection via multi-path tunnel and computer-readable storage medium - Google Patents

System and method for network connection via multi-path tunnel and computer-readable storage medium Download PDF

Info

Publication number
TWI873672B
TWI873672B TW112121070A TW112121070A TWI873672B TW I873672 B TWI873672 B TW I873672B TW 112121070 A TW112121070 A TW 112121070A TW 112121070 A TW112121070 A TW 112121070A TW I873672 B TWI873672 B TW I873672B
Authority
TW
Taiwan
Prior art keywords
terminal device
path
remote device
valid
paths
Prior art date
Application number
TW112121070A
Other languages
Chinese (zh)
Other versions
TW202450360A (en
Inventor
趙祥景
Original Assignee
威聯通科技股份有限公司
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 威聯通科技股份有限公司 filed Critical 威聯通科技股份有限公司
Priority to TW112121070A priority Critical patent/TWI873672B/en
Priority to CN202310829997.0A priority patent/CN119094431A/en
Publication of TW202450360A publication Critical patent/TW202450360A/en
Application granted granted Critical
Publication of TWI873672B publication Critical patent/TWI873672B/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A system and a method for network connections via multi-path tunnels and a computer-readable storage medium are provided, which are establishing a multi-path tunnel between a terminal device and a remote device, and selecting a proper path from multiple paths for a connection according to the type of service required by the connection, in order to improve the quality of network service between the terminal device and the remote device.

Description

多重路徑通道網路連線系統、方法及電腦可讀取儲存媒體 Multi-path channel network connection system, method and computer-readable storage medium

本發明係有關網路通道與網路連線之技術,且特別係有關一種多重路徑通道網路連線系統、方法及電腦可讀取儲存媒體。 The present invention relates to network channels and network connection technologies, and in particular to a multi-path channel network connection system, method and computer-readable storage medium.

傳統的網路通道只會利用通道兩端的網路裝置之間的單一路徑傳送封包,而不具備多重路徑,導致傳統的網路通道缺乏應用彈性與相應的服務品質。例如,當網路裝置發起的網路連線有不同種類的服務需求時,傳統的網路通道就無法根據所需的服務種類為該連線選擇合適的網路路徑,導致網路服務品質不佳。 Traditional network channels only use a single path between the network devices at both ends of the channel to transmit packets, and do not have multiple paths, resulting in a lack of application flexibility and corresponding service quality. For example, when the network connection initiated by the network device has different types of service requirements, the traditional network channel cannot select the appropriate network path for the connection based on the required service type, resulting in poor network service quality.

為解決上述問題,本發明提供一種多重路徑通道網路連線方法,係由至少一終端裝置與至少一遠端裝置執行,且包括下列步驟:令該終端裝置自該終端裝置本身與複數中繼伺服器收集自該終端裝置連通該遠端裝置所 需之複數路徑資訊;令該遠端裝置自該遠端裝置本身與該等中繼伺服器收集自該遠端裝置連通該終端裝置所需之複數路徑資訊;令該終端裝置與該遠端裝置通過一通道伺服器互相傳送該等路徑資訊,且各自將該等路徑資訊配對,以獲得複數候選路徑;令該終端裝置檢查各該候選路徑是否能連通該終端裝置與該遠端裝置,以在該等候選路徑中選取能連通該終端裝置與該遠端裝置之複數有效路徑,俾將各該有效路徑加入複數佇列中之每一佇列,其中,各該佇列均對應複數服務種類中之一者;令該終端裝置根據各該佇列所對應之該服務種類,決定各該佇列中之各該有效路徑的優先等級;以及,令該終端裝置選取該終端裝置所執行之至少一行程所發起的第一連線所指定之該服務種類所對應的該佇列中具有最高之該優先等級的第一有效路徑,以供該至少一行程與該遠端裝置通過該第一有效路徑互相傳送封包。 To solve the above problems, the present invention provides a multi-path channel network connection method, which is executed by at least one terminal device and at least one remote device, and includes the following steps: allowing the terminal device to collect multiple path information required for the terminal device to connect to the remote device from the terminal device itself and multiple relay servers; allowing the remote device to collect multiple path information required for the terminal device to connect to the remote device from the multiple relay servers; The remote device and the relay servers collect multiple path information required for the remote device to connect to the terminal device; the terminal device and the remote device transmit the path information to each other through a channel server, and each pair the path information to obtain multiple candidate paths; the terminal device checks whether each candidate path can connect to the The terminal device and the remote device select a plurality of valid paths that can connect the terminal device and the remote device from the waiting selection path, so as to add each of the valid paths to each queue in a plurality of queues, wherein each of the queues corresponds to one of a plurality of service types; the terminal device determines the priority of each of the valid paths in each queue according to the service type corresponding to each queue; and the terminal device selects a first valid path with the highest priority in the queue corresponding to the service type specified by the first connection initiated by at least one process executed by the terminal device, so that the at least one process and the remote device can transmit packets to each other through the first valid path.

本發明另提供一種電腦可讀取儲存媒體,係儲存複數指令,該等指令由終端裝置與遠端裝置讀取以執行上述之多重路徑通道網路連線方法。 The present invention also provides a computer-readable storage medium that stores multiple instructions, which are read by the terminal device and the remote device to execute the above-mentioned multi-path channel network connection method.

本發明又提供一種多重路徑通道網路連線系統,包括上述之至少一終端裝置與至少一遠端裝置,以對應執行上述之多重路徑通道網路連線方法。 The present invention also provides a multipath channel network connection system, including at least one terminal device and at least one remote device mentioned above, so as to execute the multipath channel network connection method mentioned above.

本發明的技術方案可以在終端裝置和遠端裝置之間建立多重路徑通道,以根據行程發起的連線所需的服務種類,在多重路徑中為該連線選取合適的路徑,進而提高終端裝置和遠端裝置之間的網路服務品質。 The technical solution of the present invention can establish a multi-path channel between the terminal device and the remote device, so as to select a suitable path for the connection among the multiple paths according to the type of service required by the connection initiated by the process, thereby improving the network service quality between the terminal device and the remote device.

10:多重路徑通道網路連線系統 10:Multi-path channel network connection system

11:終端裝置 11: Terminal device

12:遠端裝置 12: Remote device

13,14:防火牆 13,14: Firewall

15:網路 15: Internet

16:雲端界面伺服器 16: Cloud interface server

17:中繼伺服器 17: Relay server

18:通道伺服器 18: Channel Server

21~27,31~39,41~46,51~56:步驟 21~27,31~39,41~46,51~56: Steps

圖1為根據本發明一實施例的一種多重路徑通道網路連線系統的應用環境架構圖。 Figure 1 is an application environment architecture diagram of a multi-path channel network connection system according to an embodiment of the present invention.

圖2至圖5為根據本發明一實施例的一種多重路徑通道網路連線方法的流程圖。 Figures 2 to 5 are flow charts of a multi-path channel network connection method according to an embodiment of the present invention.

以下藉由特定的具體實施例說明本發明之實施方式,在本技術領域具有通常知識者可由本說明書所揭示之內容輕易地瞭解本發明之其他優點及功效。 The following is a specific embodiment to illustrate the implementation of the present invention. Those with ordinary knowledge in this technical field can easily understand other advantages and effects of the present invention from the content disclosed in this specification.

圖1為根據本發明一實施例的一種多重路徑通道網路連線系統10的應用環境架構圖。多重路徑通道網路連線系統10包括至少一終端裝置11與至少一遠端裝置12。終端裝置11可以是智慧型手機或電腦等電子裝置。遠端裝置12可以是電腦、伺服器或網路附接儲存器(network attached storage,NAS)等電子裝置。 FIG1 is an application environment architecture diagram of a multi-path channel network connection system 10 according to an embodiment of the present invention. The multi-path channel network connection system 10 includes at least one terminal device 11 and at least one remote device 12. The terminal device 11 can be an electronic device such as a smart phone or a computer. The remote device 12 can be an electronic device such as a computer, a server or a network attached storage (NAS).

在一實施例中,終端裝置11與遠端裝置12分別通過防火牆13、14與網路15通訊連接。此外,多重路徑通道網路連線系統10的應用環境中還設置有雲端界面伺服器16、至少一個中繼伺服器(relay server)17、以及通道伺服器(tunnel server)18,其中,雲端界面伺服器16、中繼伺服器17、以及通道伺服器18皆與網路15通訊連接。 In one embodiment, the terminal device 11 and the remote device 12 are connected to the network 15 through firewalls 13 and 14, respectively. In addition, a cloud interface server 16, at least one relay server 17, and a tunnel server 18 are also provided in the application environment of the multi-path channel network connection system 10, wherein the cloud interface server 16, the relay server 17, and the tunnel server 18 are all connected to the network 15.

在本實施例中,終端裝置11與遠端裝置12分別位於防火牆13、14的內側,而網路15、雲端界面伺服器16、中繼伺服器17、以及通道伺服器18位於防火牆13、14的外側。此外,防火牆13、14會阻擋從外側向內側 發起的連線(connection)或通訊,但允許從內側向外側發起的連線或通訊。因此,由於防火牆13、14的阻擋,終端裝置11與遠端裝置12不能直接與對方通訊,但能藉由中繼伺服器17或通道伺服器18而通過防火牆13、14與對方通訊。 In this embodiment, the terminal device 11 and the remote device 12 are located inside the firewalls 13 and 14, respectively, while the network 15, the cloud interface server 16, the relay server 17, and the channel server 18 are located outside the firewalls 13 and 14. In addition, the firewalls 13 and 14 block connections or communications initiated from the outside to the inside, but allow connections or communications initiated from the inside to the outside. Therefore, due to the blocking of the firewalls 13 and 14, the terminal device 11 and the remote device 12 cannot communicate with each other directly, but can communicate with each other through the firewalls 13 and 14 via the relay server 17 or the channel server 18.

圖2為根據本發明一實施例的一種多重路徑通道網路連線方法的通道建置流程圖。 Figure 2 is a channel construction flow chart of a multi-path channel network connection method according to an embodiment of the present invention.

首先,在步驟21,遠端裝置12向雲端界面伺服器16註冊,再與通道伺服器18連線。 First, in step 21, the remote device 12 registers with the cloud interface server 16 and then connects to the channel server 18.

在步驟22,終端裝置11向雲端界面伺服器16查詢遠端裝置12所在地區有哪些中繼伺服器。在本實施例中,遠端裝置12所在的地區設置有至少一個中繼伺服器17。因此,雲端界面伺服器16會將每一個中繼伺服器17的相關資訊傳送給終端裝置11。 In step 22, the terminal device 11 queries the cloud interface server 16 about which relay servers are in the area where the remote device 12 is located. In this embodiment, at least one relay server 17 is set up in the area where the remote device 12 is located. Therefore, the cloud interface server 16 will transmit the relevant information of each relay server 17 to the terminal device 11.

在步驟23,終端裝置11向雲端界面伺服器16查詢遠端裝置12所連線的通道伺服器,雲端界面伺服器16將遠端裝置12的通道伺服器資訊傳送給終端裝置11,藉此,終端裝置11可得知遠端裝置12與通道伺服器18連線。 In step 23, the terminal device 11 queries the cloud interface server 16 for the channel server to which the remote device 12 is connected. The cloud interface server 16 transmits the channel server information of the remote device 12 to the terminal device 11, thereby the terminal device 11 can know that the remote device 12 is connected to the channel server 18.

在步驟24,終端裝置11和遠端裝置12各自收集互相連通所需的路徑資訊,且互相傳送路徑資訊。詳言之,終端裝置11的路徑資訊為自終端裝置11連通遠端裝置12所需的路徑資訊,該路徑資訊可包括終端裝置11的至少一個本機網址(例如終端裝置11的網路界面的網址)、終端裝置11在防火牆13外側的至少一個公共網址、及/或每一個中繼伺服器17的使用資訊。此外,終端裝置11可以自終端裝置11本身收集終端裝置11的本機網址,且 自中繼伺服器17收集終端裝置11的公共網址與中繼伺服器17的使用資訊。完成路徑資訊的收集後,終端裝置11會將其路徑資訊通過通道伺服器18傳送至遠端裝置12。 In step 24, the terminal device 11 and the remote device 12 each collect path information required for mutual communication and transmit the path information to each other. Specifically, the path information of the terminal device 11 is the path information required for connecting from the terminal device 11 to the remote device 12, and the path information may include at least one local URL of the terminal device 11 (e.g., the URL of the network interface of the terminal device 11), at least one public URL of the terminal device 11 outside the firewall 13, and/or the usage information of each relay server 17. In addition, the terminal device 11 can collect the local URL of the terminal device 11 from the terminal device 11 itself, and collect the public URL of the terminal device 11 and the usage information of the relay server 17 from the relay server 17. After completing the collection of the path information, the terminal device 11 will transmit its path information to the remote device 12 through the channel server 18.

另一方面,遠端裝置12的路徑資訊為自遠端裝置12連通終端裝置11所需的路徑資訊,該路徑資訊可包括遠端裝置12的至少一個本機網址(例如遠端裝置12的網路界面的網址)、遠端裝置12在防火牆14外側的至少一個公共網址、及/或每一個中繼伺服器17的使用資訊。此外,遠端裝置12可以自遠端裝置12本身收集遠端裝置12的本機網址,且自中繼伺服器17收集遠端裝置12的公共網址與中繼伺服器17的使用資訊。完成路徑資訊的收集後,遠端裝置12會將其路徑資訊通過通道伺服器18傳送至終端裝置11。 On the other hand, the path information of the remote device 12 is the path information required for connecting the terminal device 11 from the remote device 12, and the path information may include at least one local URL of the remote device 12 (e.g., the URL of the network interface of the remote device 12), at least one public URL of the remote device 12 outside the firewall 14, and/or the usage information of each relay server 17. In addition, the remote device 12 can collect the local URL of the remote device 12 from the remote device 12 itself, and collect the public URL of the remote device 12 and the usage information of the relay server 17 from the relay server 17. After completing the collection of path information, the remote device 12 will transmit its path information to the terminal device 11 through the channel server 18.

在步驟25,終端裝置11與遠端裝置12各自將雙方的路徑資訊配對,以獲得複數候選路徑。由於終端裝置11與遠端裝置12會互相傳送封包,所以終端裝置11與遠端裝置12需要各自將雙方的路徑資訊配對,以各自產生候選路徑。 In step 25, the terminal device 11 and the remote device 12 each match the path information of both parties to obtain multiple candidate paths. Since the terminal device 11 and the remote device 12 will transmit packets to each other, the terminal device 11 and the remote device 12 need to each match the path information of both parties to generate candidate paths.

候選路徑有兩種,第一種候選路徑是由終端裝置11與遠端裝置12的本機網址與公共網址配對所產生,這種候選路徑的一端是終端裝置11的一個本機網址或公共網址,另一端是遠端裝置12的一個本機網址或公共網址。在一實施例中,如果終端裝置11的本機網址和公共網址的總數量為m,且遠端裝置12的本機網址和公共網址的總數量為n,則可以配對產生m*n個第一種候選路徑。此外,第二種候選路徑則是通過中繼伺服器17而連接終端裝置11與遠端裝置12的網路路徑。對於每一個中繼伺服器17,均會配對出 一個對應該中繼伺服器的第二種候選路徑,即通過該中繼伺服器而連接終端裝置11與遠端裝置12的網路路徑。 There are two types of candidate paths. The first type of candidate path is generated by pairing the local addresses and public addresses of the terminal device 11 and the remote device 12. One end of this candidate path is a local address or a public address of the terminal device 11, and the other end is a local address or a public address of the remote device 12. In one embodiment, if the total number of local addresses and public addresses of the terminal device 11 is m, and the total number of local addresses and public addresses of the remote device 12 is n, then m*n first type candidate paths can be paired and generated. In addition, the second type of candidate path is a network path connecting the terminal device 11 and the remote device 12 through the relay server 17. For each relay server 17, a second candidate path corresponding to the relay server is matched, that is, a network path connecting the terminal device 11 and the remote device 12 through the relay server.

在步驟26,終端裝置11檢查各候選路徑是否能連通終端裝置11與遠端裝置12,以在候選路徑中選取能連通終端裝置11與遠端裝置12的複數有效路徑。詳言之,對於每一個候選路徑,終端裝置11可通過該候選路徑向遠端裝置12傳送一個請求,且檢查是否在時限內收到遠端裝置12對於該請求之回應。 In step 26, the terminal device 11 checks whether each candidate path can connect the terminal device 11 and the remote device 12, so as to select multiple valid paths that can connect the terminal device 11 and the remote device 12 from the candidate paths. In detail, for each candidate path, the terminal device 11 can send a request to the remote device 12 through the candidate path, and check whether a response to the request from the remote device 12 is received within a time limit.

如果終端裝置11沒有在時限內收到遠端裝置12對於的回應,則判定該候選路徑不能連通終端裝置11與遠端裝置12,因此,該候選路徑不會被選取為有效路徑。反之,如果終端裝置11在時限內收到遠端裝置12的回應,則會在一段預設時間後再次通過該候選路徑向遠端裝置12傳送請求,且檢查是否在時限內收到遠端裝置12對於第二次請求之回應。 If the terminal device 11 does not receive a response from the remote device 12 within the time limit, it is determined that the candidate path cannot connect the terminal device 11 and the remote device 12, so the candidate path will not be selected as a valid path. On the contrary, if the terminal device 11 receives a response from the remote device 12 within the time limit, it will send a request to the remote device 12 again through the candidate path after a preset time, and check whether the response to the second request from the remote device 12 is received within the time limit.

如果終端裝置11沒有在時限內收到遠端裝置12對於第二次請求的回應,則判定該候選路徑不能連通終端裝置11與遠端裝置12,因此,該候選路徑不會被選取為有效路徑。反之,如果終端裝置11在時限內收到遠端裝置12對於第二次請求的回應,則判定該候選路徑能連通終端裝置11與遠端裝置12。 If the terminal device 11 does not receive a response from the remote device 12 to the second request within the time limit, it is determined that the candidate path cannot connect the terminal device 11 and the remote device 12, and therefore, the candidate path will not be selected as a valid path. On the contrary, if the terminal device 11 receives a response from the remote device 12 to the second request within the time limit, it is determined that the candidate path can connect the terminal device 11 and the remote device 12.

對於前述的第一種候選路徑,終端裝置11會在能連通終端裝置11與遠端裝置12的所有第一種候選路徑中,選取具有最高優先權的一個候選路徑,作為有效路徑,其餘的第一種候選路徑則不會被選取為有效路徑。由於本機網址的優先順序在公共網址之前,因此,終端裝置11會在能連通終端裝置11與遠端裝置12的所有第一種候選路徑中,優先選取兩端均為本機 網址的一個候選路徑,即一端為終端裝置11的本機網址且另一端為遠端裝置12的本機網址的候選路徑,作為有效路徑。 For the aforementioned first candidate path, the terminal device 11 will select a candidate path with the highest priority from all the first candidate paths that can connect the terminal device 11 and the remote device 12 as a valid path, and the remaining first candidate paths will not be selected as valid paths. Since the priority of the local URL is before the public URL, the terminal device 11 will prioritize a candidate path with both ends being local URLs, that is, a candidate path with one end being the local URL of the terminal device 11 and the other end being the local URL of the remote device 12, from all the first candidate paths that can connect the terminal device 11 and the remote device 12 as a valid path.

如果沒有兩端均為本機網址的候選路徑可供選取,則終端裝置11會在能連通終端裝置11與遠端裝置12的所有第一種候選路徑中,選取一端為本機網址且另一端為公共網址的一個候選路徑,作為有效路徑。 If there is no candidate path with both ends being local URLs available for selection, the terminal device 11 will select a candidate path with one end being a local URL and the other end being a public URL from all first-type candidate paths that can connect the terminal device 11 and the remote device 12 as a valid path.

如果沒有一端為本機網址且另一端為公共網址的候選路徑可供選取,則終端裝置11會在能連通終端裝置11與遠端裝置12的所有第一種候選路徑中,選取兩端均為公共網址的一個候選路徑,作為有效路徑。 If there is no candidate path with one end being a local URL and the other end being a public URL available for selection, the terminal device 11 will select a candidate path with both ends being public URLs from all first-type candidate paths that can connect the terminal device 11 and the remote device 12 as a valid path.

對於前述的每一個第二種候選路徑,終端裝置11會用上述的請求與回應方式檢查該候選路徑是否能通過該候選路徑所對應的中繼伺服器17而連通終端裝置11與遠端裝置12,如果該候選路徑能通過該中繼伺服器17連通終端裝置11與遠端裝置12,則終端裝置11選取該候選路徑作為有效路徑。 For each of the aforementioned second candidate paths, the terminal device 11 will use the aforementioned request and response method to check whether the candidate path can connect the terminal device 11 and the remote device 12 through the relay server 17 corresponding to the candidate path. If the candidate path can connect the terminal device 11 and the remote device 12 through the relay server 17, the terminal device 11 selects the candidate path as a valid path.

承上所述,如果終端裝置11與遠端裝置12均具有本機網址及/或公共網址,且圖1的應用環境中設置有N個中繼伺服器17(N為正整數),則終端裝置11最多能配對並選取1個第一種有效路徑及N個第二種有效路徑,總共為1+N個有效路徑。 As mentioned above, if both the terminal device 11 and the remote device 12 have local URLs and/or public URLs, and N relay servers 17 (N is a positive integer) are set in the application environment of FIG1 , the terminal device 11 can match and select at most 1 first type valid path and N second type valid paths, for a total of 1+N valid paths.

上述的候選路徑和有效路徑並非諸如傳輸控制協定(Transmission Control Protocol,TCP)連線的網路連線,而是可供諸如用戶資料報協定(User Datagram Protocol,UDP)封包的無連線封包通過的網路路徑。另外,由於圖1的實施例中設置有防火牆13、14,所以每一個有效路徑均為能通過防火牆13、14而連通終端裝置11與遠端裝置12的網路路徑。 The candidate paths and valid paths mentioned above are not network connections such as Transmission Control Protocol (TCP) connections, but network paths through which connectionless packets such as User Datagram Protocol (UDP) packets can pass. In addition, since firewalls 13 and 14 are provided in the embodiment of FIG. 1 , each valid path is a network path that can pass through firewalls 13 and 14 to connect the terminal device 11 and the remote device 12.

在步驟27,終端裝置11將每一個有效路徑加入複數佇列(queue)中的每一個佇列,其中,每一個佇列均對應一個不同的服務種類,例如高通量(high throughput)、低延遲(low latency)或其他服務種類。這些有效路徑可構成終端裝置11和遠端裝置12之間的多重路徑通道。此外,每一個佇列係一行程需求獨立事件,在一實施例中,相同應用程式係依據不同行程需求而需要選擇不同路徑。 In step 27, the terminal device 11 adds each valid path to each queue in a plurality of queues, wherein each queue corresponds to a different service type, such as high throughput, low latency, or other service types. These valid paths may constitute a multi-path channel between the terminal device 11 and the remote device 12. In addition, each queue is an independent event of a travel demand. In one embodiment, the same application needs to select different paths according to different travel demands.

完成圖2的通道建置流程後,接著可執行圖3所示的流程。圖3為根據本發明一實施例的一種多重路徑通道網路連線方法的路徑綁定流程圖。 After completing the channel establishment process of Figure 2, the process shown in Figure 3 can be executed. Figure 3 is a path binding flow chart of a multi-path channel network connection method according to an embodiment of the present invention.

首先,在步驟31,終端裝置11開始測量各有效路徑的延遲時間(細節後述)。 First, in step 31, the terminal device 11 starts measuring the delay time of each valid path (details will be described later).

在步驟32,終端裝置11會開設一個埠(port),例如傳輸控制協定埠(TCP port),然後等待終端裝置11執行的行程(process)發起連線。終端裝置11的作業系統可執行至少一個行程。當有終端裝置11的行程需要發送請求給遠端裝置12時,不會直接發起連接遠端裝置12的連線,而是會發起連接該埠的連線,以利用根據圖2流程建置的多重路徑通道。 In step 32, the terminal device 11 opens a port, such as a TCP port, and then waits for the process executed by the terminal device 11 to initiate a connection. The operating system of the terminal device 11 can execute at least one process. When a process of the terminal device 11 needs to send a request to the remote device 12, it will not directly initiate a connection to the remote device 12, but will initiate a connection to the port to utilize the multipath channel established according to the process of Figure 2.

在步驟33,終端裝置11檢查該連線所指定的服務種類。若該連線指定高通量服務,則流程進入步驟34,若該連線指定低延遲服務,則流程進入步驟36。 In step 33, the terminal device 11 checks the service type specified by the connection. If the connection specifies a high-throughput service, the process proceeds to step 34; if the connection specifies a low-latency service, the process proceeds to step 36.

在步驟34,終端裝置11選取該連線所指定的高通量服務所對應的高通量佇列中具有最高優先等級(細節後述)的有效路徑,即位於高通量佇列的頭端的有效路徑。 In step 34, the terminal device 11 selects the valid path with the highest priority (details to be described later) in the high-throughput queue corresponding to the high-throughput service specified by the connection, that is, the valid path at the head end of the high-throughput queue.

在步驟35,終端裝置11開始測量被選取的該有效路徑的網路通量(細節後述),接著,流程進入步驟37。 In step 35, the terminal device 11 starts measuring the network throughput of the selected valid path (details will be described later), and then the process enters step 37.

另一方面,在步驟36,終端裝置11選取該連線所指定的低延遲服務所對應的低延遲佇列中具有最高優先等級的有效路徑,即位於低延遲佇列的頭端的有效路徑,接著,流程進入步驟37。 On the other hand, in step 36, the terminal device 11 selects the valid path with the highest priority in the low-latency queue corresponding to the low-latency service specified by the connection, that is, the valid path at the head end of the low-latency queue, and then the process enters step 37.

在步驟37,終端裝置11將被選取的該有效路徑與上述行程發起的該連線綁定。 In step 37, the terminal device 11 binds the selected valid path to the connection initiated by the above process.

在步驟38,由於上述的綁定,終端裝置11的該行程會通過該有效路徑和遠端裝置12互相傳送該連線的封包,例如該行程的請求的封包和遠端裝置12的回應的封包。 In step 38, due to the above binding, the process of the terminal device 11 will transmit packets of the connection to and from the remote device 12 via the effective path, such as the request packet of the process and the response packet of the remote device 12.

該行程可以通過該連線和被選取的該有效路徑向遠端裝置12發出複數請求。 The process can send multiple requests to the remote device 12 through the connection and the selected valid path.

例如,遠端裝置12可以是網頁伺服器,且該行程的請求可以是超文本傳輸協定(HyperText Transfer Protocol,HTTP)請求,以供終端裝置11的使用者瀏覽網頁。又例如,遠端裝置12可以是資料庫伺服器,且該行程的請求可以是存取資料的請求。再例如,遠端裝置12可以是網路附接儲存器(NAS),且該行程的請求可以是寫入、讀取或刪除遠端裝置12所儲存的檔案的請求。若該行程已經不再發出請求,則在步驟39,終端裝置11關閉該連線,並解除該連線與該有效路徑的綁定。 For example, the remote device 12 may be a web server, and the request of the process may be a HyperText Transfer Protocol (HTTP) request for the user of the terminal device 11 to browse the web. For another example, the remote device 12 may be a database server, and the request of the process may be a request to access data. For another example, the remote device 12 may be a network attached storage (NAS), and the request of the process may be a request to write, read or delete a file stored in the remote device 12. If the process no longer issues a request, then in step 39, the terminal device 11 closes the connection and unbinds the connection from the valid path.

然後,流程返回步驟32,以等待終端裝置11的行程發起的下一個連線。如果終端裝置11所執行的行程發起複數連線,且這些連線分別指定不同的服務種類,則終端裝置11會在這些服務種類所對應的佇列之間切 換,以為每一個連線選取該連線所指定的服務種類所對應的佇列中具有最高優先等級的有效路徑,且將該有效路徑與該連線綁定。 Then, the process returns to step 32 to wait for the next connection initiated by the process of the terminal device 11. If the process executed by the terminal device 11 initiates multiple connections, and these connections specify different service types, the terminal device 11 will switch between the queues corresponding to these service types to select the valid path with the highest priority in the queue corresponding to the service type specified by the connection for each connection, and bind the valid path to the connection.

終端裝置11會根據每一個佇列所對應的服務種類決定每一個佇列中的每一個有效路徑的優先等級。詳言之,每一個佇列的服務種類均有相應的品質數值,例如,高通量服務所對應的品質數值為網路通量,而低延遲服務所對應的品質數值為延遲時間。 The terminal device 11 determines the priority of each valid path in each queue according to the service type corresponding to each queue. In detail, the service type of each queue has a corresponding quality value. For example, the quality value corresponding to the high-throughput service is the network throughput, and the quality value corresponding to the low-latency service is the delay time.

對於每一個佇列,終端裝置11會測量該佇列中的每一個有效路徑的品質數值,且根據該佇列中的有效路徑的品質數值決定該佇列中的有效路徑的優先等級,該佇列中的有效路徑的優先等級與品質數值成正比或成反比。例如,在高通量佇列中,各有效路徑的優先等級與其品質數值成正比,即網路通量愈大則優先等級愈高。在低延遲佇列中,各有效路徑的優先等級則與其品質數值成反比,即延遲時間愈短則優先等級愈高。 For each queue, the terminal device 11 measures the quality value of each valid path in the queue, and determines the priority of the valid path in the queue according to the quality value of the valid path in the queue. The priority of the valid path in the queue is proportional to or inversely proportional to the quality value. For example, in a high-throughput queue, the priority of each valid path is proportional to its quality value, that is, the greater the network throughput, the higher the priority. In a low-latency queue, the priority of each valid path is inversely proportional to its quality value, that is, the shorter the delay time, the higher the priority.

以低延遲服務為例,圖4為根據本發明一實施例的一種多重路徑通道網路連線方法的測量有效路徑的延遲時間的流程圖,即圖3中步驟31的流程圖。對於每一個有效路徑,終端裝置11會定期為該有效路徑執行圖4流程。 Taking low-latency service as an example, FIG4 is a flow chart of measuring the delay time of an effective path in a multi-path channel network connection method according to an embodiment of the present invention, i.e., the flow chart of step 31 in FIG3. For each effective path, the terminal device 11 will periodically execute the process of FIG4 for the effective path.

首先,在步驟41,終端裝置11檢查該有效路徑是否仍然能連通終端裝置11和遠端裝置12,如果已經不連通,則流程進入步驟42,如果仍然連通,則流程進入步驟43。 First, in step 41, the terminal device 11 checks whether the valid path can still connect the terminal device 11 and the remote device 12. If it is no longer connected, the process enters step 42. If it is still connected, the process enters step 43.

在步驟42,終端裝置11自每一個佇列移除該有效路徑。 In step 42, the terminal device 11 removes the valid path from each queue.

在步驟43,終端裝置11通過該有效路徑向遠端裝置12傳送一個封包,例如心跳封包(heartbeat packet)。 In step 43, the terminal device 11 transmits a packet, such as a heartbeat packet, to the remote device 12 via the effective path.

在步驟44,終端裝置11通過該有效路徑接收遠端裝置12對該封包的回應。 In step 44, the terminal device 11 receives a response to the packet from the remote device 12 via the effective path.

在步驟45,終端裝置11計算該封包的往返時間(round trip time),即自終端裝置11送出該封包開始至接收到該回應為止的時間長度,該時間長度即該有效路徑的延遲時間。 In step 45, the terminal device 11 calculates the round trip time of the packet, that is, the length of time from when the terminal device 11 sends the packet to when it receives the response. This length of time is the delay time of the effective path.

在步驟46,終端裝置11根據該延遲時間更新該有效路徑的優先等級。詳言之,終端裝置11會根據每一個有效路徑的延遲時間,在低延遲佇列中為全部的有效路徑重新排序,重新排序之後,具有最短延遲時間的有效路徑會位於低延遲佇列的頭端,即具有最高優先等級,而具有最長延遲時間的有效路徑則會位於低延遲佇列的尾端,即具有最低優先等級。 In step 46, the terminal device 11 updates the priority of the valid path according to the delay time. Specifically, the terminal device 11 reorders all valid paths in the low delay queue according to the delay time of each valid path. After the reordering, the valid path with the shortest delay time will be located at the head of the low delay queue, i.e., it has the highest priority, and the valid path with the longest delay time will be located at the tail of the low delay queue, i.e., it has the lowest priority.

對於在圖2的步驟27中新加入低延遲佇列的有效路徑,終端裝置11會將該有效路徑的延遲時間設為終端裝置11的作業系統所允許的最大整數,且將該有效路徑置於低延遲佇列的尾端,以使新加入的有效路徑均具有最低優先等級。 For the valid path newly added to the low latency queue in step 27 of FIG. 2 , the terminal device 11 will set the delay time of the valid path to the maximum integer allowed by the operating system of the terminal device 11 and place the valid path at the end of the low latency queue so that the newly added valid paths all have the lowest priority.

再以高通量服務為例,圖5為根據本發明一實施例的一種多重路徑通道網路連線方法的測量有效路徑的網路通量的流程圖,即圖3中步驟35的流程圖。對於在圖3的步驟34中被選取的有效路徑,終端裝置11會為該有效路徑執行圖5流程。有效路徑的網路通量有一段預設的測量時間,例如十秒鐘,在高通量佇列中的有效路徑每一次被選取後,僅在這一段測量時間中測量其網路通量。 Taking high-throughput service as an example, FIG5 is a flow chart of measuring the network flux of an effective path in a multi-path channel network connection method according to an embodiment of the present invention, i.e., the flow chart of step 35 in FIG3. For the effective path selected in step 34 of FIG3, the terminal device 11 will execute the process of FIG5 for the effective path. The network flux of the effective path has a preset measurement time, such as ten seconds. After each effective path in the high-throughput queue is selected, its network flux is measured only during this measurement time.

以下說明圖5流程,首先,在步驟51,終端裝置11累計終端裝置11通過該有效路徑傳送與接收的資料量,並累計終端裝置11通過該有 效路徑傳送封包及接收封包的持續時間,其中,前述的資料量與持續時間皆是將傳送與接收合併累計。 The following is an explanation of the process of Figure 5. First, in step 51, the terminal device 11 accumulates the amount of data transmitted and received by the terminal device 11 through the effective path, and accumulates the duration of the terminal device 11 transmitting packets and receiving packets through the effective path. The aforementioned amount of data and duration are accumulated by combining transmission and reception.

在步驟52,終端裝置11檢查該有效路徑的該測量時間是否已經結束,若已經結束,則流程進入步驟53,否則,流程返回步驟51,繼續累計前述的資料量與持續時間。 In step 52, the terminal device 11 checks whether the measurement time of the effective path has ended. If it has ended, the process enters step 53. Otherwise, the process returns to step 51 and continues to accumulate the aforementioned data volume and duration.

在步驟53,終端裝置11檢查此次測量是否有效。如果該資料量大於預設的門檻值且該持續時間大於另一個預設的門檻值,則終端裝置11判定此次測量有效,且流程進入步驟54,否則,終端裝置11判定此次測量無效,且流程進入步驟56。 In step 53, the terminal device 11 checks whether the measurement is valid. If the data volume is greater than a preset threshold value and the duration is greater than another preset threshold value, the terminal device 11 determines that the measurement is valid, and the process enters step 54. Otherwise, the terminal device 11 determines that the measurement is invalid, and the process enters step 56.

在步驟54,終端裝置11計算該有效路徑的網路通量。例如,該網路通量可以等於該資料量除以該持續時間。 In step 54, the terminal device 11 calculates the network throughput of the effective path. For example, the network throughput may be equal to the data volume divided by the duration.

在步驟55,終端裝置11根據該網路通量更新該有效路徑的優先等級。詳言之,終端裝置11會根據每一個有效路徑的網路通量,在高通量佇列中為全部的有效路徑重新排序,重新排序之後,具有最大網路通量的有效路徑會位於高通量佇列的頭端,即具有最高優先等級,而具有最小網路通量的有效路徑則會位於高通量佇列的尾端,即具有最低優先等級。 In step 55, the terminal device 11 updates the priority of the valid path according to the network flux. In detail, the terminal device 11 will reorder all valid paths in the high-throughput queue according to the network flux of each valid path. After reordering, the valid path with the largest network flux will be located at the head of the high-throughput queue, that is, it has the highest priority, and the valid path with the smallest network flux will be located at the end of the high-throughput queue, that is, it has the lowest priority.

對於在圖2的步驟27中新加入高通量佇列的有效路徑,終端裝置11會將該有效路徑的網路通量設為終端裝置11的作業系統所允許的最大整數,且將該有效路徑置於高通量佇列的頭端,以使新加入的有效路徑均具有最高優先等級。 For the valid path newly added to the high-throughput queue in step 27 of FIG. 2 , the terminal device 11 will set the network throughput of the valid path to the maximum integer allowed by the operating system of the terminal device 11 and place the valid path at the head of the high-throughput queue so that the newly added valid path has the highest priority.

在步驟56,終端裝置11將該有效路徑的網路通量減一,再以和步驟55相同的方式在高通量佇列中為全部的有效路徑重新排序,以降低該有效路徑的優先等級。 In step 56, the terminal device 11 reduces the network throughput of the valid path by one, and then reorders all valid paths in the high-throughput queue in the same manner as step 55 to reduce the priority of the valid path.

在一實施例中,本發明另提供一種電腦可讀取儲存媒體,例如至少一個集中或分散的記憶體、軟碟、硬碟或光碟。該電腦可讀取儲存媒體可儲存複數指令,這些指令可由終端裝置11與遠端裝置12讀取以執行上述之多重路徑通道網路連線方法。 In one embodiment, the present invention further provides a computer-readable storage medium, such as at least one centralized or distributed memory, floppy disk, hard disk or optical disk. The computer-readable storage medium can store a plurality of instructions, which can be read by the terminal device 11 and the remote device 12 to execute the above-mentioned multi-path channel network connection method.

圖1所示的應用環境中設置有兩個防火牆13、14,但本發明不限於此。在另一實施例中,可以省略防火牆13、14中的一個或兩個防火牆。或者,可以僅設置一個防火牆,且終端裝置11和遠端裝置12可以同處於該防火牆的內側。在又一個實施例中,多重路徑通道網路連線系統10可以包括複數終端裝置11和/或複數遠端裝置12。 In the application environment shown in FIG. 1 , two firewalls 13 and 14 are provided, but the present invention is not limited thereto. In another embodiment, one or both of the firewalls 13 and 14 may be omitted. Alternatively, only one firewall may be provided, and the terminal device 11 and the remote device 12 may be located inside the firewall. In another embodiment, the multi-path channel network connection system 10 may include a plurality of terminal devices 11 and/or a plurality of remote devices 12.

綜上所述,本發明的技術方案可以在終端裝置和遠端裝置之間建立多重路徑通道,且能根據行程發起的連線所需的服務種類,在多重路徑中為該連線選取合適的路徑,以提高終端裝置和遠端裝置之間的網路服務品質。 In summary, the technical solution of the present invention can establish a multi-path channel between a terminal device and a remote device, and can select a suitable path for the connection among the multiple paths according to the type of service required by the connection initiated by the process, so as to improve the network service quality between the terminal device and the remote device.

上述實施形態僅例示性說明本發明之原理及其功效,而非用於限制本發明。任何在本技術領域具有通常知識者均可在不違背本發明之精神及範疇下,對上述實施形態進行修飾與改變。因此,本發明之權利保護範圍,應如後述之申請專利範圍所列。 The above implementation forms are only illustrative of the principles and effects of the present invention, and are not intended to limit the present invention. Anyone with common knowledge in this technical field may modify and change the above implementation forms without violating the spirit and scope of the present invention. Therefore, the scope of protection of the present invention should be as listed in the scope of the patent application described below.

10:多重路徑通道網路連線系統 10:Multi-path channel network connection system

11:終端裝置 11: Terminal device

12:遠端裝置 12: Remote device

13,14:防火牆 13,14: Firewall

15:網路 15: Internet

16:雲端界面伺服器 16: Cloud interface server

17:中繼伺服器 17: Relay server

18:通道伺服器 18: Channel Server

Claims (9)

一種多重路徑通道網路連線方法,係由至少一終端裝置與至少一遠端裝置執行,該方法包括下列步驟:令該終端裝置自該終端裝置本身與複數中繼伺服器收集自該終端裝置連通該遠端裝置所需之複數路徑資訊;令該遠端裝置自該遠端裝置本身與該等中繼伺服器收集自該遠端裝置連通該終端裝置所需之複數路徑資訊;令該終端裝置與該遠端裝置通過一通道伺服器互相傳送該等路徑資訊,以各自將該等路徑資訊配對而獲得複數候選路徑;令該終端裝置檢查各該候選路徑是否能連通該終端裝置與該遠端裝置,以在該等候選路徑中選取能連通該終端裝置與該遠端裝置之複數有效路徑,俾將各該有效路徑加入複數佇列中之每一佇列,其中,各該佇列均對應複數服務種類中之一者;令該終端裝置根據各該佇列所對應之該服務種類,決定各該佇列中之各該有效路徑的優先等級;令該終端裝置選取該終端裝置所執行之至少一行程所發起的第一連線所指定之該服務種類所對應的該佇列中具有最高之該優先等級的第一有效路徑,以供該至少一行程與該遠端裝置通過該第一有效路徑互相傳送封包;以及令該終端裝置選取該至少一行程所發起之第二連線所指定的該服務種類所對應之該佇列中具有最高的該優先等級之第二有效路徑,以供該至少一行 程與該遠端裝置通過該第二有效路徑互相傳送封包,其中,該第一連線與該第二連線分別指定不同佇列之不同服務種類。 A multi-path channel network connection method is performed by at least one terminal device and at least one remote device, and the method includes the following steps: allowing the terminal device to collect multiple path information required for the terminal device to connect to the remote device from the terminal device itself and multiple relay servers; allowing the remote device to collect multiple path information required for the remote device to connect to the terminal device from the remote device itself and the relay servers ; allowing the terminal device and the remote device to mutually transmit the path information through a channel server, so as to respectively match the path information to obtain a plurality of candidate paths; allowing the terminal device to check whether each of the candidate paths can connect the terminal device and the remote device, so as to select a plurality of valid paths that can connect the terminal device and the remote device from the waiting paths, so as to add each of the valid paths to each queue in the plurality of queues, Each of the queues corresponds to one of a plurality of service types; the terminal device determines the priority of each of the valid paths in each of the queues according to the service type corresponding to each of the queues; the terminal device selects the first valid path with the highest priority in the queue corresponding to the service type specified by the first connection initiated by at least one process executed by the terminal device, so as to provide the first valid path for the at least one process to communicate with the remote The terminal device transmits packets to each other through the first effective path; and the terminal device selects the second effective path with the highest priority in the queue corresponding to the service type specified by the second connection initiated by the at least one process, so that the at least one process and the remote device can transmit packets to each other through the second effective path, wherein the first connection and the second connection respectively specify different service types of different queues. 如請求項1所述之多重路徑通道網路連線方法,其中,該終端裝置之該等路徑資訊包括自該終端裝置本身收集之至少一本機網址與自該等中繼伺服器收集之至少一公共網址,及/或該遠端裝置之該等路徑資訊包括自該遠端裝置本身收集之至少一本機網址與自該等中繼伺服器收集之至少一公共網址。 The multi-path channel network connection method as described in claim 1, wherein the path information of the terminal device includes at least one local URL collected from the terminal device itself and at least one public URL collected from the relay servers, and/or the path information of the remote device includes at least one local URL collected from the remote device itself and at least one public URL collected from the relay servers. 如請求項2所述之多重路徑通道網路連線方法,其中,該等本機網址之優先順序在該等公共網址之前,而該等有效路徑中之一者係根據該優先順序而選取自該等本機網址與該等公共網址配對所得之候選路徑。 A multi-path channel network connection method as described in claim 2, wherein the priority of the local URLs is before the public URLs, and one of the valid paths is selected from the candidate paths obtained by matching the local URLs with the public URLs according to the priority. 如請求項1所述之多重路徑通道網路連線方法,其中,該終端裝置之該等路徑資訊包括各該中繼伺服器之使用資訊,該遠端裝置之該等路徑資訊亦包括各該中繼伺服器之使用資訊,而對於各該中繼伺服器,該等候選路徑均包括通過該中繼伺服器而連接該終端裝置與該遠端裝置之網路路徑。 The multi-path channel network connection method as described in claim 1, wherein the path information of the terminal device includes the usage information of each relay server, and the path information of the remote device also includes the usage information of each relay server, and for each relay server, the waiting path includes the network path connecting the terminal device and the remote device through the relay server. 如請求項1所述之多重路徑通道網路連線方法,其中,對於各該候選路徑,該多重路徑通道網路連線方法復包括下列步驟:令該終端裝置通過該候選路徑向該遠端裝置傳送至少一請求,以檢查是否在時限內收到該遠端裝置對於各該請求之回應,其中,若該終端裝置在該時限內收到各該請求之該回應,則判定該候選路徑能連通該終端裝置與該遠端裝置。 The multipath channel network connection method as described in claim 1, wherein, for each candidate path, the multipath channel network connection method further comprises the following steps: allowing the terminal device to send at least one request to the remote device through the candidate path to check whether a response to each request from the remote device is received within a time limit, wherein if the terminal device receives the response to each request within the time limit, it is determined that the candidate path can connect the terminal device and the remote device. 如請求項1所述之多重路徑通道網路連線方法,其中,該終端裝置與該遠端裝置之間設置有至少一防火牆,而各該有效路徑係能通過該至少一防火牆而連通該終端裝置與該遠端裝置之網路路徑。 A multi-path channel network connection method as described in claim 1, wherein at least one firewall is provided between the terminal device and the remote device, and each of the effective paths is a network path that can connect the terminal device and the remote device through the at least one firewall. 如請求項1所述之多重路徑通道網路連線方法,其中,各該佇列之該服務種類均有相應的品質數值,而對於各該佇列,該多重路徑通道網路連線方法復包括下列步驟:令該終端裝置測量該佇列中之各該有效路徑的該品質數值,以根據該等品質數值決定該佇列中之該等有效路徑的該等優先等級,其中,該佇列中之該等有效路徑的該等優先等級與該等品質數值係成正比或成反比。 The multipath channel network connection method as described in claim 1, wherein the service type of each queue has a corresponding quality value, and for each queue, the multipath channel network connection method further includes the following steps: allowing the terminal device to measure the quality value of each valid path in the queue to determine the priorities of the valid paths in the queue according to the quality values, wherein the priorities of the valid paths in the queue are proportional or inversely proportional to the quality values. 一種電腦可讀取儲存媒體,係儲存複數指令,該等指令由終端裝置與遠端裝置讀取以執行如請求項1至7之任一者所述之多重路徑通道網路連線方法。 A computer-readable storage medium stores a plurality of instructions, which are read by a terminal device and a remote device to execute a multi-path channel network connection method as described in any one of claims 1 to 7. 一種多重路徑通道網路連線系統,包括:至少一終端裝置,係用於自該終端裝置本身與複數中繼伺服器收集自該終端裝置連通該遠端裝置所需之複數路徑資訊;至少一遠端裝置,係用用於自該遠端裝置本身與該等中繼伺服器收集自該遠端裝置連通該終端裝置所需之複數路徑資訊;以及一通道伺服器,其中,該終端裝置與該遠端裝置復用於通過該通道伺服器互相傳送該等路徑資訊,以各自將該等路徑資訊配對而獲得複數候選路徑,該終端裝置復用於: 檢查各該候選路徑是否能連通該終端裝置與該遠端裝置,以在該等候選路徑中選取能連通該終端裝置與該遠端裝置之複數有效路徑,俾將各該有效路徑加入複數佇列中之每一佇列,其中,各該佇列均對應複數服務種類中之一者;根據各該佇列所對應之該服務種類,決定各該佇列中之各該有效路徑的優先等級;選取該終端裝置所執行之至少一行程所發起的第一連線所指定之該服務種類所對應的該佇列中具有最高之該優先等級的第一有效路徑,以供該至少一行程與該遠端裝置通過該第一有效路徑互相傳送封包;以及選取該至少一行程所發起之第二連線所指定的該服務種類所對應之該佇列中具有最高的該優先等級之第二有效路徑,以供該至少一行程與該遠端裝置通過該第二有效路徑互相傳送封包,其中,該第一連線與該第二連線分別指定不同佇列之不同服務種類。 A multi-path channel network connection system includes: at least one terminal device, which is used to collect multiple path information required for the terminal device to connect to the remote device from the terminal device itself and multiple relay servers; at least one remote device, which is used to collect multiple path information required for the remote device to connect to the terminal device from the remote device itself and the relay servers; and a channel server, wherein The terminal device and the remote device are multiplexed to mutually transmit the path information through the channel server, so as to respectively match the path information to obtain multiple candidate paths. The terminal device is multiplexed to: Check whether each candidate path can connect the terminal device and the remote device, so as to select multiple valid paths that can connect the terminal device and the remote device from the waiting paths, so as to add each valid path to the multiple Each of the queues corresponds to one of a plurality of service types; determining the priority of each valid path in each queue according to the service type to which each queue corresponds; selecting a first valid path with the highest priority in the queue corresponding to the service type specified by the first connection initiated by at least one process executed by the terminal device, so as to provide the first valid path to the at least one process; Transmit packets to and from the remote device via the first valid path; and select the second valid path with the highest priority in the queue corresponding to the service type specified by the second connection initiated by the at least one process, so that the at least one process and the remote device can transmit packets to and from each other via the second valid path, wherein the first connection and the second connection specify different service types of different queues, respectively.
TW112121070A 2023-06-06 2023-06-06 System and method for network connection via multi-path tunnel and computer-readable storage medium TWI873672B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW112121070A TWI873672B (en) 2023-06-06 2023-06-06 System and method for network connection via multi-path tunnel and computer-readable storage medium
CN202310829997.0A CN119094431A (en) 2023-06-06 2023-07-07 Multi-path channel network connection system, method and computer readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW112121070A TWI873672B (en) 2023-06-06 2023-06-06 System and method for network connection via multi-path tunnel and computer-readable storage medium

Publications (2)

Publication Number Publication Date
TW202450360A TW202450360A (en) 2024-12-16
TWI873672B true TWI873672B (en) 2025-02-21

Family

ID=93691436

Family Applications (1)

Application Number Title Priority Date Filing Date
TW112121070A TWI873672B (en) 2023-06-06 2023-06-06 System and method for network connection via multi-path tunnel and computer-readable storage medium

Country Status (2)

Country Link
CN (1) CN119094431A (en)
TW (1) TWI873672B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110080897A1 (en) * 2006-07-14 2011-04-07 Raytheon Company Communications resource management
CN102271058A (en) * 2011-08-09 2011-12-07 中兴通讯股份有限公司 Multi-path service protecting method and device
US20180287640A1 (en) * 2017-03-29 2018-10-04 Qualcomm Incorporated List management for parallel operations of polar codes
US20180323810A1 (en) * 2017-05-05 2018-11-08 Qualcomm Incorporated Early-termination techniques for polar list decoders
TW201843939A (en) * 2017-05-04 2018-12-16 美商高通公司 Polarization code for uplink control information
TW202001611A (en) * 2018-06-27 2020-01-01 國立清華大學 Reliability evaluating method for multi-state flow network and system thereof

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110080897A1 (en) * 2006-07-14 2011-04-07 Raytheon Company Communications resource management
CN102271058A (en) * 2011-08-09 2011-12-07 中兴通讯股份有限公司 Multi-path service protecting method and device
US20180287640A1 (en) * 2017-03-29 2018-10-04 Qualcomm Incorporated List management for parallel operations of polar codes
TW201843939A (en) * 2017-05-04 2018-12-16 美商高通公司 Polarization code for uplink control information
US20180323810A1 (en) * 2017-05-05 2018-11-08 Qualcomm Incorporated Early-termination techniques for polar list decoders
TW202001611A (en) * 2018-06-27 2020-01-01 國立清華大學 Reliability evaluating method for multi-state flow network and system thereof

Also Published As

Publication number Publication date
TW202450360A (en) 2024-12-16
CN119094431A (en) 2024-12-06

Similar Documents

Publication Publication Date Title
Shreedhar et al. Evaluating QUIC performance over web, cloud storage, and video workloads
US11522734B2 (en) Method for controlling a remote service access path and relevant device
EP3907955B1 (en) Data transmission method and apparatus, computer readable medium, and electronic device
KR101037020B1 (en) System and method for selecting a data provider
CN110875915B (en) Data transmission method and device
CN111817977B (en) A network congestion control method and device
US8326984B1 (en) Selective compression for network connections
JP5081308B2 (en) Method for determining network proximity for global traffic load balancing using passive TCP performance measurement
CN111372323B (en) Connection establishment method, related device and medium
US20140149580A1 (en) Techniques for accounting for multiple transactions in a transport control protocol (tcp) payload
US20040172470A1 (en) IP router, communication system and band setting method used therein and its program
JP2003522358A (en) High-performance delivery method for web content
JP2014045499A (en) Data transmission method and data transmission device
US9825815B2 (en) System and method for aggregating and estimating the bandwidth of multiple network interfaces
JP2002374290A (en) Server selecting device, method, program, and recording medium recording the program
CN107302504B (en) Multipath transmission scheduling method and system based on virtual sending queue
TWI873672B (en) System and method for network connection via multi-path tunnel and computer-readable storage medium
Al-Imareen et al. On the impact of packet reordering in MPT-GRE multipath networks
CN102868630B (en) A kind of parallel adaptive data transmission method for uplink based on many IP address and device
JP2003037649A (en) Content distribution completion time estimation method, recording medium, and program
CN106161051B (en) Custom end intelligent route selection
Palazzi Residual Capacity Estimator for TCP on Wired/Wireless Links.
Enghardt Informed access network selection to improve application performance
JP3811436B2 (en) Nearest base estimation apparatus and method
JP4692406B2 (en) RELAY COMMUNICATION SYSTEM, RELAY APPARATUS, SESSION BAND CONTROL METHOD USED FOR THEM AND PROGRAM