Tags:
Node Thumbnail

การเชื่อมต่อแบบ TCP เป็นพื้นฐานสำคัญของโครงสร้างอินเทอร์เน็ตทุกวันนี้ นอกจากมันจะรับประกันว่าข้อมูลจะไม่สูญหายระหว่างทางแล้ว ยังมีระบบควบคุมแบนวิดท์เพื่อไม่ให้คอมพิวเตอร์ส่งข้อมูลหากันเร็วเกินไป ระบบดั้งเดิม เช่น TCP Slow Start มักอาศัยสัญญาณว่าแบนด์วิดท์เต็มจากการข้อมูลสูญหายระหว่างทาง จากนั้นระบบควบคุมจะลดความเร็วลงแล้วค่อยๆ เพิ่มกลับขึ้นไป แนวคิดเช่นนี้ทำให้มีแบนวิดท์ที่ไม่ได้ใช้งานเพราะการคาดเดาแบนด์วิดท์ของ TCP ไม่แม่นยำ ทำให้ความเร็วรวมต่ำกว่าความเป็นจริง ตอนนี้กูเกิลก็เลือกเปลี่ยนกระบวนการมาเป็น TCP BBR (Bottleneck Bandwidth and Round-trip propagation time) ที่คำนวณแบนวิดท์อย่างแม่นยำกว่า

TCP BBR อาศัยค่าเวลาหน่วง (latency) ของแพ็กเก็ตไปกลับ (round trip time - RTT) ควบคู่กับการหาค่าแบนวิดท์สูงสุด จากนั้นพยายามเติมข้อมูลให้เต็มแบนวิดท์

ตอนนี้กูเกิลใช้ TCP BBR กับบริการของตัวเองเช่น YouTube ขณะที่ Google Cloud ก็ใช้งานในหลายบริการ เช่นบริการภายในคลาวด์อย่าง BigTable, Cloud Spanner, Cloud Storage หรือบริการที่เชื่อมต่อผู้ใช้ภายนอกอย่าง Cloud Load Balancing, และ Cloud CDN

โค้ดของ TCP BBR ถูกส่งเข้าลินุกซ์แล้ว ตัวมาตรฐานกำลังเป็นร่างมาตรฐานของ IETF

ที่มา - Google Cloud Platform

No Description

Get latest news from Blognone

Comments

By: Auftrag on 24 July 2017 - 16:00 #999329
Auftrag's picture

"มักสัญญาณว่าแบนด์วิดท์เต็มจากการข้อมูลสูญหายระหว่างทาง"
มักสัญญาณ?

By: Hoo
AndroidWindows
on 24 July 2017 - 17:58 #999371

ตอนแรกคงเป็น บ.ใหญ่ กะ บ.อินเทอร์เน็ต ใช้ก่อน
ส่วนตามบ้านข้อมูลวิ่งไม่เยอะ คงไม่จำเป็นมาก
กว่าจะมีในเราเตอร์ตามบ้านคงอีกนาน

By: McKay
ContributorAndroidWindowsIn Love
on 24 July 2017 - 18:37 #999377 Reply to:999371
McKay's picture

จริงๆกับเน็ตบ้านเองก็สำคัญครับ ยกตัวอย่างเช่น video streaming ที่มักจะคำนวน resolution แบบอัตโนมัติ หลายๆครั้งมักจะโดนลด resolution ทั้งๆที่ max bandwidth ยังเกินพอซึ่งเป็นผลมาจากการทำงานที่ล่าช้าของ ISP QoS พอเปลี่ยนไปใช้ TCP BBR ก็น่าจะคำนวน resolution ที่รับได้ได้แม่นยำมากขึ้นครับ

อันนี้ผมไม่แน่ใจว่า YouTube ใช้ TCP BBR หรือยัง แต่ผมรู้สึกได้ว่าตัว YouTube เองสามารถเล่น video streaming ที่ max resolution โดยอัตโนมัติได้ดีกว่าของเจ้าอื่นๆครับ ในขณะที่คู่แข่งอย่าง Dailymotion หลายๆครั้งต้องไปปรับเอง


In Soviet Warcraft, Argus comes to you.

By: Hoo
AndroidWindows
on 24 July 2017 - 21:53 #999406 Reply to:999377

ผมมองว่า ข้อมูลมาแบบ
Contain Provider -> ISP(s) -> routerที่บ้าน -> user

การอัพที่ CP, ISP ที่มีเจ้าหน้าที่พร้อม ก็ทำให้ระบบดีกว่าเดิมเยอะมากแล้ว
แล้วตรง user น่าจะอัพจาก auto update Windows ได้

เหลือแค่ router นี่แหละ
ถ้าไม่อัพ router ถึง user ได้อัพ มันก็ไม่วิ่งอยู่ดี
ซึ่ง router เก่าๆถูกๆ ก็มีแนวโน้มโดนลอยแพ
ไม่งั้นต้องก็หา custom มาลง
ซึ่งทั้งหลายทั้งปวงก็ต้องการคนระดับ super user ที่จะอัพเองเป็น
ไม่งั้นก็ต้องรอซื้อ router รุ่นใหม่ๆ

ผมถึงคิดว่า ตามบ้านคงมาทีหลังสุด

By: lew
FounderJusci's WriterMEconomicsAndroid
on 24 July 2017 - 23:45 #999423 Reply to:999406
lew's picture

เคสนี้ ISP + router ที่บ้าน ไม่มีผลอะไรเลยครับ เป็นเรื่องของปลายทางคุยกัน


lewcpe.com, @public_lewcpe

By: Hoo
AndroidWindows
on 26 July 2017 - 23:44 #999883 Reply to:999423

ขอบคุณที่ติงมา
เลยได้ไปอ่านรายละเอียด

จริงๆมันเป็น อัลกอริทึม BBR สำหรับประเมินปริมาณข้อมูลที่ส่งได้
ซึ่งไม่ได้จำกัด​​โปรโตคอลแค่ TCP
โปรโตคอลอื่นก็ใช้ได้
(แต่ดันเรียก TCP BBR เลยนึกว่าไปยุ่งกะ tcpip.sys อะไรทำนองนั้นเลย)

สรุป คนที่ใช้หลักๆคือฟาก Server ของ Contain Provider
ที่จะได้ประเมิน bandwidth ของ client ได้สูงขึ้นกว่า การประเมินแบบเก่า
แล้วกล้ายิงอัดข้อมูลให้โหดขึ้นนั่นเอง

By: lew
FounderJusci's WriterMEconomicsAndroid
on 24 July 2017 - 23:44 #999422 Reply to:999377
lew's picture

YouTube ใช้แล้วครับ


lewcpe.com, @public_lewcpe

By: Hadakung
iPhoneWindows PhoneAndroidWindows
on 24 July 2017 - 18:51 #999378 Reply to:999371

ผมว่าทันทีมาตรฐานเปิดออกมา Provider คงพร้อมเปิดใช้งานเลยครับ แค่เปลี่ยนอัลกอริทึมตัวเดียวประหยัดแลรนด์วิธได้ตั้งเยอะ

By: icez
ContributoriPhoneAndroidRed Hat
on 24 July 2017 - 22:14 #999409 Reply to:999378

มันไม่ได้ลด bandwidth ครับ แต่ช่วยให้ utilize ได้ดีขึ้น

By: lew
FounderJusci's WriterMEconomicsAndroid
on 24 July 2017 - 23:44 #999421 Reply to:999409
lew's picture

ภาพมันดูโม้ไปนิดด้วย จริงๆ มันไม่ต่างกันขนาดนั้น


lewcpe.com, @public_lewcpe