WO2022038771A1 - 通信システム、通信方法、中継サーバ及びプログラム - Google Patents

通信システム、通信方法、中継サーバ及びプログラム Download PDF

Info

Publication number
WO2022038771A1
WO2022038771A1 PCT/JP2020/031636 JP2020031636W WO2022038771A1 WO 2022038771 A1 WO2022038771 A1 WO 2022038771A1 JP 2020031636 W JP2020031636 W JP 2020031636W WO 2022038771 A1 WO2022038771 A1 WO 2022038771A1
Authority
WO
WIPO (PCT)
Prior art keywords
session
mptcp
terminal device
service server
relay server
Prior art date
Application number
PCT/JP2020/031636
Other languages
English (en)
French (fr)
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 US18/020,207 priority Critical patent/US20230269308A1/en
Priority to PCT/JP2020/031636 priority patent/WO2022038771A1/ja
Priority to JP2022543244A priority patent/JP7439936B2/ja
Publication of WO2022038771A1 publication Critical patent/WO2022038771A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures

Definitions

  • This disclosure relates to a communication system using MPTCP.
  • MPTCP cannot be used unless both the user terminal and the service server side (termination server) support MPTCP in MPTCP (MultiPath Transmission Control Protocol) (see, for example, Non-Patent Document 1). Since it is a technology associated with session establishment by 3way handshake of TCP, it was indispensable for the service server side to support MPTCP in order to use MPTCP.
  • MPTCP Transmission Control Protocol
  • the object of the present disclosure is to enable communication using MPTCP even when a user terminal that supports MPTCP is connected to a service server that does not support MP TCP.
  • this disclosure proposes that the implementation of MPTCP on the service server can be omitted via the relay server.
  • the relay server of the present disclosure is A relay server connected between a service server that does not support MPTCP (MultiPath Transmission Control Protocol) and a terminal device. It is determined whether or not the terminal device supports MPTCP, and it is determined. When the terminal device supports MPTCP, An MPTCP main session and a sub-session are established with the terminal device, and the MPTCP main session and sub-session are established. A TCP (Transmission Control Protocol) session is established with the service server, and a TCP (Transmission Control Protocol) session is established. Packets are sent and received with the service server using a TCP session. Packets are sent and received to and from the terminal device using the MPTCP main session and sub-session.
  • MPTCP MultiPath Transmission Control Protocol
  • the communication method of the present disclosure is: It is a communication method executed by a relay server connected between a service server that does not support MPTCP (MultiPath Transmission Control Protocol) and a terminal device. It is determined whether or not the terminal device supports MPTCP, and it is determined. When the terminal device supports MPTCP, An MPTCP main session and a sub-session are established with the terminal device, and the MPTCP main session and sub-session are established. A TCP (Transmission Control Protocol) session is established with the service server, and a TCP (Transmission Control Protocol) session is established. Packets are sent and received with the service server using a TCP session. Packets are sent and received to and from the terminal device using the MPTCP main session and sub-session.
  • MPTCP MultiPath Transmission Control Protocol
  • the program of the present disclosure is a program for realizing a computer as each functional unit provided in the communication device according to the present disclosure, and each step provided in the communication method executed by the communication device according to the present disclosure is performed by the computer. It is a program to be executed by.
  • An example of the system configuration of the present disclosure is shown.
  • An example of a relay server configuration is shown. It is a flowchart which shows an example of the flow until the service is started between a user terminal and a service server. It is a flowchart which shows an example of the flow until the service starts between a user terminal 93 and a service server 92.
  • An example of the sequence at the time of connection of the conventional user terminal is shown.
  • An example of the sequence when the user terminal is connected in the upstream direction according to the present disclosure is shown.
  • An example of the sequence when the user terminal is connected in the downlink direction according to the present disclosure is shown.
  • An example of the TCP option format is shown.
  • An example of the MPTCP format is shown.
  • An example of sequence management and option storage area is shown.
  • FIG. 1 shows an example of the system configuration of the present disclosure.
  • the communication system of the present disclosure includes a user terminal 93 that functions as a terminal device, carrier networks 81 to 83, a service server 92 that does not support MPTCP that provides Internet services, and a relay server 91.
  • the apparatus of the present disclosure can also be realized by a computer and a program, and the program can be recorded on a recording medium or provided through a network.
  • the user terminal 93 first establishes a main session with the service server 92 via the main flow, then confirms whether the user terminal 93 and the service server 92 support MPTCP, and then sub-flows. Establish a session.
  • the multipath connection is started.
  • the TCP option area is used, the service server 92 side confirms this TCP option area, and after confirming the MPTCP adaptation between the user terminal 93 and the service server 92, the multipath is used. Start the connection flow.
  • the relay server 91 monitors the packet and confirms the target data in the TCP option area, the destination address of the packet is rewritten from the service server 92 to the relay server 91. After that, the user terminal 93 establishes a connection with the relay server 91 by a three-way handshake, and starts a multipath connection. The relay server 91 transfers packets to the service server 92 after establishing a connection with the user terminal 93.
  • the communication system of the present disclosure can realize MPTCP without the service server 92 implementing MPTCP. Therefore, the present disclosure can improve fault tolerance and throughput by realizing multipath.
  • FIG. 2 shows a configuration example of the relay server.
  • the relay server 91 includes a TCP option area monitoring unit 14, an IP rewriting unit 13, an MPTCP function unit 12, and transfer units 11 and 15.
  • the user terminal 93 is connected to the relay server 91 via the carrier networks 81 and 82.
  • the TCP option area monitoring unit 14 is connected to the IP rewriting unit 13, the IP rewriting unit 13 is connected to the MPTCP function unit 12, and the MPTCP function unit 12 is connected to the service server 92 via the carrier network 83.
  • MP_CAPABLE data is used between the user terminal 93 and the service server 92 in order to confirm that each user terminal 93 supports MPTCP. This is an option included in the first synchronization packet (SYN), and MPTCP compatibility is confirmed by detecting this data.
  • the TCP option area monitoring unit 14 monitors MP_CAPABLE included in this synchronization packet. When the MP_CAPABLE data is included, the IP rewriting unit 13 rewrites the destination IP address, and the MPTCP function unit 12 establishes a session between the user terminal 93 and the relay server 92.
  • FIG. 3 is a flowchart showing a flow until the service is started between the user terminal and the service server.
  • the TCP option area monitoring unit 14 of the relay server 91 acquires the packet (S111)
  • the MPTCP scheme is started.
  • the TCP option area monitoring unit 14 of the relay server 91 detects MP_CAPABLE included in the MPTCP synchronization packet (SYS) (Yes in S112), it starts the MPTCP scheme (S113).
  • the IP rewriting unit 13 of the relay server 91 rewrites the destination IP address of the service server 92 to the relay server 91 (S114).
  • the MPTCP functional unit 12 performs a 3-way handshake between the user terminal 93 and the relay server 91 for a packet whose destination address is 91 as the relay server, and establishes a main session (S115). After establishing the main session, the MPTCP functional unit 12 establishes a subsession with the user terminal 93 (S116), and the multipath connection is completed. After establishing the session between the user terminal 93 and the relay server 91 (S117), the transfer unit 11 of the relay server 91 transfers all the packets addressed to the service server 92 to the service server 92 (S118).
  • step S118 after the session of step S117 is established, the relay server 91 forwards the packet of the service server 92 whose destination IP does not change the IP address to the service server 92. Further, when the service server 92 receives the packet, the relay server 91 rewrites the source IP address to the IP address of the user terminal in order to make it appear that the service server 92 and the user terminal 93 are directly connected. Packet transfer is performed with. This completes the processing of the flowchart shown in the drawing.
  • FIG. 4 is a flowchart showing a flow until the service is started between the user terminal 93 and the service server 92.
  • the service server 92 transmits a packet addressed to the user terminal 93, and the flow starts when the relay server 91 receives the packet (S121).
  • the IP rewriting unit 13 of the relay server 91 changes the destination IP of the received packet from the user terminal 93 to the relay server 91 (S122), and establishes a session between the service server 92 and the relay server 91 (S123). ..
  • the MPTCP function unit 12 of the relay server 91 establishes a main session with the user terminal 93 (S133), then establishes a subsession (S134), and then the multipath connection is completed.
  • the transfer unit 15 of the relay server 91 transfers all the packets addressed to the user terminal 93 to the user terminal 93 (S135). This completes the processing of the flowchart shown in the drawing.
  • the session reconstruction scheme is started (S141). .. In this case, the transfer unit 15 discards the session between the relay server 91 and the service server 92 (S142). Then, the transfer unit 15 establishes a session between the service server 92 and the user terminal 93 (S143).
  • the destination IP rewriting operation will be described with reference to FIG.
  • the relay server 91 replaces the destination IP address with the IP address of the relay server 91 from the service server 92. At that time, the IP address of the service server 92 is held by the conversion table. After establishing a session with the service server 92 and the user terminal 93, the relay server 91 transfers packets by using the conversion table.
  • the relay server 91 gives the user terminal 93 the illusion that it has a direct session with the service server 92. Further, the relay server 91 makes the service server 92 give the illusion that the user terminal 93 has a direct session.
  • IP rewriting unit 13 of the relay server 91 reads the transmission / reception port number described in the TCP header and stores it in the conversion table.
  • the IP rewriting unit 13 of the relay server 91 matches the connection port based on the conversion table and connects to the user terminal 93.
  • FIG. 7 shows an example of a sequence when a conventional user terminal is connected.
  • MPTCP compatibility is confirmed in parallel with the TCP session operation, and if the user terminal and the service server 92 support MPTCP, the MPTCP session is established.
  • FIG. 8 shows an example of the sequence when the user terminal is connected in the upstream direction according to the present disclosure.
  • the relay server 91 behaves as if it is communicating directly with the service server 92 and the user terminal 93 when viewed from the user terminal 93 and the service server 92 side.
  • the MPTCP connection can be made between the user terminal 93 and the relay server 91, and the TCP connection can be made between the relay server 91 and the service server 92.
  • the relay server 91 establishes a session with the user terminal 93 using the IP address of the service server 92 (S212, S213, S221, S222, S223).
  • the relay server 91 establishes a session with the service server 92 using the IP address of the user terminal 93 (S231, S232, S233). After that, the relay server 91 transmits data to the MPTCP session (S241).
  • FIG. 9 shows an example of the sequence when the user terminal is connected in the downlink direction according to the present disclosure.
  • the relay server 91 behaves as if it is directly communicating with the service server 92 and the user terminal 93 when viewed from the user terminal 93 and the service server 92 side.
  • the MPTCP connection can be made between the user terminal 93 and the relay server 91, and the TCP connection can be made between the relay server 91 and the service server 92.
  • the relay server 91 establishes a session with the service server 92 using the IP address of the user terminal 93 (S312, S313).
  • the relay server 91 establishes a session with the user terminal 93 using the IP address of the service server 92 (S321, S322, S323, S331, S332, S333).
  • the relay server 91 transmits the data transmitted from the service server 92 (S341) to the MPTCP session with the user terminal 93 (S343).
  • the relay server 91 reads and rewrites the IP header and TCP header information from the SYN packet transmitted by the user terminal 93.
  • the IP header whose destination IP address is the IP addressed to the service server is rewritten to the IP of the relay server 91.
  • For the port specify the port of the relay server 91 according to the port number of the read TCP header, and connect.
  • TCP option area monitoring unit 14 10 and 11 show examples of TCP options and MPTCP formats.
  • the TCP option format is defined by an option number, a length, and an option value. Both the option number and the length are 1 BYte.
  • the option value any value of 2 to 38Bite can be adopted.
  • MPTCP it is defined in RFC8684 that it is an option value defined in FIG.
  • the MPTCP format is defined by the option number, length, and option value of 1Byte. Therefore, the TCP option area monitoring unit 14 monitors the TCP option number and determines whether this number is 30 or not.
  • FIG. 12 shows an example of sequence management and option storage area.
  • the MPTCP kernel of the user terminal 93 and the relay server 91 stores the sequence number in the TCP option area before data transmission. This is a centralized sequence number between multipaths, and the receiving side can consolidate packets between multipaths by confirming this.
  • This disclosure can be applied to the information and communication industry.
  • Transfer unit 12 MPTCP function unit 13: IP rewrite unit 14: TCP option area monitoring unit 81, 82, 83: Carrier network 91: Relay server 92: Service server 93: User terminal

Landscapes

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

Abstract

本開示は、MPTCPに対応した端末装置が、MPTCP未対応のサービスサーバとの間であっても、MPTCPを利用した通信を可能にすることを目的とする。 MPTCP未対応のサービスサーバと端末装置がパケットを送受信する通信システムであって、前記サービスサーバと前記端末装置との間に接続される中継サーバを備え、前記中継サーバは、前記端末装置がMPTCP(MultiPath Transmission Control Protocol)に対応しているか否かを判定し、前記端末装置がMPTCPに対応している場合、前記端末装置との間ではMPTCPメインセッションおよびサブセッションを確立し、前記サービスサーバとの間ではTCP(Transmission Control Protocol)セッションを確立し、前記サービスサーバとはTCPセッションを用いてパケットを送受信し、前記端末装置とはMPTCPメインセッションおよびサブセッションを用いてパケットを送受信する。

Description

通信システム、通信方法、中継サーバ及びプログラム
 本開示は、MPTCPを利用した通信システムに関する。
 従来MPTCP(MultiPath Transmission Control Protocol)において利用者端末、サービスサーバ側(終端サーバ)両方がMPTCPに対応していなければ、MPTCPを利用できない(例えば、非特許文献1参照。)。TCPの3way handshakeによるセッション確立に付随した技術であるためMPTCPを利用するためにはサービスサーバ側にMPTCPに対応していることが必須だった。
 現在普及している利用者端末はほぼMPTCPに対応している(iOS7以降、android,linuxはパッチ配布済み)ものの、サービスサーバ側がMPTCPに対応していないため、MPTCPが普及しない原因となっている。MPTCPはTCP(Transmission Control Protocol)プロトコルオプション領域を利用し、利用者端末とサービスサーバ両方がMPTCPを導入していることを確認したのち、マルチパス接続を行う。よって、利用者端末、サービスサーバ側のMPTCP導入が不可欠であった。
RFC8684-TCP Extensions for Multipath Operation with Multiple Addresses
 本開示は、MPTCPに対応した利用者端末が、MPTCP未対応のサービスサーバとの間であっても、MPTCPを利用した通信を可能にすることを目的とする。
 そこで、本開示は、中継サーバを介することでサービスサーバへのMPTCP実装を省略可能にすることを提案する。
 具体的には、本開示の通信システムは、
 MPTCP(MultiPath Transmission Control Protocol)未対応のサービスサーバと端末装置がパケットを送受信する通信システムであって、
 前記サービスサーバと前記端末装置との間に接続される中継サーバを備え、
 前記中継サーバは、
 前記端末装置がMPTCPに対応しているか否かを判定し、
 前記端末装置がMPTCPに対応している場合、
 前記端末装置との間ではMPTCPメインセッションおよびサブセッションを確立し、
 前記サービスサーバとの間ではTCP(Transmission Control Protocol)セッションを確立し、
 前記サービスサーバとはTCPセッションを用いてパケットを送受信し、
 前記端末装置とはMPTCPメインセッションおよびサブセッションを用いてパケットを送受信する。
 具体的には、本開示の中継サーバは、
 MPTCP(MultiPath Transmission Control Protocol)未対応のサービスサーバと端末装置との間に接続される中継サーバであって、
 前記端末装置がMPTCPに対応しているか否かを判定し、
 前記端末装置がMPTCPに対応している場合、
 前記端末装置との間ではMPTCPメインセッションおよびサブセッションを確立し、
 前記サービスサーバとの間ではTCP(Transmission Control Protocol)セッションを確立し、
 前記サービスサーバとはTCPセッションを用いてパケットを送受信し、
 前記端末装置とはMPTCPメインセッションおよびサブセッションを用いてパケットを送受信する。
 具体的には、本開示の通信方法は、
 MPTCP(MultiPath Transmission Control Protocol)未対応のサービスサーバと端末装置との間に接続される中継サーバが実行する通信方法であって、
 前記端末装置がMPTCPに対応しているか否かを判定し、
 前記端末装置がMPTCPに対応している場合、
 前記端末装置との間ではMPTCPメインセッションおよびサブセッションを確立し、
 前記サービスサーバとの間ではTCP(Transmission Control Protocol)セッションを確立し、
 前記サービスサーバとはTCPセッションを用いてパケットを送受信し、
 前記端末装置とはMPTCPメインセッションおよびサブセッションを用いてパケットを送受信する。
 具体的には、本開示のプログラムは、本開示に係る通信装置に備わる各機能部としてコンピュータを実現させるためのプログラムであり、本開示に係る通信装置が実行する通信方法に備わる各ステップをコンピュータに実行させるためのプログラムである。
 本開示によれば、MPTCPに対応した端末装置が、MPTCP未対応のサービスサーバとの間であっても、MPTCPを利用した通信を行うことができる。
