ITmedia NEWS > �Ȋw�E�e�N�m���W�[ >
ZLeBEzbggsbNX

Wi-Fi�@��̏[�d���}���Ɂg�[���h�ɂ���T�C�o�[�U���@150m���ꂽ�ꏊ����X�}�z��Ď��J�����𖳌����FInnovative Tech

» 2023�N01��16�� 08��00�� ���J
[�R���T�B�CITmedia]

Innovative Tech�F

���̃R�[�i�[�ł́A�e�N�m���W�[�̍ŐV�������Љ��Web���f�B�A�uSeamless�v����ɂ���R���T�B�������M�B�V�K���̍����Ȋw�_�����R�������s�b�N�A�b�v���A�������B

�@�ăX�^���t�H�[�h��w�A��UCLA�A�J�i�_�̃E�H�[�^�[���[��w�ɏ������錤���҂炪���\�����_���uWiFi Physical Layer Stays Awake and Responds When it Should Not�v�́AWi-Fi�@��ɋU�̃f�[�^�p�P�b�g���p���I�ɑ��M���邱�ƂŁA���̋@��̏[�d���}���ɒቺ������U�����Ă��������񍐂ł���B

�@Wi-Fi�l�b�g���[�N�́A���x�ȔF�؂ƈÍ������J�j�Y���iWPA3�Ȃǁj���g�p���āA�����F�f�o�C�X�ɂ��f�o�C�X��f�[�^�ւ̃A�N�Z�X��j�~���邱�ƂŁA���[�U�[�̃v���C�o�V�[�ƃZ�L�����e�B��ی삵�Ă���B

�@�������AWi-Fi�l�b�g���[�N�́A���Wi-Fi�K�i�Œ�`���ꂽ�v���ɂ��U���ɑ΂��ĐƎ�Ȃ܂܂ł���B���̌����ł́AIEEE 802.11�K�i�ɑ��݂���2�‚̐Ǝ㐫�����p���A����炪�ǂ̂悤�Ƀ��[�U�[�̃v���C�o�V�[�ƃZ�L�����e�B���댯�ɂ��炷�����������B

�@1�–ڂ̐Ǝ㐫�́A�������ׂ��łȂ��Ƃ��ɉ������邱�ƁBWi-Fi�l�b�g���[�N�ł́A����f�o�C�X�����̃f�o�C�X�Ƀp�P�b�g�𑗐M����ƁA��M���̃f�o�C�X�����M����ACK�iAcknowledgment�A��M�����ʒm�j�ʼn�����Ԃ��B���Ȃ̂��A�l�b�g���[�N�O�̕s����Wi-Fi�f�o�C�X�����M�����U�̃p�P�b�g�ɑ΂��Ă�ACK�ʼn�����Ԃ����Ƃł���B

�U�����Ɣ�Q���̊ԂŌ��������f�[�^�t���[��

�@2�–ڂ́AWi-Fi�������N�����Ă͂����Ȃ����ɋN�����Ă��邱�ƁBWi-Fi�@��̂قƂ�ǂ́A�d�͂�ߖ񂷂邽�߂ɃX���[�v���[�h�𓋍ڂ��Ă���B�X���[�v���[�h�ɓ���O��Wi-Fi�A�N�Z�X�|�C���g�ɒʒm���A�A�N�Z�X�|�C���g����M�p�P�b�g���o�b�t�@�����O����悤�ɂ��Ă���B������Wi-Fi�@��͒���I�ɋN�����āA�֘A����A�N�Z�X�|�C���g���瑗�M�����r�[�R���t���[������M����B

�@�ʏ�̓���ł́A�A�N�Z�X�|�C���g�������r�[�R���t���[���𑗐M���āA�p�P�b�g���o�b�t�@�����O���Ă���Wi-Fi�@��ɒʒm����BWi-Fi�@��͒ʒm���󂯂�ƁA�������M���邽�߂ɋN�������܂܂ɂȂ�B�������A�����̃r�[�R���t���[���͈Í�������Ă��Ȃ����߁A�����̂Ȃ����[�U�[���r�[�R���t���[�����U�����ă^�[�Q�b�g��Wi-Fi�@��ɑ��邱�ƂŁA�^�[�Q�b�g��Wi-Fi�@�����ɋN�������Ă������Ƃ��ł���B

�r�[�R���t���[���𑗂葱���邱�ƂŁA���Wi-Fi�f�o�C�X���N�������܂܂ɂł���

�@�����`�[���́A�����̐Ǝ㐫�𗘗p�����U�������������B���̍U���́AWi-Fi�f�o�C�X�������I�ɋN�������A�p���I�ɑ��M���邱�Ƃɂ��A�o�b�e���[���}���ɏ��Ղ����邱�Ƃł���B����ɂ��AWi-Fi�Ή��Ď��J������X�}�[�g�t�H���Ȃǂ𖳌��ɂł���B

�^�[�Q�b�g�f�o�C�X�̎��͂ɍ����čU�����Ă���l�q

�@���̍U���́AWi-Fi�l�b�g���[�N�ƃf�o�C�X�����S�ɕی삳��Ă���ɂ�������炸�A�����̊O������s���邱�Ƃ��ł���B

�@�U���҂ɕK�v�Ȃ̂́AWi-Fi���������10�h�����x�̃}�C�N���R���g���[���[�iESP32�Ȃǁj�ƃo�b�e���[�o���N�����ł���B�U���ґ��̃f�o�C�X�͏��������߁A�|�P�b�g�ɓ���Ď����^�񂾂�A�^�[�Q�b�g�f�o�C�X�̋߂��̂ǂ����ɉB�����肷�邱�Ƃ��ȒP�ɂł���B

�@�U�������𒲂ׂ�������s�������ʁA100m�ȓ��̋����ł��A�قڑS�Ẵ^�[�Q�b�g�f�o�C�X���������Ă��邱�Ƃ����������B�����150m���ꂽ�ꏊ�ł�73���Ƃ��������������𓾂Ă���A���̋����ł��U�����L���ł��邱�Ƃ��m�F�ł����B

�ő�150m�̋�������ł��U�����ł���

�@�܂������`�[���́A�ǂ�قǂ�Wi-Fi�f�o�C�X�ɂ����̍U�����s���邩�𒲂ׂ����ʁA186�̃x���_�[��5000��ȏ��Wi-Fi�A�N�Z�X�|�C���g����уN���C�A���g�f�o�C�X�𒲍����A�S�Ă̋@�킪�U���ɑ΂��ĐƎ�ł��邱�Ƃ��m�F�����B

Source and Image Credits: Abedi, A., Lu, H., Chen, A., Liu, C., & Abari, O. (2022). WiFi Physical Layer Stays Awake and Responds When it Should Not. arXiv preprint arXiv:2301.00269.



Copyright © ITmedia, Inc. All Rights Reserved.

'; e_dlv.innerHTML = html; adRequest({position:dlv_pos,dom:true}); }else if(ad_type === 'gam'){ var html = '
'; e_dlv.innerHTML = html; refreshGam('InArtSpecialLink'); }else if(ad_type === 'logly'){ var html = '
'; e_dlv.innerHTML = html; loglySet(g_id); }else if(ad_type === 'google'){ var html = '
'; e_dlv.innerHTML = html; googletag.cmd.push(function(){ var slot8 = googletag.defineSlot('/43042345/nlab_artinsert_RT',[[336,280],[300,250],'fluid'],'div-gpt-ad-1551176482959-0').addService(googletag.pubads()); googletag.pubads().enableSingleRequest(); googletag.enableServices(); googletag.display('div-gpt-ad-1551176482959-0'); googletag.pubads().refresh([slot8]); }); } }; var insert_ok = function(_target,_str){ var clearfix = d.createElement('div'); clearfix.className = 'colBoxClear'; if(ad_float_fix){ e_body.insertBefore(e_dlv,_target); e_body.insertBefore(clearfix,_target.nextElementSibling); }else{ e_body.insertBefore(e_dlv,_target); } set_dlv(); }; var insert_ng = function(_str){ e_dlv.style.display = 'none'; }; var main = function(){ var e_nodes = e_body.childNodes; // BODY �����q�v�f var e_tags = []; // BODY �����^�O var p_num = []; // BODY ���� P �^�O�ʒu var p_target_num; // �g�}����ʒu var o_float = {}; // ��荞�ݗv�f var o_this = {}; // �A�N�e�B�u�^�O var o_next = {}; // �A�N�e�B�u�^�O�̎��̃^�O var flag_insert = 0; // �}���t���O // ��荞�ݗv�f�`�F�b�N var check_float = function(_e){ var e = 0; if(_e.id.match(/^col\d{3}(l|r)$/)){ e = _e; } return e; }; // �v�f�� Y ���W�ƍ����̍��v�l var get_element_y = function(_e){ var ey = 0; var eh = _e.offsetHeight; while(_e){ ey += _e.offsetTop; _e = _e.offsetParent; } return ey + eh; }; var check_ptag = function(_e){ var e = 0; if(_e.tagName && _e.tagName === 'P'){ e = _e; } return e; }; var try_insert = function(){ p_target_num = Math.floor(p_num.length / 2) - 1; if(p_target_num >= _maxrange) p_target_num = _maxrange; if(dis_con) p_target_num = 0; for(var i = p_num[p_target_num]; i < e_tags.length; i++){ o_this.e = check_ptag(e_tags[i]); if(o_this.e){ o_next.e = check_ptag(e_tags[i + 1]); if(o_next.e){ if(!o_float.e || check_float(e_tags[i - 1])){ o_float.e = check_float(e_tags[i - 1]); o_float.n = i - 1; } if(o_float.e && o_float.n < i + 1){ o_float.y = get_element_y(o_float.e); o_this.y = get_element_y(o_this.e); set_line(o_float.y,'red'); set_line(o_this.y,'blue'); if(o_float.y < o_this.y){ flag_insert = 1; insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂���'); break; } }else{ flag_insert = 1; insert_ok(o_next.e,_threshold + ' �p���ȏ��荞�݂Ȃ�'); break; } } }else{ o_float = {}; } } if(!flag_insert){ insert_ng('�}���ʒu�Ȃ�'); } }; // �S�q�v�f����^�O�̂ݔz��ɓ���� for(var i = 0; i < e_nodes.length; i++){ if(e_nodes[i].tagName){ e_tags.push(e_nodes[i]); } } // �S�^�O���� P �^�O�ʒu��z��ɓ���� for(var i = 0; i < e_tags.length; i++){ if(e_tags[i].tagName === 'P') p_num.push(i); // �ŏ��̉�荞�ݗv�f���i�[ if(!o_float.e){ o_float.e = check_float(e_tags[i]); o_float.y = get_element_y(o_float.e); o_float.n = i; } } if(p_num.length >= _threshold){ try_insert(); }else{ insert_ng('P �^�O ' + _threshold + ' �ȉ�'); } }; if(e_body){ main(); }else{ insert_ng('�L���{���Ȃ�'); } })(document,4,5);