ica bandwidth

41
Understanding ICA Bandwidth Usage in your Environment Simon Frost Product Architect Citrix Systems

Upload: musmanayub

Post on 02-Jun-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 1/41

Understanding ICA BandwidthUsage in your Environment

Simon Frost

Product Architect

Citrix Systems

Page 2: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 2/41

2© 2007 Citrix Systems, Inc. — All rights reserved

Agenda

• What is ICA?

• How Much Bandwidth do you need

• Monitoring• Tuning

Page 3: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 3/41

3© 2007 Citrix Systems, Inc. — All rights reserved

What is ICA?

• Independent Computing Architecture

• A Protocol that supports the remoting of Application Screens from a Server to a Client

• Basic Protocol very simple

• Contains Virtual Channels for specific services• Both essential: e.g. Graphics (thinwire)• & optional: e.g. Twain Scanner redirection

• Modules negotiated at Connection handshake time

Page 4: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 4/41

4© 2007 Citrix Systems, Inc. — All rights reserved

The ICA StackVirtual Drivers

WinstationDriver

Protocol Driver

Transport Driver

Page 5: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 5/41

5© 2007 Citrix Systems, Inc. — All rights reserved

The WinStation DriverWinstation Driver

PRI0

PRI1

PRI2

PRI3

ICA Protocol

Compression

DataSilos

Bandwidth Management

Not All Virtual ChannelsUse General Compression

Page 6: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 6/41

Bandwidth Requirements

Page 7: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 7/41

7© 2007 Citrix Systems, Inc. — All rights reserved

How much Bandwidth will ICA use?Gigabit

GSM

wpm . compr . bw

appl . Θ . gdi(txt -9,bmp) . VC bulk

…It Depends…

Page 8: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 8/41

8© 2007 Citrix Systems, Inc. — All rights reserved

Bandwidth Factors

• Application Mix• Graphics Done by applications• Bitmaps / Lines / Text• Redundant Redraws• Other VC traffic required

• Client Drive / Clipboard / Printing /…

• User behaviour

• Compression

• Encryption

Page 9: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 9/41

9© 2007 Citrix Systems, Inc. — All rights reserved

Use of the network

• If the network is fat enough

• And there‘s no competing traffic

• And no restrictions• ICA will use more

bandwidth

vs.

Page 10: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 10/41

10© 2007 Citrix Systems, Inc. — All rights reserved

Bandwidth Calculation

• Well, throughput actually…

• Calculated opportunistically• Whenever sufficient data volume is available• ICA does not introduce extra traffic for bandwidth measurement

• Calculations are used to schedule datatransmission

Page 11: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 11/41

Monitoring

Page 12: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 12/41

12© 2007 Citrix Systems, Inc. — All rights reserved

Monitoring Tools

• Network Level tracing• NetMon / Ethereal / WireShark etc• Spot the Priority headers in ICA packets…

• ICA counters• SMC data

Page 13: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 13/41

13© 2007 Citrix Systems, Inc. — All rights reserved

Perfmon Counters

Page 14: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 14/41

14© 2007 Citrix Systems, Inc. — All rights reserved

Session Management & Control (SMC)

• Exposes instrumentation from within theWinStation driver• For the whole Session

• For each Virtual Channel• Can also be used to apply limits to bandwidth

usage

• Used to implement the limits in policy• Console Sample part of Presentation Server SDK

• You‘ll probably have to build it tho…

Page 15: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 15/41

15© 2007 Citrix Systems, Inc. — All rights reserved

SMC API Console Sample

Page 16: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 16/41

16© 2007 Citrix Systems, Inc. — All rights reserved

SMC API Console Sample

Page 17: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 17/41

Tuning

Page 18: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 18/41

18© 2007 Citrix Systems, Inc. — All rights reserved

Graphics• Thinwire uses many packing & caching tricks to

limit bandwidth used

• Redundant updates discarded

• Any image that appears ‗photographic‘ is JPEGencoded

• Level of lossy compression controllable by policy

• Graphics channel auto tunes by bandwidth• < 640 kbps – heavyweight• 640 – 2.4 Mbps – medium• > 2.4 Mbps – off

Page 19: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 19/41

