How to configure Java Virtual Machine memory Parameters in TWS

Overview: 

General notes on the Java virtual machine and memory parameters

Trader Workstation is a Java-based application. Programs which are compiled using Java execute within a Java virtual machine (JVM) process which manages the interactions between the program, and the operating system and hardware. The Java virtual machine dynamically manages the memory usage for the program running in it. There are many technical aspects to how the memory is managed, but there are two primary spaces or blocks of memory which are of concern for running the TWS: the heap space, and the permanent generation (permgen) space.

The heap is the area in memory where all class instances and arrays are allocated. The heap is created when the JVM is started, and space is periodically reclaimed by the garbage collector (GC), the Java Virtual Machine's automatic storage management system. There is also non-heap space, known as the permanent generation space, utilized by the Java Virtual Machine to hold code which typically has a longer life in memory, or a specific usage. If either of these spaces are not sized correctly, errors can occur when the process runs out of memory in these spaces. If this occurs, the program will appear to be frozen or may crash completely, and the log files in the program directory for TWS (in C:\Jts, by default on Windows OS) will likely include one of the following errors:

  • java.lang.OutOfMemoryError: Java heap space
  • java.lang.OutOfMemoryError: PermGen space

When launching a Java program, it is possible to pass certain parameters to the Java virtual machine to adjust how much memory the process will use to run the program. The Xmx flag controls the maximum amount of memory to be used for the heap space, and the XX:MaxPermSize flag controls the maximum amount of memory to be used for the permanent generation space.

As we have released newer versions of TWS which contain more features, the memory required for the Java virtual machine to effectively run TWS has increased.

  • For users running TWS with a 32 bit version of Java, the MINIMUM memory for the heap size is 256 MB, and for the permanent generation space is 128 MB.
  • For users running TWS with a 64 bit version of Java, the MINIMUM memory for the heap size is 384 MB, and for the permanent generation space is 192 MB.


The above are the bare minimums necessary to run the program for most customers. Usage of many of the features in TWS will require higher memory allotments.

Some users may have old shortcuts or use custom scripts to launch TWS. It is crucial that these are updated accordingly to use at least the minimum memory parameters mentioned above. Some users who have extensive portfolios or execute large amount of orders may need to adjust the parameters to improve performance. The heap size can be increased if there is an OutOfMemoryError pertaining to the heap space.  Note, in our experience the memory should typically not need to be increased above 1024M in the heap and 256M in the permgen.

If at any time following adjusting the memory parameters, you receive an error that the system could not create the Java Virtual Machine, this indicates the memory increase was too aggressive, and you need to scale back the parameters.
 

**Please note the following:  Starting with Java 8, the XX:MaxPermSize parameter has been deprecated. When running TWS with Java 8, the XX:MaxPermSize parameter will be ignored at runtime if present; this parameter could be simply omitted from the start-up script.

Browser-based TWS (Java WebStart version)
IB uses a script on our website to dynamically serve a JNLP file with different memory parameters based on the URL request from the browser. When launching TWS from our website, you can add the Xmx and Xmps parameters to the URL to configure the heap size and and permanent generation space size, respectively for the Java virtual machine process which will run TWS. For example:

http://www.interactivebrokers.com/java/classes/latest.Xmx-768M.Xmps-128M...

will result in a JNLP file with the max heap size set to 768 mb and the max permanent generation space size set to 128MB.

Standalone TWS on Windows
To adjust the memory parameters used when launching TWS from the desktop or start menu shortcut:

  •   Right-click the shortcut and select Properties
  •   On the shortcut dialog window, find the Xmx and XX:MaxPermSize flags in the target field
  •   Adjust the values following the flags to the desired size

Standalone TWS on Mac
To adjust the memory parameters used when launching TWS using the Trader_Workstation_X.app icon:

  •     Hold Control and click (or right-click if you have a two-button mouse) on the application icon
  •     Choose "Show package contents" from the menu
  •     Open Contents > MacOS
  •     Open the JavaAppLauncher shell script file
  •     Find the Xmx and XX:MaxPermSize flags, and adjust the values following the flags to the desired size

Standalone TWS on UNIX (or Mac) via terminal command
When executing the command to start TWS from the terminal, adjust the values following the Xmx and XX:MaxPermSize flags to the desired size. For example, if you would normally launch using:

java -cp jts.jar:total.2013.jar -Xmx512M -XX:MaxPermSize=128M jclient.LoginFrame

but need to increase due to errors or freezing due to running out of memory, you can instead run:

java -cp jts.jar:total.2013.jar -Xmx768M -XX:MaxPermSize=256M jclient.LoginFrame

Questions et Réponses au sujet de la vulnérabilité du protocole SSL "Heartbleed Bug"

QUEL EST LE PROBLEME? QU’EST-CE QU’«HEARTBLEED»?

Une faille concernant l’implémentation open source des protocoles SSL et TLS permet à une tierce personne de lire des mots de passe et des clés de cryptage dans la mémoire du serveur.

QU’EST-CE QU’SSL?

Il s’agit d’un protocole qui contient les instructions de cryptage et décryptage de données transmises à travers des réseaux informatiques.

IB EST-IL AFFECTE PAR «HEARTBLEED»?

Nous ne nous attendons à aucune conséquence.
Le nombre très restreint de serveurs qui utilisait la version d’OpenSSL affectée a été mis à jour sitôt la faille identifiée et le patch disponible.

LE SYSTEME D’ACCES SECURISE CONSTITUE-T-IL UNE SECURITE SUPPLEMENTAIRE DANS CE GENRE DE CAS?

Le Système d’Accès Sécurisé constitue une couche de sécurité complémentaire à votre nom d’utilisateur et mot de passe. Ces derniers ne sont pas la seule défense contre un accès non autorisé.

L’utilisation d’un Système d’Accès Sécurisé garantit que vous seul pourrez accéder à votre compte.

DEVRAIS-JE CHANGER MON MOT DE PASSE?

Grâce aux mesures de sécurité additionnelles prises par IB, votre mot de passe n’est pas affecté par cette faille de sécurité.

Le changement fréquent de votre mot de passe est une pratique de sécurité conseillée, mais il n’est pas impératif de le faire maintenant.

FAQ об уязвимости SSL (т.н. баг "Heartbleed")

В ЧЕМ СУТЬ ПРОБЛЕМЫ? ЧТО ТАКОЕ "HEARTBLEED"?

Уязвимость открытой реализации SSL протокола и TLS протокола позволяет посторонним лицам взламывать пароли и ключи шифрования в памяти сервера.

ЧТО ЗНАЧИТ SSL?

Это протокол, который служит для того, чтобы давать команду компьютеру для выполнения шифрования/дешифрования данных, которыми обмениваются в сети.

МОЖЕТ ЛИ IB БЫТЬ ПОДВЕРГНУТА "HEARTBLEED"?

Никакого воздействия не ожидается.

Несколько IB серверов, которые использовали уязвимую версию OpenSSL были обновлены с внесением требуемых исправлений, как только уязвимость была выявлена и был выпущен патч.

ЗАЩИЩАЕТ ЛИ УСТРОЙСТВО БЕЗОПАСНОСТИ В ПОХОЖИХ СИТУАЦИЯХ?

Система безопасного входа гарантирует более высокий уровень защиты, чем при входе исключительно с логином и паролем. Логин и пароль не являются крайними мерами защиты против несанкционированного доступа к вашей учетной записи.

Используя систему безопасного входа, вы можете быть уверены, что никто кроме вас не имеет доступа к вашему счету.

ДОЛЖЕН ЛИ Я СМЕНИТЬ ПАРОЛЬ?

Благодаря дополнительным мерам защиты, предпринятым IB, ваш пароль не подвержен опасности.

Хотя периодическая смена пароля является полезной профилактической мерой безопасности, вам совсем не обязательно менять его именно сейчас в связи с новостями о "Heartbleed".

Vulnerabilidad en SSL ("Heartbleed Bug") - Preguntas Frecuentes

CUÁL ES EL PROBLEMA? QUÉ ES «HEARTBLEED»?

Una vulnerabilidad en la implementación del código abierto de los protocolos SSL y TLS permite a una persona no autorizada leer las contraseñas y llaves de encripción en la memoria del servidor.

QUÉ ES SSL?

Es un protocolo que sirve para instruir máquinas en cómo encriptar y decriptar intercambios da datos entre redes.

HA AFECTADO  «HEARTBLEED» a IB?

No se espera ningún impacto.

Los pocos servidores de IB que usaban la versión afectada de OpenSSL han sido actualizados y corregidos tan pronto como la vulnerabilidad fue detectada y el parche distribuido.

PROTEGE MEJOR EL SLS EN ESTA SITUACIÓN O SIMILARES?

El sistema de ingreso seguro (SLS) añade una protección extra al acceso con sus credenciales (usuario y contraseña). El usuario y la contraseña no son la única línea de defensa contra accesos no autorizados.

Usando su SLS al acceder le asegura que es usted la única persona que puede acceder a la cuenta.

DEBO CAMBIAR MI CONTRASEÑA?

Al haber tomado IB todas las medidas de seguridad, no es necesario, su contraseña no ha sido afectada por esta vulnerabilidad.

Aunque cambiar la contraseña regularmente es una buena medida de seguridad, no tiene que hacerlo ahora a causa de lo informado sobre «Heartbleed».

SSL の脆弱性 ("Heartbleed Bug") に関するFAQ

どういった問題ですか? «HEARTBLEED»とは何ですか?

オープンソースのSSL/TLSプロトコルの実装において指摘された脆弱性は、サーバーのメモリ上にあるパスワードや暗号化キーを読み取られてしまう可能性があるという極めて重大なものです。

SSLとは何ですか?
 

SSLとは、パソコンに対して、ネットワーク上で通信されるデータの暗号化、復号化を指示するプロトコルです。

IBで«HEARTBLEED»の影響はありますか?

現時点では確認されておりません。

脆弱性が確認されたOpenSSLのバージョンを使ってるIBサーバーはごく僅かで、弊社では脆弱性が指摘され、パッチがリリースされてからすぐに対応策を講じています。

セキュアログインシステム(SLS)を使用することで、こういった場合でもセキュリティ強化になりますか?

主なログイン時の主な認証(ユーザー名、パスワードの入力)に加え、セキュアログイン・システム(SLS)をご利用いただくことで更に高いセキュリティを確保することができます。

また、セキュアログイン・ディバイス(SLS)をご利用いただくことで、他の人が口座へアクセスできないよう対処することができます。

パスワード変更をした方が良いですか?

弊社にて講じた追加のセキュリティ対策により、パスワードはこの脆弱性の影響は受けておりません。

パスワードを定期的に更新することは、セキュリティ上良いことですが、«Heartbleed»対策としてすぐにパスワードを変更する必要はございません。

SSL Schwachstelle ("Heartbleed Bug") Fragen und Antworten

WAS IST DAS PROBLEM? WAS IST "HEARTBLEED"?

Die aufgezeigte Schwachstelle der Open Source Version der SSL und der TLS Protokolle erlaubt einer unautorisierten Person das Lesen von Passwörter und Kodierungsschlüssel im Speicher des Servers.

WAS IST SSL?

Dies ist ein in der Netzwerkommunikation angewendetes Protokoll, welches dem Rechner die Instruktionen gibt wie Daten Ver- und Entschlüsselt werden.

IST IB VON "HEARTBLEED" BETROFFEN?

Es werden keine Auswirkungen erwartet.

Die wenigen IB Servers, welche die betroffene Version von OpenSSL hatten, wurden sofort mit einem Sicherheitsupdate geschützt als die Schwachstelle identifiziert wurde.

IST ES SICHERER SLS IN DIESER SITUATION ZU BENUTZEN?

Das Sicherheits Login System fügt Ihren Zugangsdaten eine zusätzliche Sicherheitsebene hinzu. Der Benutzername und das Passwort sind so nicht mehr die einzige Gefahrenabwehr gegen einen unauthorisierten Zugang.

Das benutzen des Sicherheitsgeräts für die Einwahl zu Ihrem Konto garantiert, dass Sie die einzige Person sind welche Zugang zu Ihrem Konto hat.

SOLL ICH MEIN PASSWORT ÄNDERN?

Durch die zusätzlichen Sicherheitsvorkehrungen welche Interactive Brokers getroffen hat ist Ihr Password von dieser aufgezeigten Schwachstelle nicht betroffen.

Das regelmässige Ändern Ihres Passwortes ist grundsätzlich eine gute Sicherheitsmassnahme, Sie müssen diese aber aufgrund der gegenwärtigen Ereinisse nicht unbedingt anwenden. 

SSL 漏洞 ("Heartbleed 漏洞") 常見問題解答

這是一個什麼問題? “HEARTBLEED”是指什麼?

HEARTBLEED漏洞是指開源應用項目SSL(保安接層加密技術)和TLS(安全傳輸協議)協議的安全漏洞,它能讓攻擊者從服務器內存中讀取密碼和密鑰。

什麼是SSL?

SSL(保安接層加密技術)是一種安全協議,用於指令機器對網絡通信中的數據進行加密和解密。

盈透是否受到“HEARTBLEED”漏洞的影響?

盈透未受該漏洞的影響。在發現漏洞並有補丁發布之時,我們已經更新並修復了少數幾個使用受影響的OpenSSL的盈透服務器。

出現這種問題及相似問題時,SLS是否可以更好的保護賬戶?

安全登錄系統(SLS)為您在通過主要的登錄憑證(用戶名和密碼)訪問賬戶之外增添了另一層保護。用戶名和密碼並不是阻止未經授權而訪問賬戶的唯一防線。使用SLS設備可確保只有您才能訪問您的賬戶。

我是否需要更改密碼?

盈透採取了其他安全措施,因此您的密碼不會受到此漏洞的影響。
定期更換密碼是防止賬戶被他人攻擊的好方法,但是您不必在看到有關Heartbleed的報導時專門去更改密碼。
 

SSL 漏洞 ("Heartbleed 漏洞") 常见问题解答

这是一个什么问题? “HEARTBLEED”是指什么?

HEARTBLEED漏洞是指开源应用项目SSL(保安接层加密技术)和TLS(安全传输协议)协议的安全漏洞,它能让攻击者从服务器内存中读取密码和密钥。

什么是SSL?

SSL(保安接层加密技术)是一种安全协议,用于指令机器对网络通信中的数据进行加密和解密。

盈透是否受到“HEARTBLEED”漏洞的影响?

盈透未受该漏洞的影响。
在发现漏洞并有补丁发布之时,我们已经更新并修复了少数几个使用受影响的OpenSSL的盈透服务器。

出现这种问题及相似问题时,SLS是否可以更好的保护账户?

安全登录系统(SLS)为您在通过主要的登录凭证(用户名和密码)访问账户之外增添了另一层保护。
用户名和密码并不是阻止未经授权而访问账户的唯一防线。
使用SLS设备可确保只有您才能访问您的账户。

我是否需要更改密码?

盈透采取了其他安全措施,因此您的密码不会受到此漏洞的影响。
定期更换密码是防止账户被他人攻击的好方法,但是您不必在看到有关Heartbleed的报道时专门去更改密码。
 

SSL vulnerability ("Heartbleed Bug") FAQ

WHAT IS THE ISSUE? WHAT IS «HEARTBLEED»?

A vulnerability with the open source implementation of the SSL and TLS protocols allows an unauthorized person to read the passwords and encryption keys in the memory of the server.

WHAT IS SSL?

It is a protocol that serves to instruct machines how to encrypt and decrypt data exchanged over networks.

IS IB AFFECTED BY «HEARTBLEED»?

No impact is expected.

The few IB servers that used the affected version of OpenSSL were updated with the fix as soon as the vulnerability was identified and the patch released.

DOES SLS PROTECT BETTER IN THIS AND SIMILAR SITUATIONS?

The Secure Login System adds a layer of protection to the login with your primary credentials (username and password). The username and password are not the only line of defense against unauthorized access.

Using your SLS device to login ensures that you are the sole person who can access your account.

SHOULD I CHANGE MY PASSWORD?

Due to additional security measures that IB takes, your password is not affected by this vulnerability.

While changing your password on a regular basis is a good security practice, you do not have to do it now on account on the reports about «Heartbleed».

Cómo obtener su tarjeta de códigos de seguridad online

Antecedentes:

La tarjeta de códigos de seguridad online sirve como un dispositivo temporal, disponible para usuarios que todavía no tienen su dispositivo permanente y se les ha proporcionado un código temporal para acceder a su cuenta. Una vez que disponga de un código temporal , se le recomienda encarecidamente acceder al menú de gestión de cuenta y elegir la tarjeta de códigos de seguridad online, con la que obtendrá los beneficios siguientes:

- Mejora la protección en Internet contra hackers al asignar codigos aleatorios al acceder a su cuenta;

- Proporciona más tiempo (21 días frente a los 2 del código temporal) para asegurar la recepción y reactivar el dispositivo permanente, después de lo cual, puede ser descartada;

- Permite reembolsos y cambios de información sin las restricciones que tiene un usuario de un código temporal;

- Puede obtenerse e imprimirse directamente desde el menú de gestión de cuenta y permite la reactivación del dispositivo permanente sin tener que contactar el servicio de atención al cliente.

 

Los pasos para obtener la tarjeta desde el menú de gestión de cuenta son:

(Si la versión de su menú de la Gestión de Cuenta tiene los menús en la parte superior):

1. Seleccione el menú Gestionar cuenta > Seguridad luego Sistema de ingreso seguro (en la versión Inglesa de la Gestión de cuenta: Manage Account> Security y luego Secure Login System)

 

2. Seleccione: Sí, quiero participar en el Sistema de ingreso seguro (en Inglés:Yes, I want to participate in the Secure Login System) y después, Continuar (Continue)

 

3. Le aparecerá una imagen de la tarjeta de códigos de seguridad online. Haga click Imprimir (Print)  (o haga click con el botón derecho para salvar la imagen en el Escritorio).

 

4. Haga click en Confirmar (Confirm), le aparecerá en la pantalla dos números.

 

5. Busque en la tarjeta los números proporcionados en la pantalla, y escríba en la casilla correspondiente los códigos de tres dígitos alfa numérico que le corresponden (a la derecha). Repíta el proceso para el segundo número sin dejar espacios entre medias.

 

6. Haga click en Enviar (Submit)

 

7. Una vez que ha activado la tarjeta, se le proporcionará su fecha de expiración así como un menú con opciones adicionales.

 

Pulse KB1042 para ver un vídeo con instrucciones de cómo acceder con la tarjeta de códigos de seguridad.

Pulse KB1942 para instrucciones de cómo reactivar su dispositivo de seguridad permanente.

Pulse KB1943 para instrucciones de cómo solicitar un reemplazo para su dispositivo de seguridad

 

(Si la versión de su menú de gestión de cuenta tiene los menús en la parte izquierda de la pantalla)

1. Seleccione User management y luego Secure Login System

2. Seleccione: Yes, I want to participate in the Secure Login System (en traducción española: Sí, quiero participar en el Sistema de ingreso seguro)

3. Le aparecerá una imagen de la tarjeta de códigos de seguridad online. Haga click en Print  (o haga click con el botón derecho para salvar la imagen en el Escritorio).

4. Haga click en Confirm, le aparecerá en la pantalla dos números.

5. Busque en la tarjeta los números proporcionados en la pantalla, y escríba en la casilla correspondiente los códigos de tres dígitos alfa numérico que le corresponden (a la derecha). Repíta el proceso para el segundo número sin dejar espacios entre medias.

6. Haga click Submit

7. Una vez que ha activado la tarjeta, se le proporcionará su fecha de expiración así como un menú con opciones adicionales.

Syndicate content