Quelle quantité de données SSH utilise-t-il généralement?

24

Je veux accéder à un ordinateur portable (Ubuntu) qui sera connecté via une connexion 3G. Par conséquent, je dois estimer la quantité de données que j'utiliserai pour choisir un plan adapté.

Indépendamment du transfert de fichiers, pour lequel je peux facilement déterminer la quantité de données qui sera utilisée, quelle est la quantité typique qu'une session ssh utilise? Existe-t-il une sorte de relation, par exemple que l'utilisation lsd'un répertoire avec 50 éléments me coûtera une certaine quantité de données? Ou est-ce plus dépendant du temps et une session ssh transmet-elle une certaine quantité de données par intervalle de temps, quelle que soit l'utilisation?

Saaru Lindestøkke
la source

Réponses:

15

quelle est la quantité typique utilisée par une session ssh?

Je ne suis pas sûr qu'il y ait "typique"

Vous devez exécuter tcpdump -ni eth0 -w dump port 22pour capturer tous vos paquets, puis tcpdump -nX -r dumppour les afficher.

Y a-t-il une sorte de relation, par exemple que l'utilisation de ls sur un répertoire avec 50 éléments me coûtera une certaine quantité de données?

Vous pourriez calculer cela. À titre indicatif, chaque frappe générera 4 paquets (pression de touche, accusé de réception, écho à l'écran, accusé de réception) et chaque paquet aura des tonnes de surcharge. (Mon vidage TCP indique 500 octets pour taper 2 caractères.)

Ma liste de répertoires de 135 fichiers a pris 2,5k.

L'utilisation de la ssh -Ccompression devrait aider pour le texte plus volumineux.

Ou est-ce plus dépendant du temps et une session ssh transmet-elle une certaine quantité de données par intervalle de temps, quelle que soit l'utilisation?

Oui. TCP et SSH ont des sondes keepalive. Ce sera un problème si vous le maintenez tout le temps. Encore une fois, utilisez TCPDump pour mesurer.

Mon conseil: au lieu de vous inquiéter, assurez-vous d'avoir un retour en temps réel sur votre utilisation. Après avoir utilisé quelques séances, vous saurez à quel point vous êtes proche.

BraveNewCurrency
la source
1
Pour trouver la taille totale des paquets capturés par tcpdump, on peut utiliser capinfo(depuis Wireshark) sur le fichier écrit par tcpdump. par exemplecapinfos dump
Flux
8

J'ai une configuration similaire (connexion 3G sur un ordinateur portable Ubuntu distant).

Bien que je convienne qu'il n'y a pas de réponse "typique" (cela dépend à la fois de votre propre utilisation, ainsi que des options sshd / ssh comme la fréquence "keepalive", la compression ssh et peut-être d'autres options ssh), j'ai pu réduire ma base bande passante SSH inactive à 0,2 - 0,3 Mo / heure (cela correspond à 200 Mo / mois).

J'ai utilisé tcpdump puis WireShark pour visualiser et mesurer ma consommation de bande passante (en plus des octets RX / TX de l'interface utilisant ifconfig).

La bande passante de 0,2 à 0,3 Mo sur ma plate-forme comprend les options suivantes: TCPKeepAlive no (serveur sshd, sshd_config) et ServerAliveInterval 180, ServerAliveCountMax 40, TCPKeepAlive no (sur le client, c'est-à-dire ssh_config)

J'espère que cela aide, sinon vous, les autres utilisateurs avec une configuration similaire.

Geehan
la source
3

SSH envoie essentiellement la commande et la sortie d'écran. Si vous ne faites que des choses en ligne de commande, une estimation approximative serait un octet par caractère sur votre écran.

Évidemment, si vous tunnelisez une session X, SCP pour transférer des fichiers, etc., la bande passante augmentera.

Je dis que c'est une estimation approximative car il y a des frais généraux. Vous pouvez également utiliser l'indicateur -C pour demander la compression.

ernie
la source