【GNN+암호화된 트래픽】TFE-GNN: 세분화된 암호화된 트래픽 분류를 위해 GNN을 사용한 임시 융합 인코더

논문 제목

중국어 제목 : TFE-GNN: A Graph Neural Network Temporal Fusion Encoder for Fine-grained Encrypted Traffic Classification
Conference : WWW '23: The ACM Web Conference 2023
발행 연도 : 2023-4-30
저자 : Haozhen Zhang
latex 인용 :

@inproceedings{zhang2023tfe,
  title={TFE-GNN: A Temporal Fusion Encoder Using Graph Neural Networks for Fine-grained Encrypted Traffic Classification},
  author={Zhang, Haozhen and Yu, Le and Xiao, Xi and Li, Qing and Mercaldo, Francesco and Luo, Xiapu and Liu, Qixu},
  booktitle={Proceedings of the ACM Web Conference 2023},
  pages={2066--2075},
  year={2023}
}

요약

암호화된 트래픽의 분류는 연구자들과 산업체들로부터 많은 관심을 받고 있습니다. 그러나 기존 방법은 낮은 수준의 기능만 추출하고, 신뢰할 수 없는 통계 속성으로 인해 짧은 스트림을 처리하지 못하거나, 헤더와 페이로드를 동등하게 처리하고 바이트 간의 잠재적 상관관계를 마이닝하지 못합니다 . 따라서 본 논문에서는 특징 추출을 위해 PMI(Pointwise Mutual Information) 기반의 바이트 수준의 교통 그래프 구성 방법과 그래프 신경망(TFE-GNN) 기반의 시간적 융합 인코더 모델을 제안한다. 특히 이중 임베딩 레이어, GNN 기반 플로우 그래프 인코더, 먼저 헤더와 페이로드 바이트를 개별적으로 임베딩한 다음 함께 융합하여 더 강력한 특징 표현을 얻을 수 있는 교차 게이트 특징 융합 메커니즘을 설계합니다. 두 개의 실제 데이터 세트에 대한 실험 결과는 TFE-GNN이 세분화된 암호화 트래픽 분류 작업에서 여러 최신 방법을 능가한다는 것을 보여줍니다.

기존 문제

  1. 트래픽 통계 기능에 의존하는 암호화된 트래픽 감지 방법에는 수작업으로 기능 엔지니어링이 필요하며 신뢰할 수 없거나 불안정한 하위 수준 통계로 인해 경우에 따라 실패할 수 있습니다. 더 짧은 스트림은 더 긴 스트림보다 편차가 더 큽니다. 짧은 스트림의 통계적 특성이 거의 존재하지 않기 때문입니다.
  2. 현재 대부분의 GNN 기반 방법[1, 11, 21, 25, 29]은 데이터 패킷 간의 상관 관계를 기반으로 그래프를 구성하는데, 이는 실제로 통계적 특징을 사용하는 또 다른 형태이며, 이 역시 위에서 언급한 문제점을 안고 있다.
  3. 패킷 바이트를 기능으로 사용하는 GNN 모델의 경우 두 가지 주요 단점도 있습니다. (1) 헤더와 페이로드 혼합. 기존 접근 방식은 단순히 패킷의 헤더와 페이로드를 동등하게 취급하고 이들 사이의 의미 차이를 무시합니다. (2) 원시 바이트가 완전히 활용되지 않습니다. 데이터 패킷 바이트를 활용하지만 대부분의 방법은 데이터 패킷을 노드로 취급하고 데이터 패킷의 원래 바이트만을 노드 기능으로 사용하며 데이터 패킷을 최대한 활용하지 않습니다.

종이 기부

  1. PMI(Point-wise Mutual Information) 기반의 바이트 수준의 트래픽 그래프 구축 방법을 최초로 제안하며, 패킷 바이트 시퀀스를 그래프로 변환하여 서로 다른 트래픽 분류를 지원하는 바이트 수준의 트래픽 그래프를 구축한다. 관점.
  2. 패킷 헤더와 페이로드를 개별적으로 처리하고 각 바이트 수준 흐름 그래프를 각 패킷에 대한 전체 표현 벡터로 인코딩하는 TFE-GNN이 제안됩니다. 따라서 TFE-GNN은 저수준 표현 벡터 대신 패킷 수준 표현 벡터를 사용합니다.
  3. 제안된 TFE-GNN의 성능을 평가하기 위해 자체 수집한 WWT 데이터셋과 공개 ISCX 데이터셋 [5, 15]에 대한 기존의 여러 방법과 비교합니다. 결과는 사용자 행동 분류의 경우 TFE-GNN이 이러한 방법을 능가한다는 것을 보여줍니다.

위의 문제를 해결하기 위한 논문의 방법:

  1. 기능 엔지니어링을 위해 통계 기능 대신 패킷 바이트 사용

논문의 과제:

암호화 트래픽 분류, 그래프 수준 분류 + RNN

1. 사전 정의

  1. 그래프 구조
  • G = { V , E , X } G = \{V, E, X\}G={ V ,전자 ,X } : 여기서GGG는 그래프,VV를V는 그래프EEE는 그래프의 가장자리를 나타냅니다.XXX는 노드의 특징 행렬을 나타냅니다.
  • AAA :GGG , ai , j a_{i,j}의 인접 행렬나는 , ji번째 노드와 j번째 노드 간의 연결을 나타냅니다.
  • N(v) N(v)N ( v ) : 노드vv를v 의 이웃 노드
  • DL DL내가: ll번째를 나타냅니다.l 레이어 의 임베딩 임베딩 차원
  • TS = [Pt1, Pt2, . . . , P tn ] , t 1 < = t 2 < = . . . < = tn TS = [P_{t_1},P_{t_2},...,P_{t_n}], t_1<=t_2<=...<=t_nTS=[ 1.,2.,... ,.] ,1<=2<=...<=, 其中P ti P_{t_i}.타임스탬프 nn이 있는 단일 패킷을 나타냅니다.n 은 트래픽 세그먼트의 시퀀스 길이,t 1 , tn t_1,t_n1,트래픽 세그먼트의 시작 시간과 종료 시간입니다.
  1. 암호화된 트래픽 분류
  • MMM : 훈련 샘플의 수
  • NNN : 트래픽 카테고리 수
  • bsij = [ b 1 ij , b 2 ij , . . . , bmij ] bs_i^j = [b_1^{ij},b_2^{ij},...,b_m^{ij}]bs _j=[ 1이자,2이자,... ,이자]mmm 은 바이트 시퀀스 길이,bkij b_k^{ij}케이이자i번째 트래픽 샘플의 j번째 바이트 시퀀스의 k번째 바이트 값입니다.
  • si = [ bs 1 i , bs 2 i , . . . , bsni ] s_i = [bs_1^i,bs_2^i,...,bs_n^i]에스=[ bs _1,bs _2,... ,bs _N]nnn 은 시퀀스 길이,bsji bs_j^ibs _제이i번째 트래픽 샘플의 j번째 바이트 시퀀스입니다. si s_i 여기에스위의 TS TS 로 볼 수 있습니다.TS

예:

어떤 si s_i에스[[0x01,0x02, 0x03… 0x10],[0x21,0x32, 0x73… 0x68],…,[0x55,0x65,…,0x79]]에 대해에스여러 데이터 패킷을 포함하며 각 데이터 패킷은 bs 1 i bs_1^i 인 바이트 시퀀스로 표시됩니다.bs _1그것은 [0x01,0x02, 0x03...0x10], b 1 i 1 b_1^{i1} 입니다.1나는 10x01입니다

2. 바이트 수준의 트래픽 그래프 구성

  • 노드 : 특정 바이트 동일한 바이트 값이 동일한 노드를 공유하므로 노드 수가 256을 초과하지 않으므로 그래프가 너무 크지 않고 일정한 축척을 유지할 수 있습니다.
  • 바이트간 상관관계 표현 : 두 바이트간 유사도를 모델링하기 위해 PMI(Point Mutual Information)를 사용하고, 바이트 i와 바이트 j 간의 유사도를 PMI(i,j) PMI(i,j) 로 표현PM I ( 나는 ,j ) 말했다.
  • 에지 : PMI 값에 따라 에지가 구성되며 PMI 값이 양수이면 바이트 간의 의미적 상관 관계가 높음을 나타내고 PMI 값이 0 또는 음수이면 바이트 간의 의미적 상관 관계가 거의 또는 전혀 없음을 나타냅니다. 따라서 PMI 값이 양수인 두 바이트 사이의 에지만 생성합니다.
  • 노드 특징 : 각 노드의 초기 특징은 바이트의 값, 차원은 1, 범위는 [0,255]
  • 그래프 구성 : PMI ( i , j ) == PMI ( j , i ) PMI(i,j) == PMI(j,i) 이후PM I ( 나는 ,j )==PM I ( j ,i ) 이므로 그래프는 무향 그래프입니다.

3. 이중 임베딩

이중 임베딩의 필요성 : 바이트 값은 추가 벡터 임베딩을 위한 초기 기능으로 자주 사용됩니다. 값이 다른 두 바이트는 두 개의 서로 다른 임베딩 벡터에 해당합니다. 그러나 바이트의 의미는 바이트 값 자체뿐만 아니라 바이트 시퀀스의 일부에 따라 다릅니다. 즉, 패킷의 헤더와 페이로드에서 동일한 값을 가진 두 바이트가 완전히 다른 의미를 가질 수 있습니다. 그 이유는 페이로드가 패킷의 전송 콘텐츠를 전달하는 반면 헤더는 해당 콘텐츠를 설명하는 패킷의 첫 번째 부분이기 때문입니다. 헤더와 페이로드의 값이 같은 2바이트를 동일한 임베딩 벡터에 대응하게 하면 의미 혼동으로 인해 모델이 이러한 임베딩 매개변수의 최적 값으로 수렴하기 어렵습니다.

위에서 언급한 기본 원칙에 따라 데이터 패킷의 헤더와 페이로드를 별도로 처리하고 이 두 부분에 대해 바이트 수준의 트래픽 그래프(즉, 바이트 수준의 트래픽 헤더 그래프와 바이트 수준의 트래픽 페이로드 그래프)를 각각 구성합니다. . 매개변수를 공유하지 않는 두 개의 임베딩 레이어가 있는 이중 임베딩은 각각 초기 바이트 값 기능을 두 그래프의 고차원 임베딩 벡터에 임베딩합니다.

따라서 두 개의 임베딩 행렬이 있습니다.

  • E 헤더 ∈ RK × d 0 E_{헤더} \in R^{K \times d_0}이자형헤드 _ _ _ _아르 자형케이 × 0: 여기서 K는 노드 수, d 0 d_00임베딩 차원
  • E 페이로드 ∈ RK × d 0 E_{페이로드} \in R^{K \times d_0}이자형지불 하다 _ _ _ _ _아르 자형케이 × 0

4. Cross-gated Feature Fusion을 사용한 Trafc Graph Encoder(cross-gated feature fusion을 사용한 트래픽 그래프 인코더)

여기에 이미지 설명 삽입
모델: 4개 레이어 GraphSAGE
요점:

  1. 비공유 매개변수를 사용하여 헤더와 페이로드를 개별적으로 처리
  2. GraphSAGE의 4계층 출력을 연결하고 hvfinal h_v^{final}을 최종 노드로 포함시간V최종 _ _,具体如下:hvfinal = concat ( hv ( 1 ) , hv ( 2 ) , hv ( 3 ) , hv ( 4 ) ) h_v^{final} = concat(h_v^{(1)},h_v^{(2) },h_v^{(3)},h_v^{(4)})시간V최종 _ _=동시 ( h _ _ _ _V( 1 ),시간V( 2 ),시간V( 3 ),시간V( 4 ))
  3. 판독 레이어는 평균 풀링을 사용하여 gh g_h를 포함하는 헤더 및 페이로드 그래프를 가져옵니다.gh그리고 gp g_pg, 다음과 같이: g = h 1 final ⊕ . . . ⊕ h V final ∣ V ∣ g = \frac{h_1^{final}\oplus...\oplus h_V^{final}}{|V|}g=V 시간1최종 _ _...시간V최종 _ _., 여기서 VVV 는 그래프 노드의 수입니다.
  • Cross-gated feature fusion
    트래픽 헤더 맵과 트래픽 페이로드 맵에서 각각 특징을 추출하고 두 맵의 최종 표현을 얻으므로 gh g_hgh그리고 gp g_pg, 현재 목표는 gh g_h 에 있습니다.gh그리고 gp g_pg패킷 바이트의 전체 표현을 얻기 위해 그들 사이에 합리적인 관계를 생성합니다.

    특정 방법: 게이팅 벡터 sh s_h 를 얻기 위해 2개의 선형 레이어 + 2개의 활성화 레이어가 사용됩니다.에스hsp s_p에스, 활성화 계층은 시그모이드를 사용하므로 sh s_h에스hsp s_p에스요소 크기 범위는 [0,1]입니다.

    sh = sigmoid ( wh 2 TPR e LU ( wh 1 T gh + bh 1 ) + bh 2 ) s_h = sigmoid(w_{h_2}^TPReLU(w_{h_1}^Tg_h+b_{h_1})+b_{h_2} )에스h=시그 모이 ( w _ _ _ _시간2PR 전자 LU ( v시간1gh+시간1.)+시간2.)
    sp = 시그모이드( wp 2 TPR e LU ( wp 1 T gp ​​+ bp 1 ) + bp 2 ) s_p = 시그모이드(w_{p_2}^TPReLU(w_{p_1}^Tg_p+b_{p_1})+b_{p_2 })에스=시그 모이 ( w _ _ _ _2PR 전자 LU ( v1g+1.)+2.)
    z = concat ( sh ⊙ gp , sp ⊙ gh ) z = concat(s_h \odot g_p, s_p \odot g_h)=co n cat ( s _ _hg,에스gh)

5. 다운스트림 작업

트래픽 세그먼트에 있는 각 패킷의 원시 바이트를 표현 벡터 z로 인코딩했기 때문에 세그먼트 수준 분류 작업을 시계열 예측 작업으로 볼 수 있습니다. 사용된 모델에는 LSTM 및 변환기가 포함됩니다.

6. 모델 요약

  1. 입력 : pcap 트래픽 패킷
  2. 트래픽 패킷 전처리 : 트래픽을 세그먼트로 나누고 각 세그먼트는 si = [ bs 1 i , bs 2 i , . . , bsni ] s_i = [bs_1^i,bs_2^i,...,bs_n^i]에스=[ bs _1,bs _2,... ,bs _N] 말했다.
  3. 지도 작성 : 데이터 패킷으로 지도 작성(예: bs 1 i bs_1^i)bs _1두 개의 그래프(각각 헤더 그래프( G h G_hGh) 및 페이로드 그래프( GpG_pG)), 데이터 패킷의 각 바이트는 노드(동일한 바이트가 노드를 공유)이며, 에지는 바이트 간의 PMI 값에 따라 구성되어야 합니다. 따라서 패킷 세그먼트에는 여러 그래프(예: si s_i) 가 포함됩니다.에스2n 그래프(n 헤더 그래프, n 페이로드 그래프)를 포함합니다.
  4. 각 바이트에 의해 생성된 두 이미지에 대해 임베딩은 두 개의 임베딩 행렬을 생성하기 위해 개별적으로 수행됩니다. E header ∈ RK × d 0 E_{header} \in R^{K \times d_0}이자형헤드 _ _ _ _아르 자형케이 × 0E 페이로드 ∈ RK × d 0 E_{페이로드} \in R^{K \times d_0}이자형지불 하다 _ _ _ _ _아르 자형케이 × 0
  5. 이 두 임베딩 매트릭스를 매개변수를 공유하지 않는 두 개의 4계층 스택 GraphSAGE 모델에 넣고 각 계층의 출력 연결 결과인 결과를 생성합니다.

