143 lines
4.2 KiB
Django/Jinja
143 lines
4.2 KiB
Django/Jinja
###################################################################################################
|
|
# NOTE:
|
|
# The format of this file is toml (https://github.com/cktan/tomlc99)
|
|
# to make vim editor display colorful and human readable,
|
|
# you can create a symbolic links named sapp.ini to sapp.toml, ln -sf sapp.toml sapp.ini
|
|
###################################################################################################
|
|
|
|
[SYSTEM]
|
|
instance_name = "sapp4"
|
|
|
|
[CPU]
|
|
{% if run_as_tun_mode %}
|
|
worker_threads=1
|
|
{% else %}
|
|
worker_threads={{ sapp.worker_threads }}
|
|
{% endif %}
|
|
### note, bind_mask, if you do not want to bind thread to special CPU core, keep it empty as []
|
|
{% if run_as_tun_mode %}
|
|
bind_mask=[]
|
|
{% else %}
|
|
bind_mask=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
|
|
{% endif %}
|
|
|
|
[PACKET_IO]
|
|
### note, BSD_packet_filter, if you do not want to set any filter rule, keep it empty as ""
|
|
BSD_packet_filter=""
|
|
|
|
### note, depolyment.mode options: [mirror, inline, transparent]
|
|
[packet_io.depolyment]
|
|
{% if nic_transparent_mode.enable %}
|
|
mode=transparent
|
|
{% else %}
|
|
mode=inline
|
|
{% endif %}
|
|
|
|
### note, interface.type options: [pag,pcap,marsio]
|
|
[packet_io.internal.interface]
|
|
{% if nic_transparent_mode.enable %}
|
|
type={{nic_transparent_mode.mode}}
|
|
name={{nic_transparent_mode.internel_interface}}
|
|
{% else %}
|
|
type=marsio
|
|
name=vxlan_user
|
|
{% endif %}
|
|
|
|
[packet_io.external.interface]
|
|
{% if nic_transparent_mode.enable %}
|
|
type={{nic_transparent_mode.mode}}
|
|
name={{nic_transparent_mode.external_interface}}
|
|
{% else %}
|
|
type=pcap
|
|
name=lo
|
|
{% endif %}
|
|
|
|
[packet_io.polling]
|
|
### note, polling_priority = call sapp_recv_pkt every call polling_entry times,
|
|
polling_priority=1
|
|
|
|
[STREAM]
|
|
[stream.tcp]
|
|
max=200000
|
|
timeout=30
|
|
syn_mandatory=1
|
|
reorder_pkt_max=5
|
|
analyse_option_enabled=1
|
|
[stream.tcp.inject]
|
|
link_mss=1460
|
|
|
|
[stream.tcp.inject.rst]
|
|
number=3
|
|
signature_enabled=1
|
|
signature_seed1=65535
|
|
signature_seed2=13
|
|
|
|
[stream.udp]
|
|
max=10000
|
|
timeout=60
|
|
|
|
[PROFILING]
|
|
[profiling.pkt_latency]
|
|
enabled=0
|
|
### note, threshold unit is microseconds (us)
|
|
threshold=1000000
|
|
|
|
[profiling.sanity_check]
|
|
raw_pkt_broken_enabled=0
|
|
symbol_conflict_enabled=0
|
|
|
|
[profiling.log]
|
|
level=20
|
|
interval=5
|
|
|
|
[profiling.log.local]
|
|
enabled=1
|
|
### note, if "file_truncate_open_enabled=1", file will be truncated, otherwise open the file for appending.
|
|
file_truncate_enabled = 1
|
|
log_file_name = "fs2_sysinfo.log"
|
|
|
|
[profiling.log.remote]
|
|
enabled=1
|
|
server_ip={{ fs_remote.address }}
|
|
server_port={{ fs_remote.port }}
|
|
|
|
[profiling.log.remote.field_stat2]
|
|
### note, is valid when "remote_send_out_type=field_stat2"
|
|
### note, metric_type option value: [default, json]
|
|
metric_type = default
|
|
app_name=sapp
|
|
|
|
[TOOLS]
|
|
[tools.pkt_dump]
|
|
enabled=0
|
|
### note, mode options value:[storage, udp_socket]
|
|
mode=udp_socket
|
|
BSD_packet_filter=""
|
|
|
|
[tools.pkt_dump.threads]
|
|
### note, if you want enable pkt dump in all thread, set dump_thread_all_enabled=1, then 'dump_thread_id' is obsoleted.
|
|
### if dump_thread_all_enabled=0, then use dump_thread_id to specify separate specified thread index.
|
|
all_threads_enabled=1
|
|
|
|
### note, dump_thread_id start from 0, max is CPU.worker_threads-1
|
|
dump_thread_id=[0,1,2,3,4]
|
|
|
|
[tools.pkt_dump.udp]
|
|
command_port=12345
|
|
|
|
[tools.pkt_dump.storage]
|
|
### note, file path must be double quotation mark extension, for example, path="/dev/shm/pkt_dump"
|
|
path="/dev/shm/pkt_dump"
|
|
### note, file size unit: MB
|
|
file_size_max_per_thread=10000
|
|
|
|
### note:
|
|
### These configurations format is complex and difficult to describe with toml grammar,
|
|
### so, create a Independent config file to description specific information.
|
|
[SPECIAL_CONFIG_LINK]
|
|
project_list_path="./etc/project_list.conf"
|
|
plugin_path="./etc/plugin.conf"
|
|
entrylist_path="./etc/entrylist.conf"
|
|
send_raw_pkt_path="./etc/send_raw_pkt.conf"
|
|
vxlan_sport_service_map_path="./etc/vxlan_sport_service_map.conf"
|