หน่วยใดบ้างที่ใช้สำหรับแบนด์วิดท์?


17

curl บนบรรทัดคำสั่งแสดงความคืบหน้าดังนี้:

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  8 1000M    8 85.2M    0     0    57k      0  1:06:13  0:05:38  1:00:35   47k

47kความเร็วที่แสดงในตัวอย่างนี้คือ แต่สิ่งนี้หมายความว่าอย่างไร นี่คือ:

  • 47kiB นั่นคือ 47 * 1024 ไบต์
  • 47kB นั่นคือ 47 * 1,000 ไบต์
  • 47kb นั่นคือ 47 * 1,000 บิต (บิตมักใช้เพื่อวัดความเร็ว)

และมันคือ:

  • ต่อวินาที
  • หรือต่อนาที

1
คำถามที่คล้ายกันสำหรับ wget: superuser.com/q/184331/90668
Flimm

คำตอบ:


14

หน่วยใดบ้างที่ใช้สำหรับแบนด์วิดท์?

อ้างอิงถึงรหัสที่มาkiB per secondมันเป็น


คุณสามารถดูคำจำกัดความการใช้งาน1024ได้ที่นี่1000

/* The point of this function would be to return a string of the input data,
   but never longer than 5 columns (+ one zero byte).
   Add suffix k, M, G when suitable... */
static char *max5data(curl_off_t bytes, char *max5)
{
#define ONE_KILOBYTE  CURL_OFF_T_C(1024)
#define ONE_MEGABYTE (CURL_OFF_T_C(1024) * ONE_KILOBYTE)
#define ONE_GIGABYTE (CURL_OFF_T_C(1024) * ONE_MEGABYTE)
#define ONE_TERABYTE (CURL_OFF_T_C(1024) * ONE_GIGABYTE)
#define ONE_PETABYTE (CURL_OFF_T_C(1024) * ONE_TERABYTE)

...

}

ที่นี่คุณสามารถเห็นการคำนวณเสร็จในหน่วยมิลลิวินาทีจากนั้นหารด้วย1000เพื่อรับวินาที

  /* Calculate the average speed the last 'span_ms' milliseconds */
  {
    curl_off_t amount = data->progress.speeder[nowindex]-
      data->progress.speeder[checkindex];

    if(amount > CURL_OFF_T_C(4294967) /* 0xffffffff/1000 */)
      /* the 'amount' value is bigger than would fit in 32 bits if
         multiplied with 1000, so we use the double math for this */
      data->progress.current_speed = (curl_off_t)
        ((double)amount/((double)span_ms/1000.0));
    else
      /* the 'amount' value is small enough to fit within 32 bits even
         when multiplied with 1000 */
      data->progress.current_speed = amount*CURL_OFF_T_C(1000)/span_ms;
  }

1
ฉันต้องค้นหามันดังนั้นหวังว่านี่จะช่วยประหยัดความพยายามของใครบางคน: kiB เป็นkibibyteและคุณสามารถค้นหาไซต์เช่นนี้เพื่อแปลงเป็นหน่วยอื่นได้
SteveLambert
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.