Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

โปรแกรม C คำนวณเวลาไปกลับ (RTT)


ระบุที่อยู่ URL ของเว็บไซต์ใด ๆ งานคือการคำนวณเวลาเดินทางไปกลับของเว็บไซต์

Round Trip Time (RTT) คือเวลาทั้งหมดหรือระยะเวลาที่ใช้ในการส่งสัญญาณบวกกับเวลาที่ใช้ในการรับทราบสัญญาณที่จะรับ เวลานี้ยังประกอบด้วยเวลาการแพร่กระจายระหว่างจุดสองจุดของสัญญาณ

ผู้ใช้ปลายทางสามารถกำหนดเวลาไปกลับของตนจากที่อยู่ IP ได้โดย ping ที่อยู่นั้น

ผลลัพธ์ของเวลาไปกลับขึ้นอยู่กับเหตุผลดังต่อไปนี้ -

  • สื่อส่งสัญญาณ
  • การมีอยู่ของอินเทอร์เฟซในวงจร
  • จำนวนโหนดจากต้นทางไปยังปลายทาง
  • ปริมาณการจราจร
  • ระยะทางทางกายภาพจากต้นทางไปยังปลายทาง
  • ลักษณะของสื่อส่งสัญญาณ (ไร้สาย ไฟเบอร์ออปติก ฯลฯ)
  • จำนวนคำขอ
  • การมีอยู่ของอินเทอร์เฟซในวงจร

โดยทั่วไป ระยะเวลาของ Round Trip Time จะอยู่ในหน่วยมิลลิวินาที และเราจะแสดงผลลัพธ์เป็นวินาที

ตัวอย่าง

Input: www.tutorialspoint.com
Output: Time taken:0.3676435947418213
Input: www.indiatoday.in
Output: Time taken:0.4621298224721691

วิธีการที่เราจะใช้ในการแก้ปัญหาที่กำหนด -

  • นำสตริงอินพุตของ URL ที่เราต้องการคำนวณ RTT(Round Trip Time)
  • บันทึกเวลาก่อนขอ URL และเก็บไว้ในตัวแปร
  • ส่งคำขอ
  • บันทึกเวลาหลังได้รับการตอบรับ
  • เปรียบเทียบทั้งสองครั้งเราจะได้ RTT

อัลกอริทึม

Start
   Step 1 -> import time
   Step 2 -> import requests
   Step 3 -> define a function def roundtriptime(url):
      Set t1 = time.time()
      Set req = requests.get(url)
      Set t2 = time.time()
      Set t = str(t2-t1)
      Print Time taken
   Step 4 -> Initialize url = "https://www.tutorialspoint.com"
   Step 5 -> Call function roundtriptime(url)
Stop

ตัวอย่าง

import time
import requests
# Function to calculate the roundtriptime
def roundtriptime(url):
   # time when the signal is sent
      t1 = time.time()
      req = requests.get(url)
   # time when the acknowledgement
   # is received
      t2 = time.time()
   # total time taken
      t = str(t2-t1)
      print("Time taken:" + t)
   # url address
      url = "https://www.tutorialspoint.com"
      roundtriptime(url)

ผลลัพธ์

Time taken:0.3676435947418213