mirror of
https://github.com/edera-dev/krata.git
synced 2025-08-03 05:10:55 +00:00
network: move out channel size constants
This commit is contained in:
parent
60c9aefdda
commit
d595f1639a
@ -19,6 +19,8 @@ use tokio::io::{AsyncReadExt, AsyncWriteExt};
|
||||
use tokio::select;
|
||||
use tokio::sync::mpsc::{channel, Receiver};
|
||||
|
||||
const TX_CHANNEL_BUFFER_LEN: usize = 300;
|
||||
|
||||
#[derive(Clone)]
|
||||
pub struct NetworkBackend {
|
||||
metadata: NetworkMetadata,
|
||||
@ -121,7 +123,7 @@ impl NetworkBackend {
|
||||
];
|
||||
let mut kdev = AsyncRawSocket::bound_to_interface(&interface, RawSocketProtocol::Ethernet)?;
|
||||
let mtu = kdev.mtu_of_interface(&interface)?;
|
||||
let (tx_sender, tx_receiver) = channel::<BytesMut>(100);
|
||||
let (tx_sender, tx_receiver) = channel::<BytesMut>(TX_CHANNEL_BUFFER_LEN);
|
||||
let mut udev = ChannelDevice::new(mtu, Medium::Ethernet, tx_sender.clone());
|
||||
let mac = self.metadata.gateway.mac;
|
||||
let nat = NatRouter::new(mtu, proxy, mac, addresses.clone(), tx_sender.clone());
|
||||
|
@ -25,6 +25,8 @@ use tokio::sync::mpsc::channel;
|
||||
use tokio::sync::mpsc::Receiver;
|
||||
use tokio::sync::mpsc::Sender;
|
||||
|
||||
const RECLAIM_CHANNEL_QUEUE_LEN: usize = 10;
|
||||
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, PartialOrd, Ord, Hash)]
|
||||
pub enum NatKeyProtocol {
|
||||
Tcp,
|
||||
@ -118,7 +120,7 @@ impl NatRouter {
|
||||
local_cidrs: Vec<IpCidr>,
|
||||
tx_sender: Sender<BytesMut>,
|
||||
) -> Self {
|
||||
let (reclaim_sender, reclaim_receiver) = channel(4);
|
||||
let (reclaim_sender, reclaim_receiver) = channel(RECLAIM_CHANNEL_QUEUE_LEN);
|
||||
Self {
|
||||
mtu,
|
||||
local_mac,
|
||||
|
@ -32,6 +32,8 @@ const TCP_BUFFER_SIZE: usize = 65535;
|
||||
const TCP_ACCEPT_TIMEOUT_SECS: u64 = 120;
|
||||
const TCP_DANGLE_TIMEOUT_SECS: u64 = 10;
|
||||
|
||||
const TCP_IP_BUFFER_LEN: usize = 300;
|
||||
|
||||
pub struct ProxyTcpHandler {
|
||||
rx_sender: Sender<BytesMut>,
|
||||
}
|
||||
@ -108,7 +110,7 @@ impl ProxyTcpHandler {
|
||||
mut external_socket: TcpStream,
|
||||
mut rx_receiver: Receiver<BytesMut>,
|
||||
) -> Result<()> {
|
||||
let (ip_sender, mut ip_receiver) = channel::<BytesMut>(300);
|
||||
let (ip_sender, mut ip_receiver) = channel::<BytesMut>(TCP_IP_BUFFER_LEN);
|
||||
let mut external_buffer = vec![0u8; TCP_BUFFER_SIZE];
|
||||
|
||||
let mut device = ChannelDevice::new(
|
||||
|
@ -21,9 +21,9 @@ use tokio::{
|
||||
|
||||
const BROADCAST_MAC_ADDR: &[u8; 6] = &[0xff; 6];
|
||||
|
||||
const BRIDGE_TX_QUEUE_LEN: usize = 4;
|
||||
const BRIDGE_RX_QUEUE_LEN: usize = 4;
|
||||
const BROADCAST_RX_QUEUE_LEN: usize = 4;
|
||||
const BRIDGE_TX_QUEUE_LEN: usize = 50;
|
||||
const BRIDGE_RX_QUEUE_LEN: usize = 50;
|
||||
const BROADCAST_RX_QUEUE_LEN: usize = 50;
|
||||
|
||||
#[derive(Debug)]
|
||||
struct BridgeMember {
|
||||
|
Loading…
Reference in New Issue
Block a user