Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

tcpie

Package Overview
Dependencies
Maintainers
1
Versions
70
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tcpie

Ping any TCP port

  • 11.0.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
109
decreased by-6.84%
Maintainers
1
Weekly downloads
 
Created
Source

tcpie

Ping any TCP port

tcpie is a tool to measure latency and verify the reliabilty of a TCP connection. It does so by initiating a handshake followed by an immediately termination of the socket. While many existing tools require raw socket access, tcpie runs fine in user space. An API for use as a module is also provided.

CLI

Installation

$ npm i -g tcpie

Example

$ tcpie -c 5 google.com 443
TCPIE google.com (188.21.9.120) port 443
connected to google.com:443 seq=1 srcport=59053 time=12.9 ms
connected to google.com:443 seq=2 srcport=59054 time=10.0 ms
connected to google.com:443 seq=3 srcport=59055 time=10.1 ms
connected to google.com:443 seq=4 srcport=59056 time=11.4 ms
connected to google.com:443 seq=5 srcport=59057 time=10.4 ms

--- google.com tcpie statistics ---
5 handshakes attempted, 5 succeeded, 0% failed
rtt min/avg/max/stdev = 10.012/10.970/12.854/1.190 ms

API

Usage

import {tcpie} from "tcpie";
const pie = tcpie("google.com", 443, {count: 10, interval: 500, timeout: 2000});

pie.on("connect", function(stats) {
  console.info("connect", stats);
}).on("error", function(err, stats) {
  console.error(err, stats);
}).on("timeout", function(stats) {
  console.info("timeout", stats);
}).on("end", function(stats) {
  console.info(stats);
  // -> {
  // ->   sent: 10,
  // ->   success: 10,
  // ->   failed: 0,
  // ->   target: { host: "google.com", port: 443 }
  // -> }
}).start();
tcpie(host, [port], [options])
  • host string : the destination host name or IP address. Required.
  • port number : the destination port. Default: 22.
  • opts object : options for count, interval and timeout. Defaults: Infinity, 1000, 3000.
tcpie#start()

Start connecting

tcpie#stop()

Stops connecting

options object
  • count number : the number of connection attempts in milliseconds (default: Infinity).
  • interval number : the interval between connection attempts in milliseconds (default: 1000).
  • timeout number : the connection timeout in milliseconds (default: 3000).
Events
  • connect : Arguments: stats. Connection attempt succeeded.
  • timeout : Arguments: stats. Connection attempt ran into the timeout.
  • error : Arguments: err, stats. Connection attempt failed.
  • end : Arguments: stats. All connection attempts have finished.
stats argument properties
  • sent number : number of total attempts made.
  • success number : number of successfull attempts.
  • failed number : number of failed attempts.
  • target object : target details: host and port.

The following properties are present on all events except end:

  • rtt number : roundtrip time in milliseconds. undefined if failed.
  • socket object : socket details: localAddress, localPort, remoteAddress, remotePort.

© silverwind, distributed under BSD licence

FAQs

Package last updated on 09 Mar 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc