Next Article in Journal
An IT Service Management Literature Review: Challenges, Benefits, Opportunities and Implementation Practices
Previous Article in Journal
Analysis and Prediction of COVID-19 Using SIR, SEIQR, and Machine Learning Models: Australia, Italy, and UK Cases
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

BGP Neighbor Trust Establishment Mechanism Based on the Bargaining Game

1
School of Computer Electrical and Information, Guangxi University, Nanning 530004, China
2
Guangxi Colleges and Universities Key Laboratory of Multimedia Communications and Information Processing, Guangxi University, Nanning 530004, China
*
Author to whom correspondence should be addressed.
Information 2021, 12(3), 110; https://doi.org/10.3390/info12030110
Submission received: 7 December 2020 / Revised: 26 February 2021 / Accepted: 27 February 2021 / Published: 4 March 2021
(This article belongs to the Section Information and Communications Technology)

Abstract

:
The Border Gateway Protocol (BGP) is the standard inter-domain route protocol on the Internet. Autonomous System (AS) traffic is forwarded by the BGP neighbors. In the route selection, if there are malicious or inactive neighbors, it will affect the network’s performance or even cause the network to crash. Therefore, choosing trusted and safe neighbors is an essential part of BGP security research. In response to such a problem, in this paper we propose a BGP Neighbor Trust Establishment Mechanism based on the Bargaining Game (BNTE-BG). By combining service quality attributes such as bandwidth, packet loss rate, jitter, delay, and price with bargaining game theory, it allows the AS to select trusted neighbors which satisfy the Quality of Service independently. When the trusted neighbors are forwarding data, we draw on the gray correlation algorithm to calculate neighbors’ behavioral trust and detect malicious or inactive BGP neighbors.

1. Introduction

Currently, the Border Gateway Protocol (BGP) [1] is the only inter-domain route protocol used on the Internet and is the key component of the Internet route infrastructure. However, the designers of the BGP did not initially consider security issues, which led to the BGP’s security vulnerability [2]. Existing research [3,4,5,6,7] mostly protects Autonomous System (AS) traffic data by verifying the authenticity and integrity of routing information. However, how to confirm trusted neighbors is also an important issue. Neighbors play an important role in the BGP protocol. Due to the large scale and dynamic nature of the Internet, AS data must rely on neighbors to reach the destination network. If an AS establishes a neighbor relationship with a malicious/inactive AS, the AS data will not be forwarded efficiently. Malicious/inactive neighbors will restrict AS network traffic by setting routing policies [8]. For example, some inactive neighbors will adopt the “hot potato” [9] routing strategy to reduce the overhead caused by traffic passing through the domain and choose the fastest exit from the domain, regardless of its path length through other networks. Even malicious/inactive neighbors will launch malicious attacks, causing the AS network to paralyze. For example, in May 2004, DataOne, an internet service provider in Malaysia, announced to its neighbors the prefix of Yahoo’s data center in Santa Clara, California, which caused the network of neighbors to go down. Therefore, establishing a safe and trusted neighbor relationship is a key issue in BGP security research.
In researching about the BGP neighbor trust establishment mechanism, we must first realize that deploying any security mechanism on the BGP will have a certain impact on it. Therefore, it should be easy to deploy and achieve security protection. Easy to deploy means that the security mechanism added to the BGP should minimize the impact on it, such as increased storage and resource overhead, the impact of convergence time, and scalability. Security protection means that it should allow the arbitrary AS to establish neighbor relationships with trusted ASes. The two ASes involved in neighbor establishment belong to different Internet Service Providers (ISPs). Thus, ASes are profit-seeking and selfish. It must consider the practical factors and encourage ASes to establish a trusted neighbor relationship. For the BGP trusted neighbor, there are some relevant studies. For example, some researchers have introduced trust technology [10,11,12,13,14] to inter-domain security research. Its basic idea is to construct a reputation system by evaluating the target AS’s behaviors. However, the evaluation result has uncertainty. It is not easy to guarantee safety. Yi et al. [15] proposed a Neighbor-specific BGP (NS-BGP) mechanism based on specific neighbors. By remodeling the route export and import strategy, the BGP routers can customize routes for each neighbor flexibly. However it does not take into account the AS’s selfishness. Besides, the above solutions did not discuss the pros and cons of neighbors’ service performance during the operation of the BGP protocol, such as bandwidth, packet loss rate, jitter, and delay. Thus, studying the BGP neighbor trust establishment mechanism, which is easy to deploy and can provide security protection, has important theoretical value and practical significance.
Since the AS is a rational entity driven by customer needs, we can describe the BGP neighbor trust established as a cooperation between the AS and the adjacent AS on network service quality. This cooperation has the following characteristics: (1) In the process of cooperation, both the AS and the adjacent AS will pursue the maximization of interests, and there is a game of interests between them. (2) As the BGP neighbor establishment process is based on the Transmission Control Protocol (TCP), the AS and the adjacent AS can interact dynamically through a three-way handshake protocol. Based on these two characteristics, we propose a BGP Neighbor Trust Establishment Mechanism based on the Bargaining Game (BNTE-BG). The bargaining game [16,17,18,19] is a game process in which participants with common interests try to reach a consensus when facing conflict. During the game, the AS and the adjacent AS can flexibly negotiate bandwidth, packet loss rate, jitter, delay, and payment price according to their own preferences. When the negotiation is successful, the AS judges the adjacent AS as a trusted neighbor, and they establish a neighbor relationship. When the negotiation fails, the AS judges the adjacent AS as an untrusted neighbor, and they do not establish a neighbor relationship. When trusted neighbors start work, we draw on the gray correlation algorithm [20] to design a detection algorithm for evaluating its behavioral trust, that is, to detect whether the bandwidth, packet loss rate, jitter, and delay of the data traffic meet the negotiated agreement. Through the detection algorithm, we can detect malicious/inactive neighbors.
The main contributions of this paper are as follows: (1) We propose a BGP neighbor trust establishment mechanism based on the bargaining game, which allows an AS to select trusted neighbors that meet the network service quality. (2) We draw on the gray correlation algorithm to detect malicious/inactive BGP neighbors. The advantages of the above work are as follows: Using bargaining game theory, an AS can independently choose trusted neighbors according to its own security strategy; the services quality is guaranteed by negotiating service quality attributes such as bandwidth, packet loss rate, jitter, and delay; by detecting malicious/inactive neighbors, the loss of AS is effectively reduced.
The rest of the paper is organized as follows. In Section 2, we discuss research related to BGP security protection. Section 3 introduces the bargaining game model and proposes the BGP neighbor trust mechanism based on the bargaining game. Section 4 describes the detection mechanism of BGP malicious/inactive neighbors. In Section 5, we provide details of the simulated experiment and efficiency analysis. Finally, conclusions are drawn in Section 6.

2. Related Work

To date, there have been many studies on BGP security, which are mainly divided into BGP security extension and abnormal route detection. The main research results in BGP security extension are Secure BGP (S-BGP) [3], secure origin BGP (soBGP) [4], and pretty security (psBGP) [5]. The most complete and representative work is S-BGP. S-BGP protocol uses digital certificates and digital signatures to verify the credibility of routing information. Although these solutions can effectively guarantee BGP security, they have not been implemented on the Internet due to difficulties in deployment.
Anomaly detection is one of the methods to protect BGP route security. The core work of anomaly detection is to diagnose and analyze the characteristics of abnormal behavior on the network, and then identify the abnormal behavior and information and send an alarm to the victim. The main research results in this field are Prefix Hijack Alert System (PHAS) [21] and iSPY [22]. Although anomaly detection can detect incorrect routes from route information, it cannot prevent malicious ASes from declaring untrusted routes again. The detection result also depends on the attack feature extraction algorithm and route data set, and there will be certain errors.
Simultaneously, more and more researchers have proposed methods to solve BGP security problems from the perspective of identifying trusted ASes. It is a feasible method besides security extension and anomaly detection. One study [10] shows that the reputation mechanism has an incentive effect, effectively reducing the propagation speed of false information and inhibiting deceptive behavior. The inter-domain routing system has the conditions to establish a reputation mechanism. Yu et al. [11] proposed a distributed reputation protocol for cooperation between ASes. The key idea is to simulate the trust relationship in the real world, where an AS can selectively receive information collected from neighbors. Konte et al. [12] proposed the AS reputation system, ASwatch, which can identify a malicious AS by monitoring the credibility of its behavior. Experimental results show that ASwatch can detect 93% of malicious ASes, and the false alarm rate is only 5%. Siganos [13] proposed a neighbor watch method, where ASes form a trusted group and monitor abnormal ASes by exchanging information and querying abnormal results. Literature [14] proposed the AS-TRUST mechanism. This analyzes the collected update messages and forms different types of feedback, and then uses the Bayes algorithm to calculate the reputation of a global AS.
Inter-domain trust technology is a lightweight solution with good implementation capability. At the same time, it can incentivize legitimate ASes to punish malicious ASes and improve overall inter-domain security. In recent years, it has received increasing attention from researchers

3. The BGP Neighbor Trust Mechanism Based on the Bargaining Game

3.1. Related Definitions

To facilitate the introduction of our mechanism, this section provides the relevant concepts and definitions.
Definition 1.
The service quality attribute vector is the attribute index used to describe the Quality of Service (QoS) and price. It comprises bandwidth, packet loss rate, jitter, delay, and price. We mark it as X = { x 1 , x 2 , x 3 , x 4 , x 5 } ={bandwidth, packet loss rate, jitter, delay, price}. For attributes such as bandwidth, the larger they are, the better the QoS. We call them benefit attributes x i . For attributes such as packet loss rate, jitter, and delay, the smaller they are, the better the QoS. We call them cost attributes x j . To facilitate implementation, we classify the “price” attribute as the cost attribute.
Definition 2.
The BGP trusted neighbor refers to neighbor routers that provide QoS, which is within the acceptable range.

3.2. Bargaining Game Model

This section draws on the bargaining game model. The bargaining model is made of seven tuples of the form <seller, buyer, Xacc, Xpro, Un, δn, Tn>. Here, s e l l e r represents the owner of the resource; b u y e r represents the requester of good QoS; X a c c represents the range of acceptable service quality attribute vector for the b u y e r ; X p r o represents the range of service quality attribute vector that the s e l l e r can provide;   U n represents b u y e r ’s or s e l l e r ’s payoffs; δ n represents b u y e r or s e l l e r ’s negotiation ability; and T n represents b u y e r ’s or s e l l e r ’s number of quotations. A bargaining game consists of three steps—setup system parameter, quote, and dicker judgment—as follows:
  • Setup System Parameter. b u y e r sets the service quality attribute vector range X a c c . s e l l e r sets the service quality attribute vector range X p r o . X a c c and X p r o are private information and will not be disclosed to the public.
  • Quote. Within the number of quotations T n , given X a c c / X p r o , δ n and the current quotation number t n ( t n T n ) , b u y e r / s e l l e r generates the t n th service quality attribute quotation vector X ( t n ) , n { s e l l e r ,   b u y e r } .
  • Dicker Judgment. Within the number of quotations T n , given the service quality attribute quotation vector X ( t n ) , b u y e r / s e l l e r calculates the payoff U n . When U n is greater than or equal to the expected payoff, it outputs “True”. The negotiation is successful and the game ends. When U n is less than the expected payoff, it outputs “False”. The negotiation continues.
  • If the b u y e r and s e l l e r fail to reach an agreement within the deadline, the negotiation ends.

3.3. BNTE-BG Mechanism

In the BGP neighbor establishment process, first, ASes with different AS numbers complete the TCP connection at the transport layer and then exchange the parameters through the Finite State Machine (FSM). We will combine the bargaining game model with the first stage of BGP neighbor establishment, proposing BNTE-BG. The mechanism process is as follows:
  • System Initialization. The BGP router sets the service quality attribute vector range X a c c and X p r o independently. X a c c = [ X m i n a c c ,   X m a x a c c ] represents the range of service quality attributes that the BGP router can accept.   X m i n a c c = { x 1 m i n a c c , x 2 m i n a c c , x 3 m i n a c c , x 4 m i n a c c , x 5 m i n a c c } represents the minimum value of each service quality attribute that can be accepted.   X m a x a c c = { x 1 m a x a c c , x 2 m a x a c c , x 3 m a x a c c , x 4 m a x a c c , x 5 m a x a c c } represents the maximum value of each service quality attribute that can be accepted. X p r o = [ X m i n p r o ,   X m a x p r o ] represents the range of service quality attributes that the BGP router can provide [23].   X m i n p r o = { x 1 m i n p r o , x 2 m i n p r o , x 3 m i n p r o , x 4 m i n p r o , x 5 m i n p r o } represents the minimum value of each service quality attribute that can be provided. X m a x p r o = { x 1 m a x p r o , x 2 m a x p r o , x 3 m a x p r o , x 4 m a x p r o , x 5 m a x p r o } represents the maximum value of each service quality attribute that can be provided. The specific settings are as follows:
    { x 1 m i n a c c x 1 x 1 m a x a c c x 2 m i n a c c x 2 x 2 m a x a c c x 3 m i n a c c x 3 x 3 m a x a c c x 4 m i n a c c x 4 x 4 m a x a c c x 5 m i n a c c x 5 x 5 m a x a c c { x 1 m i n p r o x 1 x 1 m a x p r o x 2 m i n p r o x 2 x 2 m a x p r o x 3 m i n p r o x 3 x 3 m a x p r o x 4 m i n p r o x 4 x 4 m a x p r o x 5 m i n p r o x 5 x 5 m a x p r o
    where x 1 , x 2 , x 3 , x 4 , and x 5 are defined as in Section 3.1.
Simultaneously, the BGP router sets u r e q and u a g r . u r e q is the neighbor trust establishment requester’s expected payoff. u a g r is the neighbor trust establishment agreer’s expected payoff.
2.
The BGP Neighbor Trust Establishment Process. We suppose that A S 1 wants to establish a trusted neighbor relationship with its adjacent A S 2 . A S 1 is the neighbor trust establishment requester, with the service quality attribute vector range X A S 1 a c c , the negotiation ability δ A S 1 and the expected payoff u A S 1 r e q . A S 2 is the neighbor trust establishment agreer, with the service quality attribute vector range X A S 2 p r o , the negotiation ability δ A S 2 , and the expected payoff u A S 2 a g r . The number of quotations for A S 1 / A S 2 is T A S 1 / T A S 2 . In order to better describe the process, we take T A S 1 = T A S 2 = 1 . The implementation of BNTE-BG is shown in Figure 1 and Algorithm 1:
Step 1:
First, A S 1 initiates a neighbor trust establishment request to A S 2 . It uses the service quality attribute vector range X A S 1 a c c , the current quotation number t A S 1 and the negotiation ability δ A S 1 to generate the service quality attribute quotation vector X ( 1 ) through the quote strategy function Q u o t e _ r e q . Then A S 1 adds it to the TCP message and sends it to A S 2 .
Step 2:
When A S 2 receives the new TCP message from A S 1 , it extracts the service quality attribute quotation vector X ( 1 ) . It calculates the payoff, then judges whether A S 1 ’s X ( 1 ) satisfy the expected payoff u A S 2 a g r . If it does, A S 2 outputs “Establish neighbor”. If not, it uses the service quality attribute vector range X A S 2 p r o , the current quotation number t A S 2 , and the negotiation ability δ A S 2 to generate the service quality attribute quotation vector X ( 1 ) through the quote strategy function Q u o t e _ a g r . Then A S 2 adds it to the TCP message and sends to A S 1 .
Step 3:
When A S 1 receives the new TCP message from A S 2 , it extracts the service quality attribute quotation vector X ( 1 ) . It calculates the payoff, then judges whether A S 2 ’s X ( 1 ) satisfy the expected payoff u A S 1 r e q . If it does, A S 1 outputs “Establish neighbor”. If not, it outputs “Establish neighbor failed”.
The functions involved in Algorithm 1 are described as follows:
  • S e n d indicates that the BGP router sends its service quality attribute quotation vector to the adjacent BGP router.
  • Q u o t e _ r e q ( X A S 1 a c c , t A S 1 , δ A S 1   ) indicates that A S 1 performs t A S 1 th quotation to generate the service quality attribute quotation vector X ( t A S 1 ) .
  • Q u o t e _ a g r ( X A S 2 p r o , t A S 2 , δ A S 2 ) indicates that A S 2 performs t A S 2 th quotation to generate the service quality attribute quotation vector X ( t A S 2 ) .
  • U _ r e q ( X ( t A S 2 ) , X A S 1 a c c ) indicates that A S 1 obtains the payoff accepting the service quality attribute quotation vector X ( t A S 2 ) .
  • U _ a g r ( X ( t A S 1 ) , X A S 2 p r o ) indicates that AS2 obtains the payoff accepting the service quality attribute quotation vector   X ( t A S 1 ) .
  • D i c k ( U , u ) indicates that A S 1 / A S 2 determines whether to establish a neighbor relationship.
    Algorithm 1: BNTE-BG establishment
    Input: A S 1 , A S 2 , T A S 1 , T A S 2 , X A S 1 a c c , X A S 2 p r o , δ A S 1 , δ A S 2 , u A S 1 r e q , u A S 2 a g r
    Output: Establish neighbor, Establish neighbor failed
    1:    t A S 1 = 1 , t A S 2 = 1 ;
    2:   if ( t A S 1 T A S 1 )
    3:   {
    4:    X ( t A S 1 ) Q u o t e _ r e q ( X A S 1 a c c ,   t A S 1 , δ A S 1 ) ;
    5:    t A S 1 = t A S 1 + 1 ;
    6:    A S 1 send ( X ( t A S 1 ) ) to A S 2 ;
    7:   go 17;
    8:    }
    9:   else
    10:   output Establish neighbor failed;
    11:    A S 1 U r e q U _ r e q ( X ( t A S 2 ) , X A S 1 a c c ) ;
    12:    a D i c k ( U r e q , u A S 1 r e q ) ;
    13:   if ( a = t r u e )
    14:   output Establish neighbor
    15:   else
    16:   go 2;
    17:    A S 2 U a g r U _ a g r ( X ( t A S 1 ) , X A S 2 p r o ) ;
    18:    a D i c k ( U a g r , u A S 2 a g r ) ;
    19:   if ( a = t r u e )
    20:   output Establish neighbor;
    21:   else if ( t A S 2 T A S 2 )
    22:   {
    23:    X ( t A S 2 ) Q u o t e _ a g r ( X A S 2 p r o ,   t A S 2 , δ A S 2 ) ;
    24:    t A S 2 = t A S 2 + 1 ;
    25:    A S 2 send ( X ( t A S 1 ) ) to A S 1 ;
    26:   go 11;
    27:   }
    28:   else
    29:   output Establish neighbor failed

3.4. Implementation of BNTE-BG Mechanism

This section explains the implementation of the functions in the BNTE-BG. A S 1 and A S 2   call Q u o t e _ r e q ( X A S 1 a c c , t A S 1 , δ A S 1   ) ,   Q u o t e _ a g r ( X A S 2 p r o , t A S 2 , δ A S 2 ) , U _ r e q ( X ( t A S 2 ) , X A S 1 a c c ) ,   U _ a g r ( X ( t A S 1 ) , X A S 2 p r o ) , and D i c k ( U , u ) . The implementation of the functions is as follows:
  • The quote strategy function Q u o t e _ r e q ( X A S 1 a c c , t A S 1 , δ A S 1 ) is implemented as follows:
When A S 1 wants to send the t A S 1 th quotation to A S 2 , it calls Q u o t e _ r e q ( X A S 1 a c c , t A S 1 , δ A S 1   ) to generate the t A S 1 th service quality attribute quotation vector X ( t A S 1 ) = { x 1 ( t A S 1 ) , x 2 ( t A S 1 ) , x 3 ( t A S 1 ) , x 4 ( t A S 1 ) , x 5 ( t A S 1 ) } .
Calculate the benefit attribute quotation x i ( t A S 1 ) as Formula (1)
x i ( t A S 1 ) = x i m a x A S 1 acc [ k + ( 1 k ) ( t A S 1 T A S 1 ) δ A S 1 ] ( x i m a x A S 1 acc x i m i n A S 1 acc )
Calculate the cost attribute quotation x j ( t A S 1 ) as Formula (2)
x j ( t A S 1 ) = x j m i n A S 1 a c c + [ k + ( 1 k ) ( t A S 1 T A S 1 ) δ A S 1 ] ( x j m a x A S 1 a c c x j m i n A S 1 a c c )
where i + j = 5 , 0 < δ A S 1 < 1 , 0 < k < 1 , concession factor k , and δ A S 1 are set by A S 1 .
  • The quote strategy function Q u o t e _ a g r ( X A S 2 p r o , t A S 2 , δ A S 2 ) is implemented as follows:
When A S 2 wants to send the t A S 2 th quotation to A S 1 , it calls Q u o t e _ a g r ( X A S 2 p r o , t A S 2 , δ A S 2 ) to generate the t A S 2 th service quality attribute quotation vector X ( t A S 2 ) = { x 1 ( t A S 2 ) , x 2 ( t A S 2 ) , x 3 ( t A S 2 ) , x 4 ( t A S 2 ) , x 5 ( t A S 2 ) } .
Calculate the benefit attribute quotation x i ( t A S 2 ) as Formula (3)
x i ( t A S 2 ) = x i m i n A S 2 p r o + [ k + ( 1 k ) ( t A S 2 T A S 2 ) δ A S 2 ] ( x i m a x A S 2 p r o x i m i n A S 2 p r o )
Calculate the cost attribute quotation x j ( t A S 2 ) as Formula (4)
x j ( t A S 2 ) = x j m a x A S 2 p r o [ k + ( 1 k ) ( t A S 2 T A S 2 ) δ A S 2 ] ( x j m a x A S 2 p r o x j m i n A S 2 p r o )
where i + j = 5 , 0 < δ A S 2 < 1 , 0 < k < 1 , concession factor k , and δ A S 2 are set by A S 2 .
  • The payoff function U _ a g r ( X ( t A S 1 ) , X A S 2 p r o ) and dicker judgment function D i c k ( U , u ) are implemented as follows:
When A S 2 receives the service quality attribute quote vector X ( t A S 1 ) , it calls D i c k ( U , u ) to judge whether to establish a neighbor relationship.
Step 1: Call U _ a g r ( X ( t A S 1 ) , X A S 2 p r o ) function to generate the total payoff U a g r .
For the benefit attribute x i , the payoff of A S 2 is calculated as Formula (5)
Δ x i A S 2 = x i t A S 1 x i m i n A S 2 p r o
For the cost attribute x j , the payoff of A S 2 is calculated as Formula (6)
Δ x j A S 2 = x j m a x A S 2 p r o x j t A S 1
Standardized processing:   Δ v i A S 2 = Δ x i A S 2 x i m a x A S 2 p r o x i m i n A S 2 p r o ;   Δ v j A S 2 = Δ x j A S 2 x j m a x A S 2 p r o x j m i n A S 2 p r o
Calculate the total payoff of AS 2 as Formula (7)
U a r g = e = 1 5 Δ v e A S 2 w e
where W = { w 1 , w 2 , w 3 , w 4 , w 5 }   represents A S 2 ’s private preference for service quality attributes. It is set by A S 2 .
Step 2: Call D i c k ( U a g r , u A S 2 a g r ) to determine whether to establish a neighbor relationship.
D i c k ( U a g r , u A S 2 a g r ) = { U a g r u A S 2 a g r 0   ;   output   Establish   neighbor U a g r u A S 2 a g r < 0 ,   t A S 2 T A S 2 ;   Continue   negotiation U a g r u A S 2 a g r < 0   ;   output   Establish   neighbor   failed
  • The payoff function U _ r e q ( X ( t A S 2 ) , X A S 1 a c c ) and dicker judgment function D i c k ( U , u ) are implemented as follows:
When A S 1 receives the service quality attribute quote vector X ( t A S 2 ) , it calls D i c k ( U , u ) to judge whether to establish a neighbor relationship.
Step 1: Call U _ r e q ( X ( t A S 2 ) , X A S 2 p r o ) function to generate the total payoff U r e q .
For benefit attribute x i , the payoff of A S 1 is calculated as Formula (8)
Δ x i A S 1 = x i m a x A S 1 acc x i t A S 2
For cost attribute x j , the payoff of A S 1 is calculated as Formula (9)
Δ x j A S 1 = x j t A S 2 x j m i n A S 1 a c c
Standardized processing:   Δ v i A S 1 = Δ x i A S 1 x i m a x A S 1 acc x i m i n A S 1 acc ; Δ v j A S 1 = Δ x j A S 1 x j m a x A S 1 acc x j m i n A S 1 acc
Calculate the total payoff of A S 1 as Formula (10)
U r e q = e = 1 5 Δ v e A S 1 * w e
where   W = { w 1 , w 2 , w 3 , w 4 , w 5 } represents A S 1 ’s private preference for service quality attributes, It is set by A S 1 .
Step 2: Call   D i c k ( U r e q , u A S 1 r e q ) to determine whether to establish a neighbor relationship.
D i c k ( U r e q , u A S 1 r e q ) = { U r e q u A S 1 r e q 0   ;   output   Establish   neighbor U r e q u A S 1 r e q < 0 ,   t A S 1 T A S 1 ;   Continue   negotiation U r e q u A S 1 r e q < 0   ;   output   Establish   neighbor   failed
Therefore, as long as AS follows the BNTE-BG mechanism during the neighbor establishment process, it can be guaranteed to establish a neighbor relationship with the trusted AS. The quote strategy function is based on the premise that AS is rational and willing to cooperate.

4. The Detection Mechanism of the BGP Malicious/Inactive Neighbors

This section mainly presents the detection algorithm of AS and the BGP malicious/inactive neighbors’ detection process.
Definition 3.
Behavioral trust is the credibility of BGP neighbors’ behavior when trusted neighbors forward data every time, denoted by γ
( 0 <   γ 1 ) .

Detection Process

Let us assume A S 1 and A S 2 have established a trusted neighbor relationship through the process described in Section 3. X s u c c = { x 1 s u c c , x 2 s u c c , x 3 s u c c , x 4 s u c c , x 5 s u c c } represents their agreement on bandwidth, packet loss rate, jitter, delay, and price. At this time, A S 1 needs to calculate A S 2 ’s behavioral trusts and checks whether it is a malicious/inactive neighbor. The specific process is as follows:
Step 1:
A S 1 collects the data set of bandwidth, packet loss rate, jitter, and delay when A S 2 forwards A S 1 traffic T times. The data set is marked as [ X ] T = { X 1 , X 2 X T } .
Step 2:
A S 1 draw on the gray correlation algorithm to calculate the A S 2 ’s behavioral trust γ T . Since x 2 , x 3 , and x 4 are the cost attributes, to facilitate calculation, we use the worst packet loss rate R, the largest jitter J, and the longest delay D in the actual network to process data with the same attributes in the data set [ X ] T . The detection algorithm is Algorithm 2.
Step 3:
If behavioral trusts are all within the normal range, A S 1 and A S 2 continue to maintain the trusted neighbor relationship. If the behavioral trust γ T appears abnormal, go to Step4.
Step 4:
A S 1 sends a warning to A S 2 and sets the number of forwarding Δ T .   A S 1 continues to calculate the A S 2 ’s behavioral trusts when it forwards Δ T times.
Step 5:
If behavioral trusts are all within the normal range,   A S 1 and A S 2 continue to maintain the trusted neighbor relationship. If γ Δ T still appears abnormal, A S 1 judges A S 2 as the malicious/inactive neighbor. Then,   A S 1 stops paying A S 2 and filters the routing information announced/forwarded by A S 2 .
Algorithm 2: Detection algorithm
Input:   X s u c c , [ X ] T , R, J, D
Output:   γ A S 2
1:    x 1 s u c c 1 = x 1 s u c c ; x 2 s u c c 1 =R- x 2 s u c c ;   x 3 s u c c 1 =J- x 3 s u c c ;   x 4 s u c c 1 =D- x 4 s u c c ;
2:   for (i =1; i<= T ; i++)
3:   {
4:   if ( x 1 i x 1 s u c c & &   x 2 i x 2 s u c c   & &   x 3 i x 3 s u c c & &   x 4 i x 4 s u c c )
5:   output γ A S 2 i = 1;

6:   else
7:   {
8:    x 2 i = R- x 2 i ;   x 3 i =J- x 3 i ;     x 4 i =D- x 4 i ;
9:   for (j=1; j<=4; j++)
10:   {
11:    γ A S 2 i j = min i min j | x j s u c c 1 x j i | + θ max i max j | x j s u c c 1 x j i | | x j s u c c 1 x j i | + θ max i max j | x j s u c c 1 x j i |
12:   }
13:   output γ A S 2 i = 1 4   γ A S 2 i j ;
14:   }
15:   }

5. Simulation and Efficiency Analysis

This section mainly discusses the efficiency of the BNTE-BG mechanism and the detection algorithm’s correctness. In terms of correctness, we mainly investigate whether the detection algorithm can correctly describe neighbors’ behavior. In terms of efficiency, we consider storage increment and average convergence time. Storage increment includes the message increment and storage overhead. In terms of route average convergence time, we mainly consider the number of neighbor establishments, the number of quotations and the time spent, and the number of dicker judgments and the time spent.

5.1. Correctness

Correctness means that the detection algorithm can effectively describe whether the trusted neighbor’s behaviors meet the negotiation agreement. The AS can judge malicious/inactive neighbors by the detection result. The experimental scene settings are as follows: the neighbor trust establishment requester A S 1 and the neighbor trust establishment agreer A S 2 have successfully established a trusted neighbor relationship through the BNTE-BG mechanism, and A S 2 has forwarded data T = 7 times. Negotiation agreement is X s u c c = { x 1 s u c c , x 2 s u c c , x 3 s u c c , x 4 s u c c , x 5 s u c c }   = {50, 0.1, 15, 60, 300}. R = 1, J = 200 ms, D = 500 ms, θ = 0.3 . Table 1 shows the data set collected by A S 1 .
Figure 2 shows the changes in A S 2 ’s behavioral trusts, which are (1, 1, 0.8331, 0.8729, 0.4998, 0.3126, 0.2557). In the first and second forwardings, A S 2 ’s service fully meets the negotiation agreement, and the behavioral trusts are 1. In the third, fourth, and fifth forwardings, the service provided by A S 2 could not fully meet the negotiation agreement. Among them, in the third and fourth forwardings, the service provided by A S 2 is not much different from the negotiation agreement, and A S 2 ’s behavioral trusts are greater than 0.8. In the fifth forwarding, the A S 2 ’s service is too far away from the negotiation agreement, and the behavioral trust is less than 0.5. In the sixth and seventh forwardings, the A S 2 ’s service completely deviates from the negotiation agreement, and the behavioral trusts are only about 0.3. During the entire period, the quality of services provided by A S 2 gradually declined, and A S 2 ’s behavioral trusts also gradually decreased. The results show that our detection algorithm can effectively characterize the behavior of A S 2 . When A S 1 detects that the sixth and seventh time’s behavior trusts are too low, it could issue a warning to A S 2 to further verify whether it is a malicious neighbor. The A S 1 can also analyze the bandwidth and packet loss rate of the sixth and seventh forwarding to determine whether the A S 2 is a malicious/inactive neighbor. Due to the limited length of this paper, no more experiments will be carried out.

5.2. Storage Increment

First, we consider the increase in the TCP message’s length after adding the BNTE-BG mechanism. Because the BNTE-BG mechanism adds service quality attribute negotiation to the first stage of neighbor establishment, it is necessary to add a service quality attribute quotation vector to the TCP message, which will cause message expansion. The service quality attributes contain the bandwidth, packet loss rate, delay, jitter, and price. Each attribute occupies one byte. Therefore, the TCP message’s length in the BNTE-BG mechanism is 5 bytes longer than that of the BGP.
Secondly, in storage overhead, the AS guarantees data service quality by negotiating with the adjacent AS in BNTE-BG. Therefore, each BGP router only needs 20 bytes to store the service quality attribute vector range ( X a c c and X p r o ). Table 2 shows us the storage increment of the BNTE-BG mechanism.
From Table 2, we can see that the storage increment of the BNTE-BG mechanism is very small, so the burden on BGP routers will not be great.

5.3. Average Convergence Time

In the BNTE-BG mechanism, we add the service quality attribute quotations and payoffs calculations during the TCP three-way handshake, which will cause a time delay. Therefore, adding the BNTE-BG mechanism to the BGP will have an impact on the convergence time. The average convergence time is related to the number of neighbor establishment instances # s u m , the number of quotations # q u o t e , the time spent in quotation calculation t q u o t e , the number of dicker judgments # d i c k , and the time spent in dicker judgment t d i c k , etc. Assuming that the number of ASes in the network topology is N , the maximum number of neighbor establishment times are # s u m = N ( N 1 ) 2 ,   N 2 . In the BGP protocol neighbor establishment process, after the TCP connection is completed at the transport layer, it needs to exchange parameters through FSM. If exchanging parameters fails, the neighbor establishment will fail. Thus, a successful neighbor establishment has a probably. Assuming that the probability of a successful FSM is p , then the convergence time increment model is as follows:
Δ Time =   p # sum ( # quote t quote + # dick t dick ) ,
where Δ T i m e represents the increase in convergence time after adding the BNTE-BG mechanism to the BGP.
Before the average convergence time experiment, we analyze the influence of concession factor k , the negotiation ability δ and, the number of quotations T on k + ( 1 k ) ( t / T ) δ representing the concession of AS.
By setting δ = 0.8, we respectively examined the changes of k + ( 1 k ) ( t / T ) δ under   k   = 0.1, k   = 0.5, and k   = 0.9.
The experimental results are shown in Figure 3; the greater the value of k, the greater the concession that AS will make, but the lower the concession rate.
By setting k = 0.4, we respectively examined the changes of k + ( 1 k ) ( t / T ) δ under T = 3, T = 5 and T = 7.
The experimental results are shown in Figure 4; the fewer the number of quotations, the greater the concession and concession rate of AS.
We set k = 0.4 and examined the changes of k + ( 1 k ) ( t / T ) δ under δ = 0.1, δ = 0.5, and δ = 0.9.
The experimental results are shown in Figure 5; the greater the value of δ , the greater the concession that AS will make. When δ = 0.1, k + ( 1 k ) ( t / T ) δ initially increases rapidly and then tends to level off. When δ = 0.9, k + ( 1 k ) ( t / T ) δ increases at a steady speed. Therefore, A S can be divided into two types. When 0 <   δ < 0.5 , the AS is eager to establish neighbor relations. When 0.5 δ < 1 , the AS is calm and has enough patience to negotiate.
In the average convergence time experiment, we use the CAIDA IPv4 Routed/24 Topology Dataset [24] and extract some subgraphs from it for experiments. The specific parameters were set as follows: the link delay was 0.6 s, p = 0.9, δ = 0.7, k = 0.5, and T = 3. The purpose of the experiment is to investigate the changes in the average convergence time of BNTE-BG, BGP, and NS-BGP mechanisms as the size of the AS topology changes. The experimental results are shown in Figure 6.
As the topology’s scale expands and the number of neighbor establishments increases, the average convergence time of the BNTE-BG mechanism, BGP, and NS-BGP mechanism gradually increases. At the same time, the convergence speed of the BNTE-BG mechanism and the NS-BGP mechanism decreases. Because the BNTE-BG mechanism adds quotations and payoffs calculations during the neighbor establishment phase, the average convergence time is longer than that of the BGP. NS-BGP needs a special route for each neighbor, and the average convergence time will be longer than that of the BGP. Unlike NS-BGP, which requires special calculations for the needs of each neighbor, the BNTE-BG mechanism only needs to negotiate at a fixed time, so the average convergence time of the BNTE-BG mechanism is less than that of NS-BGP. Experimental results show that the BNTE-BG mechanism has better convergence than the NS-BGP mechanism.

6. Conclusions

The secure establishment of neighbors in the BGP is an important issue of BGP security. Research resources are scarce, and an easily deployed neighbor trust establishment mechanism is still an important research direction. Therefore, this paper proposes a BGP neighbor trust establishment mechanism based on the bargaining game, BNTE-BG, which combines the bargaining game model with bandwidth, delay, jitter, packet loss rate, and price. It allows ASes to choose trusted neighbors that meet route security requirements flexibly and ultimately achieves network security. When the trusted neighbor is working, we use the gray correlation algorithm to calculate the behavioral trust of the trusted neighbor, and effectively detect malicious/inactive neighbors. The BNTE-BG mechanism has the advantages of less storage increment, less modification of the BGP protocol content, and easier implementation in networks with complex business relationships. Based on analysis of correctness experiments, the detection algorithm can effectively detect malicious/inactive neighbors. Our future research will further expand the service quality attributes, such as adding the attribute “geographic location”, so that ASes can select trusted neighbors in more detail.

Author Contributions

Conceptualization, P.L. and D.L.; methodology, P.L.; software, P.L. and D.L.; validation, D.L. and B.L.; formal analysis, P.L. and B.L.; investigation, P.L.; data curation, P.L. and B.L.; writing—original draft preparation, P.L.; writing—review and editing, P.L. and D.L.; project administration, D.L.; funding acquisition, D.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China (No.61662004).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Rekhter, Y.; Li, T.; Hares, S. A Border Gateway Protocol 4 (BGP-4). Network Working Group. 2006. Available online: https://www.rfc-editor.org/rfc/pdfrfc/rfc4271.txt.pdf (accessed on 10 May 2020).
  2. Murphy, S. BGP Security Vulnerabilities Analysis. Network Working Group. 2006. Available online: https://www.rfc-editor.org/rfc/pdfrfc/rfc4227.txt.pdf (accessed on 15 May 2020).
  3. White, R. Securing BGP through secure origin BGP (soBGP). Bus. Commun. Rev. 2003, 6, 15–22. [Google Scholar]
  4. Kent, S.; Lynn, C.; Seo, K. Secure border gateway protocol (S-BGP). IEEE J. Sel. Areas Commun. 2000, 18, 582–592. [Google Scholar] [CrossRef]
  5. Oorschot, P.C.; Wan, T.; Kranakis, E. On interdomain routing security and pretty secure BGP (psBGP). ACM TOPS 2007, 10. [Google Scholar] [CrossRef] [Green Version]
  6. Liu, Y.; Deng, W.; Liu, Z.; Huang, F. 3S: Three-signature path authentication for BGP security. Secur. Commun. Netw. 2015, 18, 3002–3014. [Google Scholar] [CrossRef]
  7. Xing, Q.; Wang, B.; Wang, X. Blockchain-based internet number resource authority and bgp security solution. Symmetry 2018, 10, 408. [Google Scholar] [CrossRef] [Green Version]
  8. Gao, L.; Rexford, J. Stable Internet routing without global coordination. IEEE-ACM Trans. Netw. 2001, 9, 681–692. [Google Scholar]
  9. Teixeira, R.; Shaikh, A.; Griffin, T.G.; Rexford, J. Impact of hot-potato routing changes in IP networks. IEEE-ACM Trans. Netw. 2008, 16, 1295–1307. [Google Scholar] [CrossRef] [Green Version]
  10. Resnick, P.; Zeckhauser, R.; Friedman, E.; Kuwabara, K. Reputation systems: Facilitating trust in Internet interactions. Commun. ACM 2000, 43, 45–48. [Google Scholar] [CrossRef]
  11. Yu, H.; Rexford, J.; Felten, E.W. A distributed reputation approach to cooperative internet routing protection. In Proceedings of the 1st IEEE ICNP Workshop on Secure Network Protocols, 2005. (NPSec), Boston, MA, USA, 6 November 2005; pp. 73–78. [Google Scholar]
  12. Konte, M.; Perdisci, R.; Feamster, N. Aswatch: An as reputation system to expose bulletproof hosting ases. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication, London, UK, 17–21 August 2015; Association for Computing Machinery: New York, NY, USA, 2015. [Google Scholar]
  13. Siganos, G.; Faloutsos, M. Neighborhood watch for internet routing: Can we improve the robustness of internet routing today? In Proceedings of the IEEE INFOCOM 2007-26th IEEE International Conference on Computer Communications, Barcelona, Spain, 6–12 May 2007. [Google Scholar]
  14. Chang, J.; Venkatasubramanian, K.K.; West, A.G.; Kannan, S.; Loo, B.T.; Sokolsky, O.; Lee, I. AS-TRUST: A Trust Quantification Scheme for Autonomous Systems in BGP. International Conference on Trust and Trustworthy Computing; Springer: Berlin/Heidelberg, Germany, 2011; pp. 262–276. [Google Scholar]
  15. Wang, Y.; Schapira, M.; Rexford, J. Neighbor-specific BGP: More flexible routing policies while improving global stability. In Proceedings of the Eleventh International Joint Conference on Measurement and Modeling of Computer Systems, Seattle, WA, USA, 15–19 June 2009; Association for Computing Machinery: New York, NY, USA, 2009; pp. 217–228. [Google Scholar]
  16. Rubinstein, A. Perfect equilibrium in a bargaining model. Econometrica 1982, 50, 97–109. [Google Scholar] [CrossRef] [Green Version]
  17. Njilla, L.Y.; Pissinou, N. Dynamics of data delivery in mobile ad-hoc networks: A bargaining game approach. In Proceedings of the 2015 IEEE Symposium on Computational Intelligence for Security and Defense Applications (CISDA), Verona, NY, USA, 26–28 May 2015; pp. 1–6. [Google Scholar]
  18. Liu, C.; Li, K.; Tang, Z. Bargaining game-based scheduling for performance guarantees in cloud computing. ACM TOMPECS 2018, 3, 1–25. [Google Scholar] [CrossRef]
  19. Li, P.; Han, B.; Li, H.; Hou, D.; Liu, D.; Wang, G. The Research of Dynamic Spectrum Allocation Based on Nash Bargaining Game. In Proceedings of the 2018 IEEE 4th Information Technology and Mechatronics Engineering Conference (ITOEC), Chongqing, China, 26–28 May 2018; pp. 70–74. [Google Scholar]
  20. Sun, G.; Guan, X.; Yi, X.; Zhou, Z. Gray relational analysis between hesitant fuzzy sets with applications to pattern recognition. Expert Syst. Appl. 2018, 92, 521–532. [Google Scholar] [CrossRef]
  21. Lad, M.; Massey, D.; Pei, D.; Wu, Y.; Zhang, B.; Zhang, L. PHAS: A Prefix Hijack Alert System. In Proceedings of the USENIX Security Symposium, Vancouver, BC, Canada, 31 July–4 August 2006. [Google Scholar]
  22. Zhang, Z.; Zhang, Y.; Hu, Y.C. iSPY: Detecting IP prefix hijacking on my own. IEEE-ACM Trans. Netw. 2010, 18, 1815–1828. [Google Scholar] [CrossRef] [Green Version]
  23. Li, J.; Luo, H.; Zhang, S.; Li, H.; Yan, F. Design and implementation of efficient control for incoming inter-domain traffic with information-centric networking. J. Netw. Comput. Appl. 2019, 133, 109–125. [Google Scholar] [CrossRef]
  24. The CAIDA Internet Topology Data Kit. 2019.01. Available online: https://www.caida.org/data/internet-topology-data-kit (accessed on 3 March 2021).
Figure 1. BNTE-BG flowchart.
Figure 1. BNTE-BG flowchart.
Information 12 00110 g001
Figure 2. The behavioral trust of A S 2 .
Figure 2. The behavioral trust of A S 2 .
Information 12 00110 g002
Figure 3. The influence of concession factor k on k + ( 1 k ) ( t / T ) δ .
Figure 3. The influence of concession factor k on k + ( 1 k ) ( t / T ) δ .
Information 12 00110 g003
Figure 4. The influence of the number of quotations T on k + ( 1 k ) ( t / T ) δ .
Figure 4. The influence of the number of quotations T on k + ( 1 k ) ( t / T ) δ .
Information 12 00110 g004
Figure 5. The influence of negotiation ability δ on k + ( 1 k ) ( t / T ) δ .
Figure 5. The influence of negotiation ability δ on k + ( 1 k ) ( t / T ) δ .
Information 12 00110 g005
Figure 6. Average convergence time.
Figure 6. Average convergence time.
Information 12 00110 g006
Table 1. Data set collected by A S 1 .
Table 1. Data set collected by A S 1 .
Serial NumberBandwidth/GPacket Loss RateJitter/msDelay/ms
15001040
2520.051345
3530.22570
4400.11650
5450.5113172
670.7148230
750.9156389
Table 2. Storage increment of BNTE-BG.
Table 2. Storage increment of BNTE-BG.
Storage Overhead Per Router/BytePacket Length Increment/Byte
BNTE-BG20 5
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Li, P.; Lu, B.; Li, D. BGP Neighbor Trust Establishment Mechanism Based on the Bargaining Game. Information 2021, 12, 110. https://doi.org/10.3390/info12030110

AMA Style

Li P, Lu B, Li D. BGP Neighbor Trust Establishment Mechanism Based on the Bargaining Game. Information. 2021; 12(3):110. https://doi.org/10.3390/info12030110

Chicago/Turabian Style

Li, Peipei, Bin Lu, and Daofeng Li. 2021. "BGP Neighbor Trust Establishment Mechanism Based on the Bargaining Game" Information 12, no. 3: 110. https://doi.org/10.3390/info12030110

APA Style

Li, P., Lu, B., & Li, D. (2021). BGP Neighbor Trust Establishment Mechanism Based on the Bargaining Game. Information, 12(3), 110. https://doi.org/10.3390/info12030110

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop