Note
|
The Grid Community Toolkit documentation was taken from the Globus Toolkit 6.0 documentation. As a result, there may be inaccuracies and outdated information. Please report any problems to the Grid Community Forums as GitHub issues. |
Component Overview
Globus XIO is an extensible input/output library written in C for the Grid Community Toolkit. It provides a single API (open/close/read/write) that supports multiple wire protocols, with protocol implementations encapsulated as drivers. The XIO drivers distributed with 6.2 include TCP, UDP, file, HTTP, GSI, GSSAPI_FTP, TELNET and queuing. In addition, Globus XIO provides a driver development interface for use by protocol developers. This interface allows the developer to concentrate on writing protocol code rather than infrastructure, as XIO provides a framework for error handling, asynchronous message delivery, timeouts, etc. The XIO driver-based approach maximizes the reuse of code by supporting the notion of a driver stack. XIO drivers can be written as atomic units and stacked on top of one another. This modularization provides maximum flexibility and simplifies the design and evaluation of individual protocols.
Feature summary
Supported Features
-
Driver specific string attributes. Set values like tcp buffer size via string at runtime.
-
UDT driver.
-
Mode E Driver
-
Telnet Driver
-
Queuing Driver
-
Ordering Driver
-
Dynamically loadable drivers.
-
Single API to swappable IO implementations.
-
Asynchronous IO support.
-
Native timeout support.
-
Data descriptors for providing driver specific hints.
-
Modular driver stacks to maximize code reuse.
-
TCP, UDP, file, HTTP, telnet, mode E, GSI drivers.
Deprecated Features
-
GSSAPI_FTP driver now distributed with the GridFTP Server
Summary of Changes in XIO
New Features: XIO
-
None.
Improvements: XIO
-
None.
Fixed Bugs for XIO
-
None.
Known Problems in XIO
-
GT-54: Globus XIO close call can deadlock
Technology dependencies
XIO depends on the following GCT components:
-
Globus Core
-
Globus Common
-
Globus GSSAPI
Tested platforms
Tested Platforms for XIO:
Operating System | Distribution | Version(s) | Architecture(s) |
---|---|---|---|
Linux |
CentOS |
5, 6 |
i386, x86_64 |
7 |
x86_64 |
||
Fedora |
20, 21, 22 |
i386, x86_64 |
|
Red Hat Enterprise Linux |
5, 6 |
i386, x86_64 |
|
7 |
x86_64 |
||
Scientific Linux |
5, 6 |
i386, x86_64 |
|
7 |
x86_64 |
||
SUSE Linux Enterprise Server |
11SP3 |
x86_64 |
|
Debian |
6, 7, 8 |
i386, amd64 |
|
Ubuntu |
12.04LTS, 14.04LTS, 14.10, 15.04 |
i386, amd64 |
|
Mac OS X |
10.6-10.10 |
i386, x86_64 |
|
Solaris |
OmniOS |
r151006 |
x86_64 |
Windows 7 |
Cygwin |
i386, x86_64 |
|
MingW64 |
i386, x86_64 |
Backward compatibility summary
Protocol changes since GT version 6.0
-
None.
API changes since GT version 6.0
-
None.
Associated Standards
Adoption of standards in XIO is determined by the drivers. All drivers distributed by XIO are compliant with the protocol they implement.
For More Information
See XIO for more information about this component.