새소식

반응형
CS 지식/네트워크

[네트워크] 30. Quality of Service(QOS)

2023.02.13
  • -
반응형

best effect service(최선을 다해 서비스)

Data Flow Characteristics

  • Four types of characteristics are attributed to a flow:
    • Reliability is a characteristic that a flow needs in order to deliver the packets safe and sound to the destination.
    • Source-to-destination delay is another flow characteristic.
    • Jitter is the variation in delay for packets belonging to the same flow.
      • 오디오나 비디오를 전달할 때 굉장히 중요한 특성
    • Different applications need different bandwidths.
  • Sensitivity of applications to flow characteristics

어떤 application이 어떤 특성에 high sensitive 한지(어느 정도의 민감성을 보이는지)

FTP: 파일을 보내는 FTP는 신뢰도에 민감하고 delay, jitter는 둔감하며 bandwidth는 보통(민둔둔보)

HTTP: 신뢰도에 민감, delay는 중간, jitter는 둔감, bandwidth는 보통 (민준뚱보)

Audio: 신뢰도, delay에 둔감, jitter에 민감, bandwidth 보통

Video: 신뢰도, delay에 둔감, jitter에 민감, bandwidth에 민감

voice: 신뢰도 둔감, delay 민감, jitter 민감, bandwidth 민둔감

 

Implementing QoS

  • Scheduling: FIFO queuing, priority queuing, and weighted fair queuing
  • Traffic shaping or policing: Leaky bucket, token bucket
    • 도로망의 shaping 변경을 통해 원활하게
  • Resource reservation
    • 예약
  • Admission control: accept or reject a flow based on predefined parameters called flow specification
    • 계약 조건에 위배되면 flow를 거절

 

FIFO Queue

  • 순서대로!
  • 1,2,3번 packet이 application이 뭔지는 상관없이 순서대로 하기 때문에 3번과 같이 빨리 끝나는 건데도 기다려야 된다.

 

Priority Queuing

  • Packets are first assigned to priority class. Each priority class has its own queue

  • 우선순위 큐
  • 어떤 종류의 application인지에 따라 요구하는 quality가 무엇인가에 따라 우선순위 부여
    • delay에 민감하면 high-priority queue에 넣고
    • high-priority queue가 비기 전까지는 low-priority를 처리하지 않음
  • high-prioity에 처리해야 할 것이 계속 들어오면 starvation이 발생...

 

Weighted Fair Queuing

  • The queues are weighted based on the priority of the queues
  • The system processes packets in each queue in a round-robin fashion with the number of packets selected from each queue based on the weight
  • 프로세스가 가장 높은 우선순위 큐에서 세 개의 프로세스를 털고 계속 머무는 것이 아니라 중간 우선순위 큐로 가서 두 개를 털고 가장 낮은 우선순위 큐로 가서 하나를 털어 starvation을 방지한다.
    • 돌아가면서 일처리를 하되 각 큐에서 처리하는 개수는 weight 부여

Traffic Shaping: Leaky Bucket

  • Traffic shaping: to control the amount and the rate of the traffic sent to network
    • 일정한 rate으로 차들을 고속도로에 유입시키기
  • Two techniques: leaky bucket and token bucket
  • A leaky bucket algorithm shapes bursty traffic into fixed-rate traffic by averaging the data rate. It may drop the packets if the bucket is full.

Leaky Bucket Implementation

  • Algorithm for variable-length packets:2) If n is greater than the size of the packet, send packet and decrement the counter by the packet size. Repeat this step until n is smaller than the packet size
  • 3) Reset the counter and go to step 1
  • 1) Initialize a counter to n at the tick of the clock
  • FIFO 사용!

 

Token Bucket

  • The token bucket allows bursty traffic at a regulated maximum rate.

  • Token bucket + leaky bucket: leaky bucket after token bucket
  • 1초에 한 token 씩 쌓는다.
  • token은 일종의 토큰을 하나 내보낼 수 있는 권리로써 token이 하나당 packet을 보낸다.
    • token 하나 들어오면 packet 하나 내보내고.... -> 이 경우 일정한 속도로 packet이 나아갈 것이다.
  • 그런데!! 일정한 data를 보내다가 보낼 데이터가 queue에 없으면 그 동안 못 보낸 만큼 token이 쌓여서 credit을 부여하여 나중에 그 수 만큼 많이 보낼 수 있도록 일종의 보상 기능이 추가된다.
    • 뒤에 뭉쳐서 오는 traffic을 처리할 수 있도록
  • 그래서 보낼 수 있는 최대 packet 수는
    • max # of packets = r x t + C
    • r: rate, t: time, C: capacity

 

Integrated Services (IntServ)

data flow를 위해서 reservation 기반의 서비스

  • Integrated Services is a flow-based QoS model designed for IP
  • Signaling: Resource Reservation Protocol (RSVP)
    • signaling으로 신호를 주고 받으면서 필요한 자원을 예약
  • To define a specific flow, a source needs to define a flow specification, which is made of two parts:
    • Rspec (resource specification) defines the resource that the flow needs to reserve
    • Tspec (traffic specification) defines the traffic characterization of the flow
  • After a router receives the flow specification from an application, it decides to admit or deny the service.
    • The decision is based on the previous commitments of the router and the current availability of the resource.
  •  : guaranteed service and controlled-load service
    • Guaranteed service class: guaranteed minimum end-to-end delay
      • on-demand audio/video
      • stored audio/video
      • real-time
    • Controlled-load service class: accept some delays, but is sensitive to an overloaded network and to the danger of losing packets
  • Service classes
  • 자동차 하나하나를 달리 취급하여 따로 따로 관리

 

RSVP

  • In IntServ, the resource reservation is for a flow, a kind of virtual circuit network out of the IP
  • RSVP is a signaling protocol to help IP create a flow and consequently make a resource reservation
  • RSVP is a signaling system designed for multicasting
  • Receiver-based reservation
  • RSVP message: Path and Resv
  • Path message: from sender to all receivers
    • path를 통해 이를 받은 receiver들은 S1까지 가는 길을 알게됨

Resv Messages

  • Make a resource reservation from each receiver to sender

역으로 자원을 reservation

 

Reservation Merging

router가 이를 기억해서 자원 배정

 

Reservation Styles

  • Wild card filter style: a single reservation for all senders
  • Fixed filter style: a distinct reservation for each flow
  • Shared explicit style: a single reservation which can be shared by a set of flow

  • Soft state instead of hard state (such as ATM, Frame Relay)
    • 고정되지 않고 reservation 정보가 주기적으로 refresh
  • Reservation information to be refreshed periodically(default 30초)
  • IntServ problem: scalability and service-type limitation
    • 매 flow를 각각 따로 관리를 해야 하는 복잡성 -> 확장성 문제
    • service 타입의 종류가 적음

 

Differentiated Service (Diffserv)

IntServ가 flow based 였다면 Diffserv는 class-based이다.

  • Differentiated Services is a class-based QoS model designed for IP.
  • DiffServ handles the shortcomings of IntServ
  • Main differences between DiffServ and IntServ
    • Main processing is moved from the core to the edge (scalability)
      • intserve는 core에 일이 많음
      • diffserve는 core까지 가지 않고 edge에 들어올 때만 일을 하고(class를 나누는 일) 그 후부터는 기계적으로 정보가 전달됨.
    • The per-flow is changed to per-class flow service (service-type limitation)
  • DS field
    • DSCP (DS Code Point) is a 6-bit field that define per-hop behavior (PHB)
      • class 별로 다른 행동을 하도록 해 주는
    • CU (currently unused) is 2-bit

Per-hop Behavior (PHB)

  • DiffServ defines three PHBs
  • DE PHB (default PHB) is the same as best-effort delivery
  • EF PHB (expedited forwarding PHB) provides the following services:
    • Low loss, low latency, ensured bandwidth
  • AF PHB (assured forwarding PHB) delivers the packet with a high assurance as long as the class traffic does not exceed the traffic profile of the node
  • router에 들어온 packet이 어떤 class에 소속되었는지에 따라서 차별화된 서비스를 제공하도록 나눈다.

 

Traffic Conditioner

  • Meter checks to see if the incoming flow matches the negotiated traffic profile
  • Marker can re-mark a packet with best-effort delivery or down-mark a packet based on the meter information; no up-mark
  • Shaper use the meter information to reshape the traffic if not compliant with the negotiated profile.
  • Dropper, like a shaper with no buffer, discard packets if the flow severely violates the profile

틀린 문제

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.