Kvalita služeb ve vysokorychlostních sítích Sven Ubik CESNET,
Kvalita služeb ve vysokorychlostních sítích vs. end-to-end performance ? Téma
Kvalita služeb ve vysokorychlostních sítích vs. end-to-end performance ? Géant vs. 10/100 Mb/s Ethernet ? Téma
Dílčí úkoly T1 - TCP performance T2 - Simulace počítačových sítí T3 - QoS ve vysokorychlostních směrovačích T4 - QoS v přístupových sítích (L2 -> L3) T5 - Měření chakteristik sítě a jejich vlivu na aplikace
T1 - TCP performance Protokoly: ~96% TCP, 3%UDP, zbytek Geant, duben 2002 Praha - Brno 124/84 Mb/s, Cesnet - Internet 219/118 Mb/s měsíc před Mezinárodní traffic - 30% duben 2002
TCP flow control & congestion control
BW * delay product From CESNET: ping max.throughput measured for 64kB owin FTP throughput ftp.uninett.no38 ms 13.8 Mb/s 12.3 Mb/s ftp.cs.columbia.edu90 ms 5.8 Mb/s ftp.tamu.edu133 ms 3.9 Mb/s ftp.stanford.edu166 ms 2.6 Mb/s 1.3 Mb/s
Window Scale TCP Option (RFC 1323) 1. OS must support, for example, Linux 2.4: sysctl -w net/ipv4/tcp_adv_win_scale=1 2. Application must use a) default for all TCP connections sysctl -w net/ipv4/tcp_rmem=„ “ sysctl -w net/ipv4/tcp_wmem=„ “ b) application sets its own setsockopt(sockfd, SOL_SOCKET, SO_RCVBUF, (char *)&size, sizeof(int)); setsockopt(sockfd, SOL_SOCKET, SO_SNDBUF, (char *)&size, sizeof(int)); After socket(), before connect() or listen() Examples: netperf, modified ncftp+wuftpd c) OS tunes automatically 3. Timestamps + PAWS (Protect Against Wrapped Sequence Numbers)
CESNET UNINETT UDP throughput symetric routing (Géant) assymetric routing (Teleglobe)
CESNET UNINETT TCP throughput max. rwnd CESNET UNINETT CESNET [bytes] UNINETT [Mb/s] CESNET [Mb/s]UNINETT [Mb/s] FTP 150 MB: standard FTP: 130 s rwnd increased to 4MB: 5s
CESNET UNINETT TCP throughput, cont.
Sledování vlivu charakteristik sítě a konfiguračních parametrů na propustnost TCP Simulace: sim.cesnet.cz, ns/2 Emulace: Nist Net Odhad kapacity a propustnosti trasy Následná analýza datového toku Průběžná analýza stavových proměnných
Odhad kapacity a propustnosti trasy pathchar to tcp4-ge.uninett.no ( ) 0 localhost | 61 Mb/s, 48 us (293 us) ( ) | 348 Mb/s, 13 us (354 us) 2 r21-pos0-0-stm16.cesnet.cz ( ) | 108 Mb/s, 64 us (594 us) 3 cesnet.cz1.cz.geant.net ( ) | 614 Mb/s, 4.15 ms (8.91 ms) 4 cz.de1.de.geant.net ( ) | 557 Mb/s, 7 us (8.95 ms) 5 de1-1.de2.de.geant.net ( ) | 1229 Mb/s, 10.9 ms (30.7 ms) 6 de.se1.se.geant.net ( ) | ?? b/s, -13 us (30.6 ms) 7 nordunet-gw.se1.se.geant.net ( ) | 805 Mb/s, 3.67 ms (38.0 ms) 8 no-gw.nordu.net ( ) | 884 Mb/s, 13 us (38.0 ms) 9 oslo-gw1.uninett.no ( ) | 656 Mb/s, 3.39 ms (44.8 ms) 10 trd-gw.uninett.no ( ) | 99 Mb/s, 29 us (45.0 ms), 13% dropped 11 tcp4-ge.uninett.no ( ) pchar, pathchar, clink, pathrate, …, pathload
Následná analýza datového toku tcpdump -w trace.log tcp and host tcp4-ge.uninett.no tcptrace -l -f ’s_port!=12865’ -T -A300 -G trace.log xplot a2b_owin.xpl
Průběžná analýza stavových proměnných - “Tools for end hosts to automatically achieve high bandwidth” - kernel data structures + library + userland tools
Slow start: cwnd<ssthresh received new ack => cwnd=cwnd+max.segment Congestion avoidance: cwnd>ssthresh RTT => cwnd=cwnd+max.segment Problémy: Nízká počáteční hodnota ssthresh Congestion avoidance je příliš pomalé pro gigabitové sítě TCP flow control & congestion control, cont.
Zvýšení MTU (Catalyst max. 2018) BW < (MSS/RTT) 1/sqrt(loss rate) MSS=1460 bytes, RTT=44ms, loss rate=5*10 -6 => BW=118Mb/s Selective acknowledgements (SACKs) - RFC2018 Paralelní toky (GridFTP) Další možnosti zvýšení propustnosti TCP
T3 - QoS ve vysokorychlostních směrovačích Cíl: doporučení pro konfiguraci QoS na páteřní síti při přenosech velkých objemů dat
Modified Deficit Round Robin (MDRR) fronty obsluhovány cyklicky odebráno definované množství dat deficit se vypůjčuje z/do dalšího cyklu
Příklad 1: Cisco GSR MDRR interface GigabitEthernet0/2 ip address no negotiation auto tx-cos group1 ! cos-queue-group group1 precedence 1 queue 1 queue 0 65 queue 1 35 cos-queue-group group1 precedence 0 random-detect-label 0 precedence 1 random-detect-label 0 random-detect-label
Cisco GSR, 350 Mb/s Mb/s
Příklad 2: Juniper M10 WRR class-of-service { input { precedence-map map1 { bits 000 queue 0; bits 001 queue 1;... } fpc 1 { precedence-map map1; } interfaces { fe-1/0/0 { inet-precedence-map; } output { interfaces { fe-1/0/1 { weighted-round-robin { output-queue 0 weight 50; output-queue 1 weight 50; }
Juniper M10, 80Mb/s + 80Mb/s
T5 - Měření charakteristik sítě a jejich vlivu na aplikace one-way delay accuracy < 10 us adjustable measurement granularity IEEE Network 2/2002 p.7
CESNET2 loss rate generally ~5*10 -6 (in packets)
Videopřenosy s vyšší kvalitou Optibase MPEG MovieMaker 200 Optibase MPEG VideoPlex Express MPEG1, MPEG2, SIF, Q-SIF, Full-D1, Half-D1 Měřící prostředí: –Nist Net –Background traffic –reálná síť (CESNET ČVUT)
Videopřenosy s vyšší kvalitou Loss rate 0.01%žádné poruchy 0.02%občasná pixelizace v rychlých sekvencích 0.1%častá pixelizace a přerušování 0.2%statický obraz 0.02%0.1%
Měření one-way delay v rozsáhlých sitích požadavek na přesnost cca 1 ms (round-trip delay v síti Geant typicky 40 ms) potřeba přesného času v obou bodech měření není reálné instalovat všude externí zdroj času řešení: synchronizace času přes síť nový problém: nesymetrie sítě neumožňuje vysokou přesnost
Testy přesnosti měření OWD cíl: vyhodnotit přesnost měření OWD pro různé konfigurace časové synchronizace 1. synchronizace vůči dvěma primárním NTP serverům (lokální v server v bodě měření) 2. synchronizace vůči jednomu společnému NTP serveru 3. synchronizace vůči sekundárním (stratum 2) serverům
Testy přesnosti měření OWD (II) Účastníci: CESNET HEANET (Irsko) GARR (Itálie) FOKUS (Německo) Očekávaný výstup: vyhodnotit přesnost všech 3 konfigurací porovnat výsledky s komerčními produkty –Chariot (NetIQ) –IPANEMA
Předběžné výsledky - přesnost NTP
Interplanetary Internet NASA: - Deep Space Network (DSN) - Mars Network ( ) ping ~ 8 min. ping ~ min.
Úkoly pro další období Analýza faktorů omezujících propustnost v sítích s velkým součinem bandwidth*delay Analýza možností paralelizace TCP Automatické nastavení v jádře OS Další OS Další experimenty v rámci Géant a Internet2
Backup slides
T2 - simulace počítačových sítí sim.cesnet.cz ns2 aktuální úlohy: propustnost TCP, ABE ABE (Alternative Best-Effort) Green and blue packets Green packets: low bounded delay Blue packets: higher throughput during congestion „Blue does not hurt green“ Distribuované výpočty: jitter <10% absolutně
TCP flow control & congestion control, cont. Initialization: cwnd<=2*max.segment, ssthresh high (rwnd) cwnd slow start (start, timeout) cwnd>ssthresh => congestion avoidance (after fast rec.) slow start: received new ack => cwnd=cwnd+max.segment congestion avoidance: RTT => cwnd=cwnd+max.segment timeout: ssthresh=max(owin/2, 2*max.segment), cwnd=max.segment (implies slow start)
TCP flow control & congestion control, cont. Fast retransmit: 3rd duplicate ACK => retransmit lost segment ssthresh=max(owin/2, 2*max.segment) cwnd=ssthresh+3*max.segment Fast recovery: duplicate ACK =>cwnd=cwnd+max.segment new ACK => cwnd=ssthresh