本開示のシステム構成の一例を示す。 中継サーバの構成例を示す。 利用者端末-サービスサーバ間でサービスを開始するまでの流れの一例を示すフローチャートである。 利用者端末93とサービスサーバ92間でサービス開始するまでの流れの一例を示すフローチャートである。 IP書き換え動作の一例を示す説明図である。 TCPポート番号統一によるセッション確立プロセスの一例を示す説明図である。 従来の利用者端末の接続時のシーケンスの一例を示す。 本開示に係る上り方向での利用者端末の接続時のシーケンスの一例を示す。 本開示に係る下り方向での利用者端末の接続時のシーケンスの一例を示す。 TCPオプションフォーマットの一例を示す。 MPTCPフォーマットの一例を示す。 シーケンス管理とオプション格納領域の一例を示す。
 以下、本開示の実施形態について、図面を参照しながら詳細に説明する。なお、本開示は、以下に示す実施形態に限定されるものではない。これらの実施の例は例示に過ぎず、本開示は当業者の知識に基づいて種々の変更、改良を施した形態で実施することができる。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
(発明のポイント)
 図1に本開示のシステム構成の一例を示す。本開示の通信システムは、端末装置として機能する利用者端末93、キャリアネットワーク81~83、インターネット・サービスを提供するMPTCP未対応のサービスサーバ92、中継サーバ91を備える。本開示の装置はコンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
 利用者端末93はまず、メインフローを介してサービスサーバ92とメインセッションを確立し、その後利用者端末93及びサービスサーバ92間でMPTCPに対応しているか否かの対応確認を行い、サブフローによりサブセッション確立を行う。
 従来のMPTCPでは、3way handshakeにより、利用者端末93とサービスサーバ92間のコネクション確立後、マルチパスの接続を開始する。従来のMPTCP技術では、TCPオプション領域を利用し、サービスサーバ92側はこのTCPオプション領域を確認し、利用者端末93及びサービスサーバ92間の両方のMPTCP適応確認を行った後、マルチパスでの接続フローを開始する。
 一方の本開示では、中継サーバ91がパケット監視を行い、TCPオプション領域に対象データを確認したら、パケットの宛先アドレスをサービスサーバ92から中継サーバ91に書き換える。その後、利用者端末93は、中継サーバ91と3ウェイハンドシェイクによるコネクション確立を行い、マルチパスの接続を開始する。なお、中継サーバ91は、利用者端末93とのコネクションを確立後、サービスサーバ92にパケット転送を行う。
 本開示の通信システムは、サービスサーバ92がMPTCPを実装することなくMPTCPを実現することができる。このため、本開示は、マルチパス実現により耐障害性、スループットの向上を図ることができる。
 図2に、中継サーバの構成例を示す。中継サーバ91は、TCPオプション領域監視部14、IP書き換え部13、MPTCP機能部12、転送部11、15を備える。
 利用者端末93は、キャリアネットワーク81及び82を介して中継サーバ91に接続される。TCPオプション領域監視部14はIP書き換え部13と接続され、IP書き換え部13はMPTCP機能部12と接続され、MPTCP機能部12はキャリアネットワーク83を介してサービスサーバ92と接続される。
 利用者端末93及びサービスサーバ92間はそれぞれの利用者端末93がMPTCPに対応していることを確認するためにMP_CAPABLEデータを利用する。これは最初の同期パケット(SYN)に含まれているオプションで、このデータを検知することによりMPTCP対応確認を行う。TCPオプション領域監視部14は、この同期パケットに含まれているMP_CAPABLEを監視する。MP_CAPABLEデータが含まれている場合は、IP書き換え部13が宛先IPアドレスを書き換え、MPTCP機能部12が、利用者端末93及び中継サーバ92間でセッションの確立を行う。
(上りの基本フロー)
 図3は、利用者端末-サービスサーバ間でサービスを開始するまでの流れを示すフローチャートである。中継サーバ91のTCPオプション領域監視部14がパケットを取得すると(S111)、MPTCPスキームが開始される。
 中継サーバ91のTCPオプション領域監視部14はMPTCPの同期パケット(SYS)に含まれるMP_CAPABLEを検知すると(S112においてYes)、MPTCPスキームを開始する(S113)。
 中継サーバ91のIP書き換え部13は、サービスサーバ92となっている宛先IPアドレスを中継サーバ91宛に書き換える(S114)。MPTCP機能部12は宛先アドレスが中継サーバと91なっているパケットに対して、利用者端末93及び中継サーバ91間で3ウェイハンドシャイクを行い、メインセッションを確立する(S115)。
 メインセッションを確立した後、MPTCP機能部12は利用者端末93とサブセッションを確立して(S116)、マルチパス接続が完了する。
 利用者端末93と中継サーバ91間のセッションを確立後(S117)、中継サーバ91の転送部11はサービスサーバ92宛てのパケットを全てサービスサーバ92に転送する(S118)。
 ステップS117のセッションを確立後のステップS118では、中継サーバ91は、宛先IPがサービスサーバ92のパケットを、IPアドレスを変更せずにサービスサーバ92に転送する。また、サービスサーバ92がパケットを受け取ったとき、サービスサーバ92と利用者端末93が直接接続しているように見せかけるため、中継サーバ91は送信元IPアドレスを利用者端末のIPアドレスに書き換えた上でパケット転送を行う。
 以上で、図面に示すフローチャートの処理が終了する。
(下りの基本フロー)
 図4は利用者端末93とサービスサーバ92間でサービス開始するまでの流れを示すフローチャートである。サービスサーバ92が利用者端末93宛てのパケットを送信し、中継サーバ91がそのパケットを受信したところでフローが開始する(S121)。
 中継サーバ91のIP書き換え部13は、受信したパケットの宛先IPを利用者端末93宛てから中継サーバ91宛てに変更し(S122)、サービスサーバ92及び中継サーバ91間のセッションを確立する(S123)。
 中継サーバ91のTCPオプション領域監視部14は、利用者端末93から受け取ったMPTCPの同期パケット(SYS)に含まれるMP_CAPABLEを検知すると(S125においてYes)、MPTCPスキームを開始する(S131)。
 中継サーバ91のIP書き換え部13は、利用者端末93から受け取ったパケットの宛先IPアドレスを、サービスサーバ92宛てから中継サーバ91宛に書き換える(S132)。MPTCP機能部12は利用者端末93から受け取った宛先アドレスがサービスサーバ92となっているパケットに対して、宛先IPアドレスを中継サーバ91に書き換えた後(S132)、利用者端末93、中継サーバ92間で3ウェイハンドシャイクを行い、セッションを確立する(S133)。
 その後、中継サーバ91のMPTCP機能部12が利用者端末93との間でメインセッションを確立した後(S133)、サブセッションを確立して(S134)、マルチパス接続が完了する。
 利用者端末93と中継サーバ91間のセッション確立後、中継サーバ91の転送部15は利用者端末93宛てのパケットを全て利用者端末93に転送する(S135)。
 以上で、図面に示すフローチャートの処理が終了する。
 中継サーバ91のTCPオプション領域監視部14は、利用者端末93から受け取ったMPTCPの同期パケット(SYS)に含まれるMP_CAPABLEを検知しない場合(S125においてNo)、セッション再構成スキームを開始する(S141)。この場合、転送部15は、中継サーバ91及びサービスサーバ92間のセッションを破棄する(S142)。そして、転送部15は、サービスサーバ92及び利用者端末93間のセッションを確立する(S143)。
