KR20220152760A - TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법 - Google Patents

TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법 Download PDF

Info

Publication number
KR20220152760A
KR20220152760A KR1020210060086A KR20210060086A KR20220152760A KR 20220152760 A KR20220152760 A KR 20220152760A KR 1020210060086 A KR1020210060086 A KR 1020210060086A KR 20210060086 A KR20210060086 A KR 20210060086A KR 20220152760 A KR20220152760 A KR 20220152760A
Authority
KR
South Korea
Prior art keywords
twt
processor
time
packet
packets
Prior art date
Application number
KR1020210060086A
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 삼성전자주식회사
Priority to KR1020210060086A priority Critical patent/KR20220152760A/ko
Priority to PCT/KR2022/006343 priority patent/WO2022240056A1/ko
Priority to EP22807704.6A priority patent/EP4311303A1/en
Publication of KR20220152760A publication Critical patent/KR20220152760A/ko
Priority to US18/484,812 priority patent/US20240040635A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access, e.g. scheduled or random access
    • H04W74/08Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access]
    • H04W74/0833Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access] using a random access procedure
    • H04W74/0841Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access] using a random access procedure with collision treatment
    • H04W74/085Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access] using a random access procedure with collision treatment collision avoidance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/08Testing, supervising or monitoring using real traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0215Traffic management, e.g. flow control or congestion control based on user or device properties, e.g. MTC-capable devices
    • H04W28/0221Traffic management, e.g. flow control or congestion control based on user or device properties, e.g. MTC-capable devices power availability or consumption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0268Traffic management, e.g. flow control or congestion control using specific QoS parameters for wireless networks, e.g. QoS class identifier [QCI] or guaranteed bit rate [GBR]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/24Negotiating SLA [Service Level Agreement]; Negotiating QoS [Quality of Service]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0212Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
    • H04W52/0216Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave using a pre-established activity schedule, e.g. traffic indication frame
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • H04W52/0235Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal where the received signal is a power saving command
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0251Power saving arrangements in terminal devices using monitoring of local events, e.g. events related to user activity
    • H04W52/0258Power saving arrangements in terminal devices using monitoring of local events, e.g. events related to user activity controlling an operation mode according to history or models of usage information, e.g. activity schedule or time of day
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access, e.g. scheduled or random access
    • H04W74/08Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access]
    • H04W74/0866Non-scheduled or contention based access, e.g. random access, ALOHA, CSMA [Carrier Sense Multiple Access] using a dedicated channel for access
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

다양한 실시예에 따르면, 전자 장치에 있어서, 제1 프로세서, 제2 프로세서를 포함하는 통신 모듈 및 메모리를 포함하고, 상기 메모리는 상기 제1 프로세서가, 상기 액세스 포인트와 통신 시에, 제1 TWT 파라미터에 기반한 TWT(target wake time) 계약에 따라 액세스 포인트(access point)와 데이터 송수신을 수행하도록 상기 통신 모듈을 제어하고, 상기 제2 프로세서로부터 수신되는 다운링크 패킷들 또는 상기 제2 프로세서로 전달되는 업링크 패킷들 중 적어도 하나를 모니터링하고, 상기 모니터링된 트래픽 패턴을 이용하여 상기 제2 프로세서에서 처리된 통신 링크 레벨의 TWT 인터벌(interval) 및TWT SP(service period)을 추정하고, 상기 추정된 TWT 인터벌(interval) 및TWT SP에 기반하여 상기 제 1 프로세서에서 동작하는 적어도 하나의 어플리케이션 또는 서비스의 QoS(quality of service)에 적합한 제2 TWT 파라미터로 상기 제1 TWT 파라미터를 갱신하고, 상기 제2 TWT 파라미터를 상기 제2 프로세서로 전달하여 상기 액세스 포인트와 TWT를 재협약하도록 제어하는 인스트럭션들을 포함할 수 있다.

Description

TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법{Electronic device including TWT(target wake time) monitoring module and method for controlling TWT(target wake time)}
다양한 실시 예들은 TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법에 관한 것이다.
WLAN 환경에서 예를 들어, IEEE 802.11ax(또는, Wi-Fi 6) 표준은 사용자의 서비스 요구(service requirement)에 따라 서로 다른 품질의 연결 서비스(connectivity service)를 지원할 뿐만 아니라, 트래픽들의 서비스 타입에 따라 서로 다른 시간에 무선 매체(예: 무선 채널)를 점유할 수 있는 TWT(target wake time) 기술을 지원하고 있다.
TWT(target wake time) 기술은 전자 장치(예: STA, station)와 액세스 포인트(AP: access point)가 웨이크 타임(wake time)을 협상(negotiation)하여 일정 주기 및 서비스 시간에 데이터들을 송수신 수 있다.
TWT 동작은 네트워크 상태 및 서비스 상태에 따라 트래픽 특성이 변할 수 있다. 이로 인해, 전자 장치는 실행 중인 어플리케이션 또는 서비스에 기반하여 필요한 TWT 주기, 트래픽 양, 무선 통신 링크(예: wi-fi link)에서의 현재 전송 속도, 경합 방식(contention)과 같은 다양한 정보를 종합적으로 고려하여 실행 중인 어플리케이션 또는 서비스의 QoS (quality of service) 요구 사항(requirement)를 만족할 수 있는 TWT 파라미터(parameter)를 구성하고, TWT 협상(negotiation)을 실시간으로 변경할 수 있어야 한다.
TWT 동작은 실시간으로 송수신되는 패킷과 관련된 정보를 모니터링하고, 모니터링 결과를 기반으로 QoS 요구 사항에 따른 TWT 파라미터가 결정되어야 한다. 그러나, TWT 사용 특성을 모니터링하는 동작은 실시간으로AP와 송수신되는 데이터에 대해 SP 단위로 송수신되는 패킷들의 수, 버퍼링된 트래픽 전송 구간, 패킷들의 송수신 시간을 확인하고, 평균, 최대값, 최소값과 같은 복잡한 계산 동작이 요구되어 고성능 처리가 요구될 수 있다. 이로 인해, TWT 제어 및 모니터링을 고성능의 프로세서(예: 어플리케이션 프로세서) 에서 구현하기 위한 시도가 이루어지고 있다.
TWT 협상(negotiation)은 액세스 포인트(AP: access point))와 통신 프로세서(예: wifi chipset) 사이에서 동작하며, 전자 장치의 전반적인 동작을 제어하는 고성능의 프로세서(예: 어플리케이션 프로세서)는 통신 프로세서를 거쳐 AP로부터 전달된 데이터를 처리하게 된다.
이로 인해 고성능의 프로세서(예: 어플리케이션 프로세서)는 무선 통신 링크 레벨(예: wi-fi link level)(다시 말해, TWT 협상 결과가 반영된 통신 프로세서에서의 네트워크 환경)에서의 정보, 예를 들어, TWT 사용 특성을 확인할 수가 없는 문제가 발생될 수 있다.
다양한 실시 예들은TWT 제어 및 모니터링 모듈을 고성능의 프로세서에서 구현하고, 고성능의 프로세서가 무선 통신 링크 레벨(예: wi-fi link level)(다시 말해, TWT 협상 결과가 반영된 통신 프로세서에서의 네트워크 환경)에서의 트래픽 관련 정보를 모니터링하고, 모니터링 결과, 무선 통신 링크 레벨의 TWT 사용 특성이 반영된 TWT 파라미터로 변경할 수 있는 방법 및 장치를 제안할 수 있다.
다양한 실시예에 따르면, 전자 장치에 있어서, 제1 프로세서, 제2 프로세서를 포함하는 통신 모듈; 및 메모리를 포함하고, 상기 메모리는 상기 제1 프로세서가, 상기 액세스 포인트와 통신 시에, 제1 TWT 파라미터에 기반한 TWT(target wake time) 계약에 따라 액세스 포인트(access point)와 데이터 송수신을 수행하도록 상기 통신 모듈을 제어하고, 상기 제2 프로세서로부터 수신되는 다운링크 패킷들 또는 상기 제2 프로세서로 전달되는 업링크 패킷들 중 적어도 하나를 모니터링하고, 상기 모니터링된 트래픽 패턴을 이용하여 상기 제2 프로세서에서 처리된 통신 링크 레벨의 TWT 인터벌(interval) 및TWT SP(service period)을 추정하고, 상기 추정된 TWT 인터벌(interval) 및TWT SP에 기반하여 상기 제 1 프로세서에서 동작하는 적어도 하나의 어플리케이션 또는 서비스의 QoS(quality of service)에 적합한 제2 TWT 파라미터로 상기 제1 TWT 파라미터를 갱신하고, 상기 제2 TWT 파라미터를 상기 제2 프로세서로 전달하여 상기 액세스 포인트와 TWT를 재협약하도록 제어하는 인스트럭션들을 포함할 수 있다.
다양한 실시예에 따르면, 전자 장치에서 TWT(target wake time)를 제어하는 방법에 있어서, 제1 프로세서가 제1 TWT 파라미터에 기반한 TWT(target wake time) 계약에 따라 액세스 포인트(access point)와 데이터 송수신을 수행하도록 통신 모듈을 제어하는 동작, 상기 액세스 포인트와 통신 시에, 상기 통신 모듈에 포함된 제2 프로세서와 통신 데이터를 송수신하는 동작, 상기 제1 프로세서가 상기 제2 프로세서로부터 수신되는 다운링크 패킷들 또는 상기 제2 프로세서로 전달되는 업링크 패킷들 중 적어도 하나를 모니터링하고, 상기 모니터링된 트래픽 패턴을 이용하여 상기 제2 프로세서에서 처리된 통신 링크 레벨의 TWT 인터벌(interval) 및TWT SP(service period)을 추정하는 동작, 상기 추정된 TWT 인터벌(interval) 및TWT SP에 기반하여 상기 제 1 프로세서에서 동작하는 적어도 하나의 어플리케이션 또는 서비스의 QoS(quality of service)에 적합한 제2 TWT 파라미터로 상기 제1 TWT 파라미터를 갱신하는 동작 및 상기 제2 TWT 파라미터를 제2 프로세서로 전달하여 상기 액세스 포인트와 TWT를 재협약하도록 제어하는 동작을 더 포함할 수 있다.
다양한 실시 예에 따르면, 전자 장치는 실시간으로 실행 중인 어플리케이션 또는 서비스 상황에 맞게 TWT 파라미터를 실시간으로 제어하기 위한 TWT 제어 모듈 및 TWT 모니터링 모듈을 고성능의 프로세서에서 구현할 수 있다.
다양한 실시 예에 따르면, 전자 장치는 고성능의 프로세서에서 다운링크의 트래픽 패턴을 무선 통신 링크 레벨의 트래픽 패턴으로 보정하고 트래픽 패턴을 추정함으로써, 무선 통신 링크 레벨(예: wi-fi link level)(다시 말해, TWT 협상 결과가 반영된 통신 프로세서에서의 네트워크 환경)에서의 TWT 사용 특성을 모니터링할 수 있다.
다양한 실시 예에 따르면 전자 장치는 고성능의 프로세서에서 무선 통신 링크 레벨에서의 TWT 사용 특성이 반영된 TWT 파라미터로 변경하여 TWT 재협상함으로써, 실시간으로 실행 중에 어플리케이션 또는 서비스 상황에 맞는 TWT 환경을 제공하고, 동시간 대에 트래픽이 집중되는 충돌(collision) 현상이 방지될 수 있으며, 이에 기인하여 WLAN 환경에서 서비스 타입 별로 요구되는 서비스 품질 및 연결 서비스(connectivity service) 품질이 보장될 수 있다.
도 1은 다양한 실시 예들에 따른 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 일 실시 예에 따른WLAN (Wireless local area network) 환경에서의 TWT 동작을 설명하는 도면이다.
도 3a는 일 실시 예에 따른 전자 장치의 TWT 제어 환경을 나타낸다.
도 3b는 일 실시 예에 따른 데이터 처리 계층 구조를 나타내는 도면이다.
도 4는 다양한 실시 예에 따른 전자 장치의 구성을 나타낸 블록도이다.
도 5는 다양한 실시 예에 따른 TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치에서 TWT(target wake time)를 제어하는 방법을 나타낸다.
도 6a는 다양한 실시 예에 따른 TWT 모니터링 동작을 설명하는 흐름도이다.
도 6b는 도 6a의 패킷 타임 보정 동작(A)을 구체적으로 설명하는 흐름도이다.
도 6c는 도 6a의 TWT 서비스 시간 추정 동작(B)을 구체적으로 설명하는 흐름도이다.
도 7은 일 실시 예에 따른 다운링크 패킷들의 트래픽 패턴을 나타낸다.
도 8은 일 실시 예에 따른 TWT SP추정 시 생략된 TWT SP(skipped TWT SP)가 발생될 수 있는 상황을 도시한다.
도 9는 일 실시예에 따른 TWT 동작을 활용한 통신 공존(coexistence) 상황을 도시한다.
본 문서에 개시된 다양한 실시 예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시 예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
도 1은 다양한 실시 예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다.
도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108) 중 적어도 하나와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시 예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시 예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일 실시 예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시 예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일 실시 예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일 실시 예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일 실시 예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일 실시 예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일 실시 예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시 예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일 실시 예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일 실시 예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다.
무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제 2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일 실시 예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일 실시 예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일 실시 예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시 예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
다양한 실시 예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일 실시 예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일 실시 예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일 실시 예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102,104, 또는108) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시 예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일 실시 예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제 2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.
도 2는 일 실시 예에 따른WLAN (Wireless local area network) 환경에서의 TWT 동작을 설명하는 도면이다.
도 2를 참조하면, 일 실시 예에 따르면, WLAN (Wireless local area network) 환경에서 전자 장치(101)는 외부 장치 예를 들어, AP(access point)(104)와 무선 표준(예: 802.11ax) 에 따라 통신할 수 있다. 전자 장치(101)는 도 1의 전자 장치(102))를 포함할 수 있다.
AP(102)는 전자 장치(101)와 외부 네트워크(예: 셀룰러 네트워크, 인터넷, 또는 외부 LAN)의 연결을 지원하며, 전자 장치(101)의 데이터를 외부 네트워크로 송신하는 동작 및 외부 네트워크로부터 수신된 데이터를 전자 장치(110)로 송신하는 동작을 수행할 수 있다.
전자 장치(101)는 TWT(target wake time)에 기초하여 AP(104)와 통신할 수 있다. TWT(target wake time)는 802.11(예: 802.11ax) 표준에 정의되어 있는 것으로서, 전자 장치(101)(예: 스테이션(station)들)가 요구하는 서비스 타입(또는 트래픽 활동)을 기반으로 전자 장치(101)와 AP(101)가 협상(negotiation)한 계약(TWT agreement)(또는 협약)일 수 있다. TWT는 전자 장치(101)가 요구하는 서비스 타입에 따라 무선 매체(또는 무선 통신 채널)를 전자 장치에 동적으로 할당(다시 말해, 무선 매체에 접근 가능한 시간을 트래픽의 서비스 타입 별로 다르게 할당)하기 위한 목적으로 사용될 수 있다.
전자 장치(101) 및 AP(104)는 TWT 파라미터를 협상(negotication)할 수 있다. AP(104)는 AP(104)와 통신 연결된 복수 개의 전자 장치들의 네트워크 상황에 기반하여 전자 장치(101)와 TWT파라미터를 협상하고, 협상된 TWT 파라미터를 기반으로 TWT 계약(또는 확정, agreement)할 수 있다. TWT 파라미터는 전자 장치(101)에 의해 결정되어 TWT 파라미터 셋 필드(TWT parameter set field))를 통해 AP(104)로 전송되거나, AP(104)에서 결정되어 전자 장치(101)로 전송될 수 있다. 일 예로, TWT 파라미터는, 전자 장치(101)가 결정한 TWT파라미터를 포함하는 요청(request)에 대해 AP(104)의 응답(TWT accept)에 기반하여 결정될 수 있다.
TWT 파라미터는, TWT 설정 정보(TWT settings)를 의미하며, TWT ID(identificaiotn), TWT에 할당된 서비스 타입(예: VO(voice), VI(video), BE(best effect) 및 BK(background)), TWT가 시작되는 시점(wake time), TWT 서비스 기간(SP(service period) duration)(다시 말해, TWT가 시작되는 시점에서 종료되는 시점까지의 시간), 및/또는 TWT 인터벌(interval)(다시 말해, TWT가 시작되고 다음 TWT가 시작되기까지의 기간)을 포함할 수 있다.
일 예로서, 도 2b는 TWT 협상(TWT negotiation)시에 전자 장치(101)와 AP(104)가 주고받는 프레임(frame)에서 설정되는 TWT 파라미터 셋 필드(TWT parameter set field)를 나타낸다.
target wake time은 전자 장치(101) 및 AP(104)가 데이터 패킷을 교환하기 위해 깨어나는 처음 시작 시간을 정의할 수 있다. 예를 들어, target wake time 도 2a에 도시된 TWT start time에 대한 정보일 수 있다.
TWT wake interval mantissa및 TWT wake interval exponent는 처음 서비스 시작 시간에서부터 이 후의 서비스 시작 시간들의 인터벌(interval)을 정의할 수 있다. 예를 들어, TWT wake interval mantissa 및/또는 TWT wake interval exponent는 도 2a에 도시된 TWT 인터벌(interval)에 대한 정보를 포함할 수 있다.
nominal minimum TWT wake duration은 특정 wake time 에 데이터 송수신을 위하여 액티브 상태(active state)로 전환된 상태에서 AP(104)로부터 응답이 없을 때(또는 전송된 트래픽이 없을 때), 전자 장치(101)가 슬립 상(sleep state))로 다시 전환 되기 전에 대기해야 하는 최소 시간을 정의할 수 있다. 예를 들어, nominal minimum TWT wake duration은 도 2a에 도시된 TWT SP(service period) duration에 대한 정보를 포함할 수 있다.
TWT Flow Identifier는 서로 다른 TWT 협상(negotiation)을 구분하는데 사용될 수 있으며, TWT Flow Identifier를 통해 동시에 여러 협상(negotiation) 설정할 수 있다. 일 예로, TWT Flow Identifier에 3 bit가 할당 되어 있으므로, 8개의 서로 다른 협상(negotiation)을 동시에 운용할 수 있다.
TWT 파라미터는, TWT 계약에 기초하여 어플리케이션 또는 서비스에서 요청하는 QoS를 만족 시키기 위해 서비스 별로 서로 다른 파라미터로 구성될 수 있다.
전자 장치(110)는, 어플리케이션 또는 서비스 실행 시에, AP(104) 통신 시 서비스 타입에 따른 TWT 파라미터(또는 TWT 설정 정보)를 확인할 수 있다. 전자 장치(101)는 AP(104)와 협약된 TWT 파라미터(설정 정보)에 기초하여 무선 매체(또는 무선 통신 링크)에 접근을 시도할 수 있다.
일 예를 들어, 전자 장치(101)는 권한에 따라 자신에게 부여된 TWT 서비스 기간(TWT service period, 이하, TWT SP)) 동안 활성화 상태로 동작하고, 권한이 없는 기간 동안에는 비활성화 상태로 동작할 수 있다. 전자 장치(101)는 TWT 시작 타임(start time)부터 TWT SP(service period)까지 UL(uplink)/DL(downlink) 데이터(패킷들)를 송수신할 수 있다. AP(104)는 전자 장치(101)와 TWT 계약에 따라 전자 장치(101)의 TWT SP(service period)에만 전자 장치(101)에 데이터를 전송할 수 있다.
전자 장치(101)는 TWT 인터벌(TWT interval) 간격으로 TWT SP(service period)동안 활성화되어 AP(104)를 통해 외부 네트워크로 UL(uplink)/DL(downlink) 데이터를 송수신할 수 있다.
전자 장치(101)와 AP(104)는 장치간 시간 동기화를 수행할 수 있다. 예를 들어, AP(104)는 TSF(timing synchronization function)을 포함하는 프레임을 전송하며 전자 장치(101)와AP(200)의 타이머(timer)는 동기화가 될 수 있다. 전자 장치(101)와 AP(104)는 동기화된 타이머에 기반하여 TWT 시작 타임(start time), TWT SP(service period), 및 TWT 인터벌(interval)에 맞춰 동작할 수 있다.
도 3a는 일 실시 예에 따른 전자 장치의 TWT 제어 환경을 나타내고, 도 3b는 일 실시 예에 따른 데이터 처리 계층 구조를 나타내는 도면이다.
일 실시 예에 따른 전자 장치(101)(예: 도 1의 전자 장치)는 AP(예: 도 2의 AP(104))와 송수신되는 데이터를 무선 통신 프로토콜에 기반하여 처리할 수 있다. 무선 통신 프로토콜은3a에 도시된 바와 같이, 어플리케이션 계층(application layer)(310), 전송 계층(transport layer)(320), 네트워크 계층(network layer)(330), 데이터링크 계층(data link layer)(340) 및 물리적 계층(physical layer)(350)이 존재하며, 데이터 링크 계층(340)은 로컬 링크 계층(logical link layer) (341)과 MAC 계층(medium access control layer) (343)으로 구분될 수 있다.
전자 장치(101)는 AP와 송수신되는 데이터(패킷들)를 제1 프로세서(301) 및 제2 프로세서(302)의 제어 하에 처리할 수 있다. 예를 들어, 어플리케이션 계층(310)에서부터 전송 링크 계층(320)를 거쳐 데이터 링크 계층(330)의 로컬 링크 계층(341)에서의 데이터 처리는 제1 프로세서(301)(예: 어플리케이션 프로세서, 메인 프로세서)에 의해 동작되고, 데이터 링크 계층(340)의 MAC 계층(343)에서부터 물리적 계층(350)에서의 데이터 처리는 제2 프로세서(302)(예: 통신 프로세서, 서브 프로세서, 와이파이 칩, 커뮤니케이션 프로세서)에 의해 동작될 수 있다.
일 예로, 제1 프로세서(301)는 3b에 도시된 바와 같이, 어플리케이션 또는 서비스와 관련된 데이터 또는 패킷(예: UL(uplink) packets, outgoing packets)을 어플리케이션 계층(310), 전송 계층(320), 네트워크 계층(330), 로컬 링크 계층(341)을 거쳐 처리한 후, 제2 프로세서(302)로 전달할 수 있다.
제2 프로세서(302)는 제1 프로세서(301)로부터 전달된 데이터 또는 패킷(예: UL(uplink) packets, outgoing packets)을 MAC 계층(343) 및 물리적 계층(350)을 거쳐 처리하고, AP와의 통신 링크(예: wifi link)를 통해 TWT SP(service period)동안 데이터 또는 패킷을 AP로 송신할 수 있다.
다른 예로, 제2 프로세서(302)는 TWT SP(service period)에 AP로부터 수신된 데이터 또는 패킷(DL(downlink) packets, incoming packets)을 물리적 계층(350) 및 MAC 계층(343)을 거쳐 처리하고, 제1 프로세서(301)으로 전달할 수 있다.
제1 프로세서(301)는 제2 프로세서(302)로부터 전달된 데이터 또는 패킷(DL(downlink) packets, incoming packets)을 로컬 링크 계층(341), 네트워크 계층(330), 전송 계층(320) 및 어플리케이션 계층(310)을 거쳐 처리할 수 있다.
예를 들어, 업링크 데이터는 제1 프로세서(301)에서 제2 프로세서(302)로 전달되고, 제2 프로세서(302)에서 AP로 전달될 수 있다. 다운링크 데이터는 AP에서 제2 프로세서(302)로 전달되고, 제2 프로세서(302)에서 제1 프로세서(301)로 전달될 수 있다.
전자 장치(101)는 WLAN환경에서 game, video streaming, conference call, VoIP과 같은 다양한 어플리케이션(application) 또는 서비스가 수행될 수 있다. 이러한 어플리케이션 또는 서비스들은 서도 다른 주기 및 양으로 트래픽(traffic)을 발생시킬 수 있다. 또한, AP와의 무선 링크(에: wi-fi link)의 통신 환경(또는 link condition)에 따라 전송 속도 변화가 발생되고, AP가 몇 개의 다른 전자 장치들과 연결되어 무선 매체가 공유되는지에 따라 트래픽 전송 시간이 달라질 수 있다
전자 장치(101)는, 현재 설정된 TWT 가 실행 중인 어플리케이션 또는 서비스가 요구하는 QoS(quality of service)를 만족하는지를 결정하고 필요 시에 실시간으로 전자 장치(101)의 TWT 파라미터를 갱신하기 위해, TWT 사용 특성을 모니터링할 수 있다. 이러한, TWT 제어 및 모니터링은 고성능 처리가 요구될 수 있다.
제1 프로세서(301)는 제2 프로세서(302)를 거쳐 AP와 통신하므로, 제1 프로세서(301)는 통신 링크(예: wi-fi link) 레벨의 TWT 사용 특성((다시 말해, 제2 프로세서(302)에서 TWT 협상 결과에 따른 네트워크 상황 특성)을 정확하게 확인하기 어려울 수 있다. 이로 인해, 제1 프로세서(301)가TWT 실시간 제어를 위해 통신 링크(예: wi-fi link) 레벨에서의 TWT 사용 특성을 정확하게 모니터링 할 필요가 있다.
전자 장치(101)가 AP와 통신 시에, 제1 프로세서(301)는 TWT 협상과 무관하게 제2프로세서(302)로 데이터가 전달되는 반면에, 제2 프로세서(302)는 AP와 TWT 협상 및 계약에 따른 TWT 사용 특성이 반영된 데이터를 제1 프로세서(301)로 전달될 수 있다.
이하, 다양한 실시 예에 따르면, 제1 프로세서(301)에서 TWT 제어 및 TWT 모니터링 동작을 구현하되, 제 1 프로세서(301)가 TWT 실시간 제어를 위해 통신 링크(예: wi-fi link) 레벨에서의 TWT 인터벌(interval) 및 TWT SP(service period)을 추정하기 위한 동작들에 대해 구체적으로 설명하기로 한다.
도 4는 다양한 실시 예에 따른 전자 장치의 구성을 나타낸 블록도이다.
도 4를 참조하면, 일 실시 예에 따른 전자 장치(예: 도1의 전자 장치(101))는 제1 프로세서(410)(예: 어플리케이션 프로세서, 메인 프로세서), 통신 모듈(430) 및 메모리(440)를 포함할 수 있다. 전자 장치(101)는 도 1의 전자 장치(101)의 구성 및/또는 기능 중 적어도 일부를 더 포함할 수 있으며, 도 1과 중복되는 구성 요소를 포함할 수 있다.
메모리(440)는 제1 프로세서(410) 및 제2 프로세서(420)와 동작적으로 연결될 수 있으며, 1 프로세서(410) 및 제2 프로세서(420)에서 수행될 수 있는 다양한 인스트럭션(instruction)들을 저장할 수 있다. 후술할 제1 프로세서(410) 및 제2 프로세서(420)의 동작들은 메모리(440) 저장된 인스트럭션들을 로딩함으로써 수행될 수 있다.
통신 모듈(430)은, 외부와 데이터 송수신 제어를 위한 제2 프로세서(420)를 포함할 수 있다. 일 예를 들어, 통신 모듈(430)은, wi-fi 통신 방식 중 예를 들어, IEEE 802.11 표준에 기반하여, 외부로부터 통신 신호를 수신하거나, 외부로 통신 신호를 전송할 수 있다. 제2 프로세서(420)는 통신 프로세서, 커뮤니케이션 프로세서, wi-fi 칩셋(chipset)으로 지칭 될 수 있다.
통신 모듈(430)은 와이파이 통신과 동시에 다른 방식의 블루투스(Bluetooth) 통신(또는 저전력 블루투스) 또는 두 전자 장치 간의 거리를 측정하는 UWB(ultra wide band) 통신에 연결될 수 있다. 통신 모듈(430)은 와이파이 통신의 제1 모드(예: 와이파이 스테이션)로 연결되면서 동시에 제2 모드(예: 와이파이 다이렉트, 와이파이 어웨어, 와이파이 핫스팟))로 연결될 수 있다.
제2 프로세서(420)는, 통신 모듈(430)을 제어하여 AP(access point)((예: 도 2의 AP(104))와 통신 링크를 형성할 수 있다. 제2 프로세서(420)는, AP와 협상된 TWT 계약(TWT agreement)에 따라 통신 모듈(190)을 활성화할 수 있다. 예를 들어, 제2 프로세서(420)는 어플리케이션 또는 서비스 특성을 고려하여 결정된 TWT 파라미터를 기반으로 통신 모듈(420)을 활성화할 수 있다.
일 예로서, 제2 프로세서(420)는, 제1 프로세서(410)로부터 전달된 업링크 데이터를 처리(예: MAC 계층 처리 및 물리적 계층 처리)하고, 도 2에 도시되 바와 같이, TWT 시작 타임(start time)에서부터 TWT SP(service period)동안 업링크 데이터를 AP로 전송할 수 있다.
다른 예로서, 제2 프로세서(420)는, TWT 시작 타임에서부터 TWT SP(service period) 동안 AP로부터 수신된 다운링크 데이터를 처리(예: MAC 계층 처리 및 물리적 계층 처리)하고 제1 프로세서(410)로 다운링크 데이터를 전달할 수 있다.
제1 프로세서(410)는, 전자 장치(101)의 전반적인 동작을 수행하고, TWT 제어 및 TWT 모니터링 동작, 통신 모듈(430)을 통해 AP와 통신하는 동작을 제어할 수 있다. 제1 프로세서(120)는 어플리케이션 프로세서(application processor), 메인 프로세서로 지칭될 수 있다.
제1 프로세서(410)는 TWT제어 모듈(415) 및 TWT 모니터링 모듈(417)을 포함할 수 있다. 제1 프로세서(410)는 모듈들(415, 417)을 동작을 제어할 수 있다.
일 실시 예에 따르면, TWT 제어 모듈(415)은 AP와 TAT 협약(예: 협상 및 계약 포함)을 위한 TWT 파라미터를 결정할 수 있다. 예를 들어, 제1 프로세서(410)는 실행 중인 어플리케이션 또는 서비스 타입을 식별하고, 서비스 타입의 QoS(quality of service)에 기반한 TWT(target wake time)에 기초하여 TWT 파라미터를 결정할 수 있다. TWT 파라미터는 서비스 타입 별로 상이하게 결정될 수 있다.
TWT 제어 모듈(415)은 TWT 파라미터를 제2 프로세서(420)로 전달할 수 있다. 제2 프로세서(420)는TWT 파라미터를 기반으로 AP와 TWT 협약을 수행하고 TWT 계약(TWT agreement)을 수행할 수 있다. 제1 프로세서(410)는 TWT 계약 하에, 실행 중인 어플리케이션 또는 서비스와 관련된 업링크 데이터(아웃고잉 패킷들)를 제2 프로세서(420)로 전달하고, 제2 프로세서(420)로부터 AP로부터 수신된 다운링크 데이터(인커핑 패킷들)를 수신할 수 있다.
TWT 모니터링 모듈(417)은, 실행 중인 어플리케이션 또는 서비스와 관련하여 AP와 통신 시 제1 프로세서(410)에서 제2 프로세서(420)로 전달되는 업링크 트래픽에 대해 모니터링할 수 있다.
이와 독립적으로 TWT 모니터링 모듈(417)은, 제2 프로세서(420)에서 제1 프로세서(410)로 전달되는 다운링크 트래픽에 대해 모니터링할 수 있다.
TWT 모니터링 모듈(417)은 다운링크 패킷들의 수신 타임을 무선 링크 레벨의 수신 타임(다시 말해, 제2 프로세서(420)가 AP와 통신한 시점)으로 보정하고, 보정된 다운링크 트래픽을 기반으로 통신 링크(예: wi-fi link) 레벨에서의 TWT 인터벌 및 TWT SP(service period)를 추정할 수 있다.
TWT 모니터링 모듈(417)은 통신 모듈(430)에서 처리된 통신 링크(예: wi-fi link) 레벨에서의 TWT 사용 특성을 확인할 수 있다.
예를 들어, TWT 모니터링 모듈(417)은 추정된 TWT SP(service period) 별로 다운링크의 패킷 수 및 패킷 사이즈(DL packet count and packet size), TWT SP 시작 시간에서부터 마지막 시점까지의 패킷 송수신 시간(SP usage data time), 이전 TWT SP 이후 doze state에 있는 동안 버퍼링된 패킷 수(DL buffered packet count) 및 패킷 사이즈(DL buffered packet size)를 계산하여 기록할 수 있다.
TWT 모니터링 모듈(417)은 추정된 TWT SP에 기반하여 상기 제1 프로세서에서 제2 프로세서로 전달되는 상기 업링크 패킷들에 대해 현재 TWT SP를 위한 업링크 패킷 수(UL packet count)를 및 패킷 사이즈를 기록할 수 있다.
TWT 모니터링 모듈(417)은 기록된 정보들을 분석하여 TWT 사용 특성 정보(예: TWT 사용 통계, 이른 종료(early termination) 시간, 지연 정도(latency), 통신 링크 레벨에서의 패킷 송수신 시간)을 모니터링할 수 있다.
TWT 모니터링 모듈(417)은 모니터링 결과, AP와의 통신과 관련된 TWT 사용 특성 정보를 TWT 제어 모듈(415)로 제공할 수 있다.
TWT 제어 모듈(415)은 TWT 제어 모듈(145)은 TWT모니터링 모듈(417)로부터 전달된TWT 사용 특성 정보를 기반으로 현재 협약된 TWT 계약 하에 설정된 TWT 파라미터가 실행 중인 어플리케이션 또는 서비스가 요구하는 QoS(quality of service)를 만족하는지를 판단(또는 결정)할 수 있다.
일 예로서, TWT 제어 모듈(145)은 버퍼링된 트래픽의 평균 송수신 시간, 버퍼링된 트래픽 전송 구간, TWT SP(service period) 시작시점부터 마지막 시점까지의 패킷 수 또는 제2 프로세서의 mac 계층 처리시 발생되는 레이턴시(latency) 중 적어도 하나에 기반하여 TWT SP(service period)의 지속시간(duration)을 증감할 수 있는지를 분석할 수 있다. TWT 제어 모듈(145)은 분석 결과, 현재 설정된 TWT SP(service period)의 지속시간(duration)을 조절하기 위한 TWT 파라미터를 결정할 수 있다.
다른 예로서, TWT 제어 모듈(145)은 실행 중인 어플리케이션 또는 서비스와 관련하여 필요한 통신 주기, 트래픽 양, 통신 링크 레벨(wi-fi link)단에서의 현재 전송 속도, 회선 경쟁(contention) 정보와 같은 정보를 종합적으로 고려하여 실행 중인 application 혹은 서비스의 QoS 요구사항을 만족할 수 있는 최적의 TWT SP(service period) 및 TWT 인터벌을 설정하기 위한 TWT 파마리터를 결정할 수 있다,
TWT 제어 모듈(145)은 필요 시에 전자 장치(101)의 TWT 파라미터를 갱신 또는 변경하고, 실시간으로 변경된 TWT 파라미터를 제2 프로세서(420)로 전달하고, 제2 프로세서(420)가 AP와 변경된TWT 파라미터로 재협상할 수 있도록 제어할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 도 1의 전자 장치(101))에 있어서, 제1 프로세서(예: 도 1의 메인 프로세서(121), 도 3a의 제1 프로세서(301),도 4의 제1 프로세서(410)), 제2 프로세서(예: 도 3a의 제2 프로세서(302), 도 4의 제2 v프로세서(420))를 포함하는 통신 모듈(예: 도 1 의 통신 모듈(190), 도 4의 통신 모듈(430))) 및 메모리(예: 도 1의 메모리(130), 도 4의 메모리(440))를 포함하고, 상기 메모리는 상기 제1 프로세서가, 상기 액세스 포인트(예: 도 2a의 액세스 포인트(104))와 통신 시에, 제1 TWT 파라미터에 기반한 TWT(target wake time) 계약에 따라 액세스 포인트(access point)와 데이터 송수신을 수행하도록 상기 통신 모듈을 제어하고, 상기 제2 프로세서로부터 수신되는 다운링크 패킷들 또는 상기 제2 프로세서로 전달되는 업링크 패킷들 중 적어도 하나를 모니터링하고, 상기 모니터링된 트래픽 패턴을 이용하여 상기 제2 프로세서에서 처리된 통신 링크 레벨의 TWT 인터벌(interval) 및TWT SP(service period)을 추정하고, 상기 추정된 TWT 인터벌(interval) 및TWT SP에 기반하여 상기 제 1 프로세서에서 동작하는 적어도 하나의 어플리케이션 또는 서비스의 QoS(quality of service)에 적합한 제2 TWT 파라미터로 상기 제1 TWT 파라미터를 갱신하고, 상기 제2 TWT 파라미터를 상기 제2 프로세서로 전달하여 상기 액세스 포인트와 TWT를 재협약하도록 제어하는 인스트럭션들을 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 통신 링크 레벨의 TWT 인터벌(interval) 및 TWT SP(service period)를 추정하기 위해, 상기 다운링크 패킷들에 대해 제1 패킷이 수신된 시점과 제2 패킷이 수신된 시점 사이의 인터 패킷 타임(inter packet time)을 기반으로 제2 프로세서에서 패킷들의 처리 및 전송 시간을 차감하여 상기 다운링크 패킷들의 수신 타임을 제2 프로세서에서의 처리된 통신 링크 레벨에서의 수신 타임으로 보정하고, 상기 통신 링크 레벨에서의 TWT SP들을 추정하여 상기 모니터링된 트래픽 패턴에서 보정된 트래픽 패턴을 확인하도록 하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 다운링크 패킷들에 대해서, 상기 인터 패킷 타임들 중 임계값보다 큰 조건을 만족하는 제1 인터 패킷 타임을 제1 TWT SP와 제2 TWT SP를 구분하는 기준 범위로 지정하고, 상기 인터 패킷 타임이 임계값보다 큰 조건을 만족하지 않는 시점에서의 첫번째 패킷에서부터 마지막 패킷까지는 하나의 TWT SP에 포함하는 패킷들로 결정하는 인스트럭션들을 더 포함하고, 상기 임계값은, 하나의 TWT SP가 시작되는 시점에서부터 다음 TWT SP가 시작되기 전 구간을 나타내는 TWT 인터벌(interval) 시간에서 상기 TWT SP및 기 설정된 제1 마진을 차감한 값인 것을 특징으로 할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 수신된 패킷의 인터 패킷 타임이 상기 임계값보다 큰 경우, 수신된 패킷을 상기 제1 프로세서가 전달 받은 시점에서, mac 계층 데이터 및 물리적 계층 데이터 처리 및 수신에 필요한 시간, 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점으로 보정하고, 상기 수신된 패킷의 인터 패킷 타임이 상기 임계값보다 작은 경우, 수신된 패킷을 전달 받은 시점에서, mac 계층 데이터 수신에 필요한 시간과 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점으로 보정하도록 하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 제1 TWT SP와 제2 TWT SP사이의 도즈 상태(dose state)에서 버퍼링된 패킷들의 전송 구간을 구분하고, 생략된 TWT SP들을 검출하고, 검출된 수만큼 TWT SP의 인덱스를 증가시켜 상기 보정된 트래픽 패턴을 확인하도록 하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 보정된 트래픽 패턴을 기반으로 패킷들의 인터 패킷 타임이 상기 임계 값 보다 큰 제1 조건 및 현재 패킷 타임에서 이전 패킷 타임(previous packet time, first packet time)을 차감한 시간이 TWT SP에서 설정된 제2마진을 차감한 시간보다 큰 제2 조건을 기반으로 상기 생략된 TWT SP들을 검출하도록 하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 제1 조건 및 상기 제2 조건을 둘 다 만족하는 인터 패킷 타임을 상기 TWT 인터벌(interval)로 나누어 생략된 TWT SP가 몇 개 있는지를 검출하고, 상기 검출된 수 만큼 TWT SP들의 인덱스(index)를 증가하도록 하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임은 임계값보다 큰지를 결정하고, 상기 임계값보다 큰 경우, 현재TWT SP가 종료된 것으로 추정하고, 상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임 시점에 수신된 패킷들은 다음 TWT SP의 버퍼링된 패킷 수(DL buffered packet count) 및 패킷 사이즈(DL buffered packet size)에 증가시키고, 상기 현재 TWT SP 내에 수신된 다운링크 패킷 수 및 사이즈를 기록하도록 하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임이 상기 임계값보다 작은 경우 현재TWT SP가 종료되지 않은 것으로 추정하고 현재TWT SP에서의 다운링크의 패킷 수 및 패킷 사이즈를 기록하도록 하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 통신 링크 레벨의 TWT 인터벌(interval) 및TWT 서비스 기간(service period)을 추정하기 위해, 추정된 TWT SP에 기반하여 상기 제1 프로세서에서 제2 프로세서로 전달되는 상기 업링크 패킷들에 대해 현재 TWT SP를 위한 업링크 패킷 수를 및 패킷 사이즈를 기록하도록 하는 인스트럭션들을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 메모리는, 상기 제1 프로세서가, 상기 다운링크 패킷들의 수신 타임의 보정 및 상기 통신 링크 레벨에서의 TWT 서비스 기간(service period)들을 추정하여 TWT SP 별로 다운링크의 패킷 수 및 패킷 사이즈(DL packet count and packet size), TWT SP 시작 시간에서부터 마지막 시점까지의 패킷 송수신 시간(SP usage data time), 이전 TWT SP 이후 도즈 상태(doze state)에 있는 동안 버퍼링된 패킷 수(DL buffered packet count) 및 패킷 사이즈(DL buffered packet size), 업링크 패킷 카운트(UL packet count)를 계산하고, 상기 계산된 정보들을 분석하여 상기 TWT 사용 특성 정보를 확인하도록 하는 인스트럭션들을 더 포함하고, 상기 TWT 사용 특성 정보는, TWT 사용 통계, 이른 종료(early termination) 시간, 지연 정도(latency), 통신 링크 레벨에서의 패킷 송수신 시간 중 적어도 하나를 포함하는 것을 특징으로 할 수 있다.
도 5는 다양한 실시 예에 따른 TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치에서 TWT(target wake time)를 제어하는 방법을 나타낸다.
도 5를 참조하면, 일 실시 예에 따른 전자 장치(101)는 510동작에서, 제1 프로세서(501)가 외부 네트워크와의 통신 서비스 실행 요청을 수신할 수 있다.
예를 들어, 제1 프로세서(501)는 게임(game), 비디오 스트리밍(video streaming), 컨퍼런스 콜(conference call), VoIP(voice over internet protocol)와 같은 외부 네트워크 연결이 필요한 어플리케이션 또는 서비스를 실행을 요청하는 사용자 입력에 반응하여 통신 서비스를 실행할 수 있다.
일 예를 들어, 전자 장치(101)는 와이파이 통신에 기반하여 AP와 통신 동작을 수행할 수 있다.
520 동작에서 제1 프로세서(501)는, 어플리케이션 또는 서비스의 QoS(quality of service) 요구 사항에 따라 초기 TWT 파라미터를 결정할 수 있다.
TWT 파라미터는, TWT 설정 정보(TWT settings)를 의미하며, TWT ID(identificaiotn), TWT에 할당된 서비스 타입(예: VO(voice), VI(video), BE(best effect) 및 BK(background)), TWT가 시작되는 시점(wake time), TWT SP(service period or duration)(다시 말해, TWT가 시작되는 시점에서 종료되는 시점까지의 시간), 및/또는 TWT 인터벌(interval)(다시 말해, TWT가 시작되고 다음 TWT가 시작되기까지의 기간)을 포함할 수 있다.
525 동작에서, 제1 프로세서(501)는, 결정된 TWT 파라미터를 통신 모듈의 제2 프로세서(502)로 전달할 수 있다.
530 동작에서, 제2 프로세서(502)는, TWT 파라미터에 기초하여 AP와 협약(예: 협상 및 확정)하여 TWT 계약을 수행할 수 있다.
일 예를 들어, 제2 프로세서(502)는 TWT 파라미터에 기반하여 TWT 설정을 요청할 수 있다. AP는 전자 장치(101)로부터 요청된 TWT 설정 요청에 따라 TWT 스케줄링하여 요청을 승인하거나 거부할 수 있다. 제2 프로세서(502)는, AP의 승인(예: accept TWT)에 따라 TWT계약을 완료할 수 있다.
전자 장치(101)는 TWT 계약 하에 AP와 데이터 송수신할 수 있다. 전자 장치(101)의 제1 프로세서(501)는 제2프로세서(502)를 통해 업링크 데이터를 AP로 전송하거나 AP로부터 다운링크 데이터를 수신할 수 있다.
업링크 데이터와 다운링크 데이터는 순서와 무관하게 송수신될 수 있다.
일 예로서, 540 동작에서, 제1 프로세서(501)가 TWT 계약 하에, 업링크 데이터를 AP로 송신하도록 제2 프로세서(502)로 전달할 수 있다. 545 동작에서, 제2 프로세서(502)는, 업링크 데이터를 처리(예: mac 계층 처리 및 물리적 계층 처리)하고 TWT 계약에 따라 TWT 시작 시간에서 TWT SP(service period)동안 업링크 데이터로 AP로 전달할 수 있다. 제2 프로세서(502)는 TWT 인터벌로 활성화되어 업링크 데이터를 TWT SP(service period) 동안 AP로 전달할 수 있다.
다른 예로서, 업링크 데이터와 무관하게 550 동작에서, 제2 프로세서(502)는, AP로부터 TWT 시작 시간에서 TWT SP(service period)동안 다운링크 데이터를 수신할 수 있다.
555 동작에서, 제2 프로세서(502)는 다운링크 데이터를 처리(예: 물리적 계층 처리 및 mac 계층 처리)할 수 있다. 일 예로서, 제2 프로세서(502)는 다운링크 데이터를 물리적 계층 및 mac계층(도 3 참조)에서 처리할 수 있다. 제2 프로세서(502)는AP로부터 전달된 다운링크 데이터(예: 다운링크 패킷들)에 포함된 물리 계층의 개체(entity)(예: PHY preamble)를 처리하고, mac 계층의 개체(예: mac header)를 처리할 수 있다.
제2 프로세서(502)는 데이터 타입에 따라 다운링크 패킷들의 어그리게이션(aggregation)을 수행하거나 수행하지 않을 수 있다. 예를 들어, 제2 프로세서(502)는 데이터 타입에 따라 mac 계층에서 MPDU(mac protocol data unit) 또는 복수의 MPDU를 어그리게이션한 A-MPUD(aggregated MPDU) 또는 복수의 MSDU(mac service data unit)를 어그리게이션한 A-MSDU(aggregated MSDU) 중 적어도 하나를 생성할 수 있다.
일 예로서, 제2 프로세서(502)는 어그리게이션(aggregation)을 수행 시 MPDU(mac protocol data unit)를 생성할 수 있다. 다른 예로서, 제2 프로세서(502)는 전체 페이로드(payload)가 일정 길이보다 작은 경우A-MSDU(aggregated MSDU)를 생성할 수 있다.
560 동작에서, 제2 프로세서(502)는 mac 계층에서 처리된 다운링크 데이터(예: 다운링크 패킷들)를 제1 프로세서(501)로 전달할 수 있다.
565 동작에서, 제1 프로세서(501)는, 제2 프로세서(501)로부터 전달된 다운링크 데이터를 처리할 수 있다. 예를 들어, 제1 프로세서(501)는, 다운링크 데이터의 페이로드 데이터(payload)를 incoming packet으로 처리할 수 있다.
570 동작에서, 제1 프로세서(501)는 업링크 트래픽과 다운링크 트래픽을 모니터링하고 통신 링크 레벨에서의 TWT 사용 특성(예: TWT 인터벌 및 TWT SP(service period))을 추정할 수 있다. 업링크 트래픽은 제1 프로세서(501)에서 제2 프로세서(502)로 전달되는 업링크 데이터들의 전송량을 의미하며, 다운링크 트래픽은 제2 프로세서(502)로부터 제1 프로세서(501)로 전달되는 다운링크 데이터들의 전송량을 의미할 수 있다. 제1 프로세서(501)는 병렬적으로 또는 순서와 무관하게 업링크 트래픽을 모닝터링하거나 다운링크 트래픽을 모니터링할 수 있다.
모니터링 동작을 설명하면, 571 동작에서, 제1 프로세서(501)는 제2 프로세서(502)로부터 수신되는 다운링크 데이터(또는 incoming packet)을 이용하여 다운링크 트래픽을 모니터링하여 TWT 인터벌 및 TWT SP를 추정할 수 있다.
보다 상세하게는, 제1 프로세서(501)는 다운링크 패킷들의 인터 패킷 타임(inter packet time)에 기초하여 패킷들의 수신 타임을 통신 링크 레벨에서 수신된 시점으로 보정할 수 있다. 인터 패킷 타임(inter packet time)은 초기 패킷이 수신되고 다음 패킷이 수신된 시간 차이를 의미할 수 있다.
제1 프로세서(501)는, 다운링크 패킷의 페이로드 데이터(payload)를 incoming packet으로 처리하기 때문에, 제2 프로세서(502)에서 물리 계층 및 mac 계층 개체를 처리한 상황 정보를 예를 들어, 물리 계층 및 맥 계층 개체를 처리한 시간, 어그리게이션 여부, 어그리게이션 종류와 같은 정보를 확인할 수 없다.
제1 프로세서(501)는, 인터 패킷 타임을 임계값과 비교하여 제2 프로세서(502)가 다운링크 패킷들에 대해 mac 계층에서 어그리게이션을 수행했는지 여부를 추정하고, 어그리게이션 수행 여부에 따라 패킷 수신 타임을 통신 링크 레벨에서 수신된 시점에 대한 보정을 상이하게 처리할 수 있다.
일 예로서, 제1 프로세서(501)는 제2 프로세서(502)로부터 전달된 다운링크 패킷들의 인터 패킷 타임을 기반으로 다운링크 트래픽 패턴(또는 트래픽 스트림, 트래픽 양상)의 시간을 제2 프로세서(501)가 통신 링크를 통해 수신된 시점의 트래픽 패턴(또는 트래픽 스트림, 트래픽 양상)의 시간으로 보정할 수 있다.
일 제1 프로세서(501)는 보정된 트래픽 패턴에서, TWT 인터벌 및 TWT SP(service period)들을 추정하여 TWT SP(service period) 별로 트래픽 패턴을 기록할 수 있다.
다른 예로서, 제1 프로세서(501)는, 도즈 상태(doze state) 에서 버퍼링된 패킷들을 전송 구간을 추정하여 생략된 TWT SP(skipped TWT SP)를 검출할 수 있다. 예를 들어, 제1 프로세서(501)는 보정된 트래픽 패턴을 기반으로 인터 패킷 타임이 임계 값 보다 큰 제1 조건(예 inter packet time > (interval-duration) - α(margin1)) 및 현재 패킷 타임(예: current packet time, second packet time)에서 이전 패킷 타임(previous packet time, first packet time)을 차감한 시간이 TWT 주기에서 TWT 주기 - β(margin2)를 차감한 시간보다 큰 제2 조건(예: first pack packet - current packet time > duration - β(margin 2))을 기반으로 생략된 TWT SP(skipped TWT SP)가 존재하는지를 검출할 수 있다.
571 동작 순서와 무관하게, 573 동작에서, 제1 프로세서(501)는 제2 프로세서(502)로 전달하는 업링크 데이터(또는 outcoming packet)을 이용하여 업링크 트래픽을 모니터링하여 TWT 인터벌 및 TWT SP(service period)를 추정할 수 있다.
제1 프로세서(501)는 다운링크 트래픽을 통해 추정된 TWT SP(service period) 마다 업링크 트래픽을 기록할 수 있다. 제1 프로세서(501)는 제2 프로세서(502)로 푸쉬(puch)되는 시점에 업링크 트래픽을 기록할 수 있다. 제1 프로세서(501)는 추정된 TWT SP 및 트래픽 패턴을 통해 TWT SP 별로 다운링크의 패킷 수 및 패킷 사이즈(DL packet count and packet size), TWT SP 시작 시간에서부터 마지막 시점까지의 패킷 송수신 시간(SP usage data time), 이전 TWT SP 이후 doze state에 있는 동안 버퍼링된 패킷 수(DL buffered packet count), 패킷 사이즈(DL buffered packet size), 업링크 패킷 수(UL packet count) 및/또는 업 링크 패킷 사이즈 중 적어도 하나를 계산하여 기록할 수 있다.
575 동작에서 제1 프로세서(501)는 다운링크 트래픽 또는 업링크 트래픽 모니터링을 통해 기록된 TWT정보들을 분석하여 통신 링크 레벨의 TWT 사용 특성 예를 들어, TWT 사용 통계, 이른 종료(early termination) 시간, 지연 정도(latency), 통신 링크 레벨에서의 패킷 송수신 시간을 확인할 수 있다.
580동작에서, 제1 프로세서(501)는, 통신 링크 레벨의 TWT 사용 특성 정보를 기반으로 TWT 파라미터를 갱신할 수 있다.
일 실시예에 따르면, 제1 프로세서(501)는 제TWT 사용 특성 정보를 기반으로 현재 협약된 TWT 계약 하에 설정된 TWT 파라미터가 실행 중인 어플리케이션 또는 서비스가 요구하는 QoS(quality of service)를 만족하는지를 판단하여TWT 파라미터를 갱신할지 여부를 결정할 수 있다.
585 동작에서, 제1 프로세서(501)는, 갱신된 TWT 파라미터를 제2 프로세서(502)로 전달할 수 있다,
590 동작에서, 제2 프로세서(502)는 갱신된 TWT 파라미터를 기반으로AP와 재협약(예: 협상 및 계약)할 수 있다.
도 6a는 다양한 실시 예에 따른 TWT 모니터링 동작을 설명하는 흐름도이다. 도 6b는 도 6a의 패킷 타임 보정 동작(A)을 구체적으로 설명하는 흐름도이며, 도 6c는 도 6의 TWT 서비스 시간 추정 동작(B)을 구체적으로 설명하는 흐름도이다.
도 6a내지 6c를 참조하면, 일 실시 예에 따른 전자 장치(예: 도 1의 전자 장치(101))의 제1 프로세서(예: 도 1의 프로세서(120), 도 3의 제1 프로세서(301), 도 4의 제1 프로세서(410), 도 5의 제1 프로세서(501))(또는 TWT모니터링 모듈(예: 도 4의 TWT 모니터링 모듈(417))은 610동작에서, AP와 계약된 TWT에 기반하여 통신을 수행하도록 제어할 수 있다.
620 동작에서, 제1 프로세서(410,501)는 제2 프로세서(예: 도 4의 제2 프로세서(420), 도 5의 제2 프로세서(502))가 AP와 TWT 계약 하에 송수신하는 TWT 특성을 확인하기 위해, 제2 프로세서와 송수신되는 데이터를 다운링크 트래픽(DL(downlink) traffic)을 모니터링하고, 업링크 트래픽 (UL(uplink) traffic)을 모니터링할 수 있다.
다운링크 트래픽 모니터링은 630 동작에서, 제1 프로세서(410,501)가 제2 프로세서(420,502)로부터 전달되는 다운링크 패킷들에 대해 수신 패킷 타임을 무선 링크 레벨의 수신 타임(다시 말해, 제2 프로세서(420)가 AP로부터 패킷을 수신하는 타임)으로 보정할 수 있다.
예를 들어, 제1 프로세서(410,501)는 다운링크 패킷들의 인터 패킷 타임(inter packet time)을 기반으로 도 6b의 알고리즘을 이용하여 다운링크 데이터 패킷들의 수신 타임을 보정할 수 있다. 인터 패킷 타임(inter packet time)은 수신 패킷(first packet)과 다음 수신된 패킷(second packet) 차이를 지칭할 수 있다. 제1 프로세서(410,501)는 각각의 패킷 단위 별로 수신 패킷의 시간 보정을 수행할 수 있다.
640 동작에서, 제1 프로세서(410,501)는 무선 링크 레벨의 수신 타임으로 보정된 트래픽 패턴을 기반으로 TWT SP(service period)들을 추정할 수 있다.
제1 프로세서(410,501)는 하나의 TWT SP가 끝나고 새로운 TWT SP가 시작되는 시점 사이의 구간의 인터 패킷 타임(710)을 이전 TWT SP와 다음 TWT SP로 구분하는 기준으로 선택할 수 있다. 하나의 TWT SP가 끝나는 시점과 새로운 TWT SP가 시작되는 시점 사이의 인터 패킷 타임(710)(예: 도즈 상태에서의 인터 패킷 타임)은 wake TWT interval에서 TWT SP(및 α(margin1))포함)를 뺀 구간일 수 있다.
제1 프로세서(410,501)는 다운링크 패킷들을 인터 패킷 타임에 기반하여 통신 링크 레벨에서의 TWT SP들을 추정하여 SP별로 패킷들의 TWT 사용 특성(또는 패킷 통계)을 기록할 수 있다. 한편, TWT 특성 상 이전 TWT SP 이후 도즈 상태(doze state)에 있는 동안 패킷들이 버퍼링될 수 있다.
제1 프로세서(410,501)는 도즈 상태(doze state) 에서 버퍼링된 패킷들의 전송 구간을 구분하여 생략된 TWT SP(skipped TWT SP)를 검출할 수 있다. 예를 들어, 제1 프로세서(410,501)는 다운링크 패킷들의 인터 패킷 타임(inter packet time)을 기반으로 도 6c의 알고리즘을 이용하여 생략된 TWT SP(skipped TWT SP)가 존재하는지, 현재 수신된 패킷이 통신 링크 레벨에서 이번 TWT SP 에 수신된 패킷인지 다음 TWT SP 에 수신된 패킷인지 여부를 검출할 수 있다.
제1 프로세서(410,501)는 도즈 상태(doze state)에 있는 동안 버퍼링되는 패킷들을 추정하기 위해 TWT SP 내에서 첫번째 패킷 시점부터 시작하여 처음으로 인터 패킷 타임이 임계값 이상인 패킷 시점까지를 버퍼링된 패킷들의 전송 구간으로 설정할 수 있다.
제1 프로세서(410,501)는 제1 조건(예: inter packet time > (interval - TWT SP duration) - α(margin1))과 제2 조건(예: first packet time in an SP - current packet time > TWT SP duration - β(margin2))를 이용하여 먼저 SP 바운더리(boundary)를 검출하고, 인터 패킷 타임(inter packet time)을 인터벌(interval)로 나누어서 생략된 SP(skipped SP)가 몇 개가 있는지를 검출하여 SP들을 추정할 수 있다. 여기서, α(margin1) 및 β(margin2)는 다양한 환경에서 테스트를 통해 적절한 값이 설정될 수 있다. 예를 들어, α(margin1) 및 β(margin2)는 차감 형태가 아니라. 0에서 1사이의 weight를 곱함으로써 margin을 주는 것과 동한 효과를 제공할 수 있다.
다운링크 트래픽 모니터링과 독립적으로, 업링크 트래픽 모니터링은 650 동작에서, 제1 프로세서(410,501)가 추정된 TWT SP에 기반하여 제1 프로세서에서 제2 프로세서(420,502)로 전달되는 업다운 패킷들에 대해 현재 TWT SP을 위한 패킷 수 및 사이즈를 기록할 수 있다.
이하, 수신 패킷을 보정하는 630 동작의 알고리즘을 보다 구체적으로 설명하면, 제1 프로세서(410,501)는 도 6b에 도시된 바와 같이, 631 동작에서, 제2 프로세서(410,502)로부터 수신된 다운로드 패킷의 인터 패킷 타임이 임계값(예: (TWT인터벌- TWT 주기) + α (margin1))보다 큰 지를 결정할 수 있다.
제1 프로세서(410,501)는 인터 패킷 타임이 임계값(예: (TWT인터벌- TWT 주기) + α (margin1))보다 큰 경우, 제1 프로세서(501)에서 수신된 패킷에 대해 제2 프로세서(502)에 의해 어그리게이션을 수행하지 않은 패킷으로 추정하고, 인터 패킷 타임이 임계값(예: (TWT interval- TWT SP duration) - α (margin1))보다 작은 경우, 제1 프로세서(410,501)에서 수신된 패킷에 대해 제2 프로세서(420,502)에 의해 어그리게이션(502)을 수행한 패킷 묶음으로 추정할 수 있다.
632 동작에서, 제1 프로세서(410,501)는 인터 패킷 타임이 임계값(예: TWT interval - TWT SP duration - α(margin1))보다 큰 경우, 수신된 패킷을 전달 받은 시점(다시 말해, 패킷 수신 타임)에서, mac 계층 데이터 및 물리적 계층 데이터 처리 및 수신에 필요한 시간, 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점(다시 말해, 제2 프로세서가 AP로부터 수신된 시점)으로 보정할 수 있다. 예를 들어, 어그리게이션된 패킷 묶음(예: A-MPDU 타입)으로 추정된 경우, 제1 프로세서(410,501)는, 첫번째 패킷에 PHY 및 MAC header 처리 시간을 고려하여 수신 시간을 보정하고 그 이후의 패킷들은 MAC header 처리 시간을 고려하여 패킷들의 수신 시간을 보정할 수 있다.
633 동작에서, 제1 프로세서(410,501)는 인터 패킷 타임이 임계값(예: TWT interval - TWT SP duration- α(margin1))보다 작은 경우, 수신된 패킷을 전달 받은 시점에서, mac 계층 데이터 수신에 필요한 시간과 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점(다시 말해, 제2 프로세서가 AP로부터 수신된 시점)으로 보정할 수 있다. 예를 들어, 어그리게이션 되지 않는 패킷으로 추정된 경우, 제1 프로세서(410,501)는, 모든 패킷들에 대해 PHY 및 MAC header처리시간을 고려하여 패킷들의 수신 시간을 보정할 수 있다. 634 동작에서, 제1 프로세서(410,501)는 제2 프로세서로부터 다운링크를 통해 수신된 패킷들에 기초하여 통신 링크 레벨(다시 말해, 제2 프로세서(530)가 AP와 통신 시에 다운링크를 통해 수신된 시점)로 보정된 트래픽 패턴을 확인할 수 있다.
제1 프로세서(410,5010)가 TWT SP들을 추정하는 640의 동작의 알고리즘을 보다 구체적으로 설명하면, 도 6c에 도시된 바와 같이, 제1 프로세서(410,501)는 641 동작에서, 수신된 패킷들에 대해 제1 조건(예: inter packet time > (interval - TWT SP duration) - α(margin1))과 제2 조건(예: first packet time in an SP - current packet time > TWT SP duration - β(margin2))를 만족하지를 결정할 수 있다.
642 동작에서, 제1 프로세서(410,501)는 제1 조건 및 제2 조건을 둘 다 만족하는 인터 패킷 타임을 추정된 TWT 인터벌(interval)로 나누어 생략된 TWT SP(skipped TWT SP)가 몇 개 있는지를 검출하고, 생략된 TWT SP(skipped TWT SP)의 수 만큼TWT SP 인덱스(index)를 증가시킬 수 있다.
643 동작에서, 제1 프로세서(410,501)는 현재 TWT SP (예: 제N TWT SP, N 은 정수)내에 첫번째 패킷 타임으로서, 현재 패킷 타임을 기록할 수 있다.
644 동작에서, 제1 프로세서(410,501)는 TWT SP(예: 제N TWT SP)내에서 수신되는 패킷들에 대해 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임이 임계값(예: TWT interval - TWT SP duration - α(margin1))) 보다 큰지를 결정할 수 있다.
645 동작에서, 제1 프로세서(410,501)는 수신 패킷들에 대해 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임이 임계값(예: TWT interval - TWT SP duration - α(margin1)))보다 큰 경우, TWT SP 이 종료된 것으로 추정하고, 인터 패킷 타임이 임계값보다 큰 시점 이전에 수신된 패킷들을 현재 TWT SP(예: 제1 TWT SP)내에 포함된 다운링크 패킷 수 및 사이즈로 기록할 수 있다. 아울러, 인터 패킷 타임이 임계값보다 큰 시점 이후에 수신된 패킷들은 TWT SP에서 도즈 상태(doze state)에 있는 동안 버퍼링된 패킷 수(DL buffered packet count) 및 패킷 사이즈에 증가시킬 수 있다.
646 동작에서, 제1 프로세서(410,501)는 수신 패킷들에 대해 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임이 임계값(예: TWT interval - TWT SP duration - α(margin1)))보다 작은 경우, TWT SP가 종료되지 않은 것으로 추정하고, 수신된 패킷들을 현재 TWT SP 에 다운링크 패킷 수 및 사이즈로 증가시켜 기록할 수 있다. 경우에 따라 이전 도즈 상태(doze state)에 있는 동안 수신된 패킷들이 존재하는 경우 버퍼링된 패킷 수(DL buffered packet count) 및 버퍼링된 패킷 사이즈에 기록될 수도 있다.
예를 들어, 인터 패킷 타임이 임계값보다 큰 시점을 기점으로 이전에 수신된 패킷들은 이전 TWT SP 에 포함되고, 이후 패킷들은 다음 TWT SP에 포함될 수 있다. 다음 TWT SP 시작 시간부터 처음으로 인터 패킷 타임이 임계값 이상이 되는 시점이 버퍼링된 패킷을 구분하는 시점이 될 수 있으며, 다음 TWT SP 시작 시간부터 버퍼링된 패킷을 구분하는 시점까지 수신된 패킷들은 다음 TWT SP에서 버퍼링된 패킷 수 및 사이즈로 기록될 수 있다.
도 7은 일 실시 예에 따른 다운링크 패킷들의 트래픽 패턴을 나타내며, 도 8은 일 실시 예에 따른 TWT SP추정 시 생략된 TWT SP(skipped TWT SP)가 발생될 수 있는 상황을 도시한다.
도 7및 도 8을 참조하면, 일 예를 들어, 제1 프로세서(410,501)는 제2 프로세서(420,502)로부터 <7001>에 도시된 바와 같은 트래픽 패턴을 갖는 다운링크 데이터를 수신할 수 있다.
제1 프로세서(410,501)는 하나의 TWT SP가 끝나고 새로운 TWT SP가 시작되는 시점 사이의 구간의 인터 패킷 타임(710)을 이전 TWT SP와 다음 TWT로 구분하는 기준으로 선택할 수 있다.
하나의 TWT SP가 끝나고 새로운 TWT SP가 시작되는 시점 사이의 구간의 인터패킷 타임(710)(예: 도즈 상태에서의 인터 패킷 타임)은 wake TWT interval에서 TWT SP duration (및 α(margin1))포함)를 뺀 구간일 수 있다. 제1 프로세서(410,501)는 하나의 TWT SP가 끝나고 새로운 TWT SP가 시작되는 시점 사이의 구간의 인터 패킷 타임(710)을 이전 TWT SP와 다음 TWT로 구분하는 기준으로 선택할 수 있다.
제1 프로세서(410,501)는 도즈 상태(doze state)에 있는 동안 버퍼링되는 패킷들을 추정하기 위해TWT SP 내에서 첫번째 패킷 시점부터 시작하여 처음으로 인터 패킷 타임이 임계값 이상인 패킷 시점까지를 버퍼링된 패킷들의 전송 구간으로 설정할 수 있다. 그러나, 도 8에 도시된 바와 같이, 인터 패킷 타임을 TWT인터벌에서 TWT SP을 차감한 기준으로 추정하는 경우, 제1 TWT SP(810)와 제2 TWT SP(820) 사이에 생략된 TWT SP(skipped TWT SP)(830)가 발생될 수 있다.
일 실시예에 따르면, 제1 프로세서(410,501)는 제1조건(예: inter packet time > (interval - TWT SP duration) - margin1)과 조건2(예: first packet time in an SP - current packet time > TWT SP duration - margin2 )를 이용하여 먼저 SP 바운더리(boundary)를 검출하고, 인터 패킷 타임(inter packet time)을 인터벌(interval)로 나누어서 생략된 SP(skipped SP)들이 몇 개가 있는지를 검출하여 SP들을 추정할 수 있다.
<7002>는 제1 프로세서(502)가 인터 패킷 타임을 기반으로 통신 링크 레벨의 수신 시점(예: 제2 프로세서가AP로 수신된 시점)으로 보정한 트래픽 패턴을 나타내는 예시일 수 있다. <7002>에 도시된 바와 같이, 제1 프로세서(501)는 통신 링크 레벨로 보정된 트래픽 패턴을 통해 7th 패킷(710)과 8th 패킷(720) 사이의 인터 패킷 타임이 임계값보다 큰 것으로 확인하고, 7th 패킷(710)과 8th 패킷(720) 사이의 인터 패킷 타임을 TWT 서비스 시간(SP)을 구분하는 기준(criterion)으로 결정할 수 있다. 제1 프로세서(501)는, 1st 패킷(730)과 7th 패킷(710) 사이를 통신 링크 레벨의 TWT 서비스 시간(SP)으로 확인하고, 7th 패킷(710)과 8th 패킷(720) 사이를 doze state 상태로 추정하여 다운링크에 대해 통신 링크 레벨(다시 말해, 제2 프로세서가 AP로부터 패킷들을 수신한 시점)의 트래픽 패턴을 확인할 수 있다.
도 9는 일 실시예에 따른 TWT 동작을 활용한 통신 공존(coexistence) 상황을 도시한다.
도 9 를 참조하면, 전자 장치(101)는 다중 통신 연결 서비스(connectivity)를 지원할 수 있다. 예를 들어, 다중 통신 연결 서비스(connectivity)는 와이파이 통신, 블루투스 통신 및 UWB(ultra wide band) 통신을 지원하며, 서로 다른 통신 연결 간에 간섭 없이 동작할 수 있도록 공존(coexistence)할 수 있다.
다른 예를 들어, 전자 장치(101)는 와이파이 통신에 있어서도 전자 장치(101)와 AP(104)간 복수의 연결 모드(예: 모바일 기기간 대용량 미디어 공유를 위한 Wi-Fi direct, 인접 기기간 discovery 및 서비스 그룹 구성을 가능하게 하는 Wi-Fi aware 혹은 NAN (neighbor awareness networking), cellular network을 통한 인터넷 연결을 주변 단말과 공유하는 Wi-Fi mobile hotspot)를 지원하며, 서로 다른 모드들도 간섭 없이 동작할 수 있도록 공존(coexistence)할 수 있다.
일 실시예에 따른 전자 장치(101)는 TWT 모니터링을 통해 공존(coexistence) 동작의 성능을 향상시킬 수 있다. 일 예로서, 전자 장치(101)는 제1 통신(예: 와이파이)(910)을 AP와 연결될 수 있으며, 제2 통신(예: 블루투스, UWB)(920)을 통해 다른 장치와 연결될 수 있다. 다른 예로서, 전자 장치(101)는 제1 모드(예: wifi station)를 통해 AP와 연결될 수 있으며, 제2 모드(에: Wi-Fi aware, NAN(neighbor awareness networking) 또는Wi-Fi hotspot, )를 통해 AP와 연결될 수 도 있다.
전자 장치(101)는 AP와 제1 통신(910)을 수행하는 경우, TWT 협상 시에 매 인터벌마다 TWT SP duration을 협의하여 동작할 수 있다. 전자 장치(101)은 915와 같은 TWT SP duration 및 TWT interval에 기반하여 제1 통신(910)을 수행하며, 모니터링을 통해 실행 중인 어플리케이션, 링크 레이어(link layer) 상태에 따른 TWT 사용 특성을 확인할 수 있다. 전자 장치(101)는 링크 레벨 에서의 TWT 사용 성능을 확인할 수 있으므로, 제1 통신을 사용하지 않는 구간(예: doze state)에서 제1 통신과 다른 제2 통신(920)을 통해 서비스 기간(925) 및 인터벌을 설정하여 외부 전자 장치와 데이터 송수신을 수행함으로써, 보다 효율적인 공존(coexistence)동작이 가능할 수 있다.
다양한 실시예에 따르면, 전자 장치(예: 도 1의 전자 장치(101))에서 TWT(target wake time)를 제어하는 방법에 있어서, 제1 프로세서(예: 도 1의 메인 프로세서(121), 도 3a의 제1 프로세서(301), 도 4의 제1 프로세서(410))가 제1 TWT 파라미터에 기반한 TWT(target wake time) 계약에 따라 액세스 포인트(access point)와 데이터 송수신을 수행하도록 통신 모듈을 제어하는 동작, 상기 액세스 포인트와 통신 시에, 상기 통신 모듈에 포함된 제2 프로세서(예: 도 3a의 제2 프로세서(302), 도 4의 제2 프로세서(420))와 통신 데이터를 송수신하는 동작, 상기 제1 프로세서가 상기 제2 프로세서로부터 수신되는 다운링크 패킷들 또는 상기 제2 프로세서로 전달되는 업링크 패킷들 중 적어도 하나를 모니터링하고, 상기 모니터링된 트래픽 패턴을 이용하여 상기 제2 프로세서에서 처리된 통신 링크 레벨의 TWT 인터벌(interval) 및TWT SP(service period)을 추정하는 동작, 상기 추정된 TWT 인터벌(interval) 및TWT SP에 기반하여 상기 제 1 프로세서에서 동작하는 적어도 하나의 어플리케이션 또는 서비스의 QoS(quality of service)에 적합한 제2 TWT 파라미터로 상기 제1 TWT 파라미터를 갱신하는 동작 및 상기 제2 TWT 파라미터를 제2 프로세서로 전달하여 상기 액세스 포인트와 TWT를 재협약하도록 제어하는 동작을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 통신 링크 레벨의 TWT 인터벌(interval) 및TWT SP(service period)를 추정하는 동작은, 상기 다운링크 패킷들에 대해 제1 패킷이 수신된 시점과 제2 패킷이 수신된 시점 사이의 인터 패킷 타임(inter packet time)을 기반으로 제2 프로세서에서 패킷들의 처리 및 전송 시간을 차감하여 다운링크 패킷들의 수신 타임을 제2 프로세서에서의 통신 링크 레벨에서의 수신 타임으로 보정하고 상기 통신 링크 레벨에서의 TWT SP들을 추정하여 상기 상기 모니터링된 트래픽 패턴에서 보정된 트래픽 패턴을 확인하는 동작을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 보정된 트래픽 패턴을 확인하는 동작은, 상기 다운링크 패킷들에 대해서, 상기 인터 패킷 타임들 중 임계값보다 큰 조건을 만족하는 제1 인터 패킷 타임을 제1 TWT SP와 제2 TWT SP를 구분하는 기준 범위로 지정한 후, 상기 인터 패킷 타임이 임계값보다 큰 조건을 만족하지 않는 시점에서의 첫번째 패킷에서부터 마지막 패킷까지는 하나의 TWT SP에 포함하는 패킷들로 결정하는 동작, 상기 수신된 패킷의 인터 패킷 타임이 상기 임계값보다 큰 경우, 수신된 패킷을 상기 제1 프로세서가 전달 받은 시점에서, mac 계층 데이터 및 물리적 계층 데이터 처리 및 수신에 필요한 시간, 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점으로 보정하는 동작 및 상기 수신된 패킷의 인터 패킷 타임이 상기 임계값보다 작은 경우, 수신된 패킷을 전달 받은 시점에서, mac 계층 데이터 수신에 필요한 시간과 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점으로 보정하는 동작을 더 포함하며, 상기 임계값은, 상기 하나의 TWT SP가 시작되는 시점에서 다음 TWT SP가 시작되기 전 구간을 나타내는 TWT 인터벌(interval) 시간에서 상기 TWT SP 및 기 설정된 제1 마진을 차감한 값인 것을 특징으로 할 수 있다.
다양한 실시예에 따르면, 상기 보정된 트래픽 패턴을 확인하는 동작은, 제1 TWTSP와 제2 TWT SP사이의 도즈 상태(dose state)에서 버퍼링된 패킷들의 전송 구간을 구분하고, 생략된 TWT SP들을 검출하고, 검출된 수만큼 TWT SP의 인덱스를 증가시켜 상기 보정된 트래픽 패턴을 확인하는 동작을 더 포함할 수 있다.
다양한 실시예에 따르면,상기 생략된 TWT SP들을 검출하는 동작은, 상기 보정된 트래픽 패턴을 기반으로 패킷들의 인터 패킷 타임이 상기 임계 값 보다 큰 제1 조건 및 현재 패킷 타임에서 이전 패킷 타임(previous packet time, first packet time)을 차감한 시간이 TWT SP에서 설정된 제2 마진을 차감한 시간보다 큰 제2 조건을 기반으로 상기 생략된 TWT SP들을 검출하는 것을 특징으로 할 수 있다.
다양한 실시예에 따르면, 상기 생략된 TWT SP들을 검출하는 동작은, 상기 제1 조건 및 상기 제2 조건을 둘 다 만족하는 인터 패킷 타임을 상기 TWT 인터벌(interval)로 나누어 생략된 TWT SP가이 몇 개 있는지를 검출하고, 상기 검출된 수 만큼TWT SP들의 인덱스(index)를 증가하는 동작을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 보정된 트래픽 패턴을 확인하는 동작은, 상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임은 임계값보다 큰지를 결정하고, 상기 임계값보다 큰 경우, 현재 TWT SP가 종료된 것으로 추정하고, 상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임 시점에 수신된 패킷들은 다음 TWT SP의 버퍼링된 패킷 수(DL buffered packet count) 및 패킷 사이즈(DL buffered packet size에 증가시키고 상기 현재 TWT SP 내에 수신된 다운링크 패킷 수 및 사이즈를 기록하는 동작 및 상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임이 상기 임계값보다 작은 경우 현재 TWT SP가 종료되지 않은 것으로 추정하고 현재 TWT SP에서의 다운링크의 패킷 수 및 패킷 사이즈를 기록하는 동작을 더 포함할 수 있다.
다양한 실시예에 따르면, 상기 통신 링크 레벨의 TWT 인터벌(interval) 및TWT 서비스 기간(service period) 을 추정하는 동작은, 상기 추정된 TWT SP에 기반하여 상기 제1 프로세서에서 제2 프로세서로 전달되는 업링ㄹ크 패킷들에 대해 현재 TWT SP를 위한 업링크 패킷 수 및 패킷 사이즈를 기록하는 동작을 더 포함할 수 있다.
본 문서의 다양한 실시 예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일 실시 예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시 예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
101: 전자 장치
120: 프로세서
301, 410, 501: 제1 프로세서
302,420,502: 제2프로세서

Claims (19)

  1. 전자 장치에 있어서,
    제1 프로세서,
    제2 프로세서를 포함하는 통신 모듈; 및
    메모리를 포함하고,
    상기 메모리는 상기 제1 프로세서가,
    상기 액세스 포인트와 통신 시에, 제1 TWT 파라미터에 기반한 TWT(target wake time) 계약에 따라 액세스 포인트(access point)와 데이터 송수신을 수행하도록 상기 통신 모듈을 제어하고,
    상기 제2 프로세서로부터 수신되는 다운링크 패킷들 또는 상기 제2 프로세서로 전달되는 업링크 패킷들 중 적어도 하나를 모니터링하고,
    상기 모니터링된 트래픽 패턴을 이용하여 상기 제2 프로세서에서 처리된 통신 링크 레벨의 TWT 인터벌(interval) 및 TWT SP(service period)을 추정하고,
    상기 추정된 TWT 인터벌(interval) 및 TWT SP에 기반하여 상기 제 1 프로세서에서 동작하는 적어도 하나의 어플리케이션 또는 서비스의 QoS(quality of service)에 적합한 제2 TWT 파라미터로 상기 제1 TWT 파라미터를 갱신하고,
    상기 제2 TWT 파라미터를 상기 제2 프로세서로 전달하여 상기 액세스 포인트와 TWT를 재협약하도록 제어하는 인스트럭션들을 포함하는 전자 장치.
  2. 제1항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 통신 링크 레벨의 상기 TWT 인터벌(interval) 및 상기 TWT SP(service period)를 추정하기 위해, 상기 다운링크 패킷들에 대해 제1 패킷이 수신된 시점과 제2 패킷이 수신된 시점 사이의 인터 패킷 타임(inter packet time)을 기반으로 제2 프로세서에서 패킷들의 처리 및 전송 시간을 차감하여 상기 다운링크 패킷들의 수신 타임을 제2 프로세서에서의 처리된 통신 링크 레벨에서의 수신 타임으로 보정하고,
    상기 통신 링크 레벨에서의 TWT SP들을 추정하여 상기 모니터링된 트래픽 패턴에서 보정된 트래픽 패턴을 확인하도록 하는 인스트럭션들을 더 포함하는 전자 장치.
  3. 제2항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 다운링크 패킷들에 대해서, 상기 인터 패킷 타임들 중 임계값보다 큰 조건을 만족하는 제1 인터 패킷 타임을 제1 TWT SP와 제2 TWT SP를 구분하는 기준 범위로 지정하고,
    상기 인터 패킷 타임이 임계값보다 큰 조건을 만족하지 않는 시점에서의 첫번째 패킷에서부터 마지막 패킷까지는 하나의 TWT SP에 포함하는 패킷들로 결정하는 인스트럭션들을 더 포함하고,
    상기 임계값은, 하나의 TWT SP가 시작되는 시점에서부터 다음 TWT SP가 시작되기 전 구간을 나타내는 TWT 인터벌(interval) 시간에서 상기 TWT SP및 기 설정된 제1 마진을 차감한 값인 것을 특징으로 하는 전자 장치.
  4. 제2항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 수신된 패킷의 인터 패킷 타임이 상기 임계값보다 큰 경우, 수신된 패킷을 상기 제1 프로세서가 전달 받은 시점에서, mac 계층 데이터 및 물리적 계층 데이터 처리 및 수신에 필요한 시간, 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점으로 보정하고,
    상기 수신된 패킷의 인터 패킷 타임이 상기 임계값보다 작은 경우, 수신된 패킷을 전달 받은 시점에서, mac 계층 데이터 수신에 필요한 시간과 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점으로 보정하도록 하는 인스트럭션들을 더 포함하는 전자 장치.
  5. 제2항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    제1 TWT SP와 제2 TWT SP사이의 도즈 상태(dose state)에서 버퍼링된 패킷들의 전송 구간을 구분하고, 생략된 TWT SP들을 검출하고, 검출된 수만큼 TWT SP의 인덱스를 증가시켜 상기 보정된 트래픽 패턴을 확인하도록 하는 인스트럭션들을 더 포함하는 전자 장치.
  6. 제5항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 보정된 트래픽 패턴을 기반으로 패킷들의 인터 패킷 타임이 상기 임계 값 보다 큰 제1 조건 및 현재 패킷 타임에서 이전 패킷 타임(previous packet time, first packet time)을 차감한 시간이 TWT SP에서 설정된 제2 마진을 차감한 시간보다 큰 제2 조건을 기반으로 상기 생략된 TWT SP들을 검출하도록 하는 인스트럭션들을 더 포함하는 전자 장치.
  7. 제6항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 제1 조건 및 상기 제2 조건을 둘 다 만족하는 인터 패킷 타임을 상기 TWT 인터벌(interval)로 나누어 생략된 TWT SP가 몇 개 있는지를 검출하고, 상기 검출된 수 만큼 TWT SP들의 인덱스(index)를 증가하도록 하는 인스트럭션들을 더 포함하는 전자 장치.
  8. 제6항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임은 임계값보다 큰지를 결정하고, 상기 임계값보다 큰 경우, 현재TWT SP가 종료된 것으로 추정하고, 상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임 시점에 수신된 패킷들은 다음 TWT SP의 버퍼링된 패킷 수(DL buffered packet count) 및 패킷 사이즈(DL buffered packet size)에 증가시키고, 상기 현재 TWT SP 내에 수신된 다운링크 패킷 수 및 사이즈를 기록하도록 하는 인스트럭션들을 더 포함하는 전자 장치.
  9. 제6항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임이 상기 임계값보다 작은 경우 현재TWT SP가 종료되지 않은 것으로 추정하고 현재TWT SP에서의 다운링크의 패킷 수 및 패킷 사이즈를 기록하도록 하는 인스트럭션들을 더 포함하는 전자 장치.
  10. 제6항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 통신 링크 레벨의 TWT 인터벌(interval) 및TWT 서비스 기간(service period)을 추정하기 위해, 추정된 TWT SP에 기반하여 상기 제1 프로세서에서 제2 프로세서로 전달되는 상기 업링크 패킷들에 대해 현재 TWT SP를 위한 업링크 패킷 수를 및 패킷 사이즈를 기록하도록 하는 인스트럭션들을 더 포함하는 전자 장치.
  11. 제2 항에 있어서,
    상기 메모리는, 상기 제1 프로세서가,
    상기 다운링크 패킷들의 수신 타임의 보정 및 상기 통신 링크 레벨에서의 TWT 서비스 기간(service period)들을 추정하여 TWT SP 별로 다운링크의 패킷 수 및 패킷 사이즈(DL packet count and packet size), TWT SP 시작 시간에서부터 마지막 시점까지의 패킷 송수신 시간(SP usage data time), 이전 TWT SP 이후 도즈 상태(doze state)에 있는 동안 버퍼링된 패킷 수(DL buffered packet count) 및 패킷 사이즈(DL buffered packet size), 업링크 패킷 카운트(UL packet count)를 계산하고
    상기 계산된 정보들을 분석하여 상기 TWT 사용 특성 정보를 확인하도록 하는 인스트럭션들을 더 포함하고,
    상기 TWT 사용 특성 정보는,
    TWT 사용 통계, 이른 종료(early termination) 시간, 지연 정도(latency), 통신 링크 레벨에서의 패킷 송수신 시간 중 적어도 하나를 포함하는 것을 특징으로 하는 전자 장치.
  12. 전자 장치에서 TWT(target wake time)를 제어하는 방법에 있어서,
    제1 프로세서가 제1 TWT 파라미터에 기반한 TWT(target wake time) 계약에 따라 액세스 포인트(access point)와 데이터 송수신을 수행하도록 통신 모듈을 제어하는 동작;
    상기 액세스 포인트와 통신 시에, 상기 통신 모듈에 포함된 제2 프로세서와 통신 데이터를 송수신하는 동작;
    상기 제1 프로세서가 상기 제2 프로세서로부터 수신되는 다운링크 패킷들 또는 상기 제2 프로세서로 전달되는 업링크 패킷들 중 적어도 하나를 모니터링하고,
    상기 모니터링된 트래픽 패턴을 이용하여 상기 제2 프로세서에서 처리된 통신 링크 레벨의 TWT 인터벌(interval) 및TWT SP(service period)을 추정하는 동작;
    상기 추정된 TWT 인터벌(interval) 및TWT SP에 기반하여 상기 제 1 프로세서에서 동작하는 적어도 하나의 어플리케이션 또는 서비스의 QoS(quality of service)에 적합한 제2 TWT 파라미터로 상기 제1 TWT 파라미터를 갱신하는 동작; 및
    상기 제2 TWT 파라미터를 제2 프로세서로 전달하여 상기 액세스 포인트와 TWT를 재협약하도록 제어하는 동작을 더 포함하는 방법.
  13. 제12항에 있어서,
    상기 통신 링크 레벨의 TWT 인터벌(interval) 및TWT SP(service period)를 추정하는 동작은,
    상기 다운링크 패킷들에 대해 제1 패킷이 수신된 시점과 제2 패킷이 수신된 시점 사이의 인터 패킷 타임(inter packet time)을 기반으로 제2 프로세서에서 패킷들의 처리 및 전송 시간을 차감하여 다운링크 패킷들의 수신 타임을 제2 프로세서에서의 통신 링크 레벨에서의 수신 타임으로 보정하고 상기 통신 링크 레벨에서의 TWT SP들을 추정하여 상기 상기 모니터링된 트래픽 패턴에서 보정된 트래픽 패턴을 확인하는 동작을 더 포함하는 방법.
  14. 제13항에 있어서,
    상기 보정된 트래픽 패턴을 확인하는 동작은,
    상기 다운링크 패킷들에 대해서, 상기 인터 패킷 타임들 중 임계값보다 큰 조건을 만족하는 제1 인터 패킷 타임을 제1 TWT SP와 제2 TWT SP를 구분하는 기준 범위로 지정한 후, 상기 인터 패킷 타임이 임계값보다 큰 조건을 만족하지 않는 시점에서의 첫번째 패킷에서부터 마지막 패킷까지는 하나의 TWT SP에 포함하는 패킷들로 결정하는 동작;
    상기 수신된 패킷의 인터 패킷 타임이 상기 임계값보다 큰 경우, 수신된 패킷을 상기 제1 프로세서가 전달 받은 시점에서, mac 계층 데이터 및 물리적 계층 데이터 처리 및 수신에 필요한 시간, 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점으로 보정하는 동작; 및
    상기 수신된 패킷의 인터 패킷 타임이 상기 임계값보다 작은 경우, 수신된 패킷을 전달 받은 시점에서, mac 계층 데이터 수신에 필요한 시간과 페이로드 데이터 수신에 필요한 시간만큼 차감하여 통신 링크 레벨의 수신 시점으로 보정하는 동작을 더 포함하며,
    상기 임계값은, 상기 하나의 TWT SP가 시작되는 시점에서 다음 TWT SP가 시작되기 전 구간을 나타내는 TWT 인터벌(interval) 시간에서 상기 TWT SP 및 기 설정된 제1 마진을 차감한 값인 것을 특징으로 하는 방법.
  15. 제13항에 있어서,
    상기 보정된 트래픽 패턴을 확인하는 동작은,
    제1 TWTSP와 제2 TWT SP사이의 도즈 상태(dose state)에서 버퍼링된 패킷들의 전송 구간을 구분하고, 생략된 TWT SP들을 검출하고, 검출된 수만큼 TWT SP의 인덱스를 증가시켜 상기 보정된 트래픽 패턴을 확인하는 동작을 더 포함하는 방법.
  16. 제15항에 있어서,
    상기 생략된 TWT SP들을 검출하는 동작은,
    상기 보정된 트래픽 패턴을 기반으로 패킷들의 인터 패킷 타임이 상기 임계 값 보다 큰 제1 조건 및 현재 패킷 타임에서 이전 패킷 타임(previous packet time, first packet time)을 차감한 시간이 TWT SP에서 설정된 제2 마진을 차감한 시간보다 큰 제2 조건을 기반으로 상기 생략된 TWT SP들을 검출하는 것을 특징으로 하는 방법.
  17. 제16항에 있어서,
    상기 생략된 TWT SP들을 검출하는 동작은,
    상기 제1 조건 및 상기 제2 조건을 둘 다 만족하는 인터 패킷 타임을 상기 TWT 인터벌(interval)로 나누어 생략된 TWT SP가이 몇 개 있는지를 검출하고, 상기 검출된 수 만큼TWT SP들의 인덱스(index)를 증가하는 동작을 더 포함하는 방법.
  18. 제16항에 있어서,
    상기 보정된 트래픽 패턴을 확인하는 동작은,,
    상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임은 임계값보다 큰지를 결정하고, 상기 임계값보다 큰 경우, 현재 TWT SP가 종료된 것으로 추정하고, 상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임 시점에 수신된 패킷들은 다음 TWT SP의 버퍼링된 패킷 수(DL buffered packet count) 및 패킷 사이즈(DL buffered packet size에 증가시키고 상기 현재 TWT SP 내에 수신된 다운링크 패킷 수 및 사이즈를 기록하는 동작; 및
    상기 제1 조건 및 제2 조건을 만족하지 않는 인터 패킷 타임이 상기 임계값보다 작은 경우 현재 TWT SP가 종료되지 않은 것으로 추정하고 현재TWT SP에서의 다운링크의 패킷 수 및 패킷 사이즈를 기록하는 동작을 더 포함하는 방법.
  19. 제12항에 있어서,
    상기 통신 링크 레벨의 TWT 인터벌(interval) 및TWT 서비스 기간(service period) 을 추정하는 동작은,
    상기 추정된 TWT SP에 기반하여 상기 제1 프로세서에서 제2 프로세서로 전달되는 업링ㄹ크 패킷들에 대해 현재 TWT SP를 위한 업링크 패킷 수 및 패킷 사이즈를 기록하는 동작을 더 포함하는 방법.
KR1020210060086A 2021-05-10 2021-05-10 TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법 KR20220152760A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020210060086A KR20220152760A (ko) 2021-05-10 2021-05-10 TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법
PCT/KR2022/006343 WO2022240056A1 (ko) 2021-05-10 2022-05-03 Twt(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 twt(target wake time)를 제어하는 방법
EP22807704.6A EP4311303A1 (en) 2021-05-10 2022-05-03 Electronic device including target wake time (twt) monitoring module and method for controlling target wake time (twt) by using same
US18/484,812 US20240040635A1 (en) 2021-05-10 2023-10-11 Electronic device including target wake time (twt) monitoring module and method for controlling target wake time (twt) by using same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210060086A KR20220152760A (ko) 2021-05-10 2021-05-10 TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법

Publications (1)

Publication Number Publication Date
KR20220152760A true KR20220152760A (ko) 2022-11-17

Family

ID=84029298

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210060086A KR20220152760A (ko) 2021-05-10 2021-05-10 TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법

Country Status (4)

Country Link
US (1) US20240040635A1 (ko)
EP (1) EP4311303A1 (ko)
KR (1) KR20220152760A (ko)
WO (1) WO2022240056A1 (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9713087B2 (en) * 2015-01-28 2017-07-18 Qualcomm Incorporated Triggered target wake time operation
KR102334214B1 (ko) * 2017-05-15 2021-12-02 삼성전자주식회사 QoS(Quality of Service) 정보를 제어하는 방법 및 장치
KR102563790B1 (ko) * 2018-05-18 2023-08-07 삼성전자주식회사 어플리케이션의 데이터 전송에 기반하여 네트워크 연결을 수행하기 위한 전자 장치 및 그에 관한 방법
KR102509679B1 (ko) * 2018-09-06 2023-03-15 삼성전자 주식회사 IEEE 802.11 표준에 정의된 TWT(target wake time)를 이용하여 무선 매체에 대한 접근을 지원하는 전자 장치

Also Published As

Publication number Publication date
EP4311303A1 (en) 2024-01-24
US20240040635A1 (en) 2024-02-01
WO2022240056A1 (ko) 2022-11-17

Similar Documents

Publication Publication Date Title
KR20220015812A (ko) 무선 통신 시스템에서의 멀티 세션에 대한 스케줄링 방법 및 이를 지원하는 전자 장치
KR20220017067A (ko) 전자 장치에서 데이터 통신을 위한 네트워크 제어 방법 및 장치
KR20220017304A (ko) 전자 장치 및 그의 통신 모드 제어 방법
US11747874B2 (en) Method for implementing power and/or heat generation control and electronic device therefor
KR20220152760A (ko) TWT(target wake time) 모니터링 모듈을 포함하는 전자 장치 및 이를 이용하여 TWT(target wake time)를 제어하는 방법
US20220103332A1 (en) Electronic device performing neighbor awareness networking communication and method for operation thereof
KR20230053952A (ko) 대역폭 부분을 이용하여 통신을 수행하는 전자 장치 및 네트워크와 그들의 동작 방법
KR20210158626A (ko) 전송 속도를 조절하기 위한 전자 장치 및 그의 동작 방법
KR20210158570A (ko) 주변 bss와의 신호 간섭을 완화하는 전자 장치 및 그 제어 방법
US20240015597A1 (en) Method and apparatus for controlling communication parameters during multi-communication
US20240147360A1 (en) Electronic device transmitting ue assistance information message and method for operating thereof
EP4287745A1 (en) Multi-connection method and device based on target wake time
US20210329697A1 (en) Method for transmitting and receiving data and electronic device supporting the same
US20230292138A1 (en) Method for setting communication scheme, and electronic device using same
KR20230036448A (ko) 전자 장치 및 트래픽 제어 방법
US20230262604A1 (en) Method for performing wireless communication, and electronic device supporting same
KR20230103079A (ko) 전자 장치 및 그 통신 제어 방법
KR20220008193A (ko) 전자 장치, 전자 장치와 연결된 디스플레이 장치 및 이들의 동작 방법
KR20230136001A (ko) 캐리어 어그리게이션을 지원하는 전자 장치 및 그 동작 방법
KR20220018797A (ko) TWT(target wake time) 제어 방법 및 이를 지원하는 전자 장치 및/또는 통신 모듈
KR20240011060A (ko) 복수의 링크의 지연 시간에 기반한 동작을 수행하는 전자 장치 및 전자 장치의 동작 방법
KR20240050954A (ko) 스레드 네트워크 내에서 외부 전자 장치와의 연결을 제어하기 위한 전자 장치 및 방법
KR20220041627A (ko) 이웃 인식 네트워킹 통신을 수행하는 전자 장치 및 그 동작 방법
KR20230060993A (ko) 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법
KR20230116622A (ko) 링크 용량에 기반하여 패킷의 병합을 제어하는 전자 장치 및 전자 장치의 동작 방법