proxygen
|
#include <TransportInfo.h>
Public Member Functions | |
std::chrono::milliseconds | getRttMs () const |
bool | initWithSocket (const folly::AsyncSocket *sock) |
Static Public Member Functions | |
static int64_t | readRTT (const folly::AsyncSocket *sock) |
Definition at line 61 of file TransportInfo.h.
|
inline |
bool wangle::TransportInfo::initWithSocket | ( | const folly::AsyncSocket * | sock | ) |
Definition at line 28 of file TransportInfo.cpp.
References cwnd, cwndBytes, mss, rto, rtt, rtt_var, rtx, rtx_tm, ssthresh, tcpinfoErrno, and validTcpinfo.
Referenced by wangle::Acceptor::connectionReady(), and proxygen::HTTPSession::getCurrentTransportInfoWithoutUpdate().
|
static |
Definition at line 74 of file TransportInfo.cpp.
References folly::AsyncSocket::getFd(), and folly::netops::getsockopt().
std::chrono::steady_clock::time_point wangle::TransportInfo::acceptTime {} |
Definition at line 65 of file TransportInfo.h.
Referenced by proxygen::HTTPConnector::connectSuccess().
std::shared_ptr<std::string> wangle::TransportInfo::appProtocol {nullptr} |
The application protocol running on the transport (h2, etc.)
Definition at line 199 of file TransportInfo.h.
Referenced by wangle::Acceptor::connectionReady(), proxygen::HTTPConnector::connectSuccess(), proxygen::HTTPSession::getCurrentTransportInfo(), and proxygen::HTTPSession::onNativeProtocolUpgradeImpl().
std::shared_ptr<folly::SocketAddress> wangle::TransportInfo::clientAddrOriginal |
If the client passed through one of our L4 proxies (using PROXY Protocol), then this will contain the IP address of the proxy host.
Definition at line 222 of file TransportInfo.h.
int32_t wangle::TransportInfo::clientLatency {-1} |
Definition at line 292 of file TransportInfo.h.
int32_t wangle::TransportInfo::connectLatency {-1} |
Definition at line 302 of file TransportInfo.h.
int64_t wangle::TransportInfo::cwnd {-1} |
Definition at line 95 of file TransportInfo.h.
Referenced by initWithSocket().
int64_t wangle::TransportInfo::cwndBytes {-1} |
Definition at line 100 of file TransportInfo.h.
Referenced by initWithSocket().
uint32_t wangle::TransportInfo::egressBodySize {0} |
Definition at line 307 of file TransportInfo.h.
HTTPHeaderSize wangle::TransportInfo::egressHeader |
Definition at line 232 of file TransportInfo.h.
std::shared_ptr<std::string> wangle::TransportInfo::guessedUserAgent {nullptr} |
Definition at line 194 of file TransportInfo.h.
uint32_t wangle::TransportInfo::ingressBodySize {0} |
body bytes read
Definition at line 328 of file TransportInfo.h.
HTTPHeaderSize wangle::TransportInfo::ingressHeader |
header bytes read
Definition at line 227 of file TransportInfo.h.
int32_t wangle::TransportInfo::lastByteAckLatency {-1} |
Definition at line 282 of file TransportInfo.h.
std::shared_ptr<folly::SocketAddress> wangle::TransportInfo::localAddr |
the address of the local side. If the TransportInfo is associated with the downstream transport in a proxy server, this is an VIP address.
Definition at line 216 of file TransportInfo.h.
int64_t wangle::TransportInfo::mss {-1} |
Definition at line 105 of file TransportInfo.h.
Referenced by initWithSocket().
folly::Optional<uint8_t> wangle::TransportInfo::negotiatedTokenBindingKeyParameters |
Definition at line 395 of file TransportInfo.h.
std::shared_ptr<ProtocolInfo> wangle::TransportInfo::protocolInfo {nullptr} |
Definition at line 376 of file TransportInfo.h.
int32_t wangle::TransportInfo::proxyLatency {-1} |
Definition at line 287 of file TransportInfo.h.
std::shared_ptr<folly::SocketAddress> wangle::TransportInfo::remoteAddr |
the address of the remote side. If this is associated with a client socket, it is a server side address. Otherwise, it is a client side address.
Definition at line 210 of file TransportInfo.h.
int64_t wangle::TransportInfo::rto {-1} |
Definition at line 90 of file TransportInfo.h.
Referenced by initWithSocket().
std::chrono::microseconds wangle::TransportInfo::rtt {0} |
Definition at line 70 of file TransportInfo.h.
Referenced by proxygen::HTTPSession::getCurrentTransportInfo(), and initWithSocket().
int64_t wangle::TransportInfo::rtt_var {-1} |
Definition at line 75 of file TransportInfo.h.
Referenced by initWithSocket().
int64_t wangle::TransportInfo::rtx {-1} |
Definition at line 80 of file TransportInfo.h.
Referenced by proxygen::HTTPSession::getCurrentTransportInfo(), and initWithSocket().
int64_t wangle::TransportInfo::rtx_tm {-1} |
Definition at line 85 of file TransportInfo.h.
Referenced by initWithSocket().
bool wangle::TransportInfo::secure {false} |
Definition at line 366 of file TransportInfo.h.
Referenced by proxygen::HTTPConnector::connect(), proxygen::HTTPConnector::connectSSL(), proxygen::HTTPConnector::connectSuccess(), wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields(), proxygen::HTTPSession::getCurrentTransportInfo(), proxygen::HTTPSession::onHeadersComplete(), proxygen::HTTPSession::onNativeProtocolUpgradeImpl(), and proxygen::HTTPSession::readEOF().
std::string wangle::TransportInfo::securityType |
What is providing the security.
Definition at line 371 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
int32_t wangle::TransportInfo::serverLatency {-1} |
Definition at line 297 of file TransportInfo.h.
std::chrono::milliseconds wangle::TransportInfo::setupTime {0} |
Definition at line 127 of file TransportInfo.h.
Referenced by proxygen::HTTPSession::getCurrentTransportInfo().
std::shared_ptr<std::string> wangle::TransportInfo::sslCertSigAlgName {nullptr} |
Definition at line 340 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
uint16_t wangle::TransportInfo::sslCertSize {0} |
Definition at line 345 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::shared_ptr<std::string> wangle::TransportInfo::sslCipher {nullptr} |
Definition at line 143 of file TransportInfo.h.
Referenced by proxygen::HTTPConnector::connectSuccess(), wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields(), proxygen::HTTPSession::getCurrentTransportInfo(), and proxygen::HTTPSession::onHeadersComplete().
std::shared_ptr<std::string> wangle::TransportInfo::sslClientCiphers {nullptr} |
Definition at line 154 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::shared_ptr<std::string> wangle::TransportInfo::sslClientCiphersHex {nullptr} |
Definition at line 159 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::shared_ptr<std::string> wangle::TransportInfo::sslClientComprMethods {nullptr} |
Definition at line 164 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::shared_ptr<std::string> wangle::TransportInfo::sslClientExts {nullptr} |
Definition at line 169 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::shared_ptr<std::string> wangle::TransportInfo::sslClientSigAlgs {nullptr} |
Definition at line 174 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::shared_ptr<std::string> wangle::TransportInfo::sslClientSupportedVersions {nullptr} |
Definition at line 179 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::string wangle::TransportInfo::sslError |
SSL error detail
Definition at line 323 of file TransportInfo.h.
Referenced by proxygen::HTTPSession::getCurrentTransportInfo(), proxygen::HTTPSession::onWriteError(), proxygen::HTTPSession::readErr(), and proxygen::HTTPSession::shutdownTransport().
SSLResumeEnum wangle::TransportInfo::sslResume {SSLResumeEnum::NA} |
Definition at line 356 of file TransportInfo.h.
Referenced by proxygen::HTTPConnector::connectSuccess(), wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields(), and proxygen::HTTPSession::getCurrentTransportInfo().
std::shared_ptr<std::string> wangle::TransportInfo::sslServerCiphers {nullptr} |
Definition at line 189 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::shared_ptr<std::string> wangle::TransportInfo::sslServerName {nullptr} |
Definition at line 149 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
uint32_t wangle::TransportInfo::sslSetupBytesRead {0} |
Definition at line 318 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
uint32_t wangle::TransportInfo::sslSetupBytesWritten {0} |
Definition at line 317 of file TransportInfo.h.
Referenced by wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields().
std::chrono::milliseconds wangle::TransportInfo::sslSetupTime {0} |
Definition at line 137 of file TransportInfo.h.
Referenced by proxygen::HTTPConnector::connectSuccess(), and proxygen::HTTPSession::getCurrentTransportInfo().
std::shared_ptr<std::string> wangle::TransportInfo::sslSignature {nullptr} |
Definition at line 184 of file TransportInfo.h.
uint16_t wangle::TransportInfo::sslVersion {0} |
Definition at line 335 of file TransportInfo.h.
Referenced by proxygen::HTTPConnector::connectSuccess(), wangle::SSLAcceptorHandshakeHelper::fillSSLTransportInfoFields(), proxygen::HTTPSession::getCurrentTransportInfo(), and proxygen::HTTPSession::onHeadersComplete().
int64_t wangle::TransportInfo::ssthresh {-1} |
Definition at line 110 of file TransportInfo.h.
Referenced by initWithSocket().
uint16_t wangle::TransportInfo::statusCode {0} |
response status code
Definition at line 350 of file TransportInfo.h.
int wangle::TransportInfo::tcpinfoErrno {0} |
Definition at line 312 of file TransportInfo.h.
Referenced by initWithSocket().
std::shared_ptr<std::string> wangle::TransportInfo::tcpSignature {nullptr} |
Definition at line 382 of file TransportInfo.h.
bool wangle::TransportInfo::tfoSucceded {false} |
Definition at line 389 of file TransportInfo.h.
int32_t wangle::TransportInfo::timeToFirstByte {-1} |
Definition at line 265 of file TransportInfo.h.
int32_t wangle::TransportInfo::timeToFirstHeaderByte {-1} |
Definition at line 260 of file TransportInfo.h.
int32_t wangle::TransportInfo::timeToLastBodyByteAck {-1} |
Definition at line 275 of file TransportInfo.h.
int32_t wangle::TransportInfo::timeToLastByte {-1} |
Definition at line 270 of file TransportInfo.h.
int64_t wangle::TransportInfo::totalBytes {0} |
Definition at line 204 of file TransportInfo.h.
Referenced by proxygen::HTTPSession::onWriteSuccess().
bool wangle::TransportInfo::validTcpinfo {false} |
Definition at line 361 of file TransportInfo.h.
Referenced by initWithSocket().