(中継サーバ91の宛先IP書き換え動作)
 図5を参照しながら宛先IP書き換え動作について説明する。中継サーバ91は、宛先IPアドレスを、サービスサーバ92から中継サーバ91のIPアドレスに付け替える。その際、変換テーブルによりサービスサーバ92のIPアドレスを保持しておく。中継サーバ91は、サービスサーバ92及び利用者端末93とのセッションを確立後、その変換テーブルを利用してパケットの転送を行う。
 具体的には、中継サーバ91のMPTCP機能部12は、受け取った同期パケットに対してACKを返す。その際、MPTCP機能部12は、変換テーブルを参照し、送信元アドレスを中継サーバ91のIPアドレスからサービスサーバ92のIPアドレスに書き換えて、利用者端末93にはあたかもサービスサーバ92とセッションを張る動作をしているように見せかける。
 このように、本開示では、中継サーバ91は、サービスサーバ92と直接セッションをはっているように、利用者端末93に錯覚させる。また中継サーバ91は、利用者端末93と直接セッションをはっているように、サービスサーバ92に錯覚させる。
(TCPポート番号統一によるセッション確立プロセス)
 図6を参照しながらTCPポート番号を統一する動作について説明する。TCPでは、IPとポート番号の組み合わせを用いてセッションの確立を行っている。そこで、本開示では、IPだけではなく、ポート番号を中継サーバ91が伝達する仕組みを備える。具体的には、中継サーバ91のIP書き換え部13は、TCPヘッダに記載されている送受信ポート番号を読み取り、変換テーブルに格納する。中継サーバ91のIP書き換え部13は、変換テーブルに基づいて接続ポートを一致させ利用者端末93と接続する。中継サーバ91から利用者端末93へSYN+ACKパケットを送る際は、変換テーブルから読み取ったポート番号に一致させる。
 図7に、従来の利用者端末の接続時のシーケンスの一例を示す。TCPオプション領域を利用することでTCPセッション動作に並行して、MPTCP対応確認を行い、利用者端末及びサービスサーバ92間がMPTCP対応しているならば、MPTCPセッションを確立する。
 図8に、本開示に係る上り方向での利用者端末の接続時のシーケンスの一例を示す。中継サーバ91はIPアドレスを偽装することで、利用者端末93及びサービスサーバ92側から見て直接サービスサーバ92及び利用者端末93と通信しているかのようにふるまう。これにより、利用者端末93及び中継サーバ91間はMPTCP接続を行い、中継サーバ91及びサービスサーバ92間はTCP接続を行うことが可能になる。
 例えば、中継サーバ91は、サービスサーバ92のIPアドレスを用いて、利用者端末93とセッションを確立する(S212、S213、S221、S222、S223)。中継サーバ91は、利用者端末93のIPアドレスを用いて、サービスサーバ92とセッションを確立する(S231、S232、S233)。その後、中継サーバ91は、MPTCPセッションに対してデータ送信する(S241)。
 図9に、本開示に係る下り方向での利用者端末の接続時のシーケンスの一例を示す。中継サーバ91は、IPアドレスを偽装することで、利用者端末93及びサービスサーバ92側から見て、直接サービスサーバ92及び利用者端末93と通信しているかのようにふるまう。これにより、利用者端末93及び中継サーバ91間はMPTCP接続を行い、中継サーバ91及びサービスサーバ92間はTCP接続を行うことが可能になる。
 例えば、中継サーバ91は、利用者端末93のIPアドレスを用いて、サービスサーバ92とセッションを確立する(S312、S313)。中継サーバ91は、サービスサーバ92のIPアドレスを用いて、利用者端末93とセッションを確立する(S321、S322、S323、S331、S332、S333)。その後、中継サーバ91は、サービスサーバ92から送信されたデータを(S341)、利用者端末93とのMPTCPセッションに対してデータ送信する(S343)。
 前述の実施形態では変換テーブルを参照して宛先IPの書き換え及びポート番号の書き換えを行う例を示したが、宛先IPの書き換え及びポート番号の書き換えは、NAPT(Network Address and Port Translation)のIPアドレス、TCPポート変換機能を利用し、IPアドレス、ポート番号のマッピングを行うことで実現可能である。具体的には、NAPTに備わる以下の機能を用いる。
・IPヘッダにあるIPアドレスを変換
・TCPヘッダのポート番号を交換
・NATトラバーサル(NAT越)
 中継サーバ91は、利用者端末93の送信したSYNパケットから、IPヘッダ、TCPヘッダ情報を読み取り、書き換える。
 IPヘッダについては、宛先IPアドレスがサービスサーバ宛IPとなっているIPヘッダを中継サーバ91のIPに書き換える。
 ポートについては、読み取ったTCPヘッダのポート番号に合わせて、中継サーバ91のポートを指定し、接続する。
(TCPオプション領域監視部14の動作)
 図10及び図11に、TCPオプションとMPTCPフォーマットの一例を示す。
 TCPオプションフォーマットは図10に示すように、オプション番号、長さ、オプション値で定義される。オプション番号及び長さはいずれも1Byteである。オプション値は2~38Byteの任意の値を採用することができる。
 MPTCPを利用する場合は図11で定義されるオプション値であることがRFC8684にて定義されている。MPTCPフォーマットは、図11に示すように、1Byteのオプション番号、長さ、オプション値で定義される。よって、TCPオプション領域監視部14はTCPオプション番号を監視し、この番号が30であるかそうでないかの判定を行う。
(シーケンス番号格納と提案技術)
 図12に、シーケンス管理とオプション格納領域の一例を示す。利用者端末93及び中継サーバ91のMPTCPカーネルは、データ送信前にTCPオプション領域にシーケンス番号を格納する。これはマルチパス間で一元化されたシーケンス番号であり、受信側はこれを確認することでマルチパス間でのパケットを統合することができる。
 本開示は情報通信産業に適用することができる。
11、15:転送部
12:MPTCP機能部
13:IP書き換え部
14:TCPオプション領域監視部
81、82、83:キャリアネットワーク
91:中継サーバ
92:サービスサーバ
93:利用者端末

Claims (4)

  1.  MPTCP(MultiPath Transmission Control Protocol)未対応のサービスサーバと端末装置がパケットを送受信する通信システムであって、
     前記サービスサーバと前記端末装置との間に接続される中継サーバを備え、
     前記中継サーバは、
     前記端末装置がMPTCPに対応しているか否かを判定し、
     前記端末装置がMPTCPに対応している場合、
     前記端末装置との間ではMPTCPメインセッションおよびサブセッションを確立し、
     前記サービスサーバとの間ではTCP(Transmission Control Protocol)セッションを確立し、
     前記サービスサーバとはTCPセッションを用いてパケットを送受信し、
     前記端末装置とはMPTCPメインセッションおよびサブセッションを用いてパケットを送受信する、
     通信システム。
  2.  MPTCP(MultiPath Transmission Control Protocol)未対応のサービスサーバと端末装置との間に接続される中継サーバであって、
     前記端末装置がMPTCPに対応しているか否かを判定し、
     前記端末装置がMPTCPに対応している場合、
     前記端末装置との間ではMPTCPメインセッションおよびサブセッションを確立し、
     前記サービスサーバとの間ではTCP(Transmission Control Protocol)セッションを確立し、
     前記サービスサーバとはTCPセッションを用いてパケットを送受信し、
     前記端末装置とはMPTCPメインセッションおよびサブセッションを用いてパケットを送受信する、
     中継サーバ。
  3.  MPTCP(MultiPath Transmission Control Protocol)未対応のサービスサーバと端末装置との間に接続される中継サーバが実行する通信方法であって、
     前記端末装置がMPTCPに対応しているか否かを判定し、
     前記端末装置がMPTCPに対応している場合、
     前記端末装置との間ではMPTCPメインセッションおよびサブセッションを確立し、
     前記サービスサーバとの間ではTCP(Transmission Control Protocol)セッションを確立し、
     前記サービスサーバとはTCPセッションを用いてパケットを送受信し、
     前記端末装置とはMPTCPメインセッションおよびサブセッションを用いてパケットを送受信する、
     通信方法。
  4.  請求項2に記載の中継サーバに備わる各機能部としてコンピュータを実現させるためのプログラム。
PCT/JP2020/031636 2020-08-21 2020-08-21 通信システム、通信方法、中継サーバ及びプログラム WO2022038771A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US18/020,207 US20230269308A1 (en) 2020-08-21 2020-08-21 Communication system, communication method, relay server and program
PCT/JP2020/031636 WO2022038771A1 (ja) 2020-08-21 2020-08-21 通信システム、通信方法、中継サーバ及びプログラム
JP2022543244A JP7439936B2 (ja) 2020-08-21 2020-08-21 通信システム、通信方法、中継サーバ及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/031636 WO2022038771A1 (ja) 2020-08-21 2020-08-21 通信システム、通信方法、中継サーバ及びプログラム

Publications (1)