输入: E header E_{header}이자형헤드 _ _ _ _:[batch_size, num_nodes, nodes_embedding_input]、E 페이로드 E_{payload}이자형지불 하다 _ _ _ _ _:[batch_size, num_nodes, nodes_embedding_input]
출력:hheaderfinal h_{header}^{final}시간머리말 _ _ _ _최종 _ _:[batch_size, num_nodes, nodes_embedding_output*4]、hpayloadfinal h_{payload}^{final}시간지불 하다 _ _ _ _ _최종 _ _:[batch_size, num_nodes, nodes_embedding_output*4]

  1. 출력에 대해 평균 풀링을 수행하여 그래프 표현을 얻습니다.

형식: hheaderfinal h_{header}^{final}시간머리말 _ _ _ _최종 _ _:[batch_size, num_nodes, nodes_embedding_output*4]、hpayloadfinal h_{payload}^{final}시간지불 하다 _ _ _ _ _최종 _ _:[batch_size, num_nodes, nodes_embedding_output*4]
출시: gh g_hgh:[batch_size, nodes_embedding_output*4]、gp g_pg:[batch_size, nodes_embedding_output*4]

  1. 교차 게이트 기능 융합

엔터: gh g_hgh:[batch_size, nodes_embedding_output*4]、gp g_pg:[batch_size, nodes_embedding_output*4]
출시:zzz:[batch_size, nodes_embedding_output*4]

  1. 다운스트림 태스크(실제로는 nlp 시퀀스 예측 문제, si s_i에스에세이의 단락과 유사)

입력: si = [ [ z 벡터 1 1 , z 벡터 2 1 , . . , z 벡터 m 1 ] , [ z 벡터 1 2 , z 벡터 2 2 , . . , z 벡터 m 2 ] , . . , [ z 벡터 1 n , z 벡터 2 n , . . . , z 벡터 mn ] ] s_i = [[z 벡터 1^1, z 벡터 2^1, ..., z 벡터 m^1],[z 벡터 1^2, z 벡터 2^2, ..., z 벡터 m^2], ..., [z 벡터 1^n, z 벡터 2^n, ..., z 벡터 m^n]]에스=[[ z 벡터 11 ,z-벡터21 ,...,z-벡터m1 ],[ z 벡터 12 ,z-벡터22 ,...,z-벡터m2 ],... ,[ z 벡터 1n ,z벡터2n ,...,z벡터mn ]]
키:라벨 = [ 라벨 1 , 라벨 2 , . . . . . . . . , labeln ] label_i = [label1,label2,...,labeln]라벨 _ _ _=[ 라벨 1 , 라벨 2 , ... , 라벨 n ] _ _ _ _ _ _ _ _ _

일반적으로 그래프 수준의 gnn이 먼저 수행되고 각 바이트에 대해 벡터 z(nlp의 단어 벡터와 유사)가 생성된 다음 rnn이 연결되어 원래 문제를 시퀀스 예측 문제로 전환합니다.

반대로 트래픽 분류 문제를 텍스트 분류 문제로 직접 간주할 수 있으며 해당 관계는 다음과 같습니다.

  • pcap 패키지 — 기사
  • 패킷 세그먼트 — 기사의 단락
  • 패킷 — 기사의 단락에 있는 문장
  • 패킷의 모든 바이트 — 문장의 단어

이전 그래프 신경망이 수행한 작업은 적절한 단어 벡터 표현을 얻는 것입니다.

7. 실험

다음 질문에 대한 실험을 수행합니다.

  • RQ1: 각 구성 요소는 얼마나 유용합니까(섹션 4.3)?
  • RQ2: 어떤 GNN 아키텍처가 가장 잘 수행됩니까(섹션 4.4)?
  • RQ3: TFE-GNN 모델은 얼마나 복잡합니까(섹션 4.5)?
  • RQ4: 하이퍼파라미터의 변경이 TFE-GNN의 효율성에 어느 정도 영향을 미칩니까(섹션 4.6)?
  1. 실험 설정
  • 데이터 세트:

    • ISCX VPNnonVPN : 암호화된 트래픽(VPN) 및 암호화되지 않은 트래픽(비 VPN) 포함, 6가지 사용자 행동 범주
    • ISCX Tor-nonTor : 암호화 트래픽(Tor)과 비암호화 트래픽(non-Tor), 8개의 사용자 행동 카테고리 포함, 이 데이터 세트에는 흐름의 개념이 없기 때문에 60초 비중첩 블록으로 나눕니다. 흐름 기차로.
    • WWT(self-collected data set) : WhatsApp: 사용자 행동 카테고리 12개, WeChat: 사용자 행동 카테고리 9개, Telegram: 사용자 행동 카테고리 6개. 또한 트래픽 세분화를 위해 각 사용자 행동 샘플의 시작 및 종료 타임스탬프가 기록됩니다.

    층화 샘플링, 훈련 세트: 테스트 세트 = 9:1

  • 전처리:

    1. 각 데이터 세트에 대해 두 종류의 "이상치" 샘플을 정의하고 필터링합니다.

    (1) 빈 흐름 또는 세그먼트 : 모든 패킷에 페이로드가 없는 트래픽 흐름 또는 세그먼트. 빈 스트림 또는 세그먼트에는 페이로드가 포함되어 있지 않으므로 해당 그래프를 구성할 수 없습니다. 실제로 이러한 샘플은 분류에 도움이 되는 식별 정보가 거의 없는 클라이언트와 서버 간의 연결을 설정하는 데 자주 사용됩니다.
    (2) 너무 긴 흐름 또는 세그먼트 : 길이(즉, 패킷 수)가 10,000보다 큰 흐름 또는 세그먼트. 너무 긴 스트림 또는 세그먼트에는 너무 많은 패킷이 포함되어 있어 일시적인 불량 네트워크 환경 또는 기타 잠재적인 이유로 인해 많은 수의 불량 패킷 또는 재전송된 패킷이 발생할 수 있습니다. 대부분의 경우 이러한 샘플은 너무 많은 노이즈를 발생시키므로 과도하게 긴 스트림이나 세그먼트를 이상값 샘플로 처리하고 제거합니다.
    (3) 또한 데이터 세트의 나머지 각 샘플에 대해 잘못된 패킷과 재전송된 패킷을 제거합니다.

    1. 이더넷 헤더 제거
    2. 이러한 IP 주소와 포트 번호에서 발생하는 민감한 정보에 대한 간섭을 제거하기 위해 소스 및 대상 IP 주소와 포트 번호가 제거되었습니다.
  • 구현 세부 정보 및 기준:

    매개변수:

    • 각 패킷 세그먼트에 포함된 최대 패킷 수 <= 50
    • 최대 페이로드 바이트 길이와 최대 헤더 바이트 길이는 각각 150과 40으로 설정됩니다.
    • PMI 창 크기는 5로 설정됩니다.
    • 시대:1520
    • 학습률: 1e-2, 점진적으로 1e-4로 감소
    • 옵티마이저: Adam
    • 배치_크기:512
    • 워밍업:0.1
    • 탈락:0.2

    평가하다:

    • 전체 정확도(AC), 정밀도(PR), 재현율(RC), 매크로 F1-점수(F1)

    기준선:

    • 전통적인 기능 엔지니어링 기반 방법 : AppScanner[31], CUMUL[23], K-FP(K-Fingerprinting)[8], FlowPrint[32], GRAIN[43], FAAR[19], ETC-PS[40]
    • 딥러닝 기반 방법 : FS-Net[18], EDC[16], FFB[44], MVML[4], DF[30], ET-BERT[17]
    • 그래프 신경망 기반 방법 : GraphDApp[29], ECD-GNN[11]
  1. 비교 실험

    여기에 이미지 설명 삽입
    여기에 이미지 설명 삽입

  2. 절제 실험(RQ1)

  • H:헤더
  • P: 페이로드
  • 이중: 이중 계층 인코딩
  • JKN: GraphSAGE의 4계층 연결 연산
  • CGFF: 크로스 게이트 패스 기능 융합
  • A&N: 활성화 함수 및 배치 정규화
    여기에 이미지 설명 삽입
  1. GNN 아키텍처 변형 연구(RQ2)
    여기에 이미지 설명 삽입
  2. 모델 복잡도 분석(RQ3)

