基礎:網路是什麼

端系統(end system)

想像電話網路:電話是人們實際對著講話的東西;中間的線路與交換機只負責把通話傳遞過去。在電腦網路裡,相當於電話的就是端系統——位於邊緣、執行人們所用應用的裝置。你的筆電、手機、一台網頁伺服器、智慧電視、工廠裡的感測器:每一個都是端系統,也稱為主機(host),因為它「主持」(執行)應用程式。

端系統是資料被產生與被消費的地方。它們被刻意地與網路核心(只負責轉送資料的路由器與交換器)分開。主機通常承擔吃力的工作:把訊息切成封包、附上位址、從遺失中復原、再重組——而核心只負責轉送。主機有兩個著名的角色:用戶端(client)負責請求(你的瀏覽器索取一個網頁),伺服器(server)負責提供(把網頁送回的那台機器)。同一台機器在不同時刻可以同時是兩者。

這條界線之所以重要,源於一條設計原則:讓網路核心保持簡單笨拙,把複雜度推到聰明的端系統去(這就是端對端原則)。這正是網際網路能如此快速成長的原因——新應用(Web、視訊通話、你昨晚寫的某個 App)只需在端系統上裝新軟體,而不必更動中間那數百萬台路由器。

你的筆電(用戶端端系統)與資料中心裡的一台伺服器(伺服器端系統)交換資料;它們之間那十幾台路由器並不是端系統——它們從不打開你的訊息,只負責轉送。

端系統執行應用、住在邊緣;核心裡的交換器只負責轉送。

路由器與交換器也是電腦,但它們不是端系統——它們轉送別人的資料,而非作為某應用訊息的來源或終點。

又稱
host主機終端系統