xrootd
|
#include <XrdClientMStream.hh>
Classes | |
struct | ReadChunk |
Static Public Member Functions | |
static void | GetGoodSplitParameters (XrdClientConn *cliconn, int &spltsize, int &reqsperstream, kXR_int32 len) |
static int | EstablishParallelStreams (XrdClientConn *cliconn) |
static int | AddParallelStream (XrdClientConn *cliconn, int port, int windowsz, int tempid) |
static int | RemoveParallelStream (XrdClientConn *cliconn, int substream) |
static bool | BindPendingStream (XrdClientConn *cliconn, int substreamid, int &newid) |
static bool | SplitReadRequest (XrdClientConn *cliconn, kXR_int64 offset, kXR_int32 len, XrdClientVector< ReadChunk > &reqlists) |
int XrdClientMStream::AddParallelStream | ( | XrdClientConn * | cliconn, |
int | port, | ||
int | windowsz, | ||
int | tempid | ||
) | [static] |
References BindPendingStream(), XrdClientPhyConnection::DoHandShake(), EnvGetLong, XrdClientPhyConnection::EstablishPendingParallelStream(), XrdClientConn::GetLogConnID(), XrdClientConn::GetPhyConn(), XrdClientPhyConnection::GetSockIdCount(), Info, XrdClientPhyConnection::IsValid(), XrdClientDebug::kHIDEBUG, kSTError, NAME_MULTISTREAMCNT, XrdClientPhyConnection::ReinitFDTable(), RemoveParallelStream(), XrdClientPhyConnection::TryConnectParallelStream(), and XrdClientPhyConnection::UnBanSockDescr().
Referenced by ParStreamOpenerThread().
bool XrdClientMStream::BindPendingStream | ( | XrdClientConn * | cliconn, |
int | substreamid, | ||
int & | newid | ||
) | [static] |
References ClientRequest::bind, clientMarshall(), clientUnmarshall(), ConnectionManager, ServerResponseHeader::dlen, Error, XrdClientConn::GetLogConnID(), XrdClientConn::GetSessionID(), ClientRequest::header, XrdClientConn::SessionIDInfo::id, kXR_bind, kXR_ok, XrdClientPhyConnection::ReadRaw(), ClientBindRequest::requestid, ClientBindRequest::sessid, XrdClientConn::SetSID(), ServerResponseHeader::status, ClientRequestHdr::streamid, ServerResponseBody_Bind::substreamid, and XrdClientPhyConnection::WriteRaw().
Referenced by AddParallelStream().
int XrdClientMStream::EstablishParallelStreams | ( | XrdClientConn * | cliconn | ) | [static] |
References ParStreamOpenerArgs::cliconn, ServerResponseHeader::dlen, ClientRequestHdr::dlen, EnvGetLong, Error, XrdClientConn::GetLogConnID(), XrdClientConn::GetPhyConn(), XrdClientConn::GetServerType(), ClientRequest::header, Info, ClientQueryRequest::infotype, XrdClientThread::Join(), XrdClientDebug::kHIDEBUG, kSTBaseXrootd, XrdClientDebug::kUSERDEBUG, kXR_ok, kXR_Qconfig, kXR_query, XrdClientConn::LastServerResp, NAME_MULTISTREAMCNT, ParStreamOpenerThread(), ClientRequest::query, ClientRequestHdr::requestid, XrdClientConn::SendGenCommand(), XrdClientConn::SetSID(), ServerResponseHeader::status, ClientRequestHdr::streamid, XrdClientPhyConnection::TestAndSetMStreamsGoing(), ParStreamOpenerArgs::thr, ParStreamOpenerArgs::tmpid, ParStreamOpenerArgs::wan_port, ParStreamOpenerArgs::wan_window, and XRDCLI_PSOCKTEMP.
Referenced by XrdClient::TryOpen().
void XrdClientMStream::GetGoodSplitParameters | ( | XrdClientConn * | cliconn, |
int & | spltsize, | ||
int & | reqsperstream, | ||
kXR_int32 | len | ||
) | [static] |
References DFLT_MULTISTREAMSPLITSIZE, XrdClientConn::GetParallelStreamCount(), and xrdmax.
Referenced by XrdClient::ReadV(), and SplitReadRequest().
int XrdClientMStream::RemoveParallelStream | ( | XrdClientConn * | cliconn, |
int | substream | ||
) | [static] |
bool XrdClientMStream::SplitReadRequest | ( | XrdClientConn * | cliconn, |
kXR_int64 | offset, | ||
kXR_int32 | len, | ||
XrdClientVector< ReadChunk > & | reqlists | ||
) | [static] |
References GetGoodSplitParameters(), XrdClientConn::GetParallelStreamToUse(), XrdClientMStream::ReadChunk::len, XrdClientMStream::ReadChunk::offset, XrdClientVector< T >::Push_back(), XrdClientMStream::ReadChunk::streamtosend, and xrdmin.
Referenced by XrdClient::Read_Async(), and XrdClient::Write().