여기에 이미지 설명 삽입

  1. 모델 민감도 분석(RQ4)은
    실제로 최적의 하이퍼파라미터를 찾기 위한 일부 하이퍼파라미터의 선택 문제입니다.
    여기에 이미지 설명 삽입

요약하다

논문 내용

  1. 배운 방법

    이론적 접근:

    1. 통계 기능 외에도 바이트 기능으로 시작할 수 있습니다.
  2. 논문 장단점

    이점:

    1. 통계적 특징을 분석하는 대신 바이트 특징으로 시작하여 짧은 스트림으로 인한 통계적 특징을 수집하기 어려운 결함을 피하십시오.
    2. 이 방법은 암호화된 트래픽뿐만 아니라 암호화되지 않은 트래픽도 처리할 수 있습니다.

    결점:

    1. 더블 레이어 임베딩에서는 바이트 값을 초기에 고차원으로 임베딩하는 방법에 대한 구체적인 설명이 없기 때문에 재생산이 어렵습니다.
    2. 유한 그래프 구성 방법. 이 모델의 그래프 토폴로지는 훈련 전에 결정되며, 이는 최적이 아닌 성능으로 이어질 수 있습니다. 또한 TFE-GNN은 각 패킷의 원시 바이트에 내포된 바이트 노이즈를 처리할 수 없습니다.
    3. 바이트 시퀀스에 포함된 미사용 시간 정보입니다. 계층별 트래픽 그래프를 구성할 때 바이트 시퀀스의 명시적인 시간 특성이 도입되지 않습니다. (무슨 뜻인지 이해하지 못했다)
  3. 혁신적인 아이디어

    1. 그림을 구성할 때 같은 바이트 값이 노드를 공유하지만 바이트 값의 빈도에 따라 가중치가 할당되지 않습니다. 그래프의 노드. 자세한 내용은 https://blog.csdn.net/Dajian1040556534/article/details/130113702이 문서를 참조하세요.

데이터 세트

  • ISCX VPNnonVPN : 암호화된 트래픽(VPN) 및 암호화되지 않은 트래픽(비 VPN) 포함, 6가지 사용자 행동 범주
  • ISCX Tor-nonTor : 암호화 트래픽(Tor)과 비암호화 트래픽(non-Tor), 8개의 사용자 행동 카테고리 포함, 이 데이터 세트에는 흐름의 개념이 없기 때문에 60초 비중첩 블록으로 나눕니다. 흐름 기차로.
  • WWT(self-collected data set) : WhatsApp: 사용자 행동 카테고리 12개, WeChat: 사용자 행동 카테고리 9개, Telegram: 사용자 행동 카테고리 6개.

추천

출처blog.csdn.net/Dajian1040556534/article/details/131741788