‹

09 · Networks

09 · Networks

09 · ​เครือข่าย

This chapter is the floor that dissolves the boundary of the single machine — everything above it can address something that is not itself.

​ชั้นนี้​ละลาย​ขอบเขต​ของ​เครื่อง​เดี่ยว​ทิ้ง — ​ทุกอย่าง​ที่อยู่​เหนือ​ขึ้นไป​อ้าง​ถึง​สิ่ง​ที่​ไม่​ใช่​ตัว​มัน​เอง​ได้

How do machines that share nothing agree to talk?

​เครื่อง​ที่​ไม่​มี​อะไร​ร่วมกัน​เลย ​ตกลง​กัน​จน​คุย​กัน​ได้​อย่างไร

In October 1986, two sites four hundred yards apart stopped being able to talk to each other. Van Jacobson recorded the numbers: between Lawrence Berkeley Laboratory and the University of California at Berkeley — "separated by 400 yards and two IMP hops" — throughput fell from 32 Kbps to 40 bps (Jacobson & Karels, SIGCOMM '88). A factor of a thousand, across a distance a person could walk in four minutes. Nothing had broken. No cable was cut, no machine had failed, no attacker was present. The network had simply become so busy retransmitting the packets it was already failing to deliver that it left no room to deliver anything. It had eaten itself, and it would do so repeatedly for the next two years.

​ใน​เดือน​ตุลาคม 1986 ​สอง​สถานที่​ที่​ห่าง​กัน​สี่​ร้อย​หลา​คุย​กัน​ไม่​ได้​อีกต่อไป Van Jacobson ​บันทึก​ตัวเลข​ไว้: ​ระหว่าง Lawrence Berkeley Laboratory ​กับ University of California ​ที่ Berkeley — "​ห่าง​กัน 400 ​หลา ​และ​สอง​ช่วง IMP hop" ("separated by 400 yards and two IMP hops") — ​ปริมาณ​งาน​ต่อเวลา (throughput) ​ตก​จาก 32 Kbps ​เหลือ 40 bps (Jacobson & Karels, SIGCOMM '88) ​ต่างกัน​พัน​เท่า ​บน​ระยะ​ที่​คน​เดิน​ถึง​ใน​สี่​นาที ​ไม่​มี​อะไร​พัง ​ไม่​มี​สาย​ถูก​ตัด ​ไม่​มี​เครื่อง​ล่ม ​ไม่​มี​ผู้​โจมตี ​เครือข่าย​แค่​ยุ่ง​กับ​การส่ง​ซ้ำ (retransmission) ​แพ็กเก็ต (packet) ​ที่​มัน​ส่ง​ไม่​สำเร็จ​อยู่แล้ว ​จน​ไม่​เหลือ​ที่ว่าง​ให้​ส่ง​อะไร​ได้​อีก ​มัน​กิน​ตัวเอง ​และ​จะ​กิน​ตัวเอง​ซ้ำ​ไป​อีก​สอง​ปี

That episode is the best introduction to this floor, because it shows what kind of thing a network is. Not a wire. An agreement — with no authority to enforce it.

​เหตุการณ์​นั้น​คือ​บทนำ​ที่​ดี​ที่สุด​ของ​ชั้นนี้ ​เพราะ​มัน​บอก​ว่า​เครือข่าย (network) ​เป็น​ของ​แบบ​ไหน ​ไม่​ใช่​สายไฟ ​แต่​เป็น​ข้อตกลง — ​ที่​ไม่​มีอำนาจ​ใด​บังคับ​ให้​ทำตาม

The agreement starts with a decision made twice, independently, in the early 1960s. The telephone system worked by circuit switching: reserve a path end to end, hold it for the duration, and the conversation gets a private wire. Paul Baran at RAND, designing a communications system that could survive the loss of much of itself, proposed instead that messages be chopped into standard blocks that each find their own way and be reassembled at the far end (On Distributed Communications, RM-3420-PR, 1964). Donald Davies, at Britain's National Physical Laboratory, arrived at the same design for a different reason — computer traffic is bursty, and a reserved circuit sits idle most of the time — and gave the blocks the name that stuck: packets. Packet switching trades a guarantee for a statistic: no conversation is promised a path, all conversations share all paths, and they share well precisely because none talks continuously. The first message on the resulting ARPANET went from UCLA toward Stanford Research Institute on 29 October 1969; the operator typed the first two letters of "LOGIN" and the far end crashed (Kleinrock's account).

​ข้อตกลง​นี้​เริ่ม​จาก​การตัดสินใจ​ที่เกิด​ขึ้น​สอง​ครั้ง​แยกจาก​กัน ​ใน​ช่วงต้น​ทศวรรษ 1960 ​ระบบ​โทรศัพท์​ทำงาน​ด้วย circuit switching: ​จอง​เส้นทาง​ไว้​ทั้ง​สาย ​ยึด​ไว้​ตลอด​การสนทนา ​บทสนทนา​ก็ได้​สาย​ส่วนตัว​ไป​ใช้ Paul Baran ​ที่ RAND ​กำลัง​ออกแบบ​ระบบ​สื่อสาร​ที่​รอด​ได้​แม้​ตัว​มัน​เอง​จะ​ถูก​ทำลาย​ไป​เป็นส่วนใหญ่ ​เขา​เสนอ​ตรงข้าม: ​สับ​ข้อความ​เป็น​ก้อน​มาตรฐาน ​ให้​แต่ละ​ก้อน​หาทาง​ไป​เอง ​แล้ว​ประกอบ​กลับ​ที่​ปลายทาง (On Distributed Communications, RM-3420-PR, 1964) Donald Davies ​ที่ National Physical Laboratory ​ของ​อังกฤษ ​มาถึง​แบบ​เดียวกัน​ด้วย​เหตุผล​คนละอย่าง — ท​ราฟฟิก​ของ​คอมพิวเตอร์​มา​เป็น​ห้วงๆ (bursty) ​และ​วงจร​ที่​จอง​ไว้​ก็​ว่างเปล่า​เกือบ​ตลอดเวลา — ​และ​เขา​คือ​คน​ตั้งชื่อ​ก้อน​พวก​นี้​จน​ติดปาก​มาถึง​ทุกวันนี้​ว่า ​แพ็กเก็ต (packet) packet switching ​แลก​การรับประกัน​ด้วย​ค่า​สถิติ: ​ไม่​มี​บทสนทนา​ไหน​ได้รับ​สัญญา​ว่า​จะ​มี​เส้นทาง ​ทุก​บทสนทนา​ใช้​ทุก​เส้นทาง​ร่วมกัน ​และ​ใช้​ร่วมกัน​ได้ดี​เพราะ​ไม่​มี​ใคร​พูด​ต่อเนื่อง​ตลอดเวลา ​ข้อความ​แรก​บน ARPANET ​ที่​โต​ขึ้น​มาจาก​ทั้งหมด​นี้ ​ถูก​ส่ง​จาก UCLA ​ไป​ยัง Stanford Research Institute ​เมื่อ​วันที่ 29 ​ตุลาคม 1969 ​ผู้ควบคุม​พิมพ์​อักษร​สอง​ตัว​แรก​ของ "LOGIN" ​ปลายทาง​ก็​ล่ม (Kleinrock's account)

The second structural decision is layering — the tower recapitulated inside one chapter. Each layer takes a job from above, does one part of it, and hands the rest down, knowing nothing of the implementation beneath. The formal version is the seven-layer OSI Basic Reference Model, standardized in 1984 (ISO/IEC 7498-1); the version the world runs is smaller and messier, four layers written down after the fact in RFC 1122 (1989). Keep that embarrassment in mind: the model designed by committee is the one taught in courses, and the model grown by implementers is the one carrying this sentence to you.

​การตัดสินใจ​เชิง​โครงสร้าง​ข้อ​ที่สอง​คือ ​การแบ่ง​ชั้น (layering) — ​หอคอย (tower) ​ทั้ง​ใบ​ย่อ​ลงมา​อยู่​ใน​บท​เดียว ​แต่ละ​ชั้น​รับงาน​จาก​ชั้นบน ​ทำ​แค่​ส่วน​ของ​ตัวเอง ​ส่ง​ที่​เหลือ​ลง​ข้างล่าง ​โดย​ไม่​รู้​อะไร​เลย​เกี่ยวกับ​การ implement ​ที่อยู่​ข้างใต้ ​เวอร์ชัน​ทางการ​คือ OSI Basic Reference Model ​เจ็ด​ชั้น ​เป็นมาตร​ฐาน​ใน​ปี 1984 (ISO/IEC 7498-1) ​เวอร์ชัน​ที่​โลก​จริง​ใช้​อยู่​เล็ก​กว่า​และ​รก​กว่า ​มี​สี่​ชั้น ​เขียน​ขึ้น​หลังจาก​มัน​เกิดขึ้น​จริง​ไป​แล้ว​ใน RFC 1122 (1989) ​จำ​ความน่าอาย​นี้​ไว้​ให้​ดี: ​โมเดล​ที่​คณะกรรมการ​ออกแบบ​คือ​โมเดล​ที่​ถูก​สอน​ใน​ห้องเรียน ​โมเดล​ที่​งอก​ขึ้น​จาก​มือ​คน​ที่ implement ​จริง​คือ​ตัว​ที่​กำลัง​พา​ประโยค​นี้​มาถึง​คุณ

What makes the grown one work is the shape of its middle. The Internet Protocol offers almost nothing: it will attempt to deliver a packet toward an address, and it may drop it, duplicate it, delay it, or deliver it out of order without apology. Every network technology beneath can be different — fiber, radio, satellite, copper — and every application above can be different, and they meet at one deliberately impoverished layer. The principle behind that poverty was named by Jerome Saltzer, David Reed and David Clark: a function "can completely and correctly be implemented only with the knowledge and help of the application standing at the end points … providing that questioned function as a feature of the communication system itself is not possible" (end-to-end arguments, 1981/1984). Put the intelligence at the edges. A network that tried to guarantee delivery would still not spare an application from checking, and would tax every application that did not care.

​สิ่ง​ที่​ทำให้​เวอร์ชัน​ที่​งอก​ขึ้น​มา​ใช้งาน​ได้​คือ​รูปทรง​ของ​ส่วนกลาง Internet Protocol ​ให้​อะไร​แทบ​ไม่​ได้​เลย: ​มัน​จะ​พยายาม​ส่ง​แพ็กเก็ต​ไป​ยัง​ที่อยู่​หนึ่ง ​และ​มัน​อาจ​ทำ​หาย ​ทำซ้ำ ​หน่วงเวลา ​หรือ​ส่ง​ถึง​ผิด​ลำดับ ​โดย​ไม่​ขอโทษ​ใคร ​เทคโนโลยี​เครือข่าย​ข้างล่าง​ต่างกัน​ได้​หมด — ​ไฟเบอร์ ​วิทยุ ​ดาวเทียม ​สาย​ทองแดง — ​แอปพลิเคชัน​ข้างบน​ก็​ต่างกัน​ได้​หมด ​ทั้งสอง​ฝั่ง​มา​เจอกัน​ที่​ชั้นเดียว​ที่​จนใจ​โดยตั้งใจ Jerome Saltzer, David Reed ​และ David Clark ​ตั้งชื่อ​หลักการ​เบื้องหลัง​ความจน​ใจ​นั้น: ​ฟังก์ชัน​หนึ่ง​จะ​ถูก implement ​ได้​อย่าง​สมบูรณ์​และ​ถูกต้อง​ก็ต่อเมื่อ​มีความรู้​และ​ความช่วยเหลือ​จาก​แอปพลิเคชัน​ที่​ยืน​อยู่​ที่​จุด​ปลายทาง​ทั้งสอง​ฝั่ง​เท่านั้น ​การทำให้​ฟังก์ชัน​ที่​ถูก​ตั้งคำถาม​นั้น​เป็น​ฟีเจอร์​ของ​ระบบ​สื่อสาร​เอง​จึง​เป็นไปไม่ได้ (end-to-end arguments, 1981/1984) ​วาง​ความฉลาด​ไว้​ที่​ขอบ ​เครือข่าย​ที่​พยายาม​รับประกัน​การส่ง​ถึง​ก็​ยัง​ไม่​ปลด​แอปพลิเคชัน​จาก​การต้อง​ตรวจสอบ​เอง​อยู่ดี ​แถม​เก็บภาษี​จาก​ทุก​แอปพลิเคชัน​ที่​ไม่​สนใจ​เรื่อง​นี้​ด้วย

So reliability is built on top of unreliability, by the endpoints, and that is TCP. Vint Cerf and Robert Kahn's 1974 design (IEEE Trans. Comm. COM-22(5): 637–648) numbers every byte, acknowledges what arrives, and retransmits what does not, manufacturing an ordered, gap-free stream out of a medium that promises none of those things. The ARPANET switched over to it wholesale on 1 January 1983, a date fixed two years in advance in RFC 801 — the last time the network was small enough to be changed on a single day.

​ความน่าเชื่อถือ​จึง​ถูก​สร้าง ​ซ้อนทับ ​ความไม่​น่าเชื่อถือ ​โดย​จุด​ปลายทาง​ทั้งสอง​ฝั่ง ​และ​นั่น​คือ TCP ​การออกแบบ​ของ Vint Cerf ​กับ Robert Kahn ​ใน​ปี 1974 (IEEE Trans. Comm. COM-22(5): 637–648) ​ใส่​หมายเลข​ให้​ทุก​ไบต์ ​ยืนยัน​สิ่ง​ที่มา​ถึง ​ส่ง​ซ้ำ​สิ่ง​ที่​ไม่​มาถึง ​ปั้น​สตรีม​ที่​เรียงลำดับ​และ​ไม่​มี​ช่องว่าง​ขึ้น​จาก​ตัวกลาง​ที่​ไม่​สัญญา​สัก​อย่าง​เดียว​ใน​นั้น ARPANET ​เปลี่ยน​มา​ใช้​มัน​ทั้ง​ระบบ​ใน​วันที่ 1 ​มกราคม 1983 ​วันที่​กำหนด​ไว้​ล่วงหน้า​สอง​ปี​ใน RFC 801 — ​ครั้งสุดท้าย​ที่​เครือข่าย​ยัง​เล็ก​พอ​จะ​เปลี่ยน​ได้​ใน​วัน​เดียว

Which returns us to 1986, because retransmission is exactly the behavior that ate the network. A sender that responds to congestion by trying harder makes congestion worse; ten thousand senders doing so collapse the commons. There is no central regulator to prevent it — no one owns the internet, and no one can be told to slow down. Jacobson's fix, which is still in the bones of every connection you make, was to have each sender infer the state of the whole from what it can see locally: treat a lost packet as evidence of congestion, cut your sending rate sharply, then probe upward again gently. Congestion control is voluntary restraint by parties who cannot see each other, and it holds because the alternative is that nobody gets anything. It is the most consequential piece of distributed politeness ever deployed.

​เรา​กลับมา​ที่​ปี 1986 ​ได้​ตรงนี้ ​เพราะ​การส่ง​ซ้ำ (retransmission) ​คือ​พฤติกรรม​ที่​กิน​เครือข่าย​ไป​นั่นเอง ​ผู้ส่ง​ที่​ตอบสนอง​ต่อ​ความแออัด (congestion) ​ด้วย​การพยายาม​หนัก​ขึ้น ​ทำให้​ความแออัด​แย่​ลง ​ผู้ส่ง​หนึ่ง​หมื่น​ราย​ทำ​แบบ​นั้น​พร้อมกัน​ก็​พัง​ทรัพยากร​ส่วนรวม​ทั้ง​ผืน ​ไม่​มี​หน่วยงาน​กลาง​ไหน​ห้าม​ได้ — ​ไม่​มี​ใคร​เป็นเจ้าของ​อินเทอร์เน็ต ​และ​ไม่​มี​ใคร​ถูก​สั่ง​ให้​ช้า​ลง​ได้ ​ทางแก้​ของ Jacobson ​ยัง​ฝัง​อยู่​ใน​กระดูก​ของ​ทุก​การเชื่อมต่อ​ที่​คุณ​สร้าง​ทุกวันนี้: ​ให้​ผู้ส่ง​แต่ละ​ราย​อนุมาน​สถานะ (state) ​ของ​ทั้ง​ระบบ​จาก​สิ่ง​ที่​ตัวเอง​มองเห็น​ใน​พื้นที่ ​มอง​แพ็กเก็ต​ที่​หาย​ไป​เป็นหลัก​ฐาน​ของ​ความแออัด ​ตัด​อัตรา​การส่ง​ลง​อย่าง​แรง ​ค่อยๆ ​ไต่​ขึ้น​ใหม่​อย่าง​นุ่มนวล congestion control ​คือ​การยับยั้งชั่งใจ​โดยสมัครใจ​ของ​ฝ่าย​ที่​มองไม่เห็น​กันและกัน ​และ​มัน​อยู่​ได้​เพราะ​ทางเลือก​อื่น​คือ​ไม่​มี​ใคร​ได้​อะไร​เลย ​มัน​คือ​ชิ้นส่วน​ของ​ความสุภาพ​แบบ​กระจาย​ศูนย์​ที่​ส่งผล​สำคัญ​ที่สุด​เท่าที่​เคย​ถูก​นำไปใช้​จริง

The same structure — no authority, only agreement — governs how things are found. The Domain Name System, specified by Paul Mockapetris in 1983 and refined in RFCs 1034 and 1035 (1987), turns names into addresses by delegation: each zone is trusted to answer for the names beneath it. Routing between networks runs on BGP (RFC 4271), in which each network announces which addresses it can reach and its neighbors believe it. On 24 February 2008, Pakistan Telecom, complying with an order to block YouTube domestically, announced a route to a slice of YouTube's addresses more specific than YouTube's own — and because more specific wins, and because its upstream provider passed the claim on, the world's traffic to YouTube went to Pakistan for roughly two hours (RIPE NCC). Nothing was hacked. The system worked as designed, and the design assumes honesty.

​โครงสร้าง​เดียวกัน — ​ไม่​มีอำนาจ ​มี​แต่​ข้อตกลง — ​คุม​ว่า​จะ​หา​ของ​เจอ​ได้​อย่างไร Domain Name System ​ที่ Paul Mockapetris ​เขียน​สเปก​ไว้​ใน​ปี 1983 ​และ​ปรับปรุง​ใน RFCs 1034 ​และ 1035 (1987) ​แปลง​ชื่อ​เป็นที่​อยู่​ด้วย​การมอบอำนาจ (delegation): ​แต่ละ​โซน​ได้รับ​ความไว้ใจ​ให้​ตอบแทน​ชื่อ​ที่อยู่​ใต้​มัน ​การจัด​เส้นทาง (routing) ​ระหว่าง​เครือข่าย​วิ่ง​บน BGP (RFC 4271) ​แต่ละ​เครือข่าย​ประกาศ​ว่า​ตัวเอง​ไป​ถึงที่​อยู่​ไหน​ได้​บ้าง ​เพื่อนบ้าน​ก็​เชื่อ ​เมื่อ​วันที่ 24 ​กุมภาพันธ์ 2008 Pakistan Telecom ​ทำตาม​คำสั่ง​ให้​บล็อก YouTube ​ในประเทศ ​ด้วย​การประกาศ​เส้นทาง​ไป​ยัง​ที่อยู่​ส่วนหนึ่ง​ของ YouTube ​ที่​จำเพาะ​กว่า​ของ YouTube ​เอง — ​เส้นทาง​ที่​จำเพาะ​กว่า​ชนะ​เสมอ ​และ​ผู้ให้บริการ​ต้นทาง​ของ​มัน​ส่งต่อ​คำประกาศ​นั้น​ออก​ไป ท​ราฟฟิก​ทั้งโลก​ที่​มุ่ง​หา YouTube ​จึง​วิ่ง​ไป​ปากีสถาน​อยู่​ราว​สอง​ชั่วโมง (RIPE NCC) ​ไม่​มี​อะไร​ถูก​แฮ็ก ​ระบบ​ทำงาน​ตามที่​ออกแบบ​ไว้​ทุกอย่าง ​และ​การออกแบบ​นั้น​ตั้งอยู่​บน​สมมติฐาน​ว่า​ทุกฝ่าย​ซื่อสัตย์

On top of all this sits one application among many, proposed at CERN in March 1989 as a way to keep track of documents (Berners-Lee) and released to the public domain on 30 April 1993. For most people the Web is the network — which is what a well-built floor looks like from above.

​บนสุด​ของ​ทั้งหมด​นี้​คือ​แอปพลิเคชัน​หนึ่ง​ใน​หลายๆ ​ตัว ​เสนอ​ขึ้น​ที่ CERN ​ใน​เดือน​มีนาคม 1989 ​เพื่อ​ใช้​ติดตาม​เอกสาร (Berners-Lee) ​และ​ปล่อย​สู่​สาธารณสมบัติ​ใน​วันที่ 30 ​เมษายน 1993 ​สำหรับ​คน​ส่วนใหญ่ ​เว็บ (the Web) ​คือ ​เครือข่าย (network) — ​นั่นแหละ​คือ​หน้าตา​ของ​ชั้น​ที่​สร้าง​มา​ดี ​เมื่อ​มอง​จาก​ด้านบน

Connections

​เชื่อมโยง

Below: chapter 03 sets the physical ceiling on any channel and supplies the error-detecting codes every layer uses; chapters 04 and 05 provide the machine and the operating system that actually move the bytes. Above: chapter 10 takes the machines connected here and asks what it means for them to agree on anything, a far harder question than making them talk; chapter 08 is often on the far side of one of these connections; chapter 11 is the one this floor keeps needing, since DNS and BGP were built for a network of colleagues.

​ด้านล่าง: ​บท​ที่ 03 ​กำหนด​เพดาน​ทางกายภาพ​ของ​ช่องสัญญาณ (channel) ​ใดๆ ​และ​ให้​รหัส​ตรวจจับ​ข้อผิดพลาด (error-detecting code) ​ที่​ทุก​ชั้น​ใช้ ​บท​ที่ 04 ​กับ 05 ​ให้​เครื่อง​และ​ระบบปฏิบัติการ​ที่​ลงมือ​ขยับ​ไบต์​จริงๆ ​ด้านบน: ​บท​ที่ 10 ​เอา​เครื่อง​ที่​เชื่อมต่อ​กัน​ใน​บท​นี้​ไป​ถาม​ว่าการ​ที่​พวก​มัน​ตกลง​อะไร​กัน​สัก​อย่าง​แปล​ว่า​อะไร ​คำถาม​นี้​ยาก​กว่า​การทำให้​พวก​มัน​คุย​กัน​ได้มาก ​บท​ที่ 08 ​มัก​อยู่​อีก​ฟาก​หนึ่ง​ของ​การเชื่อมต่อ​แบบนี้ ​บท​ที่ 11 ​คือ​บท​ที่​ชั้นนี้​ต้อง​พึ่ง​อยู่​ตลอด ​เพราะ DNS ​กับ BGP ​ถูก​สร้าง​มา​สำหรับ​เครือข่าย​ของ​คน​ที่​รู้จัก​กัน​เป็นเพื่อน​ร่วมงาน

Open questions

​คำถาม​ที่​ยัง​เปิด​อยู่

The end-to-end argument is under steady pressure: firewalls, address translators and content delivery networks all put intelligence back in the middle, and QUIC moved transport out of the kernel to escape the middle's grip. Is the narrow waist still the architecture, or a memory of one? Second: BGP's trust problem has had a technical answer for years — cryptographic validation of route origins — and deployment remains partial, which makes it less a research question than a study in why coordination fails when no one can be compelled. Third: congestion control now runs many algorithms at once, some far more aggressive than others, on a commons that assumed roughly equal restraint. What holds an agreement together when the parties no longer agree?

end-to-end argument ​ถูก​กดดัน​อยู่​ตลอด: firewall, address translator ​และ content delivery network ​ต่าง​พา​ความฉลาด​กลับ​เข้าไป​ไว้​ตรงกลาง ​ส่วน QUIC ​ย้าย transport ​ออกจาก kernel ​เพื่อ​หนี​เงื้อมมือ​ของ​ตรงกลาง​นั้น ​เอว​คอด​แคบ (narrow waist) ​ยัง​เป็น​สถาปัตยกรรม​จริง ​หรือ​เป็น​แค่​ความทรงจำ​ถึง​มัน​แล้ว ​ข้อ​สอง: ​ปัญหา​ความไว้ใจ​ของ BGP ​มี​คำตอบ​ทางเทคนิค​มา​หลาย​ปี​แล้ว — ​การตรวจสอบ​แหล่งที่มา​ของ​เส้นทาง​ด้วย​วิทยาการ​รหัสลับ (cryptographic validation) — ​แต่​การใช้งาน​จริง​ยัง​ทำได้​แค่​บางส่วน ​มัน​จึง​ไม่​ใช่​คำถาม​วิจัย​เท่ากับ​เป็น​กรณีศึกษา​ว่า​ทำไม​การประสานงาน​ถึง​ล้มเหลว​เมื่อ​ไม่​มี​ใคร​ถูก​บังคับ​ได้ ​ข้อ​สาม: congestion control ​ตอนนี้​รัน​หลาย​อัลกอริทึม​พร้อมกัน ​บาง​ตัว​ก้าวร้าว​กว่า​ตัว​อื่น​มาก ​บน​ทรัพยากร​ส่วนรวม​ที่​ออกแบบ​มา​โดย​สมมติ​ว่า​ทุกฝ่าย​ยับยั้งชั่งใจ​เท่าๆ ​กัน ​อะไร​จะ​ยึด​ข้อตกลง​ไว้​ได้ ​เมื่อ​ฝ่าย​ต่างๆ ​ไม่​เห็น​ตรงกัน​อีกต่อไป

Go deeper

​อ่าน​ต่อ

  • J. H. Saltzer, D. P. Reed & D. D. Clark, "End-to-End Arguments in System Design," ACM TOCS 2, no. 4 (1984): 277–288 — the shortest route to understanding why the Internet is shaped as it is; MIT PDF.
  • Van Jacobson & Michael J. Karels, "Congestion Avoidance and Control," SIGCOMM '88 — PDF.
  • Larry Peterson & Bruce Davie, Computer Networks: A Systems Approach — the systems-first textbook, kept current and free at systemsapproach.org. For the classic course treatment, Kurose & Ross, Computer Networking: A Top-Down Approach, 9th ed., 2025.
  • J. H. Saltzer, D. P. Reed & D. D. Clark, "End-to-End Arguments in System Design," ACM TOCS 2, no. 4 (1984): 277–288 — ​เส้นทาง​สั้น​ที่สุด​ที่จะ​เข้าใจ​ว่า​ทำไม​อินเทอร์เน็ต​ถึง​มี​รูปทรง​แบบ​ที่​เป็นอยู่; MIT PDF.
  • Van Jacobson & Michael J. Karels, "Congestion Avoidance and Control," SIGCOMM '88 — PDF.
  • Larry Peterson & Bruce Davie, Computer Networks: A Systems Approach — ​ตำรา​ที่​เริ่ม​จาก​มุมมอง​ระบบ ​ปรับปรุง​ต่อเนื่อง​และ​อ่าน​ฟรี​ที่ systemsapproach.org. ​ถ้า​ต้องการ​แนวทาง​แบบ​คอร์ส​คลาสสิก ​ดู Kurose & Ross, Computer Networking: A Top-Down Approach, 9th ed., 2025.
บทถัดไป · 11 / 1610 · Distributed Systems
Size
Page
Font

The Tower of Abstractions — An Encyclopedia of the Computing Disciplines

❦
100 · The Map00 · แผนที่201 · Theory of Computation01 · ทฤษฎีการคำนวณ302 · Algorithms & Data Structures02 · อัลกอริทึมและโครงสร้างข้อมูล403 · Information & Coding03 · สารสนเทศและการเข้ารหัส504 · Computer Architecture04 · สถาปัตยกรรมคอมพิวเตอร์605 · Operating Systems05 · ระบบปฏิบัติการ706 · Languages & Compilers06 · ภาษาและคอมไพเลอร์807 · Software Engineering07 · วิศวกรรมซอฟต์แวร์908 · Databases08 · ฐานข้อมูล1009 · Networks09 · เครือข่าย1110 · Distributed Systems10 · ระบบกระจาย1211 · Security & Cryptography11 · ความปลอดภัยและวิทยาการรหัสลับ1312 · AI & Machine Learning12 · ปัญญาประดิษฐ์และการเรียนรู้ของเครื่อง1413 · HCI & Graphics13 · ปฏิสัมพันธ์มนุษย์–คอมพิวเตอร์ และกราฟิกส์1514 · The Frontier14 · พรมแดน1699 · Closing — The Tower, Seen Whole99 · ปิดเล่ม — หอคอยเมื่อมองทั้งหลัง