KR20170103921A - 데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말 - Google Patents
데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말 Download PDFInfo
- Publication number
- KR20170103921A KR20170103921A KR1020177022309A KR20177022309A KR20170103921A KR 20170103921 A KR20170103921 A KR 20170103921A KR 1020177022309 A KR1020177022309 A KR 1020177022309A KR 20177022309 A KR20177022309 A KR 20177022309A KR 20170103921 A KR20170103921 A KR 20170103921A
- Authority
- KR
- South Korea
- Prior art keywords
- user terminal
- network
- congestion control
- control algorithm
- access mode
- Prior art date
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 152
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004891 communication Methods 0.000 claims description 21
- 230000004048 modification Effects 0.000 claims description 5
- 238000012986 modification Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 8
- 230000001360 synchronised effect Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000012937 correction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000002715 modification method Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000010626 work up procedure Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/19—Flow control; Congestion control at layers above the network layer
- H04L47/193—Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2475—Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 별명은 데이터 전송 방법을 제공하고, 이러한 데이터 전송 방법은, 혼잡 제어 알고리즘 결정 정보를 결정하는 단계; 혼잡 제어 알고리즘 결정 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하는 단계; 및 혼잡 제어 알고리즘을 사용하여 사용자 단말과 데이터 전송을 수행하는 단계를 포함한다. 본 발명의 실시예는 네트워크 서버, 사용자 단말, 및 시스템을 더 포함한다. 본 발명의 실시예에서, 대응하는 혼잡 제어 알고리즘은 사용자 단말의, 액세스 타입, 및 네트워크 액세스 모드에 따라 결정될 수 있어, TCP 전송 효율이 개선된다.
Description
본 출원은 "데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말"이라는 명칭으로 2015년 1월 12일에 중국 특허청에 출원된 중국 특허 출원 번호 201510014307.1의 우선권을 주장하며, 그 전체로서 본 출원에 통합된다.
본 발명은 통신 분야에 관한 것으로, 더욱 상세하게는, 데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말에 관한 것이다.
전송 제어 프로토콜(TCP, Transport Control Protocol)은 현재 가장 많이 사용되는 네트워크 전송 프로토콜이며, 신뢰할 수 있는 엔드-투-엔드(end-to-end) 데이터 전송을 제공한다. 전송되는 정보의 양이 증가하고 복잡한 네트워크 구성이 증가함에 따라 네트워크 혼잡의 가능성이 증가하고 있다. 네트워크 혼잡을 피하기 위해 일련의 TCP 관련 혼잡 제어 알고리즘이 이미 제시되어 있다. TCP 혼잡 제어 알고리즘은 일반적으로 혼잡 회피 및 혼잡 제어를 구현하는 데 사용된다. 혼잡 방지는 네트워크 혼잡 상태를 피하기 위한 예방 메커니즘이므로 네트워크는 처리량이 많고 지연이 적은 상태로 실행된다. 혼잡 제어는 네트워크를 혼잡 상태에서 복구하기 위한 복구 메커니즘이다.
기존의 기술적 해결 수단에서, 네트워크 서버와 사용자 단말 간의 혼잡 제어 알고리즘은 네트워크 서버에 의해 항상 무작위로 선택된다. 이 경우에, 네트워크 서버에 의해 선택된 혼잡 제어 알고리즘은 사용자 단말에 적용할 수 없을 수 있다. 따라서, TCP 전송 효율은 감소한다.
본 발명의 실시예는 따른 데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말을 제공하여, 사용자 단말의, 액세스 유형 및 네트워크 액세스 모드에 따라 대응한는 혼잡 제어 알고리즘을 선택할 수 있으며, TCP 전송 효율이 향상된다.
이러한 관점에서, 본 발명의 제1 측면은, 데이터 전송 방법을 제공하고, 이러한 데이터 전송 방법은, 혼잡 제어 알고리즘(congestion control algorithm) 결정 정보를 획득하는 단계; 상기 혼잡 제어 알고리즘 결정 정보에 따라, 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하는 단계; 및 상기 혼잡 제어 알고리즘을 이용하여 상기 사용자 단말과 데이터 전송을 수행하는 단계를 포함한다.
본 발명의 제1 측면을 참조하면, 가능한 제1 구현 방식에서, 상기 혼잡 제어 알고리즘 결정 정보가, 상기 사용자 단말의 네트워크 어댑터 타입(network adapter type), 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 하나를 포함하는 경우, 상기 혼잡 제어 알고리즘 결정 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하는 단계는, 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 단계를 포함한다.
본 발명의 실시예에서 제1 측면의 가능한 제1 구현 방식을 참조하면, 가능한 제2 구현 빙삭에서, 상기 혼잡 제어 알고리즘 결정 정보가 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘의 타입을 더 포함하는 경우, 상기 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 단계는, 상기 사용자 단말에 의해 결정된 상기 혼잡 제어 알고리즘이 지원되는지 결정하는 단계; 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는 경우, 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 단계; 및 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되지 않는 경우, 상기 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 상기 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 단계를 포함한다.
제1 측면, 제1 측면의 가능한 제1 또는 제2 구현 방식을 참조하면, 가능한 제3 구현 빙삭에서, 상기 혼잡 제어 알고리즘을 사용하여 상기 사용자 단말과 데이터 전송을 하는 동안, 상기 데이터 전송 방법은, 상기 사용자 단말과 서버 사이의 통신 경로에서 제2 네트워크 상태 정보를 획득하는 단계; 상기 제2 네트워크 상태 정보에 따라, API(application programming interface)를 호출하는 단계 - 상기 API는 TCP(Transmission Control Protocol) 파라미터를 수정하는 데 사용됨 -; 및 상기 API를 사용하여 상기 TCP 파라미터를 수정하는 단계를 더 포함한다.
제2 측면을 참조하면, 본 발명은 데이터 전송 방법을 제공하고, 이러한 데이터 전송 방법은, 기존 API 또는 신규 생성된 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나를 획득하는 단계; 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나를 네트워크 서버에 송신하여, 상기 네트워크 서버가 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 서비스 요구사항 중 적어도 하나에 따라 혼잡 제어 알고리즘을 결정하는 단계; 및 상기 혼잡 제어 알고리즘을 사용하여 상기 네트워크 서버와 데이터 전송을 수행하는 단계를 포함한다.
본 발명의 실시예에서 제2 측면을 참조하면, 가능한 제1 구현 방식에서, 상기 기존 API 또는 신규 생성된 API를 사용하여, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나를 획득한 후, 상기 데이터 전송 방법은, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나에 따라, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나에 대응하는 혼잡 제어 알고리즘을 결정하는 단계를 더 포함하고, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나를 네트워크 서버에 송신하는 것은, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나, 및 상기 대응하는 혼잡 제어 알고리즘을 상기 네트워크 서버에 송신하는 단계를 포함한다.
본 발명의 제3 측면은 네트워크 서버를 제공하고, 이러한 네트워크 서버는, 혼잡 제어 알고리즘 결정 정보를 획득하도록 구성된 제1 획득 모듈; 상기 혼잡 제어 알고리즘 결정 정보에 따라, 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하도록 구성된 제1 결정 모듈; 및 상기 혼잡 제어 알고리즘을 사용하여 상기 사용자 단말과 데이터 전송을 수행하도록 구성된 제1 전송 모듈을 포함한다.
본 발명의 실시예에서 제3 측면을 참조하면, 가능한 제1 구현 방식에서, 상기 제1 결정 모듈은 구체적으로, 상기 혼잡 제어 알고리즘 결정 정보가, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 하나를 포함하는 경우, 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된다.
본 발명의 실시예에서 제3 측면의 가능한 제1 구현 방식을 참조하면, 가능한 제2 구현 방식에서, 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는지 결정하도록 구성된 판단 유닛; 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는 경우, 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된 제1 결정 유닛; 및 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되지 않는 경우, 상기 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된 제2 결정 유닛을 포함한다.
본 발명의 실시예에서 제3 측면의 가능한 제2 구현 방식을 참조하면, 가능한 제3 구현 방식에서, 상기 네트워크 서버는 상기 사용자 단말과 상기 서버 사이의 통신 경로에서 제2 네트워크 상태 정보를 획득하도록 구성된 제2 획득 모듈; 상기 제2 네트워크 상태 정보에 따라 API를 호출하도록 구성된 호출 모듈 - 상기 API는 TCP 파라미터를 수정하는 데 사용됨 -; 및 상기 API를 사용하여 상기 TCP 파라미터를 수정하도록 구성된 수정 모듈을 더 포함한다.
본 발명의 제4 측면은 사용자 단말을 제공하고, 이러한 사용자 단말은, 기존 API 또는 신규 생성된 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 어느 하나를 획득하도록 구성된 제3 획득 모듈; 네트워크 서버가 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 서비스 요구사항 중 적어도 하나에 따라 혼잡 제어 알고리즘을 결정할 수 있도록, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나를 상기 네트워크 서버에 송신하도록 구성된 제1 송신 모듈; 및 상기 혼잡 제어 알고리즘을 사용하여 상기 네트워크 서버와 데이터 전송을 수행하도록 구성된 제2 전송 모듈을 포함한다.
본 발명의 실시예에서 제4 측면을 참조하면, 가능한 제1 실시예에서, 상기 사용자 단말은, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나에 따라, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나에 대응하는 혼잡 제어 알고리즘을 결정하도록 구성된 제2 결정 모듈을 더 포함하고, 상기 제1 송신 모듈은, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나, 및 상기 대응하는 혼잡 제어 알고리즘을 상기 네트워크 서버에 송신하도록 구성된 송신 유닛을 포함한다.
본 발명의 제5 측면은 데이터 전송 시스템을 제공하고, 이러한 데이터 전송 시스템은 네트워크 서버 및 사용자 단말을 포함하고, 상기 네트워크 서버는 제7항 내지 제10항 중 어느 한 항에 기재된 네트워크 서버이고, 상기 사용자 단말은 제11항 또는 제12항에 기재된 사용자 단말이다.
전술한 기술적 해결 수단으로부터 본 발명의 실시예는 다음과 같은 이점을 갖는다.
본 발명의 실시예에서, 네트워크 서버는 사용자 단말에 의해 송신된 정보를 획득하고, 네트워크 서버에 의해 지원되는 혼잡 제어 알고리즘을 참조하여, 최종적으로 사용될 혼잡 제어 알고리즘을 선택한다. 네트워크 서버는 혼잡 제어 알고리즘을 사용하여 TCP 전송을 수행한다. 네트워크 서버는 서로 다른 수신 정보에 따라 서로 다른 혼잡 제어 알고리즘을 선택하고, 특정 단말 타입 및 네트워크 액세스 모드에 따라 TCP 전송을 수행하여, TCP 전송 효율을 향상시킨다.
도 1은 본 발명의 실시예에 따른 데이터 전송 방법의 일 실시예의 개략도이다.
도 2는 본 발명의 실시예에 따른 데이터 전송 방법의 다른 실시예의 개략도이다.
도 3은 본 발명의 실시예에 따른 네트워크 서버의 일 실시예의 개략도이다.
도 4는 본 발명의 실시예에 따른 네트워크 서버의 다른 실시예의 개략도이다.
도 5는 본 발명의 실시예에 따른 네트워크 서버의 또 다른 실시예의 개략도이다.
도 6은 본 발명의 실시예에 따른 사용자 단말의 실시예의 개략도이다.
도 7은 본 발명의 실시예에 따른 사용자 단말의 다른 실시예의 개략도이다.
도 8은 본 발명의 일 실시예에 따른 네트워크 서버의 개략적 구조도이다.
도 9는 본 발명의 일 실시예에 따른 사용자 단말의 개략적 구조도이다.
도 10은 본 발명의 실시예에 따른 데이터 전송 시스템의 일 실시예의 개략도이다.
도 2는 본 발명의 실시예에 따른 데이터 전송 방법의 다른 실시예의 개략도이다.
도 3은 본 발명의 실시예에 따른 네트워크 서버의 일 실시예의 개략도이다.
도 4는 본 발명의 실시예에 따른 네트워크 서버의 다른 실시예의 개략도이다.
도 5는 본 발명의 실시예에 따른 네트워크 서버의 또 다른 실시예의 개략도이다.
도 6은 본 발명의 실시예에 따른 사용자 단말의 실시예의 개략도이다.
도 7은 본 발명의 실시예에 따른 사용자 단말의 다른 실시예의 개략도이다.
도 8은 본 발명의 일 실시예에 따른 네트워크 서버의 개략적 구조도이다.
도 9는 본 발명의 일 실시예에 따른 사용자 단말의 개략적 구조도이다.
도 10은 본 발명의 실시예에 따른 데이터 전송 시스템의 일 실시예의 개략도이다.
본 발명은 TCP 전송 효율을 향상시키기 위해, 구체적 단말 타입 및 네트워크 액세스 모드에 따라 TCP 전송에 사용되는 데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말을 제공한다.
도 1을 참조하면, 도 1은 본 발명의 실시예에 따른 데이터 전송 방법의 일 실시예는 이하의 단계를 포함한다.
101. 혼잡 제어 알고리즘 결정 정보를 획득한다.
본 실시예에서, 네트워크 서버는 혼잡 제어 알고리즘 결정 정보를 획득한다.
대체로, 네트워크 자원 요청이 사용 가능한 자원보다 많을 경우, 네트워크 성능은 나빠진다. 즉, 혼잡이 발생한다. 혼잡 제어 알고리즘은 혼잡을 피하거나 줄일 수 있다.
102. 네트워크 특성 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정한다.
본 실시예에서, 혼잡 제어 알고리즘 결정 정보를 수신한 다음, 네트워크 서버는 혼잡 제어 알고리즘 결정 정보에 따라, 사용자 단말과 데이터 전송에서 사용되는 구체적 혼잡 제어 알고리즘을 결정한다.
103. 혼잡 제어 알고리즘을 사용하여 사용자 단말과 데이터 전송을 수행한다.
본 실시예에서, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘이 결정된 후, 혼잡 제어 알고리즘은 사용자 단말과 데이터 전송을 수행하는 데 사용될 수 있다.
본 실시예에서 데이터 전송 프로토콜로서 TCP가 사용되는 것을 알 수 있다. 실제 응용에서, 인터넷 프로토콜(IP, Internet Protocol) 또는 다른 데이터 전송 프로토콜이 데이터 전송 프로토콜로서 사용될 수 있다. 여기에 제한되지 않는다.
본 발명의 본 실시예에서, 네트워크 서버는 사용자 단말에 의해 송신된 정보를 획득하고, 네트워크 서버에 의해 지원되는 혼잡 제어 알고리즘을 참조하여, 최종적으로 사용될 혼잡 제어 알고리즘을 선택한다. 네트워크 서버는 혼잡 제어 알고리즘을 사용하여 TCP 전송을 수행한다. 네트워크 서버는 혼잡 제어 알고리즘을 사용하여 TCP 전송을 수행한다. 네트워크 서버는 서로 다른 수신 정보에 따라 서로 다른 혼잡 제어 알고리즘을 선택하고, 특정 단말 타입 및 네트워크 액세스 모드에 따라 TCP 전송을 수행하여, TCP 전송 효율을 향상시킨다.
전술한 실시예에서, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘은 다양한 방식으로 결정될 수 있다. 이해를 돕기 위해, 이하에서 개별적으로 설명한다.
1. 네트워크 서버는, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정한다.
선택적으로, 도 1에 대응하는 실시예에 따르면, 본 발명의 본 실시예에서 제공하는 데이터 전송 방법의 제1 선택적 실시예에서, 혼잡 제어 알고리즘 결정 정보가, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보, 혼잡 제어 알고리즘 결정 정보 중 적어도 하나를 포함하는 경우, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하는 것은 이하:
혼잡 제어 알고리즘과, 네트워크 어댑터 타입, 네트워크 액세스 모드, 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 것을 포함한다.
본 실시예에서, 사용자 단말은, OPENTCP 프로토콜의 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 및 사용자 단말의 사용자 서비스 요구사항을 획득하고, TCP 또는 IP 연결 구축(connection establishment) 중에 사용되는 핸드 셰이크 신호(SYN, Synchronous) 패킷(handshake signal(SYN, Synchronous) packet)의 옵션 사용하여, 네트워크 서버 측에 네트워크 어댑터 타입, 네트워크 액세스 모드, 및 사용자 서비스 요구사항을 포함하는 정보를 송신한다. 네트워크 측 서버는, 사용자 단말의, 네트워크 어댑터 타입, 네트워크 액세스 모드, 및 사용자 서비스 요구사항을 획득하기 위해, SYN 패킷에서의 옵션 신호를 파싱(parse)한다.
또한, 사용자 단말은 사용자 단말과 서버 사이의 통신 경로에서 제2 네트워크 상태 정보를 더 획득할 수 있다. 제2 네트워크 상태 정보는 사용자 단말과 서버 간의 통신 경로 상의 패킷 손실률 일 수 있고, 대역폭 또는 지연 파라미터와 같은 다른 네트워크 상태 정보 일 수 있다. 여기에 제한되지 않는다.
사용자 단말은, SYN 패킷의 옵션을 사용하여 네트워크 특성 정보를 네트워크에 송신하는 것에 추가로, 다양한 방식으로 네트워크 특성 정보를 네트워크 서버로 송신할 수 있다.
본 실시예에서, 사용자 단말과 서버 사이의 통신 경로에서, 네트워크 어댑터 타입, 네트워크 액세스 모드, 사용자 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 하나를 수신한 다음, 네트워크 서버는 이러한 정보 중 적어도 하나 이상에 대응하는 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정할 수 있다.
네트워크 서버가 수신한 혼잡 제어 알고리즘 및 이러한 정보: 사용자 단말과 서버 사이의 통신 경로에서, 네트워크 어댑터 타입, 네트워크 액세스 모드, 사용자 서비스 요구사항, 또는 제1 네트워크 상태 정보 각각은 일대일(one-to-one) 또는 일대다(one-to-more) 대응관계일 수 있다. 예를 들어, 획득된 네트워크 어댑터 타입이 USB(Universal Serial Bus) 네트워크 어댑터인 경우, 대응하는 혼잡 제어 알고리즘 A가 사용될 수 있거나, 또는 구체적 네트워크 상태에 따라, 사용을 위해 2개의 대응하는 혼잡 제어 알고리즘 A 및 B에서 바람직하게 혼잡 제어알고리즘이 선택될 수 있다. 이러한 대응 관계는 여기에 한정되지 않는다.
또한, 본 실시예에서 네트워크 서버는, 네트워크 어댑터 타입, 네트워크 액세스 모드, 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 선택할 수 있다. 이런 방식으로, 최적 혼잡 제어 알고리즘은, 실제 애플리케이션 및 동적 네트워크에 따라 유연하게 선택되어 네트워크 혼잡 문제를 해결할 수 있으므로, 보다 유연하고 실용적인 해결 수단이된다.
2. 네트워크 서버는, 사용자 단말에 의해 결정된 혼잡 제어 알고리즘의 타입, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 선택한다.
선택적으로, 도 1에 대응하는 실시예에 따르면, 본 발명의 본 실시예에서 제공하는 데이터 전송 방법의 제2 선택적 실시예에서, 혼잡 제어 알고리즘 결정 정보가 사용자 단말에 의해 결정된 혼잡 제어 알고리즘의 타입을 더 포함하는 경우, 혼잡 제어 알고리즘과, 네트워크 어댑터 타입, 네트워크 액세스 모드, 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 것은, 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는지 결정하는 것을 포함하고,
사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는 경우, 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 것, 및
사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되지 않는 경우, 네트워크 어댑터 타입, 네트워크 액세스 모드, 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 것을 포함한다.
본 실시예에서, SYN 패킷 내의 옵션 정보를 수신하고 파싱한 다음, 네트워크 서버는 네트워크 어댑터 타입, 네트워크 액세스 모드, 사용자 단말의 사용자 서비스 요구사항, 및 사용자 단말에 의해 결정된 혼잡 제어 알고리즘의 타입을 획득하고, OPENTCP 프로토콜의 API를 사용하여, 네트워크 서버가 사용자 단말에 의해 선택된 혼잡 제어 알고리즘을 지원하는지 질의(query)한다. 질의하여, 네트워크 서버가 사용자 단말에 의해 선택된 혼잡 제어 알고리즘을 지원하는 것으로 결정된 경우, 사용자 단말에 의해 결정된 혼잡 제어 알고리즘은 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘으로서 결정된다. 하지만, 질의하여, 네트워크 서버가 사용자 단말에 의해 선택된 혼잡 제어 알고리즘을 지원하지 않는 것으로 습득된 경우, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 사용자 서비스 요구사항, 또는 사용자 단말과 서버 사이의 통신 경로에서의 제1 네트워크 상태 정보 중 어느 하나에 따라, 대응하는 혼잡 알고리즘이 선택된다.
혼잡 제어 알고리즘은, 슬로우 스타트 알고리즘(slow start algorithm), 혼잡 회피 알고리즘(congestion avoidance algorithm), 고속 재전송 알고리즘(congestion avoidance algorithm), 및 고속 복구 알고리즘(fast recovery algorithm)의 4가지 유형으로 분류될 수 있다. 슬로우 스타트 알고리즘은 전송이 시작될 때의 값(value)으로 점진적으로 송신 데이터를 증가시키는 것을 의미한다. 즉, 송신 윈도(send window)는 혼잡 윈도 값에 대해 기하급수적으로 증가한다. 혼잡 회피 알고리즘이란, 혼잡 윈도 값이 기하급수적으로 증가할 수 없는 경우, 매회 1씩 혼잡 윈도가 선형으로 증가하므로, 과도하게 빠른 성장으로 인한 네트워크 혼잡을 피할 수 있고, 혼잡 윈도 값은 네트워크에 대해 최적의 값으로 천천히 조정된다. 빠른 재전송 알고리즘은, 데이터 전송 중에 데이터가 여러 패킷으로 분할되고 각 패킷이 시퀀스 번호를 포함한다는 것을 의미한다. 수신자(recipient)가 순서가 잘못된 패킷 세그먼트(out-of-sequence packet segment)를 받으면 즉시 중복 확인 메시지가 송신된다. 송신자(sender)가 세 개의 중복 된 승인 정보를 연속적으로 수신하는 한, 송신자는 제시간에 받지 못한 패킷 세그먼트를 다시 보낼 수 있다. 빠른 복구 알고리즘은 빠른 재전송 알고리즘과 협력하는 알고리즘이다. 송신자가 3개의 중복 확인 정보를 연속 수신할 때, 매회 전송되는 데이터의 양이 절반으로 줄어들며, 정체 윈도는 또한 그 값으로 수정된다. 그 다음, 혼잡 회피 알고리즘이 실행되어 혼잡 윈도가 천천히 및 선형으로 증가할 수 있게 한다.
전술한 4개의 알고리즘은 기본 혼잡 알고리즘이다. 본 실시예에서 사용되는 혼잡 제어 알고리즘은 이러한 4가지 유형 중 하나 이상일 수 있으나, 이에 제한되지 않는다.
또한, 본 실시예는, 네트워크 서버가 사용자 단말이 선택한 혼잡 제어 알고리즘을 지원하는지 판단하여 최종 알고리즘을 결정하는 방법을 제공하여, 솔루션의 조작성 및 유연성을 향상시키는 방법을 제공한다.
선택적으로, 도 1에 대응하는 실시예, 제1 선택적 실시예, 및 제2 선택적 실시예 중 어느 하나를 기초로 하여, 본 발명의 실시예에서 제공되는 데이터 전송 방법의 제3 선택적 실시예에서, 사용자 단말과 데이터 전송을 하는 동안, 혼잡 제어 알고리즘을 사용하여, 이러한 방법은 이하:
사용자 단말과 서버 사이의 통신 경로에서 제2 네트워크 상태 정보를 획득하는 것;
제2 네트워크 상태 정보에 따라, API(application programming interface)를 호출하는 것; 및
API를 사용하여 TCP 파라미터를 수정하는 것을 더 포함하고, API는 TCP 파라미터를 수정하는 데 사용된다.
본 실시예에서, 네트워크 서버는 네트워크 관리 시스템 또는 SDN(Software Defined Network) 제어기를 사용하여, 사용자 단말과 서버 간의 통신 경로에서의 중간 네트워크 노드 정보(intermediate network node information)를 획득한다. 네트워크 관리 시스템은 네트워크 메니지먼트 시스템이라고도 하며, 하드웨어와 소프트웨어를 결합한 분산 네트워크 응용 프로그램 시스템이며, 소프트웨어가 주요 구성 요소이다. 네트워크 관리 시스템의 목적은 네트워크를 관리하고 네트워크가 효율적이고 정상적으로 작동할 수 있게 하는 것이다. 네트워크 관리 개체에는 대체로 라우터, 스위치 및 다중 포트 전달자가 포함된다.
네트워크 서버는, 사용자 단말과 네트워크 서버 간의 통신 경로에 관한 중간 네트워크 노드 정보를 이용하여, 네트워크 노드의 출구에서 패킷 손실률(packet loss rate)을 구할 수 있고, 패킷 손실률에 따라 대응하는 혼잡 제어 알고리즘을 결정하거나, 또는 대역폭이나 지연과 같은 다른 네트워크 상태 정보에 따라, 혼잡 제어 알고리즘을 결정할 수 있다. 여기에 제한되지 않습니다.
본 실시예에서, 네트워크 서버는 API를 호출하여 사용자 단말과 네트워크 서버 사이의 통신 경로에서의 패킷 손실률 또는 다른 네트워크 상태 정보에 따라 TCP 파라미터를 수정한다. 하나의 수정 방식으로, API 함수에서 구체적으로 구현되지 않은 파라미터에 대해, 파라미터는 기존 포맷에 따라 확장될 수 있다; 따라서 TCP 파라미터가 동적으로 조정된다. TCP 파라미터는 대체로 혼잡 윈도, 수신 캐시 영역 크기, 및 송신 캐시 영역 크기를 포함한다. 사용자는 API를 사용하여 네트워크 상태 변경에 따라 이러한 파라미터를 수정한다.
본 실시예에서, TCP 파라미터는, 기존 API 또는 신규 생성된 API를 사용하여 변경된다는 점에 유의해야 한다. 실제 애플리케이션에서, TCP 파라미터는 일반 소켓 프로그래밍 인터페이스(general socket programming interface)를 사용하거나 TCP 흐름을 기반으로 하는 다른 TCP 파라미터 수정 방식을 사용하여 수정할 수 있다.
또한, 본 실시예에서 네트워크 서버는 네트워크 상태 정보를 획득하고, API를 이용하여 정보에 따라 TCP 파라미터를 변경함으로써, 네트워크 상태 정보에 따라 네트워크 조정 정책이 결정될 수 있으며, API를 사용하여 TCP 파라미터를 동적으로 조정할 수 있다. 이러한 방식으로, TCP 전송 효율이 개선되고, 솔루션이 보다 광범위하게 사용될 수 있으며, 유연성이 더욱 개선된다.
본 발명의 데이터 전송은 전술한 실시예에서 네트워크 서버의 관점에서 설명된다. 다음은 본 발명의 데이터 처리 방법을 사용자 단말의 관점에서 설명한다. 도 2를 참조하면, 본 발명의 데이터 전송 방법의 다른 실시예는 다음과 같은 단계를 포함한다.
201. 기존 API 또는 신규 생성된 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 어느 하나를 획득한다.
본 실시예에서, 사용자 단말은, 신규 생성된 OPENTCP API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자의 일부 사용자 요구사항을 획득하거나, 또는 기존 API를 사용하여, 기존 API를 사용하여 획득할 수 없는 일부 사용자 요구사항을 획득할 수 있다. OPENTCP API는 기존 API의 확장으로서 사용될 수 있고, 사용자 단말은 전술한 3가지 유형의 정보 중 적어도 어느 하나를 획득해야 한다.
202. 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나를 네트워크 서버에 송신하여, 네트워크 서버는 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 서비스 요구사항 중 적어도 하나에 따라 혼잡 제어 알고리즘을 결정한다.
본 실시예에서, 사용자 단말은, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말에 의해 획득된 사용자 서비스 요구사항을 네트워크 서버에 송신하여, 네트워크 서버는 이러한 정보 중 어느 하나에 따라 혼잡 제어 알고리즘을 결정한다.
ADSL(Asymmetric Digital Subscriber Line) 네트워크 액세스 모드, 케이블 모뎀 네트워크 액세스 모드, OAN(Optical Access Network) 모드와 같은 많은 공통 네트워크 액세스 모드가 있다. ADSL 네트워크 액세스 모드는 뛰어난 기밀성과 높은 보안을 보장한다. 케이블 모뎀 네트워크 액세스 모드는 고속 및 높은 안정성을 갖춘 이더넷 액세스 모드이다. OAN 네트워크 액세스 모드는 드롭 케이블(drop cable)을 변환하는 것만으로 고속 광대역 네트워크를 제공할 수 있으며, 이는 편리하고 신속하다.
203. 혼잡 제어 알고리즘을 사용하여 네트워크 서버와 데이터 전송을 수행한다.
본 실시예에서, 사용자 단말은, 네트워크 서버에 의해 결정된 혼잡 제어 알고리즘에 따라, 네트워크 서버와 데이터 전송을 수행한다.
본 발명의 본 실시예에서, 사용자 단말은, 신규 생성된 API 또는 기존 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 사용자 서비스 요구사항을 획득하고, 정보를 네트워크 서버에 송신하여, 네트워크 서버는 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정한다. 네트워크 서버는 사용자 단말의 상이한 네트워크 특성 정보에 따라 상이한 혼잡 제어 알고리즘을 선택하고, 구체적 네트워크 타입, 구체적 네트워크 액세스 모드, 또는 구체적 사용자 서비스 요구사항에 따라 TCP 전송을 수행하여, TCP 전송 효율이 개선된다.
선택적으로, 도 2에 대응하는 실시예를 기초로 하여, 본 발명의 실시예에서 제공되는 데이터 전송 방법의 제1 선택적 실시예에서, 기존 API 또는 신규 생성된 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 어느 하나를 획득한 다음, 본 방법은 이하의 단계:
네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나에 따라, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나에 대응하는 혼잡 제어 알고리즘을 결정하는 단계; 및
네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나, 및 대응하는 혼잡 제어 알고리즘을 네트워크 서버에 송신하는 단계를 더 포함한다.
본 실시예에서, 기존 API는 혼잡 제어 알고리즘 및 시스템에 의해 지원되는 사용자 서비스 요구사항을 획득하는데 사용될 수 있고, 신규 생성된 OPENTCP API는 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 및 기존 API를 사용하여 획득될 수 없는 일부 사용자 서비스 요구사항을 획득하기 위해 사용될 수 있다. 다음으로, 시스템에 의해 지원되는 혼잡 제어 알고리즘이 네트워크 서버로 송신된다. 네트워크 서버는, 네트워크 서버에 의해 지원되는 혼잡 제어 알고리즘을 참조하여, 사용자 단말에 의해 송신된 혼잡 제어 알고리즘이 지원되는지 결정한다. 사용자 단말에 의해 송신된 혼잡 제어 알고리즘이 지원되는 경우, 혼잡 제어 알고리즘은 데이터 전송을 수행하는 데 직접 사용될 수 있다. 그러나 사용자 단말에 의해 송신된 혼잡 제어 알고리즘이 지원되지 않는 경우, 네트워크 서버는 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말에 의해 송신된 사용자 서비스 요구사항 중 적어도 어느 하나에 따라, 최적 혼잡 제어 알고리즘을 재선택하고, 재선택한 혼잡 제어 알고리즘을 데이터 전송에 사용되는 최종 혼잡 제어 알고리즘으로 결정한다.
또한, 본 발명의 본 실시예에서 사용자 단말은 네트워크 어댑터 타입, 네트워크 액세스 모드, 및 사용자 서비스 요구사항에 따라, 네트워크 어댑터 타입 및 사용자 단말의 네트워크 액세스 모드에 대응하는 혼잡 제어 알고리즘을 결정한다. 네트워크 서버가 혼잡 제어 알고리즘을 지원하는 경우, 혼잡 제어 알고리즘은 최적 선택이고, 그렇지 않으면, 네트워크 서버는 제2 최적 혼잡 제어 알고리즘을 선택하여 데이터 전송을 수행한다. 솔루션의 타당성이 개선되고 실제 적용 효과가 더 좋으며 TCP 전송 효율성이 향상된다.
이해의 편의를 위해, 이해의 편의를 위해, 이하에서 특정 애플리케이션 시나리오를 사용하여본 발명의 네트워크 처리 방법을 구체적으로 설명한다.
OPENTCP 프로토콜의 API를 사용하여 사용자 단말에 의해 획득된 사용자 단말의 네트워크 어댑터 타입은 이더넷 어댑터(Ethernet adapter)이고, 네트워크 액세스 모드는 고정 IP 이다. 사용자 단말은, 이더넷 어댑터의 고정 IP 액세스 모드에 따라 컴파일된 프로그램에서 대응하는 혼잡 제어 알고리즘 A를 선택하고, SYN 패킷의 옵션을 사용하여 네트워크 서버로 정보를 전송한다. 네트워크 서버 측은 SYN 패킷의 옵션 정보를 수신하고 파싱(parse)하여 사용자 단말이 이더넷 어댑터의 고정 IP 액세스 모드를 사용한다는 것을 알게된다.
네트워크 서버는 OPENTCP 프로토콜의 API에 질의하여 네트워크 서버가 혼잡 제어 알고리즘 A를 지원하지 않음을 알게 되고, 네트워크 서버는 OPENTCP 프로토콜의 API에 질의하여 이더넷 어댑터의 고정 IP 액세스 모드가 혼잡 제어 알고리즘 B에 대응한다는 것을 알게 된다. 프로그래머는 OPENTCP 프로토콜의 API를 사용하여 상이한 네트워크 어댑터 유형 및 네트워크 액세스 모드에 대응하는 혼잡 제어 알고리즘을 미리 컴파일한다.
예를 들어, 이더넷 단말이 사용될 때, 네트워크 서버는 사용할 큐빅 혼잡 제어 알고리즘(Cubic congestion control algorithm )을 선택할 수 있다. 3G 또는 4G 네트워크가 사용될 때, 네트워크 서버는 웨스트우드 혼잡 제어 알고리즘(Westwood congestion control algorithm)을 사용할 수 있도록 선택할 수 있다. 이것은 프로그래머가 자발적으로 컴파일하여 결정할 수 있다.
네트워크 서버는 혼잡 제어 알고리즘 B를 선택하고, TCP 3방향 핸드셰이크(TCP three-way handshake)가 완료된 후에 TCP 송신을 수행한다. 전송 중에 네트워크 서버는 현재 네트워크 상태 정보를 얻는다.
네트워크 대역폭이 1MB이고 지연 시간이 100ms이며 네트워크 패킷 손실률이 10.00%이면 이러한 파라미터에 따라 OPENTCP 프로토콜의 API를 호출하여 TCP 파라미터를 동적으로 조정할 수 있다. TCP 파라미터는 초기 혼잡 윈도일 수 있고, 초기 혼잡 윈도의 크기는 1이다. 혼잡 제어 알고리즘 B가 사용될 때, 임계 값은 현재 혼잡 윈도 값의 반이 되고, 혼잡 윈도 사이즈는 1로 리셋된다. 네트워크 서버는 TCP 전송 효율을 보장하기 위해 혼잡 제어 알고리즘 B를 계속 사용한다.
다음은 본 발명의 네트워크 서버를 상세하게 설명한다. 도 3을 참조하면, 본 발명의 일 실시예에 따른 네트워크 서버는 이하:
혼잡 제어 알고리즘 결정 정보를 획득하도록 구성된 제1 획득 모듈(301);
혼잡 제어 알고리즘 결정 정보에 따라 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하도록 구성된 제1 결정 모듈(302); 및
혼잡 제어 알고리즘을 사용하여 사용자 단말과 데이터 전송을 수행하도록 구성된 제1 전송 모듈(302)를 포함한다.
본 실시예에서, 제1 획득 모듈(301)은 혼잡 제어 알고리즘 결정 정보를 획득하고, 제1 결정 모듈(302)은, 제1 획득 모듈(301)에 의해 획득된 혼잡 제어 알고리즘 결정 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하고, 제1 전송 모듈(303)은 제1 결정 모듈(302)에 의해 결정된 혼잡 제어 알고리즘을 사용하여 사용자 단말과 데이터 전송을 수행한다.
본 발명의 본 실시예에서, 네트워크 서버는 사용자 단말에 의해 송신된 정보를 획득하고, 네트워크 서버에 의해 지원되는 혼잡 제어 알고리즘을 참조하여, 최종적으로 사용될 혼잡 제어 알고리즘을 선택한다. 네트워크 서버는 혼잡 제어 알고리즘을 사용하여 TCP 전송을 수행한다. 네트워크 서버는 혼잡 제어 알고리즘을 사용하여 TCP 전송을 수행한다. 네트워크 서버는 서로 다른 수신 정보에 따라 서로 다른 혼잡 제어 알고리즘을 선택하고, 특정 단말 타입 및 네트워크 액세스 모드에 따라 TCP 전송을 수행하여, TCP 전송 효율을 향상시킨다.
실제 애플리케이션에서, 전술한 실시예에서, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘은 다양한 방식으로 결정될 수 있다. 이해의 편의를 위해, 이하에서 개벌적으로 설명한다.
1. 네트워크 서버는 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정한다.
선택적으로, 도 3에 대응하는 실시예를 기초로 하여, 본 발명의 실시예에서 제공하는 네트워크 서버의 제1 선택적 실시예에서, 결정 모듈은 구체적으로, 혼잡 제어 알고리즘 결정 정보가 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나를 포함하는 경우, 혼잡 제어 알고리즘과, 네트워크 어댑터 타입, 네트워크 액세스 모드, 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정한다.
또한, 본 실시예에서, 네트워크 서버는, 네트워크 어댑터 타입, 네트워크 액세스 모드, 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정할 수 있다. 이와 같이, 최적 혼잡 제어 알고리즘은, 실제 애플리케이션 및 동적 네트워크에 따라 유연하게 선택되어 네트워크 혼잡 문제를 해결할 수 있으므로, 보다 유연하고 실용적인 해결 수단이된다.
2. 네트워크 서버는 사용자 단말에 의해 결정된 혼잡 제어 알고리즘의 타입, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정한다.
도 4를 참조하면, 본 발명의 네트워크 서버의 다른 실시예는 이하:
혼잡 제어 알고리즘 결정 정보를 획득하도록 구성된 제1 획득 모듈(401);
혼잡 제어 알고리즘 결정 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하도록 구성된 제1 결정 모듈(402); 및
혼잡 제어 알고리즘을 사용하여 사용자 단말과 데이터 전송을 수행하도록 구성된 제1 전송 모듈(403)을 포함한다.
제1 결정 모듈(402)은,
사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는지 결정하는 판단 유닛(4021);
사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는 경우, 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된 제1 결정 유닛(4022); 및
사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되지 않는 경우, 혼잡 제어 알고리즘과, 네트워크 어댑터 타입, 네트워크 액세스 모드, 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나 사이의 대응 관계에 따라, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된 제2 결정 유닛(4023)을 더 포함한다.
또한, 본 실시예는, 사용자 단말에 의해 선택된 혼잡 제어 알고리즘을 네트워크 서버가 지원하는지 결정하여 최종 혼잡 제어 알고리즘을 결정하는 방법을 제공하여, 솔루션의 조작성 및 유연성을 향상시킨다.
도 5를 참조하면, 본 발명의 네트워크 서버의 다른 실시예는 이하:
혼잡 제어 알고리즘 결정 정보를 획득하도록 구성된 제1 획득 모듈(501);
혼잡 제어 알고리즘 결정 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하도록 구성된 제1 결정 모듈(502);
혼잡 제어 알고리즘을 사용하여 사용자 단말과 데이터 전송을 수행하도록 구성된 제2 획득 모듈(503);
사용자 단말과 서버 사이의 통신 경로에서 제2 네트워크 상태 정보를 획득하도록 구성된 제2 획득 모듈(504);
제2 네트워크 상태 정보에 따라 API를 호출하도록 구성된 호출 모듈(505); 및
API를 사용하여 TCP 파라미터를 수정하도록 구성된 수정 모듈(506)을 포함하고, API는 TCP 파라미터를 수정하는 데 사용된다.
제1 결정 모듈(502)은,
사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는지 결정하도록 구성된 판단 유닛(5021);
사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는 경우, 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된 제1 결정 유닛(5022); 및
사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되지 않는 경우, 혼잡 제어 알고리즘과, 네트워크 어댑터 타입, 네트워크 액세스 모드, 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 어느 하나와의 대응 관계에 따라, 사용자 단말의 네트워크 어댑터 타입, 사용자 단말의 네트워크 액세스 모드, 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된 제2 결정 유닛(5023)을 더 포함한다.
또한, 본 실시예에서 네트워크 서버는 네트워크 상태 정보를 획득하고, API를 이용하여 정보에 따라 TCP 파라미터를 변경함으로써, 네트워크 상태 정보에 따라 네트워크 조정 정책이 결정될 수 있으며, API를 사용하여 TCP 파라미터를 동적으로 조정할 수 있다. 이러한 방식으로, TCP 전송 효율이 개선되고, 솔루션이 보다 광범위하게 사용될 수 있으며, 유연성이 더욱 개선된다.
이하에서 본 발명의 사용자 단말에 대해 상세히 서명한다. 도 6을 참조하면, 본 발명의 실시예에서 사용자 단말은 이하:
기존 API 또는 신규 생성된 API를 사용하여 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 어느 하나를 획득하도록 구성된 제3 획득 모듈(601);
네트워크 서버가, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 서비스 요구사항 중 적어도 하나에 따라 혼잡 제어 알고리즘을 결정할 수 있도록, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나를 네트워크 서버에 송신하도록 구성된 제1 송신 모듈(602); 및
혼잡 제어 알고리즘을 사용하여 네트워크 서버와 데이터 전송을 수행하도록 구성된 제2 전송 모듈(603)을 포함한다.
본 실시예에서, 제3 획득 모듈(601)은 기존 API 또는 신규 생성된 API를 사용하여 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나를 획득하고, 제1 송신 모듈(602)은, 제3 획득 모듈(601)에 의해 획득된 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나를 네트워크 서버에 송신하여, 네트워크 서버는 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 서비스 요구사항 중 적어도 하나에 따라 혼잡 제어 알고리즘을 결정하고, 제2 전송 모듈(603)은 혼잡 제어 알고리즘을 사용하여 네트워크 서버와 데이터 전송을 수행한다.
본 발명의 본 실시예에서, 사용자 단말은, 신규 생성된 API 또는 기존 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 사용자 서비스 요구사항을 획득하고, 정보를 네트워크 서버에 송신하여, 네트워크 서버는 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정한다. 네트워크 서버는 사용자 단말의 상이한 네트워크 특성 정보에 따라 상이한 혼잡 제어 알고리즘을 선택하고, 구체적 네트워크 타입, 구체적 네트워크 액세스 모드, 또는 구체적 사용자 서비스 요구사항에 따라 TCP 전송을 수행하여, TCP 전송 효율이 개선된다.
도 7을 참조하면, 본 발명의 실시예에서 사용자 단말의 다른 실시예는 이하:
기존 API 또는 신규 생성된 API를 사용하여 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 어느 하나를 획득하도록 구성된 제3 획득 모듈(701);
네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나에 따라, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나에 대응하는 혼잡 제어 알고리즘을 결정하도록 구성된 제2 결정 모듈(702);
네트워크 서버가, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 서비스 요구사항 중 적어도 하나에 따라, 혼잡 제어 알고리즘을 결정할 수 있도록, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나를 네트워크 서버에 전송하도록 구성된 제1 송신 모듈(703); 및
혼잡 제어 알고리즘을 사용하여 네트워크 서버와 데이터 전송을 수행하도록 구성된 제2 전송 모듈(704)를 포함한다.
제1 송신 모듈(703)은, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나, 및 대응하는 혼잡 제어 알고리즘을 네트워크 서버에 송신하도록 구성된 송신 유닛(7031)을 더 포함할 수 있다.
또한, 본 발명의 본 실시예에서 사용자 단말은 네트워크 어댑터 타입, 네트워크 액세스 모드, 및 사용자 서비스 요구사항에 따라, 네트워크 어댑터 타입 및 사용자 단말의 네트워크 액세스 모드에 대응하는 혼잡 제어 알고리즘을 결정한다. 네트워크 서버가 혼잡 제어 알고리즘을 지원하는 경우, 혼잡 제어 알고리즘은 최적 선택이고, 그렇지 않으면, 네트워크 서버는 제2 최적 혼잡 제어 알고리즘을 선택하여 데이터 전송을 수행한다. 솔루션의 타당성이 개선되고 실제 적용 효과가 더 좋으며 TCP 전송 효율성이 향상된다.
도 8은 본 발명의 일 실시예에 따른 서버의 개략적 구조도이다. 구성 또는 성능 차이로 인해 서버(800)에서 비교적 큰 차이가 발생할 수 있다. 서버(800)는 하나 이상의 중앙 처리 장치(CPU: central processing unit, 822)(예를 들어, 하나 이상의 프로세서), 하나 이상의 메모리(832), 및 애플리케이션 프로그램(842) 및 데이터(844) 저장을 위한 하나 이상의 저장 매체(830)(예를 들어, 하나 이상의 대용량 저장 장치)를 포함할 수 있다. 메모리(832) 및 저장 매체(830)는 일시적인 저장 장치 또는 영구 저장 장치 일 수 있다. 저장 매체(830)에 저장된 프로그램은(도시되지 않은) 하나 이상의 전술한 모듈을 포함할 수 있으며, 각 모듈은 서버에 대한 일련의 명령 동작을 포함할 수 있다. 또한, 중앙 처리 유닛(822)은 저장 매체(830)와 통신하고, 저장 매체(830)에서 일련의 명령 동작을 서버(800)상에서 실행하도록 설정될 수 있다.
서버(800)는 하나 이상의 전원 공급 장치(826), 하나 이상의, 유선 또는 무선 네트워크 인터페이스(850), 하나 이상의 입/출력 인터페이스(858), 및/또는 Mac OS XTM, UnixTM, LinuxTM 또는 FreeBSDTM와 같은 하나 이상의 운영 체제(841)를 더 포함할 수 있다.
전술한 실시예에서 서버에 의해 실행되는 단계는 도 8 도시된 서버 구조에 기초할 수 있다.
본 발명의 실시예는 사용자 단말을 더 제공한다. 도 9에 도시된 바와 같이, 도 9에서는 설명의 편의를 위해 본 발명의 실시예와 관련된 부분만을 도시하였다. 개시되지 않은 특정 기술 세부 사항에 대해서는 본 발명의 실시예의 방법을 참조한다. 단말은, 휴대 전화, 태블릿 컴퓨터, PDA, POS(Point of Sales), POS(point of sale), 차량 탑재 컴퓨터 등을 포함하는 임의의 단말일 수 있다. 예를 들어, 단말은 휴대 전화이다.
도 9는 본 발명의 실시예에서 제공되는 단말과 관련된 휴대 전화의 부분 구조를 나타낸 블록도 이다. 도 9를 참조하면, 휴대 전화는 RF(Radio Frequency) 회로(910), 메모리(920), 입력 유닛(930), 표시 유닛(940), 센서(950), 오디오 주파수 회로(960), WiFi(Wireless Fidelity) 모듈(970), 프로세서(980), 및 전원(990)을 포함할 수 있다. 도 9에 도시된 휴대 전화의 구성은 휴대 전화에 제한이 없으며, 그 대신에 휴대 전화는 도 9에 도시된 것보다 더 많거나 더 적은 구성 요소를 포함할 수 있거나, 또는 일부 구성 요소의 조합 또는 다른 구성 요소 배열을 포함할 수 있다.
이하, 도 9를 참조하여 휴대 전화의 구성 요소를 상세히 설명한다. RF 회로(910)는, 정보 수신 또는 송신 과정 또는 호출 처리 중에 신호를 송수신하도록 구성될 수 있으며, 특히 기지국의 다운 링크 정보를 수신한 후, 처리를 위해 다운 링크 정보를 프로세서(980)로 전송한다. 또한, RF 회로(910)는 설계된 업 링크 데이터를 기지국에 전송한다. 대체로, RF 회로(910)는 안테나, 적어도 하나의 증폭기, 송수신기, 커플러, 저잡음 증폭기(Low Noise Amplifier, LNA), 및 듀플렉서(duplexer)를 포함하지만, 이에 한정되는 것은 아니다. 또한, RF 회로(910)는 무선 통신 방식으로 네트워크 및 다른 장치와 통신할 수 있다. 무선 통신은 GSM(Global System of Mobile communication), GPRS(General Packet Radio Service), GPRS(General Packet Radio Service), CDMA(Code Division Multiple Access), WCDMA(Wideband Code Division Multiple Access), LTE(Long Term Evolution), 이메일, 또는 SMS(Short Messaging Service)를 포함하나 이에 한정되는 것은 아니다.
메모리(920)는 소프트웨어 프로그램 및 모듈을 저장하도록 구성될 수 있다. 프로세서(980)는 메모리(920)에 저장된, 소프트웨어 프로그램 및 모듈을 실행하여 휴대 전화의 다양한 기능 애플리케이션 및 데이터 처리를 수행한다. 메모리(920)는 주로 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있다. 프로그램 저장 영역은 운영 체제, 적어도 하나의 기능(예를 들어, 음성 재생 기능 또는 이미지 재생 기능)에 의해 요구되는 애플리케이션 프로그램 등을 저장할 수 있다. 데이터 저장 영역은 휴대 전화의 사용 등에 따라 생성된 데이터(오디오 데이터 또는 전화 번호부 등)를 저장할 수 있다. 또한, 메모리(920)는 고속 랜덤 액세스 메모리를 포함할 수 있고, 적어도 하나의 자기 디스크 저장 구성 요소, 플래시 메모리 구성 요소 또는 다른 휘발성 고체 상태 저장 구성 요소와 같은 비 일시적 메모리를 더 포함할 수 있다.
입력 유닛(930)은 입력된 숫자 또는 문자 정보를 입력받아 휴대 전화의 사용자 설정 및 기능 제어와 관련된 키 신호 입력을 생성할 수 있다. 구체적으로, 입력부(930)는 터치 패널(931) 및 다른 입력 장치(932)를 포함할 수 있다. 터치 스크린이라고도 하는 터치 패널(931)은 터치 패널(931) 터치 패널(931) 상에서 또는 터치 패널(931) 근처에서 사용자의 터치 조작(예를 들어, 사용자의 손가락, 또는 스타일러스와 같은 적절한 물건 또는 액세서리를 사용하여 터치 패널(931) 상에서 또는 터치 패널(931) 근처에서 사용자의 조작)을 수집하고, 미리 설정된 프로그램에 따라 연결된 장치를 구동할 수 있다. 선택적으로, 터치 패널(931)은 두 부분, 즉 터치 검출 장치 및 터치 제어기를 포함할 수 있다. 터치 감지 장치는 사용자의 터치 위치를 감지하고, 터치 조작에 의해 발생한 신호를 검출하여 터치 제어기에 전달한다. 터치 제어기는 터치 감지 장치로부터 터치 정보를 수신하여 터치 포인트의 좌표로 변환한 다음 프로세서(980)로 전달하고, 프로세서(980)가 보낸 명령을 수신하여 실행할 수 있다. 또한, 터치 패널(931)은 저항 형, 용량 형, 적외선, 및 탄성 표면파와 같은 다수의 유형을 이용하여 구현될 수 있다. 또한, 터치 패널(931) 외에, 입력 유닛(930)은 다른 입력 장치(932)를 더 포함할 수 있다. 구체적으로, 이러한 다른 입력 장치(932)는 물리적 키보드, 기능 키(예를 들어, 볼륨 제어키 또는 온/오프 키), 트랙볼, 마우스 또는 조이스틱을 포함할 수 있다.
표시 유닛(940)은 사용자가 입력 한 정보 또는 사용자에 제공된 정보, 및 휴대 전화의 각종 메뉴를 표시하도록 구성될 수 있다. 표시 유닛(940)은 표시 패널(941)을 포함할 수 있다. 선택적으로, 액정 디스플레이(Liquid Crystal Display, LCD) 및 유기 발광 다이오드(Organic Light-Emitting Diode, OLED)와 같은 형태가 표시 패널(941)을 구성하는 데 사용될 수 있다. 또한, 터치 패널(931)은 표시 패널(941)을 덮을 수 있다. 터치 패널(931)은, 터치 이벤트의 종류를 판단하기 위해 터치 패널(931)에 대한 터치 조작 또는 터치 패널(931) 주위의 터치 조작을 감지하면, 프로세서(980)로 터치 조작을 전달하고, 프로세서(980)는 터치 이벤트의 유형에 따라 표시 패널(941)에 대응하는 시각적 출력(visual output)을 제공한다. 도 9에 도시된 바와 같이, 터치 패널(931)과 표시 패널(941)은 휴대 전화의 입출력 기능을 구현하기 위한 두 개의 독립적 구성 요소로 사용된다. 그러나 일부 실시예에서, 터치 패널(931) 및 표시 패널(941)은 통합되어 휴대 전화의 입력 및 출력 기능을 구현할 수 있다.
휴대 전화는 광센서, 동작 센서 또는 다른 센서와 같은 적어도 하나의 센서(950)를 더 포함할 수 있다. 구체적으로, 광센서는 주변 광센서 및 근접 센서를 포함할 수 있다. 주변 광센서는 주변 빛의 밝기에 따라 표시 패널(941)의 휘도를 조절할 수 있다. 근접 센서는 휴대 전화가 귀를 향해 움직일 때 표시 패널(941) 및/또는 백라이트를 끌 수 있다.
모션 센서의 한 종류인 가속도 센서는 모든 방향(일반적으로 3축)의 가속도를 감지하고 정적 상태에서 중력의 값과 방향을 감지할 수 있으며,(스크린 방향, 관련 게임 또는 자력계 자세 교정과 같은)휴대 전화 자세, 진동 식별과 관련된 기능(만보계 또는 뇌졸중과 같은) 등을 식별하는 애플리케이션에 사용될 수 있다. 휴대 전화에 추가로 배치할 수 있는 자이로스코프, 기압계, 습도계, 온도계 또는 적외선 센서와 같은 다른 센서의 경우 세부 정보는 여기에 설명하지 않는다.
오디오 주파수 회로(960), 스피커(961) 및 마이크(962)는 사용자와 휴대 전화 사이의 오디오 인터페이스를 제공할 수 있다. 오디오 주파수 회로(960)는 수신 오디오 데이터가 변환된 후에 얻어진 전기 신호를 스피커(961)에 전송할 수 있고, 스피커(961)는 전기 신호를 출력을 위한 사운드 신호로 변환한다. 한편, 마이크로폰(962)은 수집된 음향 신호를 전기 신호로 변환한다. 오디오 주파수 회로(960)는 전기 신호를 수신하고, 전기 신호를 오디오 데이터로 변환하고, 프로세싱을 위해 프로세서(980)에 오디오 데이터를 출력한다. 프로세서(980)는 RF 회로(910)를 사용하여 처리된 오디오 데이터를, 예를 들어 또 다른 휴대 전화에 전송하거나, 추후 처리를 위해 오디오 데이터를 메모리(920)에 출력한다.
WiFi는 근거리 무선 전송 기술에 속한다. 휴대 전화는, WiFi 모듈(970)을 사용하여, 사용자가 이메일을 송수신하고, 웹 페이지를 브라우징하며, 스트리밍 미디어에 액세스하는 것을 돕는다. WiFi 모듈(970)은 사용자에게 무선 광대역 인터넷 액세스를 제공한다. WiFi 모듈(970)이 도 9에 도시되어 있지만, 와이파이 모듈(970)은 휴대 전화의 필수 구성이 아니며 필요에 따라 본 발명의 요지를 변경하지 않고 생략될 수 있다.
프로세서(980)는 휴대 전화의 제어 센터이며, 다양한 인터페이스 및 라인을 사용하여 전체 휴대 전화의 각 부분에 연결된다. 프로세서(980)는, 메모리(920)에 저장된 소프트웨어 프로그램 및/또는 모듈을 실행하거나, 메모리(920)에 저장된 데이터를 사용하여, 휴대 전화의 다양한 기능 및 데이터 처리를 수행하여, 휴대 전화 전반의 모니터링을 수행한다. 선택적으로, 프로세서(980)는 하나 이상의 처리 유닛을 포함할 수 있다. 바람직하게는, 애플리케이션 프로세서 및 모뎀 프로세서가 프로세서(980)에 통합될 수 있다. 애플리케이션 프로세서는 주로 운영 시스템, 사용자 인터페이스, 애플리케이션 프로그램 등을 처리한다. 모뎀 프로세서는 주로 무선 통신을 처리한다. 전술한 모뎀 프로세서는 대안적으로 프로세서(980)에 통합될 수 없다는 것을 이해할 수 있다.
휴대 전화는 각 부분에 전력을 공급하는 전원 공급부(990)(배터리 등)를 더 포함한다. 바람직하게는 전원 관리 시스템을 이용하여 전원 공급부와 프로세서(980)를 논리적으로 연결하므로, 전원 관리 시스템을 이용하여 충전, 방전 및 소비 전력, 관리 등의 기능을 구현할 수 있다.
도시되지는 않았지만, 휴대 전화는 카메라, 블루투스 모듈 등을 더 포함할 수 있으며, 여기서는 상세한 설명을 생략한다.
이하에서 본 발명의 실시예에 따른 데이터 전송 시스템을 설명한다. 도 10을 참조하면, 본 발명의 본 실시예에서 데이터 전송 시스템이 제공되고, 이러한 데이터 전송 시스템은 네트워크 서버(1001) 및 사용자 단말(1002)을 포함한다.
네트워크 서버(1001)는 혼잡 제어 알고리즘 결정 정보, 사용자 단말(1002)과의 데이터 전송에 사용되는 혼잡 제어 알고리즘에 따라 혼잡 제어 알고리즘 결정 정보를 획득하고, 혼잡 제어 알고리즘을 사용하여 사용자 단말(1002)과 데이터 전송을 수행한다.
사용자 단말(1002)은, 기존 API 또는 신규 생성된 API을 사용하여 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말(1002)의 서비스 요구사항 중 적어도 어느 하나를 획득하고, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말(1002)의 서비스 요구사항 중 적어도 하나를 네트워크 서버(1001)에 전송하여, 네트워크 서버(1001)는 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 서비스 요구사항 중 적어도 하나에 따라 혼잡 제어 알고리즘을 결정한다. 사용자 단말(1002)은 혼잡 제어 알고리즘을 사용하여 네트워크 서버(1001)와 데이터 전송울 수행한다.
본 발명의 본 실시예에서, 네트워크 서버는 사용자 단말에 의해 송신된 정보를 획득하고, 네트워크 서버에 의해 지원되는 혼잡 제어 알고리즘을 참조하여, 최종적으로 사용될 혼잡 제어 알고리즘을 선택한다. 네트워크 서버는 혼잡 제어 알고리즘을 사용하여 TCP 전송을 수행한다. 네트워크 서버는 혼잡 제어 알고리즘을 사용하여 TCP 전송을 수행한다. 네트워크 서버는 서로 다른 수신 정보에 따라 서로 다른 혼잡 제어 알고리즘을 선택하고, 특정 단말 타입 및 네트워크 액세스 모드에 따라 TCP 전송을 수행하여, TCP 전송 효율을 향상시킨다.
전술한 시스템, 장치 및 유닛의 상세한 작업 과정의 편리하고 간단한 설명을 위해, 당업자는 본 발명의 범주에 속하는 대응하는 프로세스를 참조할 수 있음을 명확히 이해할 것이다. 전술한 방법 실시예 및 상세한 설명은 여기서 다시 설명되지 않는다.
본 출원에 제공된 일부 실시예에서, 개시된 시스템, 장치 및 방법은 다른 방식으로 구현될 수 있음을 이해해야 한다. 예를 들어, 설명된 장치 실시예는 단지 예일 뿐이다. 예를 들어, 유닛 구분은 논리적 기능 구분일 뿐이며 실제 구현에서는 다른 구분일 수 있다. 예를 들어, 복수의 유닛 또는 구성 요소가 결합하거나 다른 시스템에 통합되거나, 일부 특징은 무시되거나 수행되지 않을 수 있다. 또한, 표시되거나 논의된 상호 연결 또는 직접 연결 또는 통신 연결은 일부 인터페이스를 사용하여 구현될 수 있다. 장치 또는 유닛 간의 간접적 연결 또는 통신 연결은 전자적, 기계적 또는 다른 형태로 구현될 수 있다.
분리된 부분으로 설명된 유닛들은 물리적으로 분리될 수도 있고 그렇지 않을 수도 있고, 유닛으로서 표시된 부분은 물리적 유닛일 수도 있고 아닐 수도 있거나, 한 위치에 배치될 수도 있거나, 또는 복수의 네트워크 유닛에 배치될 수 있다. 유닛의 일부 또는 전부는 실시예의 해결 수단의 목적을 달성하기 위해 실제 요구에 따라 선택될 수 있다.
또한, 본 발명의 실시예에서 기능 유닛은 하나의 처리 유닛에 통합되거나, 또는, 각각의 유닛이 물리적으로 단독으로 존재하고 있거나, 또는 2 이상의 유닛이 하나의 유닛으로 통합될 수 있다. 통합 유닛은 하드웨어의 형태로 구현될 수 있거나, 소프트웨어 기능 유닛의 형태로 구현될 수 있다.
통합 유닛이 소프트웨어 기능 유닛의 형태로 구현되어 독립 제품으로서 판매 또는 사용되는 경우, 통합 유닛은 컴퓨터 판독 가능 저장 매체에 저장될 수 있다. 이러한 이해에 기초하여, 본질적으로 본 발명의 기술적 해결책 또는 종래 기술에 기여하는 부분 또는 기술적 해결책의 전부 또는 일부는 소프트웨어 제품의 형태로 구현될 수 있다. 소프트웨어 제품은 저장 매체에 저장되며, 컴퓨터 장치(개인용 컴퓨터, 서버 또는 네트워크 장치 일 수 있음)에, 실시예에서 설명된 방법의 단계 중 일부 또는 전부를 수행하도록 명령하기 위한 몇 가지 명령을 포함한다. 본 발명의 저장 매체는 USB 플래시 드라이브, 탈착식 하드 디스크, 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 자기 디스크 또는 광디스크 등과 같은 프로그램 코드를 저장할 수있는 임의의 매체를 포함한다.
전술한 실시예는 단지 본 발명의 기술적 해결수단을 설명하기 위한 것이지 본 발명을 제한하는 것은 아니다. 본 발명은 전술한 실시예를 참조하여 상세히 설명되었지만, 당업자는, 본 발명의 실시예의 기술적 해결책의 범위를 벗어나지 않고, 전술한 실시예에서 설명된 기술적 해결책들에 여전히 수정을 가할 수 있거나 또는 그 기술적 특징들에 대한 동등한 대체물을 만들 수 있음을 이해해야한다.
Claims (13)
- 데이터 전송 방법으로서,
혼잡 제어 알고리즘(congestion control algorithm) 결정 정보를 획득하는 단계;
상기 혼잡 제어 알고리즘 결정 정보에 따라, 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하는 단계; 및
상기 혼잡 제어 알고리즘을 이용하여 상기 사용자 단말과 데이터 전송을 수행하는 단계
를 포함하는 데이터 전송 방법. - 제1항에 있어서,
상기 혼잡 제어 알고리즘 결정 정보가, 상기 사용자 단말의 네트워크 어댑터 타입(network adapter type), 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 하나를 포함하는 경우, 상기 혼잡 제어 알고리즘 결정 정보에 따라, 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하는 단계는,
혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 단계
를 포함하는, 데이터 전송 방법. - 제2항에 있어서,
상기 혼잡 제어 알고리즘 결정 정보가 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘의 타입을 더 포함하는 경우, 상기 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 단계는,
상기 사용자 단말에 의해 결정된 상기 혼잡 제어 알고리즘이 지원되는지 결정하는 단계;
상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는 경우, 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 단계; 및
상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되지 않는 경우, 상기 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 상기 혼잡 제어 알고리즘이 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하는 단계
를 포함하는, 데이터 전송 방법. - 제1항 내지 제3항 중 어느 한 항에 있어서,
상기 혼잡 제어 알고리즘을 사용하여 상기 사용자 단말과 데이터 전송을 하는 동안, 상기 데이터 전송 방법은,
상기 사용자 단말과 서버 사이의 통신 경로에서 제2 네트워크 상태 정보를 획득하는 단계;
상기 제2 네트워크 상태 정보에 따라, API(application programming interface)를 호출하는 단계 - 상기 API는 TCP(Transmission Control Protocol) 파라미터를 수정하는 데 사용됨 -; 및
상기 API를 사용하여 상기 TCP 파라미터를 수정하는 단계
를 더 포함하는 데이터 전송 방법. - 데이터 전송 방법으로서,
기존 API 또는 신규 생성된 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 하나를 획득하는 단계;
상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나를 네트워크 서버에 송신하여, 상기 네트워크 서버가 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 서비스 요구사항 중 적어도 하나에 따라 혼잡 제어 알고리즘을 결정하는 단계; 및
상기 혼잡 제어 알고리즘을 사용하여 상기 네트워크 서버와 데이터 전송을 수행하는 단계
를 포함하는 데이터 전송 방법. - 제5항에 있어서,
상기 기존 API 또는 신규 생성된 API를 사용하여, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나를 획득한 후, 상기 데이터 전송 방법은,
상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나에 따라, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나에 대응하는 혼잡 제어 알고리즘을 결정하는 단계
를 더 포함하고,
상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나를 네트워크 서버에 송신하는 것은,
상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나, 및 상기 대응하는 혼잡 제어 알고리즘을 상기 네트워크 서버에 송신하는 단계
를 포함하는 데이터 전송 방법. - 네트워크 서버로서,
혼잡 제어 알고리즘 결정 정보를 획득하도록 구성된 제1 획득 모듈;
상기 혼잡 제어 알고리즘 결정 정보에 따라, 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘을 결정하도록 구성된 제1 결정 모듈; 및
상기 혼잡 제어 알고리즘을 사용하여 상기 사용자 단말과 데이터 전송을 수행하도록 구성된 제1 전송 모듈
을 포함하는 네트워크 서버. - 제7항에 있어서,
상기 제1 결정 모듈은 구체적으로,
상기 혼잡 제어 알고리즘 결정 정보가, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 제1 네트워크 상태 정보 중 적어도 하나를 포함하는 경우, 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된, 네트워크 서버. - 제8항에 있어서,
상기 제1 결정 모듈은,
상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는지 결정하도록 구성된 판단 유닛;
상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되는 경우, 상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된 제1 결정 유닛; 및
상기 사용자 단말에 의해 결정된 혼잡 제어 알고리즘이 지원되지 않는 경우, 상기 혼잡 제어 알고리즘과, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 상기 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나 사이의 대응 관계에 따라, 상기 사용자 단말의 네트워크 어댑터 타입, 상기 사용자 단말의 네트워크 액세스 모드, 상기 사용자 단말의 서비스 요구사항, 또는 상기 제1 네트워크 상태 정보 중 어느 하나에 대응하는 혼잡 제어 알고리즘이 상기 사용자 단말과 데이터 전송에 사용되는 혼잡 제어 알고리즘인 것으로 결정하도록 구성된 제2 결정 유닛
을 포함하는, 네트워크 서버. - 제7항 내지 제9항 중 어느 한 항에 있어서,
상기 네트워크 서버는
상기 사용자 단말과 상기 서버 사이의 통신 경로에서 제2 네트워크 상태 정보를 획득하도록 구성된 제2 획득 모듈;
상기 제2 네트워크 상태 정보에 따라 API를 호출하도록 구성된 호출 모듈 - 상기 API는 TCP 파라미터를 수정하는 데 사용됨 -; 및
상기 API를 사용하여 상기 TCP 파라미터를 수정하도록 구성된 수정 모듈
을 더 포함하는 네트워크 서버. - 사용자 단말로서,
기존 API 또는 신규 생성된 API를 사용하여, 네트워크 어댑터 타입, 네트워크 액세스 모드, 또는 사용자 단말의 서비스 요구사항 중 적어도 어느 하나를 획득하도록 구성된 제3 획득 모듈;
네트워크 서버가 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 서비스 요구사항 중 적어도 하나에 따라 혼잡 제어 알고리즘을 결정할 수 있도록, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나를 상기 네트워크 서버에 송신하도록 구성된 제1 송신 모듈; 및
상기 혼잡 제어 알고리즘을 사용하여 상기 네트워크 서버와 데이터 전송을 수행하도록 구성된 제2 전송 모듈
을 포함하는 사용자 단말. - 제11항에 있어서,
상기 사용자 단말은,
상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나에 따라, 상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나에 대응하는 혼잡 제어 알고리즘을 결정하도록 구성된 제2 결정 모듈
을 더 포함하고,
상기 제1 송신 모듈은,
상기 네트워크 어댑터 타입, 상기 네트워크 액세스 모드, 또는 상기 사용자 단말의 서비스 요구사항 중 적어도 하나, 및 상기 대응하는 혼잡 제어 알고리즘을 상기 네트워크 서버에 송신하도록 구성된 송신 유닛
을 포함하는, 사용자 단말. - 데이터 전송 시스템으로서,
네트워크 서버 및 사용자 단말을 포함하고,
상기 네트워크 서버는 제7항 내지 제10항 중 어느 한 항에 기재된 네트워크 서버이고,
상기 사용자 단말은 제11항 또는 제12항에 기재된 사용자 단말인, 데이터 전송 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510014307.1A CN105847168B (zh) | 2015-01-12 | 2015-01-12 | 一种数据传输的方法、网络服务器、用户终端及系统 |
CN201510014307.1 | 2015-01-12 | ||
PCT/CN2015/093380 WO2016112728A1 (zh) | 2015-01-12 | 2015-10-30 | 一种数据传输的方法、网络服务器、用户终端及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20170103921A true KR20170103921A (ko) | 2017-09-13 |
Family
ID=56405216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177022309A KR20170103921A (ko) | 2015-01-12 | 2015-10-30 | 데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20170310593A1 (ko) |
EP (1) | EP3236621A4 (ko) |
KR (1) | KR20170103921A (ko) |
CN (1) | CN105847168B (ko) |
WO (1) | WO2016112728A1 (ko) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9813299B2 (en) * | 2016-02-24 | 2017-11-07 | Ciena Corporation | Systems and methods for bandwidth management in software defined networking controlled multi-layer networks |
US10848602B2 (en) * | 2016-07-08 | 2020-11-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for implementing congestion control negotiation |
CN108011734A (zh) * | 2016-10-27 | 2018-05-08 | 常州市小先信息技术有限公司 | 基于软件定义的终端管理架构 |
CN109309934B (zh) | 2017-07-27 | 2021-01-15 | 华为技术有限公司 | 一种拥塞控制方法及相关设备 |
US10680897B2 (en) * | 2017-07-31 | 2020-06-09 | Cisco Technology, Inc. | Network modification impact prediction |
CN109218944B (zh) * | 2018-09-05 | 2020-06-02 | 广州市奥威亚电子科技有限公司 | 一种基于有线麦克风长距离传输方法及系统 |
CN109587336B (zh) * | 2018-12-06 | 2021-03-12 | Oppo广东移动通信有限公司 | 数据传输方法及相关装置 |
CN110784414B (zh) * | 2019-10-30 | 2023-06-23 | 北京达佳互联信息技术有限公司 | 数据交互方法、装置、电子设备和存储介质 |
CN112822230B (zh) * | 2020-12-28 | 2022-03-25 | 南京大学 | 一种基于概率的发送端初始速率设置方法和系统 |
CN113300969B (zh) * | 2021-05-20 | 2022-07-12 | 清华大学深圳国际研究生院 | 基于场景变化的拥塞控制切换方法、存储介质和电子设备 |
US20230015697A1 (en) * | 2021-07-13 | 2023-01-19 | Citrix Systems, Inc. | Application programming interface (api) authorization |
CN113726688A (zh) * | 2021-09-03 | 2021-11-30 | 支付宝(杭州)信息技术有限公司 | 拥塞控制方法、装置和电子设备 |
CN113852988B (zh) * | 2021-09-10 | 2023-11-24 | 武汉联影医疗科技有限公司 | 拥塞控制方法、装置、计算机设备和存储介质 |
US20240015581A1 (en) * | 2022-07-08 | 2024-01-11 | Qualcomm Incorporated | Congestion control algorithms |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7006440B2 (en) * | 2001-10-26 | 2006-02-28 | Luminous Networks, Inc. | Aggregate fair queuing technique in a communications system using a class based queuing architecture |
US7782777B2 (en) * | 2001-11-23 | 2010-08-24 | Nokia Corporation | Method and system for handling network congestion |
US7782759B2 (en) * | 2006-04-21 | 2010-08-24 | Microsoft Corporation | Enabling network devices to run multiple congestion control algorithms |
US8467390B2 (en) * | 2006-12-14 | 2013-06-18 | Oracle America, Inc. | Method and system for network stack tuning |
EP2122936B1 (en) * | 2007-03-12 | 2012-11-14 | Citrix Systems, Inc. | Systems and methods for providing quality of service precedence in tcp congestion control |
CN101115002A (zh) * | 2007-03-19 | 2008-01-30 | 重庆邮电大学 | 利用TCP Veno提高无线自组织网络性能的方法 |
CN101917342A (zh) * | 2010-08-25 | 2010-12-15 | 天津理工大学 | 一种面向普适服务的自适应网络拥塞控制方法 |
CN102421142B (zh) * | 2011-12-01 | 2015-09-09 | 重庆邮电大学 | 一种车载通信网中基于跨层设计的tcp拥塞控制方法 |
CN103548381B (zh) * | 2011-12-08 | 2016-12-28 | 华为技术有限公司 | 一种拥塞控制方法及装置 |
CN104168174A (zh) * | 2013-05-16 | 2014-11-26 | 阿里巴巴集团控股有限公司 | 一种传输信息的方法及装置 |
-
2015
- 2015-01-12 CN CN201510014307.1A patent/CN105847168B/zh active Active
- 2015-10-30 KR KR1020177022309A patent/KR20170103921A/ko not_active Application Discontinuation
- 2015-10-30 WO PCT/CN2015/093380 patent/WO2016112728A1/zh active Application Filing
- 2015-10-30 EP EP15877641.9A patent/EP3236621A4/en not_active Withdrawn
-
2017
- 2017-07-11 US US15/646,853 patent/US20170310593A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
WO2016112728A1 (zh) | 2016-07-21 |
US20170310593A1 (en) | 2017-10-26 |
EP3236621A1 (en) | 2017-10-25 |
CN105847168A (zh) | 2016-08-10 |
EP3236621A4 (en) | 2018-01-10 |
CN105847168B (zh) | 2020-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20170103921A (ko) | 데이터 전송 방법 및 시스템, 네트워크 서버 및 사용자 단말 | |
WO2018121148A1 (zh) | 一种通信资源选择方法,手持智能终端及接入设备 | |
EP3720019B1 (en) | Internet of things data transmission method, device and system | |
AU2019316839B2 (en) | Determination method, terminal and network device | |
KR102305807B1 (ko) | 통신 방법 및 장치 | |
CN110784898A (zh) | 网络切换方法、移动终端及计算机可读存储介质 | |
CN110234124B (zh) | 信息传输方法及终端设备 | |
CN107734586B (zh) | 天线的切换方法及移动终端 | |
CN108574735B (zh) | 数据处理方法、终端及计算机可读存储介质 | |
WO2018036026A1 (zh) | 一种数据传输的方法、基站、目标终端、系统及存储介质 | |
US11115809B2 (en) | Indication method of terminal capability and terminal | |
US10237291B2 (en) | Session processing method and device, server and storage medium | |
JP2022116225A (ja) | データ伝送方法及び装置 | |
CN109075927A (zh) | 下行数据传输方法和装置 | |
US10973039B2 (en) | Method for data transmission and terminal | |
JP7322346B2 (ja) | リソース設定方法及び機器 | |
WO2018219092A1 (zh) | 处理封包的方法和终端设备 | |
CN108029045A (zh) | 视频优化方法、用户设备和网络设备 | |
CN110620640B (zh) | 一种数据传输方法、终端及节点设备 | |
CN110167146B (zh) | 一种sdu的处理方法和通信设备 | |
JP2021500828A (ja) | ローミングハンドオフ方法、中央制御デバイス、及びステーション | |
WO2017049930A1 (zh) | 一种资源使用方法及终端 | |
CN107534958B (zh) | 信号传输方法、基站及用户设备 | |
CN108279985B (zh) | 一种接口请求协议改造方法、设备及计算机可读存储介质 | |
CN110944385B (zh) | 一种确定终端设备的能力的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |