- Jun 2023
-
www.usenix.org www.usenix.org
-
SLO
what this?
Service Level objective
sla = service level agreement
-
ail latency performance
what is this
-
-
qizhenzhang.me qizhenzhang.me
-
hey are ableto predict the effects of that queuing and protocol manipulationwithout simulating or interacting with other Mimics
each mimic is independent of each other
-
Flow-Completion Time
what is this? time from when the first packet of a flow is sent (in TCP, this is the SYN packet) until the last packet is received.
-
- May 2023
-
Local file Local file
-
lows
-
evice configurations
which are? scheduling discipline, throughput, bitrate, drop discipline, number of ports?
-
traffic patterns
Uniform Traffic: each source generates traffic at a constant rate
Bursty Traffic: Traffic pattern where data transmitted in bursts of short intervals of high activity, followed by periods of low or no activity
Periodic Traffic: regular traffic appearing at fixed intervals (synchronized data transfer, scheduled updates)
Interactive Traffic: Interactive traffic involves real-time communication and interaction between network users or applications. Examples include VoIP (Voice over Internet Protocol) calls, video conferencing, online gaming, or instant messaging. Interactive traffic requires low latency and often involves small, frequent data packets.
On-Off Traffic: On-Off traffic exhibits a pattern where the traffic alternates between active and idle periods. It can be observed in applications or protocols that generate traffic intermittently, such as file transfers or remote desktop sessions.
-
etwork devices.
So all network devices are made up of ports?
Router: connect multiple networks, such as LANs (Local Area Networks) or WANs (Wide Area Networks). They forward data packets between networks based on IP addresses and make intelligent routing decisions based on routing protocols.
Switch: Connect multiple devices within a LAN. They receive incoming data packets and forward them to the appropriate destination device based on MAC (Media Access Control) addresses. Switches provide efficient and dedicated communication paths between devices, allowing for simultaneous data transmission.
-
port leve
What is the difference between device level. and why are there multiple ports in a switch
can you have a n input port and m output port? how would you choose n and m?
-
FIFO, DRR, SP, WFQ
Is it useful to learn these? since we are black boxing it
-
1 to 8
strict priority? or only a percentage of weight
-
500 and 1500 bytes
why? because it is the most common number of bytes for a packet?
-
λ = 0.01
what about on off model?
-
mber of flowsentering the port, with the numbers being [1, 2, 4, 6, 8
That is all? this is enough?
-
in-ference speed and memory usage
having more engines increases inference speed?
-
Delay Prediction Model
This model is reused for every single port?
-
Port 1
does each port have a meaning? priority?
-
SwitchFabric
This thing routes the input port to the output port? Since we are only modeling delay from port, is there no delay coming from the switch fabric? doesn't it need time to compute which port the packet needs to go to?
-
4-head
Here's how the number of heads affects the transformer architecture:
Increased Capacity: Adding more attention heads increases the model's capacity to capture diverse patterns and dependencies in the input data. Each head attends to different aspects of the input sequence, allowing the model to attend to multiple positions simultaneously.
Enhanced Representation: With more heads, the model can learn more fine-grained representations. Each head specializes in attending to different parts of the sequence, enabling the model to capture both local and global dependencies more effectively.
Parallelization: The self-attention mechanism can be computed in parallel for different heads, which speeds up training and inference. As a result, increasing the number of heads can lead to improved computational efficiency.
-
dropout rate isset at 0.1
what is this? randomly "dropping out" or deactivating individual units (neurons) in a neural network during training. Dropout is a regularization technique that helps prevent overfitting and improves the generalization of the model.
-
Algorithm 1: Intra-port packet reordering algorithm
What does this algorithm do? reorder all the packets in all switches?
since we are doing inference, does that mean that this is the inference algorithm? or is it's only purpose to reorder packets in each switch?
-
it only requires data from a one-port simulation.
Only needs data for each port configuration?
-
I ← E;
Is this because the egress packets of switch s is the ingress packets of switch s+1?
-
The maximumiteration is the larger value of the diameter of the topologyand the maximum hop count of the routing.
why is this so?
hop count = number of routers/devices packet passes thorugh
-
guaranteed to converge
why? Is the point of the algorithms to segment the packets to the right batches, and/or sort them into the right order?
-
eorder the packets in the queues
how do you reorder them? is it random? based on timestamp? The next paragraph seems to support
-
updateits egress packet streams
output is packets with delays. also where are the packets being routed to different ports like in dqn? (PFM tensor mult.)
-
packets into batches
what is the policy? time window? number of packets?
-
incoming orde
before and after delays are predicted for each packet, their order stays unchanged?
-
imestamps
timestamp of what? when it enters the port? when it leaves the last port?
-
converged egress stream
until what converges? packet delay? packet loss?
-
ort packet reordering
how is this different then irsa from dqn?
-
ntra-
within
-
acket drop rates
how does misbatching affect drop rates? HOw are drop rates even calculated and related to packets? the more packets the higher the drop rate? the larger the packets the higher the drop rate?
-
incorrectbatches
this implies that there is an optimal/correct batching? How do you know when to split batches? by a constant time window?
-
traffic flows,
which is? a stream of packets from destination to source?
-
routing information
which is? Source and destination? the routing tables for each switch?
-
employthe input traffic generation model
can you instead feed real traffic?
-
givennetwork topology
how do you input this into the program
-
witch’s estimation performance does not degrade as thenumber of ports increases
this was a problem for deepqueuenet
-
That is, achieving generality with respect to the numberof ports.
so deepqueuenet was not able to generalize to number of ports? rather it had to retrain each device with a new number of ports?
-
all port models to com-pile an overall assessment of the switch device’s performance.
how is this measured? How is 'overall assessment' measured? packet loss rate?
-
port models forinference
so each flow maps to one unique port model?
-
incoming flow
does each queue represent a different flow?
-
port models
how many different port models do you need to train?
-
scheduling disciplines,packet-drop strategies, buffer sizes, and port output rates
I think this answers my last annotation?
-
port configurations
what are port configurations? speed? bandwidth? drop discipline?
-
drop module, wherepackets are selected to drop based on the overall packet droprate li, j.
randomly?
-
port configurations
examples?
speed & bandwidth duplex mode media type
-
device library
not general enough
-
packet batch
processing packets in batches doesn't feel right, doesn't capture the entire picture
-
output queues do not interfere with others
but queues do affect each other, as adding a queue means the other queues have less time for processing
-
sophisticated principles
hard to model simply?
-
exponential average
exponentially higher weightage on more recent values of queue length
-
degree of aggregation
number of packets in queue
-
service order
how next packet inserted into queue (think binary insertion)
-
work-conserving
Always busy (not idling) using all availble resources
-
scheduler
Decides how each queue is processed ( which queue to process next)
traffic cop
-
switch fabric,
Now, switch fabric is like the system of tracks and switches that enable trains to move from one track to another efficiently. It ensures that trains can travel smoothly and quickly, without any collisions or delays.
-
head-of-line blocking
restaurant and person at fron taking long time to decide.
Head of line blocking happens when a particular packet or set of packets gets delayed for some reason, like congestion or errors. These delayed packets act as a "blockage" for the subsequent packets that are waiting to be processed. Just like in the restaurant example, the packets behind the delayed ones have to wait until the delay is resolved and the blocked packets are processed.
-
buffer placement, such as at the inputport, output port, within the switch fabric, or in a commonlocation shared by both the input and output ports
whats the difference between all of these
-
being dropped
Not all packets are sent. might be dropped when too full to ensure no congestion
-
ueue
think about airport or border crossing (nexus)
-
comprising metrics for each flow, device, oreven packet
anything else?
-
how to train and infer more effi-ciently remains a formidable challenge.
so you're saying that only training the ports is faster since the number of ports needed to train is far less than the number of devices needed to train?
-
Consequently, the extensive training data require-ment puts a significant challenge on the generality acrossdiverse traffic patterns
You need proportional amount of data proportional to the number of traffic patterns
-
portnumbers, scheduling disciplines, packet-drop strategies,buffer sizes, and port output rates.
there could be infinitely many number of configurations so it is not economic to create a dnn for every possible config?
-
even when only mi-nor differences exist between the two switches
This reminds me of that youtube video at the end when the MC was asking pancy about what if they changed the code in the switch.
https://www.youtube.com/watch?v=qQW6Wwq67ko&t=751s&ab_channel=ACMSIGCOMM
-
five primary challenges
Only these 5? there aren't any other more important? How would I know though, I'm not really an expert
-
queueing-theoretic modeling
what is this? poisson proccess, map?
-