This application is based upon and claims the benefit of the prior Japanese Patent Application No. 2018-108857 filed on Jun. 6, 2018, the entire contents of which are incorporated herein by reference.
The embodiments discussed herein are related to a packet analysis method and an information processing apparatus.
In a wireless local area network (LAN), a communication is performed between a wireless LAN terminal and another device via an access point, which is a wireless base station that performs a wireless relay.
In addition, when the communication quality of a wireless LAN is managed, the communication state of the wireless LAN may be analyzed by a packet capturing of acquiring packets that flow through the network in the wired section of the wireless LAN. Also, in such a wireless LAN communication analysis, the connection state between the wireless LAN terminal and the access point is recognized.
As a technique of recognizing the connection state, there is, for example, a technique of extracting an address which takes a wireless interface as a transfer destination from packet transfer information, and estimating the existence of the terminal of the address under the access point which holds the packet transfer information.
Further, there is, for example, a technique in which a terminal having a media access control (MAC) address is stored as an access point that is likely to have within a wireless range, and the existence of a terminal having the MAC address is specified within the wireless range of the most newly stored access point.
Related technologies are disclosed in, for example, International Publication Pamphlet No. WO 2005/079008 and Japanese Laid-open Patent Publication No. 2007-043303.
In the communication analysis of the wireless LAN by the packet capturing in the wired section as described above, it is possible to recognize the communication quality between the wireless LAN terminal and a server. However, since the packet propagating through the wired section does not include the information of the access point connected to the wireless LAN terminal that has transmitted the packet, the communication quality analysis that considers the connected access point may not be performed in the related art.
For example, it is assumed that the communication quality has deteriorated in all the wireless LAN terminals connected to the access point due to the access point. At this time, in the analysis technique of packets propagating through the wired section of the related art, it is possible to detect that the communication quality has deteriorated in a plurality of wireless LAN terminals, but it is not possible to distinguish whether the wireless LAN terminals are connected to the same access point. Therefore, it takes time to specify that the cause of deterioration in communication quality is the access point.
In such a case, when it is possible to determine that the wireless LAN terminal whose communication quality has deteriorated is connected to the same access point, it is possible to predict that the cause of deterioration in communication quality is other than the wireless LAN terminal. Then, it is possible to exclude the wireless LAN terminal from the investigation subject of the deterioration cause, and it is possible to efficiently investigate the cause.
According to an aspect of the present invention, provided is an information processing apparatus including a memory and a processor coupled to the memory. The processor is configured to acquire a first packet group and a second packet group at a predetermined location in a network. The first packet group is wirelessly transmitted from a first wireless communication device and received by one of a plurality of wireless base stations connected to the network. The second packet group is wirelessly transmitted from a second wireless communication device and received by one of the plurality of wireless base stations. The processor is configured to accumulate the first packet group and the second packet group in the memory in an arrival order. The processor is configured to detect a consecutive number of packets in which a first packet among the first packet group and a second packet among the second packet group are accumulated alternately and consecutively one packet at a time in a time series. The processor is configured to determine whether the first wireless communication device and the second wireless communication device are connected to a same wireless base station based on the consecutive number.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
Hereinafter, the present embodiments will be described with reference to the accompanying drawings. The respective embodiments may be implemented by combining a plurality of embodiments within a range without contradiction.
The first embodiment will be described.
The packet analyzing apparatus 1 includes a controller 1a and a storage unit 1b. The packet analyzing apparatus 1 is, for example, an information processing apparatus such as a computer. The function of the controller 1a is implemented as, for example, a processor and the function of the storage unit 1b is implemented as, for example, a memory.
The controller 1a acquires a packet group transmitted by a plurality of wireless communication devices Ma and Mb by receiving, for example, packets that pass through an observation point of the wired section. For example, the controller 1a acquires a packet group that is wirelessly transmitted from the wireless communication device Ma and received by any one of the plurality of wireless base stations Bs1 and Bs2 connected to the wired section. Similarly, the controller 1a acquires a packet group that is wirelessly transmitted from the wireless communication device Mb and received by any one of the plurality of wireless base stations Bs1 and Bs2. The controller 1a stores the acquired packet groups in the storage unit 1b in order of arrival.
Further, the controller 1a detects the consecutive number in which packets that belong to different packet groups are accumulated alternately and consecutively one packet at a time. Then, based on the consecutive number, the controller 1a determines whether the wireless communication device Ma and the wireless communication device Mb are connected to the same wireless base station.
The flow of operation will be described using the specific example illustrated in
[Step S1] In the wireless connection between the wireless communication device Ma and the wireless base station, it is assumed that the wireless communication device Ma is transmitting packets a1, . . . , a7 to the wireless base station. Further, in the wireless connection between the wireless communication device Mb and the wireless base station, it is assumed that the wireless communication device Mb is transmitting packets b1, . . . , b7 to the wireless base station.
The controller 1a acquires a packet group including the packets a1, . . . , a7 that are transmitted from the wireless communication device Ma, and a packet group including the packets b1, . . . , b7 that are transmitted from the wireless communication device Mb, and accumulates the packet groups in order of arrival.
[Step S2] The controller 1a detects the consecutive number in which one packet among the packets a1, . . . , a7 and one packet among the packets b1, . . . , b7 are accumulated alternately and consecutively one packet at a time.
For example, in a state St1, groups gr1 and gr2 are arranged in a sequence of packets that are accumulated alternately and consecutively one packet at a time. The consecutive number of the group gr1 is 6 and the consecutive number of the group gr2 is 4.
Further, since both sides of the packet a5 are the packets a4 and b5, and the packet a4 is the same as the packet a5 in the transmission source device serving as the wireless communication device Ma, the packet a5 is not included in the count of the consecutive number. In addition, the packet b7 is not included in the count of the consecutive number since a determination may not be performed because there is only one packet on one side (the method of counting the consecutive number will be described later). In the meantime, in a state St2, since there are not packets that are accumulated alternately and consecutively one packet at a time, the consecutive number is 0.
[Step S3] The controller 1a compares the appearance frequency of the consecutive number which is equal to or greater than a predetermined value with a threshold value. When the appearance frequency of the consecutive number equal to or greater than the predetermined value exceeds the threshold value, the controller 1a determines that the wireless communication device Ma and the wireless communication device Mb are connected to mutually different wireless base stations.
For example, assuming that the predetermined value is 3 and the threshold value is 1, since the consecutive number of 6 and the consecutive number of 4 appear in the state St1, all consecutive numbers are equal to or greater than the predetermined value 3. Meanwhile, since the appearance frequency is 2, the value exceeds the threshold value 1.
Therefore, the controller 1a determines that the wireless communication device Ma and the wireless communication device Mb are connected to mutually different wireless base stations (Bs1 or Bs2). For example, as illustrated in
In the meantime, in the state St2, since the consecutive number is 0, the appearance frequency is also 0 and does not exceed the threshold value. Therefore, the controller 1a determines that the wireless communication device Ma and the wireless communication device Mb are connected to the same wireless base station (Bs1 or Bs2). For example, as illustrated in
In the packet analyzing apparatus 1, as described above, among the plurality of packet groups acquired in the wired section of the network, packets that belong to the first packet group and packets that belong to the second packet group detect the consecutive number of packets which are accumulated alternately and consecutively one packet at a time, and determines whether a plurality of wireless communication devices are connected to the same wireless base station based on the consecutive number.
Thus, the identity of the wireless base station (Bs1 or Bs2) connected to the plurality of wireless communication devices Ma and Mb may be determined by monitoring packets in the wired section. Since it is possible to determine the identity of the wireless base station (Bs1 or Bs2) to which a plurality of wireless communication devices Ma and Mb are connected, it becomes easy to distinguish the portions where the communication quality has deteriorated.
For example, it is assumed that the communication quality of the wireless communication devices Ma and Mb is analyzed to have deteriorated with respect to the wireless communication devices Ma and Mb, and the wireless communication devices Ma and Mb are determined to be connected to the wireless base station Bs1.
In this case, since deterioration in communication quality has occurred in both of the wireless communication devices Ma and Mb connected to the same wireless base station Bs1, it may be determined that there is a high possibility that the cause of deterioration exists on the wireless base station Bs1 side, rather than the wireless communication devices Ma and Mb sides.
Further, when the cause of deterioration is on the wireless base station Bs1 side, it includes a case where the wireless base station Bs1 itself has a cause of deterioration and a case where there is a cause of deterioration in another part related to the wireless base station Bs1. For example, even when there is a cause of deterioration somewhere in the wired section connected to the wireless base station Bs1, it includes a case where the cause of deterioration is on the wireless base station Bs1 side.
Further, it is assumed that the communication quality of the wireless communication device Ma is analyzed to have deteriorated with respect to the wireless communication devices Ma and Mb, and the wireless communication devices Ma and Mb are determined to be connected to the same wireless base station Bs1.
In this case, since deterioration in communication quality has occurred only in the wireless communication device Ma among the wireless communication devices Ma and Mb connected to the same wireless base station Bs1, it may be determined that there is a high possibility that the cause of deterioration exists on the wireless communication device Ma side, rather than the wireless base station Bs1 side.
As described above, when deterioration in the communication quality of wireless communication is recognized by the above function of the packet analyzing apparatus 1, it becomes easy to distinguish whether the wireless communication device or the side other than the wireless communication device (e.g., wireless base stations Bs1 and Bs2) is the cause of deterioration.
Further, when determining the identity of the connected wireless base stations, it is also possible to perform a more accurate determination by setting a predetermined period (corresponding to the analysis period and the same AP determination period to be described later). For example, the controller 1a detects a first maximum value of the consecutive number for each first period based on a first packet group and a second packet group, which are acquired within a second period (the same AP determination period) that includes n times (n is an integer of 1 or more) a first period to be analyzed (analysis period). Further, the controller 1a calculates the ratio of a second maximum value at which the value is equal to or greater than the predetermined value, among the n first maximum values in the first period of n times. Then, when the ratio exceeds the threshold value, the controller 1a determines that the wireless communication devices Ma and Mb are connected to different wireless base stations, and when the ratio does not exceed the threshold value, the controller 1a determines that the wireless communication devices Ma and Mb are connected to the same wireless base station. In this way, it is possible to perform the determination efficiently and accurately by conducting the identity determination processing based on the ratio of appearance of the consecutive number obtained by setting a predetermined period.
Further, it is possible to prevent an erroneous determination result from being obtained by excluding the first period from the targets of the identity determination of the wireless base stations Bs1 and Bs2. For example, when the communication amounts of the packet groups a1, . . . , a7 and the packet groups b1, . . . , b7, which are acquired within a certain analysis candidate period (first analysis candidate period), are equal to or less than a predetermined value, the controller 1a excludes the first analysis candidate period from the first period.
Further, when the packet sizes of the packets acquired within a certain analysis candidate period (second analysis candidate period) are equal to or less than a predetermined size, the controller 1a may exclude the second analysis candidate period from the first period. As a result, it is possible to prevent an erroneous determination result from being obtained.
Further, when the condition is not satisfied that the connection being used for communication of the packets acquired within a third analysis candidate period has been continuously established from the beginning to the end of the third analysis candidate period, the controller 1a may exclude the third analysis candidate period from the first period. For example, when the connection establishment or termination procedure is not performed within the third analysis candidate period, the connection is continuously established from the beginning to the end of the third analysis candidate period. When the connection is not continuously established within the analysis candidate period, it is possible to prevent an erroneous determination result from being obtained by excluding the analysis candidate period from the first period.
Next, descriptions will be made a case where when a plurality of wireless communication devices are connected to different wireless base stations, the frequency of packets appearing alternately one packet at a time becomes high, and when the wireless communication devices are connected to the same wireless base station, the frequency of packets appearing alternately one packet at a time becomes low.
When the wireless communication devices Ma and Mb are connected to mutually different wireless base stations, the packets transmitted from the wireless communication devices Ma and Mb join at observation points in the wired section, and are queued in an order of arrival by the packet analyzing apparatus 1.
Therefore, when the communication rates of the wireless communication devices Ma and Mb are the same, the frequency becomes high in which the packets transmitted from the wireless communication device Ma and the packets transmitted from the wireless communication device Mb are accumulated alternately and consecutively one packet at a time in a time series.
In the meantime, when the wireless communication devices Ma and Mb are connected to the same wireless base station, the packets transmitted from the wireless communication devices Ma and Mb join in the wireless section, the frequency becomes low in which the packets transmitted from the wireless communication device Ma and the packets transmitted from the wireless communication device Mb are accumulated alternately. This is related to the transmission waiting time of the wireless communication devices Ma and Mb. Hereinafter, descriptions will be made on the reason why the alternate appearance of packets is lowered when the wireless communication devices Ma and Mb are connected to the same wireless base station. In the following description, the wireless communication device is referred to as a wireless LAN terminal and the wireless base station is referred to as an access point (AP).
<Back-Off Time>
In the communication procedure of the carrier sense multiple access with collision avoidance (CSMA/CA) of the wireless LAN, a random time to wait for frame transmission is provided in order to avoid collision of frames transmitted from the wireless LAN terminal. The standby time for frame transmission is called a back-off time.
[Transmission Phase F1] Each of the wireless LAN terminals 2a, 2b, and 2c transmits frames after a lapse of a back-off time which is managed by each terminal having a fixed idle time called the distributed coordination function inter frame space (DIFS).
In this example, the wireless LAN terminal 2a sets the back-off time t1, and the wireless LAN terminals 2b and 2c set the back-off time t2 (t1<t2).
In a transmission phase F1, since the back-off time t1 is the shortest, the wireless LAN terminal 2a transmits frames after the back-off time t1 elapses. Upon successful reception of the frames, the AP3 returns an ACK frame for acknowledgment with a fixed idle time called the short inter frame space (SIFS).
Further, since the frames cannot be transmitted in the transmission phase F1, the wireless LAN terminals 2b and 2c delay the back-off times to the next transmission phase.
[Transmission Phase F2] It is assumed that the wireless LAN terminals 2b and 2c have delayed one slot time out portion of the back-off time t2 (the delayed slot time is taken as back-off time t2a).
The wireless LAN terminals 2b and 2c transmit frames after a lapse of the back-off time t2a with a time interval of DIFS from the end point of the ACK frame of the AP3. At this time, since the back-off times of the wireless LAN terminals 2b and 2c are the same, a frame collision occurs.
[Transmission Phase F3] When a frame collision occurs, the ACK frame is not returned from the AP3. For this reason, the wireless LAN terminals 2b and 2c recognize that the frame transmission has failed, reset the back-off time, and retransmit the frame.
In this example, the wireless LAN terminal 2b sets the back-off time t3, and the wireless LAN terminal 2c sets the back-off time t4 (t3<t4). In this case, the wireless LAN terminal 2b transmits the frames after the back-off time t3 elapses. Upon successful reception of the frames, the AP3 returns an ACK frame for an acknowledgment of reception.
Since the frames cannot be transmitted in the transmission phase F2, the wireless LAN terminal 2c delays the back-off time to the next transmission phase.
<Increase in Back-Off Time Associated with Retransmission>
Here, when the frames transmitted from a plurality of wireless LAN terminals collide, a retransmission occurs. When a retransmission occurs, the back-off time becomes longer, and when the back-off time becomes longer, the transmission interval becomes longer. When the transmission interval becomes longer, the possibility that a frame of another wireless LAN terminal enters between the frames becomes high.
Since the probability of an occurrence of a frame collision differs depending on the signal strength of the wireless LAN terminal, the wireless LAN terminal having a weak signal strength has a higher probability of frame collision, and a continuous retransmission is likely to occur. Therefore, the possibility of appearing alternately one packet at a time is low, which means that there is a high possibility that two wireless LAN terminals are connected to the same AP.
<Situation Where Packets of Different Packet Groups Do Not Appear Alternately>
Next, a situation where the packets of different packet groups among two packet groups do not alternately appear will be described with reference to
When the frames transmitted by the wireless LAN terminals A and B are not normally received by the AP3, that is, when the ACK does not return from the AP3, the wireless LAN terminals A and B retransmit the frames. When a frame collision occurs or when an error (bit error) occurs as the AP3 receives the frame, the AP3 cannot normally receive the frames.
In addition, in order to make the description easy to understand, it is assumed that the wireless LAN terminals A and B operate under the following conditions (1) to (6).
(1) The frame transmission time of the wireless LAN terminals A and B is 1 second.
(2) The average back-off time of the wireless LAN terminals A and B is 2 seconds (the actual back-off time is in p seconds).
(3) The cycle of the back-off time of the wireless LAN terminal A transits as follows: 1 second→2 seconds→3 seconds→1 second→2 seconds→3 seconds→ . . . (in fact, the transition occurs more randomly).
(4) The cycle of the back-off time of the wireless LAN terminal B transits as follows: 2 seconds→3 seconds→1 second→2 seconds→3 seconds→1 second→ . . . (in fact, the transition occurs more randomly).
(5) Since the signal strength of the wireless LAN terminal B is weaker than that of the wireless LAN terminal A, one out of two transmissions becomes a bit error.
(6) The wireless LAN terminals A and B set the back-off time at retransmission to (original back-off time)×(number of retransmissions)×2.
The operation will be described below.
[Time T1] The wireless LAN terminal A transmits a packet A1 one second after the back-off time and succeeds in transmitting the packet A1.
[Time T2] The wireless LAN terminal B transmits a packet B1 two seconds after the back-off time, but a bit error occurs at the time of reception on the AP3 side and the transmission of the packet B1 fails.
[Time T3] The wireless LAN terminal A transmits a packet A2 two seconds after the back-off time and succeeds in transmitting the packet A2.
[Time T4] The wireless LAN terminal A transmits a packet A3 three seconds after the back-off time and succeeds in transmitting the packet A3.
[Time T5] The wireless LAN terminal A transmits a packet A4 one second after the back-off time and succeeds in transmitting the packet A4.
[Time T6] When retransmitting the packet B1, the wireless LAN terminal B calculates the back-off time as 6 seconds (=3 seconds×first retransmission×2) since the original back-off time is 3 seconds and the retransmission is the first time. Then, the wireless LAN terminal B transmits the packet B1 six seconds after the back-off time and succeeds in transmitting the packet B1 at the first retransmission.
[Time T7] The wireless LAN terminal A transmits a packet A5 two seconds after the back-off time and succeeds in transmitting the packet A5.
[Time T8] The wireless LAN terminal B transmits a packet B2 one second after the back-off time, but a bit error occurs at the time of reception on the AP3 side and the transmission of the packet B2 fails.
[Time T9] The wireless LAN terminal A transmits a packet A6 three seconds after the back-off time and succeeds in transmitting the packet A6.
[Time T10] The wireless LAN terminal A transmits a packet A7 one second after the back-off time. When retransmitting the packet B2, since the original back-off time is 2 seconds and the retransmission is the first time, the wireless LAN terminal B calculates the back-off time as 4 seconds (=2 seconds×first retransmission×2) and then, transmits the packet B2 four seconds after the back-off time.
At this time, the packet A7 transmitted by the wireless LAN terminal A collides with the packet B2 transmitted by the wireless LAN terminal B. Therefore, the wireless LAN terminal A fails to transmit the packet A7, and the wireless LAN terminal B fails to transmit the packet B2.
[Time T11] When retransmitting the packet A7, the wireless LAN terminal A calculates the back-off time as 4 seconds (=2 seconds×first retransmission×2) since the original back-off time is 2 seconds and the retransmission is the first time. Then, the wireless LAN terminal A transmits the packet A7 four seconds after the back-off time and succeeds in the transmission of the packet A7 at the first retransmission.
[Time T12] The wireless LAN terminal A transmits a packet A8 three seconds after the back-off time and succeeds in transmitting the packet A8.
[Time T13] The wireless LAN terminal A transmits a packet A9 one second after the back-off time and succeeds in transmitting the packet A9.
[Time T14] The wireless LAN terminal A transmits a packet A10 two seconds after the back-off time and succeeds in transmitting the packet A10.
[Time T15] When retransmitting the packet B2, the wireless LAN terminal B calculates the back-off time as 12 seconds (=3 seconds×second retransmission×2) since the original back-off time is 3 seconds and the retransmission is the second time. Then, the wireless LAN terminal B transmits the packet B2 twelve seconds after the back-off time, but a bit error occurs at the time of reception on the AP3 side and the transmission of the packet B2 fails.
[Time T16] The wireless LAN terminal A transmits a packet A11 three seconds after the back-off time and succeeds in transmitting the packet A11.
[Time T17] The wireless LAN terminal A transmits a packet A12 one second after the back-off time, and succeeds in transmitting the packet A12.
[Time T18] The wireless LAN terminal A transmits a packet A13 two seconds after the back-off time, and succeeds in transmitting the packet A13.
[Time T19] When retransmitting the packet B2, the wireless LAN terminal B calculates the back-off time as 6 seconds (=1 second×third retransmission×2) since the original back-off time is 1 second and the retransmission is the third time. Then, the wireless LAN terminal B transmits the packet B2 six seconds after the back-off time and succeeds in transmitting the packet B2.
[Time T20] The wireless LAN terminal A transmits a packet A14 three seconds after the back-off time and succeeds in transmitting the packet A14.
[Time T21] The wireless LAN terminal A transmits a packet A15 one second after the back-off time. The wireless LAN terminal B transmits a packet B3 two seconds after the back-off time.
At this time, the packet A15 transmitted by the wireless LAN terminal A collides with a packet B3 transmitted by the wireless LAN terminal B, and a bit error occurs on the AP3 side when the packet B3 is received. Therefore, the wireless LAN terminal A fails to transmit a packet A15, and the wireless LAN terminal B fails to transmit the packet B3.
[Time T22] When retransmitting the packet A15, the wireless LAN terminal A calculates the back-off time as 4 seconds (=2 seconds×first retransmission×2) since the original back-off time is 2 seconds and the retransmission is the first time. Then, the wireless LAN terminal A transmits the packet A15 four seconds after the back-off time and succeeds in transmitting the packet A15.
[Time T23] When retransmitting the packet B3, the wireless LAN terminal B calculates the back-off time as 6 seconds (=3 seconds×first retransmission×2) since the original back-off time is 3 seconds and the retransmission is the first time. Then, the wireless LAN terminal B transmits the packet B3 six seconds after the back-off time and succeeds in transmitting the packet B3.
[Time T24] The wireless LAN terminal A transmits a packet A16 three seconds after the back-off time. The wireless LAN terminal B transmits a packet B4 one second after the back-off time.
At this time, the packet A16 transmitted by the wireless LAN terminal A collides with the packet B4 transmitted by the wireless LAN terminal B, and a bit error occurs on the AP3 side when the packet B4 is received. Therefore, the wireless LAN terminal A fails to transmit the packet A16, and the wireless LAN terminal B fails to transmit the packet B4.
[Time T25] When retransmitting the packet A16, the wireless LAN terminal A calculates the back-off time as 2 seconds (=1 second×first retransmission×2) since the original back-off time is 1 second and the retransmission is the first time. Then, the wireless LAN terminal A transmits the packet A16 two seconds after the back-off time and succeeds in transmitting the packet A16.
[Time T26] The wireless LAN terminal A transmits a packet A17 two seconds after the back-off time, and succeeds in transmitting the packet A17.
[Time T27] When retransmitting the packet B4, the wireless LAN terminal B calculates the back-off time as 4 seconds (=2 seconds×first retransmission×2) since the original back-off time is 2 seconds and the retransmission is the first time. Then, the wireless LAN terminal B transmits the packet B4 four seconds after the back-off time and succeeds in transmitting the packet B4.
Here, a phenomenon called a capture effect occurs in which the wireless LAN terminal A having a strong received signal strength has an increasing possibility of succeeding in packet transmission than the wireless LAN terminal B having a weak received signal strength.
Also, in the above-described example, there is a high possibility that packets from the wireless LAN terminal A close to the AP3 (i.e., having the large reception power) are normally received. Further, for packets from the wireless LAN terminal B far from the AP3 (i.e., having the small reception power), bit errors occur or a continuous retransmission occurs, so that a fair throughput may not be obtained between the wireless LAN terminals.
Therefore, there is a high possibility that packets of two wireless LAN terminals A and B connected to the same AP3 do not appear alternately, and in the two packet flows, it may be seen that the frequency of the consecutive number of packets appearing alternately and consecutively one packet at a time is equal to or less than a predetermined value.
Next, a second embodiment will be described. In the second embodiment, a packet capturing is performed in a wired section of a system in which a wireless LAN is constructed, and it is determined whether a plurality of wireless LAN terminals are connected to the same AP based on the consecutive number of different packets appearing alternately and consecutively among packet groups.
<System Configuration>
In the wired section, the server 40 is located at the end of a wired line L1, and switches sw1 and sw2, which are branching devices, are provided on the wired line L1. Then, the packet analyzing apparatus 10 is connected to the wired line L1 via the switch sw1 (or a tap), and the APs 31 and 32 are connected to the wired line L1 via the switch sw2.
Further, in the example of
The packet analyzing apparatus 10 analyzes the communication state of the wireless LAN and manages the communication quality of the wireless LAN. In this case, the packet analyzing apparatus 10 performs a packet capturing in the wired section in the system, that is, acquires the packet flowing through the wired line L1 via the switch sw1, and analyzes the communication state of the wireless LAN.
<Analysis Result of Communication State>
In the example of
In addition, the packet analyzing apparatus 10 recognizes that the communication quality between the wireless LAN terminal 23 and the server 40 is in a deteriorated state, the communication quality between the wireless LAN terminal 24 and the server 40 is in a deteriorated state, and the communication quality between the wireless LAN terminal 25 and the server 40 is in a deteriorated state.
Here, the packets flowing through the wired line L1 do not include information on which AP the wireless LAN terminal is connected to. For this reason, in the related art, it is difficult to analyze the communication state in units of AP between the wireless LAN terminal and the AP.
Therefore, as illustrated in the example of
Further, it is conceivable that the packet analyzing apparatus acquires the communication information between the wireless LAN terminal and the AP from the AP, and analyzes the communication state of the wireless LAN. However, in order to acquire the communication information from the AP, it is necessary to ask the administrator of the AP, log in to each AP to issue a command, etc., so that the communication information may not be easily acquired.
Therefore, in the second embodiment, a packet group is acquired in a wired section of a system in which a wireless LAN is constructed, and it is determined whether a plurality of wireless LAN terminals are connected to the same AP based on the consecutive number of different packets appearing alternately among packet groups.
As a result, when deterioration in communication quality is recognized, it is possible to distinguish whether the cause of deterioration exists on the wireless LAN terminal side or on the AP side, as deterioration points of communication quality.
<Hardware Configuration>
The processor 101 is, for example, a central processing unit (CPU), a micro processing unit (MPU), or a digital signal processor (DSP). At least a part of the functions of the processor 101 may be implemented by electronic circuits such as, for example, an application specific integrated circuit (ASIC) and a programmable logic device (PLD).
The memory 102 is used as a main storage device of the packet analyzing apparatus 10. At least a part of an operating system (OS) program to be executed by the processor 101 and an application program is temporarily stored in the memory 102. Further, various data necessary for processing by the processor 101 are stored in the memory 102. As for the memory 102, for example, a volatile semiconductor memory device such as, for example, a random access memory (RAM) is used.
Examples of peripheral devices connected to a bus 109 include a hard disk drive (HDD) 103, a graphic processing device 104, an input interface 105, an optical drive device 106, a device connection interface 107, and a network interface 108.
The HDD 103 magnetically writes and reads data to and from a built-in disk. The HDD 103 is used as an auxiliary storage device of the packet analyzing apparatus 10. The HDD 103 stores OS programs, application programs, and various data. As for the auxiliary storage device, a nonvolatile semiconductor storage device such as, for example, a flash memory may also be used.
A monitor 201 is connected to the graphic processing device 104. The graphic processing device 104 displays an image on the screen of the monitor 201 according to an instruction from the processor 101. As for the monitor 201, a display device using a cathode ray tube (CRT), a liquid crystal display device, or the like may be used.
A keyboard 202 and a mouse 203 are connected to the input interface 105. The input interface 105 transmits a signal sent from the keyboard 202 and the mouse 203 to the processor 101.
In addition, the mouse 203 is an example of a pointing device, and other pointing devices may be used. Other pointing devices include a touch panel, a tablet, a touch pad, a track ball, and the like.
The optical drive device 106 reads data recorded on the optical disk 204 by using laser light or the like. The optical disk 204 is a portable recording medium on which data is recorded so as to be readable by reflection of light. As for the optical disc 204, a digital versatile disc (DVD), a DVD-RAM, a compact disc read only memory (CD-ROM), a CD-R (recordable)/RW (rewritable) or the like may be used.
The device connection interface 107 is a communication interface that connects peripheral devices to the packet analyzing apparatus 10. For example, a memory device 205 and a memory reader/writer 206 may be connected to the device connection interface 107. The memory device 205 is a recording medium that has a communication function with the device connection interface 107. The memory reader/writer 206 is a device that writes data to a memory card 207 or reads data from the memory card 207. The memory card 207 is a card type recording medium.
The network interface 108 is connected to a network 110 (including a wireless LAN). The network interface 108 exchanges data with another computer or a communication device via the network 110.
With the hardware configuration as described above, the processing function of the second embodiment may be implemented. Further, the packet analyzing apparatus 1 illustrated in the first embodiment may also be implemented by the same hardware as the packet analyzing apparatus 10 illustrated in
The packet analyzing apparatus 10 implements the processing function of the second embodiment by executing a program recorded on, for example, a computer readable recording medium. A program that describes processing contents to be executed by the packet analyzing apparatus 10 may be recorded in various recording media.
For example, a program to be executed by the packet analyzing apparatus 10 may be stored in the HDD 103. The processor 101 loads at least a part of the program in the HDD 103 into the memory 102 and executes the program. Further, a program to be executed by the packet analyzing apparatus 10 may be recorded in a portable recording medium such as, for example, the optical disk 204, the memory device 205, and the memory card 207.
The program stored in the portable recording medium may be executed after being installed in the HDD 103, for example, under the control of the processor 101. Further, the processor 101 may read and execute the program directly from the portable recording medium.
<Function Block>
The functions of these constituent units are executed by the processor 101 illustrated in
The packet reception unit 11a receives the packets flowing through the wired line L1 via the switch sw1. Based on the header information of the received packets, the packet classification unit lib classifies whether the received packets are packets of the transmission control protocol. The packet information recording unit 11c stores the transmission source IP (Internet protocol) address, etc. of the packets as basic information 12a in the storage unit 12.
The packet state recording unit 11d records the packet reception time, packet size, and the like in the storage unit 12 as packet state information 12b. The same AP connection determination unit 11e obtains the maximum value of the consecutive number of packets appearing alternately one packet at a time, determines whether the two wireless LAN terminals are connected to the same AP based on the consecutive number, and stores the determination result in the storage unit 12, as connection AP analysis information 12c.
The storage unit 12 stores the basic information 12a, the packet state information 12b, and the connection AP analysis information 12c as described above. In addition to these pieces of information, various parameters used in each constituent unit, information used for overall control of the packet analyzing apparatus 10, and the like are stored.
<Packet State Information and Connection AP Analysis Information>
<Analysis Period and Same AP Determination Period>
The controller 11 of the packet analyzing apparatus 10 captures the packets transmitted by the wireless LAN terminal in the wired section and obtains the consecutive number of packets appearing alternately one packet at a time for each of the two wireless LAN terminals simultaneously communicating. Then, the controller 11 determines whether the two wireless LAN terminals are connected to the same AP based on the consecutive number. In the case of performing such an identity determination processing, the controller 11 sets the analysis period (first period) and the same AP determination period (second period) for the captured packet flow.
Further, the controller 11 sets a same AP determination period r2 (e.g., 1 minute) to determine whether the two wireless LAN terminals are connected to the same AP. The same AP determination period r2 is an integral multiple of the analysis period r1.
<Determination of Analysis Period>
When determining the analysis period, the communication rate is first determined. For example, the communication rate is assumed to be one tenth of the maximum rate of the wireless LAN system. Therefore, when the communication rate of the wireless LAN system is 144 Mbps, it is 14.4 Mbps. Also, it is assumed that the packet size is 1460 bytes and the number of packets to be analyzed is 100. At this time, the analysis period is 1460 bytes×100÷14.4 Mbps=0.08 sec=80 ms. Since 1460 bytes and 14.4 Mbps are variable values, 80 ms also varies. Therefore, the controller 11 determines the analysis period to be 100 ms by giving the margin at 80 ms.
<Determination of Whether Analysis Period Is Analyzable>
Among the packets captured in analysis period units, packets transmitted from two wireless LAN terminals are subjected to the identity determination processing. In the analysis period, sufficient packets are transmitted from the two wireless LAN terminals to be subjected to the identity determination processing, and when the packet size is not large to a certain extent, the analysis period is not suitable as an analysis target.
Therefore, the controller 11 determines whether the analysis period is suitable as an analysis target. If the communication amount is somewhat large and the packet size is somewhat large within the analysis period, the analysis period is determined to be suitable as an analysis target, and if not, the analysis period is determined not to be suitable as an analysis period.
Specifically, when the rate of the packets transmitted from two wireless LAN terminals in the analysis period is less than a predetermined value (e.g., 14.4 Mbps), the analysis period is not regarded as an analysis target. As a simple example, assuming that the analysis period is 100 ms, when there is only one packet of wireless LAN terminal #1 and two packets of wireless LAN terminal #2 during 100 ms, it is obvious that the identity determination processing may not be performed. Therefore, in order to perform the identity determination processing, it is assumed that analysis is not performed when the rate of packets transmitted from two wireless LAN terminals in the analysis period is smaller than a predetermined value.
As another condition, when at least one of the two wireless LAN terminals does not have a connection which is communicating from the beginning to the end of the analysis period, it is determined that the analysis period is not an analysis target.
In other words, in both of the two wireless LAN terminals, when neither a SYN (packet at the time of connection establishment) nor a FIN (packet at the time of connection termination) is transmitted within the analysis period, the connection is established from the beginning to the end of the analysis period. Therefore, in this case, the analysis period becomes an analysis target.
Further, as another condition, when at least one of the two wireless LAN terminals is not a connection of MSS (maximum segment size), it is determined that the analysis period is not an analysis target.
<Determination of Same AP Determination Period>
The controller 11 determines a value which is equal to or greater than a value obtained by multiplying the analyzable analysis period by a predetermined value as the same AP determination period capable of the identity determination processing. For example, the controller 11 determines (analyzable analysis period)×(10 times or more) as the same AP determination period. In this case, the fact that the analysis period is 10 times is the determination availability condition of the same AP determination period.
<Identity Determination Processing>
The controller 11 performs the identity determination processing by comparing the rate at which the maximum value of the consecutive number becomes equal to or larger than the predetermined value with the threshold value. For example, when the rate at which the maximum value of the consecutive number is 3 or more is smaller than the threshold value, the controller 11 determines that the two wireless LAN terminals are connected to the same AP. Further, when the rate at which the maximum value of the consecutive number is 3 or more is greater than the threshold value, the controller 11 determines that the two wireless LAN terminals are connected to different APs.
In addition, two different threshold values may be set to perform the determination processing. For example, it is assumed that the two different threshold values are thresholds th1, th2, and the relationship between the threshold value th1 and threshold value th2 is “threshold value th2<the threshold value th1.” In this case, when the rate at which the maximum value of the consecutive number becomes 3 or more is smaller than the threshold value th2, the controller 11 determines that the two wireless LAN terminals are connected to the same AP.
Further, when the rate at which the maximum value of the consecutive number is 3 or more is greater than the threshold value th1, the controller 11 determines that the two wireless LAN terminals are connected to different APs. By providing two threshold values in this manner, it is possible to detect with high accuracy the wireless LAN terminals connected to the same AP and the wireless LAN terminals connected to different APs.
The analysis period is 100 ms, and the same AP determination period is set to 2 seconds (=100 ms×20 times). Further, the threshold value th1 is set to 90%, and the threshold value th2 is set to 10%.
[State St11] The controller 11 measures the packet groups transmitted from the wireless LAN terminals #1 and #2, and it is assumed that there are 19 valid analysis periods and one maximum value of 3 or more of consecutive number in the same AP determination period of 2 seconds.
At this time, the ratio at which the maximum value of 3 or more of consecutive number appears is 5% ((1 time/19 times)×100), and the ratio 5% is smaller than 10% of the threshold value th2. When the ratio of the consecutive number of packets appearing alternately one packet at a time is smaller than the threshold value th2, there is a high possibility that the packets transmitted from the wireless LAN terminals #1 and #2 are joining in the wireless section, so that the wireless LAN terminals #1 and #2 are determined to be connected to the same AP.
[State St12] The controller 11 measures the packet groups transmitted from the wireless LAN terminals #1 and #2, and it is assumed that there are 20 valid analysis periods and 19 maximum values of 3 or more of consecutive number in the same AP determination period of 2 seconds.
At this time, the ratio at which the maximum value of 3 or more of consecutive number appears is 95% ((19 times/20 times)×100), and the ratio 95% is greater than 90% of the threshold value th1. When the ratio of the consecutive number of packets appearing alternately one packet at a time is greater than the threshold value th1, there is a high possibility that the packets transmitted from the wireless LAN terminals #1 and #2 are joining in the wired section, so that the wireless LAN terminals #1 and #2 are determined to be connected to mutually different APs.
<How to Count Consecutive Number>
The controller 11 counts the number of packets which are located on both sides of one packet and are different from the transmission source of the packet, and sets the count value as the consecutive number. That is, the counting is performed when the transmission source wireless LAN terminals of the packets on both sides of a certain packet are different from the transmission source wireless LAN terminal of the packet.
In the example of
Even when there are three or more wireless LAN terminals, the controller 11 performs the identity determination processing for two units. Thus, for example, when performing the identity determination processing of the wireless LAN terminals #1 and #2, the identity determination processing is performed temporarily excluding the packets transmitted from the wireless LAN terminal #3. That is, in the packets of the wireless LAN terminal #1 and the packets of the wireless LAN terminal #2, a counting is performed when the transmission source wireless LAN terminals of the packets on both sides of a certain packet are different from the transmission source wireless LAN terminal of the packet.
Therefore, excluding the packet p10, the same packet sequence as in
Similarly, when performing the identity determination processing of the wireless LAN terminals #1 and #3, the packets transmitted from the wireless LAN terminal #2 are temporarily excluded and the identity determination processing is performed with the packets transmitted from the wireless LAN terminals #1 and #3.
Further, when performing the identity determination processing of the wireless LAN terminals #2 and #3, the packets transmitted from the wireless LAN terminal #1 are temporarily excluded and the identity determination processing is performed with the packets transmitted from each of the wireless LAN terminals #2 and #3.
<Flowchart>
[Step S11] The controller 11 receives the packets flowing through the wired section via the switch (i.e., packet capturing).
[Step S12] Based on the header information of the packets, the controller 11 determines whether the received packets are TCP packets. In the case of TCP packets, the processing proceeds to step S13, and when the packets are not TCP packets, the processing returns to step S11.
[Step S13] The controller 11 determines whether the TCP packets after the packet classification process in step S12 are packets transmitted by the wireless LAN terminal. Specifically, when the transmission source IP address described in the IP header is the IP address of the wireless LAN terminal, the controller 11 recognizes the packets as packets transmitted by the wireless LAN terminal. In the case of the packets transmitted by the wireless LAN terminal, the processing proceeds to step S14, and when the packets are not the packets transmitted by the wireless LAN terminal, the processing returns to step S11.
[Step S14] The controller 11 stores packet information (a packet reception time, a packet size, etc.).
[Step S15] The controller 11 determines whether the predetermined analysis period has ended. When it is determined that the analysis period has ended, the processing proceeds to step 516a, and when the analysis period has not ended, the processing returns to step S11.
TCP packets transmitted from the wireless LAN terminal are captured during the analysis period. Assuming that the analysis period=100 ms, the processing proceeds to step S16 when 100 ms is reached, and the processing of steps S11, . . . , S15 is repeated until 100 ms is reached.
[Step S16a] The controller 11 selects two wireless LAN terminals to be subjected to the identity determination processing (i.e., a pair of wireless LAN terminals).
[Step S16] During the analysis period, the controller 11 determines whether the pair of the selected wireless LAN terminals is suitable as an analysis target based on the analysis availability condition. When it is determined that the analysis period is suitable as an analysis target, the processing proceeds to step S17, and when it is determined that the analysis period is not suitable, the processing returns to step S11.
[Step S17] With respect to the analysis period determined to be analyzable, the controller 11 calculates and stores the maximum value of the consecutive number of packets alternately appearing one packet at a time for each analysis period.
[Step S18] The controller 11 determines whether the predetermined AP determination period has ended. When it is determined that the same AP determination period has ended, the processing proceeds to step S19, and when it is determined that the same AP determination period has not ended, the processing returns to step S11.
[Step S19] The controller 11 determines whether the analysis period falls under the same AP determination period based on the predetermined determination availability condition of the same AP determination period. When it is determined that the analysis period falls under the same AP determination period, the processing proceeds to step S20, and when it is determined that the analysis period does not fall under the same AP determination period, the processing returns to step S11.
[Step S20] The controller 11 calculates the maximum value of the consecutive number of packets appearing alternately one packet at a time, determines whether the connection to the same AP is established, and records the determination result in the connection AP analysis information.
For example, the controller 11 determines that the connection to the same AP is established when the ratio of the maximum number of the consecutive number of packets appearing alternately one packet at a time is 3 or more is less than a predetermined value (e.g., less than 30%), and determines that the connection to different APs is established when such a ratio is equal to or greater than a predetermined value (e.g., 70% or more).
<Frame Structure>
The IP header h2 includes respective fields of a version, a header length, a service type, a total length, an identification number, a flag, a fragment offset, a lifetime, a protocol, a header checksum, a transmission source IP address, a destination IP address, an option, and a padding.
The TCP header h3 includes a transmission source port number, a destination port number, a sequence number, an acknowledgment number, a data offset, a reservation, a control flag, a window size, a checksum, an urgent pointer, an option, and a padding.
Here, the packet size (TCP payload size) becomes a value obtained by subtracting 20 bytes of the IP header h2 and 20 bytes of the TCP header h3 from the total length sz in
Meanwhile, flags of 1 bit of URQ, ACK, PSH, RST, SYN, and FIN, respectively, (not illustrated) are provided in the “control flag” field in the TCP header h3. When the connection is established, the SYN flag is turned on, and when the connection is terminated, the FIN flag is turned on.
Therefore, based on the values of the SYN and FIN flags set in the control flag, the controller 11 may determine whether the connection is established within the analysis period.
<Output Result of Packet Analyzing Apparatus>
An output result g1 is an example of displaying in table a state as to whether a plurality of wireless LAN terminals are connected to the same AP. In the output result g1, the symbol “∘” is indicated in a common frame between the wireless LAN terminal 21 and the wireless LAN terminal 22. Further, the symbol “X” is indicated in the common frame between the wireless LAN terminal 21 and the wireless LAN terminal 23, and the common frame between the wireless LAN terminal 22 and the wireless LAN terminal 23.
An output result g2 is an example of illustrating and displaying the connection state between the wireless LAN terminal and the AP. It is represented that the wireless LAN terminal 21 and the wireless LAN terminal 22 are connected to the same AP and the wireless LAN terminal 23 is connected to another AP.
<Distinguishing Communication Quality Deteriorated Portion Based on Determination Result>
Further, the controller 11 recognizes that the communication quality between the wireless LAN terminal 23 and the server 40 is in a deteriorated state, the communication quality between the wireless LAN terminal 24 and the server 40 is in a deteriorated state, and the communication quality between the wireless LAN terminal 25 and the server 40 is in a deteriorated state.
In
Since it is determined that the wireless LAN terminals 23, . . . , 25 are connected to the same AP with respect to the wireless LAN terminals 23, . . . , 25 with deteriorated communication quality, the controller 11 determines that there is a high possibility that the cause of deterioration exists on the AP side.
Further, in
It is determined that the wireless LAN terminals 21, 22, and 23 are connected to the same AP with respect to the wireless LAN terminal 23 with deteriorated communication quality, and the wireless LAN terminals 21, 22 are in good communication. Therefore, the controller 11 determines that there is a high possibility that the cause of deterioration exists on the wireless LAN terminal 23 side.
In addition, since it is determined that the wireless LAN terminals 24 and 25 are connected to the same AP with respect to the wireless LAN terminals 24 and 25 with deteriorated communication quality, the controller 11 determines that there is a high possibility that the cause of deterioration exists on the AP side.
In
Further, the controller 11 recognizes that the communication quality between the wireless LAN terminal 23 and the server 40 is in a deteriorated state, the communication quality between the wireless LAN terminal 24 and the server 40 is in a deteriorated state, and the communication quality between the wireless LAN terminal 25 and the server 40 is in a deteriorated state.
Here, it is assumed that the controller 11 recognizes that the received signal strength indicator (RSSI) of the wireless LAN terminals 23 and 24 is at a sufficiently high level to perform a stable wireless LAN communication. In addition, the controller 11 recognizes that the RSSI of the wireless LAN terminal 25 is at a low level to perform a stable wireless LAN communication.
It is determined that the wireless LAN terminals 23, 24, and 25 are connected to the same AP with respect to the wireless LAN terminals 23, 24, and 25 with deteriorated communication quality, and among the wireless LAN terminals 23, 24, and 25, the RSSI of only the wireless LAN terminal 25 is low. Therefore, in the controller 11, the wireless LAN terminal 25 with a low RSSI is present among the wireless LAN terminals 23, 24, and 25 connected to the same AP, and due to this influence, it is determined that communication deterioration occurs also in the other wireless LAN terminals 23 and 24 under the same AP.
The processing functions of the packet analyzing apparatuses 1 and 10 of the present disclosure described above may be implemented by a computer. In this case, a program is provided to describe the processing contents of the functions that the packet analyzing apparatuses 1 and 10 need to have. The above-described processing functions are implemented on the computer by executing the program by the computer.
The program describing the processing contents may be recorded in a computer-readable recording medium. The computer-readable recording medium includes a magnetic storage device, an optical disk, a magneto-optical recording medium, a semiconductor memory, and the like. The magnetic storage device includes a hard disk device (HDD), a flexible disk (FD), a magnetic tape, and the like. The optical disk includes a CD-ROM/RW and the like. The magneto-optical recording medium includes a magneto optical disk and the like.
When distributing a program, for example, a portable recording medium such as a CD-ROM in which the program is recorded is sold. Further, the program may be stored in the storage device of a server computer, and the program may be transferred from the server computer to another computer via the network.
The computer that executes the program stores, for example, the program recorded in the portable recording medium or the program transferred from the server computer in its own storage device. Then, the computer reads the program from its own storage device and executes a processing according to the program. Further, the computer may read the program directly from the portable recording medium and execute a processing according to the program.
In addition, each time the program is transferred from the server computer connected via a network, the computer may sequentially execute a processing according to the received program. Further, at least a part of the above processing functions may be implemented by electronic circuits such as DSP, ASIC, PLD, and the like.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to an illustrating of the superiority and inferiority of the invention. Although the embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2018-108857 | Jun 2018 | JP | national |