Professional Documents
Culture Documents
Spec Tap QoS
Spec Tap QoS
11)
a) Module input_queue: toàn bộ dữ liệu sau khi được module Tap_broadcaster chụp
lại sẽ ghi vào FiFO của module nay và chờ tín hiệu điều khiển trạng thái ready của
module input_arbiter để cho phép đọc dữ liệu ra.
b) User_data_path: gồm module Input_arbiter: thực hiện thuật toán Round Robin để
cho phép dữ liệu tại 2 port được nhận và xử lý tuần tự tại khối Tap_procesing.
Trong khối Tap_procesing là kiến trúc được phát triển từ kiến trúc của Netflow_V5,
bao gồm:
Module NF_To_STREAM:
Nhận Ethernet frame từ Input_arbiter chuyển thành tín hiệu Stream xuất ra port thứ 3
và đưa vào phần mềm Wireshark để tiến hành quan sát.
Module Pkt_classification:
Nhận Ethernet frame thực hiện phân loại packe và tiến hành trích xuất các trường
header của gói tin (Scr_IP, Des_IP, Source_port, Des_port, Protocol) và các trường
thông tin (Timestamp, Packet_counter, Byte_counter, Sequence_number, Ack_number,
Windows, Urgent_point, Src_port_phy, Offset_register_flag, TCP_checksum,
Length_payload).
Chức năng của module Pkt_classificaiton được phát triển từ giao thức Netflow V5,
chỉ trích xuất các frame thuộc gói tin Ipv4, giao thức TCP (0x06), UDP (0x11), ICMP
(0x01), IGMP (0x02), IPSEC ESP (0x32), IPSEC AH (0x33) và ARP (gói tin ARP trích
xuất các trường header: Source IP, Dest IP và trường thông tin Timestamp,
Packet_counter, Byte_counter).
Đồng thời, module Pkt_classificaiton còn thực hiện tính thông số TCP_checksum
của mỗi frame. Sau khi trích xuất được các thông số và trường thông tin cần thiết của
frame, gồm: 5_Tuple, Pkt_info, Sequence_number, Ack_number, TCP_checksum và
TCP_checksum_recalculator. Module Pkt_classification sẽ đẩy các thông tin sang
module Check_creat_update_flows cùng với tín hiệu thông báo là
Tuple_and_infor_valid.
Bổ xung thêm tính năng tại module Pkt_classificaiton cho phép thực hiện việc lọc
các thông tin theo cấu hình từ chương trình điều khiển MainC bao gồm :
Cho phép lọc theo giao thức : TCP, UDP, TCP_QOS, ICMP, IGMP, IPSEC
ESP, IPSEC AH. Được cấu hình cho phép trích xuất các gói tin có giao
thức trùng với giao thức đã được cài đặt từ chương trình điều khiển MainC.
Module check_creat_update_flows: Thực hiện 3 chức năng:
+ Đối với Ip Core Tap thực hiện việc Csreater_update giống như thực hiện trên
NetFlow.
+ Đối với Tap_QoS đầu tiên, sẽ tiến hành so sánh trường TCP_checksum với
TCP_checksum_recalculator. Nếu 2 trường trên không giống nhau thì packet vừa
nhận sẽ được tính là Pkt_error = 1 trong QoS. Ngược lại, nếu 2 trường trên bằng
nhau thì gói tin sẽ được tiếp tục kiểm tra các thông số QoS: Duplicaiton, Loss , Out
of order (phương pháp và thuật toán kiểm tra, phát hiện và thống kê được trình bày
trong report). Sau các bước kiểm tra QoS, module Check_creat_update sẽ kiểm tra
xem flow của packet hiện tại đã có trong flow_table hay chưa. Nếu chưa, sẽ thực
hiện create flow tại địa chỉ đã được xác định từ hash_code. Nếu đã có một flow giống
với flow đang kiểm tra thì sẽ thực hiện update. Ngược lại sẽ tính là collision, loại bỏ
frame mới, giữ lại flow của frame cũ.
+ Đối với các flow của các gói tin IGMP,ICMP,IPSec,ARP thì thực hiện create or
update : module Check_creat_update sẽ kiểm tra xem flow của packet hiện tại đã có
trong Flow_table hay chưa. Nếu chưa, sẽ thực hiện create flow tại địa chỉ đã được xác
định từ Hash_code. Nếu đã có một flow giống với flow đang kiểm tra thì sẽ thực hiện
update
Quá trình Create/Update sẽ được module Check_creat_update_flows tại 2 table có
cùng Depth_table. Trong đó:
SO SÁNH KIẾN TRÚC CỦA IPCORE TAP NETWORK UPDATE VỚI KIẾN TRÚC
CỦA IPCORE TAP CŨ.
4. Các điểm phát triển:
a) Tại moudle Pkt_classification:
- lấy thêm các trường: Sequence_number, Ack_number, TCP checksum, và
các trường để tính TCP_checksum.
- Bổ xung thêm xử lý các gói tin IGMP,ICMP,IPSEC ESP, IPSEC AH và
ARP
- Bổ xung thêm chức năng lọc gói tin TCP, UDP, TCP_QOS,
IGMP,ICMP,IPSEC ESP, IPSEC AH và ARP
b) Module Check_create_update_flow:
- trước khi quyết định creat_update flow_entry/QoS_entry vào flow_table,
QoS_table thì moudle này sẽ thực hiện kiểm tra, phát hiện và thống kê
QoS: duplication pkt, loss pkt, out of order pkt, corrupt pkt. Moudle này
thực hiện điều khiển đọc ghi data đồng thời ở cả 2 table: flow_table,
QoS_table .
- Đối với các flow thuộc các gói tin (ICMP,IGMP,IPSET,ARP) việc create
or update không cần kiểm tra checksum và sẽ được create or update vào
Flow_tabble
c) Module Export_expired_flows_mem: Điều khiển kiểm tra và export
flow_entry/QoS_entry và clear ngăn nhớ tại đồng thời 2 table: flow_table,
QoS_table.
d) Moudle Tap_reg_axi_lite: Điều khiển đọc dữ liệu tử 2 fifo, đặt các trường của
dữ liệu read từ mỗi fifo vào từng trường xác định và cho phép Master_axi_lite
đọc.