SlideShare a Scribd company logo
1 of 25
Download to read offline
© 2014 IBM Corporation
IBM Software Group WebSphere Software
What's new in MQ V8
Morag Hughson
hughson@uk.ibm.com
WebSphere MQ
IBM Software Group | WebSphere software
IBM MQ V8 delivering best in class enterprise
messaging
Platforms &
Standards
Security Scalability System z exploitation
64-bit for all platforms
Userid authentication via
OS & LDAP
Multiplexed client
performance
64-bit buffer pools in MQ for z/OS
means less paging, more
performance
Support for JMS 2.0
User-based
authorisation for Unix
Queue manager vertical
scaling
Performance and capacity
Improved support for
.Net and WCF
AMS for IBM i & z/OS
Publish/Subscribe
improvements
Performance enhancements for
IBM Information Replicator (QRep)
Changes to runmqsc
DNS Hostnames in
CHLAUTH records
Routed publish/subscribe
Exploit zEDC compression
accelerator
SHA-2 for z, i & NSS
Multiple certificates per
queue manager
Multiple Cluster Transmit
Queue on all platforms
SMF and shared queue
enhancements
WebSphere MQ
IBM Software Group | WebSphere software
MQ V8 Dates
Announce: 22 April 2014
Availability:
23 May 2014 (eGA Distributed)
13 June 2014 (z/OS and pGA Distributed)
End of Service for old platforms and versions
MQ V7.0.0 and V7.0.1 for multiplatforms – EOM, EOS effective September 2015
V7.0 will have had more than 7 years of support
MQ V7.0.1 for z/OS – EOM, EOS effective September 2015
V7.0 .0 already out of service
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Dates
• Nothing more to say here
WebSphere MQ
IBM Software Group | WebSphere software
MQ platform consistency
64-bit server support for all queue manager platforms
Completion of platform coverage by adding Windows 64-bit engine
Applications can still be 32-bit
Requires Windows 7 or later
Client only package for 32-bit platforms
Queue Manager requires 64-bit
Integration of AMS and MFT capabilities into z/OS and IBM i platforms
Previously separately installable products
Client Attach Feature no longer needed on z/OS
Single price includes support for clients
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
MQ platform consistency
• This release has all the Distributed queue managers fully supporting 64-bit operations.
The final remaining platform had been Windows, but now the queue manager runs as
64-bit processes. Existing 32-bit applications continue to work of course, but this
should bring additional capacity and scalability to the queue managers on that OS. The
lowest level of Windows now supported is Windows 7; older versions are not
supported. A client-only package for 32-bit versions of Windows is provided, but the
qmgr requires the 64-bit OS.
• Another big feature of V7.5 was the closer integration of AMS and File Transfer (MFT).
As we will see later, this pattern has been followed on z/OS and IBM i. On z/OS the
features are still separately licensed, but are better integrated than previously.
• On z/OS, the CAF has been removed both as an installable feature and as a licensing
option. All V8 queue managers are now capable of having any number of MQ clients
directly connected. For customers who previously used the lack of a CAF to block client
connections, we would strongly recommend they look at the other security-related
controls such as CHLAUTH and SSL/TLS, or MAXINST values, to continue to prohibit
clients. If you extend the number of directly-attached clients in your environment,
make sure you first evaluate things such as CPU costs, performance, capacity etc.
WebSphere MQ
IBM Software Group | WebSphere software
JMS 2.0
Long-awaited update from JMS 1.1 standard
JMS 2.0 – JSR 343 Java Message Service (JMS 2.0)
Final release on 21 May 2013.
https://java.net/projects/jms-spec/pages/JMS20FinalRelease
New Messaging Features
Delivery Delay
Asynchronous Send
Subscriptions can be shared across a messaging provider
API Changes
Use of java.lang.AutoCloseable
Simplified API [combined connection/session]
Session doesn't need parameters (for Java EE)
Java 7 prereq
Java EE 7 prereq for use of the Resource Adapter in Application Servers
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
JMS 2.0
• The JMS 2.0 specification now requires JMS providers to implement both P2P and Pub-Sub.
• The following new messaging features have been added in JMS 2.0:
– Delivery delay: a message producer can now specify that a message must not be delivered until after a specified time interval.
– New send methods have been added to allow an application to send messages asynchronously.
– JMS providers must now set the JMSXDeliveryCount message property.
• The following change has been made to aid scalability:
– Applications are now permitted to create multiple consumers on the same durable or non-durable topic subscription. In previous versions of JMS only
a single consumer was permitted.
• Several changes have been made to the JMS API to make it simpler and easier to use:
– Connection, Session and other objects with a close method now implement the java.jang.AutoCloseable interface to allow them to be used in a Java
SE 7 try-with-resources statement.
– A new "simplified API" has been added which offers a simpler alternative to the standard API, especially in Java EE applications.
– New methods have been added to create a session without the need to supply redundant arguments.
– Although setting client ID remains mandatory when creating an unshared durable subscription, it is optional when creating a shared durable
subscription.
– A new method getBody has been added to allow an application to extract the body directly from a Message without the need to cast it first to an
appropriate subtype.
• New methods have been added to Session which return a MessageConsumer on a durable topic subscription. Applications could
previously only obtain a domain-specific TopicSubscriber, even though its use was discouraged.
• The specification has been clarified in various places.
• JMS 2.0 implementations require Java 7 for the runtime. They also require Java EE 7 for use of the Resource Adapter in Application
Servers. Not all App Servers currently support Java EE 7. However, as with all client implementations, older versions of the RA still
work when communicating to an MQ V8 queue manager.
WebSphere MQ
IBM Software Group | WebSphere software
.Net enhancements
MQ .Net classes can now use SSL without needing the C client installed
A secure fully-managed .Net implementation
Uses Windows native certificate stores
For MQ .NET classes (aka Base .NET Classes) SSL properties can be set at
MQEnvironment.cs
Hashtable properties (input parameter to MQQueueManager constructor)
For XMS .NET, SSL properties can be set as ConnectionFactory properties
WCF interface extended to non-SOAP, non-JMS messages
Making it easier for apps using WCF to communicate with any other MQ application
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
.Net enhancements: SSL + WCF
• MQ .NET in unmanaged mode has supported the use of SSL since MQ
v6.0.1. It was based on the C Client (and GSKit).
• In V8 MQ .NET Managed mode now supports SSL based on Microsoft
SSLStreams/Security kit.
• There are some limitations when using SSL with Managed .NET.
• CipherSpec setting can be made only at Windows Group policy
(gpedit.msc).
– CipherSpec set on client channel is used only to determine SSLProtocol.
– Make sure you set same cipherspec on Windows group policy and
client channel to make sure correct protocol version is flowed.
• KeyRepository uses Windows Key Store only.
– Set value as *SYSTEM for accessing certificates under Computer
Account
– Set value as *USER for accessing certificates under User account
• FIPS can be enabled only from Windows group policy.
• KEYRESET is not supported by Microsoft SSLStreams
– This limitation is overridden by using KEYRESETCOUNT and Client Auto
Reconnect feature of MQ.
– Application can set KEYRESETCOUNT during connection, once the
number of bytes sent/received reaches the count, connection will be
forcibly broken. If Client Auto Reconnect facility is enabled, connection
will be automatically reconnected.
• No managed way to support Cryptographic hardware
• Product samples have been updated to demonstrate SSL Connections.
These can be found in
WebSphere MQtoolsdotnetsamplescsbaseSimple
• Additional model for sending MQ messages from WCF applications
– Both SOAP/JMS and MQMessaging can be used
• SOAP/JMS
– Supported since MQ v7.0.1
– Based on XMS .NET and makes JMS-like calls for MQI
– Uses JMS nomenclature for URI(jms:) and Bindings
– Now also supports “wmq:” style of URI
• Uses MA93 supportpac specification for URI format/syntax
– Messages can be delivered only to SOAP enabled Client/Service
• MQMessaging
– New in MQ V8.0
– Transmits MQ Messages over the WCF Channel without any SOAP
headers
– Use “wmq:” style of URI
• Uses MA93 supportpac specification for URI format/syntax
– Messages can be delivered to SOAP or NON-SOAP MQ applications
WebSphere MQ
IBM Software Group | WebSphere software
Changes to runmqsc
Can now be run by any user (not just mqm group)
Can take a userid/password for authentication: new "-u" flag
Can now connect as a client to remote systems: new "-c" flag
Client channel definitions located by MQSERVER -> MQCHLLIB -> MQCHLTAB
Can act as standalone program to create local CCDT: new "-n" flag
Does not connect to queue manager; commands subset to update local channel definition
file
Ease of use
Customisable prompt
using environment
variable
New "exit" and "quit"
synonyms for "end"
$ ls –l runmqsc
-r-xr-xr-x 1 mqm mqm 25930 06 Mar 04:46 runmqsc
$ export MQPROMPT="MQ +MQ_INSTALLATION_NAME+> "
$ runmqsc –u metaylor QM1
5724-H72 (C) Copyright IBM Corp. 1994, 2014.
Enter password:
******
Starting MQSC for queue manager QM1.
MQ Installation5> DIS QMGR
…
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Changes to runmqsc
• This release introduces a number of changes to the runmqsc program
• Firstly, it is now exectuable by any user, not just members of the mqm group. Security controls still apply of
course, but the security is checked on each individual command. This makes it easier to have MQ administrators
who have been granted full access to objects, but who are not in the mqm group.
• Another reason for making runmqsc world-executable was to make it usable on machines which do not have
queue managers installed. It is now installed even on client-only systems, and it can be run either as a client
program connecting directly to a remote queue manager, or as a completely standalone program to permit
local creation of the Client Channel Definition Table. So you can create and modify a CCDT with no queue
manager access at all.
• The program is one of several that have been updated to accept a userid for authentication. If the –u flag is
given, then a password is requested. Note that the password is read from stdin so that it can be redirected from
a file if necessary. If you also use scripts piped into runmqsc, then you can group commands to avoid having to
put the password in the same script as the MQSC commands.
– Unix: (cat password.stash ; cat script.mqsc) | runmqsc –u userid QM1
– Windows: (type password.stash & type script.mqsc) | runmqsc –u userid QM1
• There are also a couple of usability enhancements. Firstly, there are some synomyms added to complete an
MQSC session – END, QUIT and EXIT can all be used so you don't have to try them all. Different scripting
environments for different products typically use one of these commands, and it's annoying to have to
remember which goes with which.
• Secondly, you can now make it easier to see that you are in an MQSC command environment and some details
of the current environment by setting the MQPROMPT environment variable. Replaceable inserts are
recognised such as date and time, and installation-specific details. These are the same variable subsitutions as
available for SERVICE objects.
WebSphere MQ
IBM Software Group | WebSphere software
SHA-2 Support
Stronger algorithms are now available and recommended
In many cases available pre-V8
See technote http://www.ibm.com/support/docview.wss?uid=swg21639606
Changes also rolled into V8
CipherSpecs include:-
ECDHE_RSA_AES_128_CBC_SHA256
ECDHE_RSA_AES_256_CBC_SHA384
TLS_RSA_WITH_AES_128_CBC_SHA256
TLS_RSA_WITH_AES_256_CBC_SHA256
TLS_RSA_WITH_NULL_SHA256
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
SHA-2 Support
• SHA-2 stands for Secure Hash Algorithm 2. This is the generic name for a family of hash
functions SHA-224, SHA-256, SHA-384, and SHA-512; the numbers refer to the bit-size
of the generated hash value.
• The hashing algorithms historically supported by WebSphere MQ channel cipherSpecs
(SSLCIPH) were MD5 and SHA-1. These are no longer regarded as adequately secure
due to successful attacks on them which have been widely publicized, and because
NIST (the American National Institute of Standards and Technology) has mandated
(http://csrc.nist.gov/groups/ST/hash/policy.html) that both MD5 and SHA-1 no longer
be used. So we have had considerable customer pressure for provision of “SHA-2
support.”
• This support is in MQ V8, but also in earlier releases by applying appropriate fix pacs
for the platform or component on MQ where you are interested in using it. A technote
at http://www.ibm.com/support/docview.wss?uid=swg21639606 details exactly which
fix pacs or APARs are required in each case.
WebSphere MQ
IBM Software Group | WebSphere software
MQ Security – Authentication (1)
Verify userid and password
Typically supplied in MQI CSP structure or
from channel security exit
Or JMS createConnection(user,pass)
method
New client exit and tool provided to help
unchanged applications insert passwords
Can verify against operating system
Including PassPhrase for z/OS
Can verify against LDAP repository on
Distributed platforms
Enabling centralised identity control
MQCNO cno = {MQCNO_DEFAULT};
cno.Version = MQCNO_VERSION_5;
cno.SecurityParmsPtr = &csp;
MQCONNX(QMName,
&cno,
&hConn,
&CompCode,
&Reason);
MQCSP csp = {MQCSP_DEFAULT};
csp.AuthenticationType = MQCSP_AUTH_USER_ID_AND_PWD;
csp.CSPUserIdPtr = "hughson";
csp.CSPUserIdLength = 7; /* Max: MQ_CLIENT_USER_ID_LENGTH */
csp.CSPPasswordPtr = "passw0rd";
csp.CSPPasswordLength = 8; /* Max: MQ_CSP_PASSWORD_LENGTH */
WebSphere MQ
IBM Software Group | WebSphere software
Object Oriented MQ classes changes
cf = getCF();
System.out.println("Creating the Connection with UID and Password");
Connection conn = cf.createConnection("hughson", "passw0rd");
JMS/XMS classes changes
MQEnvironment.properties = new Hashtable();
MQEnvironment.userID = "hughson";
MQEnvironment.password ="passw0rd";
System.out.println("Connecting to queue manager");
MQQueueManager qMgr = new MQQueueManager(QMName);
WebSphere MQ
IBM Software Group | WebSphere software
MQ Security – Authentication (2)
Independent configuration for local bindings and clients
Ignored, Optional, Required, Required for admin id
Queue Manager checks password against OS or LDAP
ALTER QMGR CONNAUTH(‘CHECK.PWD’)
DEFINE AUTHINFO(‘CHECK.PWD’)
AUTHTYPE(IDPWOS|IDPWLDAP)
CHCKLOCL(NONE|OPTIONAL|REQUIRED|REQDADM)
CHCKCLNT(NONE|OPTIONAL|REQUIRED|REQDADM)
ADOPTCTX(YES)
+ various LDAP attributes
REFRESH SECURITY TYPE(CONNAUTH)
Password protection is provided when SSL/TLS not in use
Both ends of client channel are V8 or above
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
MQ Security - Authentication
• Applications can now be authenticated with a userid/password. This can be provided explicitly by the
application as parameters in the MQCONNX verb or equivalent. This builds on features originally implemented
in the MQI for MQ v6, but which were never exploited until now.
• Also, to support client applications, a security exit is provided that can add the userid/password to a connection
request if it is not supplied by the app. The exit reads the qmgr name from an ini file; the file contains the userid
and a protected form of the password – ie not plaintext. The protection of the password is done by a tool that is
also provided.
• When V8 clients connect to V8 qmgrs, the userid/password information is protected against casual wire-
sniffing, even when SSL/TLS is not used. This protection is not as strong as a full TLS-encrypted session, which is
preferred, but is better than sending data in the clear. Obviously both the client and the qmgr must be at V8 for
this protection to work; older clients can still send passwords but they are not protected.
• Authentication is performed against the local OS (all platforms) or against an LDAP directory (Distributed only).
Some operating systems may integrate LDAP services into their local user registry, in the same way as NIS, but
when this is done transparently MQ does not know about it explicitly and can use the OS authentication
method.
• Using a central LDAP server means that passwords can be set in a single place. For example, we have used IBM's
LDAP services (BluePages) to authenticate userids. When using LDAP, there is lots of flexibility in what the
"userid" is – in BluePages it is generally the email address – but there must be a field in the schema to return a
short name that can fit into the 12 character MQMD.UserIdentifier field. This short name is also used for
authorisation and must be locally defined to the OS so that permissions can be calculated.
• There are various configuration rules for different modes of connection, to specify whether a password is
required, optional or ignored.
WebSphere MQ
IBM Software Group | WebSphere software
MQ Security - Authorisation
Make Unix OAM userid-based
Optional configuration
Consistent with other platforms
Will no longer add primary group
to authorities during setmqaut
Chosen at queue manager creation
or by editing qm.ini
Default is still group-based authorisations
Delete Authority record by SID
Solve problem of orphaned authorities when Windows id is deleted
$ crtmqm –oa user QMU
----------------
Service:
Name=AuthorizationService
EntryPoints=14
SecurityPolicy=User
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
MQ Security - Authorisation
• One further point of consistency in this release is making the Unix authorisation model the same
as for Windows – permissions can now be set for individual users, and not just groups. So running
a command such as "setmqaut –t qmgr –p usr1 +connect" works for just that user, and not the
primary group.
• This is configured by either creating the queue manager with the "-oa user" option or by editing
the ini file as shown for existing queue managers – restarting the queue manager sets it to work in
the new mode. The change is deliberately not dynamic, and requires the restart, because it is so
fundamental to how the queue manager permissions operate, and is not something we would
expect to be done frequently.
• All existing permissions are left unchanged when you switch to user-mode authorisations, so the
group permissions that have been set remain, but new permissions can be set for the users.
• The user-based model is not the default for new queue managers; to keep compatibility with
older systems, the default is still the group-based model.
• One final security feature is specifically for Windows, to deal with situations where users have
been deleted from the system but their MQ permissions have not been deleted from the OAM.
You can now use the setmqaut command to delete permissions based on SID instead of name,
and this will remove the orphaned entries.
WebSphere MQ
IBM Software Group | WebSphere software
MQ Security - CHLAUTH
Use DNS hostnames in CHLAUTH records
Not allowed in TYPE(BLOCKADDR)
Used in TYPE(ADDRESSMAP) instead of an IP address
Also as an address restrictor on any other mapping type, instead of an IP address, e.g.
SET CHLAUTH(‘*’) TYPE(SSLPEERMAP)
SSLPEER(‘CN=“Morag Hughson”’) ADDRESS(‘*.ibm.com’)
MCAUSER(HUGHSON)
Must ensure DNS can reverse look-up IP address -> Hostname
Also we provide a way to disable reverse lookup
ALTER QMGR REVDNS(ENABLED|DISABLED)
CHLAUTH also hooks into other security features in V8
Granular connection authentication control with CHCKCLNT on CHLAUTH rules
Better Certificate DN filtering with SSLCERTI on CHLAUTH rules
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
MQ Security - CHLAUTH
• The CHLAUTH rules that were introduced in V7.1 have been extended to meet the
most frequently-requested enhancement – the ability to use hostnames in the rules as
well as IP addresses. Names can be used all the same rules, and in the same way, as IP
addresses with the one exception of the listener blocking which is still only address-
based.
• The hostnames can include wildcard patterns such as "*.example.com". The matching
is simple string-based; the "." characters are not treated as special separators.
WebSphere MQ
IBM Software Group | WebSphere software
MQ Security - Certificates
Configurable default certificate label for qmgrs and clients
Instead of "ibmwebspheremq<qmgr>" or "ibmwebspheremq<userid>“
ALTER QMGR CERTLABL('My certificate name')
Channel-level certificates
To support different business partners using different CAs.
For queue managers and C clients
Not Java yet, because Java 7 JSSE does not fully support SNI
Both ends must be V8
Per Channel Certificate
ALTER CHANNEL … CERTLABL('This channel certificate')
Certificate Matching
SET CHLAUTH('*')
TYPE(SSLPEERMAP)
SSLPEER('CN=Morag Hughson')
SSLCERTI('CN=IBM CA')
MCAUSER('hughson')
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
MQ Security - Certificates
• The label used to find the queue manager or client's certificate in the SSL keystore is
now configurable. This gives more flexibility in naming, and can even permit sharing of
the keystore between multiple queue managers if you wish. On z/OS, there is in
addition a configuration attribute for the QSG-related certificate (traditionally
"ibmwebspheremq<qsgname>".
• A further extension for certificate use is designed for scenarios where you may wish to
use different certificates when communicating with different partners. A common
reason for this is when a queue manager is used for both "internal-facing" channels
and for connections to a partner, who may have different certificate requirements,
such as using a different CA. You can now configure a different certificate label to be
used on individual channels. The implementation of this requires both ends of the
channel to be at MQ V8, as there has to be cooperation between the sending side and
the receiving side of the channel. And it is not available in all environments; in
particular, Java clients cannot currently participate as the standard JSSE provider does
not yet support the Server Name Indication (SNI) flows that go alongside the socket
setup calls.
WebSphere MQ
IBM Software Group | WebSphere software
Multiplexed client performance
Version 7 introduced support for SHARECNV
Multiple client conversations (e.g. threads) can use the same TCP/IP socket (channel
instance)
SHARECNV(0)
No conversation sharing, behaviour as per version 6
SHARECNV(1)
No conversation sharing
Heartbeats, asynchronous message consumption and read-ahead support
SHARECNV(n>1)
Up to n conversations per channel instance - reduces number of sockets and channel
instances
Performance improvements
On distributed, SHARECNV(n>1) can impact performance if multiple conversations are
busy due to contention for the socket
In version 8, SHARECNV(1) optimized for parity with SHARECNV(0)
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Multiplexed client performance
• Prior to version 7 each client conversation uses a separate socket and channel instance. If clients
establish multiple conversations using different threads this can create a large demand for sockets
on the server. Each channel instance also requires storage on the queue manager.
• In version 7 support was added to allow client conversations to share the same socket/channel
instance. This can significantly reduce the resource overhead associated with these connections.
Support for bi-directional communication was also introduced that supports new capabilities, such
as heartbeats, read-ahead and asynchronous message consumption.
• However, if multiple conversations share the same socket, contention can arise if the total
workload for the conversations exceeds the capacity of the socket. Additionally, an overhead is
also introduced to serialize access when sending and receiving TCP/IP data.
• SHARECNV(0) disables all version 7 enhancements. SHARECNV(1) can be used to disable only
conversation sharing. Unfortunately, in version 7 the latter incurs a notable performance
overhead as a result of enabling the other version 7 capabilities. In version 8, support for
SHARECNV(1) has been optimized to achieve parity with SHARECNV(0).
WebSphere MQ
IBM Software Group | WebSphere software
Distributed vertical scaling
Vertical scaling of distributed queue managers has been enhanced
Various efficiency improvements, including
Better cache alignment
Extended 64-bit exploitation for locking primitives
Better compiler optimisations
Faster data conversion, especially for UTF-8
Object catalogue restructured
Better exploitation of SMP machines
Less targeted at internal benchmarks – hopefully more realistic scenarios
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Distributed vertical scaling
• A number of enhancements have been implemented in version 8 to improve the
vertical scaling of queue managers on the distributed platforms. Some of these
improvements are listed on the previous slide.
• We’ve also updated the focus of our performance testing to be less reliant on some
internal benchmarks that do not represent realistic customer workloads. Although
each customer workload is different, so guarantees are not possible, the performance
improvements in version 8 are more likely to be relevant to real-world scenarios.
WebSphere MQ
IBM Software Group | WebSphere software
Publish/subscribe improvements
Improved PROXYSUB(FORCE) behaviour
Version 7 uses individual proxy subscriptions
Version 8 uses wildcards where appropriate to reduce flows
Improved error handling in multi-queue manager environments
Improved scaling for large topic trees
Linear scaling to at least a million topics
Improved DISPLAY PUBSUB
Allows detection of unexpected growth in topics/subscriptions
AMQ8723: Display pub/sub status details.
QMNAME(QMGR3) TYPE(LOCAL)
STATUS(ACTIVE) SUBCOUNT(241)
TPCOUNT(105)
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Publish/subscribe improvements
• In a publish/subscribe hierarchy, or cluster, proxy subscriptions are used to indicate
which queue managers in the topology publications need to be propagated to for
remote subscribers. If applications have short-lived subscriptions the delay incurred
propagating the proxy subscriptions to all queue managers can result in some remote
publications not being delivered. PROXYSUB(FORCE) can be specified on a topic to
force all publications to be propagated to all remote queue managers. This avoids this
problem at the expense of propagating messages even when there are no subscribers
connected to a queue manager. In version 8 using PROXYSUB(FORCE) also significantly
reduces the overhead of propagating proxy subscriptions for a given topic node.
• Internal topic tree management has been enhanced for large numbers of topics.
Performance should scale linearly up to at least a million topics.
• The DISPLAY PUBSUB command has also been enhanced to report the total number of
topics and subscribers. This can be used to detect growth in these and help determine
the potential impact of a wildcard in a DISPLAY TOPIC/SUB/TPSTATUS/SBSTATUS
command.
WebSphere MQ
IBM Software Group | WebSphere software
Routed Publish/Subscribe
In version 7, all queue managers in a cluster know everything and need to be
able to connect to anyone
CLUS1
FR
TOPIC(T1) CLUSTER(CLUS1)
Sub to T1
Pub to T1
Queue manager
CLUSQMGR knowledge
Channel
Proxy subscription
WebSphere MQ
IBM Software Group | WebSphere software
Routed Publish/subscribe
In version 8 you can configure a subset of queue managers to know
everything and connect to everyone
Publications are sent via
these queue managers
Queue manager
CLUSQMGR knowledge
Channel
Proxy subscription
CLUS1
TOPIC(TOPIC1) CLUSTER(CLUS1)
FR
Sub to T1
Pub to T1
WebSphere MQ
IBM Software Group | WebSphere software
Configuration of routed topics
Topic routing is configured in the TOPIC object definition
Uses the CLROUTE property:
DIRECT: Provides V7 behaviour, publications travel directly from publishing queue
managers to subscribing queue managers
TOPICHOST: publications travel via a topic hosting queue manager
New function in MQ V8
Only V8 queue managers can participate in routed clustered publish/subscribe
Full repositories must also be at V8
Older queue managers are not told of the routed topic definitions and therefore behave as
if the topic was not clustered.
All V7 queue managers can continue to participate in direct clustered pub/sub
DEFINE TOPIC(topic)
CLUSTER(clustername)
CLROUTE(DIRECT|TOPICHOST)
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Routed topics
• In previous releases, if publish/subscribe is used within a cluster, all queue managers require knowledge of all
subscriptions throughout the cluster for publications to locally connected applications.
• Similarly, every queue manager requires connectivity to every other queue manager to establish proxy-
subscriptions and/or deliver publications throughout the cluster.
• Now routing via intermediary queue managers in the cluster is possible
– The aim is to allow topologies where queue manager-to-queue manager connectivity and knowledge is restricted
• With DIRECT pub/sub:
– Direct publication routing
– Every queue manager must scale with the size of the system
• With ROUTED pub/sub
– The load on the majority of queue managers is independent from the size of the system
– Publications may incur additional hops
• Messages published on topic host routed topics are similar to messages put to clustered queues:
– Think of a routed topic def as a clustered queue and a publisher to the topic as an app putting to that queue
– Each message published is sent to one of the topic host queue managers, and from there onto the queue managers where
subscriptions exist
– Messages are workload balanced across all topic hosts with available channels from the publishing queue manager to the
topic hosts
• Unavailable topic hosts are avoided
– Workload balancing behaviour is as for a clustered queue using all default settings (CLWLPRTY, CLWLRANK, etc.) except for
DEFBIND, which is effectively set to NOT_FIXED
• Each individual message is ‘evenly’ workload balanced across topic hosts
• Workload balancing is based on the cluster channel rather than the topic (as for queues), so channel workload balancing control still applies
(CLWLPRTY, CLWLRANK, CLWLWGHT)
WebSphere MQ
IBM Software Group | WebSphere software
Multiple cluster transmission queues
Multiple cluster transmission queues added in V7.5
Support for z/OS and IBM i added in V8
Benefits of using multiple transmission queues
Separation of message traffic
With a single transmission queue, pending messages for one channel can interfere
with those for another, especially when messages build up on the queue
Management of messages
Use of queue concepts such as MAXDEPTH are not useful when using a single
transmission queue for all cluster-sender channels
System monitoring
Tracking the number of messages processed by a cluster-sender channel is not
possible using queue monitoring if a single transmission queue is shared by multiple
channels, although some information is available using channel status
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Multiple cluster transmission queues
• Support for multiple cluster transmission queues was added on the distributed
platforms in version 7.5. Version 8 adds support for this capability on z/OS and IBM i.
• A different transmission queue can now be used by each cluster-sender channel, or a
subset of cluster-sender channels, instead of all channels using
SYSTEM.CLUSTER.TRANSMIT.QUEUE.
• The introduction of multiple cluster transmission queues is not designed to improve
performance, but to provide a capability to isolate message traffic.
– It is quicker to assess the impact of an issue if traffic is separated for different applications.
– If a queue manager is a member of multiple clusters, a different transmission queue can be
used for each cluster. This can prevent a build up of messages for one cluster, that results in
a full page set or MAXDEPTH being reached, impacting the other clusters.
– If messages for different applications are sent over different cluster channels* a problem for
one application can be prevented from impacting others.
• * This can be achieved by using a separate cluster for each application, which may
overlap with other clusters, or hosting the target queues for each application on
different cluster queue managers.
WebSphere MQ
IBM Software Group | WebSphere software
Configuring cluster transmission queues
DEFCLXQ queue manager attribute
Default transmission queue for cluster-sender channels
SCTQ
Use SYSTEM.CLUSTER.TRANSMIT.QUEUE
CHANNEL
Create a permanent-dynamic transmission queue per cluster-sender channel called
SYSTEM.CLUSTER.TRANSMIT.<channel name>
CLCHNAME queue attribute
Set on a manually defined transmission queue
Generic name for channels that should use it
DEFINE QLOCAL(CLUSTER.XMITQ1) USAGE(XMITQ) CLCHNAME(‘AAA.*’) …
Most specific match is used by a channel
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Configuring cluster transmission queues
• The transmission queue to use for each channel can be configured in two ways:
• A manually defined transmission queue can be configured using the CLCHNAME
attribute. The value of this attribute is a generic, or specific, name for the channels
that should use it. The mapping is defined on the transmission queue instead of the
channel because the channel’s definition is determined from the cluster-receiver
definition on the remote queue manager. If a channel’s name matches multiple
CLCHNAME values the most specific match is used to determine which transmission
queue to use.
• If no matching queue is found the queue manager uses the default transmission queue
setting, specified by the DEFCLXQ queue manager attribute, to determine which
transmission queue to use. This attribute indicates whether to use
SYSTEM.CLUSTER.TRANSMIT.QUEUE or to create a permanent-dynamic
transmission queue called SYSTEM.CLUSTER.TRANSMIT.<channel name>.
WebSphere MQ
IBM Software Group | WebSphere software
MQ for z/OS: 64-bit bufferpools
64-bit buffer pools in MQ for z/OS
Allows large numbers of messages to be cached before writing to pagesets
Allows MQ to exploit the vast amount of storage on today's machines
Improves performance of putting/getting messages by minimizing disk I/O
Minimizes administrative overhead of managing buffer pools
Buffer pool LOCATION attribute says where it is located relative to the bar
BELOW: The default. Buffer pool is located below the bar in 31 bit storage
ABOVE: Buffer pool is located above the bar in 64 bit storage
This can be altered dynamically
Storage can be pinned based on pageclass attribute
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Buffer pool problems before V8
• There is not much space below the bar for buffer pools once queue manager code and
data is taken into account. Maximum 1.6GB available for buffer pools depending on
common area
• Putting/getting messages into the buffer pool works at 'memory' speed,
putting/getting messages from the page set works at 'disk' speed
• For scenarios where several applications read and/or write large number of messages
to the same buffer pool a lot of time is spent getting pages from page set into buffer
pool and getting pages from buffer pool into page set
– This is detrimental for performance
• A maximum of 16 buffer pools are supported while up to 100 page sets are supported
• This can result in a lot of time spent tuning buffer pool sizes and the relationship
between queues, buffer pools and page sets
• These problems are resolved by allowing bufferpools to be defined in 64-bit space,
above the bar
WebSphere MQ
IBM Software Group | WebSphere software
MQ for z/OS: 64-bit bufferpools
Buffer pools above the bar can (theoretically) use up to 16 EB storage
Increased maximum size of pool to 999,999,999 buffers
Was 500,000
Allows up to 100 buffer pools
Previously only 16
Can have a 1-1 page set – buffer pool mapping
DATA
CODE
DATA
Buffer Pool
Buffer
Pool
Buffer
Pool
Buffer Pool
2 GB
BAR
16 EB
Up to 1.6 GB
Available
Queue Manager Address Space
Buffer
Pool
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
MQ for z/OS: 64-bit bufferpools
• 64-bit bufferpools can now theoretically use a huge amount of storage
• Having the same number of pools and pagesets makes it much simpler to monitor and
control the usage of these resources
• SMF 115, subtype 215
– Up to 100 buffer pools are now supported. However there is not enough space for 100 buffer
manager statistics records (QPST) in the existing SMF 115, subtype 2, record
– If OPMODE(NEWFUNC,800) is specified in system parameters then an SMF 115, subtype 215,
record will be cut for buffer manager statistics. The SMF 115, subtype 2, record will still
contain the self-defining section for buffer manager but it will be all zeros
– If OPMODE(COMPAT,800) is specified in system parameters then buffer manager statistics
will continue to be in SMF 115, subtype 2.
WebSphere MQ
IBM Software Group | WebSphere software
MQ for z/OS: Performance and Capacity
Log RBA constraint relief
Already improved messages to warn of approaching RBA
Now widening RBA field from 6 to 8 bytes
At 100MB/sec this will now take about 5578 years to fill, whereas with 6 byte RBA some
customers reach the limit in 12-18 months
Support for LP64 batch/RRS C applications
Performance enhancements for IBM Information Replicator (QRep) and
similar application patterns
Read-ahead and changes to deferred write processing allows MQ to increase
sustainable data rates
General improvements to channel performance
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Log RBA extensions
• WebSphere MQ for z/OS V7 implements a 6 byte Log RBA (Relative Byte Address)
– This give an RBA range of 0 to x'FFFFFFFFFFFF' (= 255TB)
– Some customers are now reaching this limit in 12 months
• If we reach the end of the Log RBA range (i.e. “wrap”):
– Queue Manager terminates and requires a cold start – a disruptive outage
– Potential for loss of persistent data
• To avoid an outage:
– Run CSQUTIL RESETPAGE, at regular planned intervals, to RESET the LOG RBA
• With current maintenance, MQ V7.x issues warning messages when approaching maximum
– Then terminates, to prevent loss of data, if log RBA reaches x'FFF800000000'.
• V8 increases size of Log RBA to 8 bytes
– Upper limit on logical log will be 64K times bigger
– Format of BSDS and log records will change to accommodate 8 byte RBAs, URIDs will become 8 bytes long
– Like DB2, the control point for new function is a BSDS conversion utility
– Run the new CSQJUCNV utility
• utility will check that entire QSG is at correct level
• copies data from old primary / secondary BSDS pair to new primary / secondary pair
• All V8 queue managers can read data in both the old and new formats
• All V8 queue managers and utilities will display all log RBAs as 8 bytes
• V8 will ONLY write in new format, once BSDS has been converted
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
LP64 Support
• Externalising technology previously used by Broker and JMS
• Limited to C language (no 64bit COBOL)
– LP64 compile option
– Supported by cmqc.h
• Restricted environments
– Batch, TSO, USS
– CICS and IMS do not support 64bit apps
• Must use sidedeck & DLL, not stubs:
– csqbmq2x (uncoordinated batch & USS)
– csqbrr2x (RRS coordinated, srrcmit())
– csqbri2x (RRS coordinated, MQCMIT)
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
Performance improvements
• QRep has implemented a common application pattern – basically a single-stream
reading or writing of messages. That program, and others that follow the same
pattern, can benefit from some of the performance enhancements in MQ. For
example, fetching data for the "next message" from a pageset at the same time as for
the "current message" (readahead) can reduce the I/O operations and hence reduce
CPU and increase throughput.
WebSphere MQ
IBM Software Group | WebSphere software
MQ for z/OS: Other features
Exploitation of zEDC compression accelerator
MSGCOMP(ZLIBFAST)
Requires zEC12 GA2 + zEDC card
Can yield higher throughput and reduced CPU for SSL channels
Support for Flash Express feature on zEC12 and zBC12 servers
Improves resiliency of Coupling Facility with cost-effective standby capacity to handle
overflow of shared queues
Messages <63K fully held in Flash
Messages >63K have pointers in Flash, body in SMDS just as for traditional CF structures
SMF enhancements
Channel statistics allow better monitoring and tuning of channel behaviour
Correlation of MQ and CICS statistics
Message suppression
Up to 16 message numbers (particularly X511,X512) can be defined to be excluded
Removes cost of writing WTO messages which are then ignored
Can now differentiate between messages for client chls (X511) and other types (X500)
WebSphere MQ
IBM Software Group | WebSphere software
N
O
T
E
S
MQ for z/OS: Other features
• A number of internal performance improvements have been implemented in version 8,
including some internal optimisations in the channel initiator.
• Some changes have been introduced to significantly improve performance for IBM
Information Replicator (QREP). This product is used to replicate DB2 logs from one
system to another. It is used for disaster recovery and in IBM’s active-active solution
for z/OS. The improvements made for this type of workload include support for pre-
fetching pages from page sets in to buffers and optimizations to the algorithm used to
write data to page sets too. These improvements are likely to also benefit other
customer workloads.
• If you configure channel compression using MSGCOMP(ZLIBFAST) and you are running
on suitable zEC12 hardware, a zEDC card is exploited if available. This can improve
performance as well as reducing CPU activity.
• Another improvement, although not strictly for performance, is the introduction of a
new system parameter, EXCLMSG, that allows you to suppress up to 16 console
messages. This can be used to reduce ‘noise’ on the console. It is preferable to using
the z/OS Message Processing Facility (MPF) to suppress messages, because using this
parameter avoids the CPU overhead of generating the message and issuing the WTO.
WebSphere MQ
IBM Software Group | WebSphere software
IBM has a 20 year track record of innovation in
Messaging
1990s
2000s
JMS
MQI
Assured
delivery
IBM
MQSeries
Multi-platform
Mobile
.NET
Common criteria
Eclipse
JMS 1.1
RCMS
IBM MQ Low
Latency
V1.1
V2
V5 V5.1
V5.3
V2.1
V5.2
V6
V7
V7.0.1
SSL
SOAP
XML
IBM MQ
Managed File
Transfer
IBM MQTT
HTTP
AJAX
REST
Web 2.0
Managed
File Transfer
Pub/sub
IBM MQ
Everyplace
IBM MQ
Advanced
Message
Security
V7.1
V7.5
Integrated
Messaging
Hypervisors
IBM MQ
Advanced
System Pattern
Application Pattern
IBM MQ
Advanced for
Developers
IBM
MessageSight
Multiple cluster
XMIT queue
Multi-instance
QMGR
IBM MQ Low
Latency
20th
Anniversary of
MQ at IMPACT
V8
2010s
WebSphere MQ
IBM Software Group | WebSphere software
And continues to invest in all Messaging markets
Enterprise Messaging where MQ continues to lead
Messaging for Mobile and the Internet of Things
Supporting Cloud deployments with Messaging services
Helping developers use Application Messaging to create better
applications

More Related Content

What's hot

IBM MQ Channel Authentication
IBM MQ Channel AuthenticationIBM MQ Channel Authentication
IBM MQ Channel Authentication
IBM Systems UKI
 

What's hot (20)

IBM MQ - better application performance
IBM MQ - better application performanceIBM MQ - better application performance
IBM MQ - better application performance
 
IBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
IBM MQ: Managing Workloads, Scaling and Availability with MQ ClustersIBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
IBM MQ: Managing Workloads, Scaling and Availability with MQ Clusters
 
IBM MQ - Comparing Distributed and z/OS platforms
IBM MQ - Comparing Distributed and z/OS platformsIBM MQ - Comparing Distributed and z/OS platforms
IBM MQ - Comparing Distributed and z/OS platforms
 
IBM MQ V8 Security
IBM MQ V8 SecurityIBM MQ V8 Security
IBM MQ V8 Security
 
IBM WebSphere MQ V8 Security Features: Deep Dive
IBM WebSphere MQ V8 Security Features: Deep DiveIBM WebSphere MQ V8 Security Features: Deep Dive
IBM WebSphere MQ V8 Security Features: Deep Dive
 
3429 How to transform your messaging environment to a secure messaging envi...
3429   How to transform your messaging environment to a secure messaging envi...3429   How to transform your messaging environment to a secure messaging envi...
3429 How to transform your messaging environment to a secure messaging envi...
 
WebSphere MQ tutorial
WebSphere MQ tutorialWebSphere MQ tutorial
WebSphere MQ tutorial
 
IBM WebSphere MQ: Managing Workloads, Scaling and Availability with MQ Clusters
IBM WebSphere MQ: Managing Workloads, Scaling and Availability with MQ ClustersIBM WebSphere MQ: Managing Workloads, Scaling and Availability with MQ Clusters
IBM WebSphere MQ: Managing Workloads, Scaling and Availability with MQ Clusters
 
IBM MQ Channel Authentication
IBM MQ Channel AuthenticationIBM MQ Channel Authentication
IBM MQ Channel Authentication
 
IBM MQ v8 and JMS 2.0
IBM MQ v8 and JMS 2.0IBM MQ v8 and JMS 2.0
IBM MQ v8 and JMS 2.0
 
IBM MQ Clustering (2017 version)
IBM MQ Clustering (2017 version)IBM MQ Clustering (2017 version)
IBM MQ Clustering (2017 version)
 
IBM MQ V8 annd JMS 2.0
IBM MQ V8 annd JMS 2.0IBM MQ V8 annd JMS 2.0
IBM MQ V8 annd JMS 2.0
 
MQ V8004 Summary
MQ V8004 SummaryMQ V8004 Summary
MQ V8004 Summary
 
HHM-2833: Where is My Message?: Using IBM MQ Tools to Work Out What Applicati...
HHM-2833: Where is My Message?: Using IBM MQ Tools to Work Out What Applicati...HHM-2833: Where is My Message?: Using IBM MQ Tools to Work Out What Applicati...
HHM-2833: Where is My Message?: Using IBM MQ Tools to Work Out What Applicati...
 
IBM MQ - Monitoring and Managing Hybrid Messaging Environments
IBM MQ - Monitoring and Managing Hybrid Messaging EnvironmentsIBM MQ - Monitoring and Managing Hybrid Messaging Environments
IBM MQ - Monitoring and Managing Hybrid Messaging Environments
 
WebSphere MQ V7 API Enhancements
WebSphere MQ V7 API EnhancementsWebSphere MQ V7 API Enhancements
WebSphere MQ V7 API Enhancements
 
IBM WebSphere MQ: Using Publish/Subscribe in an MQ Network
IBM WebSphere MQ: Using Publish/Subscribe in an MQ NetworkIBM WebSphere MQ: Using Publish/Subscribe in an MQ Network
IBM WebSphere MQ: Using Publish/Subscribe in an MQ Network
 
IBM MQ: Using Publish/Subscribe in an MQ Network
IBM MQ: Using Publish/Subscribe in an MQ NetworkIBM MQ: Using Publish/Subscribe in an MQ Network
IBM MQ: Using Publish/Subscribe in an MQ Network
 
HHM-3481: IBM MQ for z/OS: Enhancing Application and Messaging Connectivity ...
 HHM-3481: IBM MQ for z/OS: Enhancing Application and Messaging Connectivity ... HHM-3481: IBM MQ for z/OS: Enhancing Application and Messaging Connectivity ...
HHM-3481: IBM MQ for z/OS: Enhancing Application and Messaging Connectivity ...
 
Where is my MQ message on z/OS?
Where is my MQ message on z/OS?Where is my MQ message on z/OS?
Where is my MQ message on z/OS?
 

Similar to IBM What's New in MQ V8

Ame 2287 using-wmq_with_was_and_liberty
Ame 2287 using-wmq_with_was_and_libertyAme 2287 using-wmq_with_was_and_liberty
Ame 2287 using-wmq_with_was_and_liberty
Lohit T
 
CTU June 2011 - Microsoft System Center Virtual Machine Manager 2012
CTU June 2011 - Microsoft System Center Virtual Machine Manager 2012CTU June 2011 - Microsoft System Center Virtual Machine Manager 2012
CTU June 2011 - Microsoft System Center Virtual Machine Manager 2012
Spiffy
 
IBM Intro to Using MQ with WAS and Liberty
IBM Intro to Using MQ with WAS and LibertyIBM Intro to Using MQ with WAS and Liberty
IBM Intro to Using MQ with WAS and Liberty
IBM Systems UKI
 
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2
 

Similar to IBM What's New in MQ V8 (20)

What's New in IBM Messaging
What's New in IBM MessagingWhat's New in IBM Messaging
What's New in IBM Messaging
 
InterConnect 2016: What's new in IBM MQ
InterConnect 2016: What's new in IBM MQInterConnect 2016: What's new in IBM MQ
InterConnect 2016: What's new in IBM MQ
 
IBM MQ V9 Overview
IBM MQ V9 OverviewIBM MQ V9 Overview
IBM MQ V9 Overview
 
IBM Middleware Upgrade webinar by CROZ June 2020
IBM Middleware Upgrade webinar by CROZ June 2020IBM Middleware Upgrade webinar by CROZ June 2020
IBM Middleware Upgrade webinar by CROZ June 2020
 
MQ Guide France - What's new in ibm mq 9.1.4
MQ Guide France - What's new in ibm mq 9.1.4MQ Guide France - What's new in ibm mq 9.1.4
MQ Guide France - What's new in ibm mq 9.1.4
 
IBM MQ for z/OS The Latest and Greatest Enhancements
IBM MQ for z/OS The Latest and Greatest EnhancementsIBM MQ for z/OS The Latest and Greatest Enhancements
IBM MQ for z/OS The Latest and Greatest Enhancements
 
Ame 2287 using-wmq_with_was_and_liberty
Ame 2287 using-wmq_with_was_and_libertyAme 2287 using-wmq_with_was_and_liberty
Ame 2287 using-wmq_with_was_and_liberty
 
Using wmq with_was_and_liberty
Using wmq with_was_and_libertyUsing wmq with_was_and_liberty
Using wmq with_was_and_liberty
 
CTU June 2011 - Microsoft System Center Virtual Machine Manager 2012
CTU June 2011 - Microsoft System Center Virtual Machine Manager 2012CTU June 2011 - Microsoft System Center Virtual Machine Manager 2012
CTU June 2011 - Microsoft System Center Virtual Machine Manager 2012
 
IBM Notes in the Cloud
IBM Notes in the CloudIBM Notes in the Cloud
IBM Notes in the Cloud
 
IBM MQ What's new - Sept 2022
IBM MQ What's new - Sept 2022IBM MQ What's new - Sept 2022
IBM MQ What's new - Sept 2022
 
MQ Support for z/OS Connect
MQ Support for z/OS ConnectMQ Support for z/OS Connect
MQ Support for z/OS Connect
 
What's new with MQ on z/OS 9.3 and 9.3.1
What's new with MQ on z/OS 9.3 and 9.3.1What's new with MQ on z/OS 9.3 and 9.3.1
What's new with MQ on z/OS 9.3 and 9.3.1
 
Pivotal Cloud Foundry 2.5: A First Look
Pivotal Cloud Foundry 2.5: A First LookPivotal Cloud Foundry 2.5: A First Look
Pivotal Cloud Foundry 2.5: A First Look
 
What's New In MQ 9.2 on z/OS
What's New In MQ 9.2 on z/OSWhat's New In MQ 9.2 on z/OS
What's New In MQ 9.2 on z/OS
 
IBM Intro to Using MQ with WAS and Liberty
IBM Intro to Using MQ with WAS and LibertyIBM Intro to Using MQ with WAS and Liberty
IBM Intro to Using MQ with WAS and Liberty
 
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
WSO2 Product Release webinar - WSO2 Message Broker 2.2.0
 
InterConnect 2016: IBM MQ self-service and as-a-service
InterConnect 2016: IBM MQ self-service and as-a-serviceInterConnect 2016: IBM MQ self-service and as-a-service
InterConnect 2016: IBM MQ self-service and as-a-service
 
VSPP-3.pptx
VSPP-3.pptxVSPP-3.pptx
VSPP-3.pptx
 
Expanding your options with the IBM MQ Appliance - IBM InterConnect 2016
Expanding your options with the IBM MQ Appliance - IBM InterConnect 2016Expanding your options with the IBM MQ Appliance - IBM InterConnect 2016
Expanding your options with the IBM MQ Appliance - IBM InterConnect 2016
 

More from IBM Systems UKI

IBM MQ Light Service for Bluemix
IBM MQ Light Service for BluemixIBM MQ Light Service for Bluemix
IBM MQ Light Service for Bluemix
IBM Systems UKI
 
IBM How to Develop Responsive Applications
IBM How to Develop Responsive ApplicationsIBM How to Develop Responsive Applications
IBM How to Develop Responsive Applications
IBM Systems UKI
 
IBM Latest Features Deep Dive
IBM Latest Features Deep DiveIBM Latest Features Deep Dive
IBM Latest Features Deep Dive
IBM Systems UKI
 
IBM Performance and Accounting
IBM Performance and AccountingIBM Performance and Accounting
IBM Performance and Accounting
IBM Systems UKI
 
IBM Publish Subscribe in a Network
IBM Publish Subscribe in a NetworkIBM Publish Subscribe in a Network
IBM Publish Subscribe in a Network
IBM Systems UKI
 
IBM MQ Security Deep Dive
IBM MQ Security Deep DiveIBM MQ Security Deep Dive
IBM MQ Security Deep Dive
IBM Systems UKI
 
IBM Managing Workload Scalability with MQ Clusters
IBM Managing Workload Scalability with MQ ClustersIBM Managing Workload Scalability with MQ Clusters
IBM Managing Workload Scalability with MQ Clusters
IBM Systems UKI
 

More from IBM Systems UKI (17)

PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
 
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
 
PureSystems Summary and Actions, John Kaemmerer and Gerry Novan, 11th Sept 14
PureSystems Summary and Actions, John Kaemmerer and Gerry Novan, 11th Sept 14PureSystems Summary and Actions, John Kaemmerer and Gerry Novan, 11th Sept 14
PureSystems Summary and Actions, John Kaemmerer and Gerry Novan, 11th Sept 14
 
PureSystems on the Private Cloud, John Kaemmerer and Gerry Novan, 11th Sept 14
PureSystems on the Private Cloud, John Kaemmerer and Gerry Novan, 11th Sept 14PureSystems on the Private Cloud, John Kaemmerer and Gerry Novan, 11th Sept 14
PureSystems on the Private Cloud, John Kaemmerer and Gerry Novan, 11th Sept 14
 
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
 
Introduction to Pure, John Kaemmerer and Gerry Kovan
Introduction to Pure, John Kaemmerer and Gerry KovanIntroduction to Pure, John Kaemmerer and Gerry Kovan
Introduction to Pure, John Kaemmerer and Gerry Kovan
 
PureSystems on the Public Cloud John Kaemmerer and Gerry Novan, 11th Sep 14
PureSystems on the Public Cloud John Kaemmerer and Gerry Novan, 11th Sep 14PureSystems on the Public Cloud John Kaemmerer and Gerry Novan, 11th Sep 14
PureSystems on the Public Cloud John Kaemmerer and Gerry Novan, 11th Sep 14
 
Savio Rodrigues - Cloud Enable Your Ent App - 11th September
Savio Rodrigues - Cloud Enable Your Ent App - 11th SeptemberSavio Rodrigues - Cloud Enable Your Ent App - 11th September
Savio Rodrigues - Cloud Enable Your Ent App - 11th September
 
Andrew Darley Presentation - Pure Future is Hybrid Cloud (London 11th September)
Andrew Darley Presentation - Pure Future is Hybrid Cloud (London 11th September)Andrew Darley Presentation - Pure Future is Hybrid Cloud (London 11th September)
Andrew Darley Presentation - Pure Future is Hybrid Cloud (London 11th September)
 
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September London
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September LondonIcon solutions presentation - Pure Hybrid Cloud Event, 11th September London
Icon solutions presentation - Pure Hybrid Cloud Event, 11th September London
 
IBM MQ Light Service for Bluemix
IBM MQ Light Service for BluemixIBM MQ Light Service for Bluemix
IBM MQ Light Service for Bluemix
 
IBM How to Develop Responsive Applications
IBM How to Develop Responsive ApplicationsIBM How to Develop Responsive Applications
IBM How to Develop Responsive Applications
 
IBM Latest Features Deep Dive
IBM Latest Features Deep DiveIBM Latest Features Deep Dive
IBM Latest Features Deep Dive
 
IBM Performance and Accounting
IBM Performance and AccountingIBM Performance and Accounting
IBM Performance and Accounting
 
IBM Publish Subscribe in a Network
IBM Publish Subscribe in a NetworkIBM Publish Subscribe in a Network
IBM Publish Subscribe in a Network
 
IBM MQ Security Deep Dive
IBM MQ Security Deep DiveIBM MQ Security Deep Dive
IBM MQ Security Deep Dive
 
IBM Managing Workload Scalability with MQ Clusters
IBM Managing Workload Scalability with MQ ClustersIBM Managing Workload Scalability with MQ Clusters
IBM Managing Workload Scalability with MQ Clusters
 

Recently uploaded

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Recently uploaded (20)

Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 

IBM What's New in MQ V8

  • 1. © 2014 IBM Corporation IBM Software Group WebSphere Software What's new in MQ V8 Morag Hughson hughson@uk.ibm.com WebSphere MQ IBM Software Group | WebSphere software IBM MQ V8 delivering best in class enterprise messaging Platforms & Standards Security Scalability System z exploitation 64-bit for all platforms Userid authentication via OS & LDAP Multiplexed client performance 64-bit buffer pools in MQ for z/OS means less paging, more performance Support for JMS 2.0 User-based authorisation for Unix Queue manager vertical scaling Performance and capacity Improved support for .Net and WCF AMS for IBM i & z/OS Publish/Subscribe improvements Performance enhancements for IBM Information Replicator (QRep) Changes to runmqsc DNS Hostnames in CHLAUTH records Routed publish/subscribe Exploit zEDC compression accelerator SHA-2 for z, i & NSS Multiple certificates per queue manager Multiple Cluster Transmit Queue on all platforms SMF and shared queue enhancements
  • 2. WebSphere MQ IBM Software Group | WebSphere software MQ V8 Dates Announce: 22 April 2014 Availability: 23 May 2014 (eGA Distributed) 13 June 2014 (z/OS and pGA Distributed) End of Service for old platforms and versions MQ V7.0.0 and V7.0.1 for multiplatforms – EOM, EOS effective September 2015 V7.0 will have had more than 7 years of support MQ V7.0.1 for z/OS – EOM, EOS effective September 2015 V7.0 .0 already out of service WebSphere MQ IBM Software Group | WebSphere software N O T E S Dates • Nothing more to say here
  • 3. WebSphere MQ IBM Software Group | WebSphere software MQ platform consistency 64-bit server support for all queue manager platforms Completion of platform coverage by adding Windows 64-bit engine Applications can still be 32-bit Requires Windows 7 or later Client only package for 32-bit platforms Queue Manager requires 64-bit Integration of AMS and MFT capabilities into z/OS and IBM i platforms Previously separately installable products Client Attach Feature no longer needed on z/OS Single price includes support for clients WebSphere MQ IBM Software Group | WebSphere software N O T E S MQ platform consistency • This release has all the Distributed queue managers fully supporting 64-bit operations. The final remaining platform had been Windows, but now the queue manager runs as 64-bit processes. Existing 32-bit applications continue to work of course, but this should bring additional capacity and scalability to the queue managers on that OS. The lowest level of Windows now supported is Windows 7; older versions are not supported. A client-only package for 32-bit versions of Windows is provided, but the qmgr requires the 64-bit OS. • Another big feature of V7.5 was the closer integration of AMS and File Transfer (MFT). As we will see later, this pattern has been followed on z/OS and IBM i. On z/OS the features are still separately licensed, but are better integrated than previously. • On z/OS, the CAF has been removed both as an installable feature and as a licensing option. All V8 queue managers are now capable of having any number of MQ clients directly connected. For customers who previously used the lack of a CAF to block client connections, we would strongly recommend they look at the other security-related controls such as CHLAUTH and SSL/TLS, or MAXINST values, to continue to prohibit clients. If you extend the number of directly-attached clients in your environment, make sure you first evaluate things such as CPU costs, performance, capacity etc.
  • 4. WebSphere MQ IBM Software Group | WebSphere software JMS 2.0 Long-awaited update from JMS 1.1 standard JMS 2.0 – JSR 343 Java Message Service (JMS 2.0) Final release on 21 May 2013. https://java.net/projects/jms-spec/pages/JMS20FinalRelease New Messaging Features Delivery Delay Asynchronous Send Subscriptions can be shared across a messaging provider API Changes Use of java.lang.AutoCloseable Simplified API [combined connection/session] Session doesn't need parameters (for Java EE) Java 7 prereq Java EE 7 prereq for use of the Resource Adapter in Application Servers WebSphere MQ IBM Software Group | WebSphere software N O T E S JMS 2.0 • The JMS 2.0 specification now requires JMS providers to implement both P2P and Pub-Sub. • The following new messaging features have been added in JMS 2.0: – Delivery delay: a message producer can now specify that a message must not be delivered until after a specified time interval. – New send methods have been added to allow an application to send messages asynchronously. – JMS providers must now set the JMSXDeliveryCount message property. • The following change has been made to aid scalability: – Applications are now permitted to create multiple consumers on the same durable or non-durable topic subscription. In previous versions of JMS only a single consumer was permitted. • Several changes have been made to the JMS API to make it simpler and easier to use: – Connection, Session and other objects with a close method now implement the java.jang.AutoCloseable interface to allow them to be used in a Java SE 7 try-with-resources statement. – A new "simplified API" has been added which offers a simpler alternative to the standard API, especially in Java EE applications. – New methods have been added to create a session without the need to supply redundant arguments. – Although setting client ID remains mandatory when creating an unshared durable subscription, it is optional when creating a shared durable subscription. – A new method getBody has been added to allow an application to extract the body directly from a Message without the need to cast it first to an appropriate subtype. • New methods have been added to Session which return a MessageConsumer on a durable topic subscription. Applications could previously only obtain a domain-specific TopicSubscriber, even though its use was discouraged. • The specification has been clarified in various places. • JMS 2.0 implementations require Java 7 for the runtime. They also require Java EE 7 for use of the Resource Adapter in Application Servers. Not all App Servers currently support Java EE 7. However, as with all client implementations, older versions of the RA still work when communicating to an MQ V8 queue manager.
  • 5. WebSphere MQ IBM Software Group | WebSphere software .Net enhancements MQ .Net classes can now use SSL without needing the C client installed A secure fully-managed .Net implementation Uses Windows native certificate stores For MQ .NET classes (aka Base .NET Classes) SSL properties can be set at MQEnvironment.cs Hashtable properties (input parameter to MQQueueManager constructor) For XMS .NET, SSL properties can be set as ConnectionFactory properties WCF interface extended to non-SOAP, non-JMS messages Making it easier for apps using WCF to communicate with any other MQ application WebSphere MQ IBM Software Group | WebSphere software N O T E S .Net enhancements: SSL + WCF • MQ .NET in unmanaged mode has supported the use of SSL since MQ v6.0.1. It was based on the C Client (and GSKit). • In V8 MQ .NET Managed mode now supports SSL based on Microsoft SSLStreams/Security kit. • There are some limitations when using SSL with Managed .NET. • CipherSpec setting can be made only at Windows Group policy (gpedit.msc). – CipherSpec set on client channel is used only to determine SSLProtocol. – Make sure you set same cipherspec on Windows group policy and client channel to make sure correct protocol version is flowed. • KeyRepository uses Windows Key Store only. – Set value as *SYSTEM for accessing certificates under Computer Account – Set value as *USER for accessing certificates under User account • FIPS can be enabled only from Windows group policy. • KEYRESET is not supported by Microsoft SSLStreams – This limitation is overridden by using KEYRESETCOUNT and Client Auto Reconnect feature of MQ. – Application can set KEYRESETCOUNT during connection, once the number of bytes sent/received reaches the count, connection will be forcibly broken. If Client Auto Reconnect facility is enabled, connection will be automatically reconnected. • No managed way to support Cryptographic hardware • Product samples have been updated to demonstrate SSL Connections. These can be found in WebSphere MQtoolsdotnetsamplescsbaseSimple • Additional model for sending MQ messages from WCF applications – Both SOAP/JMS and MQMessaging can be used • SOAP/JMS – Supported since MQ v7.0.1 – Based on XMS .NET and makes JMS-like calls for MQI – Uses JMS nomenclature for URI(jms:) and Bindings – Now also supports “wmq:” style of URI • Uses MA93 supportpac specification for URI format/syntax – Messages can be delivered only to SOAP enabled Client/Service • MQMessaging – New in MQ V8.0 – Transmits MQ Messages over the WCF Channel without any SOAP headers – Use “wmq:” style of URI • Uses MA93 supportpac specification for URI format/syntax – Messages can be delivered to SOAP or NON-SOAP MQ applications
  • 6. WebSphere MQ IBM Software Group | WebSphere software Changes to runmqsc Can now be run by any user (not just mqm group) Can take a userid/password for authentication: new "-u" flag Can now connect as a client to remote systems: new "-c" flag Client channel definitions located by MQSERVER -> MQCHLLIB -> MQCHLTAB Can act as standalone program to create local CCDT: new "-n" flag Does not connect to queue manager; commands subset to update local channel definition file Ease of use Customisable prompt using environment variable New "exit" and "quit" synonyms for "end" $ ls –l runmqsc -r-xr-xr-x 1 mqm mqm 25930 06 Mar 04:46 runmqsc $ export MQPROMPT="MQ +MQ_INSTALLATION_NAME+> " $ runmqsc –u metaylor QM1 5724-H72 (C) Copyright IBM Corp. 1994, 2014. Enter password: ****** Starting MQSC for queue manager QM1. MQ Installation5> DIS QMGR … WebSphere MQ IBM Software Group | WebSphere software N O T E S Changes to runmqsc • This release introduces a number of changes to the runmqsc program • Firstly, it is now exectuable by any user, not just members of the mqm group. Security controls still apply of course, but the security is checked on each individual command. This makes it easier to have MQ administrators who have been granted full access to objects, but who are not in the mqm group. • Another reason for making runmqsc world-executable was to make it usable on machines which do not have queue managers installed. It is now installed even on client-only systems, and it can be run either as a client program connecting directly to a remote queue manager, or as a completely standalone program to permit local creation of the Client Channel Definition Table. So you can create and modify a CCDT with no queue manager access at all. • The program is one of several that have been updated to accept a userid for authentication. If the –u flag is given, then a password is requested. Note that the password is read from stdin so that it can be redirected from a file if necessary. If you also use scripts piped into runmqsc, then you can group commands to avoid having to put the password in the same script as the MQSC commands. – Unix: (cat password.stash ; cat script.mqsc) | runmqsc –u userid QM1 – Windows: (type password.stash & type script.mqsc) | runmqsc –u userid QM1 • There are also a couple of usability enhancements. Firstly, there are some synomyms added to complete an MQSC session – END, QUIT and EXIT can all be used so you don't have to try them all. Different scripting environments for different products typically use one of these commands, and it's annoying to have to remember which goes with which. • Secondly, you can now make it easier to see that you are in an MQSC command environment and some details of the current environment by setting the MQPROMPT environment variable. Replaceable inserts are recognised such as date and time, and installation-specific details. These are the same variable subsitutions as available for SERVICE objects.
  • 7. WebSphere MQ IBM Software Group | WebSphere software SHA-2 Support Stronger algorithms are now available and recommended In many cases available pre-V8 See technote http://www.ibm.com/support/docview.wss?uid=swg21639606 Changes also rolled into V8 CipherSpecs include:- ECDHE_RSA_AES_128_CBC_SHA256 ECDHE_RSA_AES_256_CBC_SHA384 TLS_RSA_WITH_AES_128_CBC_SHA256 TLS_RSA_WITH_AES_256_CBC_SHA256 TLS_RSA_WITH_NULL_SHA256 WebSphere MQ IBM Software Group | WebSphere software N O T E S SHA-2 Support • SHA-2 stands for Secure Hash Algorithm 2. This is the generic name for a family of hash functions SHA-224, SHA-256, SHA-384, and SHA-512; the numbers refer to the bit-size of the generated hash value. • The hashing algorithms historically supported by WebSphere MQ channel cipherSpecs (SSLCIPH) were MD5 and SHA-1. These are no longer regarded as adequately secure due to successful attacks on them which have been widely publicized, and because NIST (the American National Institute of Standards and Technology) has mandated (http://csrc.nist.gov/groups/ST/hash/policy.html) that both MD5 and SHA-1 no longer be used. So we have had considerable customer pressure for provision of “SHA-2 support.” • This support is in MQ V8, but also in earlier releases by applying appropriate fix pacs for the platform or component on MQ where you are interested in using it. A technote at http://www.ibm.com/support/docview.wss?uid=swg21639606 details exactly which fix pacs or APARs are required in each case.
  • 8. WebSphere MQ IBM Software Group | WebSphere software MQ Security – Authentication (1) Verify userid and password Typically supplied in MQI CSP structure or from channel security exit Or JMS createConnection(user,pass) method New client exit and tool provided to help unchanged applications insert passwords Can verify against operating system Including PassPhrase for z/OS Can verify against LDAP repository on Distributed platforms Enabling centralised identity control MQCNO cno = {MQCNO_DEFAULT}; cno.Version = MQCNO_VERSION_5; cno.SecurityParmsPtr = &csp; MQCONNX(QMName, &cno, &hConn, &CompCode, &Reason); MQCSP csp = {MQCSP_DEFAULT}; csp.AuthenticationType = MQCSP_AUTH_USER_ID_AND_PWD; csp.CSPUserIdPtr = "hughson"; csp.CSPUserIdLength = 7; /* Max: MQ_CLIENT_USER_ID_LENGTH */ csp.CSPPasswordPtr = "passw0rd"; csp.CSPPasswordLength = 8; /* Max: MQ_CSP_PASSWORD_LENGTH */ WebSphere MQ IBM Software Group | WebSphere software Object Oriented MQ classes changes cf = getCF(); System.out.println("Creating the Connection with UID and Password"); Connection conn = cf.createConnection("hughson", "passw0rd"); JMS/XMS classes changes MQEnvironment.properties = new Hashtable(); MQEnvironment.userID = "hughson"; MQEnvironment.password ="passw0rd"; System.out.println("Connecting to queue manager"); MQQueueManager qMgr = new MQQueueManager(QMName);
  • 9. WebSphere MQ IBM Software Group | WebSphere software MQ Security – Authentication (2) Independent configuration for local bindings and clients Ignored, Optional, Required, Required for admin id Queue Manager checks password against OS or LDAP ALTER QMGR CONNAUTH(‘CHECK.PWD’) DEFINE AUTHINFO(‘CHECK.PWD’) AUTHTYPE(IDPWOS|IDPWLDAP) CHCKLOCL(NONE|OPTIONAL|REQUIRED|REQDADM) CHCKCLNT(NONE|OPTIONAL|REQUIRED|REQDADM) ADOPTCTX(YES) + various LDAP attributes REFRESH SECURITY TYPE(CONNAUTH) Password protection is provided when SSL/TLS not in use Both ends of client channel are V8 or above WebSphere MQ IBM Software Group | WebSphere software N O T E S MQ Security - Authentication • Applications can now be authenticated with a userid/password. This can be provided explicitly by the application as parameters in the MQCONNX verb or equivalent. This builds on features originally implemented in the MQI for MQ v6, but which were never exploited until now. • Also, to support client applications, a security exit is provided that can add the userid/password to a connection request if it is not supplied by the app. The exit reads the qmgr name from an ini file; the file contains the userid and a protected form of the password – ie not plaintext. The protection of the password is done by a tool that is also provided. • When V8 clients connect to V8 qmgrs, the userid/password information is protected against casual wire- sniffing, even when SSL/TLS is not used. This protection is not as strong as a full TLS-encrypted session, which is preferred, but is better than sending data in the clear. Obviously both the client and the qmgr must be at V8 for this protection to work; older clients can still send passwords but they are not protected. • Authentication is performed against the local OS (all platforms) or against an LDAP directory (Distributed only). Some operating systems may integrate LDAP services into their local user registry, in the same way as NIS, but when this is done transparently MQ does not know about it explicitly and can use the OS authentication method. • Using a central LDAP server means that passwords can be set in a single place. For example, we have used IBM's LDAP services (BluePages) to authenticate userids. When using LDAP, there is lots of flexibility in what the "userid" is – in BluePages it is generally the email address – but there must be a field in the schema to return a short name that can fit into the 12 character MQMD.UserIdentifier field. This short name is also used for authorisation and must be locally defined to the OS so that permissions can be calculated. • There are various configuration rules for different modes of connection, to specify whether a password is required, optional or ignored.
  • 10. WebSphere MQ IBM Software Group | WebSphere software MQ Security - Authorisation Make Unix OAM userid-based Optional configuration Consistent with other platforms Will no longer add primary group to authorities during setmqaut Chosen at queue manager creation or by editing qm.ini Default is still group-based authorisations Delete Authority record by SID Solve problem of orphaned authorities when Windows id is deleted $ crtmqm –oa user QMU ---------------- Service: Name=AuthorizationService EntryPoints=14 SecurityPolicy=User WebSphere MQ IBM Software Group | WebSphere software N O T E S MQ Security - Authorisation • One further point of consistency in this release is making the Unix authorisation model the same as for Windows – permissions can now be set for individual users, and not just groups. So running a command such as "setmqaut –t qmgr –p usr1 +connect" works for just that user, and not the primary group. • This is configured by either creating the queue manager with the "-oa user" option or by editing the ini file as shown for existing queue managers – restarting the queue manager sets it to work in the new mode. The change is deliberately not dynamic, and requires the restart, because it is so fundamental to how the queue manager permissions operate, and is not something we would expect to be done frequently. • All existing permissions are left unchanged when you switch to user-mode authorisations, so the group permissions that have been set remain, but new permissions can be set for the users. • The user-based model is not the default for new queue managers; to keep compatibility with older systems, the default is still the group-based model. • One final security feature is specifically for Windows, to deal with situations where users have been deleted from the system but their MQ permissions have not been deleted from the OAM. You can now use the setmqaut command to delete permissions based on SID instead of name, and this will remove the orphaned entries.
  • 11. WebSphere MQ IBM Software Group | WebSphere software MQ Security - CHLAUTH Use DNS hostnames in CHLAUTH records Not allowed in TYPE(BLOCKADDR) Used in TYPE(ADDRESSMAP) instead of an IP address Also as an address restrictor on any other mapping type, instead of an IP address, e.g. SET CHLAUTH(‘*’) TYPE(SSLPEERMAP) SSLPEER(‘CN=“Morag Hughson”’) ADDRESS(‘*.ibm.com’) MCAUSER(HUGHSON) Must ensure DNS can reverse look-up IP address -> Hostname Also we provide a way to disable reverse lookup ALTER QMGR REVDNS(ENABLED|DISABLED) CHLAUTH also hooks into other security features in V8 Granular connection authentication control with CHCKCLNT on CHLAUTH rules Better Certificate DN filtering with SSLCERTI on CHLAUTH rules WebSphere MQ IBM Software Group | WebSphere software N O T E S MQ Security - CHLAUTH • The CHLAUTH rules that were introduced in V7.1 have been extended to meet the most frequently-requested enhancement – the ability to use hostnames in the rules as well as IP addresses. Names can be used all the same rules, and in the same way, as IP addresses with the one exception of the listener blocking which is still only address- based. • The hostnames can include wildcard patterns such as "*.example.com". The matching is simple string-based; the "." characters are not treated as special separators.
  • 12. WebSphere MQ IBM Software Group | WebSphere software MQ Security - Certificates Configurable default certificate label for qmgrs and clients Instead of "ibmwebspheremq<qmgr>" or "ibmwebspheremq<userid>“ ALTER QMGR CERTLABL('My certificate name') Channel-level certificates To support different business partners using different CAs. For queue managers and C clients Not Java yet, because Java 7 JSSE does not fully support SNI Both ends must be V8 Per Channel Certificate ALTER CHANNEL … CERTLABL('This channel certificate') Certificate Matching SET CHLAUTH('*') TYPE(SSLPEERMAP) SSLPEER('CN=Morag Hughson') SSLCERTI('CN=IBM CA') MCAUSER('hughson') WebSphere MQ IBM Software Group | WebSphere software N O T E S MQ Security - Certificates • The label used to find the queue manager or client's certificate in the SSL keystore is now configurable. This gives more flexibility in naming, and can even permit sharing of the keystore between multiple queue managers if you wish. On z/OS, there is in addition a configuration attribute for the QSG-related certificate (traditionally "ibmwebspheremq<qsgname>". • A further extension for certificate use is designed for scenarios where you may wish to use different certificates when communicating with different partners. A common reason for this is when a queue manager is used for both "internal-facing" channels and for connections to a partner, who may have different certificate requirements, such as using a different CA. You can now configure a different certificate label to be used on individual channels. The implementation of this requires both ends of the channel to be at MQ V8, as there has to be cooperation between the sending side and the receiving side of the channel. And it is not available in all environments; in particular, Java clients cannot currently participate as the standard JSSE provider does not yet support the Server Name Indication (SNI) flows that go alongside the socket setup calls.
  • 13. WebSphere MQ IBM Software Group | WebSphere software Multiplexed client performance Version 7 introduced support for SHARECNV Multiple client conversations (e.g. threads) can use the same TCP/IP socket (channel instance) SHARECNV(0) No conversation sharing, behaviour as per version 6 SHARECNV(1) No conversation sharing Heartbeats, asynchronous message consumption and read-ahead support SHARECNV(n>1) Up to n conversations per channel instance - reduces number of sockets and channel instances Performance improvements On distributed, SHARECNV(n>1) can impact performance if multiple conversations are busy due to contention for the socket In version 8, SHARECNV(1) optimized for parity with SHARECNV(0) WebSphere MQ IBM Software Group | WebSphere software N O T E S Multiplexed client performance • Prior to version 7 each client conversation uses a separate socket and channel instance. If clients establish multiple conversations using different threads this can create a large demand for sockets on the server. Each channel instance also requires storage on the queue manager. • In version 7 support was added to allow client conversations to share the same socket/channel instance. This can significantly reduce the resource overhead associated with these connections. Support for bi-directional communication was also introduced that supports new capabilities, such as heartbeats, read-ahead and asynchronous message consumption. • However, if multiple conversations share the same socket, contention can arise if the total workload for the conversations exceeds the capacity of the socket. Additionally, an overhead is also introduced to serialize access when sending and receiving TCP/IP data. • SHARECNV(0) disables all version 7 enhancements. SHARECNV(1) can be used to disable only conversation sharing. Unfortunately, in version 7 the latter incurs a notable performance overhead as a result of enabling the other version 7 capabilities. In version 8, support for SHARECNV(1) has been optimized to achieve parity with SHARECNV(0).
  • 14. WebSphere MQ IBM Software Group | WebSphere software Distributed vertical scaling Vertical scaling of distributed queue managers has been enhanced Various efficiency improvements, including Better cache alignment Extended 64-bit exploitation for locking primitives Better compiler optimisations Faster data conversion, especially for UTF-8 Object catalogue restructured Better exploitation of SMP machines Less targeted at internal benchmarks – hopefully more realistic scenarios WebSphere MQ IBM Software Group | WebSphere software N O T E S Distributed vertical scaling • A number of enhancements have been implemented in version 8 to improve the vertical scaling of queue managers on the distributed platforms. Some of these improvements are listed on the previous slide. • We’ve also updated the focus of our performance testing to be less reliant on some internal benchmarks that do not represent realistic customer workloads. Although each customer workload is different, so guarantees are not possible, the performance improvements in version 8 are more likely to be relevant to real-world scenarios.
  • 15. WebSphere MQ IBM Software Group | WebSphere software Publish/subscribe improvements Improved PROXYSUB(FORCE) behaviour Version 7 uses individual proxy subscriptions Version 8 uses wildcards where appropriate to reduce flows Improved error handling in multi-queue manager environments Improved scaling for large topic trees Linear scaling to at least a million topics Improved DISPLAY PUBSUB Allows detection of unexpected growth in topics/subscriptions AMQ8723: Display pub/sub status details. QMNAME(QMGR3) TYPE(LOCAL) STATUS(ACTIVE) SUBCOUNT(241) TPCOUNT(105) WebSphere MQ IBM Software Group | WebSphere software N O T E S Publish/subscribe improvements • In a publish/subscribe hierarchy, or cluster, proxy subscriptions are used to indicate which queue managers in the topology publications need to be propagated to for remote subscribers. If applications have short-lived subscriptions the delay incurred propagating the proxy subscriptions to all queue managers can result in some remote publications not being delivered. PROXYSUB(FORCE) can be specified on a topic to force all publications to be propagated to all remote queue managers. This avoids this problem at the expense of propagating messages even when there are no subscribers connected to a queue manager. In version 8 using PROXYSUB(FORCE) also significantly reduces the overhead of propagating proxy subscriptions for a given topic node. • Internal topic tree management has been enhanced for large numbers of topics. Performance should scale linearly up to at least a million topics. • The DISPLAY PUBSUB command has also been enhanced to report the total number of topics and subscribers. This can be used to detect growth in these and help determine the potential impact of a wildcard in a DISPLAY TOPIC/SUB/TPSTATUS/SBSTATUS command.
  • 16. WebSphere MQ IBM Software Group | WebSphere software Routed Publish/Subscribe In version 7, all queue managers in a cluster know everything and need to be able to connect to anyone CLUS1 FR TOPIC(T1) CLUSTER(CLUS1) Sub to T1 Pub to T1 Queue manager CLUSQMGR knowledge Channel Proxy subscription WebSphere MQ IBM Software Group | WebSphere software Routed Publish/subscribe In version 8 you can configure a subset of queue managers to know everything and connect to everyone Publications are sent via these queue managers Queue manager CLUSQMGR knowledge Channel Proxy subscription CLUS1 TOPIC(TOPIC1) CLUSTER(CLUS1) FR Sub to T1 Pub to T1
  • 17. WebSphere MQ IBM Software Group | WebSphere software Configuration of routed topics Topic routing is configured in the TOPIC object definition Uses the CLROUTE property: DIRECT: Provides V7 behaviour, publications travel directly from publishing queue managers to subscribing queue managers TOPICHOST: publications travel via a topic hosting queue manager New function in MQ V8 Only V8 queue managers can participate in routed clustered publish/subscribe Full repositories must also be at V8 Older queue managers are not told of the routed topic definitions and therefore behave as if the topic was not clustered. All V7 queue managers can continue to participate in direct clustered pub/sub DEFINE TOPIC(topic) CLUSTER(clustername) CLROUTE(DIRECT|TOPICHOST) WebSphere MQ IBM Software Group | WebSphere software N O T E S Routed topics • In previous releases, if publish/subscribe is used within a cluster, all queue managers require knowledge of all subscriptions throughout the cluster for publications to locally connected applications. • Similarly, every queue manager requires connectivity to every other queue manager to establish proxy- subscriptions and/or deliver publications throughout the cluster. • Now routing via intermediary queue managers in the cluster is possible – The aim is to allow topologies where queue manager-to-queue manager connectivity and knowledge is restricted • With DIRECT pub/sub: – Direct publication routing – Every queue manager must scale with the size of the system • With ROUTED pub/sub – The load on the majority of queue managers is independent from the size of the system – Publications may incur additional hops • Messages published on topic host routed topics are similar to messages put to clustered queues: – Think of a routed topic def as a clustered queue and a publisher to the topic as an app putting to that queue – Each message published is sent to one of the topic host queue managers, and from there onto the queue managers where subscriptions exist – Messages are workload balanced across all topic hosts with available channels from the publishing queue manager to the topic hosts • Unavailable topic hosts are avoided – Workload balancing behaviour is as for a clustered queue using all default settings (CLWLPRTY, CLWLRANK, etc.) except for DEFBIND, which is effectively set to NOT_FIXED • Each individual message is ‘evenly’ workload balanced across topic hosts • Workload balancing is based on the cluster channel rather than the topic (as for queues), so channel workload balancing control still applies (CLWLPRTY, CLWLRANK, CLWLWGHT)
  • 18. WebSphere MQ IBM Software Group | WebSphere software Multiple cluster transmission queues Multiple cluster transmission queues added in V7.5 Support for z/OS and IBM i added in V8 Benefits of using multiple transmission queues Separation of message traffic With a single transmission queue, pending messages for one channel can interfere with those for another, especially when messages build up on the queue Management of messages Use of queue concepts such as MAXDEPTH are not useful when using a single transmission queue for all cluster-sender channels System monitoring Tracking the number of messages processed by a cluster-sender channel is not possible using queue monitoring if a single transmission queue is shared by multiple channels, although some information is available using channel status WebSphere MQ IBM Software Group | WebSphere software N O T E S Multiple cluster transmission queues • Support for multiple cluster transmission queues was added on the distributed platforms in version 7.5. Version 8 adds support for this capability on z/OS and IBM i. • A different transmission queue can now be used by each cluster-sender channel, or a subset of cluster-sender channels, instead of all channels using SYSTEM.CLUSTER.TRANSMIT.QUEUE. • The introduction of multiple cluster transmission queues is not designed to improve performance, but to provide a capability to isolate message traffic. – It is quicker to assess the impact of an issue if traffic is separated for different applications. – If a queue manager is a member of multiple clusters, a different transmission queue can be used for each cluster. This can prevent a build up of messages for one cluster, that results in a full page set or MAXDEPTH being reached, impacting the other clusters. – If messages for different applications are sent over different cluster channels* a problem for one application can be prevented from impacting others. • * This can be achieved by using a separate cluster for each application, which may overlap with other clusters, or hosting the target queues for each application on different cluster queue managers.
  • 19. WebSphere MQ IBM Software Group | WebSphere software Configuring cluster transmission queues DEFCLXQ queue manager attribute Default transmission queue for cluster-sender channels SCTQ Use SYSTEM.CLUSTER.TRANSMIT.QUEUE CHANNEL Create a permanent-dynamic transmission queue per cluster-sender channel called SYSTEM.CLUSTER.TRANSMIT.<channel name> CLCHNAME queue attribute Set on a manually defined transmission queue Generic name for channels that should use it DEFINE QLOCAL(CLUSTER.XMITQ1) USAGE(XMITQ) CLCHNAME(‘AAA.*’) … Most specific match is used by a channel WebSphere MQ IBM Software Group | WebSphere software N O T E S Configuring cluster transmission queues • The transmission queue to use for each channel can be configured in two ways: • A manually defined transmission queue can be configured using the CLCHNAME attribute. The value of this attribute is a generic, or specific, name for the channels that should use it. The mapping is defined on the transmission queue instead of the channel because the channel’s definition is determined from the cluster-receiver definition on the remote queue manager. If a channel’s name matches multiple CLCHNAME values the most specific match is used to determine which transmission queue to use. • If no matching queue is found the queue manager uses the default transmission queue setting, specified by the DEFCLXQ queue manager attribute, to determine which transmission queue to use. This attribute indicates whether to use SYSTEM.CLUSTER.TRANSMIT.QUEUE or to create a permanent-dynamic transmission queue called SYSTEM.CLUSTER.TRANSMIT.<channel name>.
  • 20. WebSphere MQ IBM Software Group | WebSphere software MQ for z/OS: 64-bit bufferpools 64-bit buffer pools in MQ for z/OS Allows large numbers of messages to be cached before writing to pagesets Allows MQ to exploit the vast amount of storage on today's machines Improves performance of putting/getting messages by minimizing disk I/O Minimizes administrative overhead of managing buffer pools Buffer pool LOCATION attribute says where it is located relative to the bar BELOW: The default. Buffer pool is located below the bar in 31 bit storage ABOVE: Buffer pool is located above the bar in 64 bit storage This can be altered dynamically Storage can be pinned based on pageclass attribute WebSphere MQ IBM Software Group | WebSphere software N O T E S Buffer pool problems before V8 • There is not much space below the bar for buffer pools once queue manager code and data is taken into account. Maximum 1.6GB available for buffer pools depending on common area • Putting/getting messages into the buffer pool works at 'memory' speed, putting/getting messages from the page set works at 'disk' speed • For scenarios where several applications read and/or write large number of messages to the same buffer pool a lot of time is spent getting pages from page set into buffer pool and getting pages from buffer pool into page set – This is detrimental for performance • A maximum of 16 buffer pools are supported while up to 100 page sets are supported • This can result in a lot of time spent tuning buffer pool sizes and the relationship between queues, buffer pools and page sets • These problems are resolved by allowing bufferpools to be defined in 64-bit space, above the bar
  • 21. WebSphere MQ IBM Software Group | WebSphere software MQ for z/OS: 64-bit bufferpools Buffer pools above the bar can (theoretically) use up to 16 EB storage Increased maximum size of pool to 999,999,999 buffers Was 500,000 Allows up to 100 buffer pools Previously only 16 Can have a 1-1 page set – buffer pool mapping DATA CODE DATA Buffer Pool Buffer Pool Buffer Pool Buffer Pool 2 GB BAR 16 EB Up to 1.6 GB Available Queue Manager Address Space Buffer Pool WebSphere MQ IBM Software Group | WebSphere software N O T E S MQ for z/OS: 64-bit bufferpools • 64-bit bufferpools can now theoretically use a huge amount of storage • Having the same number of pools and pagesets makes it much simpler to monitor and control the usage of these resources • SMF 115, subtype 215 – Up to 100 buffer pools are now supported. However there is not enough space for 100 buffer manager statistics records (QPST) in the existing SMF 115, subtype 2, record – If OPMODE(NEWFUNC,800) is specified in system parameters then an SMF 115, subtype 215, record will be cut for buffer manager statistics. The SMF 115, subtype 2, record will still contain the self-defining section for buffer manager but it will be all zeros – If OPMODE(COMPAT,800) is specified in system parameters then buffer manager statistics will continue to be in SMF 115, subtype 2.
  • 22. WebSphere MQ IBM Software Group | WebSphere software MQ for z/OS: Performance and Capacity Log RBA constraint relief Already improved messages to warn of approaching RBA Now widening RBA field from 6 to 8 bytes At 100MB/sec this will now take about 5578 years to fill, whereas with 6 byte RBA some customers reach the limit in 12-18 months Support for LP64 batch/RRS C applications Performance enhancements for IBM Information Replicator (QRep) and similar application patterns Read-ahead and changes to deferred write processing allows MQ to increase sustainable data rates General improvements to channel performance WebSphere MQ IBM Software Group | WebSphere software N O T E S Log RBA extensions • WebSphere MQ for z/OS V7 implements a 6 byte Log RBA (Relative Byte Address) – This give an RBA range of 0 to x'FFFFFFFFFFFF' (= 255TB) – Some customers are now reaching this limit in 12 months • If we reach the end of the Log RBA range (i.e. “wrap”): – Queue Manager terminates and requires a cold start – a disruptive outage – Potential for loss of persistent data • To avoid an outage: – Run CSQUTIL RESETPAGE, at regular planned intervals, to RESET the LOG RBA • With current maintenance, MQ V7.x issues warning messages when approaching maximum – Then terminates, to prevent loss of data, if log RBA reaches x'FFF800000000'. • V8 increases size of Log RBA to 8 bytes – Upper limit on logical log will be 64K times bigger – Format of BSDS and log records will change to accommodate 8 byte RBAs, URIDs will become 8 bytes long – Like DB2, the control point for new function is a BSDS conversion utility – Run the new CSQJUCNV utility • utility will check that entire QSG is at correct level • copies data from old primary / secondary BSDS pair to new primary / secondary pair • All V8 queue managers can read data in both the old and new formats • All V8 queue managers and utilities will display all log RBAs as 8 bytes • V8 will ONLY write in new format, once BSDS has been converted
  • 23. WebSphere MQ IBM Software Group | WebSphere software N O T E S LP64 Support • Externalising technology previously used by Broker and JMS • Limited to C language (no 64bit COBOL) – LP64 compile option – Supported by cmqc.h • Restricted environments – Batch, TSO, USS – CICS and IMS do not support 64bit apps • Must use sidedeck & DLL, not stubs: – csqbmq2x (uncoordinated batch & USS) – csqbrr2x (RRS coordinated, srrcmit()) – csqbri2x (RRS coordinated, MQCMIT) WebSphere MQ IBM Software Group | WebSphere software N O T E S Performance improvements • QRep has implemented a common application pattern – basically a single-stream reading or writing of messages. That program, and others that follow the same pattern, can benefit from some of the performance enhancements in MQ. For example, fetching data for the "next message" from a pageset at the same time as for the "current message" (readahead) can reduce the I/O operations and hence reduce CPU and increase throughput.
  • 24. WebSphere MQ IBM Software Group | WebSphere software MQ for z/OS: Other features Exploitation of zEDC compression accelerator MSGCOMP(ZLIBFAST) Requires zEC12 GA2 + zEDC card Can yield higher throughput and reduced CPU for SSL channels Support for Flash Express feature on zEC12 and zBC12 servers Improves resiliency of Coupling Facility with cost-effective standby capacity to handle overflow of shared queues Messages <63K fully held in Flash Messages >63K have pointers in Flash, body in SMDS just as for traditional CF structures SMF enhancements Channel statistics allow better monitoring and tuning of channel behaviour Correlation of MQ and CICS statistics Message suppression Up to 16 message numbers (particularly X511,X512) can be defined to be excluded Removes cost of writing WTO messages which are then ignored Can now differentiate between messages for client chls (X511) and other types (X500) WebSphere MQ IBM Software Group | WebSphere software N O T E S MQ for z/OS: Other features • A number of internal performance improvements have been implemented in version 8, including some internal optimisations in the channel initiator. • Some changes have been introduced to significantly improve performance for IBM Information Replicator (QREP). This product is used to replicate DB2 logs from one system to another. It is used for disaster recovery and in IBM’s active-active solution for z/OS. The improvements made for this type of workload include support for pre- fetching pages from page sets in to buffers and optimizations to the algorithm used to write data to page sets too. These improvements are likely to also benefit other customer workloads. • If you configure channel compression using MSGCOMP(ZLIBFAST) and you are running on suitable zEC12 hardware, a zEDC card is exploited if available. This can improve performance as well as reducing CPU activity. • Another improvement, although not strictly for performance, is the introduction of a new system parameter, EXCLMSG, that allows you to suppress up to 16 console messages. This can be used to reduce ‘noise’ on the console. It is preferable to using the z/OS Message Processing Facility (MPF) to suppress messages, because using this parameter avoids the CPU overhead of generating the message and issuing the WTO.
  • 25. WebSphere MQ IBM Software Group | WebSphere software IBM has a 20 year track record of innovation in Messaging 1990s 2000s JMS MQI Assured delivery IBM MQSeries Multi-platform Mobile .NET Common criteria Eclipse JMS 1.1 RCMS IBM MQ Low Latency V1.1 V2 V5 V5.1 V5.3 V2.1 V5.2 V6 V7 V7.0.1 SSL SOAP XML IBM MQ Managed File Transfer IBM MQTT HTTP AJAX REST Web 2.0 Managed File Transfer Pub/sub IBM MQ Everyplace IBM MQ Advanced Message Security V7.1 V7.5 Integrated Messaging Hypervisors IBM MQ Advanced System Pattern Application Pattern IBM MQ Advanced for Developers IBM MessageSight Multiple cluster XMIT queue Multi-instance QMGR IBM MQ Low Latency 20th Anniversary of MQ at IMPACT V8 2010s WebSphere MQ IBM Software Group | WebSphere software And continues to invest in all Messaging markets Enterprise Messaging where MQ continues to lead Messaging for Mobile and the Internet of Things Supporting Cloud deployments with Messaging services Helping developers use Application Messaging to create better applications