• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    Flow consistency in an intensive SDN security architecture with multiple controllers

    2017-12-28 09:25:10LVYingyingGUOYunfeiQIChaoWUQiWANGYawen

    LV Ying-ying, GUO Yun-fei, QI Chao, WU Qi, WANG Ya-wen

    ?

    Flow consistency in an intensive SDN security architecture with multiple controllers

    LV Ying-ying, GUO Yun-fei, QI Chao, WU Qi, WANG Ya-wen

    (National Digital Switching System Engineering & Technological R&D Center, Zhengzhou 450002, China)

    As critical components in SDN, controllers are prone to suffer from a series of potential attacks which result in system crashes. To prevent the compromise caused by single failure of controller or flow-tampering attacks, Mcad-SA, an aware decision-making security architecture with multiple controllers was proposed, which coordinates heterogeneous controllers internally as an “associated” controller. This architecture extends existing control plane and takes advantage of various controllers’ merits to improve the difficulty and cost of probes and attacks from attackers. In this framework, flow rules distributed to switches are no longer relying on a single controller but according to the vote results from the majority of controllers, which significantly enhances the reliability of flow rules. As to the vote process of flow rules, segmentation and grading is adopted to pick up the most trustful one from multiple flow rules and implement flow consistency. This mechanism avoids comparison between rules via bit by bit which is impractical among several controllers. Theory analysis and simulation results demonstrates the effectiveness, availability and resilience of the proposed methods and their better security gain over general SDN architectures.

    multi-controller, security, Mcad-SA, flow consistency

    1 Introduction

    SDN is a novel and promising architecture which separates data and control plane to facilitate the network’s management and improve its flexibility[1]. Through introducing SDN controllers, switches no longer need handle logical judgemenbut convert into simple data forwarding devices while controllers take charge of sophisticated network management[2]. However, this reliance on a centralized controller can easily result in security issues such as single point of failure. Moreover, a new set of attacks (controllers hijack, flow rules modification, etc) which are specific to SDN can compromise the network quickly if it doesn’t possess protective mechanisms. As we know, the initial purpose of controller design is focusing on performance improvement rather than security. Thus, that how SDN should be protected is an urgent research to be conducted on[3].

    In SDN, there is no doubt that the control plane is the most important layer and responsible for generation and distribution of flow rules. Further, as key components in the control plane, controllers’ security is of great importance to guarantee the network’s operation. Moreover, due to the fact that all unknown traffic must be transmitted to controllers for investigation, it’s common that malicious traffic may lead to unpredictable attacks[4]. Therefore, they are bound to be preferential attack targets for attackers. In other words, if we can ensure the controller’ security, then the network it supervises will be protected wonderfully.

    A typical attack in SDN is flow rule modification. For example, attackers can modify right rules into false rules they expect by means of controllers’ vulnerabilities[5]. This situation may lead to two severe consequence. One is that attackers can enable the packets forward to given hosts so they are able to capture valuable data. The other is massive packets can be forwarded to critical links, which perhaps causes these links to be congestive or paralyzed even worse. However, current defending mechanisms are ineffective to deal with this attack because there’s merely one running controller. As long as it owns only a controller, the controller is certain to be compromised regardless of how powerful it is when time isn’t limited resource for attackers.

    In order to address above problem or alleviate its impact, we intend to solve this question from the perspective of reconstructing the control plane. Specifically, we take advantage of characteristics from various existing controllers to introduce dynamic, heterogeneity and redundancy into the control plane. That’s to say, the control plane is configured with multiple controllers instead of one and its security will be significantly enhanced through coordination of all running controllers. Besides, we adopt majority decision and semantic analysis to ensure the coherence of flow rules from diverse controllers, which can guarantee rules distributed to switches are relying on vote results from operating controllers. This mechanism will further decrease the influence of single controller breakdown to some extent.

    This paper is organized as follows. the next section is the related work, Section III describes the details of Mcad-SA. Section IV presents an explicit judging process of rules’ coherence. In Section V, we present our evaluation results. The last section concludes by summarizing our work and discussing future work.

    2 Related work

    Various researches have been conducted on how to improve SDN’s security and how to guarantee the coherence of flow rules when updates happen.

    For the first issue, researchers attempt to address it from two aspects. On one hand, they aim at intensifying security of individual controllers via designing some internal secure mechanisms (check, verification, etc). FortNOX[6]and SE-Floodlight[7]are two types of typical improved controllers which are proposed recently. The former is an intensive secure NOX controller which introduces role-based authorization and security constraint enforcement to strengthen its security. It has the ability to check real-time flow-rule conflicts. Besides, it also implements a robust analysis algorithm to strategically prevent hostile applications from inserting malicious flow rules that would reduce routing efficiency in network. As to SE-Floodlight proposed by Porras, it’s a security-enhanced version of the widely used Floodlight controller which extends Floodlight with a SEK (security-enforcement kernel) to primarily provide security management. The SEK consists of a particular set of secure application management policies, such as a permission model for mediating all configuration change requests to the data-plane and a security audit service. However, no matter how powerful or elaborate single controller it is, once a vulnerability is discovered or it’s invaded, the security of service it provides can be no longer guaranteed. On the other hand, researchers have paid attention to distributed SDN architectures with multiple controllers which have been widely applied for failure recovery[8]and dealing with specific attacks due to their global views, redundancy and resiliency. Typical SDN frameworks equipped with multiple controllers are ONOS[9]and Byzantine Fault Tolerant (BFT) SDN controller[10]. And their primary concept is introducing heterogeneity and redundancy into the control plane to protect the network. ONOS, open network operating system, is designed to improve the robustness and resiliency of the network. It employs multiple controllers to act as different roles (master controller, backup controller, etc) in case when master controllers are unable to work, backup controllers are switched to master controllers via Zookeeper to maintain the network operate smoothly. Ref.[10] puts forward a prototype controller to tolerate byzantine faults in both the data and control plane. Even though it experiences slowdown on performance, it has the capability to tolerate a single compromised component without influencing control or forwarding decisions in the network. Although current architectures with multiple controllers can resist a series of attacks to some degree, their systems are entirely operating in a static state. However, dynamic is an effective method to improve security further. At present, dynamic is widely applied on control management[11]than security intensification in SDN.

    For the second issue, researchers mainly focus on dealing with conflicts, failures or even attacks when flow rules in switches need to be updated. In Ref.[12], Guo proposes JumpFlow to reduce flow table usage in SDN from the perspective of performance optimization when encounters updates. However, more researchers tend to put emphasis on preventing loopbacks, deadlocks and security domain breaches when updating switches. The update process is usually two-phase update. The first phase is detecting when the last packet of the old rule set has left the network and when to delete these old rules. The second phase is recoverability of the update. As to the first phase, a method is proposed in Ref.[13] to address the problem of identifying when the old rules can be deleted. While in Ref.[14], authors extend the same algorithm for per-flow consistent updates to specify when to delete the exact-match rules and consider the failures that can occur during an update simultaneously. And enhanced algorithms are proposed to handle deletion of old rules and recoverability[15]. Introduces an SDN verification plane to establish flow consistency between switches before flow insertion process takes place. This solution relies on a third party verification tool (UPPAAL) which translate the network view of controller to a state machine and verifies each flow before being installed. And this proposed system has the capability to enforce different levels of consistency verification whenever flow updates or topology changes occur in SDN. However, attacks aren’t taken into account in above research. Ref.[16] discusses how to provide per-packet consistency in adversarial settings. Based on existing VSM (version-stamping-based mechanism)[17], an efficient flow-ordered update mechanism is proposed to guarantee per-packet consistency against both packet-tampering and packet-dropping attacks. And it has the advantage of improving packet processing time, achieving better space efficiency and reducing the time delay for new policies to come into force. In this paper, we pay attention to another type of consistency which is concerning on how to ensure the coherence of outputs when different controllers respond to identical packet_in messages.

    3 The design of Mcad-SA

    In this section, the overview of Mcad-SA is illustrated in Figure 1. It’s obvious that modules of the control plane have been largely extended and interactions between them are more sophisticated. Certainly, security enhancement is also benefited from the exquisite designed architecture. Overall speaking, the control plane of Mcad-SA is consisted of controller layer, management unit and proxy layer. And their respective functions are described as follows.

    1) Controller layer

    This layer consists ofindependent running controllers, which means they don’t interact with each other but receive messages from the proxy layer respectively. Meantime, they will handle the messages and generate flow rules independently. After this process, all new generated rules will be sent back to proxy layer before distributing to switches in the data plane.Moreover, these controllers adopt heterogeneous structures (Ryu[18], Floodlight[19], ONOS[9], etc.) which have individual features and are achieved with diverse programming languages. One point to be mentioned, even controllers don’t belong to the same type, they will produce the identical flow rules when receiving the same information. Besides, there is a built-in monitor agent in each controller which is used for gathering running state information of controllers. Furthermore, all controllers are deployed generally on different hosts with various OS (Windows, Linux, MacOS, etc) to strengthen security.

    Figure 1 The overview of Mcad-SA

    2) Management unit

    This module has two sub-modules. One is variant template pool and it’s responsible for providing heterogenous SDN controllers for the controller layer. The other is variant management and is in charge of supervising variants in that pool, including variant cleaner, variant scheduler, variant monitor and template manager.And their specific functions are presented as follows.

    ①Variant monitor

    The primary purpose of the variant monitor is collecting real-time states of running controllers and determining whether they are benign or not. It will communicate with the monitor agent to exchange messages to analyze whether it has been probed or compromised by attackers. If so, it will produce an alert message and the message is sent to variant scheduler for reference.

    ②Variant cleaner

    The main goal of the variant cleaner is cleaning, resetting and repairing running malicious variants (controllers) and ensure the variants that are put back into variant template pool are reliable.

    ③Variant scheduler

    The vital function of variant scheduler is varying online controllers in the control layer with time according to scheduling strategies. As to the scheduling strategy, it’s based on the results of variant monitor or predefined switching algorithms to pick up new reliable controllers from variant template pool to replace suspected malicious online controllers. Then these untrustworthy controllers will be handed to variant cleaner to dispose before put back to variant template pool. In general, the number of controllers selected each time is odd and changeable, which is convenient for the following decision procedure. And a typical scheduling algorithm is proposed by us which is taking maximizing the control plane’s security gain as the final target[20,21].

    ④Templatemanager

    The chief duty of template manager is maintaining and supervising variants’ templates in the pool, including functions of searching, deleting, insertion and instantiation. So it’s able to offer robust controllers for the controller layer.

    ⑤Proxy layer

    Its main function is acting as the interaction interface between running controllers and the data plane. Message from the data plane will be processed here before delivered to controllers. Similarly, only when flow rules produced by controllers have been handled will they be transmitted to switches. This layer has three sub-components, state pool, arbiter and input and output proxy. Next, we explain their functions in details.

    ⑥State pool

    This pool stores up-to-date state information of running controllers. Whenever there are new online controllers, this pool has the ability to provide latest states for them to ensure they realize global information of the internet so that all running controllers can be maintained at the coherent operating states in a short time.

    ⑦Arbiter

    This component receives flow rules from every running controller. Then it employs large number decision or relies on historical experience to determine which rules should be handed to the output proxy. Generally speaking, the primary concept of judging is based on the fact that votes from the majority of controllers are correct and reliable. In other words, it’s difficult for attackers to compromise several controllers simultaneously. Therefore, the same flow rules from massive controllers can be regarded as effective, reliable and secure rules.

    ⑧Input and output proxy (IO Proxy)

    Finally, we concludes about the overall workflow of Mcad-SA. First, the input proxy collects real-time packets from switches and transmits them to each running controller after encapsulating procedure. In the meantime, the built-in monitor agent keeps an eye on intrusion actions and anomaly detection of corresponding controllers. And the monitoring data is handed to the variant monitor for analyzing. If analysis results indicate there are security risk in online controllers, the variant scheduler will consider replacing skeptical controllers with authentic controllers in variant template pool. Then these offline controllers will be processed by the variant cleaner before putting back into the pool. Next, the arbiter waits for flow rules from running controllers, makes comparisons between them and chooses the most reliable rules to delivery to the output proxy. After converting rules into standardized OpenFlow protocol via decapsulating, the output proxy distributes messages to switches and updates the state pool. Ultimately, above steps will be reiterated to maintain the control plane always operate in a dynamic and unpredictable way, which enables attackers hard to probe and elevates the network’s security, robustness and resilience.

    Figure 2 Flow rule attack under Mcad-SA

    4 Coherent progress of flow rules

    Next, we present the details of decision procedure in the arbiter about how to guarantee the coherence of flow rules. However, in order to achieve this object, minor amendment should be adjusted to the proxy and controller layer. Moreover, the judging strategy should has the capacity to apply to various situations.

    1) Problem description

    As shown in Figure 2, we assume controller C1is under the attacker’s control via attacks while the other two controllers run normally. To steal the packets from host (IP:10.1.1.1), the attacker modifies the output of the rules from port 1 to port 2. Now the packets are going to forward to switch C. Meantime, the attacker has already deployed a malicious host (IP:10.1.1.3) which is linked to switch C in advance. So it’s possible for attackers to obtain what they want if the control plane is equipped with one controller, as is always the occasion in current SDN architectures.

    However, this problem can be addressed perfectly in our proposed structure. In theory, the arbiter is able to take the results of “healthy controllers” as the output so rules distributed to switches are still the expectant ones and attacks on merely one controller won’t have any effect on network operation. Of course, attackers may attempt to more than one controller simultaneously. But the cost is enormously increased as running controllers are alternating all the time, which is definitely painstaking for them to locate and probe them. Even though they discover the vulnerabilities of different controllers, they have to produce consistent false outputs by means of these vulnerabilities to deceive the arbiter. This target is also difficult to be implemented.

    Actually, the deciding procedure in the arbiter isn’t as simple as imagined. As we all know, although diverse controllers (Ryu, floodlight, etc) adopt OpenFlow protocol, their outputs are not absolutely identical when they receive the equal packet_in messages. For example, the priority of the same flow rule from floodlight and Ryu may be different, so do other fields. Thus, it’s an impractical method to compare the flow rules bit by bit straightly.

    In order to eliminate above impact, the arbiter adopts grading based on segment match instead of direct comparison to obtain coherent rules for switches, which can improve the efficiency of comparison and avoid false judgment. The primary conception of grading based on segment match is breaking up rules into small pieces (such as action, priority), then large number decision is conducted on divided segments. In each segment match, if a segment from rule A is the same to the majority, then it’s labeled with a high score. While that is different, it’s labeled with a lower score or even zero. When all fragments have finished this process, we can obtain several scores for each rule. Then we can acquire the total score of each rule by summing them. Undoubtedly, the higher score a rule gets, the more reliable it is. And the rule with the highest score is the one we expect to hand to the proxy. One point to be pointed out, to reach above goals, the IO proxy and controller layer need minor adjustment to facilitate the judging step. Therefore, before introducing details of segment match, we present their inner compositions at first.

    Figure 3 Inner compositions in IO proxy and controller layer

    2) Inner compositions in IO proxy and controller layer

    As is described in section II, IO proxy is consisted of encapulator and decapsulator. Here, we further illustrates their specific implementing modes as indicated in Figure 3.

    When the packet_in messages arrives at the encapsulator, it will adopt tunnel protocol to insert a header into the packet. And the header contains protocol version, type, length, packet_id and module_id. Figure 4 provides the length of each field. And each unit represent 8 bit.

    0123 versiontypelength packet_id module_id

    Figure 4 The header of tunnel protocol

    As to the explicit explanation of these fields, we illustrate them in Table 1.

    Table 1 Notations of fields in the header

    Besides, there is a backend in front of each controller, or it can be taken as a new module we add in the controller. And its basic function is just extracting payload of the message and handing it to the rest modules of controller to handle. An advantage of this design is avoiding modifying existing modules, which brings simplicity and practicability. After the payload has been processed and new messages have been produced, the backend adds the header into the generated message again before sending to the arbiter. The reason why we reinsert the header is facilitating the following judging procedure in the arbiter. On receiving messages from the backend, the arbiter initiates the judging process which is going to be discussed in the next part. The decision result will be given to the decapsulator whose function is similar to the backend. Then it gets rid of the header and distributed the normal OpenFlow messages to the underlying switches.

    3) Decision process of flow rule

    As we mentioned before, that whether the arbiter can finally obtain the correct and effective flow rules is of extreme importance to the implementation of Mcad-SA. In this part, we will present the detailed process that how we acquire the most reliable and valid flow rule among multiple messages from the backend step by step. And this mission can be decomposed into four procedures: Synchronization, Segmentation, Comparison and Decision.

    ①Synchronization

    The purpose of synchronization is capturing all flow rules from each backend (or each controller) which are responding to the identical packet_in messages. Clearly, through matching two fields (packet_id and module_id) in the header, this object can be realized easily. And that’s the reason why we maintain the header all the time.

    ②Segmentation

    Due to difference of flow rules produced from various controllers, it’s impossible to conduct matching bit by bit. Thus, the OpenFlow message will be split into small segmentation according to field semantics.

    ③Comparison

    The comparison is focused on each specific segment. For different segments, the granularity of comparison is discriminatory. For example, strict match should be carried out on fields like IP source, IP destination and output port while vague match can be implemented on fields like priority and idle_time. The basis of field division is whether the value of a field in a rule is the same no matter which controller produces it when receiving the identical packet_in messages. If they are uniform, then the fields belong to the type of strict match and vice versa.In strict match, a larger value is assigned to the majority while a lower one is given to the minority. While in vague match, we neglect these difference and allocate the same value.

    ④Decision

    When comparison in each segment is finished and the corresponding scores are obtained. We sort the rules based on the total score in a descending order and pop up the first one as the output of the arbiter.

    Take the case in Figure 2 as the example, we depict the whole decision process in Figure 5 (the synchronization step is neglected).

    In above case, controller C1is controlled by the attacker. So it has the privilege to modify the fields of rule (R1). To obtain desired information, the attacker alters the output port into 2 and promotes the priority to the highest. In order to remove the modified rule, each rule is decomposed into three segments (IP src and dst, action and priority) and they are put into corresponding units to be handled independently. For segment 1, three controllers’ output are equal so they gain the same score (here the value is 1). While the situation is a bit different in segment 2, the action from R1is diverse from the rest. Therefore the score of R1is 0 and the rest is 1. In segment 3, the value of priority is different from each one, but this field belongs to vague match and it’s not critical to the result. Thus we set the score as 1 for all. Now we’ve already gotten the scores of all the segments, next these scores are summed up together. And the result is that the total score of R1is 2 while R2and R3are 3. This indicates that R2and R3are more reliable than R1. So in the final decision process, R2is poped up. Of course, there is a probability that the arbiter chooses R3eventually.

    Figure 5 An instance of decision process

    4) Time diagram of messages

    Figure 6 illustrates the time diagram of messages between various components. First, the workflow starts with request messages (packet_in messages) which are put forward by network elements. When they arrives at the proxy, it computes a new unique ID of packet (packet_id =) which is not being used in other existing transactions and inserts it into the header. Then the packets go straight to backend to remove the header before sending to specific modules. After the corresponding module has handled the message, the reply message is obtained with an ID of module (module_id = M). When the reply message returns to the backend, it reinserts the header which contains the packet_id. Then, reply messages continue to reach the arbiter and wait for processing. As to its decision strategy, we will discuss it in detail in the following part. Next, the proxy extracts the standardized OpenFlow messages and replies to network elements asking for requests.

    As to “controller-to-switch” messages defined in the OpenFlow specifications, the OpenFlow messages generated by controllers are ignored by the arbiter. They are simply relayed to backends then forwarded to the proxy. While the other procedures are similar to that of asynchronous OpenFlow messages. At present, backends and proxy can be regarded as forwarding equipment and don’t have any logical functions.

    5) Decision strategy of the arbiter

    In Section C, we introduce the deciding process of multiple flow rules. However, there is one more problem to be considered. It’s common that requirements of the underlying network are always varying according to specific situations. Sometimes, packet_in messages have to be responded swiftly to satisfy fast network changes. While sometimes the network doesn’t have high demands in terms of timeliness. Thus, it’s necessary for the arbiter to have the capability of adjusting to meet above needs. Here, we propose two decision strategies to achieve fore mentioned goals: one is AISO (all in single out ), the other is FIFO (first in first out ).

    Figure 6 Time diagram of messages

    ①AISO

    This strategy is suitable for the network which can tolerate heavy latency. And the concrete steps are exhibited in Figure 7.

    As messages from backends are unlikely to arrive at the arbiter simultaneously, so the message that comes first have to wait for other?1messages (givenrunning controllers)before the decision process. For the fake of convenience, the first arrived message (Msg) is put into the bottom of stack and so on. When the arbiter have receivedmessages, then it begins the decision process based on procedures in Section C and distributes the trustful flow rule to proxy.

    Figure 7 Steps of AISO

    ②FIFO

    This strategy is applied in circumstance where response time can’t exceed a threshold. Thus, it’s impractical to wait for the arrival of all messages because their arrival time may differ greatly from each other. At the same time, it takes some time to finish the decision process. So FIFO is the preferential choice whose procedures are presented in Figure 8.

    When adopting FIFO, the arbiter directly sends the message from the backend which reaches it first regardless of its correctness (Msgin the graph). Then the following process is equal to that of AISO till it produces Msg. And Msgwill be sent to the proxy only when the comparison result between it and the first dispatched rule isn’t identical, which means there’s something wrong with the previously distributed rule. However, this error won’t exert serious impact on the whole network since it will be rectified in an acceptable time.

    Figure 8 Steps of FIFO

    5 Evaluation

    In this section, theory analysis and simulation-based experiments are presented to verify the effectiveness of Mcad-SA and coherent method of flow rules we propose.

    5.1 Theory analysis of mcad-SA

    From Figure 9, it’s obvious to discover that Mcad-SA has significant disadvantage over traditional architectures with merely one controller. What’s more, the more controllers it has, the better reliability it can acquire. Besides, the more powerful single controller is, the more distinct security gain it obtains. Taking 3 controllers as the example, whenis 0.25, failure probability of Mcad-SA drops to approximately 0.15, whiledecreases to 0.05,Preduces sharply to less than 0.01. Thus, improving security of single controller is beneficial to intensify the security of Mcad-SA. In other words, relative techniques about elevating controllers’ security can be applied perfectly to Mcad-SA which is an architecture technology in nature. And it’s unquestionable that its security can be further strengthened afterdynamic is taken into account.

    Figure 9 Failure probability of Mcad-SA

    5.2 Experimental Results of Mcad-SA

    Next, we evaluate the performance of our implementation compared to single common controllers which Mcad-SA builds on. And three controllers that Mcad-SA adopts are Floodlight, ONOS and ODL[22]. When we test the average throughout in setting up new entries in the flow table between controllers and switches, we consider controllers operating in a purely reactive way. That means that each switch just has an empty flow table at the beginning, and each new flow request will be forwarded directly to controllers, which will then install flow entries on the flow table corresponding to that request. By the way, the application module running on controllers is learning switch.

    Our simulations are implemented in a network simulated in Mininet[23]which is a network simulation instrument for small-scale prototype. The simulated network we employ is consisted of 131 hosts and 127 switches in a binary tree layout where 4 servers is used for placing three controllers and modules (proxy and arbiter). And the configurations of four servers are listed in Table 2. As the network is a binary tree layout, a single requests generates 13 new flows across 13 switches in the worst case.

    1) Results of Mcad-SA’s performance

    Figure 10 illustrates the measurements we collect under different controllers (the decision strategy that the arbiter takes is AISO). And the measurement metrics we choose are relying on recommended SDN benchmarking metric[24].

    ①End-to-End flow setup duration: The average time is required to set up a full path from one host to another.

    ②Flow setup delay: The time it takes for a single flow entry in the flow table of a single switch to be established.

    From Figure 10, it’s obvious to discover that Mcad-SA experiences a slow down of around 2x when compared to Floodlight whose performance is the worst of three controllers. This result is not entirely unexpected and it is the increased cost in communication complexity and decision process of the arbiter that leads to extra cost of reaching consensus on all flow rules produced by each controller. However, these drops in performance are still acceptable and sufficient to maintain the basic requirement of the Internet. Of course, several methods could be used to mitigate the impact on performance. For example, if the arbiter adopts FIFO, the performance will be a bit lower than that of Floodlight because it’s not essential to replace the first distributed rule frequently in most cases. Besides, sample comparison is also a feasible means to guarantee the performance. In this case, the arbiter no longer executes comparison on each rule but at a certain interval. Thus, the performance will be influenced occasionally and it approximates the performance of single controller for most time. In general, Mcad-SA can adjust its deciding strategy to adapt to various situations to satisfy different requirement.

    Table 2 Notations of fields in the header

    2) Results of rules’ coherence in Mcad-SA

    Next, we discuss the results of rules’ coherencein different occasions inMcad-SA. In the simulation, we focus on flow_mod rule which is the most important message for switches. To test the effectiveness of Mcad-SA when it faces attackers, we conduct two groups of experiments. One is how Mcad-SA reacts when the controller collapses. The other is how Mcad-SA performs when the rules from controllers are modified.

    Figure 10 Performance measurement of Mcad-SA

    Figure 11 Reachability between two hosts without any failure

    Figure 12 Reachability between two hosts with acontroller’s failure

    ①Fault test of controllers

    Case 1 Three controller are operating well

    We verify the validity of Mcad-SA via testing the reachability between two hosts. And the test result is presented in Figure 11. Hosts can reach each other without question.

    Case 2 One controller is under state of failure

    We compromise each controller successively and test the reachability, the test result is presented in Figure 12. As we expected, the system won’t be affected when only one controller collapse, which indicates powerful robustness of Mcad-SA.

    Case 3 Two controllers are under state of failure

    However, the arbiter can’t determine whether single flow rule it receives is correct or not in this situation. Therefore, it considers all controllers are malicious and won’t transmit the rule to switches. So two hosts are unreachable as Figure 13 shows.

    ②Test of flow rules modification

    Case 1 Flow rules from three controllers are normal

    Here, reachability between hosts is also used to test the system’s effectiveness. First, we print the flow_mod packets that the arbiter receives from three controllers and present them in Figure 14. Then we test whether two hosts can be reached or not. As indicated in Figure 15, obviously, the communication between them is without any problem.

    Figure 13 Reachability between two hosts with two controllers’ failures

    Figure 14 Flow_mod packets received by the arbiter in case 1

    Figure 15 Reachability between two hosts without any modification

    Case 2 Flow rules from one controller are modified

    In this case, the flow rules of a controller are modified manually, which leads to some changes in the arbiter (Figure 16). The output of the flow rule from Floodlight is altered into 3 while that of the rest is 1. Nevertheless, a right decision is made by the arbiter and reachability between hosts isn’t affected (Figure 17).

    Case 3 Flow rules from two controllers are modified

    In this situation, the arbiter will receive three different flow_mod packets (Figure 18), which is difficult for it to determine which one is right. Thus, it refuses to hand out any flow rule just in case. Of course, packets from one host are unable to reach the other this moment (Figure 19).

    Figure 16 Flow_mod packets received by the arbiter in case 2

    Figure 17 Reachability between two hosts with modification of a controller’s flow rules

    Figure 18 Flow_mod packets received by the arbiter in case 3

    Figure 19 Reachability between two hosts with modification of two controllers’ flow rules

    6 Conclusion

    Security of SDN has gradually become a vital issue for enabling the network operate reliably. Focused on failures of controllers and flow-tampering attacks, an aware decision-making security architecture with multi-controller is proposed to prevent that kind of attack proactively. Through introducing heterogeneity, redundancy and dynamic into the control plane, the robustness, reliability and resilience of SDN can be significantly strengthened. Furthermore, we conduct profound research on how to ensure the consistency of flow rules from diverse controllers in this architecture. By means of segmentation and grading on different flow rules, we are able to choose the most trustful flow rules to send to underlying switches according to their respective final score (i.e. credibility). Theory analysis and simulation results proves feasibility, reliability and effectiveness of our methods. Actually, the defending concept that combines heterogeneity, dynamism and redundancy of existing techniques, means and components can be applied in various fields other than SDN. In the future, we plan to take dynamic into consideration and implement Mcad-SA completely with the real experimental platform.

    [1] MCKEOWN N, ANDERSON T, BALAKRISHNAN H, et al. OpenFlow: enabling innovation in campus networks[J]. ACM Sigcomm Computer Communication Review, 2008, 38(2): 69-74.

    [2] MONSANTO C, REICH J, FOSTER N, et al. Composing software-defined networks[C]//The 10th USENIX Conference on Networked Systems Design and Implementation, USENIX Association. 2013: 1-14.

    [3] KREUTZ D, RAMOS F M V, VERISSIMO P. Towards secure and dependable software-defined networks[C]//The Second ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking. 2013: 55-60.

    [4] CABAJ K, WYTR?BOWICZ J, KUKLI?SKI S, et al. SDN architecture impact on network security[C]//Federated Conference on Computer Science and Information Systems. 2014.

    [5] SCOTT-HAYWARD S, NATARAJAN S, SEZER S. A survey of security in software defined networks[J]. IEEE Communications Surveys & Tutorials, 2015, 18(1): 623-654.

    [6] PORRAS P, SHIN S, YEGNESWARAN V, et al. A security enforcement kernel for OpenFlow networks[C]// 2012: 121-126.

    [7] PORRAS P, CHEUNG S, FONG M, et al. Securing the Software-Defined Network Control Layer[C]//The 2015 Network and Distributed System Security Symposium (NDSS), San Diego, California. 2015.

    [8] JAIN S, KUMAR A, MANDAL S, et al. B4: experience with a globally-deployed software defined wan[C]//ACM SIGCOMM 2013 Conference on SIGCOMM. 2013:3-14.

    [9] BERDE P, HART J, HART J, et al. ONOS: towards an open, distributed SDN OS[C]//The Workshop on Hot Topics in Software Defined NETWORKING. 2010:1-6.

    [10] ELDEFRAWY K, KACZMAREK T. Byzantine fault tolerant software-defined networking (SDN) controllers[C]//Computer Software and Applications Conference. 2016: 208-213.

    [11] CELLO M, XU Y, WALID A, et al. BalCon: a distributed elastic SDN control via efficient switch migration[C]//IEEE International Conference on Cloud Engineering. 2017.

    [12] GUO Z, XU Y, CELLO M, et al. JumpFlow: reducing flow table usage in software-defined networks[J]. Computer Networks, 2015, (92): 300-315.

    [13] MCGEER R. A safe, efficient update protocol for openflow networks[C]//The Workshop on Hot Topics in Software Defined Networks. 2012: 61-66.

    [14] SUKAPURAM R, BARUA G. Enhanced algorithms for consistent network updates[C]//Network Function Virtualization and Software Defined Network. 2016: 184-190.

    [15] HUSSEIN A, ELHAJJ I H, CHEHAB A, et al. SDN verification plane for consistency establishment[C]//Computers and Communication. IEEE, 2016:519-524.

    [16] HUA J, GE X, ZHONG S. FOUM: a flow-ordered consistent update mechanism for software-defined networking in adversarial settings[C]//The International Conference on Computer Communications. 2016: 1-9.

    [17] Reitblatt M, Foster N, Rexford J, et al. Consistent updates for software-defined networks: change you can believe in![C]//ACM Workshop on Hot Topics in Networks. 2011:7.

    [18] Ryu SDN Framework[EB/OL]. http://osrg.github.io/ryu/.

    [19] FloodLight. “Open SDN controller”[EB/OL]. http://floodlight. openflowhub.org/.

    [20] QI C, WU J, HU H, et al. Dynamic-scheduling mechanism of controllers based on security policy in software-defined network[J]. Electronics Letters, 2016, 52(23):1918-1920.

    [21] QI C, WU J, HU H, et al. An intensive security architecture with multi-controller for SDN[C]//Computer Communications Workshops. 2016: 401-402.

    [22] OpenDaylightConsortium[EB/OL]. http://www.opendaylight.org.

    [23] LANTZ B, HELLER B, MCKEOWN N. A network in a laptop:rapid prototyping for software-defined networks[C]//ACM Workshop on Hot Topics in Networks. 2010:1-6.

    [24] MACHAT R, BANKS S, CALABRIA F, et al. ISSU benchmarking methocldogy[DB/OL]. http://tools.ietf.org/html/draft-banks-bmwg- issu-meth-05.

    10.11959/j.issn.2096-109x.2017.00223

    2017-10-11, Revised Data: 2017-11-08.

    LV Ying-ying, 1200062702@pku.edu.cn

    The National Natural Science Foundation of China (No.61521003, No.61602509), The National Key R&D Program of China (No.2016YFB0800100, No.2016YFB0800101), The Key Technologies Research and Development of Program of Henan Province (No.172102210615)

    LV Yingying (1993-), born in Jiangxi. He is working on his master degree at National Digital Switching System Engineering Technology Research Center. His research interests include cyber security and software-defined network.。

    GUO Yunfei (1963-), born in Henan. He is a Ph.D supervisor and professor at National Digital Switching System Engineering Technology Research Center. His main research interests include cloud security, telecommunication network security and cyber security.

    QI Chao (1991-), born in Jiangxi. He is working on his Ph.D degree at National Digital Switching System Engineering Technology Research Center. His research interests include cyber security and software-defined network.

    WU Qi (1991-), born in Jiangsu. He is working on his Ph.D degree at National Digital Switching System Engineering Technology Research Center. His research interests include cyber security and software-defined network.

    WANG Yawen (1990-), born in Henan. He is working on his Ph.D degree at National Digital Switching System Engineering Technology Research Center. His research interests include cloud computing and cyber security.

    看十八女毛片水多多多| 七月丁香在线播放| 老司机影院成人| 亚洲精品影视一区二区三区av| 亚洲国产最新在线播放| 免费观看性生交大片5| 欧美zozozo另类| 久久久久精品久久久久真实原创| 国内揄拍国产精品人妻在线| 日本免费在线观看一区| 亚洲第一区二区三区不卡| 1000部很黄的大片| 自拍偷自拍亚洲精品老妇| 在线观看一区二区三区| 丰满人妻一区二区三区视频av| 国产免费一级a男人的天堂| 国产极品精品免费视频能看的| 色综合亚洲欧美另类图片| 天美传媒精品一区二区| 欧美另类亚洲清纯唯美| 亚洲色图av天堂| av国产免费在线观看| 一级二级三级毛片免费看| 熟女人妻精品中文字幕| 中文字幕av在线有码专区| 成人毛片60女人毛片免费| 亚洲av免费在线观看| 午夜老司机福利剧场| av线在线观看网站| 亚洲国产高清在线一区二区三| 国产精品av视频在线免费观看| 午夜亚洲福利在线播放| 精品99又大又爽又粗少妇毛片| 日本熟妇午夜| 久久婷婷人人爽人人干人人爱| 日韩av在线大香蕉| 午夜久久久久精精品| 中文资源天堂在线| 国产91av在线免费观看| 亚洲精品aⅴ在线观看| 黄色日韩在线| av在线蜜桃| 日本与韩国留学比较| 日韩制服骚丝袜av| 国产成人福利小说| 免费观看人在逋| 亚洲精品国产av成人精品| 亚洲成人久久爱视频| 成人二区视频| 欧美97在线视频| 久久亚洲国产成人精品v| 亚洲精品aⅴ在线观看| 久久人人爽人人爽人人片va| 少妇熟女欧美另类| 天天一区二区日本电影三级| 免费av毛片视频| 国模一区二区三区四区视频| av在线老鸭窝| 国产精品综合久久久久久久免费| 成人漫画全彩无遮挡| 桃色一区二区三区在线观看| 久久精品国产亚洲av涩爱| 日韩欧美精品v在线| 午夜亚洲福利在线播放| 国产精品久久电影中文字幕| 天堂中文最新版在线下载 | 精品久久久久久久久久久久久| 黄色一级大片看看| 男人舔女人下体高潮全视频| 国产精华一区二区三区| 小蜜桃在线观看免费完整版高清| 日韩欧美精品v在线| 国产高清有码在线观看视频| 国产大屁股一区二区在线视频| 在线观看66精品国产| 亚洲av男天堂| 人妻少妇偷人精品九色| 少妇的逼水好多| 亚洲精品日韩在线中文字幕| av视频在线观看入口| 高清毛片免费看| 在线a可以看的网站| 美女国产视频在线观看| 精品人妻熟女av久视频| 亚洲人成网站在线观看播放| 日本午夜av视频| 欧美激情在线99| 日本三级黄在线观看| 99视频精品全部免费 在线| 国产私拍福利视频在线观看| 欧美色视频一区免费| 美女被艹到高潮喷水动态| 日韩人妻高清精品专区| 69av精品久久久久久| 色尼玛亚洲综合影院| 国产av码专区亚洲av| 国产欧美另类精品又又久久亚洲欧美| 人妻系列 视频| 国产伦一二天堂av在线观看| 男人舔女人下体高潮全视频| 精品一区二区三区视频在线| 国产精品不卡视频一区二区| 久久婷婷人人爽人人干人人爱| 禁无遮挡网站| 尾随美女入室| 亚洲av男天堂| 日韩一区二区三区影片| 在线观看66精品国产| 黑人高潮一二区| 成人性生交大片免费视频hd| 欧美激情久久久久久爽电影| 国产精品一区二区三区四区久久| 久久99热6这里只有精品| 久久精品国产亚洲av涩爱| 亚洲欧美成人综合另类久久久 | 人妻夜夜爽99麻豆av| 有码 亚洲区| 午夜激情福利司机影院| 国产黄片美女视频| 九九热线精品视视频播放| 欧美3d第一页| 国产高清不卡午夜福利| 国产精品人妻久久久影院| 丝袜美腿在线中文| 免费av毛片视频| 97超碰精品成人国产| 亚洲在线自拍视频| 中文字幕av在线有码专区| 免费av不卡在线播放| 欧美又色又爽又黄视频| 亚洲精品色激情综合| 免费观看性生交大片5| 亚洲成人久久爱视频| 精品人妻一区二区三区麻豆| 一个人看视频在线观看www免费| 国产免费一级a男人的天堂| 国产伦精品一区二区三区视频9| 免费大片18禁| 午夜精品在线福利| 老女人水多毛片| 国产黄片美女视频| 免费大片18禁| 人妻系列 视频| kizo精华| 我的女老师完整版在线观看| 国产视频内射| 欧美日韩综合久久久久久| 中文精品一卡2卡3卡4更新| 三级毛片av免费| 久久久欧美国产精品| 国产午夜精品久久久久久一区二区三区| 欧美zozozo另类| 亚洲人成网站高清观看| 91av网一区二区| 能在线免费看毛片的网站| 久久久久久久亚洲中文字幕| 蜜臀久久99精品久久宅男| 一二三四中文在线观看免费高清| 成人欧美大片| 亚洲美女视频黄频| 在线免费观看不下载黄p国产| 不卡视频在线观看欧美| 国产精品一区二区三区四区久久| 如何舔出高潮| 午夜福利网站1000一区二区三区| 91久久精品国产一区二区成人| 最近最新中文字幕大全电影3| 我的老师免费观看完整版| 久久99热这里只有精品18| 欧美精品国产亚洲| 中文字幕熟女人妻在线| 亚洲熟妇中文字幕五十中出| 亚洲av中文字字幕乱码综合| 亚洲,欧美,日韩| 天堂中文最新版在线下载 | 淫秽高清视频在线观看| 精品一区二区三区视频在线| 精品久久久久久久久久久久久| 国产探花极品一区二区| 国产精品国产三级专区第一集| 欧美一区二区国产精品久久精品| 精品欧美国产一区二区三| 观看免费一级毛片| 夫妻性生交免费视频一级片| 国产不卡一卡二| 日本av手机在线免费观看| 国产亚洲一区二区精品| kizo精华| 国产亚洲5aaaaa淫片| 色吧在线观看| 久久精品久久久久久久性| 色网站视频免费| 国产精品爽爽va在线观看网站| 内地一区二区视频在线| 2022亚洲国产成人精品| 国产精品熟女久久久久浪| 麻豆成人av视频| 最近最新中文字幕免费大全7| 久久精品国产亚洲网站| 永久网站在线| 男女视频在线观看网站免费| 高清视频免费观看一区二区 | 亚洲va在线va天堂va国产| 久久久久久久久中文| 久久精品国产自在天天线| 好男人在线观看高清免费视频| 久久久久久久久久成人| 精品久久国产蜜桃| 国产高清三级在线| 少妇丰满av| 国产精品久久久久久精品电影小说 | 91aial.com中文字幕在线观看| 插阴视频在线观看视频| 国产精品国产高清国产av| 国产成人精品婷婷| 国产在线一区二区三区精 | 国产精品嫩草影院av在线观看| 国产伦在线观看视频一区| 亚洲精品乱久久久久久| 欧美高清性xxxxhd video| 国产女主播在线喷水免费视频网站 | 丰满少妇做爰视频| 久久久久国产网址| 最近视频中文字幕2019在线8| 亚洲精品一区蜜桃| 欧美日韩精品成人综合77777| 成人性生交大片免费视频hd| 人体艺术视频欧美日本| 99国产精品一区二区蜜桃av| 国产伦理片在线播放av一区| 床上黄色一级片| 亚洲人成网站在线播| 亚洲欧美精品自产自拍| videossex国产| 欧美日本视频| 国产亚洲午夜精品一区二区久久 | 久久精品国产99精品国产亚洲性色| 国产一级毛片七仙女欲春2| 最近中文字幕高清免费大全6| 亚洲三级黄色毛片| 国产精品一及| 99热这里只有精品一区| 91aial.com中文字幕在线观看| 男人和女人高潮做爰伦理| 日韩国内少妇激情av| 有码 亚洲区| 99久久成人亚洲精品观看| av在线观看视频网站免费| 国产精品熟女久久久久浪| 少妇高潮的动态图| 亚洲国产欧洲综合997久久,| 69av精品久久久久久| 蜜臀久久99精品久久宅男| 在线观看一区二区三区| 国产精品日韩av在线免费观看| 久久精品久久精品一区二区三区| 成人av在线播放网站| 国产探花在线观看一区二区| 国产免费一级a男人的天堂| 亚洲av成人av| 亚洲国产色片| 欧美高清成人免费视频www| 亚洲真实伦在线观看| 久久99热这里只频精品6学生 | av专区在线播放| 2022亚洲国产成人精品| 国产黄色小视频在线观看| av线在线观看网站| 亚洲第一区二区三区不卡| 麻豆国产97在线/欧美| 韩国av在线不卡| 免费看光身美女| 精品一区二区免费观看| 久久6这里有精品| 18禁动态无遮挡网站| АⅤ资源中文在线天堂| 极品教师在线视频| av在线观看视频网站免费| 亚洲欧美日韩高清专用| 久久精品91蜜桃| 免费搜索国产男女视频| 黄色配什么色好看| 日韩成人av中文字幕在线观看| av专区在线播放| 亚洲一级一片aⅴ在线观看| 亚洲av不卡在线观看| 午夜日本视频在线| 日韩 亚洲 欧美在线| 你懂的网址亚洲精品在线观看 | 亚洲av日韩在线播放| 少妇猛男粗大的猛烈进出视频 | 亚洲丝袜综合中文字幕| av又黄又爽大尺度在线免费看 | 亚洲国产精品sss在线观看| 日韩 亚洲 欧美在线| 亚洲第一区二区三区不卡| 一个人观看的视频www高清免费观看| av在线亚洲专区| 国国产精品蜜臀av免费| 成人美女网站在线观看视频| 国产成人免费观看mmmm| 九九爱精品视频在线观看| 自拍偷自拍亚洲精品老妇| 能在线免费观看的黄片| 边亲边吃奶的免费视频| 国产精品久久久久久精品电影小说 | 免费看美女性在线毛片视频| 亚洲丝袜综合中文字幕| 麻豆国产97在线/欧美| av在线老鸭窝| 我的女老师完整版在线观看| 亚洲天堂国产精品一区在线| 少妇丰满av| 女人被狂操c到高潮| 午夜日本视频在线| 99热全是精品| 汤姆久久久久久久影院中文字幕 | 特大巨黑吊av在线直播| 2021天堂中文幕一二区在线观| 国产真实乱freesex| 夜夜看夜夜爽夜夜摸| 男女视频在线观看网站免费| 人人妻人人澡人人爽人人夜夜 | 男插女下体视频免费在线播放| 亚洲人成网站在线观看播放| 精品一区二区免费观看| 久久99热6这里只有精品| 大香蕉久久网| 亚洲一级一片aⅴ在线观看| 人妻系列 视频| 91午夜精品亚洲一区二区三区| 久久久久九九精品影院| 成年女人看的毛片在线观看| 一本一本综合久久| 亚洲精品aⅴ在线观看| 亚洲四区av| 日本黄色视频三级网站网址| 成人无遮挡网站| 国内精品一区二区在线观看| 日日摸夜夜添夜夜爱| 久久久久久久久久成人| 91在线精品国自产拍蜜月| 国产精品99久久久久久久久| 日本爱情动作片www.在线观看| 伦精品一区二区三区| 变态另类丝袜制服| 一级av片app| 天天躁夜夜躁狠狠久久av| 日日摸夜夜添夜夜爱| 99久久成人亚洲精品观看| 最近的中文字幕免费完整| 啦啦啦观看免费观看视频高清| 高清午夜精品一区二区三区| 麻豆国产97在线/欧美| 国产精品蜜桃在线观看| 欧美成人午夜免费资源| 啦啦啦啦在线视频资源| 麻豆一二三区av精品| 亚洲精品,欧美精品| 丰满乱子伦码专区| 中文字幕制服av| 亚洲欧美精品自产自拍| 欧美性感艳星| 日本一本二区三区精品| 亚洲精品日韩在线中文字幕| 欧美xxxx黑人xx丫x性爽| 97超碰精品成人国产| 我的女老师完整版在线观看| 女人被狂操c到高潮| 身体一侧抽搐| 亚洲av熟女| 国产欧美日韩精品一区二区| 成人国产麻豆网| 非洲黑人性xxxx精品又粗又长| 美女脱内裤让男人舔精品视频| 国产精品女同一区二区软件| 国产日韩欧美在线精品| 精品久久久久久久久亚洲| 男人和女人高潮做爰伦理| 亚洲欧美精品自产自拍| 成人av在线播放网站| 久久热精品热| 韩国av在线不卡| 欧美日本亚洲视频在线播放| 99久国产av精品| 看非洲黑人一级黄片| 亚洲久久久久久中文字幕| 久久精品夜夜夜夜夜久久蜜豆| 亚洲不卡免费看| 九九久久精品国产亚洲av麻豆| 亚洲国产精品久久男人天堂| 美女黄网站色视频| 欧美潮喷喷水| 中文字幕熟女人妻在线| 国产精品乱码一区二三区的特点| av卡一久久| 国产精品1区2区在线观看.| 18禁在线无遮挡免费观看视频| av福利片在线观看| 久久久色成人| 久久欧美精品欧美久久欧美| 嘟嘟电影网在线观看| 在线观看一区二区三区| 国产亚洲av片在线观看秒播厂 | 亚洲成人av在线免费| 国产国拍精品亚洲av在线观看| 别揉我奶头 嗯啊视频| 久久久久精品久久久久真实原创| 国产综合懂色| 国产亚洲午夜精品一区二区久久 | 精品无人区乱码1区二区| 国产精品伦人一区二区| 男人狂女人下面高潮的视频| 伊人久久精品亚洲午夜| 美女国产视频在线观看| 三级毛片av免费| 天堂中文最新版在线下载 | 亚洲人成网站高清观看| 九九久久精品国产亚洲av麻豆| 国产单亲对白刺激| 国产极品天堂在线| 欧美色视频一区免费| 99视频精品全部免费 在线| 亚洲aⅴ乱码一区二区在线播放| 国产精品不卡视频一区二区| 国产国拍精品亚洲av在线观看| 国产在视频线在精品| 看非洲黑人一级黄片| 久久精品久久久久久久性| 在线观看av片永久免费下载| 亚洲va在线va天堂va国产| 国产精品.久久久| 超碰av人人做人人爽久久| 亚洲欧美一区二区三区国产| 欧美一区二区精品小视频在线| 久久精品国产亚洲网站| 欧美bdsm另类| 亚洲在线自拍视频| 激情 狠狠 欧美| 亚洲在久久综合| 少妇猛男粗大的猛烈进出视频 | 国产精品一区二区三区四区免费观看| 最近手机中文字幕大全| 日韩av在线免费看完整版不卡| 青春草国产在线视频| av国产免费在线观看| 99久久人妻综合| 亚洲熟妇中文字幕五十中出| 中国美白少妇内射xxxbb| 18+在线观看网站| 91在线精品国自产拍蜜月| 波野结衣二区三区在线| 国产淫片久久久久久久久| 波多野结衣高清无吗| 亚洲精品色激情综合| 国产91av在线免费观看| 美女大奶头视频| 日本黄色片子视频| 久久久久久九九精品二区国产| 日韩亚洲欧美综合| 夜夜看夜夜爽夜夜摸| 午夜福利在线观看吧| 亚洲电影在线观看av| 久99久视频精品免费| 亚洲欧美日韩无卡精品| videos熟女内射| 久久久久久国产a免费观看| 国产免费男女视频| 久久久久九九精品影院| 亚洲精品日韩在线中文字幕| 精品99又大又爽又粗少妇毛片| 黑人高潮一二区| 97超碰精品成人国产| 国产免费视频播放在线视频 | 国产成年人精品一区二区| 看片在线看免费视频| 最近中文字幕高清免费大全6| 99视频精品全部免费 在线| 乱系列少妇在线播放| 国产真实伦视频高清在线观看| 亚洲精品一区蜜桃| 欧美一区二区国产精品久久精品| www.av在线官网国产| 大香蕉97超碰在线| 村上凉子中文字幕在线| 老师上课跳d突然被开到最大视频| 精品久久久久久久久av| 人妻制服诱惑在线中文字幕| 亚洲四区av| 免费看a级黄色片| 高清毛片免费看| 国产av不卡久久| 久久精品国产亚洲av涩爱| 国语对白做爰xxxⅹ性视频网站| 久久久亚洲精品成人影院| 99久国产av精品| 亚洲精品乱久久久久久| 亚洲无线观看免费| 国语对白做爰xxxⅹ性视频网站| 又粗又爽又猛毛片免费看| 欧美另类亚洲清纯唯美| 少妇的逼好多水| 久久久久久久久久成人| 春色校园在线视频观看| 日本与韩国留学比较| av黄色大香蕉| 亚洲最大成人av| 欧美最新免费一区二区三区| 久久精品夜色国产| 九九久久精品国产亚洲av麻豆| 免费一级毛片在线播放高清视频| 岛国在线免费视频观看| 纵有疾风起免费观看全集完整版 | 国产成人a区在线观看| 亚洲av电影在线观看一区二区三区 | 极品教师在线视频| 国产亚洲91精品色在线| 亚洲欧美日韩东京热| 男人和女人高潮做爰伦理| 国产真实伦视频高清在线观看| 久久人妻av系列| 乱人视频在线观看| 中文亚洲av片在线观看爽| 青春草国产在线视频| 国产私拍福利视频在线观看| 尾随美女入室| 国产精华一区二区三区| 少妇人妻一区二区三区视频| 欧美一级a爱片免费观看看| 校园人妻丝袜中文字幕| 国内精品美女久久久久久| 亚洲精品456在线播放app| 国产欧美另类精品又又久久亚洲欧美| 搞女人的毛片| 国产老妇伦熟女老妇高清| 亚洲精品成人久久久久久| 免费观看精品视频网站| 亚洲aⅴ乱码一区二区在线播放| 成人毛片a级毛片在线播放| 一卡2卡三卡四卡精品乱码亚洲| 久久久久久久久大av| 中国美白少妇内射xxxbb| 久久久久九九精品影院| 男的添女的下面高潮视频| 午夜激情欧美在线| av在线观看视频网站免费| 美女高潮的动态| 色噜噜av男人的天堂激情| 日本三级黄在线观看| 久久亚洲精品不卡| 国产高清三级在线| 亚洲美女视频黄频| 天美传媒精品一区二区| 国产精品一区二区在线观看99 | 我的女老师完整版在线观看| 国产日韩欧美在线精品| 久久精品综合一区二区三区| 日韩欧美在线乱码| 综合色丁香网| 不卡视频在线观看欧美| 99九九线精品视频在线观看视频| 亚洲av中文字字幕乱码综合| 我要看日韩黄色一级片| 日本熟妇午夜| 亚洲精品影视一区二区三区av| 高清午夜精品一区二区三区| 国产片特级美女逼逼视频| 久久久午夜欧美精品| 亚洲一区高清亚洲精品| 欧美日韩精品成人综合77777| av线在线观看网站| 欧美精品国产亚洲| 欧美高清成人免费视频www| 日本av手机在线免费观看| 亚洲经典国产精华液单| 2021少妇久久久久久久久久久| 两个人的视频大全免费| 久久人人爽人人片av| 97人妻精品一区二区三区麻豆| 亚洲久久久久久中文字幕| 国产一区二区亚洲精品在线观看| 在线观看66精品国产| 久久精品久久久久久久性| 久久精品影院6| 免费看光身美女| 最近2019中文字幕mv第一页| 色吧在线观看| 国内精品一区二区在线观看| 少妇人妻精品综合一区二区| 在线免费观看的www视频| 久久鲁丝午夜福利片| 免费黄色在线免费观看| 丰满人妻一区二区三区视频av| 少妇熟女aⅴ在线视频| 午夜激情欧美在线| 黑人高潮一二区| 亚洲色图av天堂| 成年免费大片在线观看| 亚洲内射少妇av| 人体艺术视频欧美日本| 晚上一个人看的免费电影| 亚洲精品国产成人久久av| 成年女人看的毛片在线观看| 精品99又大又爽又粗少妇毛片| 中国国产av一级| 成人毛片60女人毛片免费| 亚洲国产精品国产精品| 我要搜黄色片| 免费av不卡在线播放| 1024手机看黄色片| 亚洲精品久久久久久婷婷小说 | 精品久久久久久久人妻蜜臀av| 在线观看美女被高潮喷水网站| 国语自产精品视频在线第100页| 日本欧美国产在线视频|