KR20220139389A - Quic와의 다중 호스트 다중경로 보안 전송을 가능하게 하기 위한 방법들 및 장치들 - Google Patents

Quic와의 다중 호스트 다중경로 보안 전송을 가능하게 하기 위한 방법들 및 장치들 Download PDF

Info

Publication number
KR20220139389A
KR20220139389A KR1020227031675A KR20227031675A KR20220139389A KR 20220139389 A KR20220139389 A KR 20220139389A KR 1020227031675 A KR1020227031675 A KR 1020227031675A KR 20227031675 A KR20227031675 A KR 20227031675A KR 20220139389 A KR20220139389 A KR 20220139389A
Authority
KR
South Korea
Prior art keywords
quic
connection
packetized data
endpoint
proxy
Prior art date
Application number
KR1020227031675A
Other languages
English (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 아이디에이씨 홀딩스, 인크.
Publication of KR20220139389A publication Critical patent/KR20220139389A/ko

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/56Routing software
    • H04L45/566Routing instructions carried by the data packet, e.g. active networks
    • 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/164Adaptation or special uses of UDP protocol
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • 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/169Special adaptations of TCP, UDP or IP for interworking of IP based networks with other networks 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/15Setup of multiple wireless link connections

Abstract

빠른 사용자 데이터그램 프로토콜(UDP) 접속(QUIC)을 이용한 다중 호스트 다중경로 보안 전송을 가능하게 하기 위한 방법들 및 장치들이 본 명세서에 설명된다. 클라이언트 엔드포인트에 의해 수행되는 방법은, 네트워크 노드로, 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청을 전송하는 단계를 수반할 수 있고, QUIC 접속을 확립하라는 요청은 흐름 식별자(ID)를 포함한다. 본 방법은, 네트워크 노드로부터, 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청이 수락된다는 표시를 포함하는 응답을 수신하는 단계를 수반할 수 있다. 본 방법은, 외부 QUIC 패킷화된 데이터 내에 내부 QUIC 패킷화된 데이터를 캡슐화하는 단계를 수반할 수 있고, 내부 QUIC 패킷화된 데이터는 흐름 ID를 포함한다. 본 방법은, 네트워크 노드로, 흐름 ID에 기초하여 목적지 엔드포인트를 향해 포워딩하기 위한 외부 QUIC 패킷화된 데이터를 전송하는 단계를 수반할 수 있다.

Description

QUIC와의 다중 호스트 다중경로 보안 전송을 가능하게 하기 위한 방법들 및 장치들
관련 출원들에 대한 상호 참조
본 출원은 2020년 2월 14일자로 출원된 미국 가출원 제62/976,753호의 이익을 주장하며, 그 내용들은 본 명세서에 참고로 포함된다.
데이터 경로들을 통한 프로토콜 설계에 기초하여 데이터 교환이 개선될 수 있는 여러 사용 사례들이 있다. 예를 들어, 일부 사용 사례들에서, 애플리케이션 및 서비스 제공자들에 의한 다수의 네트워크 경로들을 통한 심층 제어(deep control)가 필요할 수 있다. 일부 사용 사례들에서, 재배치 에지 서버(relocating edge server)에 대한 접속성을 유지하려는 요구가 있을 수 있다. 또한, 일부 사용 사례들에서, 간헐적 디바이스간(device-to-device, D2D) 피어들 사이의 접속성을 유지할 필요가 있을 수 있다.
빠른 사용자 데이터그램 프로토콜(User Datagram Protocol, UDP) 접속(Quick UDP Connection, QUIC)을 이용한 다중 호스트 다중경로 보안 전송을 가능하게 하기 위한 방법들 및 장치들이 본 명세서에 설명된다. 클라이언트 엔드포인트에 의해 수행되는 방법은, 네트워크 노드로, 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청을 전송하는 단계를 수반할 수 있고, QUIC 접속을 확립하라는 요청은 흐름 식별자(identifier, ID)를 포함한다. 본 방법은, 네트워크 노드로부터, 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청이 수락된다는 표시를 포함하는 응답을 수신하는 단계를 수반할 수 있다. 본 방법은, 외부 QUIC 패킷화된 데이터 내에 내부 QUIC 패킷화된 데이터를 캡슐화하는 단계를 수반할 수 있고, 내부 QUIC 패킷화된 데이터는 흐름 ID를 포함한다. 본 방법은, 네트워크 노드로, 흐름 ID에 기초하여 목적지 엔드포인트를 향해 포워딩하기 위한 외부 QUIC 패킷화된 데이터를 전송하는 단계를 수반할 수 있다.
첨부 도면과 함께 예로서 주어진 다음의 설명으로부터 보다 상세한 이해가 이루어질 수 있으며, 도면에서 유사한 참조 번호는 유사한 요소를 나타낸다.
도 1a는 하나 이상의 개시된 실시예들이 구현될 수 있는 예시적인 통신 시스템을 예시하는 시스템도이다.
도 1b는 실시예에 따른, 도 1a에 예시된 통신 시스템 내에서 사용될 수 있는 예시적인 무선 송수신 유닛(wireless transmit/receive unit, WTRU)을 예시하는 시스템도이다.
도 1c는 실시예에 따른, 도 1a에 예시된 통신 시스템 내에서 사용될 수 있는 예시적인 무선 액세스 네트워크(radio access network, RAN) 및 예시적인 코어 네트워크(core network, CN)를 예시하는 시스템도이다.
도 1d는 실시예에 따른, 도 1a에 예시된 통신 시스템 내에서 사용될 수 있는 추가의 예시적인 RAN 및 추가의 예시적인 CN을 예시하는 시스템도이다.
도 2는 애플리케이션 및 서비스 제공자들에 의한 다수의 네트워크 경로들을 통한 심층 제어의 일례를 예시하는 도면이다.
도 3은 재배치 서버에 대한 접속성을 유지하는 일례를 예시하는 도면이다.
도 4는 간헐적 디바이스간(D2D) 피어들 사이의 접속성을 유지하는 일례를 예시하는 도면이다.
도 5는 QUIC를 통한 보안 멀티캐스트 또는 발행자/구독자(publisher/subscriber, PubSub) 접속성을 확립하고 유지하는 일례를 예시하는 도면이다.
도 6은 다중 홉, 다중경로(multi-hop, multipath, MHMP) 시스템에서의 메인 노드들 및 통신 시나리오들의 일례를 예시하는 도면이다.
도 7은 수반된 노드들 및 패킷 구조를 도시하는, 프록시에 대한 초기 접속의 일례를 예시하는 도면이다.
도 8은 수반된 노드들 및 패킷 구조를 도시하는, QUIC를 사용한 프록시형 접속(proxied connection) 또는 간접 접속의 일례를 예시하는 도면이다.
도 9는 수반된 노드들 및 패킷 구조를 도시하는, 클라이언트 대 프록시(client-to-proxy) 및 프록시 대 서버(proxy-to-server) 세그먼트들 둘 모두 상에서 UDP를 사용한 프록시형 접속 또는 간접 접속의 일례를 예시하는 도면이다.
도 10은 수반된 노드들 및 패킷 구조를 도시하는, 엔드포인트들 사이의 직접 접속의 일례를 예시하는 도면이다.
도 11a는 다수의 QUIC 접속들을 확립하는 제1 대안을 이용한 간접 접속 부트스트래핑(bootstrapping) 방법의 일례의 제1 부분을 예시하는 도면이다.
도 11b는 QUIC-오버-QUIC(QUIC-over-QUIC) 접속을 QUIC-오버-UDP 접속으로 대체하는 제2 대안을 이용한 간접 접속 부트스트래핑 방법의 일례의 제2 부분을 예시하는 도면을 도시한다.
도 12는 ADD_ADDRESS를 사용하는 프록시 발견 절차의 일례를 예시하는 도면이다.
도 13a는 서버 이동(server migration) 절차의 일례의 제1 부분을 예시하는 도면이다.
도 13b는 서버 이동 절차의 일례의 제2 부분을 예시하는 도면이다.
도 1a는 하나 이상의 개시된 실시예들이 구현될 수 있는 예시적인 통신 시스템(100)을 예시하는 도면이다. 통신 시스템(100)은 음성, 데이터, 비디오, 메시징, 방송 등과 같은 콘텐츠를 다수의 무선 사용자에게 제공하는 다중 액세스 시스템일 수 있다. 통신 시스템(100)은 다수의 무선 사용자가 무선 대역폭을 포함한 시스템 자원들의 공유를 통해 그러한 콘텐츠에 액세스하는 것을 가능하게 할 수 있다. 예를 들어, 통신 시스템들(100)은 CDMA(code division multiple access), TDMA(time division multiple access), FDMA(frequency division multiple access), OFDMA(orthogonal FDMA), SC-FDMA(single-carrier FDMA), ZT-UW-DFT-S-OFDM(zero-tail unique-word discrete Fourier transform Spread OFDM), UW-OFDM(unique word OFDM), 자원 블록 필터링된 OFDM, FBMC(filter bank multicarrier) 등과 같은 하나 이상의 채널 액세스 방법들을 채용할 수 있다.
도 1a에 도시된 바와 같이, 통신 시스템(100)은 무선 송수신 유닛(WTRU)들(102a, 102b, 102c, 102d), 무선 액세스 네트워크(RAN)(104), 코어 네트워크(CN)(106), 공중 교환 전화망(public switched telephone network, PSTN)(108), 인터넷(110) 및 다른 네트워크들(112)을 포함할 수 있지만, 개시된 실시예들은 임의의 수의 WTRU들, 기지국들, 네트워크들 및/또는 네트워크 요소들을 고려한다는 것이 이해될 것이다. WTRU들(102a, 102b, 102c, 102d) 각각은 무선 환경에서 동작하고/하거나 통신하도록 구성된 임의의 유형의 디바이스일 수 있다. 예로서, WTRU들(102a, 102b, 102c, 102d) - 이들 중 임의의 것은 스테이션(STA)이라고 지칭될 수 있음 - 은 무선 신호들을 송신하도록 그리고/또는 수신하도록 구성될 수 있고, 사용자 장비(user equipment, UE), 이동국, 고정 또는 이동 가입자 유닛, 가입 기반 유닛, 페이저, 셀룰러 전화, PDA(personal digital assistant), 스마트폰, 랩톱, 넷북, 개인용 컴퓨터, 무선 센서, 핫스폿 또는 Mi-Fi 디바이스, 사물 인터넷(Internet of Things, IoT) 디바이스, 시계 또는 다른 웨어러블, HMD(head-mounted display), 차량, 드론, 의료 디바이스 및 응용들(예컨대, 원격 수술), 산업용 디바이스 및 응용들(예컨대, 산업용 및/또는 자동화된 프로세싱 체인 정황들에서 동작하는 로봇 및/또는 다른 무선 디바이스들), 가전 디바이스, 상업용 및/또는 산업용 무선 네트워크들 상에서 동작하는 디바이스 등을 포함할 수 있다. WTRU들(102a, 102b, 102c, 및 102d) 중 임의의 것은 UE로 상호교환가능하게 지칭될 수 있다.
통신 시스템들(100)은 또한 기지국(114a) 및/또는 기지국(114b)을 포함할 수 있다. 기지국들(114a, 114b) 각각은, CN(106), 인터넷(110), 및/또는 다른 네트워크들(112)과 같은 하나 이상의 통신 네트워크들에 대한 액세스를 용이하게 하기 위해 WTRU들(102a, 102b, 102c, 102d) 중 적어도 하나와 무선으로 인터페이싱하도록 구성된 임의의 유형의 디바이스일 수 있다. 예로서, 기지국들(114a, 114b)은 BTS(base transceiver station), NodeB, eNode B(eNB), 홈 노드 B, 홈 eNode B, 차세대 NodeB, 예컨대 gNode B(gNB), 뉴 라디오(new radio, NR) NodeB, 사이트 제어기(site controller), 액세스 포인트(AP), 무선 라우터 등일 수 있다. 기지국들(114a, 114b)은 각각 단일 요소로서 도시되지만, 기지국들(114a, 114b)은 임의의 수의 상호 접속된 기지국들 및/또는 네트워크 요소들을 포함할 수 있음을 알 것이다.
기지국(114a)은 RAN(104)의 일부일 수 있고, 이는 또한 기지국 제어기(base station controller, BSC), 무선 네트워크 제어기(radio network controller, RNC), 릴레이 노드 등과 같은 다른 기지국 및/또는 네트워크 요소들(도시되지 않음)을 포함할 수 있다 기지국(114a) 및/또는 기지국(114b)은 셀(도시되지 않음)이라고 지칭될 수 있는 하나 이상의 반송파 주파수 상에서 무선 신호들을 송신하도록 그리고/또는 수신하도록 구성될 수 있다. 이러한 주파수들은 면허 스펙트럼 및 무면허 스펙트럼 또는 면허 스펙트럼과 무면허 스펙트럼의 조합 내에 있을 수 있다. 셀은, 상대적으로 고정될 수 있거나 시간 경과에 따라 변할 수 있는 특정 지리 영역에 대한 무선 서비스를 위한 커버리지를 제공할 수 있다. 셀은 셀 섹터들로 더욱 분할될 수 있다. 예를 들어, 기지국(114a)과 연관된 셀은 3개의 섹터로 분할될 수 있다. 따라서, 일 실시예에서, 기지국(114a)은 3개의 송수신기, 즉 셀의 각각의 섹터에 대해 하나씩을 포함할 수 있다. 실시예에서, 기지국(114a)은 MIMO(multiple-input multiple-output) 기술을 채용할 수 있고, 셀의 각각의 섹터에 대해 다수의 송수신기들을 이용할 수 있다. 예를 들어, 신호들을 원하는 공간 방향들로 송신하고/하거나 수신하기 위해 빔포밍(beamforming)이 사용될 수 있다.
기지국들(114a, 114b)은 임의의 적합한 무선 통신 링크(예컨대, RF(radio frequency), 마이크로파, 센티미터파, 마이크로미터파, IR(infrared), UV(ultraviolet), 가시광 등)일 수 있는 에어 인터페이스(air interface)(116)를 통해 WTRU들(102a, 102b, 102c, 102d) 중 하나 이상과 통신할 수 있다. 에어 인터페이스(116)는 임의의 적합한 무선 액세스 기술(radio access technology, RAT)을 사용하여 확립될 수 있다.
더 구체적으로, 전술한 바와 같이, 통신 시스템(100)은 다중 액세스 시스템일 수 있으며, CDMA, TDMA, FDMA, OFDMA, SC-FDMA 등과 같은 하나 이상의 채널 액세스 스킴을 채용할 수 있다. 예를 들어, RAN(104) 내의 기지국(114a) 및 WTRU들(102a, 102b, 102c)은 광대역 CDMA(wideband CDMA, WCDMA)를 사용하여 에어 인터페이스(116)를 확립할 수 있는 유니버설 이동 통신 시스템(Universal Mobile Telecommunications System, UMTS) 지상 무선 액세스(UMTS Terrestrial Radio Access, UTRA)와 같은 무선 기술을 구현할 수 있다. WCDMA는 고속 패킷 액세스(High-Speed Packet Access, HSPA) 및/또는 진화된 HSPA(HSPA+)와 같은 통신 프로토콜들을 포함할 수 있다. HSPA는 고속 다운링크(DL) 패킷 액세스(High-Speed Downlink Packet Access, HSDPA) 및/또는 고속 업링크(UL) 패킷 액세스(High-Speed Uplink Packet Access, HSUPA)를 포함할 수 있다.
실시예에서, 기지국(114a) 및 WTRU들(102a, 102b, 102c)은 예를 들어, LTE(Long Term Evolution) 및/또는 LTE-A(LTE-Advanced) 및/또는 LTE-A Pro(LTE-Advanced Pro)를 사용하여 에어 인터페이스(116)를 확립할 수 있는 E-UTRA(Evolved UMTS Terrestrial Radio Access)와 같은 무선 기술을 구현할 수 있다.
실시예에서, 기지국(114a) 및 WTRU들(102a, 102b, 102c)은 NR을 사용하여 에어 인터페이스(116)를 확립할 수 있는 NR 무선 액세스와 같은 무선 기술을 구현할 수 있다.
실시예에서, 기지국(114a) 및 WTRU들(102a, 102b, 102c)은 다수의 무선 액세스 기술을 구현할 수 있다. 예를 들어, 기지국(114a) 및 WTRU들(102a, 102b, 102c)은 예를 들어, 이중 접속성(dual connectivity, DC) 원리들을 사용하여 LTE 무선 액세스 및 NR 무선 액세스를 함께 구현할 수 있다. 따라서, WTRU들(102a, 102b, 102c)에 의해 이용되는 에어 인터페이스는 다수의 유형의 무선 액세스 기술들 및/또는 다수의 유형의 기지국들(예컨대, eNB 및 gNB)로/로부터 송신되는 송신물들에 의해 특성화될 수 있다.
다른 실시예에서, 기지국(114a) 및 WTRU들(102a, 102b, 102c)은 IEEE 802.11(즉, WiFi(Wireless Fidelity)), IEEE 802.16(즉, WiMAX(Worldwide Interoperability for Microwave Access)), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, IS -2000(Interim Standard 2000), IS-95(Interim Standard 95), IS-856(Interim Standard 856), GSM(Global System for Mobile communications), EDGE(Enhanced Data rates for GSM Evolution), GERAN(GSM EDGE) 등과 같은 무선 기술들을 구현할 수 있다.
도 1a의 기지국(114b)은 예를 들어, 무선 라우터, 홈 Node B, 홈 eNode B, 또는 액세스 포인트일 수 있고, 예를 들어, 사업장, 집, 차량, 캠퍼스, 산업 시설, (예컨대, 드론들에 의한 사용을 위한) 에어 코리도(air corridor), 도로 등과 같은 국부화된 영역에서의 무선 접속성을 용이하게 하기 위해 임의의 적합한 RAT를 이용할 수 있다. 일 실시예에서, 기지국(114b) 및 WTRU들(102c, 102d)은 IEEE 802.11과 같은 무선 기술을 구현하여 무선 근거리 네트워크(wireless local area network, WLAN)를 확립할 수 있다. 실시예에서, 기지국(114b) 및 WTRU들(102c, 102d)은 무선 개인 영역 네트워크(wireless personal area network, WPAN)를 확립하기 위해 IEEE 802.15와 같은 무선 기술을 구현할 수 있다. 또 다른 실시예에서, 기지국(114b) 및 WTRU들(102c, 102d)은 셀룰러 기반 RAT(예컨대, WCDMA, CDMA2000, GSM, LTE, LTE-A, LTE-A Pro, NR 등)를 이용하여 피코셀 또는 펨토셀을 확립할 수 있다. 도 1a에 도시된 바와 같이, 기지국(114b)은 인터넷(110)에 대한 직접 접속을 가질 수 있다. 따라서, 기지국(114b)은 CN(106)을 통해 인터넷(110)에 액세스하도록 요구되지 않을 수 있다.
RAN(104)은 음성, 데이터, 애플리케이션들, 및/또는 VoIP(voice over internet protocol) 서비스들을 WTRU들(102a, 102b, 102c, 102d) 중 하나 이상에 제공하도록 구성된 임의의 유형의 네트워크일 수 있는 CN(106)과 통신할 수 있다. 데이터는 예를 들어, 상이한 처리량 요건들, 레이턴시 요건들, 에러 허용 한계 요건들, 신뢰성 요건들, 데이터 처리량 요건들, 이동성 요건들 등과 같은 다양한 서비스 품질(quality of service, QoS) 요건들을 가질 수 있다. CN(106)은 호출 제어, 과금 서비스들, 모바일 위치 기반 서비스들, 선불 통화, 인터넷 접속성, 비디오 분배(video distribution) 등을 제공하고/하거나 사용자 인증과 같은 하이 레벨 보안 기능들을 수행할 수 있다. 도 1a에 도시되지 않지만, RAN(104) 및/또는 CN(106)은, RAN(104)과 동일한 RAT 또는 상이한 RAT를 채용하는 다른 RAN들과 직접 또는 간접 통신할 수 있다는 것이 이해될 것이다. 예를 들어, NR 무선 기술을 이용하는 것일 수 있는 RAN(104)에 접속되는 것에 더하여, CN(106)은 또한 GSM, UMTS, CDMA 2000, WiMAX, E-UTRA, 또는 WiFi 무선 기술을 채용하는 다른 RAN(도시되지 않음)과 통신할 수 있다.
CN(106)은 또한 WTRU들(102a, 102b, 102c, 102d)이 PSTN(108), 인터넷(110), 및/또는 다른 네트워크들(112)에 액세스하기 위한 게이트웨이로서 역할을 할 수 있다. PSTN(108)은 POTS(plain old telephone service)를 제공하는 회선 교환 전화망들을 포함할 수 있다. 인터넷(110)은, 송신 제어 프로토콜/인터넷 프로토콜(transmission control protocol/internet protocol, TCP/IP) 일군(suite)에서의 TCP, 사용자 데이터그램 프로토콜(UDP) 및/또는 IP와 같은 공통 통신 프로토콜을 사용하는 상호접속된 컴퓨터 네트워크들 및 디바이스들의 글로벌 시스템을 포함할 수 있다. 네트워크들(112)은 다른 서비스 제공자들에 의해 소유되고 그리고/또는 운영되는 유선 및/또는 무선 통신 네트워크들을 포함할 수 있다. 예를 들어, 네트워크들(112)은 RAN(104)과 동일한 RAT 또는 상이한 RAT를 채용할 수 있는 하나 이상의 RAN들에 접속된 다른 CN을 포함할 수 있다.
통신 시스템(100) 내의 WTRU들(102a, 102b, 102c, 102d) 중 일부 또는 전부는 다중-모드 능력들을 포함할 수 있다(예컨대, WTRU들(102a, 102b, 102c, 102d)은 상이한 무선 링크들을 통해 상이한 무선 네트워크들과 통신하기 위해 다수의 송수신기를 포함할 수 있다). 예를 들어, 도 1a에 도시된 WTRU(102c)는 셀룰러 기반 무선 기술을 채용할 수 있는 기지국(114a) 및 IEEE 802 무선 기술을 채용할 수 있는 기지국(114b)과 통신하도록 구성될 수 있다.
도 1b는 예시적인 WTRU(102)를 예시하는 시스템 도면이다. 도 1b에 도시된 바와 같이, WTRU(102)는 특히 프로세서(118), 송수신기(120), 송수신 요소(122), 스피커/마이크로폰(124), 키패드(126), 디스플레이/터치패드(128), 비착탈식 메모리(130), 착탈식 메모리(132), 전원(134), GPS(global positioning system) 칩셋(136), 및/또는 다른 주변기기들(138)을 포함할 수 있다. WTRU(102)는 실시예와 여전히 부합하면서 전술한 요소들의 임의의 하위 조합을 포함할 수 있음을 알 것이다.
프로세서(118)는 범용 프로세서, 특수 목적 프로세서, 종래의 프로세서, 디지털 신호 프로세서(digital signal processor, DSP), 복수의 마이크로프로세서들, DSP 코어와 연관된 하나 이상의 마이크로프로세서들, 제어기, 마이크로제어기, 주문형 집적 회로(Application Specific Integrated Circuit, ASIC), 필드 프로그래밍가능 게이트 어레이(Field Programmable Gate Array, FPGA), 임의의 다른 유형의 집적 회로(integrated circuit, IC), 상태 기계 등일 수 있다. 프로세서(118)는 신호 코딩, 데이터 프로세싱, 전력 제어, 입출력 프로세싱, 및/또는 WTRU(102)가 무선 환경에서 동작하는 것을 가능하게 하는 임의의 다른 기능을 수행할 수 있다. 프로세서(118)는 송수신 요소(122)에 결합될 수 있는 송수신기(120)에 결합될 수 있다. 도 1b는 프로세서(118) 및 송수신기(120)를 별개의 컴포넌트들로서 도시하지만, 프로세서(118) 및 송수신기(120)는 전자 패키지 또는 칩 내에 함께 통합될 수 있다는 것을 알 것이다.
송수신 요소(122)는 에어 인터페이스(116)를 통해 기지국(예를 들어, 기지국(114a))에 신호를 송신하거나 그로부터 신호를 수신하도록 구성될 수 있다. 예를 들어, 일 실시예에서, 송수신 요소(122)는 RF 신호를 송신하도록 그리고/또는 수신하도록 구성된 안테나일 수 있다. 실시예에서, 송수신 요소(122)는, 예를 들면, IR, UV, 또는 가시광 신호를 송신하도록 그리고/또는 수신하도록 구성되는 방출기(emitter)/검출기(detector)일 수 있다. 또 다른 실시예에서, 송수신 요소(122)는 RF 신호 및 광 신호 둘 모두를 송신하도록 그리고/또는 수신하도록 구성될 수 있다. 송수신 요소(122)는 무선 신호들의 임의의 조합을 송신하도록 그리고/또는 수신하도록 구성될 수 있음을 알 것이다.
송수신 요소(122)가 단일 요소로서 도 1b에 도시되지만, WTRU(102)는 임의의 수의 송수신 요소(122)를 포함할 수 있다. 더 구체적으로, WTRU(102)는 MIMO 기술을 채용할 수 있다. 따라서, 일 실시예에서, WTRU(102)는 에어 인터페이스(116)를 통해 무선 신호를 송신 및 수신하기 위한 2개 이상의 송수신 요소(122)(예를 들어, 다수의 안테나)를 포함할 수 있다.
송수신기(120)는 송수신 요소(122)에 의해 송신될 신호를 변조하도록, 그리고 송수신 요소(122)에 의해 수신된 신호를 복조하도록 구성될 수 있다. 전술한 바와 같이, WTRU(102)는 다중 모드 능력을 가질 수 있다. 따라서, 송수신기(120)는, WTRU(102)가, 예를 들면, NR 및 IEEE 802.11과 같은 다수의 RAT를 통해 통신하는 것을 가능하게 하기 위한 다수의 송수신기를 포함할 수 있다.
WTRU(102)의 프로세서(118)는 스피커/마이크로폰(124), 키패드(126) 및/또는 디스플레이/터치 패드(128)(예를 들어, 액정 디스플레이(liquid crystal display, LCD) 디스플레이 유닛 또는 유기 발광 다이오드(organic light-emitting diode, OLED) 디스플레이 유닛)에 결합될 수 있고, 그들로부터 사용자 입력 데이터를 수신할 수 있다. 프로세서(118)는 또한 사용자 데이터를 스피커/마이크로폰(124), 키패드(126) 및/또는 디스플레이/터치 패드(128)에 출력할 수 있다. 또한, 프로세서(118)는 비착탈식 메모리(130) 및/또는 착탈식 메모리(132)와 같은 임의의 유형의 적합한 메모리로부터의 정보에 액세스하고, 그 안에 데이터를 저장할 수 있다. 비착탈식 메모리(130)는 랜덤 액세스 메모리(random-access memory, RAM), 판독 전용 메모리(read-only memory, ROM), 하드 디스크 또는 임의의 다른 유형의 메모리 저장 디바이스를 포함할 수 있다. 착탈식 메모리(132)는 가입자 식별 모듈(SIM) 카드, 메모리 스틱, 보안 디지털(SD) 메모리 카드 등을 포함할 수 있다. 다른 실시예들에서, 프로세서(118)는 서버 또는 홈 컴퓨터(도시되지 않음)와 같은 WTRU(102) 상에 물리적으로 위치하지 않는 메모리로부터 정보에 액세스하고 그 안에 데이터를 저장할 수 있다.
프로세서(118)는 전원(134)으로부터 전력을 수신할 수 있고, 전력을 WTRU(102) 내의 다른 컴포넌트들에 분배하도록 그리고/또는 제어하도록 구성될 수 있다. 전원(134)은 WTRU(102)에 전력을 공급하기 위한 임의의 적합한 디바이스일 수 있다. 예를 들어, 전원(134)은 하나 이상의 건전지(예컨대, 니켈-카드뮴(NiCd), 니켈-아연(NiZn), 니켈 금속 수소화물(NiMH), 리튬 이온(Li-ion) 등), 태양 전지, 연료 전지 등을 포함할 수 있다.
프로세서(118)는 또한 WTRU(102)의 현재 위치에 관한 위치 정보(예를 들어, 경도 및 위도)를 제공하도록 구성될 수 있는 GPS 칩셋(136)에 결합될 수 있다. GPS 칩셋(136)으로부터의 정보에 더하여 또는 그 대신에, WTRU(102)는 기지국(예를 들어, 기지국들(114a, 114b))으로부터 에어 인터페이스(116)를 통해 위치 정보를 수신하고/하거나, 2개 이상의 인근 기지국으로부터 수신되는 신호들의 타이밍에 기초하여 그의 위치를 결정할 수 있다. WTRU(102)는 실시예와 여전히 부합하면서 임의의 적합한 위치 결정 방법에 의해 위치 정보를 획득할 수 있다는 것을 알 것이다.
프로세서(118)는 추가적인 특징들, 기능 및/또는 유선 또는 무선 접속성을 제공하는 하나 이상의 소프트웨어 및/또는 하드웨어 모듈을 포함할 수 있는 다른 주변 기기들(138)에 추가로 결합될 수 있다. 예를 들어, 주변기기들(138)은 가속도계, 전자 나침반, 위성 송수신기, (사진들 및/또는 비디오를 위한) 디지털 카메라, 범용 직렬 버스(universal serial bus, USB) 포트, 진동 디바이스, 텔레비전 송수신기, 핸즈프리 헤드셋, 블루투스® 모듈, 주파수 변조(frequency modulated, FM) 무선 유닛, 디지털 음악 플레이어, 미디어 플레이어, 비디오 게임 플레이어 모듈, 인터넷 브라우저, 가상 현실 및/또는 증강 현실(VR/AR) 디바이스, 활동 추적기 등을 포함할 수 있다. 주변기기들(138)은 하나 이상의 센서들을 포함할 수 있다. 센서들은 자이로스코프, 가속도계, 홀 효과 센서, 자력계, 배향 센서, 근접 센서, 온도 센서, 시간 센서; 지리위치 센서(geolocation sensor), 고도계, 광 센서, 터치 센서, 자력계, 기압계, 제스처 센서, 생체 인식 센서, 습도 센서 등 중 하나 이상일 수 있다.
WTRU(102)는 (예를 들어, (예컨대, 송신을 위한) UL 및 (예컨대, 수신을 위한) DL 둘 모두에 대해 특정 서브프레임들과 연관된) 신호들의 일부 또는 전부의 송신 및 수신이 동반적이고 그리고/또는 동시적일 수 있는 전이중 무선 장치(full duplex radio)를 포함할 수 있다. 전이중 무선 장치는 하드웨어(예컨대, 초크(choke))를 통해 또는 프로세서(예컨대, 별개의 프로세서(도시되지 않음) 또는 프로세서(118))를 통한 신호 프로세싱을 통해 자가 간섭(self-interference)을 줄이고 그리고/또는 실질적으로 제거하는 간섭 관리 유닛을 포함할 수 있다. 실시예에서, WTRU(102)는 (예를 들어, (예컨대, 송신을 위한) UL 또는 (예컨대, 수신을 위한) DL에 대해 특정 서브프레임들과 연관된) 신호들의 일부 또는 전부의 송신 및 수신을 위한 반이중 무선 장치(half-duplex radio)를 포함할 수 있다.
도 1c는 실시예에 따른 RAN(104) 및 CN(106)을 예시하는 시스템도이다. 전술한 바와 같이, RAN(104)은 에어 인터페이스(116)를 통해 WTRU들(102a, 102b, 102c)과 통신하기 위해 E-UTRA 무선 기술을 채용할 수 있다. RAN(104)은 또한 CN(106)과 통신할 수 있다.
RAN(104)은 eNode-B(160a, 160b, 160c)를 포함할 수 있지만, RAN(104)은 실시예와 여전히 부합하면서 임의의 수의 eNode-B를 포함할 수 있다는 것이 인식될 것이다. eNode-B들(160a, 160b, 160c) 각각은 에어 인터페이스(116)를 통해 WTRU들(102a, 102b, 102c)과 통신하기 위해 하나 이상의 송수신기를 포함할 수 있다. 일 실시예에서, eNode-B(160a, 160b, 160c)는 MIMO 기술을 구현할 수 있다. 따라서, eNode-B(160a)는 예를 들어, WTRU(102a)에 무선 신호들을 송신하고 그리고/또는 그로부터 무선 신호들을 수신하기 위해 다수의 안테나를 사용할 수 있다.
eNode-B들(160a, 160b, 160c) 각각은 특정 셀(도시되지 않음)과 연관될 수 있고, 무선 자원 관리 결정들, 핸드오버 결정들, UL 및/또는 DL에서의 사용자들의 스케줄링 등을 핸들링하도록 구성될 수 있다. 도 1c에 도시된 바와 같이, eNodeB들(160a, 160b, 160c)은 X2 인터페이스를 통해 서로 통신할 수 있다.
도 1c에 도시된 CN(106)은 이동성 관리 엔티티(mobility management entity, MME)(162), 서빙 게이트웨이(serving gateway, SGW)(164), 및 패킷 데이터 네트워크(packet data network, PDN) 게이트웨이(PDN gateway, PGW)(166)를 포함할 수 있다. 전술한 요소들이 CN(106)의 일부로서 묘사되지만, 이들 요소들 중 임의의 것이 CN 운영자 이외의 엔티티에 의해 소유되고 그리고/또는 운영될 수 있다는 것이 이해될 것이다.
MME(162)는 S1 인터페이스를 통해 RAN(104) 내의 eNode-B들(162a, 162b, 162c) 각각에 접속될 수 있고 제어 노드로서의 역할을 할 수 있다. 예를 들어, MME(162)는 WTRU들(102a, 102b, 102c)의 사용자들을 인증하는 것, 베어러 활성화/비활성화, WTRU들(102a, 102b, 102c)의 초기 접속(initial attach) 동안 특정의 서빙 게이트웨이를 선택하는 것 등을 책임지고 있을 수 있다. MME(162)는 RAN(104)과, GSM 및/또는 WCDMA와 같은 다른 무선 기술들을 사용하는 다른 RAN들(도시되지 않음) 간에 스위칭하기 위한 제어 평면 기능을 제공할 수 있다.
SGW(164)는 S1 인터페이스를 통해 RAN(104) 내의 eNode B들(160a, 160b, 160c) 각각에 접속될 수 있다. SGW(164)는 일반적으로 WTRU들(102a, 102b, 102c)로/로부터 사용자 데이터 패킷들을 라우팅하고 포워딩할 수 있다. SGW(164)는 인터-eNode B 핸드오버들 동안 사용자 평면들을 앵커링(anchoring)하는 것, WTRU들(102a, 102b, 102c)에 대해 DL 데이터가 이용가능할 때 페이징(paging)을 트리거하는 것, WTRU들(102a, 102b, 102c)의 정황들을 관리하고 저장하는 것 등과 같은 다른 기능들을 수행할 수 있다.
SGW(164)는 WTRU들(102a, 102b, 102c)과 IP 인에이블드 디바이스(IP-enabled device)들 사이의 통신을 용이하게 하기 위해, 인터넷(110)과 같은 패킷 교환 네트워크들에 대한 액세스를 WTRU들(102a, 102b, 102c)에 제공할 수 있는 PGW(166)에 접속될 수 있다.
CN(106)은 다른 네트워크들과의 통신을 용이하게 할 수 있다. 예를 들어, CN(106)은 WTRU들(102a, 102b, 102c)과 전통적인 지상선 통신 디바이스들 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크들에 대한 액세스를 WTRU들(102a, 102b, 102c)에 제공할 수 있다. 예를 들어, CN(106)은 CN(106)과 PSTN(108) 사이의 인터페이스로서 역할을 하는 IP 게이트웨이(예컨대, IMS(IP multimedia subsystem) 서버)를 포함할 수 있거나 그와 통신할 수 있다. 또한, CN(106)은 다른 서비스 제공자들에 의해 소유되고 그리고/또는 운영되는 다른 유선 및/또는 무선 네트워크들을 포함할 수 있는 다른 네트워크들(112)에 대한 액세스를 WTRU들(102a, 102b, 102c)에 제공할 수 있다.
WTRU가 도 1a 내지 도 1d에서 무선 단말기로서 설명되지만, 특정한 대표적 실시예들에서 그러한 단말기는 통신 네트워크와의 유선 통신 인터페이스들을 (예컨대, 일시적으로 또는 영구적으로) 사용할 수 있다는 것이 고려된다.
대표적 실시예에서, 다른 네트워크(112)는 WLAN일 수 있다.
인프라구조 기본 서비스 세트(Basic Service Set, BSS) 모드의 WLAN은 BSS에 대한 액세스 포인트(AP) 및 AP와 연관된 하나 이상의 스테이션(STA)을 가질 수 있다. AP는 BSS로 그리고/또는 BSS로부터 트래픽을 운반하는 분배 시스템(Distribution System, DS) 또는 다른 유형의 유선/무선 네트워크에 대한 액세스 또는 인터페이스를 가질 수 있다. BSS 외부로부터 비롯되는 STA들로의 트래픽은 AP를 통해 도착할 수 있고 STA들에 전달될 수 있다. STA들로부터 비롯되어 BSS 외부의 목적지들로의 트래픽은 각각의 목적지들로 전달되도록 AP에 송신될 수 있다. BSS 내의 STA들 간의 트래픽은 AP를 통해 송신될 수 있는데, 예를 들어, 소스(source) STA는 트래픽을 AP에 송신할 수 있고, AP는 트래픽을 목적지 STA에 전달할 수 있다. BSS 내의 STA들 간의 트래픽은 피어-투-피어 트래픽(peer-to-peer traffic)으로 간주되고 그리고/또는 지칭될 수 있다. 피어-투-피어 트래픽은 직접 링크 셋업(direct link setup, DLS)을 사용하여 소스 STA와 목적지 STA 사이에서 (예컨대, 그들 사이에서 직접) 송신될 수 있다. 특정 대표적 실시예들에서, DLS는 802.11e DLS 또는 802.11z TDLS(tunneled DLS)를 사용할 수 있다. IBSS(Independent BSS) 모드를 사용하는 WLAN은 AP를 갖지 않을 수 있고, IBSS 내의 또는 IBSS를 사용하는 STA들(예컨대, 모든 STA들)은 서로 직접 통신할 수 있다. IBSS 통신 모드는 때때로 본 명세서에서 "애드혹(ad-hoc)" 통신 모드라고 지칭될 수 있다.
802.11ac 인프라구조 동작 모드 또는 유사한 동작 모드를 사용할 때, AP는 주 채널과 같은 고정 채널 상에서 비콘(beacon)을 송신할 수 있다. 주 채널은 고정된 폭(예컨대, 20 ㎒ 폭의 대역폭) 또는 동적으로 설정된 폭일 수 있다. 주 채널은 BSS의 동작 채널일 수 있으며, STA들에 의해 AP와의 접속을 확립하기 위해 사용될 수 있다. 소정 대표적 실시예들에서, CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance)가 예를 들어, 802.11 시스템들에서 구현될 수 있다. CSMA/CA의 경우, AP를 포함하는 STA들(예컨대, 모든 STA)은 주 채널을 감지할 수 있다. 주 채널이 특정 STA에 의해 사용 중인 것으로 감지/검출 및/또는 결정되면, 특정 STA는 백오프될 수 있다. 하나의 STA(예컨대, 단지 하나의 스테이션)가 주어진 BSS에서 임의의 주어진 시간에 송신할 수 있다.
고처리량(High Throughput, HT) STA들은, 예를 들어 40 ㎒ 폭의 채널을 형성하기 위해 인접하거나 인접하지 않은 20 ㎒ 채널과 주 20 ㎒ 채널의 조합을 통해, 통신을 위한 40 ㎒ 폭의 채널을 사용할 수 있다.
초고처리량(Very High Throughput, VHT) STA들은 20 ㎒, 40 ㎒, 80 ㎒ 및/또는 160 ㎒ 폭의 채널들을 지원할 수 있다. 40 ㎒ 및/또는 80 ㎒ 채널들은 인접한 20 ㎒ 채널들을 조합함으로써 형성될 수 있다. 160 ㎒ 채널은 8개의 인접한 20 ㎒ 채널들을 조합함으로써, 또는 80+80 구성으로 지칭될 수 있는 2개의 비-인접한 80 ㎒ 채널을 조합함으로써 형성될 수 있다. 80+80 구성의 경우, 데이터는 채널 인코딩 후에 데이터를 2개의 스트림으로 분할할 수 있는 세그먼트 파서(segment parser)를 통해 전달될 수 있다. IFFT(Inverse Fast Fourier Transform) 프로세싱 및 시간 도메인 프로세싱이 각각의 스트림에 대해 개별적으로 행해질 수 있다. 스트림들은 2개의 80 ㎒ 채널에 맵핑될 수 있고, 데이터는 송신 STA에 의해 송신될 수 있다. 수신 STA의 수신기에서, 80+80 구성에 대한 전술된 동작이 반전될 수 있고, 조합된 데이터는 매체 액세스 제어(Medium Access Control, MAC)에 송신될 수 있다.
802.11af 및 802.11ah에 의해 서브(sub) 1 ㎓ 동작 모드가 지원된다. 채널 동작 대역폭들 및 반송파들은 802.11n 및 802.11ac에서 사용되는 것들에 비해 802.11af 및 802.11ah에서 감소된다. 802.11af는 TV 백색 공간(TV White Space, TVWS) 스펙트럼에서 5 ㎒, 10 ㎒ 및 20 ㎒ 대역폭들을 지원하고, 802.11ah는 비-TVWS 스펙트럼을 사용하는 1 ㎒, 2 ㎒, 4 ㎒, 8 ㎒ 및 16 ㎒ 대역폭들을 지원한다. 대표적 실시예에 따르면, 802.11ah는 매크로 커버리지 영역 내의 MTC 디바이스들과 같은 미터 유형 제어/기계 유형 통신(Meter Type Control/Machine-Type Communications, MTC)을 지원할 수 있다. MTC 디바이스들은 특정 능력들 예를 들어, 특정의 그리고/또는 제한된 대역폭들에 대한 지원(예컨대, 그것들만의 지원)을 포함하는 제한된 능력들을 가질 수 있다. MTC 디바이스들은 (예컨대, 매우 긴 배터리 수명을 유지하기 위해) 임계치를 초과하는 배터리 수명을 갖는 배터리를 포함할 수 있다.
802.11n, 802.11ac, 802.11af 및 802.11ah와 같은 다수의 채널 및 채널 대역폭을 지원할 수 있는 WLAN 시스템들은 주 채널로서 지정될 수 있는 채널을 포함한다. 주 채널은 BSS 내의 모든 STA들에 의해 지원되는 가장 큰 공통 동작 대역폭과 동일한 대역폭을 가질 수 있다. 주 채널의 대역폭은 BSS에서 동작하는 모든 STA들 중에서 가장 작은 대역폭 동작 모드를 지원하는 STA에 의해 설정되고 그리고/또는 제한될 수 있다. 802.11ah의 예에서, 주 채널은 AP 및 BSS 내의 다른 STA들이 2 ㎒, 4 ㎒, 8 ㎒, 16 ㎒ 및/또는 다른 채널 대역폭 동작 모드들을 지원하더라도 1 ㎒ 모드를 지원하는(예컨대, 그것만을 지원하는) STA들(예컨대, MTC 유형 디바이스들)에 대해 1 ㎒ 폭일 수 있다. 반송파 감지 및/또는 네트워크 할당 벡터(Network Allocation Vector, NAV) 설정들은 주 채널의 상태에 의존할 수 있다. 주 채널이, 예를 들어 STA(이는, 1 ㎒ 동작 모드만을 지원함)의 AP로의 송신으로 인해 사용 중인 경우, 모든 이용가능 주파수 대역들은 이용가능 주파수 대역들의 대부분이 유휴 상태로 유지되더라도 사용 중인 것으로 간주될 수 있다.
미국에서, 802.11ah에 의해 사용될 수 있는 이용가능 주파수 대역들은 902 ㎒ 내지 928 ㎒이다. 한국에서, 이용가능 주파수 대역들은 917.5 ㎒ 내지 923.5 ㎒이다. 일본에서, 이용가능 주파수 대역들은 916.5 ㎒ 내지 927.5 ㎒이다. 802.11ah에 대해 이용가능한 총 대역폭은 국가 코드에 따라 6 ㎒ 내지 26 ㎒이다.
도 1d는 실시예에 따른 RAN(104) 및 CN(106)을 예시하는 시스템도이다. 위에서 언급된 바와 같이, RAN(104)은 에어 인터페이스(116)를 통해 WTRU들(102a, 102b, 102c)과 통신하기 위해 NR 무선 기술을 채용할 수 있다. RAN(104)은 또한 CN(106)과 통신할 수 있다.
RAN(104)은 gNB들(180a, 180b, 180c)을 포함할 수 있지만, RAN(104)은 실시예와 여전히 부합하면서 임의의 수의 gNB들을 포함할 수도 있다는 것이 이해될 것이다. gNB들(180a, 180b, 180c) 각각은 에어 인터페이스(116)를 통해 WTRU들(102a, 102b, 102c)과 통신하기 위한 하나 이상의 송수신기를 포함할 수 있다. 일 실시예에서, gNB들(180a, 180b, 180c)은 MIMO 기술을 구현할 수 있다. 예를 들어, gNB들(180a, 108b)은 gNB들(180a, 180b, 180c)에 신호들을 송신하고 그리고/또는 그들로부터 신호들을 수신하기 위해 빔포밍을 이용할 수 있다. 따라서, gNB(180a)는 예를 들어, WTRU(102a)에 무선 신호들을 송신하고 그리고/또는 그로부터 무선 신호들을 수신하기 위해 다수의 안테나를 사용할 수 있다. 실시예에서, gNB들(180a, 180b, 180c)은 반송파 집성 기술을 구현할 수 있다. 예를 들어, gNB(180a)는 다수의 컴포넌트 반송파를 WTRU(102a)에 송신할 수 있다(도시되지 않음). 이러한 컴포넌트 반송파들의 서브세트는 무면허 스펙트럼 상에 있을 수 있는 반면, 나머지 컴포넌트 반송파들은 면허 스펙트럼 상에 있을 수 있다. 실시예에서, gNB들(180a, 180b, 180c)은 CoMP(Coordinated Multi-Point) 기술을 구현할 수 있다. 예를 들어, WTRU(102a)는 gNB(180a) 및 gNB(180b)(및/또는 gNB(180c))로부터 조정된 송신물들을 수신할 수 있다.
WTRU들(102a, 102b, 102c)은 확장가능 뉴머롤로지(scalable numerology)와 연관된 송신들을 사용하여 gNB들(180a, 180b, 180c)과 통신할 수 있다. 예를 들어, OFDM 심볼 간격 및/또는 OFDM 부반송파 간격은 상이한 송신들, 상이한 셀들, 및/또는 무선 송신 스펙트럼의 상이한 부분들에 대해 변할 수 있다. WTRU들(102a, 102b, 102c)은 (예컨대, 변하는 수의 OFDM 심볼들 및/또는 지속적인(lasting) 변하는 절대 시간 길이들을 포함하는) 다양한 또는 확장가능 길이들의 서브프레임 또는 송신 시간 간격(transmission time interval, TTI)들을 사용하여 gNB들(180a, 180b, 180c)과 통신할 수 있다.
gNB들(180a, 180b, 180c)은 독립형 구성 및/또는 비독립형 구성에서 WTRU들(102a, 102b, 102c)과 통신하도록 구성될 수 있다. 독립형 구성에서, WTRU들(102a, 102b, 102c)은 (예컨대, eNodeB들(160a, 160b, 160c)과 같은) 다른 RAN들에 또한 액세스하지 않고 gNB들(180a, 180b, 180c)과 통신할 수 있다. 독립형 구성에서, WTRU들(102a, 102b, 102c)은 이동성 앵커 포인트로서 gNB들(180a, 180b, 180c) 중 하나 이상을 이용할 수 있다. 독립형 구성에서, WTRU들(102a, 102b, 102c)은 무면허 대역 내의 신호들을 사용하여 gNB들(180a, 180b, 180c)과 통신할 수 있다. 비독립형 구성에서, WTRU들(102a, 102b, 102c)은 예를 들어, eNode-B들(160a, 160b, 160c)과 같은 다른 RAN과 또한 통신하면서/그에 접속하면서 gNB들(180a, 180b, 180c)과 통신하면서/그에 접속할 수 있다. 예를 들어, WTRU들(102a, 102b, 102c)은 하나 이상의 gNB(180a, 180b, 180c) 및 하나 이상의 eNode-B(160a, 160b, 160c)와 실질적으로 동시에 통신하기 위해 DC 원리들을 구현할 수 있다. 비독립형 구성에서, eNode-B들(160a, 160b, 160c)은 WTRU들(102a, 102b, 102c)에 대한 이동성 앵커로서 역할을 할 수 있고, gNB들(180a, 180b, 180c)은 WTRU들(102a, 102b, 102c)을 서비스하기 위한 추가적인 커버리지 및/또는 처리량을 제공할 수 있다.
gNB들(180a, 180b, 180c) 각각은 특정 셀(도시되지 않음)과 연관될 수 있고, 무선 자원 관리 결정들, 핸드오버 결정들, UL 및/또는 DL에서의 사용자들의 스케줄링, 네트워크 슬라이싱의 지원, DC, NR과 E-UTRA 사이의 연동, 사용자 평면 데이터의 사용자 평면 기능(User Plane Function, UPF)(184a, 184b)으로의 라우팅, 제어 평면 정보의 액세스 및 이동성 관리 기능(Access and Mobility Management Function, AMF)(182a, 182b)으로의 라우팅 등을 핸들링하도록 구성될 수 있다. 도 1d에 도시된 바와 같이, gNB들(180a, 180b, 180c)은 Xn 인터페이스를 통해 서로 통신할 수 있다.
도 1d에 도시된 CN(106)은 적어도 하나의 AMF(182a, 182b), 적어도 하나의 UPF(184a, 184b), 적어도 하나의 세션 관리 기능(Session Management Function, SMF)(183a, 183b), 및 가능하게는 데이터 네트워크(Data Network, DN)(185a, 185b)를 포함할 수 있다. 전술한 요소들이 CN(106)의 일부로서 묘사되지만, 이들 요소들 중 임의의 것이 CN 운영자 이외의 엔티티에 의해 소유되고 그리고/또는 운영될 수 있다는 것이 이해될 것이다.
AMF(182a, 182b)는 N2 인터페이스를 통해 RAN(104) 내의 gNB들(180a, 180b, 180c) 중 하나 이상에 접속될 수 있고, 제어 노드로서 역할을 할 수 있다. 예를 들어, AMF(182a, 182b)는 WTRU들(102a, 102b, 102c)의 사용자들의 인증, 네트워크 슬라이싱(예컨대, 상이한 요건들을 갖는 상이한 프로토콜 데이터 유닛(protocol data unit, PDU) 세션들의 핸들링)에 대한 지원, 특정의 SMF(183a, 183b)의 선택, 등록 영역의 관리, NAS(non-access stratum) 시그널링의 종료, 이동성 관리 등을 담당할 수 있다. 네트워크 슬라이싱은 WTRU들(102a, 102b, 102c)에 의해 이용되는 서비스들의 유형들에 기초하여 WTRU들(102a, 102b, 102c)에 대한 CN 지원을 맞춤화하기 위해 AMF(182a, 182b)에 의해 사용될 수 있다. 예를 들어, URLLC(ultra-reliable low latency) 액세스에 의존하는 서비스들, eMBB(enhanced massive mobile broadband) 액세스에 의존하는 서비스들, MTC 액세스에 대한 서비스들 등과 같은 상이한 사용 사례들에 대해 상이한 네트워크 슬라이스들이 확립될 수 있다. AMF(182a, 182b)는 RAN(104)과, LTE, LTE-A, LTE-A Pro 및/또는 WiFi와 같은 비-3GPP 액세스 기술들과 같은 다른 무선 기술들을 채용하는 다른 RAN들(도시되지 않음) 사이에서 스위칭하기 위한 제어 평면 기능을 제공할 수 있다.
SMF(183a, 183b)는 N11 인터페이스를 통해 CN(106) 내의 AMF(182a, 182b)에 접속될 수 있다. SMF(183a, 183b)는 또한 N4 인터페이스를 통해 CN(106) 내의 UPF(184a, 184b)에 접속될 수 있다. SMF(183a, 183b)는 UPF(184a, 184b)를 선택 및 제어하고, UPF(184a, 184b)를 통한 트래픽의 라우팅을 구성할 수 있다. SMF(183a, 183b)는 UE IP 주소를 관리하고 할당하는 것, PDU 세션들을 관리하는 것, 정책 시행 및 QoS를 제어하는 것, DL 데이터 통지들을 제공하는 것 등과 같은 다른 기능들을 수행할 수 있다. PDU 세션 유형은 IP 기반, 비-IP 기반, 이더넷 기반 등일 수 있다.
UPF(184a, 184b)는 WTRU들(102a, 102b, 102c)과 IP 인에이블드 디바이스들 사이의 통신을 용이하게 하기 위해, 인터넷(110)과 같은 패킷 교환 네트워크들에 대한 액세스를 WTRU들(102a, 102b, 102c)에 제공할 수 있는 N3 인터페이스를 통해 RAN(104) 내의 gNB들(180a, 180b, 180c) 중 하나 이상에 접속될 수 있다. UPF(184, 184b)는 패킷들을 라우팅 및 포워딩하는 것, 사용자 평면 정책들을 시행하는 것, 멀티-홈 PDU 세션들을 지원하는 것, 사용자 평면 QoS를 핸들링하는 것, DL 패킷들을 버퍼링하는 것, 이동성 앵커링을 제공하는 것 등과 같은 다른 기능들을 수행할 수 있다.
CN(106)은 다른 네트워크들과의 통신을 용이하게 할 수 있다. 예를 들어, CN(106)은 CN(106)과 PSTN(108) 사이의 인터페이스로서 역할을 하는 IP 게이트웨이(예컨대, IMS(IP multimedia subsystem) 서버)를 포함할 수 있거나 그와 통신할 수 있다. 또한, CN(106)은 다른 서비스 제공자들에 의해 소유되고 그리고/또는 운영되는 다른 유선 및/또는 무선 네트워크들을 포함할 수 있는 다른 네트워크들(112)에 대한 액세스를 WTRU들(102a, 102b, 102c)에 제공할 수 있다. 일 실시예에서, WTRU들(102a, 102b, 102c)은 UPF(184a, 184b)에 대한 N3 인터페이스 및 UPF(184a, 184b)와 로컬 DN(185a, 185b) 사이의 N6 인터페이스를 경유해 UPF(184a, 184b)를 통해 로컬 DN(185a, 185b)에 접속될 수 있다.
도 1a 내지 도 1d, 및 도 1a 내지 도 1d의 대응하는 설명의 관점에서, WTRU(102a 내지 102d), 기지국(114a, 114b), eNode-B(160a 내지 160c), MME(162), SGW(164), PGW(166), gNB(180a 내지 180c), AMF(182a, 182b), UPF(184a, 184b), SMF(183a, 183b), DN(185a, 185b) 및/또는 본 명세서에 설명된 임의의 다른 디바이스(들) 중 하나 이상과 관련하여 본 명세서에 설명된 기능들 중 하나 이상 또는 전부는 하나 이상의 에뮬레이션 디바이스(emulation device)들(도시되지 않음)에 의해 수행될 수 있다. 에뮬레이션 디바이스들은 본 명세서에 설명된 기능들 중 하나 이상 또는 전부를 에뮬레이션하도록 구성된 하나 이상의 디바이스일 수 있다. 예를 들어, 에뮬레이션 디바이스들은 다른 디바이스들을 테스트하고 그리고/또는 네트워크 및/또는 WTRU 기능들을 시뮬레이션하기 위해 사용될 수 있다.
에뮬레이션 디바이스들은 실험실 환경 및/또는 운영자 네트워크 환경에서 다른 디바이스들의 하나 이상의 테스트를 구현하도록 설계될 수 있다. 예를 들어, 하나 이상의 에뮬레이션 디바이스는 통신 네트워크 내의 다른 디바이스들을 테스트하기 위해 유선 및/또는 무선 통신 네트워크의 일부로서 완전히 또는 부분적으로 구현되고 그리고/또는 배치되면서 하나 이상의 또는 모든 기능들을 수행할 수 있다. 하나 이상의 에뮬레이션 디바이스는 유선 및/또는 무선 통신 네트워크의 일부로서 일시적으로 구현/배치되면서 하나 이상의 또는 모든 기능들을 수행할 수 있다. 에뮬레이션 디바이스는 테스트를 위해 그리고/또는 OTA(over-the-air) 무선 통신을 사용하여 테스트를 수행하기 위해 다른 디바이스에 직접 결합될 수 있다.
하나 이상의 에뮬레이션 디바이스는 유선 및/또는 무선 통신 네트워크의 일부로서 구현/배치되지 않으면서 모든 기능들을 포함하는 하나 이상의 기능을 수행할 수 있다. 예를 들어, 에뮬레이션 디바이스들은 하나 이상의 컴포넌트의 테스트를 구현하기 위해 테스트 실험실 및/또는 배치되지 않은(예컨대, 테스트) 유선 및/또는 무선 통신 네트워크에서의 테스트 시나리오에서 이용될 수 있다. 하나 이상의 에뮬레이션 디바이스는 테스트 장비일 수 있다. RF 회로부(예컨대, 이는 하나 이상의 안테나를 포함할 수 있음)를 통한 직접 RF 결합 및/또는 무선 통신이 데이터를 송신하고 그리고/또는 수신하기 위해 에뮬레이션 디바이스들에 의해 사용될 수 있다.
빠른 사용자 데이터그램 프로토콜(UDP) 인터넷 접속(QUIC)은 현재 개발 중인 UDP-기반, 스트림 다중화, 암호화된 전송 프로토콜이다. 본 명세서에 기술된 프록시들 등을 사용하는 것을 포함하여, 기판에 대한 것과 같은 QUIC를 사용하기 위한 많은 사례들이 존재할 수 있다.
다중경로 프로토콜들은 물리적 계층, 링크 계층, 및/또는 전송 계층을 포함하는 다수의 계층에 존재할 수 있다. 특히, 전송 계층 다중경로 프로토콜들은 다중경로 송신 제어 프로토콜(TCP)(MPTCP), 스트림 제어 송신 프로토콜(tream Control Transmission Protocol, SCTP), 및 다중경로 QUIC(MP-QUIC)를 포함할 수 있다.
본 명세서에 기술된 하나 이상의 실시예들에서, 전송 계층에 다중 홉(MH), 다중경로(MP) 메커니즘(MHMP)이 존재할 수 있으며, 이는, 그것이 보안 전송 프로토콜이기 때문에, QUIC 및 그의 다중경로 확장(MP-QUIC)들을 기본 기술들로서 사용할 수 있다. MHMP 전송 접속의 양측들에 수반된 호스트들은 엔드포인트들 또는 피어들로서 지정될 수 있다. 엔드포인트는 또한 최종 사용자, 클라이언트 엔드포인트, 목적지 엔드포인트, 타깃 엔드포인트, 서버, 또는 서버 엔드포인트, 사용자 디바이스, WTRU, UE, 단말기, 호스트, 또는 호스트 사용자로도 지칭될 수 있고, 그러한 용어들은 전체에 걸쳐 상호교환가능하게 사용될 수 있다. 클라이언트 엔드포인트는 접속을 개시할 수 있는 한편, 다른 엔드포인트는 서버 엔드포인트일 수 있다. MHMP 접속 내의 중간 노드들은 프록시 노드들, 네트워크 노드들, 또는 포워딩 노드들로 불릴 수 있다. 그러한 용어들은 전체에 걸쳐 상호교환가능하게 사용될 수 있다.
전체에 걸쳐 참조된 바와 같은 엔드포인트들, 프록시들, 노드들, 및 다른 시스템들은 경로들을 확립하여, 하드웨어 또는 소프트웨어를 통해, 그러한 경로들을 통한 데이터의 흐름을 스티어링할 수 있다. WTRU, NodeB, 또는 STA 내에 통합되거나 또는 그에 동작가능하게 접속될 수 있는 전술된 컴포넌트들 및 주변기기들에 더하여, 프록시를 구현하거나 또는 배치하는데 사용되는 엔드포인트, 서버, 또는 임의의 노드는 다음 중 임의의 것을 포함할 수 있다: 프로세서; 필드 프로그래밍가능 게이트 어레이(FPGA); 집적 회로; 메모리 뱅크; 랜덤 액세스 메모리(RAM); 비휘발성 2차 저장소; 자기, 광학, 또는 전자 메모리와 같은 비일시적 저장 매체; 안테나; 안테나 어레이; 네트워크 인터페이스 제어기; 네트워크 인터페이스 카드; 모뎀; 허브; 스위치; 또는 라우터.
MHMP 전송 프로토콜의 목표는 피어들 사이의 종단간(end-to-end, e2e) MHMP 접속을 확립하고 유지하는 것일 수 있다. e2e MHMP 접속은, 경로 접속들로 불릴 수 있는 엔드포인트들 사이의 하나 이상의 개별 흐름들로 구성될 수 있고, 또한 더 간단히 "경로들"로 지칭될 수 있다. 프록시를 통한 경로 접속들은 "간접 경로들"일 수 있는 한편, 다른 것들은 "직접 경로들"일 수 있다. MP-QUIC, MPTCP, 및 SCTP와 같은 다중경로 프로토콜들은 피어들 사이의 직접 경로들만을 가질 수 있는 한편, MHMP 프로토콜들은 직접 경로 및 간접 경로 둘 모두를 가질 수 있다.
엔드포인트와 프록시 사이의 접속은 본 명세서에서 "프록시 접속"으로 불릴 수 있다. 2개의 프록시들이 또한 서로 접속될 수 있으며, 이는 프록시 접속으로 지칭될 수 있다.
일부 레거시 경우들에서, 다중경로 전송 세션의 엔드포인트들 사이의 트래픽 스티어링은, 라우팅 디바이스들의 배치 및 구성, 그리고 그들의 네트워크들에서의 프로토콜들을 통해, 네트워크 운영자들의 제어 하에 있을 수 있다. 일부 사례들에서, 경로 접속들을 확립하기 위해 어떤 로컬 네트워크 인터페이스들(예컨대, WiFi 또는 셀룰러)을 사용할지를 선택하는 것을 넘어서, 최종 사용자들 또는 애플리케이션 제공자들 중 어느 것도 트래픽 스티어링을 통한 직접 제어를 가질 수 없다.
본 명세서에 개시된 하나 이상의 실시예들에서, 전송 계층에서의 다중 홉, 다중경로 프로토콜이 존재할 수 있으며, 여기서 최종 사용자들은 프록시들의 선택을 통해, 그리고 애플리케이션 제공자들은 (예컨대, 물리적 또는 가상 서버들을 통한 소프트웨어 인스턴스들로서, 또는 가상 네트워크 기능(Virtual Network Function, VNF)들로서) 네트워크 내의 프록시들의 배치를 통해, 경로 선택 및 사용량에 더 직접적으로 영향을 미칠 수 있다. 이러한 접근법은, 개시된 실시예들을 구현하기 위한 사용 사례들 및 동기들의 적어도 일부 예들을 예시하는, 표 1에 요약된 바와 같은, 다수의 사용 사례들을 가능하게 할 수 있다.
Figure pct00001
일부 사용 사례들에서, 애플리케이션 및 서비스 제공자들에 의한 다수의 네트워크 경로들을 통한 심층 제어가 존재할 수 있다. Netflix, Google, 또는 Facebook과 같은 클라우드 애플리케이션 제공자는 그의 클라이언트들의 접속성의 다중경로 양상들에 대해 일부 제어를 행사하여, 네트워크 내에서 경로 다양성을 심층적으로 가능하게 할 수 있다. 예를 들어, 그러한 클라우드 애플리케이션 제공자는 복수의 데이터 센터들, 액세스, 및 트랜짓 네트워크(transit network)들에서 프록시 VNF들을 인스턴스화할 수 있다(그러한 네트워크들이 VNF 호스팅 서비스들을 제공한다고 가정함). 클라이언트들은 처음에 MHMP 가능 전송 프로토콜을 사용하여 클라우드 애플리케이션 서버에 접속할 수 있다. 이어서, 클라우드 애플리케이션 서버는, 클라이언트가 접속할 수 있는 프록시 VNF들과 연관된 IP 주소들 및 포트들의 목록을, 클라이언트-서버 접속을 통해 광고함으로써 경로 다양성을 가능하게 할 수 있다. 대안적으로, 클라이언트는 또한 상이한 채널로 구성되거나, 또는 그로부터 클라이언트가 서비스에 접속하기 위해 사용할 수 있는 프록시 VNF들과 연관된 IP 주소들 및 포트들의 목록을 수신할 수 있으며, 이는 따라서, 이러한 정보가 직접 접속을 통해 제공될 것을 요구하지 않을 것이다. 이어서, 클라이언트는 제공된 프록시 VNF들을 통해 클라우드 애플리케이션 서버와의 e2e 접속들을 확립할 수 있다. 프록시형 e2e 접속을 확립하기 위해, 클라이언트는 IP 주소/포트 정보를 프록시에 통신할 수 있고, 추가적으로 또는 대안적으로, 타깃 애플리케이션 계층 아이덴티티(예컨대, 사용자이름, 관심 토픽, 등)를 프록시에 통신할 수 있다. 이러한 지점에서부터, 클라이언트는, 예를 들어, 높은 신뢰성, 보안성, 등과 같은 기준들에 기초하여 애플리케이션 제공자에 의해 선택될 수 있는 상이한 인터넷 자율 시스템들을 가로지르는, 다수의 MHMP 접속들을 통해 서버에 접속될 수 있다. 클라이언트는, 애플리케이션 제공자 정책에 따라, 클라우드 애플리케이션 서버에 대한 직접 접속을 계속해서 사용하거나 또는 사용하지 않을 수 있다. 이러한 사용 사례에서, 프록시들의 주요 역할은 애플리케이션 제어된 경로 다양성을 가능하게 하는 것일 수 있다. 일부 경우에서, 다수의 네트워크 경로들을 통한 그러한 심층 제어는 이종 네트워크(heterogeneous network) 상황에서 애플리케이션 제공자들에게 이용가능하지 않을 수 있다.
이러한 심층 제어는, 트래픽 흐름들이 WTRU와 UPF 사이의 다수의 경로들을 통해 전송될 수 있는, 3GPP에서의 하위 계층 액세스 스티어링과 같은 기존 기법들을 대체하는 것으로 여겨지지 않을 수 있다. 그러나, 그러한 심층 제어는, 애플리케이션 계층 엔티티(예컨대, 애플리케이션 제공자, 또는 사용자)가 트래픽을 전송할 다수의 종단간 경로들을 특정할 수 있게 함으로써 그러한 기법들을 보완할 수 있으며, 여기서 이들 경로들 각각은 하위 계층 다중경로 기법들을 자체적으로 이용할 수 있다.
도 2는 애플리케이션 및 서비스 제공자들에 의한 다수의 네트워크 경로들을 통한 심층 제어를 예시하는 도면이다. 네트워크는 최종 디바이스(end device) 또는 엔드포인트(210)를 포함할 수 있으며, 여기서 클라이언트 애플리케이션이 동작할 수 있고 MHMP 프로토콜 기능이 제공된다. 제1 MHMP 프록시는 데이터 센터(220)에 의해 제공될 수 있고, 제2 MHMP 프록시는 액세스 또는 트랜짓 네트워크(240)에서 제공될 수 있다. 네트워크 서버(230)는 서빙 애플리케이션을 호스팅하고, MHMP 프로토콜 기능을 제공할 수 있다. 최종 디바이스 또는 엔드포인트(210)는 데이터 센터(220)를 통해 제1 MHMP 프록시와 인터페이싱하고, 액세스 또는 트랜짓 네트워크(240)를 통해 제2 MHMP 프록시와 인터페이싱할 수 있다. 제1 및/또는 제2 MHMP 프록시는, 데이터 센터(220) 및/또는 액세스 또는 트랜짓 네트워크(240)를 통해 네트워크 서버(230)와 인터페이싱할 수 있다. 그러한 인터페이스들은 WiFi, 셀룰러, 또는 임의의 다른 무선 또는 고정 네트워크를 통해 가능할 수 있다. 3개의 간접 경로들 및 하나의 직접 경로가 존재할 수 있다. 이들 4개의 경로들 각각은 최종 디바이스와 서버 사이의 종단간에 확립되고 암호화될 수 있다. 대안적인 사용 사례들에서, 추가적인 프록시들은, 예를 들어, 데이터 센터(220)에서 MHMP 프록시 1에 연결(chain)되어, 다수의 데이터 센터들, 액세스 또는 트랜짓 네트워크들을 통한 더 복잡한 경로를 통해 트래픽을 지향시킬 수 있다.
일부 사용 사례들은 재배치 에지 서버에 대한 접속성을 유지하는 것을 수반할 수 있다. 가정 또는 기업 네트워크의 맥락에서 또는 스마트 도시 시나리오에서, 5G 또는 비-5G 네트워크(예컨대, WiFi 또는 산업용 무선 네트워크)에서, 엔드포인트에 접속된 제1 에지 서버는, 예를 들어, 이동 엔드포인트로 낮은 레이턴시를 유지하기 위해, 또는 로드 밸런싱을 위해 제2 에지 서버로 이동될 수 있다. 이것은, 새로운 애플리케이션 인스턴스가, 접속성을 위해 제1 서버 IP 주소와는 상이한 제2 IP 주소를 사용하여, 제2 에지 서버 상에 존재하거나, 또는 제2 에지 서버 상에 생성/이동된다는 것을 가정한다. 제1 에지 서버와 제2 에지 서버 사이의 임의의 상태 전이는, 존재하는 경우, 직접적인 또는 클라이언트를 통한 애플리케이션 계층 통신과 같은 적절한 방법을 사용하여 수행될 수 있다. 다중 홉 다중경로 전송 프로토콜이 엔드포인트와 제1 에지 서버 사이에서 원래 사용되었다고 가정하면, 제1 에지 서버는 제2 에지 서버 IP 주소 및 포트를 초기 접속을 통해 엔드포인트에 통신할 수 있다. 이어서, 엔드포인트는 제1 에지 서버를 통해(예컨대, 1 홉(one hop), 프록시로서 제1 에지 서버를 사용함) 그리고/또는 직접 종단간 접속을 통해(예컨대, 제로 홉(zero hop)) 제2 에지 서버에 대한 접속들을 개시할 수 있다. 1 홉 접속은, 직접 접속이 가능하기 전에도 제2 서버와의 통신을 개시하는 것을 가능하게 할 수 있다. 일부 지점에서, 제1 서버에 대한 초기 접속은 애플리케이션 데이터에 대해 사용되는 것을 중지하고 제2 서버에 대한 접속들이 사용되는 것을 시작하며, 여기서 다양한 전이 모드들(예컨대, 점진적 또는 즉각적)이 지원될 수 있다. 잠시 후에, 엔드포인트는 제1 에지 서버를 통한 그의 간접 경로를 폐쇄하고, 제2 에지 서버와 직접 통신하는 것만을 유지할 수 있다. 전체 프로세스 동안, 엔드포인트와 제1/제2 에지 서버 상의 애플리케이션 사이의 동일한 논리적 전송 접속이 유지될 수 있다. 따라서, 이러한 재배치 프로세스는 엔드포인트 상의 클라이언트 애플리케이션에 대해 투명할 수 있다.
일부 경우들에서, 라이브 애플리케이션 세션 동안, 에지 서버가 재배치/이동되면서 그것에 대한 접속성을 유지하는 것은, (예컨대, VM들을 이동시키기 위해 데이터 센터들에서 사용되는 바와 같은) 서버의 IP 주소들을 유지하기 위한 네트워크에서의 메커니즘들이나, 또는 새로운 서버를 향한 클라이언트의 애플리케이션 계층 리다이렉션(예컨대, 셀룰러 네트워크들 내의, IP 멀티미디어 서브시스템(IMS)에서의 SIP 세션 계속성)을 요구한다. 하나의 접근법에서, IP 주소를 유지하는 것을 요구하지 않고 애플리케이션 계층에서의 지원/인식을 요구하지 않는 메커니즘이 본 명세서에 개시될 수 있다.
도 3은 재배치 서버에 대한 접속성을 유지하는 일례를 예시하는 도면이다. 도 3의 예는 재배치 사용 사례에서 MHMP의 사용을 도시한다. 예를 들어, 접속 1은, 요소(320)로 표기된 엔드포인트2에서의 서버에 접속된, 요소(310)로 표기된 엔드포인트1에서의 클라이언트 사이의 접속을 도시한다. 접속 2는, 엔드포인트2와 요소(330)으로 표기된 엔드포인트3에서의 서버 사이에서 서버 이동이 수행되는 경로를 도시한다. 접속 3은, 엔드포인트2가 이미 존재하는 접속을 이동시켜, 엔드포인트2를 엔드포인트3으로 대체하는 프록시로서 사용될 수 있는 경로를 도시한다. 접속 4는 간접 경로를 점진적으로 대체하는 직접 경로를 예시한다.
일부 사용 사례들은, 스마트 도시 시나리오에서와 같이, 간헐적 D2D 피어들 사이의 접속성을 유지하는 것을 수반할 수 있다. 제1 WTRU 엔드포인트는 중간 노드를 통해 제2 WTRU 엔드포인트에 접속할 수 있으며, 이는 MHMP 전송 프로토콜을 통해, 애플리케이션 제공자로부터 VNF를 호스팅하는 에지 서버일 수 있다. 따라서, 프록시 상의 애플리케이션 제공자의 인스턴스는 이러한 접속을 인식할 수 있고, 이들 2개의 엔드포인트들 사이의 D2D 접속성을 가능하게 하기 위해 액세스 네트워크(예컨대, 5G 네트워크)를 구성하도록 결정할 수 있다. 따라서, 이러한 D2D 접속성은 애플리케이션 제공자에게 청구될 수 있다(예컨대, 애플리케이션 제공자는 사용자 가입 또는 광고 계약들을 통해 이러한 비용을 되찾을 수 있음). 엔드포인트들이 D2D 통신에 대한 범위 내에 있을 때, 디바이스들은 그들 사이의 D2D 링크를 확립할 수 있다. 각각의 엔드포인트는 그의 새로운 IP 주소를 MHMP 프로토콜 접속을 통해 중간 노드에 통신할 수 있다. 그의 피어의 새로운 IP 주소를 학습할 시에, 엔드포인트들 중 하나의 엔드포인트는 D2D 접속을 통해 새로운 직접 경로를 개시할 수 있다. 거기서부터, 엔드포인트들은 MHMP 전송 접속을 통해, D2D 링크 중 하나 또는 둘 모두를 통한 그리고 네트워크 내의 중간 노드를 통한 트래픽을 (예컨대, 그러한 접속을 사용하는 애플리케이션에 투명하게) 교환할 수 있다. D2D 링크가 손실되는 경우, 통신은 네트워크 내의 중간 노드를 통해 여전히 진행될 수 있다.
일부 경우들에서, 간헐적 D2D 피어들 사이의 동일한 전송 접속을 유지하는 것이 가능하지 않을 수 있다. 도 4는 간헐적 D2D 피어들 사이의 접속성을 유지하기 위한 예시적인 프레임워크를 예시하는 도면이다. 도 4에 도시된 바와 같이, 접속 1은, 요소들(410, 420)로 각각 표기된 최종 디바이스 1 및 최종 디바이스 2가 MHMP 프록시(430)을 통해 접속되는 것을 예시한다. 경로 2는, MHMP 프록시(430)가 최종 디바이스 1과 최종 디바이스 2 사이에서 인에이블될 D2D 통신을 요청하는 것을 예시한다. 접속 3은, 도달범위(reach) 내에 있을 때 최종 디바이스 1과 최종 디바이스 2 사이의 D2D를 통한 새로운 경로의 확립을 예시한다.
일부 사용 사례들은 보안 멀티캐스트, 또는 발행-구독, 피어들 사이의 접속성을 확립하고 유지하는 것을 수반할 수 있다. 그러한 사용 사례들에서, MHMP 프록시는 멀티캐스트 소스 및 수신기들에 대한, 또는 pubsub 발행자들 및 구독자들에 대한 랑데부 포인트(rendezvous point)로서 사용될 수 있다. 프록시는 모든 엔드포인트들 사이의 세션 키 공유 및 멀티캐스트 통신의 부트스트래핑을 용이하게 할 수 있다. IP 멀티캐스트가 사용가능하지 않은 경우들에서, 엔드포인트들과 프록시 사이의 유니캐스트 접속들은 또한, 데이터 흐름을 분배하는 데 사용될 수 있으며, 이는 계층적, 콘텐츠 전달 네트워크(content delivery network, CDN)-형 아키텍처에서 다수의 프록시들을 사용하여 확장가능 방식으로 수행될 수 있다.
도 5는 QUIC을 통해 보안 멀티캐스트 또는 PubSub 접속성을 확립하고 유지하기 위한 예시적인 프레임워크를 예시하는 도면이다. 도 5에 도시된 바와 같이, 경로 1은, 요소(510)로 표기된 엔드포인트1이, MHMP 프록시(540)를 통해 멀티캐스트 그룹/pubsub 토픽에 대한 소스/발행자로서 접속을 확립하는 것을 예시한다. 경로 2 및 경로 2'는, 요소들(520, 530)에 의해 각각 표기된 다수의 엔드포인트들 2 및 3이, 동일한 멀티캐스트 그룹/pubsub 토픽에 대한 수신기들/구독자들로서 접속을 확립하고, MHMP 프록시(540)로부터 그들의 QUIC 세션 키를 수신하는 것을 예시한다. 경로 3은, 엔드포인트1이, (예컨대, 1/2/2'에서 확립된 접속들을 사용하여) 모든 수신기들/구독자들을 향해 복제될 수 있는 단방향 경로를 통해 트래픽을 전송하는 것을 예시한다. 경로 4는 초기 경로를 보완하거나 또는 대체하기 위해 확립될 수 있는 엔드포인트1과 엔드포인트 2 및 엔드포인트 3 사이의 멀티캐스트 경로를 나타낼 수 있다.
일부 경우들에서, MP 전송 프로토콜들(예컨대, MPTCP 또는 MP-QUIC)은 하나 이상의 명시적인 홉들(예컨대, 전송 계층에서 가시적인 홉들)을 사용하여 지원하지 않을 수 있다. 또한, MP 전송 프로토콜들은 엔드포인트에 의해(예컨대, 소스 IP 주소의 선택을 통해) 사용되는 네트워크 인터페이스의 선택을 가능하게 하지만, 이러한 경로 상에서 중간 노드의 명시적 사용을 통한 경로의 선택은 가능하게 하지 않을 수 있다. 이것은, 애플리케이션 제공자 및 사용자가 경로 상에서 갖는 제어의 양을 제한할 수 있다. 본 명세서에 기술된 하나 이상의 실시예들은, 특히 현대의 전송 프로토콜들 상에서 그러한 제어를 가능하게 할 수 있다. 일부 경우들에서, 주요 예로서 QUIC를 사용하는 현대의 전송 프로토콜들 설계는 암호화를 통한 강한 종단간 보안뿐만 아니라, 예컨대 다중화를 통한 효율성 및 유연성을 강조할 수 있다. 특히, QUIC는 동일한 접속에서 스트림들 및 데이터그램들의 다중화를 지원함으로써, HTTP만을 지원하는 것을 넘어선다. 따라서, 명시적 홉들을 포함하는 다수의 경로들을 통해, 단일의, 다중화된, 및 보안 종단간(예컨대, 여기서 프록시들은 e2e 패킷들의 암호화된 부분에 액세스하지 않을 수 있음) 전송 접속이 확립되는 것을 가능하게 할 필요가 있을 수 있다. 이를 위해, 여러 개의 주요 문제들이 해결될 필요가 있을 수 있다.
하나의 문제는, 데이터 트래픽 오버헤드 없이(예컨대, 터널을 확립하지 않고서), 원할한(예컨대, 정상 QUIC 접속으로서 나타나는) 방식으로 보안 종단간 전송 계층 QUIC 접속을 프록싱하는 것, 및/또는 다수의 프록시형 접속들의 다중화를 가능하게 하는 것, 및/또는 프록시 상에서 취해질 애플리케이션 특정 액션들(예컨대, D2D 셋업, 애플리케이션 계층 ID 검색, 멀티캐스트 키 세션 공유 등)을 가능하게 하는 것을 가능하게 하기 위한 방법이 필요하다는 것일 수 있다. 이러한 문제는 다중경로 전송에 특정적이지 않을 수 있고, 또한 정규 (예컨대, 비-다중경로) QUIC에 유용할 수 있다.
다른 문제는, (예컨대, MP-QUIC에서) 다중경로 접속 피어에 대한 프록시형 접속을 동적으로 광고하기 위한 방법이 필요하다는 것일 수 있다.
다른 문제는, 다중 홉 다중경로의 애플리케이션들 중 하나가 전송 접속을 깨뜨리지 않고서 서버 또는 클라이언트 이동을 지원하는 것일 수 있다. 이동 전에, 그 동안, 및 그 후에 동일한 보안 전송 접속을 사용하는 것을 유지하면서, 이러한 특징을 가능하게 하는 절차가 필요할 수 있다.
하나 이상의 실시예들에서, QUIC가 보안 전송 프로토콜일 수 있기 때문에, 기존 QUIC 프로토콜 및 그의 제안된 다중경로 확장을 기본으로서 사용하여, 간접(예컨대, 프록시형) 경로들을 다루기 위한 프로토콜 확장들이 존재할 수 있다. 유사한 향상들이 또한 MPTCP + TLS, SCTP + TLS, 보안 SCTP 등과 같은 다른 전송 프로토콜들에 대해 도출될 수 있다.
본 명세서에 기술된 접근법들의 핵심 요소는, 본 명세서에서 프록시들 또는 MHMP 프록시들로 불리는 하나 이상의 노드들이 QUIC 접속들에서 중재자들로서 작용한다는 것일 수 있다. MHMP 프록시들은 물리적 또는 가상 인프라구조를 통해 네트워크 운영자들, 애플리케이션, 또는 서비스 제공자들에 의해 배치될 수 있다. 예를 들어, MHMP 프록시 제어기 애플리케이션 인스턴스는 액세스 네트워크 또는 데이터 센터 운영자에 의해 이용가능하게 되는 가상화 인프라구조 플랫폼을 통해 배치될 수 있다. 프록시 제어기 애플리케이션 인스턴스는 전형적으로, 포워딩, 캡슐화/탈캡슐화를 제어할 수 있지만, 그들 동작들은 상업용 제품(commercial off the shelf, COTS) 또는 특수 하드웨어(예컨대, 물리적 또는 가상 네트워크 기기)에서 수행된다. 프록시 제어기 애플리케이션 인스턴스는 프로그램, HTTP-기반 또는 SDN 기반 API(예컨대, OpenFlow-기반)를 사용하여, 그들 동작들을 제어할 수 있다. 프록시 제어기 애플리케이션 인스턴스는 또한 (예컨대, 상기의 문제들과 관련하여 기술된 바와 같은) 애플리케이션 특정 동작들을 수행할 수 있다.
엔드포인트들(예컨대, QUIC 엔드포인트들)은 또한 MHMP 시스템의 일부일 수 있다. 엔드포인트들은 WTRU들, UE들, PC들, 랩톱들, IoT 디바이스들 등일 수 있거나, 또는 더 대체적으로, QUIC 프로토콜을 사용하여 통신할 수 있는 임의의 디바이스, 또는 본 명세서에 기술된 바와 같이 향상될 수 있는 유사한 프로토콜일 수 있다. 엔드포인트들은 일부 시나리오들에서(예컨대, 본 명세서에 기술된 서버 이동 시나리오들에서) MHMP 프록시들로서 작용할 수 있다.
MHMP QUIC 동작은 MP-QUIC 프로토콜의 동작에 기초할 수 있다. 본 명세서에 기술된 향상들은 기본 프로토콜로서 QUIC 및 MP-QUIC를 사용하여 설명될 수 있다. 2개의 엔드포인트들 사이의 MP-QUIC 접속은 하나 이상의 경로들로 구성된다. MP-QUIC 경로는 2개의 엔드포인트들 사이의 단방향 또는 양방향 데이터 흐름일 수 있다. 각각의 엔드포인트의 관점에서, 흐름은 4-투플(tuple) 소스/목적지 IP 주소 및 전송(예컨대, UDP) 포트(엔드포인트에 의해 볼 수 있는 바와 같음)와 연관될 수 있다. 각각의 엔드포인트는, 예를 들어, 네트워크 주소 변환(network address translation, NAT)이 경로에 적용될 때 동일한 경로에 대해 상이한 4-투플을 볼 수 있다. MHMP QUIC에서, 경로의 동일한 정의가 사용될 수 있다. MHMP QUIC에서, 각각의 엔드포인트는 동일한 간접 경로에 대해 상이한 4-투플을 볼 수 있는데, 이는 각각의 엔드포인트에 대해, IP 및 UDP 계층에서의 다음 홉이 MHMP 프록시이기 때문이다. MHMP-QUIC는 다수의 동시적 간접 경로뿐만 아니라 직접 경로를 지원한다.
도 6은 MHMP 시스템에서의 통신 시나리오들의 예들을 예시하는 도면이다. 도면은, 본 명세서에 정의된 바와 같은 MHMP 프록시를 수반하는 통신 시나리오들을 도시한다. 접속들 또는 경로 (a), 경로 (b) 및 경로 (c)를 사용하는 이들 주요 통신 시나리오들이 본 명세서에서 상세히 설명될 수 있다. 경로 (a)를 초래하는 시나리오에서, 도 6의 요소(630)로 표기된 엔드포인트 A는 요소(610)로 표기된 MHMP 프록시 P와의 통신을 개시할 수 있다. 이것은, 하기의 단락들에서 추가로 설명되는, 도 7의 예에 추가로 예시되는, 정규 QUIC 접속 또는 경로 (a)를 생성할 수 있다. 엔드포인트 A는, 본 명세서에 기술된 절차에 따라, 요소(620)로 표기된, 엔드포인트 B를 향한 간접 접속을 위한 요청을, 접속 (a)를 사용하여 MHMP 프록시 P로 전송할 수 있다. 이것은, (예컨대, 본 명세서에 기술된 PACKET 프레임 유형을 사용하는) 도 8에 예시되고 하기의 단락들에서 추가로 설명되는, A와 P 사이의 세그먼트 상의 QUIC-오버-QUIC를 사용하여, A와 B 사이의 간접/프록시형 경로 접속 (b)를 초래할 수 있다. 이러한 유형의 경로 접속은 동일한 QUIC A-P 접속을 통해 다수의 간접/프록시형 접속들을 다중화하는 것을 지원할 수 있다. 엔드포인트 A 또는 MHMP 프록시 P는, 본 명세서에 기술된 바와 같은 SWITCH 프레임을 사용하여 비-오버헤드 간접/프록시형 경로 접속으로의 스위칭을 트리거할 수 있다. 이것은, 도 9에 예시되고 하기의 단락들에서 추가로 설명되는 바와 같이, 동일한 QUIC 경로 접속 (b)가 각각의 세그먼트 상에서 UDP를 통해 포워딩되는 결과를 가져올 수 있다. 도 10에 예시되고 하기에 추가로 설명되는 직접 접속 (c)는 엔드포인트 A와 엔드포인트 B 사이에 확립될 수 있다. 엔드포인트 B는, 본 명세서에 기술된 바와 같이, 경로 (c) 상의 A에 간접 IP 주소를 광고할 수 있다. 이어서, 엔드포인트 A는 전술된 바와 같은 경로 (b)의 생성을 개시할 수 있다. 직접 및 간접 경로(들)는 동일한 다중경로, 다중 홉 QUIC 접속에서 공존할 수 있다.
예를 들어, 경로 (a)가 엔드포인트들 사이의 멀티캐스트 세션을 가능하게 하는 키 세션 재료를 교환하는 데 사용될 수 있는 추가적인 메커니즘들이 구현될 수 있다. 프록시 P가 또한 엔드포인트인 경우에서, 세대 ID 정보 요소들이 경로 (b) 상에서 교환되어, 애플리케이션 인스턴스를 MHMP 프록시 P로부터 엔드포인트 B로 이동시키는 것을 가능하게 할 수 있다.
도 7은 수반된 네트워크 노드들 및 패킷 구조의 일례를 도시하는, 프록시에 대한 전형적인 초기 접속의 일례를 예시하는 도면이다. 도시된 바와 같이, 요소(710)로 표기된 엔드포인트 A는 730으로 표기된 MHMP 프록시 P에 대한 QUIC (A-P) 접속을 확립할 수 있다. QUIC 접속에 더하여, 엔드포인트 A는 또한 (A 상의 UDP 포트와 P 상의 USDP 포트 사이의) UDP 접속 및/또는 (IP 주소 A와 IP 주소 P 사이의) IP 접속을 사용하여 통신할 수 있다. 예를 들어, QUIC 접속은 UDP 및 IP를 통해 확립될 수 있다.
도 8은 수반된 네트워크 노드들 및 패킷 구조를 도시하는, QUIC를 사용한 프록시형/간접 접속의 일례를 예시하는 도면이다. 요소(810)로 표기된 엔드포인트 A는 요소(850)로 표기된 엔드포인트 B와의 내부 QUIC 접속 (A-B)을 확립했을 수 있다. QUIC (A-B) 접속은 엔드포인트 A와, 요소(830)로 표기된 MHMP 프록시 P 사이의 외부 QUIC (A-P) 접속을 통해 확립될 수 있다. QUIC (A-B) 접속을 통해 전송된 암호화된 페이로드들은 전술된 바와 같은 PACKET 프레임에 캡슐화될 수 있으며, 이는 내부 QUIC (A-B) 접속에 대응하는 흐름들을 식별하는 흐름 ID를 포함할 수 있다. 외부 QUIC (A-P) 접속은 MHMP 프록시 P를 향해 암호화된 A-P 페이로드를 반송할 수 있으며, 이러한 지점에서 캡슐화된 QUIC (A-B) 페이로드는 엔드포인트 B를 향해 포워딩될 수 있다. 엔드포인트 A 및 엔드포인트 B는 IP 및/또는 UDP를 통해 추가로 접속될 수 있다.
도 9는 수반된 노드들 및 패킷 구조를 도시하는, 두 세그먼트들 상의 UDP를 통한 프록시형/간접 접속의 추가의 예를 예시하는 도면이다. 요소(910)로 표기된 엔드포인트 A는 요소(950)로 표기된 엔드포인트 B와의 QUIC 접속 (A-B)을 확립했을 수 있다. 추가적으로, 엔드포인트 A와, 요소(930)로 표기된 MHMP 프록시 P 사이의 접속, 및 MHMP 프록시 P와 엔드포인트 B사이의 접속은 UDP를 통해 제공될 수 있다. QUIC 접속 (A-B)을 통해 전송된 데이터는 제1 UDP 접속을 통해 엔드포인트 A로부터 MHMP 프록시 P로, 그리고 다시 제2 UDP 접속을 통해 MHMP 프록시 P로부터 엔드포인트 B를 향해 포워딩될 수 있다. 엔드포인트 A와 엔드포인트 B 사이의 경로들은 IP, 및/또는 UDP를 통해 추가로 제공될 수 있다.
도 10은 수반된 네트워크 노드들 및 패킷 구조를 도시하는, 엔드포인트들 사이의 직접 접속의 일례를 예시하는 도면이다. 도시된 바와 같이, 요소(1010)로 표기된 엔드포인트 A와 요소(1020)로 표기된 엔드포인트 B 사이에 직접 경로 접속들이 확립될 수 있다. 엔드포인트 A 및 엔드포인트 B는 계층-2 프로토콜들, IP, 및/또는 UDP를 통해 접속될 수 있다. QUIC 접속 (A-B)은, 예를 들어, 본 명세서에 추가로 설명되는 하나 또는 여러 개의 메커니즘들에 따라 엔드포인트 A에 의한 요청 시에, 확립될 수 있다.
일부 경우들에서, MPTCP는 프록시들을 지원할 수 있지만, MPTCP 프록시는 TCP 접속을 분할하도록, 그리고 전형적으로, 정규 TCP가 프록시와 서버 사이에서 사용되는 동안, MPTCP가 일 측에서 프록시와 클라이언트 사이에서 사용될 수 있게 하도록 설계될 수 있다. 따라서, MPTCP 프록시는 클라이언트와 프록시 사이의 전체 트래픽의 경로 상에 있다. 이러한 유형의 접속 분할은 QUIC로 가능하지 않을 수 있으며, 이는 다중경로 접속의 임의의 주어진 개별 경로 상의 종단간 암호화를 강제한다. 따라서, 본 명세서에 기술되는 프록시의 유형은, MPTCP와 함께 사용된 프록시의 유형과는 상이할 수 있고(예컨대, 그것은 일부 경로들 상에 존재하고 다른 경로들 상에는 존재하지 않을 수 있으며; 접속을 프록싱하기 이전에 클라이언트와 프록시 사이에 양방향 인증이 존재할 수 있고; 프록시 상의 애플리케이션 인스턴스가 프록시 접속 셋업에 관여될 수 있음), 결과적으로 본 명세서에 기술된 상이한 메커니즘들에 의존하고, 상이한 유형들의 서비스들(예컨대, 암시적 경로 선택, 애플리케이션 특정 D2D 또는 검색, 멀티캐스트 또는 pubsub 통신 관리)을 제공할 수 있다.
HTTP CONNECT은 일부 사례들에서 접속 확립 기법으로서 사용되는 다른 프록시일 수 있다. HTTP CONNECT를 사용할 때, 엔드포인트들은 프록시를 통과하는 종단간 TLS 접속을 통해 임의의 프로토콜을 사용하여 통신할 수 있다. TLS 접속은 클라이언트-프록시 세그먼트 상의 제1 TCP 세션, 및 프록시-서버 세그먼트 상의 제2 TCP 세션을 통해 전송될 수 있다. 따라서, HTTP CONNECT는, 있는 그대로, UDP 기반인 QUIC 트래픽을 반송하는 데 적합하지 않을 수 있다. 추가적으로, HTTP CONNECT를 이용하여, 클라이언트와 프록시 사이의 프록시형 접속들을 다중화할 가능성이 없을 수 있다. 따라서, 다수의 서버들과 통신하기 위해 프록시를 통한 다수의 접속들이 필요할 수 있다. 마지막으로, HTTP CONNECT를 사용할 수 있기 위해, 완전한 HTTP 접속이 프록시와 함께 확립될 필요가 있을 수 있으며, 이는 클라이언트 및 프록시 둘 모두의 자원들을 낭비할 수 있다.
표 2는 문제들의 예들, 및 이들 문제들을 해결하기 위한 메커니즘들의 예들을 예시한다. 이들 예시적인 메커니즘들은 QUIC 프로토콜에 대한 향상들일 수 있다. 표의 모든 경우들에서, QUIC 전송 파라미터들은 관련 파라미터들, 예컨대 이러한 접속이 QUIC-오버-QUIC 트래픽을 반송하는 데 사용될 수 있다는 표시, 프록시 NEW_CONNECTION 요청에서 원격 엔드포인트를 해결하기 위한 지원된 프로토콜들의 목록, 및/또는 GENERATION 기반 이동 메커니즘에 대한 지원의 표시를 포함하도록 확장될 수 있다.
Figure pct00002
일부 실시예들에서, QUIC 또는 MP-QUIC를 위한 프록시를 통한 효율적인 접속들이 존재할 수 있다. 예를 들어, QUIC-오버-QUIC 캡슐화 스킴을 사용하는 프록시 접속 방법이 존재할 수 있다. 이것은 다음과 같은 하나 초과의 목적을 위해 사용될 수 있다: 다수의 서버들에 대한 다수의 QUIC 접속들이 (예컨대, 동일한 클라이언트-프록시 접속을 통한) 단일 프록시를 통해 다중화될 수 있고; 그리고/또는, 다중화가 필요하지 않을 때(예컨대, 단일 QUIC 접속이 프록싱될 때), 캡슐화 없이 종단간 QUIC 접속을 직접 반송하고, 따라서 데이터 트래픽 오버헤드를 제로(0)로 감소시키도록 프록시형 접속이 스위칭될 수 있다. 두 경우들 모두에서, 엔드포인트와 프록시 사이의 트래픽은 정규 QUIC 트래픽인 것으로 나타날 수 있다. QUIC 접속 상의 임의의 다른 중간 노드와 같이, QUIC-오버-QUIC 프록시는 QUIC 패킷들의 보호되지 않은 필드들, 예를 들어, IP 헤더, UDP 헤더, 및 암호화되지 않은 QUIC 헤더(접속 ID를 포함함)에 대한 가시성만을 가질 수 있다. MHMP 프록시는 애플리케이션 특정 액션들을 구현할 수 있다.
QUIC 또는 MP-QUIC 절차들에 대한 프록시를 통해 효율적으로 접속하기 위해 사용되는 빌딩 블록들로서 사용되는 QUIC 프레임 유형들이 존재할 수 있다. QUIC-오버-QUIC 캡슐화 스킴에서, 패킷이 UDP 데이터그램에 캡슐화될 수 있는(예컨대, 하나 이상의 QUIC 프레임을 포함할 수 있음) QUIC의 완전한 프로세싱가능 유닛인 내부 QUIC 패킷들은 외부 QUIC 접속을 통해(예컨대, 클라이언트-프록시 접속을 통해) 전송될 수 있다. 종단간 QUIC 접속은 내부 QUIC 패킷들의 단방향 또는 양방향 흐름으로서 캡슐화될 수 있다: 각각의 내부 QUIC 패킷은 흐름 ID와 연관된 PACKET 프레임에서, 그리고 외부 QUIC 접속 내에서 전송될 수 있다. 클라이언트 엔드포인트가 흐름과 연관된 ID 및 다른 파라미터들을 포함한 새로운 흐름을 식별하는 NEW_CONNECTION 프레임을 프록시로 전송할 때, QUIC-오버-QUIC 흐름이 개시될 수 있다. 흐름 ID들을 사용하면, 단일 엔드포인트-프록시 접속을 통해 다수의 엔드포인트들을 향한 다수의 QUIC 접속들을 갖는 다중화가 가능할 수 있다. 프록시가 NEW_CONNECTION 요청을 수락하는 경우, 그것은 NEW_CONNECTION 목적지로/로부터 내부 QUIC 패킷들을 포워딩하도록 그 자체를 구성할 수 있다.
캡슐화된 데이터 트래픽을 반송하기 위한 새로운 PACKET 프레임 유형이 본 명세서에서 설명될 수 있다. 그것은 DATAGRAM 프레임 유형과 유사한 정보 요소(들)를 포함할 수 있다. 그러나, 새로운 프레임 유형은 그의 새로운 고유 사용을 내부 QUIC 패킷들에 대한 컨테이너로서 구별하는 데 유용할 수 있다. 내부 QUIC 패킷들은 NEW_CONNECTION 프레임에 의해 이전에 개시된 QUIC 접속에 속한다. PACKET 프레임은 적어도 다음의 필드들을 포함할 수 있다: 하나의 e2e QUIC 접속에 대응하는 단방향 또는 양방향 흐름을 식별하는 ID인, 흐름 ID(예컨대, 가변 길이 정수) - 여기서, 이러한 ID는 흐름을 개시했던 NEW_CONNECTION 프레임에서 사용된 ID에 대응함 -; 데이터 필드에 저장된 캡슐화된 패킷의 길이인 길이(예컨대, 가변 길이 정수); 및/또는 내부 QUIC 패킷(예컨대, 하나의 또는 다수의 QUIC 프레임들)일 수 있는 데이터 필드(가변 길이).
내부 QUIC 패킷들/프레임들의 흐름과 연관된 목적지/타깃 및 관련 파라미터들을 정의하기 위한 새로운 NEW_CONNECTION 프레임 유형이 본 명세서에서 설명될 수 있다. 이러한 프레임 유형은 적어도 다음의 필드들을 포함할 수 있다: 하나의 내부/캡슐화된 QUIC 접속에 대응하는 양방향 흐름을 식별하는 ID일 수 있는, 흐름 ID(예컨대, 가변 길이 정수); 목적지 엔드포인트를 해결하는 데 사용되는 프로토콜일 수 있는, 타깃/목적지 프로토콜(예컨대, 16 비트); 목적지(예컨대, 엔드포인트2)의 IP 주소, 또는 목적지 주소 프로토콜이 IPv4 또는 IPv6인 경우 사용되는 멀티캐스트 그룹으로도 알려진 멀티캐스트 IP 주소일 수 있는, 타깃/목적지 IP 주소(예컨대, 128 비트 또는 32 비트); 목적지 프로토콜이 애플리케이션 계층 프로토콜인 경우 사용되는, 목적지(예컨대, 엔드포인트2)의 애플리케이션 계층 아이덴티티일 수 있는, 타깃/목적지 애플리케이션 아이덴티티(예컨대, 가변 길이 스트링) (예컨대, 이것은, 목적지 엔드포인트의 IP 주소를 결정하기 위해 프록시에 의해 검색될 수 있는, Netflix 또는 Facebook 사용자이름과 같은 애플리케이션 사용자 ID일 수 있거나, 또는 이것은 발행-구독 스킴의 일부로서 프록시가 사용할 수 있는 토픽 ID 또는 스트링일 수 있음); 타깃/목적지 IP 주소 또는 애플리케이션 ID와 연관된 유형을 나타내는 코드일 수 있는, 타깃/목적지 유형(예컨대, 2 비트) - 여기서, 값들은 "발행", "구독", "양방향"을 포함할 수 있고, 그의 의미는 타깃/목적지 프로토콜에 의존할 수 있음(예컨대, 이들 값들은 NEW_CONNECTION의 전송자를 pubsub 프로토콜에 대한 발행자 또는 구독자로서, 멀티캐스트 프로토콜에 대한 소스 또는 수신기로서, 또는 경로 상에서 전송/수신할 수 있는 정규 노드로서 식별함) -; 서버에 접속하는 데 사용될 포트(예컨대, UDP 포트)일 수 있는 타깃/목적지 포트(예컨대, 16 비트); 및/또는 (예컨대, "basic dXNlcjpwYXNzd29yZA=="와 같은 대응하는 HTTP 필드에서와 동일한 인코딩을 사용할 수 있는) 프록시 동작을 인가하기 위한 크리덴셜들을 설명하는 스트링일 수 있는, 프록시 인가 필드(예컨대, 가변 길이 스트링). 동일한 인가 스트링이 다수의 NEW_CONNECTION 프레임들에 사용될 수 있는 경우들에서, Proxy 인증 필드는 제1 NEW_CONNECTION에 존재할 수 있고, 그 후에 생략될 수 있다.
타깃/목적지 프로토콜은 IPv4, IPv6, 또는 애플리케이션 계층 프로토콜(예컨대, 소셜 네트워크 애플리케이션에서의 사용자이름)일 수 있다. 타깃/목적지 프로토콜에 따라, 타깃/목적지 IP 주소, 포트 및 애플리케이션 아이덴티티 중 임의의 것이 존재할 수 있거나 또는 존재하지 않을 수 있다(예컨대, IP 주소 및 포트는 IPv4/IPv6 프로토콜과 함께 존재할 수 있고, 애플리케이션 아이덴티티 및 유형은 애플리케이션 계층 프로토콜들과 함께 존재할 수 있음).
주어진 흐름 ID와 연관된 PACKET 프레임들은 별개의 QUIC 스트림/흐름으로서 다루어지고, 따라서 다른 스트림들/흐름들과 다중화될 수 있다. 정체 제어(congestion control)가 전체 클라이언트-프록시 QUIC 접속에 적용될 수 있다.
NEW_CONNECTION/PACKET 프레임 유형들 및 관련 메커니즘과 관련하여, QUIC 스택 구현은 프로그램 API를 호스트 상에서(예컨대, 프록시 상에서) 실행되는 로컬 애플리케이션들에 이용가능하게 할 수 있다. 프록시 노드 상에서 실행되는 프로세스는 이러한 API를 사용하고, "NEW_CONNECTION received" 이벤트에 등록하여, 콜백을 파라미터로서 전달할 수 있다. 등록 범주는 착신 접속의 전부, 그의 그룹, 또는 그 하나에 대한 것일 수 있다. 콜백은 NEW_CONNECTION 프레임 정보 요소들(flowID, destProtocol, DestIP, DestAppId, DestType, DestPort, ProxyAuth)을 포함하는 파라미터들을 수신할 수 있다. 프록시가 NEW_CONNECTION을 수신할 때, 그것은 등록된 콜백 기능들을 호출할 수 있고, NEW_CONNECTION 프레임으로부터 추출된 파라미터들을 제공한다. 콜백 기능은, 예를 들어 ProxyAuth 파라미터를 사용하여, 클라이언트 엔드포인트가 로컬 정책에 의해 인가되는지를 체크하고, 요청이 수락되거나 거절되었음을 나타내는 코드를 반환할 수 있다. 일부 예들에서, 콜백 기능은 (예컨대, 로컬 또는 원격 애플리케이션 계층 데이터베이스를 사용하여) NEW_CONNECTION에서 전달된 목적지 애플리케이션 아이덴티티를 검색하여, 호출자가 그것에 접속하도록 인가받았는지를 결정하고, 엔드포인트의 IP 주소 및 UDP 포트 - 이를 향해/이로부터 프록시가 내부 트래픽을 포워딩할 것임 - 를 결정할 수 있다. 일부 예들에서, 프록시 상의 로컬 프로그램은 이러한 API를 외부 노드들에 대한 REST API(예컨대, NEW_CONNECTION 요청들을 제어하기 위한, 애플리케이션 제공자 관리 평면 기능)로서 노출시킬 수 있다.
QUIC 또는 MP-QUIC 절차들에 대한 프록시를 통해 효율적으로 접속하기 위해 사용되는 SWITCH 프레임이 존재할 수 있다. 구체적으로, 가능한 경우 캡슐화 및 오버헤드를 제거하기 위해, 클라이언트 엔드포인트(resp. proxy)는 새로운 SWITCH 프레임을 프록시(resp. client endpoint)로 전송하여, 프록시 접속을 통해 캡슐화된 e2e 트래픽을 교환하는 것으로부터 UDP를 통해 e2e 트래픽을 직접 교환하는 것으로의 스위칭을 요청할 수 있다.
새로운 SWITCH 프레임 유형은 다음의 필드들 중 하나 이상을 가질 수 있다: 스위치 유형(예컨대, 가변 길이 정수) - 이는, 본 명세서에 기술된 방법에 있을 수 있는, 필요한 스위치의 유형, "QUIC-오버-QUIC로부터 QUIC-오버-UDP로"을 나타내는 코드일 수 있지만, 그것은 또한, 본 명세서에 기술된 동작의 반전을 가능하게 할 수 있는 "QUIC-오버-UDP로부터 QUIC-오버-QUIC로"와 같은 다른 값들, 또는 상이한 유형들의 캡슐화들(GTP, Geneve, 등) 사이의 스위칭에 대응하는 다른 값들을 취할 수 있음 -. SWITCH 프레임 유형은 또한, 프레임이 요청 또는 응답인지를 나타내는 코드일 수 있는, 메시지 유형(예컨대, 비트); 또는 성공/실패를 나타내는 코드일 수 있고, 응답에서 사용될 수 있는, 상태(예컨대, 고정 길이 정수)를 포함할 수 있다.
요청자(예컨대, 클라이언트 엔드포인트 또는 프록시)는 SWITCH 프레임을 포함하는 패킷을 전송할 수 있다. 수신기는 수락하거나 또는 거절하도록 결정하고(예컨대, 프록시는 운영자 정책에 기초하여 항상 그들 요청들을 수락하거나 또는 거절하도록 구성될 수 있음), 이어서 SWITCH 프레임을 포함하는 QUIC 패킷에서 응답을 전송할 수 있다. 수신기는, 긍정 응답을 전송한 후에 접속(예컨대, 클라이언트-프록시 접속) 상에서 패킷들을 전송하는 것을 중지할 수 있다. 요청자는, 긍정 응답을 수신한 후에, 접속 상에서 패킷들을 전송하는 것을 중지할 수 있다. 요청자는, 수신용 응답을 전송한 후에, 그리고 수신기는, 일단 그것이 긍정 응답 패킷의 확인응답을 수신하면, 초기 접속의 UDP 접속 상에서 캡슐화되지 않은 종단간 패킷들을 전송하는 것을 시작할 수 있다. 다수의 활성 프록시형 접속들(예컨대, 다수의 흐름 ID들)과의 접속 상에서 전송된 SWITCH는 전형적으로 거절될 수 있는데, 그 이유는, 성공적 스위치 후에, 흐름 ID들이 더 이상 내부 QUIC 패킷들과 연관되지 않을 수 있으며, 이는 추가적인 복잡성(예컨대, 기존 QUIC 로드 밸런싱 방법들과 유사한 방식으로, 소정 범위들에서 접속 ID들이 할당되는 것을 보장하기 위한 서버 측과의 통신) 없이 다중화를 불가능하게 할 수 있기 때문이다.
SWITCH는 내부 QUIC 접속의 수명 중, 다음과 같은 임의의 시점에 사용될 수 있다: 일단 캡슐화된 프로토콜이 충분히 잘 암호화/보호되면(예컨대, 일단 트래픽이 "1-RTT 암호화 레벨"에 있으면); 나중에, 예컨대 정상 QUIC-오버-QUIC 동작 동안; 및/또는 빠르면 NEW_CONNECTION 요청과 함께. 일단 1-RTT 암호화 레벨에 도달하여 SWITCH를 사용하면, 이전에 보호되지 않은 패킷 및 0-RTT-보호된 패킷이 캡슐화되고, 따라서 외부 QUIC 접속을 통해 암호화되게 유지할 수 있다. 이러한 방식으로, 어떠한 명확한 패킷들도 클라이언트와 프록시 사이의 도청자에게 가시적이지 않을 수 있으며, 이는 프록시형 접속이 확립되고 있다는 사실을 숨긴다. 대신에, SWITCH 동작은 접속 ID의 변화로서 나타날 수 있으며, 이는 QUIC 프로토콜 동작에서 공통일 수 있다. 따라서, 이것은 프록시 동작을 가능한 한 원할하게 만든다. 도 11에 설명되고 하기의 단락들에 설명되는 바와 같은 절차들은 이러한 특정 사용 사례를 예시할 수 있지만; SWITCH는 또한, 예를 들어 도 11a 및 도 11b와 관련하여 하기에 기술되는 절차들에서 조기에 전송될 수 있고, 단계들(1113 내지 1117)은 단계(1104)와 단계(1105) 사이에서 발생할 수 있으며, 이러한 경우에 종단간 접속의 제1 패킷, 및 모든 후속 패킷들은 각각의 세그먼트 클라이언트-프록시 및 프록시-서버 상의 UDP 접속을 통해 전송될 수 있다.
간접 접속 부트스트래핑 방법(들)은 QUIC 또는 MP-QUIC 절차들에 대한 프록시를 통해 효율적으로 접속하기 위해 사용될 수 있다. 이것은, 이전에 설명된 새로운 프레임 유형들을 사용하여 프록시형 QUIC 접속을 부팅스트래핑하는 절차일 수 있다. 이러한 방법은 e2e MHMP 접속의 일부로서 간접 경로 접속을 확립하는 데 사용될 수 있거나, 또는 그것은 단일 QUIC 프록시형 접속을 확립하는 데 사용될 수 있다.
도 11a 및 도 11b는 간접 접속 부트스트래핑 방법들의 일례를 예시하는 프로세스 도면을 도시한다. 도 11은, 예를 들어, 요소(1150)로 표기된 엔드포인트1(예컨대, IP 주소들 IP1a, IP1b, 등을 사용함)이 프록시(1160)를 통해 1170으로 표기된 엔드포인트2(예컨대, IP 주소들 IP2a, IP2b, 등을 사용함)에 어떻게 접속하는지를 도시한다. 그것을 다른 프록시들과 구별하기 위해, 이러한 프록시는 PACKET/NEW_CONNECTION 프레임 유형들, 및 가능하게는 SWITCH 프레임 유형을 지원할 수 있고, 그것이 또한 비-다중경로 QUIC에서 사용될 수 있더라도 MHMP 프록시일 수 있다.
도 11a 및 도 11b에 도시된 단계들에 관련하여, 1101에서, 엔드포인트1은 프록시에 대한 QUIC 접속을 확립할 수 있다. 프록시는 (예컨대, 클라이언트에 의해 제공된 인증서에 기초하여) 클라이언트를 인증할 수 있다. 일부 경우들에서, QUIC는 클라이언트에 의해서만 서버 인증을 지원할 수 있지만, 서버에 의한 클라이언트 인증을 지원하도록 확장될 수 있다.
엔드포인트1은, 보통의 웹-기반 메커니즘들(웹 인증(WebAuthn), HTTP 기본 인증, JSON 웹 토큰, 이중 인증(two-factor authentication) 방법들, 등)을 사용하여 로그인하고, 인증하는 등을 하기 위해, 이러한 QUIC-계층 접속을 추가로 사용하여 HTTP/3 트래픽을 반송할 수 있다. 그럼에도 불구하고, 이러한 단계는 모든 경우들에 필요하지 않을 수 있고, 엔드포인트 및 프록시 둘 모두에 일부 프로세싱 오버헤드를 부여할 수 있다.
엔드포인트1-프록시 전송 접속 확립 동안, 전송 파라미터들은 (예컨대, QUIC 전송 파라미터들 확장을 사용하여) 교환될 수 있다. 프록시 및/또는 엔드포인트1은, 전송 파라미터 ID들과 같은 전송 파라미터들을 이용하여, 본 명세서에 기술된 새로운 필드들 및 관련 절차들에 대한 지원을 나타낼 수 있다.
예를 들어, 프록시 동작 지원을 갖는 전송 파라미터 ID(예컨대, 0x000f)는 0 비트(예컨대, 비어 있는 파라미터)와 같은 전송 파라미터 길이를 갖거나 또는 포함할 수 있고, 이러한 전송 파라미터는, 전송자가 본 명세서에 기술된 프레임 유형들 NEW_CONNECTION, PACKET, SWITCH 및 연관된 프록시 관련 절차들을 지원한다는 것을 나타낼 수 있다.
예를 들어, 지원된 프록시형 프로토콜들을 갖는 전송 파라미터 ID(예컨대, 0x0010)는 정수들의 가변 길이 목록과 같은 전송 파라미터 길이를 가질 수 있고, 이러한 전송 파라미터는 NEW_CONNECTION 프레임에서 원격 엔드포인트들을 해결하기 위해 지원되는 하나 이상의 프로토콜들(예컨대, IPv4, IPv6, 애플리케이션 계층 프로토콜들)을 열거할 수 있다.
1102에서, 엔드포인트1은, 이전에 사용되지 않은 흐름 ID(예컨대, 초기 요청에서 0)를 포함하고, 원하는 서버 엔드포인트 IP 주소들(예컨대, IP2a, 또는 멀티캐스트 IP 주소) 또는 목적지 애플리케이션 아이덴티티(예컨대, 애플리케이션 특정 사용자이름, pubsub 토픽 명칭), 유형, 포트, 프로토콜, 및 가능하게는 인증 토큰을 나타내는, NEW_CONNECTION 프레임을 프록시로 전송할 수 있다.
1103에서, 프록시는, 주어진 파라미터들, 프록시 운영자로부터의 로컬 정책, 및 가능하게는 클라우드에서의 백엔드 서비스와의 일부 상호작용에 기초하여, NEW_CONNECTION 요청을 인가할지 여부를 결정할 수 있다. 적용가능한 경우, 프록시는 다음과 같은 애플리케이션 특정 액션들을 수행할 수 있다: 엔드포인트1과 엔드포인트2 사이의 D2D 접속을 가능하게 하여, 나중에 그들 사이의 직접 경로를 확립하도록(예컨대, 프록시는 이를 위해 5G 네트워크 API에 액세스할 수 있음) 엔드포인트1 및 엔드포인트2를 인가하는 것; 클라이언트와의 애플리케이션 계층 인증을 수행하는 것; 및/또는 (애플리케이션 아이덴티티가 IP 주소 대신 사용되는 경우) NEW_CONNECTION에 제공된 애플리케이션 아이덴티티의 검색을 수행하는 것.
1104에서, 프록시는 NEW_CONNECTION 응답(예컨대, 요청이 수락되는 것을 나타내는 응답 코드를 포함함)을 전송할 수 있다.
1105에서, 클라이언트 엔드포인트1은, NEW_CONNECTION에서 사용되는 흐름 ID를 사용하는, 본 명세서에 기술된 바와 같은 PACKET 프레임을 사용하여, 프록시에 대한 초기 QUIC 접속에 캡슐화된, 초기 종단간 패킷을 엔드포인트2를 향해 전송할 수 있다.
1106에서, 프록시는 패킷을 탈캡슐화하고, 그것을, 때때로 UDP 패킷(예컨대, 프록시 IP 주소/UDP 포트를 소스 IP 주소/UDP 포트로서 사용함)을 통해 서버 엔드포인트2로 전송할 수 있다.
1107에서, 엔드포인트2는 (예컨대, QUIC 접속 확립 절차에 따라) 초기 패킷에 대한 QUIC 응답을 전송할 수 있다.
1108에서, 프록시는, 초기 엔드포인트1-프록시 접속으로의 엔드포인트2의 응답을 PACKET 프레임(예컨대, 요청에서와 동일한 흐름 ID를 사용함)에 캡슐화한다.
1109에서, 이러한 엔드포인트1 - 엔드포인트2 교환은, 2개의 세그먼트들을 통해 전송되는 종단간 QUIC 접속 확립 절차에 따라 종단간 접속이 확립될 때까지 계속될 수 있고, 여기서 패킷들은 엔드포인트1-프록시 세그먼트 상에서 QUIC를 통해 캡슐화되고, 프록시-엔드포인트2 세그먼트 상에서 UDP를 통해 전송된다. 이를 가능하게 하기 위해, 패킷 포워딩 동작은, 예를 들어, PACKET 프레임들에 사용된 흐름 ID를 제2 세그먼트 UDP 세션 4-투플(예컨대, MHMP 프록시 IP 주소 및 UDP 포트, 엔드포인트2 IP 주소 및 UDP 포트)과 연관시키는 포워딩 테이블에서의 엔트리로서, MHMP 프록시 상에서 구성될 수 있다.
1110에서, 이러한 지점에서, 엔드포인트1-엔드포인트2 QUIC 접속이 종단간에 확립될 수 있고, 전술된 2개의 세그먼트들을 통해 전송될 수 있다.
도 11의 예시적인 절차는 상이한 경우들에 따라 단계(1111) 또는 단계(1112)로 진행할 수 있다.
1111에서, 제1 대안으로, 클라이언트 엔드포인트1은 상이한 흐름 ID들을 사용하여 추가적인 NEW_CONNECTION 프레임들을 전송하여, 클라이언트-프록시 QUIC 접속을 통해 다수의 프록시형 접속들을 다중화할 수 있다. 따라서, 절차는 단계들(1102 내지 1110)을 통해 순환될 수 있다. 이러한 대안에서, 절차는 여기에서 종료될 수 있다.
도 11b는 프로세스 도면의 제2 부분을 도시하고, 단계(1111)와 관련하여 전술된 단계들에 대한 대안을 설명한다. 도 11b에 도시된 바와 같이, 1112에서, 제2 대안으로, 클라이언트 엔드포인트1은 다중화를 사용할 필요가 없을 수 있고, 프록시형 접속의 오버헤드를 감소시키도록 결정한다. 이러한 단계에서, 종단간 접속은 (예컨대, 단계 9 이후에) 1-RTT(예컨대, 최고) 레벨에서 보호될 수 있다. 따라서, QUIC-오버-QUIC 캡슐화는 (예컨대, 다중화가 필요하지 않기 때문에) 접속에 불필요한 오버헤드를 추가하는 것일 수 있다.
1113에서, 엔드포인트1은 SWITCH 메시지(예컨대, 스위치 유형 "QUIC-오버-QUIC로부터 QUIC-오버-UDP로"을 갖는, 요청)를 전송하여, (동일한 기본 UDP 흐름을 통한) 종단간 내부 접속에 의한 초기 접속의 대체를 트리거할 수 있다. 대안적으로, 프록시는 또한 SWITCH 프레임의 전송자일 수도 있다는 것에 유의한다.
1114 및 1115에서, 수신자(예컨대, 프록시)는 SWITCH 요청을 수락할지 또는 거부할지 여부를 결정하고, (예컨대, 요청이 수락되는 것을 나타내는 코드로) 응답을 다시 전송할 수 있다.
1116 및 1117에서, 엔드포인트1 및 프록시는 UDP를 통해 직접적으로 종단간(예컨대, 엔드포인트1 - 엔드포인트2) 패킷들을 교환하는 것을 시작할 수 있다. MHMP 프록시 상에서, 포워딩 동작은, 예를 들어, 제1 세그먼트 4-투플(예컨대, 엔드포인트1 IP 주소 및 UDP 포트, MHMP 프록시 IP 주소 및 UDP 포트)을 제2 세그먼트 4-투플(예컨대, MHMP 프록시 IP 주소 및 UDP 포트, 엔드포인트2 IP 주소 및 UDP 포트)과 연관시키는 포워딩 테이블에서의 엔트리로서 구성될 수 있다.
단계(1118)에서, 이러한 지점으로부터, 엔드포인트1과 엔드포인트2 사이의 QUIC 경로 상의 종단간 패킷들이 프록시를 통해 전송될 수 있으며, 이는 각각의 세그먼트, 즉 프록시-엔드포인트1 및 프록시-엔드포인트2 상에서 UDP 접속을 통해 그들을 포워딩할 수 있다.
프록시들은, QUIC 또는 MP-QUIC 절차들에서 프록시를 통해 효율적으로 접속하기 위한 다중경로 전송 프로토콜들에서 사용될 수 있다. MP-QUIC 시그널링 및 절차는 다중경로 접속의 일부로서 개별적인 간접 경로들을 확립하는 데 사용될 수 있다. 본 명세서에서 이전에 기술된 QUIC-오버-QUIC 메커니즘 및/또는 SWITCH 기반 메커니즘과 함께 사용될 때, 이들 절차들은 프록시를 통해 개별 경로들을 확립하는 것을 가능하게 할 수 있다. (예컨대, 직접 및 간접) 경로들 사이의 트래픽의 스케줄링은 정규 MP-QUIC 스케줄링과 유사하게 수행될 수 있다. 추가적으로 또는 대안적으로, MHMP-QUIC 엔드포인트는 스케줄링 전략에 영향을 주기 위해 경로의 간접 또는 직접 속성(예컨대, 본 명세서에 기술된 새로운 ADD_ADDRESS 프레임 유형 필드들로부터 알려짐)의 지식을 사용할 수 있다. 프록시들을 배치하고 사용할 이유들은, 가능하게는 애플리케이션 또는 서비스 제공자의 목표들에 따라 변할 수 있고, 따라서 상이한 또는 심지어 반대 전략들을 초래할 수 있다. 예를 들어, MHMP-QUIC 클라이언트는 이용가능할 때 간접 경로들을 사용할 수 있는데, 그 이유는, 예를 들어, 그것이 다른 고려사항들에 대한 경로 다양성을 가치 있게 생각하고, 백업 경로들로서 직접 경로들을 비활성상태로 유지하기 때문이다. 다른 예에서, MHMP 프록시들이 위성 링크들에 걸쳐 백업 경로들을 확립하는 데 사용되는 경우, MHMP-QUIC 클라이언트는 이용가능할 때 직접 경로들을 사용하고 간접 경로들을 백업을 위해 비활성상태로 유지할 수 있다.
또한, MHMP 경로는 하나 초과의 프록시를 통과할 수 있다. 이것은 엔드포인트로부터 숨겨질 수 있다: 각각의 프록시는, 어떤 다른 프록시들을 다음 홉으로서 사용할지를 결정하고, 후속적으로 다른 프록시에 대한 프록시 접속을 확립할 수 있다. 프록시는 NEW_CONNECTION 및 SWITCH 프레임들을 다음 프록시로 포워딩하고, 응답을 다시 중계할 수 있다. 따라서, 그들 프레임들은 경로 상의 마지막 프록시로 내내 포워딩될 수 있다.
QUIC 또는 MP-QUIC 절차들에서 프록시를 통해 효율적으로 접속하기 위해 멀티캐스트 및 Pubsub 통신이 인에이블될 수 있다. QUIC 멀티캐스트 프로토콜은 HTTP 대안 서비스들("Alt-Svc")을 사용하여 세션 키를 획득할 수 있다. MHMP 프로토콜은 이러한 기존 작업을 보완하여 추가적인 특징들을 제공하는 데 활용될 수 있다. 예를 들어, 그것은 전송 계층에서 세션 키들의 공유를 가능하게 할 수 있으며, 이는 HTTP Alt-Svc를 사용하는 것보다 더 효율적/동적일 수 있다. MHMP 프로토콜은 또한, 비디오 브로드캐스팅, 또는 pubsub 지점 대 다지점 메시지 분배(예컨대, MQTT)와 같은 시나리오들에서, IP 멀티캐스트에 대한 보완으로 또는 그에 대한 대체로 IP 유니캐스트의 사용을 가능하게 할 수 있다. 대체 시에, 유니캐스트와 함께 다수의 분배된 프록시들을 사용하면, 멀티캐스트가 네트워크에서 허용되지 않는 배치들에서 배치하기 쉽고 확장가능할 수 있다. 보완 시에, 멀티캐스트는 네트워크의 일부 부분들에서 허용될 수 있으며, 여기서 그것은 분배 효율을 개선시키는 데 사용될 수 있다.
멀티캐스트 및 pubsub 노드들은 프록시에 접속되고, 타깃/목적지 애플리케이션 ID 및 타깃/목적지 유형을 사용하는 NEW_CONNECTION 프레임을 사용할 수 있다. 멀티캐스트 스트림 소스들/수신기들은 목적지 IP 주소들을 멀티캐스트 그룹으로, 그리고 목적지 유형을 각각 "발행" 및 "구독"으로 설정할 수 있다. Pubsub 발행자들/구독자들은 목적지 애플리케이션 ID를 토픽 명칭으로, 그리고 목적지 유형을 각각 "발행" 및 "구독"으로 설정할 수 있다.
도 11a 및 도 11b에 기술된 절차들은, 예를 들어, 멀티캐스트/pubsub 노드들(예컨대, 소스, 수신기들, 발행자들, 구독자들)이 모두 엔드포인트1의 역할을 갖는 경우 사용될 수 있다. 엔드포인트2는, 이러한 경우에, 예를 들어 MHMP 프록시 자체에서 호스팅될 수 있는 가상 엔드포인트일 수 있다. 엔드포인트2의 역할들은, 주요 분배를 용이하게 하는 것 및 엔드포인트들 사이의 QUIC 흐름들의 포워딩을 유지/구성하는 것을 포함할 수 있다. 엔드포인트2의 단일 인스턴스가 각각의 멀티캐스트 그룹 또는 pubsub 토픽에 필요할 수 있다.
초기에, 소스/발행자 엔드포인트는 본 명세서에 기술된 바와 같이 엔드포인트2에 접속될 수 있다. 이러한 절차의 종료 시에, 소스/발행자는 QUIC 접속 "S"를 통해 엔드포인트2로 데이터를 스트리밍할 수 있다(예컨대, 엔드포인트2로 전송된 트래픽은, 수신기들/구독자들이 존재하지 않는 경우 프록시에 의해 폐기될 수 있음). 엔드포인트2/프록시는, 향후 사용을 위해, 멀티캐스트 그룹 또는 토픽 명칭과 연관된 QUIC 세션 키를 그의 내부 상태에 저장할 수 있다.
수신기들/구독자들은 또한, 그들이 NEW_CONNECTION을 전송할 때까지, 본 명세서에 기술된 바와 같이 엔드포인트2에 접속할 수 있다. 엔드포인트2/프록시는, 그것이 멀티캐스트 그룹 또는 토픽 명칭을 구독하라는 요청을 수락하는 경우, 이러한 멀티캐스트 그룹 또는 토픽 명칭에 대한 소스/발행자로부터의 QUIC 트래픽을 해독하는 데 필요한 키 재료를 포함하는 SESSION_KEY 프레임으로 응답할 수 있다. 수신기/구독자는 이러한 프레임을 프로세싱하고, 세션 키 재료를 이용하여 프록시에 대한 그의 QUIC 접속을 구성할 수 있다. 이러한 지점에서부터, 수신기/구독자는 접속 "S" 상에서 소스/발행자에 의해 전송된 패킷들을 해독할 수 있다. 엔드포인트2/프록시는, 수신기/구독자를 향한 접속 "S" 상의 모든 착신 패킷들의 사본을, 기존의 UDP 접속을 통해 수신기/구독자에게 포워딩하기 위한 프록시에 대한 포워딩 규칙들을 구성할 수 있다.
이러한 지점에서, 소스/발행자 엔드포인트와 수신기/구독자 엔드포인트들 사이에, 각각의 엔드포인트와 MHMP 프록시 사이의 유니캐스트 지점-지점 UDP 접속들을 통한, 지점 대 다지점 접속이 존재할 수 있다. 엔드포인트2/프록시는 스트림을 수신하지만, 그것을 수정하거나 또는 그 상에서 어떠한 데이터도 전송하지 않을 수 있다. 엔드포인트2/프록시는 (예컨대, 구독자들/수신기들의 수에 대한 통계치들을 제공하기 위해) 엔드포인트1-프록시 접속을 통해 엔드포인트1과 통신할 수 있다. 소스/발행자는 (예컨대, ADD_ADDRESS를 사용하여) 실제 멀티캐스트 IP 주소들을 광고할 수 있다. ADD_ADDRESS의 수신 시에, 수신기/구독자는 멀티캐스트 주소를 청취하는 새로운 경로를 셋업할 수 있다. 수신기/구독자는 MHMP 프록시를 통한 유니캐스트 경로를 닫거나 또는 사용하지 않는 백업으로 유지할 수 있다.
일부 실시예들에서, MP-QUIC를 통한 프록시 발견이 존재할 수 있다. 엔드포인트들이 DHCP, IPv6 ND 및 프로비저닝 도메인들, DNS 서비스 발견, mDNS를 사용한 로컬 발견, 포트 제어 프로토콜 및/또는 애니캐스트 주소들과 같은 메커니즘으로부터 적합한 프록시에 관하여 학습하는 다수의 방식들이 존재할 수 있다. 그럼에도 불구하고, 이들 방법들은 네트워크 운영자들에 의해 배치된 장기 프록시들을 발견하는데 적합할 수 있다. 본 명세서에 기술된 사용 사례들 중 일부에 대해, 애플리케이션 제공자들에 의해 배치된 프록시들을 발견하기 위해 더 많은 동적 방법이 필요할 수 있다. 따라서, 엔드포인트가 다중경로 프로토콜에서 간접 경로들에 사용할 수 있는 프록시에 관하여 학습할 수 있는 방법이 필요하다.
이러한 접근법에서, 엔드포인트는 그의 원격 피어로부터 기존 경로를 통해, 이용가능한 간접 경로에 관하여 학습할 수 있다. 엔드포인트는, 동일한 접속에서 지금 당장, 또는 다음 엔드포인트에 대한 다른 접속에서 나중에 이러한 간접 경로를 사용할 수 있다.
향상된 ADD_ADDRESS 프레임 유형은 프록시 발견을 위해 사용될 수 있다. 보통은, ADD_ADDRESS 프레임 유형이 다음과 같은 여러 개의 필드들을 가질 수 있다: 설정되는 경우, 포트 필드의 존재를 나타낼 수 있는 "P" 비트; 추적 및 제거 목적들을 위한 광고된 주소에 대한 고유 식별자일 수 있는, 주소 ID - 여기서, 이것은, 예를 들어, 두 호스트들이 동일한 경로 엔드포인트에 대한 상이한 IP 주소들을 볼 수 있도록 NAT가 IP 주소를 변경할 때 필요할 수 있음 -; 고정형 (0), WLAN (1) 또는 셀룰러 (2)와 같은 인터페이스 기술 유형을 나타낼 수 있는, 인터페이스 유형; IP 주소 필드에서의 주소와 관련될 수 있는, IP 버전; 전송자에 의해 수신기에 광고된 IP 주소일 수 있는, IP 주소; 및/또는, 광고된 IP 주소와 관련될 수 있는, UDP 포트 번호.
향상된/확장된 ADD_ADDRESS 프레임 유형에는, 다음과 같은 여러 개의 필드들이 존재할 수 있다: 설정되는 경우, 프록시 관련 필드들의 존재를 나타낼 수 있는 "I" 비트; 설정되는 경우, 프록시가 전송용 엔드포인트에 대한 모든 접속들에 사용될 수 있음을 나타내고, 설정되지 않는 경우, 프록시가 이러한 다중경로 접속에만 이용가능할 수 있음을 나타내는, "A" 비트; 수신용 엔드포인트(예컨대, 프록시의 자유롭게 접근가능한(public-facing) IP 주소)에 의해 보이는 바와 같은, 프록시의 IPv6 또는 IPv4 주소일 수 있고, 대안으로, 프록시 IP 주소 필드가 프록시 명칭 필드(예컨대, FQDN)로 대체될 수 있는, 프록시 IP 주소; 프록시 IP 주소 필드의 IP 버전이 IPv4인지 또는 IPv6인지 여부를 나타낼 수 있는, 프록시 IP 버전; 및/또는 프록시 IP 주소와 연관된 전송 계층(예컨대, UDP) 포트일 수 있는, 프록시 포트. 이들 필드들은 정상 필드들에 추가적일 수 있고, 본 명세서에서 전술된 바와 같이, 이러한 프레임을 수신하는 엔드포인트가 프록시를 통한 간접 경로 접속을 개시하는 것을 가능하게 하는 데 필요할 수 있다.
본 명세서에 기술된 기법들을 사용하면, ADD_ADDRESS를 사용하는 프록시 발견 절차가 존재할 수 있다. 도 12는 향상된 ADD_ADDRESS를 사용하는 프록시 발견 절차 및 본 명세서에 기술된 간접 접속 부트스트래핑 방법의 일례를 예시하는 프로세스 도면이다.
도 12에 도시된 바와 같은 단계들에 관련하여, 1201에서, 요소(1250)로 표기된 엔드포인트1은, (예컨대, 간접 경로(들)에 대해 본 명세서에 기술된 방법 및/또는 직접 경로(들)에 대한 기존의 MP-QUIC 절차를 사용하여) 하나 이상의 경로들을 통해 요소(1270)로 표기된 엔드포인트2와 다중경로 전송 접속을 확립할 수 있다. 이러한 지점에서, 직접 또는 간접 경로들의 세트로 구성된 엔드포인트1과 엔드포인트2 사이에 MHMP 접속이 존재할 수 있다.
1202에서, 애플리케이션 제공자는 프록시 인스턴스를 이제 동적으로 배치할 수 있거나 또는 이전에 그것을 배치했었을 수 있다. 도 12에 도시된 바와 같이, 프록시는 요소(1260)로 표기되고, MHMP 프록시일 수 있다. 프록시의 존재 및 IP 주소/포트는 (예컨대, 가능하게는 이러한 프록시를 위한 사용 조건들에 대한 정책 정보와 함께, 관리 평면 통신 메커니즘을 통해) 엔드포인트2에 이용가능하게 될 수 있다. 예를 들어, 주어진 프록시는 특정 영역에 위치된 모든 애플리케이션 사용자들에 대해 또는 특정 계획을 갖는 모든 애플리케이션 사용자들에 대해 사용가능할 수 있다.
1203에서, 엔드포인트2(예컨대, 서버)는, 엔드포인트1(예컨대, 클라이언트)이 이러한 접속을 위해 또는 이러한 서버에 대한 모든 접속들을 위해 사용할 수 있는 프록시를 인식하게 될 수 있다. 이러한 정보는, 관리 평면 시스템을 통해 제공되는 서버 상에 또는 다른 방법을 사용하여 구성될 수 있다. 엔드포인트2는, 통상적인 ADD_ADDRESS 필드들 이외에, 사용할 프록시 IP 주소, 버전 및 포트를 포함하는 ADD_ADDRESS 프레임을 포함하는 패킷을 전송할 수 있고, 이때 "I" 비트는 프록시 정보의 존재를 나타내도록 설정되고, 적용가능한 경우, "A" 비트는 프록시가 서버에 대한 다른 접속들에 대해 사용될 수 있다는 것을 나타내도록 설정된다. 엔드포인트2는 (예컨대, 다수의 프록시들, 및/또는 프록시를 통한 다수의 엔드포인트2 IP 주소들을 광고하기 위해) 여러 개의 ADD_ADDRESS 프레임들을 전송할 수 있다.
1204에서, ADD_ADDRESS 프레임들의 수신 시에, 엔드포인트1은 ADD_ADDRESS 파라미터들로 로컬 접속 상태를 업데이트할 수 있다.
1205에서, 즉시 또는 로컬 정책 결정(예컨대, 현재 경로가 신뢰할 수 없게 되는 경우)에 기초하는 것과 같은 일부 지점에서, 엔드포인트1 상의 (예컨대, 향상된 MP-QUIC) 경로 관리자 컴포넌트는 최근에 수신된 프록시 기반 ADD_ADDRESS 프레임들 중 하나로부터의 정보를 사용하여 새로운 경로를 개시하도록 결정한다.
1206에서, 엔드포인트 1은, 예컨대 도 11에 기술된 절차를 사용하여 ADD_ADDRESS로부터 학습된 프록시를 통한 간접 경로 접속 셋업을 개시할 수 있다.
1207에서, 이러한 지점에서, 엔드포인트1과 엔드포인트2 사이의 다중경로 접속은 이제, 모든 이미 존재하는 경로들에 더하여, MHMP 프록시를 통한 새로운 간접 경로를 포함할 수 있다.
일부 실시예들에서, 인에이블링 서버(또는 클라이언트) 이동이 존재할 수 있다. 이러한 접근법은, 서버 또는 클라이언트 이동 동안 애플리케이션 접속 계속성을 용이하게 하기 위해 본 명세서에 기술된 MHMP 프로토콜 메커니즘이 어떻게 사용될 수 있는지를 다룰 수 있다. 이러한 방법의 하나의 이점은, 엔드포인트가 외부 프로토콜(예컨대, DNS, 애플리케이션 계층 프로토콜 등)을 통해 새롭게 이동된 원격 엔드포인트를 발견할 필요가 없다는 것일 수 있고; 다른 이점은, 투명한 이동을 가능하게 하는 전송 세션이 유지된다는 것일 수 있다.
서버 또는 클라이언트 이동을 가능하게 하는 데 있어서, 새로운 GENERATION, STATE, 및 향상된 ADD_ADDRESS 및 PATHS 프레임 유형들과 같은 새로운 빌딩 블록들이 존재할 수 있다.
방법은 "세대 ID"를 IP 주소들에 연관시키고, 이러한 세대 ID를 ADD_ADDRESS 및 PATHS 메시지들에서의 주소들과 연관시킬 수 있다. 세대들은 일 측(예컨대, 클라이언트 또는 서버)과 연관될 수 있다. 예를 들어, 짝수 번호의 세대 ID들은 클라이언트와 연관되고, 홀수 번호의 세대 ID들은 서버와 연관될 수 있다. 디폴트로, 모든 클라이언트 주소들은 세대 0("gen0")과 연관될 수 있고, 모든 서버 주소들은 세대 1("gen1")과 연관될 수 있다. gen0 및 gen1은 디폴트로 현재 활성 세대들일 수 있다. 따라서, 모든 기존 메시지들 및 거동을 디폴트로 사용하는 것이 가능할 수 있으며, 이는 세대 메커니즘의 역방향 호환성(backward compatibility)을 가능하게 할 수 있다. 예를 들어, 상이한 서버와 연관된 새로운 주소들이, 이어서 다음 이용가능 세대 3("gen3")과 관련하여 광고될 수 있다. 클라이언트는 gen3 주소들을 향한 경로들을 확립할 수 있지만, 활성 서버 측 세대가 여전히 gen1인 한, 그들 상에서 어떠한 데이터도 교환하지 않을 수 있다. 주어진 경로는 경로 세대 ID와 연관될 수 있으며, 이는 클라이언트 세대 ID(예컨대, 이러한 경로와 연관된 클라이언트 주소의 세대 ID) 및 (예컨대, 서버 측 IP 주소의) 서버 세대 ID에 의해 형성된다.
예를 들어, 디폴트로, 경로는 gen0-gen1 경로 세대 ID를 가질 수 있고, 서버 이동의 경우에, 새로운 경로들은 경로 세대 ID gen0-gen3을 가질 수 있다. 새로운 GENERATION 프레임은, 지금 활성상태인 경로 세대 ID를 나타내기 위해, 현재 서버에 의해 클라이언트로 전송될 수 있다. GENERATION 프레임의 수신 시에, 클라이언트는 모든 통신을 (예컨대, gen0-gen1 경로들로부터 gen0-gen3 경로들로) 스위칭한다. 일부 경우들에서, 이러한 변화는 새로운 애플리케이션 접속들에만 대한 것일 수 있지만, 그것은 대안적으로, 모든 트래픽에 대해 즉각적일 수 있다: GENERATION 프레임의 전이 모드 필드는 어떤 거동이 적용되어야 하는지를 결정한다. 세대들을 스위칭하기 이전에, 오래된 서버는 기존 gen0-gen1 경로들 상에 새로운 STATE 프레임들을 발행하여, 모든 트래픽이 일시 중지되거나 또는 비활성화되도록 요청할 수 있으며, 이는, 예를 들어, 오래된 서버와 새로운 서버 사이의 VM 전송을 가능하게 할 수 있다. 새로운 서버는, 그의 IP 주소들이 비-디폴트 세대(예컨대, 프로그램 API를 사용함)와 연관될 수 있음을 인식하게 될 수 있다. 예를 들어, 애플리케이션은 2개의 포트들: 새로운 클라이언트들로부터의 정상 접속들을 위한 제1 포트, 및 다른 서버로부터 이동되는 클라이언트들로부터의 접속들을 위한 제2 포트 상에서 착신 접속들을 청취할 수 있다. 제2 포트를 청취하는 소켓은 이러한 소켓에 의해 사용되는 디폴트 세대 ID를 포함하는 새로운 소켓 옵션을 사용하여 생성될 수 있다. 제2 포트를 사용하는 접속들에 사용된 서버 IP 주소들은 디폴트로 gen3과 연관될 수 있다. QUIC와 같은 전송 프로토콜에서 정의된 동등한 메커니즘에 대한 필요성이 있을 수 있고, GENERATION 또는 STATE와 같은 프레임 유형들이 정의될 필요가 있을 수 있다.
(예컨대, gen1로부터 gen3으로의) 서버 이동이 본 명세서에 기술된 절차에서 전형적인 예로서 사용될 수 있지만, (예컨대, gen0으로부터 gen2로의) 클라이언트 이동이 동일한 메커니즘을 사용하여 지원될 수 있으며, 여기서 클라이언트 및 서버의 역할들이 스왑(swap)된다.
새로운 GENERATION 프레임 유형은 다음의 필드들을 가질 수 있다: 새로운 활성 서버(예컨대, 홀수 번호가 매겨짐)와 함께 사용하기 위한 세대 ID일 수 있는, 서버 세대 ID(예컨대, 가변 길이 정수); 새로운 활성 클라이언트(예컨대, 짝수 번호가 매겨짐)와 함께 사용하기 위한 세대 ID일 수 있는, 클라이언트 세대 ID(예컨대, 가변 길이 정수); "새로운 애플리케이션 트랜잭션들만"또는 "모든 활성 접속들"을 포함하는 전이의 유형을 나타내는 코드일 수 있는, 전이 모드(예컨대, 가변 길이 정수); 및/또는, 재설정 플래그(예컨대, 비트) - 설정되는 경우, 이러한 플래그는 모든 경로들 및 연관된 주소들을 활성 세대 ID들로 재설정할 수 있고, 또한 (예컨대, 모든 서버 측 IP 주소 세대 ID들을 3에서 1로, 그리고 모든 gen0-gen3 경로들을 gen0-gen1 경로들로 재설정하기 위해) 완료된 이동 후에 사용될 수 있음 -.
새로운 STATE 프레임 유형은 다음의 필드들을 가질 수 있다: 서버 측에 대한 원하는 접속 상태를 나타내는 코드(ACTIVE 또는 INACTIVE)일 수 있는, 서버 접속 상태(예컨대, 가변 길이 정수). 그것은 서버에 의해서만 변경될 수 있고/있거나, 그것은 클라이언트에 의해 전송된 STATE 프레임들에서 생략될 수 있다. STATE 프레임 유형은, 클라이언트 측에 대한 원하는 접속 상태를 나타내는 코드(ACTIVE 또는 INACTIVE)일 수 있는, 클라이언트 접속 상태(예컨대, 가변 길이 정수)를 추가로 포함할 수 있고, 그것은 클라이언트에 의해서만 변경되고 서버에 의해 전송된 STATE 프레임들에서 생략될 수 있다(예컨대, 피어들 둘 모두가 주어진 경로에 대해 클라이언트 및 서버 접속 상태를 그들의 내부 상태로 유지할 수 있고, 데이터 트래픽에 사용가능하게 하기 위해, 클라이언트 및 서버 접속 상태들 둘 모두가 ACTIVE일 수 있음).
정상 ADD_ADDRESS 프레임 유형은 다음의 필드들로 향상될 수 있다: 설정되는 경우, 세대 ID 필드가 존재함을 나타낼 수 있는, G 비트; 및/또는, 주소와 연관된 세대 ID일 수 있는, 세대 ID(예컨대, 가변 길이 정수).
게다가, PATHS 프레임 유형도 또한 세대 ID 관련 정보로 향상될 수 있다. 일부 경우들에서, PATHS 프레임들은 (예컨대, PATHS 프레임 전송자의 관점에서) 모든 전송 및 수신 경로들을 통한 경로 설명을 포함할 수 있다. 각각의 경로 디스크립터는 경로 ID, 로컬 주소 ID 및 원격 주소 ID를 포함할 수 있다. 추가로, PATHS 프레임 유형은 각각의 경로 디스크립터에 대해 다음 필드로 향상될 수 있다: (예컨대, PATHS 프레임 전송자의 관점에서) 로컬 IP 주소와 연관된 세대 ID일 수 있는, 로컬 세대 ID(예컨대, 가변 길이 정수); 및/또는, (PATHS 프레임 전송자의 관점에서) 원격 IP 주소와 연관된 세대 ID일 수 있는, 원격 세대 ID(예컨대, 가변 길이 정수).
세대 ID들은 대안적으로, 주소 ID들(예컨대, 이는 ADD_ADDRESS와 같은 MP-QUIC 프레임에 이미 존재하는 필드일 수 있고, 주소 제거를 위해 주소를 식별하는 데 사용될 수 있음) 내에서 인코딩될 수 있다. 예를 들어, 세대 0, 세대 1, 세대 2 및 세대 3만이 필요하기 때문에, 그리고 주소의 측(클라이언트, 서버)이 알려져 있기 때문에, 주소 ID들에서 단일 비트가 충분할 수 있다: 짝수 클라이언트 측 주소 ID가 gen0일 수 있고, 홀수 클라이언트 측 주소 ID가 gen2일 수 있고, 짝수 서버 측 주소 ID가 gen1일 수 있고, 홀수 서버 측 주소 ID가 gen3일 수 있다. 그러나, 본 명세서에서 예시 목적들을 위해, 세대 ID들이 사용될 수 있다.
도 13a 및 도 13b는 본 명세서에 기술된 하나 이상의 기법들을 사용하는 서버 이동 절차의 일례를 예시하는 도면들이다. 도 13a 및 도 13b 둘 모두는, 전송 접속을 유지하면서 제1 서버로부터 제2 서버로의 이동을 지원하는, 단일 절차의 일부로 간주될 수 있다. 상기 단락들에서 실질적으로 논의된 바와 같이, 이러한 절차는 클라이언트 이동을 유사하게 다루도록 적응될 수 있다.
세대 ID는 엔드포인트에서 실행되는 인스턴스를 식별할 수 있다: 동일한 세대 ID들은 동일한 인스턴스를 지칭할 수 있는 한편, 상이한 세대 ID는 상이한 인스턴스들을 지칭할 수 있다. 상이한 인스턴스들은 애플리케이션 또는 접속 상태를 공유하지 않을 수 있다. 따라서, 이러한 절차의 핵심 태양은 하나의 인스턴스(예컨대, 세대 ID 1, 제1 서버)와 통신하는 것으로부터 다른 인스턴스(예컨대, 세대 ID 3, 제2 서버)와 통신하는 것으로의 스위칭을 동기화하는 것이다.
도 13a 및 도 13b에 도시된 단계들과 관련하여, 13011에서, 초기에, 요소(1350)로 표기된 엔드포인트1(예컨대, 클라이언트)은, MPMH-가능 다중경로 프로토콜(예컨대, 본 명세서에 이전에 기술된 바와 같은 향상된 MP-QUIC)을 사용하여, 요소(1360)로 표기된 엔드포인트2(예컨대, 서버)에 대한 전송 접속을 확립할 수 있다. 전송 파라미터는 GENERATION 기반 서버 이동에 대한 지원을 나타내기 위해 하나 또는 둘 모두의 엔드포인트들에 의해 전송된 기존 전송 파라미터들에 추가될 수 있고, 본 명세서에 기술된 다른 전송 파라미터들에 더하여 사용될 수 있다. 전송 파라미터 ID는 세대 기반 이동 지원(예컨대, 0x0011)일 수 있고, 전송 파라미터 길이는 0 비트(예컨대, 비어 있는 파라미터)와 같은 일부 값일 수 있다. 이러한 전송 파라미터는, 전송자가 본 명세서에 기술된 새로운 프레임 유형들 GENERATION 및 STATE, (예컨대, 세대 ID 인식을 위해) 향상된 프레임 유형들 ADD_ADDRESS 및 PATHS, 및 관련 이동 지원 절차를 지원한다는 것을 나타낼 수 있다.
1302에서, 하나 이상의 직접 또는 간접 경로들을 통해, 엔드포인트1과 엔드포인트2 사이의 전송 접속이 존재할 수 있다.
1303에서, 예컨대 서비스 운영자의 관리 평면에 의해, 서버 인스턴스 이동이 개시될 수 있다. 관리 평면(도 13a에 도시되지 않음)은, 이동이 임박했다는 것을 엔드포인트2로 시그널링할 수 있다.
1304 내지 1306과 관련하여, 이들 단계들은, 예를 들어, 핫(hot) VM 이동 경우에서와 같은, 서버 인스턴스 이동이 트래픽의 일시정지를 요구하는 경우들에서 발생할 수 있다. 엔드포인트2는 경로들 상의 STATE(INACTIVE) 프레임을 엔드포인트1로 전송할 수 있다. 엔드포인트1은, 예를 들어, STATE(INACTIVE) 프레임의 수신 시에, 경로 상에서 데이터를 전송하는 것을 중지할 수 있다. 엔드포인트2는, 예를 들어, STATE(INACTIVE) 프레임을 전송하기 이전에, 경로 상에서 데이터를 전송하는 것을 중지할 수 있다.
1307에서, 관리 평면은 요소(1370)로 표기된 타깃 서버 엔드포인트3을 선택하고, 서버 이동을 조직할 수 있으며, 이는 엔드포인트3 상에서 소프트웨어 인스턴스를 생성하고/하거나 엔드포인트2와 엔드포인트3 사이에서 VM 또는 애플리케이션 상태를 이동시키는 것을 포함할 수 있다. 이러한 지점에서, 엔드포인트3 상에서 이동된 인스턴스는 착신 접속들을 청취할 수 있지만, 아직 애플리케이션 트래픽을 교환할 준비가 되어 있지 않을 수 있다. 관리 평면은 엔드포인트3의 IP 주소를 엔드포인트2에 제공할 수 있다.
1308 및 1309와 관련하여, 엔드포인트2는 ADD_ADDRESS 프레임(들)을 클라이언트로 전송할 수 있으며, 프레임들 각각은 엔드포인트3의 IP 주소, 및 일부 경우들에서는, 다른 기존 필드들(예컨대, 주소 ID, 포트, 프로토콜 버전 등) 및 이러한 측에 대한 다음의 미사용 세대 ID인 세대 ID 값(예컨대, 서버 이동에 대해 "3")을 포함한다. 프록시로서 엔드포인트2를 지정하는 프록시 정보 요소들(예컨대, 엔드포인트2의 IP 주소, 버전, 포트를 포함함, 이때 I 비트는 설정되고 전형적으로 A 비트는 설정되지 않음)이 존재할 수 있다. 그러나, 엔드포인트2는 직접 접속(예컨대, 프록시 없음), 간접 접속(예컨대, 프록시, 예컨대, 엔드포인트2가 있음), 또는 직접 접속과 간접 접속의 혼합에 대한 ADD_ADDRESS 프레임들을 전송할 수 있다. 도 13a에 도시된 예로서, ADD_ADDRESS는, 프록시로서 엔드포인트2 자체를 사용하여, 프록시 정보와 함께 전송될 수 있다. 이것은, 직접 통신이 가능하기 전에도(예컨대, 이동성 이벤트를 예상하여), 엔드포인트3과의 통신을 확립할 수 있게 하는 데 유용할 수 있다. 엔드포인트1은 확인응답을 다시 전송할 수 있다.
1310에서, 엔드포인트1은, 수신 시에, 추가된 주소 정보(예컨대, 존재하는 경우, 프록시 정보 요소들을 포함함)를 접속의 내부 상태로 저장할 수 있다. 엔드포인트1의 경로 관리자는 이어서, 그들 주소들에 대한 새로운 경로 접속들을 확립하도록 결정할 수 있다.
1311에서, 엔드포인트1은 새로운 경로 또는 경로들, 또는 엔드포인트3에 대한 접속을 확립할 수 있다. 이러한 예에서, 이들은 본 명세서에 기술된 방법을 사용하여(예컨대, NEW_CONNECTION, PACKET, 및 가능하게는 SWITCH 프레임들을 사용하여) 확립된 간접 경로들일 수 있다. 이들은 엔드포인트1 및 엔드포인트3 둘 모두에 의한 gen0-gen3 경로들인 것으로 알려져 있을 수 있기 때문에, 이들 경로들은 임의의 데이터 트래픽을 반송하는 데 사용되지 않을 수 있다.
1312에서, 엔드포인트1은 엔드포인트2에 대한 gen0-gen1 경로 접속들(예컨대, 이는 그들이 단계들(1304 내지 1306)에서 비활성상태로 설정되지 않으면, 데이터 트래픽에 대해 사용될 수 있음) 및 데이터 트래픽에 대해 현재 사용되지 않을 수 있는, 엔드포인트3에 대한 gen0-gen3 경로 접속들을 가질 수 있다.
1313에서, 일부 지점에서, 서버 이동이 완료될 때, (예컨대, 관리 평면) 엔티티가 엔드포인트2에 시그널링한다. 엔드포인트3은 이제 애플리케이션 트래픽을 교환할 준비가 된다.
1314 및 1315와 관련하여, 엔드포인트2는, "3"의 서버 세대 ID 값을 포함하여, 하나 이상의 경로들 상의 GENERATION 프레임을 엔드포인트 1을 향해 전송할 수 있다. 전이 모드는 "모든 활성 접속들" 또는 "새로운 애플리케이션 트랜잭션들만"일 수 있다. 엔드포인트1은 확인응답을 다시 전송한다.
1316 내지 1319와 관련하여, 엔드포인트1은 gen0-gen1 경로들을 사용하는 것으로부터 gen0-gen3 경로들을 사용하는 것으로의 전이를 구현할 수 있다. 엔드포인트1은 기존의 gen0-gen3 경로들을 사용하고/하거나 새로운 gen0-gen3 경로들을 개시할 수 있다. gen0-gen1으로부터 gen0-gen3으로의 전이는 요청된 전이 모드, gen0-gen1 경로들의 현재 상태(예컨대, 활성 또는 비활성), 및 애플리케이션 서버의 거동에 따라 다른 방식들로 수행될 수 있다.
제1 예에서, VM 또는 컨테이너 이동의 경우에, 모든 gen0-gen1 경로 접속들이 이러한 지점에서(예컨대, 단계들(1304 내지 1306) 이후에) 비활성상태일 수 있다. 전이 모드는 "모든 활성 접속들"로 설정될 수 있다. 수신 시에, 클라이언트(예컨대, 엔드포인트1)는 하나 이상의 gen0-gen3 경로들 상에서 GENERATION(예컨대, gen0-gen3) 프레임을 포워딩할 수 있으며, 이는, gen0-gen3 경로들이 이제 데이터 트래픽을 위해 사용될 수 있음을 엔드포인트3에 통지할 수 있다. 엔드포인트1은 gen0-gen3 경로들을 통해 모든 애플리케이션 트래픽을 전송할 수 있다. 이러한 경우에, 이동은 클라이언트 및 서버 애플리케이션 둘 모두에 대해 완전히 투명할 수 있다.
다른 예에서, gen0-gen1 경로들은 현재 활성상태일 수 있다(예컨대, 단계들(1304 내지 1306)은 사용되지 않았음). 전이 모드는 "새로운 애플리케이션 트랜잭션들만"으로 설정될 수 있다. 이것은, 예를 들어, 엔드포인트3이 데이터 센터에서 백엔드 데이터베이스 서버와 통신하는 무상태 애플리케이션 인스턴스(stateless application instance)를 호스팅할 때 사용될 수 있다. 엔드포인트2로부터 GENERATION(gen0-gen3) 프레임의 수신 시에, 클라이언트는 그것을 하나 이상의 gen0-gen3 경로들 상에서 포워딩할 수 있다. 이것은, gen0-gen3 경로들이 이제 애플리케이션 트래픽에 사용될 수 있음을 엔드포인트3에 통지할 수 있다. 엔드포인트1은 기존 애플리케이션 트랜잭션들을 위해 gen0-gen1 경로들을 사용하는 것을 유지하고, 모든 새로운 트랜잭션들(예컨대, 모든 HTTP GET/POST 메시지들)에 대한 트래픽을 gen0-gen3 경로들 상으로 전송할 수 있다. 이러한 경우에서도, 애플리케이션 클라이언트 및 서버는 이동을 인식하지 못할 수 있지만, 애플리케이션 서버는 각각의 요청을 독립적으로(예컨대, 무상태 애플리케이션으로서) 다루도록 설계될 수 있다.
다른 예에서, 전이 모드는 또한 "새로운 애플리케이션 트랜잭션들만"으로 설정될 수 있다. 서버 이동이 완료된다는 신호를 수신 시에, 엔드포인트2 상에서 실행되는 애플리케이션 인스턴스는 모든 미처리된 애플리케이션 트랜잭션들을 실패할 수 있다. 엔드포인트2로부터 GENERATION(gen0-gen3) 프레임의 수신 시에, 클라이언트는 그것을 하나 이상의 gen0-gen3 경로들 상에서 포워딩할 수 있다. 이것은, gen0-gen3 경로들이 이제 애플리케이션 트래픽에 사용될 수 있음을 엔드포인트3에 통지할 수 있다. 엔드포인트1 상의 클라이언트 애플리케이션은 애플리케이션 요청들을 재시도할 수 있으며, 이는 따라서, 엔드포인트3을 향해 gen0-gen3 경로들 상에서 전송될 수 있는데, 그 이유는 이들 재시도들이 새로운 애플리케이션 트랜잭션들일 수 있기 때문이다. 이러한 경우에, 서버 이동은 트랜잭션 실패들의 세트로서 클라이언트 애플리케이션에 가시적이게 될 수 있지만, 이것은 애플리케이션의 주요 재설계를 필요로 하지 않을 수 있고, 심지어 정상 애플리케이션 실패 핸들링 거동을 통해 다루어질 수 있다. 서버 애플리케이션은, 그것이 요청 시에 (예컨대, 관리 평면 컴포넌트로부터) 주어진 클라이언트에 대한 모든 진행 중인 트랜잭션들을 실패해야 하는 것과 같은, 이러한 경우에 대한 일부 지원을 필요로 할 수 있다.
1320에서, 엔드포인트1은 엔드포인트2에 대한 gen0-gen1 경로들을 가질 수 있으며, 이는 진행 중인 트랜잭션들에 사용될 수 있거나, 또는 사용되지 않을 수 있다. 엔드포인트1은 또한, 엔드포인트3에 대한 gen0-gen3 경로들을 가질 수 있으며, 이는 애플리케이션 트래픽에 사용될 수 있다.
1321에서, 도시된 바와 같이, 기존의 gen0-gen3이 엔드포인트2/프록시를 통한 간접 경로들이라고 가정하면, 엔드포인트3은 엔드포인트1에 대한 하나 이상의 gen0-gen3 경로들을 통해 ADD_ADDRESS를 사용하여 그의 IP 주소들을 광고할 수 있다. 엔드포인트1은 이러한 정보를 사용하여 엔드포인트3에 대한 직접 경로 접속들을 확립할 수 있다. 엔드포인트1 및 엔드포인트3은, 일단 직접 경로들이 확립되면 간접 경로들을 사용하는 것을 중지될 수 있다. 그 결과, 엔드포인트2는 포워딩하기 위한 어떠한 간접 경로 트래픽도 갖지 않을 수 있고, (예컨대, 타임아웃 기간 후에) 포워딩 엔트리를 제거할 수 있다.
1322에서, 일단 엔드포인트1과 엔드포인트2 사이의 gen0-gen1 경로들이 사용 중에 있지 않으면(예컨대, 진행 중인 애플리케이션 트랜잭션들의 종료 후에, 또는 GENERATION 메시지 수신 직후에), 엔드포인트1 또는 엔드포인트2는 gen0-gen1 경로들을 폐쇄할 수 있다.
1323에서, 원래의 엔드포인트1-엔드포인트2 접속이 이제, 엔드포인트1과 엔드포인트3 사이의 단일 또는 다중경로 접속으로 이동된다.
1324에서, 나중에 다른 서버를 향해 동일한 절차에 따라 다른 이동을 수행할 수 있기 위해, 엔드포인트1 또는 엔드포인트3은 모든 gen3 주소들을 gen1 주소들로 재설정할 수 있다(예컨대, gen0-gen3 경로들이 그에 따라 gen0-gen1 경로들이 됨). 이것은, 일단 기존 경로들만이 둘 모두의 엔드포인트들 관점에서 gen0-gen3인 것으로 알려져 있으면 수행될 수 있다. 예를 들어, gen0-gen3 경로들만을 종료할 수 있는 엔드포인트3은, gen0-gen3 경로들만을 포함하는 엔드포인트1로부터, 본 명세서에 정의된 바와 같은 향상된 PATHS 프레임을 수신할 수 있다. 이어서, 엔드포인트3은 GENERATION(예컨대, 재설정 플래그가 설정된 gen0-gen1)을 엔드포인트1로 전송할 수 있다. 엔드포인트1 및 엔드포인트3 둘 모두는 이어서, 그들의 내부 상태에서 모든 gen3 주소들을 gen1으로 설정할 수 있다.
어떠한 트래픽 오버헤드 또는 다중화도 갖지 않는 원활한 프록싱, 및 프록시 상의 애플리케이션 특정 액션을 위해, 엔드포인트는 NEW_CONNECTION 프레임을 프록시로 전송하여, PACKET 프레임들에 기초한 QUIC-오버-QUIC 프록싱을 개시할 수 있다. 엔드포인트는 캡슐화된 프록시 접속을 내부 QUIC 접속으로 대체하기 위해 - 이는, 캡슐화를 비-오버헤드 포워딩으로 대체할 수 있음 -, SWITCH 프레임을 전송할 수 있다. SESSION_KEY 프레임은 지점 대 다지점 및 멀티캐스트를 가능하게 하는 데 사용될 수 있다. MP_QUIC에서의 프록시형 접속의 광고를 위해, 엔드포인트는 프록시 관련 정보 요소들로 향상된 ADD_ADDRESS 프레임 유형을 전송할 수 있다. 수신용 엔드포인트는 이러한 정보를 사용하여 QUIC-오버-QUIC를 사용하는 경로를 개시할 수 있다. 서버 측 및 클라이언트 측 IP 주소들이 세대 ID와 연관되는 경우, 서버는 클라이언트에게, 새로운 프레임 유형들 GENERATION 및 STATE를, 그리고 향상된 프레임 유형들 ADD_ADDRESS 및 PATHS를 사용하여 이동 절차의 일부로서 오래된 세대 경로로부터 새로운 세대 경로로 스위칭하도록 전할 수 있다.
특징들 및 요소들이 특정 조합들로 위에서 설명되었지만, 당업자는 각각의 특징 또는 요소가 단독으로 또는 다른 특징들 및 요소들과의 임의의 조합으로 사용될 수 있다는 것을 알 것이다. 또한, 본 명세서에서 기술된 방법들은 컴퓨터 또는 프로세서에 의한 실행을 위해 컴퓨터 판독가능 매체에 통합된 컴퓨터 프로그램, 소프트웨어 또는 펌웨어로 구현될 수 있다. 컴퓨터 판독 가능 매체들의 예들은 (유선 또는 무선 접속을 통해 송신되는) 전자 신호들 및 컴퓨터 판독 가능 저장 매체들을 포함한다. 컴퓨터 판독가능 저장 매체들의 예들은 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 레지스터, 캐시 메모리, 반도체 메모리 디바이스들, 내부 하드 디스크들 및 착탈식 디스크들과 같은 자기 매체들, 광자기 매체들, 및 CD-ROM 디스크들 및 디지털 다기능 디스크(DVD)들과 같은 광학 매체들을 포함하지만, 이들로 제한되지 않는다. 소프트웨어와 연관된 프로세서는 WTRU, UE, 단말기, 기지국, RNC 또는 임의의 호스트 컴퓨터에서 사용하기 위한 무선 주파수 송수신기를 구현하는 데 사용될 수 있다.

Claims (20)

  1. 클라이언트 엔드포인트로서,
    프로세서; 및
    송수신기를 포함하고,
    상기 프로세서 및 상기 송수신기는 네트워크 노드로, 목적지 엔드포인트와의 빠른 사용자 데이터그램 프로토콜(User Datagram Protocol, UDP) 접속(QUIC) 접속을 확립하라는 요청을 전송하도록 구성되고 - 상기 QUIC 접속을 확립하라는 요청은 흐름 식별자(identifier, ID)를 포함함 -;
    상기 프로세서 및 상기 송수신기는, 상기 네트워크 노드로부터, 상기 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청이 수락된다는 표시를 포함하는 응답을 수신하도록 구성되고;
    상기 프로세서 및 상기 송수신기는 외부 QUIC 패킷화된 데이터 내에 내부 QUIC 패킷화된 데이터를 캡슐화하도록 구성되고 - 상기 내부 QUIC 패킷화된 데이터는 상기 흐름 ID를 포함함 -;
    상기 프로세서 및 상기 송수신기는 상기 네트워크 노드로, 상기 흐름 ID에 기초하여 상기 목적지 엔드포인트를 향해 포워딩하기 위한 상기 외부 QUIC 패킷화된 데이터를 전송하도록 구성되는, 클라이언트 엔드포인트.
  2. 제1항에 있어서, 상기 프로세서 및 상기 송수신기는 상기 네트워크 노드로, 다른 목적지 엔드포인트와의 다른 QUIC 접속을 확립하라는 요청을 전송하도록 구성되고, 상기 다른 QUIC 접속을 확립하라는 요청은 다른 흐름 ID를 포함하는, 클라이언트 엔드포인트.
  3. 제1항에 있어서, 상기 프로세서 및 상기 송수신기는 상기 네트워크 노드로, 외부 QUIC 패킷화된 데이터 내의 내부 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 요청을 전송하도록 구성되는, 클라이언트 엔드포인트.
  4. 제3항에 있어서, 상기 프로세서 및 상기 송수신기는 상기 네트워크 노드로부터, 외부 QUIC 패킷화된 데이터 내의 내부 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 상기 요청에 대한 응답을 수신하도록 구성되는, 클라이언트 엔드포인트.
  5. 제3항에 있어서, 상기 프로세서 및 상기 송수신기는 상기 네트워크 노드로, QUIC 패킷화된 데이터에서 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 상기 요청에 대한 상기 수신된 응답이 수락된다는 조건에서, 상기 목적지 엔드포인트를 향해 포워딩하기 위한 내부 QUIC 패킷화된 데이터를 포함하는 UDP 데이터그램을 전송하도록 구성되는, 클라이언트 엔드포인트.
  6. 제1항에 있어서, 상기 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청은 상기 외부 QUIC 패킷화된 데이터에 캡슐화되는, 클라이언트 엔드포인트.
  7. 제1항에 있어서, 상기 내부 QUIC 패킷화된 데이터 및 상기 외부 QUIC 패킷화된 데이터는 별개로 암호화되는, 클라이언트 엔드포인트.
  8. 클라이언트 엔드포인트에 의해 수행되는 방법으로서,
    네트워크 노드로, 목적지 엔드포인트와의 빠른 사용자 데이터그램 프로토콜(UDP) 접속(QUIC) 접속을 확립하라는 요청을 전송하는 단계 - 상기 QUIC 접속을 확립하라는 요청은 흐름 식별자(ID)를 포함함 -;
    상기 네트워크 노드로부터, 상기 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청이 수락된다는 표시를 포함하는 응답을 수신하는 단계;
    외부 QUIC 패킷화된 데이터 내에 내부 QUIC 패킷화된 데이터를 캡슐화하는 단계 - 상기 내부 QUIC 패킷화된 데이터는 상기 흐름 ID를 포함함 -; 및
    상기 네트워크 노드로, 상기 흐름 ID에 기초하여 상기 목적지 엔드포인트를 향해 포워딩하기 위한 상기 외부 QUIC 패킷화된 데이터를 전송하는 단계를 포함하는, 방법.
  9. 제8항에 있어서, 상기 네트워크 노드로, 다른 목적지 엔드포인트와의 다른 QUIC 접속을 확립하라는 요청을 전송하는 단계를 포함하고, 상기 다른 QUIC 접속을 확립하라는 요청은 다른 흐름 ID를 포함하는, 방법.
  10. 제8항에 있어서, 상기 네트워크 노드로, 외부 QUIC 패킷화된 데이터 내의 내부 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 요청을 전송하는 단계를 포함하는, 방법.
  11. 제10항에 있어서, 상기 네트워크 노드로부터, 외부 QUIC 패킷화된 데이터 내의 내부 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 상기 요청에 대한 응답을 수신하는 단계를 포함하는, 방법.
  12. 제10항에 있어서, 상기 네트워크 노드로, QUIC 패킷화된 데이터에서 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 상기 요청에 대한 상기 수신된 응답이 수락된다는 조건에서, 상기 목적지 엔드포인트를 향해 포워딩하기 위한 내부 QUIC 패킷화된 데이터를 포함하는 UDP 데이터그램을 전송하는 단계를 포함하는, 방법.
  13. 제8항에 있어서, 상기 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청은 상기 외부 QUIC 패킷화된 데이터에 캡슐화되는, 방법.
  14. 제8항에 있어서, 상기 내부 QUIC 패킷화된 데이터 및 상기 외부 QUIC 패킷화된 데이터는 별개로 암호화되는, 방법.
  15. 네트워크 노드로서,
    프로세서; 및
    송수신기를 포함하고,
    상기 프로세서 및 상기 송수신기는 클라이언트 엔드포인트로부터, 목적지 엔드포인트와의 빠른 사용자 데이터그램 프로토콜(UDP) 접속(QUIC) 접속을 확립하라는 요청을 수신하도록 구성되고 - 상기 QUIC 접속을 확립하라는 요청은 흐름 식별자(ID)를 포함함 -;
    상기 프로세서 및 상기 송수신기는, 상기 클라이언트 엔드포인트로, 상기 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청이 수락된다는 표시를 포함하는 응답을 전송하도록 구성되고;
    상기 프로세서 및 상기 송수신기는 상기 클라이언트 엔드포인트로부터, 내부 QUIC 패킷화된 데이터를 캡슐화하는 외부 QUIC 패킷화된 데이터를 수신하도록 구성되고 - 상기 내부 QUIC 패킷화된 데이터는 상기 흐름 ID를 포함함 -; 그리고
    상기 프로세서 및 상기 송수신기는 상기 흐름 ID에 기초하여 상기 내부 QUIC 패킷화된 데이터를 상기 목적지 엔드포인트를 향해 포워딩하도록 구성되는, 네트워크 노드.
  16. 제15항에 있어서, 상기 프로세서 및 상기 송수신기는 상기 클라이언트 엔드포인트로부터, 다른 목적지 엔드포인트와의 다른 QUIC 접속을 확립하라는 요청을 수신하도록 구성되고, 상기 다른 QUIC 접속을 확립하라는 요청은 다른 흐름 ID를 포함하는, 네트워크 노드.
  17. 제15항에 있어서, 상기 프로세서 및 상기 송수신기는 상기 클라이언트 엔드포인트로부터, 외부 QUIC 패킷화된 데이터 내의 내부 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 요청을 수신하도록 구성되는, 네트워크 노드.
  18. 제17항에 있어서, 상기 프로세서 및 상기 송수신기는 상기 클라이언트 엔드포인트로, 외부 QUIC 패킷화된 데이터 내의 내부 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 상기 요청에 대한 응답을 전송하도록 구성되는, 네트워크 노드.
  19. 제17항에 있어서, 상기 프로세서 및 상기 송수신기는 상기 클라이언트 엔드포인트로부터, QUIC 패킷화된 데이터에서 QUIC 패킷화된 데이터의 캡슐화를 중단하라는 상기 요청에 대한 상기 응답이 수락된다는 조건에서, 상기 목적지 엔드포인트를 향해 포워딩하기 위한 내부 QUIC 패킷화된 데이터를 포함하는 UDP 데이터그램을 수신하도록 구성되는, 네트워크 노드.
  20. 제15항에 있어서, 상기 목적지 엔드포인트와의 QUIC 접속을 확립하라는 요청은 상기 외부 QUIC 패킷화된 데이터에 캡슐화되는, 클라이언트 엔드포인트.
KR1020227031675A 2020-02-14 2021-02-16 Quic와의 다중 호스트 다중경로 보안 전송을 가능하게 하기 위한 방법들 및 장치들 KR20220139389A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062976753P 2020-02-14 2020-02-14
US62/976,753 2020-02-14
PCT/US2021/018185 WO2021163684A1 (en) 2020-02-14 2021-02-16 Methods and apparatuses for enabling multi-host multipath secure transport with quic

Publications (1)

Publication Number Publication Date
KR20220139389A true KR20220139389A (ko) 2022-10-14

Family

ID=74867644

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227031675A KR20220139389A (ko) 2020-02-14 2021-02-16 Quic와의 다중 호스트 다중경로 보안 전송을 가능하게 하기 위한 방법들 및 장치들

Country Status (4)

Country Link
EP (1) EP4104416A1 (ko)
KR (1) KR20220139389A (ko)
CN (1) CN115244897A (ko)
WO (1) WO2021163684A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11924299B2 (en) 2021-09-15 2024-03-05 Cisco Technology, Inc. QUIC and anycast proxy resiliency
CN114143386A (zh) * 2021-11-23 2022-03-04 广州三七极创网络科技有限公司 一种基于quic协议的通信方法、系统、设备及存储介质
CN114244619B (zh) * 2021-12-23 2022-11-15 北京天融信网络安全技术有限公司 一种通信方法、装置、系统、电子设备及可读存储介质
US11870699B1 (en) 2022-06-27 2024-01-09 Ottopia Technologies Ltd. Techniques for multi-channel network congestion control

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109218186B (zh) * 2017-07-05 2021-02-23 华为技术有限公司 一种多路径数据传输处理方法及网络设备