19© 2007 Citrix Systems, Inc. — All rights reserved

CPS 4.5 Graphics• Improved handling of apps that do large numbers

of small graphics operations• ‗Progressive Display‘ mode for complex graphics

applications• CAD• DTP etc

• Show a degraded image whilst moving

• Snap to full fidelity when still

• Off by default as requires greater server resource• Configure by Policy

Page 20: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 20/41

20© 2007 Citrix Systems, Inc. — All rights reserved

BMP – 344K

Lossy Compression

JPG 100% - 60KLow Comp. 90% - 26K

Medium Comp. 60% - 13K

High Comp. 30% - 9K

Very High Comp. 13% - 6K

Ultra High Comp. 7% - 5K

Page 21: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 21/41

21© 2007 Citrix Systems, Inc. — All rights reserved

SpeedScreen Policy

Lossy Compression also applicable to TWAIN

Page 22: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 22/41

22© 2007 Citrix Systems, Inc. — All rights reserved

Multimedia

• Full motion video is inefficient to render via GDI• Original Compressed form expanded & displayed• ICA Encoded for Transmission• Largely overwritten

• Video Codecs take advantage of frame ‗lossyness‘ • SpeedScreen Multimedia Acceleration

• Transmits encoded video form through Virtual Channel• Displayed using client video engine

• Windows only• Tuning for buffering available• See Advanced Concepts Guide

Page 23: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 23/41

23© 2007 Citrix Systems, Inc. — All rights reserved

Project Apollo

• Support for 3D Graphics forms• WPF, Vista Aero, DirectX etc• Adaptable technology that takes advantage of GPUs as available• Impressive results already

• Work from here on improving performance & bandwidthrequirements

• Bitmap Remoting Tech Preview out now• Download from MyCitrix

• Also work on Flash, Audio Codecs & othermultimedia aspects

Page 24: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 24/41

24© 2007 Citrix Systems, Inc. — All rights reserved

Printing

• Choice of Print Drivers can make a huge differencein bandwidth requirements

• Universal Printer Driver (UPD 3) is designed toreduce bandwidth used• EMF form is highly compressible• Custom channel compression• In User Mode allowing bigger compression buffers

• Delaware switches to XPS• Even more compressible & flexible

Page 25: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 25/41

25© 2007 Citrix Systems, Inc. — All rights reserved

Client Drives

• Async Writes• Performance Tweak rather than Bandwidth effect

• Server told that writes completed immediately

• Any failures raised later

• Use with care• Only where operation can be retried

Page 26: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 26/41

26© 2007 Citrix Systems, Inc. — All rights reserved

Session Limits

• Set limits on the amount of bandwidth a sessioncan use• Or a specific Virtual Channel

• eg Printing!

• All functionality will be maintained• Some delay, especially in bulk transfer VC, can result

• Limits via

• Policy – See ‗Session Limits‘ tab of Bandwidth Policies • SMC API

Page 27: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 27/41

27© 2007 Citrix Systems, Inc. — All rights reserved

Bandwidth-Related Policies

• Asstd bandwidth-related policies

• Policy filters• Don‘t forget the IP filter

Page 28: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 28/41

28© 2007 Citrix Systems, Inc. — All rights reserved

SMC - IMetaFrameVirtualChannel2• Properties

• Get Total outbound data

ULONG BytesSent

• Get Total inbound dataULONG BytesReceived

• Get / Set Bandwidth cap in kilo-bits/second

ULONG BandwidthCapVirtual channel priority

• Get / Set VC Priority LevelPriority(MetaFrameVCPriorityLevel)

Page 29: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 29/41

29© 2007 Citrix Systems, Inc. — All rights reserved

Compression

• Compression is on by default

• Check for ‗Compression‘ setting in config • Note ‗1‘, ‗On‘, ‗Yes‘ all mean enabled!

• Consider ‗Maximum Compression‘ setting • Uses more memory for compression history• Enable via MaximumCompression setting

• External Compression engines currently require allbuilt in compression & encryption to be disabled

Page 30: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 30/41

30© 2007 Citrix Systems, Inc. — All rights reserved

Eliminate unwanted virtual channels

• Speeds up login time

• Tune via ICA config or by Policies

• Config entries are of the form• CDMAllowed Client Drive mapping VC• CPMAllowed Client Printer Mapping VC

• Channels are on by default, set to ―Off‖ to disable

Page 31: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 31/41

31© 2007 Citrix Systems, Inc. — All rights reserved

Where to apply ‗client side‘ tuning?

• ICA tuning can be applied in:

• PN client AppSrv.ini

• ICA Version 10 (Win32)• Now in registry• HKLM\Software\ICA Client\Engine\Configuration

• WI template.ica file• Prior to 4.0: Create new website per variant• 4.0: use bandwidth selection template files

Page 32: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 32/41

32© 2007 Citrix Systems, Inc. — All rights reserved

WI Bandwidth Selection

Template Files in WI site confdirectory:

Bandwidth_high.ica

Bandwidth_medium_high.ica

Bandwidth_medium.ica

Bandwidth_low.ica

Page 33: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 33/41

33© 2007 Citrix Systems, Inc. — All rights reserved

Small Packets

• Server -> Client• Intermittent Keepalives etc• Well compressed graphics

• Client -> Server• Keyboard & Mouse• Enable ‗Queue Mouse Movements & Keystrokes‘ • -or-• Tweak ‗MouseTimer‘ & ‗KeyboardTimer‘ params

• Defaults to 0• Queue Input or Bandwidth Low

MouseTimer 100msKeyboardTimer 50ms

Page 34: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 34/41

Network Tuning

Page 35: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 35/41

35© 2007 Citrix Systems, Inc. — All rights reserved

TCP window size

• CPS install changes TCP windows size to 63KB• Maximum throughput for bulk transfer channels

• For unreliable networks, this may be too high

• Aim for ‗Bandwidth Delay Product‘ • KB per sec * mSec delay

• Check TCP Window Size in Registry• HKLM\SYSTEM\CCS\Services\Tcpip\Parameters\TcpWindowSize

Page 36: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 36/41

36© 2007 Citrix Systems, Inc. — All rights reserved

Make best use of the Network

Client

Server

OutBufs

Page 37: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 37/41

37© 2007 Citrix Systems, Inc. — All rights reserved

What values for Outbufs?• Outbuf Count * Outbuf Len ≈ TCP Window Size

• Client -> Server (OutBufCountClient2) and

• Server -> Client (OutBufCountHost2) can bedifferent

• e.g. ADSL, Satellite, wWAN etc

• The size of the Outbuf (OutBufLength2) can becritical for performance & reliability on somenetworks• wWAN (e.g. GPRS)

• This is a Maximum size for outbufs so net effectwill depend on activity• Tune to near MTU (min 270, max 1460)

Page 38: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 38/41

39© 2007 Citrix Systems, Inc. — All rights reserved

•Reduce Perceived Latency with ‗Local Echo‘

• Turn on SpeedScreen Latency Reduction

• Values here: 0 – disabled, 1 – Enabled, 2 – auto.

• May need to tune for connection using ‗SpeedScreen LatencyReduction Manager‘

• High Latency Threshold (default 500ms)

• Some apps may need configuration

High Latency Connections

ZLKeyboardMode 1

ZLMouseMode 1

Page 39: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 39/41

40© 2007 Citrix Systems, Inc. — All rights reserved

ICA Latency Counter

• Another opportunistic counter

• Can be inaccurate

• More accurate in CPS 4.5 & 10 client but still aguideline

• Can be made much more accurate by configuring ActiveLatencyPeriodInSeconds in registry(CTX103610)

• At the moment, Active Latency calculations areblocked if session reliability is in use

Page 40: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 40/41

41© 2007 Citrix Systems, Inc. — All rights reserved

Conclusion

• ICA attempts to give the best experience given• The detected network connection• The settings applied

• It doesn‘t attempt to minimise bandwidth

• …but it can happily operate on restricted bandwidth

• …by virtue of detected network condictions

• …or by settings applied

• How much bandwidth…

…DEPENDS!

Page 41: Ica Bandwidth

8/10/2019 Ica Bandwidth

http://slidepdf.com/reader/full/ica-bandwidth 41/41