2015-03-31 2 views
1

Я отправляю данные на свой сервер из своего TCP-сокета каждые 5 секунд. Сколько данных будет потребляться через час при такой скорости отправки сообщений.Потребление данных сокета TCP

Каждый раз, когда сокет открывается и данные выкачиваются из него от клиента к разъему. Я использую 3G GSM модем на моей стороне клиента.

мое сообщение есть, ID1 $ Socket $ Open $ timestamp. Все строки:

+3

Невозможно ответить, пока вы не сообщите нам, сколько данных вы отправляете каждые 5 секунд. – nos

+0

@nos мое сообщение есть, ID1 $ Socket $ Open $ timestamp. Все строки – bhuvan

ответ

0

ID1$Socket$Open$timestamp - 25 байт, предполагая 8-разрядную строку и предполагая, что вы не отправляете какие-либо другие данные (заголовки/разделители и т. Д.) Между вашими сообщениями.

Итак, 1 сообщение, отправленное каждые 5 секунд, равно 60/5 = 12 сообщений в минуту, то есть 12 * 60 = 720 сообщений в час. На 25 байт на сообщение, то есть 720 * 25 = 18000 байт в час (плюс накладные расходы на заголовки TCP/IP и кадрирование на сообщение и ACK на каждый TCP-фрейм).

+0

Где-то есть бумага, которая показывает, что максимальная пропускная способность TCP равна 83% или 87%, я забываю, какие, а остальные - заголовки и, возможно, ACK. – EJP

+1

Только TCP не предоставляет достаточной информации для расчета таких. Теперь, если вы говорите TCP/IP более 10baseT, у вас есть максимальный MTU на 1500 байт с минимальными 20-байтовыми TCP и IP-заголовками, так что 1460 байтов полезной нагрузки. Затем ethernet добавляет 14-байтовый заголовок, 4-байтовый CRC, 7-байтовый преамбулу и 1-байтовый старт-кадр. Существует также 12-байтовый межкадровый промежуток. Таким образом, при отсутствии перерывов у вас есть 1460/1538 = 94,9%. ACK не занимают дополнительного места, а пропускная способность обычно двунаправленная. Другие сетевые технологии имеют различное обрамление и различные MTU, тем самым изменяя максимальную эффективность. –