Also Published As

Publication number Publication date
EP4104416A1 (en) 2022-12-21
WO2021163684A1 (en) 2021-08-19
CN115244897A (zh) 2022-10-25
US20230074838A1 (en) 2023-03-09

Similar Documents

Publication Publication Date Title
US20210058329A1 (en) Application mobility based on enhanced mptcp
WO2021092441A1 (en) Address change notification associated with edge computing networks
EP3818738A1 (en) Methods and procedures for the dynamic mac address distribution in ieee 802.11 networks
KR20220139389A (ko) Quic와의 다중 호스트 다중경로 보안 전송을 가능하게 하기 위한 방법들 및 장치들
JP7347507B2 (ja) 非公開ネットワーク通信の有効化
US20210266254A1 (en) Device to device forwarding
US11792154B2 (en) Multicast and unicast medium access control (MAC) address assignment protocol (MUMAAP)
US20220377524A1 (en) Methods and apparatus for direct discovery and communication using a wtru to wtru relay
KR20210127142A (ko) Pc5 인터페이스를 통한 v2x 유니캐스트 통신 활성화 절차
US20230061284A1 (en) Security and privacy support for direct wireless communications
US20210211510A1 (en) Pinning service function chains to context-specific service instances
EP4275286A1 (en) Change of pc5 link identifiers between the wtru and the layer-2 wtru to wtru relay
EP4140158A1 (en) Multi rat d2d, extending d2d to include 3gpp and other non-3gpp rat / devices
EP4360344A1 (en) Discovery of internet of things network
US11736905B2 (en) Methods and apparatus for Layer-2 forwarding of multicast packets
US11985062B2 (en) Methods and apparatuses for enabling multi-host multipath secure transport with QUIC
US11765255B2 (en) Transport protocol for communication between edge termination points
WO2023059888A1 (en) Multicast-broadcast traffic delivery for distributed terminals
WO2023219828A1 (en) Switching a service from a wtru to a pin and a pin to a wtru
WO2019140385A1 (en) Method and architectures for handling transport layer security sessions between edge protocol points
WO2024035879A1 (en) Service continuity associated with inter pine communication changes from direct mode to using intermediate pegc
WO2023215575A1 (en) Enabling xr service proxies
WO2022006125A1 (en) Methods and devices for handling virtual domains

Legal Events

Date Code Title Description
A201 Request for examination