학교수업/네트워크 응용설계

4-3

hwijin97 2022. 5. 23. 19:24

Input port queuing

 

- Fabric slower than input ports combined -> queuing may occur at input queues

   - queuing delay and loss due to input buffer overflow!

      ( Ideally multiple packets can be transferred in parallel, as long as their output ports are different ) -> 이상적으로 output port 가 다른 패킷들은 동시에 전송될 수 있다. 

 

- Head- of-the-Line (HOL)  Blocking : queued datagram at front of queue prevents others in queue from oving forawrd -> head packet 이 이미 사용중인 port 를  사용해야 한다면, block 된다.

    - even if other packet's output port is idle !

    - output port contention : only one datagram can be transferred.

 

Output ports

- Output port takes packets that have been stored in the output port's memory and transmits them over the output link ( 많은 input port 에서 들어오는 packet 들을 output line 의 전송속도로 전달하기 힘들기 때문에 buffer 에 저장한다. )

- Buffering : required when datagrams arrive from fabric faster than the transmission rate

    - Datagram (packets) can be lost due to congestion, lack of buffers

- Scheduling : discipline chooses (selects) among queued packets and dequeue it for transmission

    - ex ) Priority scheduling - who gets best performance, network neutrality

 

Output port queuing/buffering

- Buffering when arrival rate via switch exceeds output line speed

    - Queueing delay and los due to output port buffer overflow!

    - Which packet to drop? ( ex> drop-tail, RED(Random Early Detection), etc.)

- How much buffering?

    - RFC 3439 rule of thumb : average buffering equal to "typical" RTT times link capacity C ( RTT = 250ms, C = 10Gpbs link -> 2.5 Gbit buffer)

    - recent recommendation : with N flows, buffering equal to $\frac{RTT \cdot C}{\sqrt{N}}$

 

Scheduling mechanisms

Scheduling : choose next packet to send on link

- FIFO ( First in first out ) : sheduling : send in order or arrival to queue

    - discard policy : if packet arrives to full queue : who to discard? ( $\neq$ scheduling )

        - tail drop : drop arriving packet

        - priority : drop/remove on priority basis

        - random : drop/remove randomly

        - other : RED

- Priority scheduling : send higher priority queued packet first, multiple classes

    - multiple classes, with different priorities : high priority queue first, after low priority queue 

        - class may depend on marking or other header info, ( IP source/dest, prot numbers, etc )

        - real wordk example ? : bank, airplane,,,

- Round Robin (RR) scheduling

    - multiple classes

    - cyclically scan class queues, sending one complete packet from each class ( if available )

- Weighted Fair Queueing (WFQ) : combine priority, round robin

    - generalized Round Robin

    - each class gets weighted amount of service in each cycle

    

'학교수업 > 네트워크 응용설계' 카테고리의 다른 글

[Applications And Design] 5. Network Layer  (0) 2022.05.25
4.3  (0) 2022.05.23