mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-29 13:05:46 +00:00
9cb332f0e2
Uses the hooks added by tailscale/go#45 to instrument the reads and writes on the major code paths that do network I/O in the client. The convention is to use "<package>.<type>:<label>" as the annotation for the responsible code path. Enabled on iOS, macOS and Android only, since mobile platforms are the ones we're most interested in, and we are less sensitive to any throughput degradation due to the per-I/O callback overhead (macOS is also enabled for ease of testing during development). For now just exposed as counters on a /v0/sockstats PeerAPI endpoint. We also keep track of the current interface so that we can break out the stats by interface. Updates tailscale/corp#9230 Updates #3363 Signed-off-by: Mihai Parparita <mihai@tailscale.com>
217 lines
20 KiB
Plaintext
217 lines
20 KiB
Plaintext
tailscale.com/cmd/derper dependencies: (generated by github.com/tailscale/depaware)
|
|
|
|
filippo.io/edwards25519 from github.com/hdevalence/ed25519consensus
|
|
filippo.io/edwards25519/field from filippo.io/edwards25519
|
|
W 💣 github.com/Microsoft/go-winio from tailscale.com/safesocket
|
|
W 💣 github.com/Microsoft/go-winio/internal/socket from github.com/Microsoft/go-winio
|
|
W github.com/Microsoft/go-winio/pkg/guid from github.com/Microsoft/go-winio+
|
|
W 💣 github.com/alexbrainman/sspi from github.com/alexbrainman/sspi/internal/common+
|
|
W github.com/alexbrainman/sspi/internal/common from github.com/alexbrainman/sspi/negotiate
|
|
W 💣 github.com/alexbrainman/sspi/negotiate from tailscale.com/net/tshttpproxy
|
|
github.com/fxamacker/cbor/v2 from tailscale.com/tka
|
|
github.com/golang/groupcache/lru from tailscale.com/net/dnscache
|
|
github.com/hdevalence/ed25519consensus from tailscale.com/tka
|
|
L github.com/josharian/native from github.com/mdlayher/netlink+
|
|
L 💣 github.com/jsimonetti/rtnetlink from tailscale.com/net/interfaces+
|
|
L github.com/jsimonetti/rtnetlink/internal/unix from github.com/jsimonetti/rtnetlink
|
|
github.com/klauspost/compress/flate from nhooyr.io/websocket
|
|
L 💣 github.com/mdlayher/netlink from github.com/jsimonetti/rtnetlink+
|
|
L 💣 github.com/mdlayher/netlink/nlenc from github.com/jsimonetti/rtnetlink+
|
|
L 💣 github.com/mdlayher/socket from github.com/mdlayher/netlink
|
|
💣 github.com/mitchellh/go-ps from tailscale.com/safesocket
|
|
github.com/x448/float16 from github.com/fxamacker/cbor/v2
|
|
💣 go4.org/mem from tailscale.com/client/tailscale+
|
|
go4.org/netipx from tailscale.com/wgengine/filter
|
|
W 💣 golang.zx2c4.com/wireguard/windows/tunnel/winipcfg from tailscale.com/net/interfaces+
|
|
nhooyr.io/websocket from tailscale.com/cmd/derper+
|
|
nhooyr.io/websocket/internal/errd from nhooyr.io/websocket
|
|
nhooyr.io/websocket/internal/xsync from nhooyr.io/websocket
|
|
tailscale.com from tailscale.com/version
|
|
tailscale.com/atomicfile from tailscale.com/cmd/derper+
|
|
tailscale.com/client/tailscale from tailscale.com/derp
|
|
tailscale.com/client/tailscale/apitype from tailscale.com/client/tailscale
|
|
tailscale.com/derp from tailscale.com/cmd/derper+
|
|
tailscale.com/derp/derphttp from tailscale.com/cmd/derper
|
|
tailscale.com/disco from tailscale.com/derp
|
|
tailscale.com/envknob from tailscale.com/derp+
|
|
tailscale.com/health from tailscale.com/net/tlsdial
|
|
tailscale.com/hostinfo from tailscale.com/net/interfaces+
|
|
tailscale.com/ipn from tailscale.com/client/tailscale
|
|
tailscale.com/ipn/ipnstate from tailscale.com/client/tailscale+
|
|
tailscale.com/metrics from tailscale.com/cmd/derper+
|
|
tailscale.com/net/dnscache from tailscale.com/derp/derphttp
|
|
tailscale.com/net/flowtrack from tailscale.com/net/packet+
|
|
💣 tailscale.com/net/interfaces from tailscale.com/net/netns+
|
|
tailscale.com/net/netaddr from tailscale.com/ipn+
|
|
tailscale.com/net/netknob from tailscale.com/net/netns
|
|
tailscale.com/net/netns from tailscale.com/derp/derphttp
|
|
tailscale.com/net/netutil from tailscale.com/client/tailscale
|
|
tailscale.com/net/packet from tailscale.com/wgengine/filter
|
|
tailscale.com/net/sockstats from tailscale.com/derp/derphttp
|
|
tailscale.com/net/stun from tailscale.com/cmd/derper
|
|
tailscale.com/net/tlsdial from tailscale.com/derp/derphttp
|
|
tailscale.com/net/tsaddr from tailscale.com/ipn+
|
|
💣 tailscale.com/net/tshttpproxy from tailscale.com/derp/derphttp+
|
|
tailscale.com/net/wsconn from tailscale.com/cmd/derper+
|
|
tailscale.com/paths from tailscale.com/client/tailscale
|
|
tailscale.com/safesocket from tailscale.com/client/tailscale
|
|
tailscale.com/syncs from tailscale.com/cmd/derper+
|
|
tailscale.com/tailcfg from tailscale.com/client/tailscale+
|
|
tailscale.com/tka from tailscale.com/client/tailscale+
|
|
W tailscale.com/tsconst from tailscale.com/net/interfaces
|
|
💣 tailscale.com/tstime/mono from tailscale.com/tstime/rate
|
|
tailscale.com/tstime/rate from tailscale.com/wgengine/filter
|
|
tailscale.com/tsweb from tailscale.com/cmd/derper
|
|
tailscale.com/types/dnstype from tailscale.com/tailcfg
|
|
tailscale.com/types/empty from tailscale.com/ipn
|
|
tailscale.com/types/ipproto from tailscale.com/net/flowtrack+
|
|
tailscale.com/types/key from tailscale.com/cmd/derper+
|
|
tailscale.com/types/lazy from tailscale.com/version+
|
|
tailscale.com/types/logger from tailscale.com/cmd/derper+
|
|
tailscale.com/types/netmap from tailscale.com/ipn
|
|
tailscale.com/types/opt from tailscale.com/client/tailscale+
|
|
tailscale.com/types/persist from tailscale.com/ipn
|
|
tailscale.com/types/preftype from tailscale.com/ipn
|
|
tailscale.com/types/ptr from tailscale.com/hostinfo+
|
|
tailscale.com/types/structs from tailscale.com/ipn+
|
|
tailscale.com/types/tkatype from tailscale.com/types/key+
|
|
tailscale.com/types/views from tailscale.com/ipn/ipnstate+
|
|
W tailscale.com/util/clientmetric from tailscale.com/net/tshttpproxy
|
|
tailscale.com/util/cloudenv from tailscale.com/hostinfo+
|
|
W tailscale.com/util/cmpver from tailscale.com/net/tshttpproxy
|
|
L 💣 tailscale.com/util/dirwalk from tailscale.com/metrics
|
|
tailscale.com/util/dnsname from tailscale.com/hostinfo+
|
|
tailscale.com/util/httpm from tailscale.com/client/tailscale
|
|
tailscale.com/util/lineread from tailscale.com/hostinfo+
|
|
tailscale.com/util/mak from tailscale.com/syncs+
|
|
tailscale.com/util/multierr from tailscale.com/health
|
|
tailscale.com/util/set from tailscale.com/health+
|
|
tailscale.com/util/singleflight from tailscale.com/net/dnscache
|
|
tailscale.com/util/vizerror from tailscale.com/tsweb
|
|
W 💣 tailscale.com/util/winutil from tailscale.com/hostinfo+
|
|
tailscale.com/version from tailscale.com/derp+
|
|
tailscale.com/version/distro from tailscale.com/hostinfo+
|
|
tailscale.com/wgengine/filter from tailscale.com/types/netmap
|
|
tailscale.com/wgengine/monitor from tailscale.com/net/sockstats
|
|
golang.org/x/crypto/acme from golang.org/x/crypto/acme/autocert
|
|
golang.org/x/crypto/acme/autocert from tailscale.com/cmd/derper
|
|
golang.org/x/crypto/argon2 from tailscale.com/tka
|
|
golang.org/x/crypto/blake2b from golang.org/x/crypto/nacl/box+
|
|
golang.org/x/crypto/blake2s from tailscale.com/tka
|
|
golang.org/x/crypto/chacha20 from golang.org/x/crypto/chacha20poly1305
|
|
golang.org/x/crypto/chacha20poly1305 from crypto/tls
|
|
golang.org/x/crypto/cryptobyte from crypto/ecdsa+
|
|
golang.org/x/crypto/cryptobyte/asn1 from crypto/ecdsa+
|
|
golang.org/x/crypto/curve25519 from golang.org/x/crypto/nacl/box+
|
|
golang.org/x/crypto/hkdf from crypto/tls
|
|
golang.org/x/crypto/nacl/box from tailscale.com/types/key
|
|
golang.org/x/crypto/nacl/secretbox from golang.org/x/crypto/nacl/box
|
|
golang.org/x/crypto/salsa20/salsa from golang.org/x/crypto/nacl/box+
|
|
golang.org/x/exp/constraints from golang.org/x/exp/slices
|
|
golang.org/x/exp/slices from tailscale.com/net/tsaddr+
|
|
L golang.org/x/net/bpf from github.com/mdlayher/netlink+
|
|
golang.org/x/net/dns/dnsmessage from net+
|
|
golang.org/x/net/http/httpguts from net/http
|
|
golang.org/x/net/http/httpproxy from net/http
|
|
golang.org/x/net/http2/hpack from net/http
|
|
golang.org/x/net/idna from golang.org/x/crypto/acme/autocert+
|
|
golang.org/x/net/proxy from tailscale.com/net/netns
|
|
D golang.org/x/net/route from net+
|
|
golang.org/x/sync/errgroup from github.com/mdlayher/socket+
|
|
golang.org/x/sys/cpu from golang.org/x/crypto/blake2b+
|
|
LD golang.org/x/sys/unix from github.com/jsimonetti/rtnetlink/internal/unix+
|
|
W golang.org/x/sys/windows from golang.org/x/sys/windows/registry+
|
|
W golang.org/x/sys/windows/registry from golang.zx2c4.com/wireguard/windows/tunnel/winipcfg+
|
|
W golang.org/x/sys/windows/svc from golang.org/x/sys/windows/svc/mgr+
|
|
W golang.org/x/sys/windows/svc/mgr from tailscale.com/util/winutil
|
|
golang.org/x/text/secure/bidirule from golang.org/x/net/idna
|
|
golang.org/x/text/transform from golang.org/x/text/secure/bidirule+
|
|
golang.org/x/text/unicode/bidi from golang.org/x/net/idna+
|
|
golang.org/x/text/unicode/norm from golang.org/x/net/idna
|
|
golang.org/x/time/rate from tailscale.com/cmd/derper+
|
|
bufio from compress/flate+
|
|
bytes from bufio+
|
|
compress/flate from compress/gzip+
|
|
compress/gzip from internal/profile+
|
|
container/list from crypto/tls+
|
|
context from crypto/tls+
|
|
crypto from crypto/ecdsa+
|
|
crypto/aes from crypto/ecdsa+
|
|
crypto/cipher from crypto/aes+
|
|
crypto/des from crypto/tls+
|
|
crypto/dsa from crypto/x509
|
|
crypto/ecdh from crypto/ecdsa+
|
|
crypto/ecdsa from crypto/tls+
|
|
crypto/ed25519 from crypto/tls+
|
|
crypto/elliptic from crypto/ecdsa+
|
|
crypto/hmac from crypto/tls+
|
|
crypto/md5 from crypto/tls+
|
|
crypto/rand from crypto/ed25519+
|
|
crypto/rc4 from crypto/tls
|
|
crypto/rsa from crypto/tls+
|
|
crypto/sha1 from crypto/tls+
|
|
crypto/sha256 from crypto/tls+
|
|
crypto/sha512 from crypto/ecdsa+
|
|
crypto/subtle from crypto/aes+
|
|
crypto/tls from golang.org/x/crypto/acme+
|
|
crypto/x509 from crypto/tls+
|
|
crypto/x509/pkix from crypto/x509+
|
|
embed from crypto/internal/nistec+
|
|
encoding from encoding/json+
|
|
encoding/asn1 from crypto/x509+
|
|
encoding/base32 from tailscale.com/tka
|
|
encoding/base64 from encoding/json+
|
|
encoding/binary from compress/gzip+
|
|
encoding/hex from crypto/x509+
|
|
encoding/json from expvar+
|
|
encoding/pem from crypto/tls+
|
|
errors from bufio+
|
|
expvar from tailscale.com/cmd/derper+
|
|
flag from tailscale.com/cmd/derper
|
|
fmt from compress/flate+
|
|
hash from crypto+
|
|
hash/crc32 from compress/gzip+
|
|
hash/maphash from go4.org/mem
|
|
html from net/http/pprof+
|
|
io from bufio+
|
|
io/fs from crypto/x509+
|
|
io/ioutil from github.com/mitchellh/go-ps+
|
|
log from expvar+
|
|
math from compress/flate+
|
|
math/big from crypto/dsa+
|
|
math/bits from compress/flate+
|
|
math/rand from github.com/mdlayher/netlink+
|
|
mime from mime/multipart+
|
|
mime/multipart from net/http
|
|
mime/quotedprintable from mime/multipart
|
|
net from crypto/tls+
|
|
net/http from expvar+
|
|
net/http/httptrace from net/http+
|
|
net/http/internal from net/http
|
|
net/http/pprof from tailscale.com/tsweb
|
|
net/netip from go4.org/netipx+
|
|
net/textproto from golang.org/x/net/http/httpguts+
|
|
net/url from crypto/x509+
|
|
os from crypto/rand+
|
|
os/exec from golang.zx2c4.com/wireguard/windows/tunnel/winipcfg+
|
|
W os/user from tailscale.com/util/winutil
|
|
path from golang.org/x/crypto/acme/autocert+
|
|
path/filepath from crypto/x509+
|
|
reflect from crypto/x509+
|
|
regexp from internal/profile+
|
|
regexp/syntax from regexp
|
|
runtime/debug from golang.org/x/crypto/acme+
|
|
runtime/pprof from net/http/pprof
|
|
runtime/trace from net/http/pprof
|
|
sort from compress/flate+
|
|
strconv from compress/flate+
|
|
strings from bufio+
|
|
sync from compress/flate+
|
|
sync/atomic from context+
|
|
syscall from crypto/rand+
|
|
text/tabwriter from runtime/pprof
|
|
time from compress/gzip+
|
|
unicode from bytes+
|
|
unicode/utf16 from crypto/x509+
|
|
unicode/utf8 from bufio+
|