Publication Number Publication Date
WO2022038771A1 true WO2022038771A1 (ja) 2022-02-24

Family

ID=80322884

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/031636 WO2022038771A1 (ja) 2020-08-21 2020-08-21 通信システム、通信方法、中継サーバ及びプログラム

Country Status (3)

Country Link
US (1) US20230269308A1 (ja)
JP (1) JP7439936B2 (ja)
WO (1) WO2022038771A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015070616A (ja) * 2013-09-30 2015-04-13 トムソン ライセンシングThomson Licensing 接続方法及び中継モジュール

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10412159B1 (en) * 2014-02-07 2019-09-10 Amazon Technologies, Inc. Direct load balancing using a multipath protocol
WO2016049933A1 (zh) * 2014-09-30 2016-04-07 华为技术有限公司 多路径传输控制协议通信的地址管理装置、系统及方法
US10587498B2 (en) * 2015-03-12 2020-03-10 Telefonaktiebolaget Lm Ericsson (Publ) Methods and arrangements for multipath traffic aggregation
US11191121B2 (en) * 2018-07-23 2021-11-30 Parallel Wireless, Inc. Multipath TCP with mesh access
US20220021600A1 (en) * 2019-05-13 2022-01-20 Juniper Networks, Inc. Metric-based multi-hop path selection
EP4140106A1 (en) * 2020-04-23 2023-03-01 Juniper Networks, Inc. Session monitoring using metrics of session establishment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015070616A (ja) * 2013-09-30 2015-04-13 トムソン ライセンシングThomson Licensing 接続方法及び中継モジュール

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
L. DENG D. LIU T. SUN CHINA MOBILE M. BOUCADAIR FRANCE TELECOM G. CAUCHIE BOUYGUES TELECOM: "Use-cases and Requirements for MPTCP Proxy in ISP Networks; draft-deng-mptcp-proxy-01.txt", USE-CASES AND REQUIREMENTS FOR MPTCP PROXY IN ISP NETWORKS; DRAFT-DENG-MPTCP-PROXY-01.TXT, 27 October 2014 (2014-10-27), pages 1 - 18, XP015102633 *
YUJI KOJIMA; TAKESHI KAWASAKI; JUNICHI SUGA; RYUICHI TAKECHI: "An introduction method of Multipath TCP to mobile core networks and its evaluations", IEICE TECHNICAL REPORT, NS, vol. 114, no. 297 (NS2014-146), 6 November 2014 (2014-11-06), JP, pages 105 - 110, XP009534780 *

Also Published As

Publication number Publication date
JPWO2022038771A1 (ja) 2022-02-24
JP7439936B2 (ja) 2024-02-28
US20230269308A1 (en) 2023-08-24

Similar Documents

Publication Publication Date Title
US8250643B2 (en) Communication device, communication system, communication method, and program
EP1161028B1 (en) Multicast routing method and an apparatus
US8995453B2 (en) Systems and methods for providing a VPN solution
JP4331154B2 (ja) 情報処理システム、トンネル通信装置、及びトンネル通信方法
CA2545496C (en) Virtual private network with pseudo server
WO2019007209A1 (zh) 一种多路径数据传输处理方法及网络设备
JP3667586B2 (ja) マルチキャストパケット転送装置、マルチキャストパケット転送システム及び記憶媒体
US9264356B2 (en) Network gateway apparatus
US7970928B2 (en) Transparent auto-discovery of network devices logically located between a client and server
JP4794312B2 (ja) イーサネット・ベースのネットワーク内の擬似ワイヤ・ピア・アドレスの自動検出
US8670451B2 (en) Network system, terminal, and gateway
WO2007037028A1 (ja) 情報処理システム、トンネル通信装置、トンネル通信方法、代理応答装置、及び代理応答方法
JP5696724B2 (ja) 中継装置,中継システム,中継方法,プログラム,及びプログラムを記録したコンピュータ読み取り可能な記録媒体
US7564848B2 (en) Method for the establishing of connections in a communication system
JP7367793B2 (ja) 通信中継装置およびデータ中継方法
JP3493660B2 (ja) プロトコル変換装置とそのプロトコル変換方法、及びプロトコル変換プログラム
CN109743758B (zh) 多链路通信方法、通信装置及通信系统
US7984164B2 (en) Server, and packet transferring method and program therefor
WO2022038771A1 (ja) 通信システム、通信方法、中継サーバ及びプログラム
JP2017010388A (ja) Httpサーバとその制御方法、画像形成装置およびプログラム
CN114401304A (zh) 一种基于ip的去中心化端到端连接通信系统
JP2004064490A (ja) データ通信システム
US20130039367A1 (en) Peer-to-Peer Packet Switching
CN116266838A (zh) 一种流量镜像方法、装置及相关设备
CN116938755A (zh) 一种网络性能测量方法以及相关设备

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2022543244

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20950336

Country of ref document: EP

Kind code of ref document: A1