113 調查局特考三等 資訊科學組 資通網路 考古題詳解

113 年・調查局特考・三等・資訊科學組
試題代碼 資通網路

第 一 題20 分

(一) 在網際網路中,host 的通訊協定堆(protocol stack)具有哪些層(layer)?(10 分)

(二) 在網際網路中,host 可因功能和角色分為 client 和 server,這兩者的功能差異為何?且對網路的要求有何差異?(10 分)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

本題考查網際網路的分層架構,以及各層在資料傳送時負責的工作。網際網路常用的協定堆疊分為五層:應用層、傳輸層、網路層、鏈結層與實體層。每層使用下層提供的服務,並為上層提供服務。

解題方法

由上而下列出五層,並各用一句話說明其主要功能:

  1. 應用層(Application layer):支援網路應用程式與應用服務,例如 HTTP、DNS、SMTP。
  2. 傳輸層(Transport layer):提供程序對程序(process-to-process)的資料傳輸;TCP 提供可靠傳輸及流量控制等功能,UDP 提供較精簡的傳輸服務。
  3. 網路層(Network layer):負責主機間的封包傳送與路由選擇,代表性協定為 IP。
  4. 鏈結層(Link layer):負責同一鏈結或區域網路上的節點間傳送資料框(frame),例如 Ethernet、Wi-Fi。
  5. 實體層(Physical layer):透過實體媒介傳送位元,規範訊號及傳輸媒介等事項。

資料由發送端往下傳遞時,各層會加入該層所需的控制資訊;接收端則由下而上逐層處理。這個過程常稱為封裝與解封裝。

解題技巧

可用「應、傳、網、鏈、實」由上而下記憶五層。常見混淆是把「程序間通訊」歸給網路層;實際上它屬於傳輸層,網路層負責的是主機間的封包傳遞。

(二)Client 與 Server 的功能及網路要求

核心觀念

Client 與 server 是依照網路服務中的角色區分。Client 發出服務請求,server 提供服務並回應請求;兩者都是連接網路的 host,角色取決於其在特定通訊中的功能。

🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

第 二 題20 分

(一) 乙太網路(Ethernet)使用 CSMA/CD 來當它的 medium access control(MAC)通訊協定,請說明其如何避免在傳輸線上發生封包碰撞,以及碰撞後在重送封包時如何避免再度碰撞。(10 分)

(二) 當一個乙太網路中都使用 switch 來連接使用乙太網路網路卡的設備時,乙太網路網路卡在送出封包時,封包是否有可能與其他乙太網路網路卡送出的封包在傳輸線上碰撞?此回答需正確說明原因,否則不予給分。(10 分)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

CSMA/CD 是「載波偵聽多重存取/碰撞偵測」(Carrier Sense Multiple Access with Collision Detection)。它用於共享式、半雙工乙太網路:多個設備共用同一傳輸媒介,傳送前先偵聽媒介,傳送期間持續偵測是否發生碰撞。

解題方法

  1. 傳送前先偵聽(Carrier Sense) 網卡先檢查媒介是否忙碌。媒介閒置時才開始傳送;若媒介忙碌,就等待媒介恢復閒置後再傳送。這可降低同時傳送的機會,但無法完全避免碰撞,因為訊號傳播需要時間:兩端設備可能在彼此的訊號尚未抵達前,都判斷媒介閒置而開始傳送。

  2. 多個設備共用媒介(Multiple Access) 多個網卡都能使用同一傳輸媒介,因此即使各自先行偵聽,仍可能因傳播延遲而同時送出訊框。

  3. 傳送期間偵測碰撞(Collision Detection) 網卡傳送時持續監聽媒介;若偵測到碰撞,便停止傳送原訊框,並送出碰撞強制訊號(jam signal),使所有相關設備都能察覺碰撞。

  4. 二進位指數退避(Binary Exponential Backoff) 碰撞後,各網卡不會立即重送,而是依碰撞次數選擇隨機等待時間。第 nn 次碰撞後,從退避範圍 [0,2k−1][0, 2^k-1] 中隨機選取槽數,其中 k=min⁡(n,10)k=\min(n,10);等待的時間為所選槽數乘以 slot time。等待結束後重新偵聽媒介,再依媒介狀態傳送。隨碰撞次數增加,隨機選擇範圍擴大,降低多個網卡再次同時重送的機率。傳統乙太網路在最多 16 次傳送嘗試仍失敗後,會放棄該訊框並回報錯誤。

🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

第 三 題20 分

(一) HTTP 通訊協定是 stateless 的通訊協定,請解釋何謂 stateless?相較 stateful 設計,stateless 設計有何優缺點?(10 分)

(二) HTTP 通訊協定可搭配使用 Cookies 的設計。請說明 Cookies 的運作原理以及優缺點。(10 分)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

HTTP 的 stateless(無狀態),是指伺服器處理每一個請求時,不會因為 HTTP 協定本身而自動記住同一用戶端先前請求的內容或處理狀態。每個請求都必須帶有完成當次處理所需的資訊,伺服器不會只憑「這是剛才那位用戶端」便推知其先前做過什麼。

無狀態不代表伺服器完全不能保存資料,而是指 HTTP 本身不負責維持請求間的對話狀態。應用程式仍可透過 Cookie、伺服器端工作階段(session)、資料庫或其他機制保存狀態。

解題方法:比較是否保留請求間狀態

作答時,先說明無狀態的定義,再從伺服器記憶體、擴充性、故障復原及應用便利性,與 stateful(有狀態)設計比較。

面向Stateless 設計Stateful 設計
請求處理各請求可獨立處理伺服器保留先前請求的狀態
伺服器資源不必為每個用戶端維持連線或對話狀態需保存狀態,並管理其生命週期
負載平衡請求較容易交由任一伺服器處理若狀態存在單一伺服器,需黏著式連線或狀態同步
故障復原伺服器更換後,可依請求資料繼續處理狀態若未備份或複寫,故障可能中斷對話
應用便利性每次請求需提供足夠資訊,應用程式較難延續互動脈絡較容易延續使用者操作流程

Stateless 設計的優點與缺點

優點:

  1. 容易水平擴充: 任一伺服器皆可處理獨立請求,較容易透過負載平衡分散流量。
  2. 降低伺服器狀態管理負擔: 不必在伺服器端為每個用戶端持續保留完整對話狀態,可減少記憶體與狀態同步成本。
  3. 故障復原較直接: 若單一伺服器故障,只要其他伺服器具備必要資源,後續請求仍可由其他伺服器處理。
  4. 請求較容易重送與快取: 請求自含必要資料時,較容易重試、記錄與由中介快取處理;實際能否安全重送或快取仍取決於 HTTP 方法及應用語意。

缺點:

  1. 請求可能重複攜帶資料: 身分識別、授權或操作脈絡等資訊,可能必須在多次請求中重複提供。
  2. 應用程式需另外維持狀態: 例如購物車、登入狀態或多步驟表單,需要搭配 Cookie、session 或資料庫等機制。
  3. 應用層設計較複雜: 開發者必須明確處理狀態保存、識別與還原;若把狀態交由用戶端攜帶,亦須處理竄改與保護問題。

解題技巧與常見陷阱

記住:HTTP 無狀態,指協定不自動記住前後請求,不代表網站不能提供登入或購物車功能。 登入狀態可以透過 Cookie 傳送識別碼,再由伺服器查詢對應的 session;這是應用程式在 HTTP 之上補上狀態管理。


(二)Cookies 的運作原理與優缺點

核心觀念

Cookie 是伺服器透過 HTTP 標頭要求瀏覽器儲存的一小段資料。瀏覽器會依 Cookie 的網域、路徑、期限及安全屬性等規則,在符合條件的後續請求中送回該 Cookie,使伺服器能識別請求或取得相關資料。

Cookie 可保存狀態識別資訊,但它本身不會把 HTTP 變成有狀態協定;它是用戶端與伺服器在 HTTP 之上維持應用狀態的一種機制。

解題方法:依請求與回應順序說明

🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

第 四 題20 分

(一) 無線網路常會發生 hidden terminal 的問題,請說明這是什麼問題且為何會發生。(10 分)

(二) WiFi 無線網路可使用 RTS、CTS、DATA、ACK 的 frames 來避免發生 hidden terminal 的問題,請說明這方式的運作原理。(10 分)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

Hidden terminal(隱藏終端)是無線網路中,兩個無線工作站彼此聽不到對方,卻都能與同一個接收端通訊的情形。由於工作站無法偵測彼此的傳輸,可能同時向接收端送資料,造成碰撞。

解題方法

以工作站 A、B 與接收端 S 為例:

  • A 能與 S 通訊,B 也能與 S 通訊。
  • 但 A 與 B 相距較遠,或受到障礙物、訊號衰減影響,彼此無法接收到對方的訊號。
  • A 傳送前進行載波感測時,聽不到 B;B 傳送前也聽不到 A。
  • 因此 A、B 可能都判定媒介閒置,並同時傳送資料。兩個訊號在 S 處重疊,造成接收碰撞。

這反映了無線媒介的載波感測範圍與接收端的通訊範圍不完全相同:工作站能否彼此聽見,不必然能反映它們是否會在共同接收端造成碰撞。

解題技巧

可用「彼此聽不到,但都聽得到接收端」記憶 hidden terminal。作答時要指出兩個結果:傳送端無法互相感測,以及共同接收端可能收到碰撞資料。

(二)RTS/CTS 避免 Hidden terminal 的運作原理

核心觀念

IEEE 802.11 的 RTS/CTS 機制以短控制訊框預約媒介。傳送端先送出 RTS(Request to Send),接收端回覆 CTS(Clear to Send),再進行 DATA 與 ACK 傳輸。鄰近工作站透過聽到 RTS 或 CTS,設定網路配置向量 NAV,在預約期間延後傳送。

解題方法

🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

第 五 題20 分

(一) Domain Name System(DNS)是網際網路運行時不可或缺的重要功能,它採用分散式且階層式的設計。請說明其 iterative DNS query 的運作原理。(10 分)

(二) DNS 可被用來進行 Distributed Denial-of-Service(DDoS)攻擊。請說明此攻擊的運作原理。(10 分)

登入後即可作答並保存紀錄。

這一題的完整詳解

核心觀念

DNS 採分散式、階層式架構,將網域名稱的查詢工作分散到不同層級的 DNS 伺服器。Iterative query(迭代式查詢)是指:收到查詢的伺服器若不知道答案,會回覆自己所知的下一個查詢方向,由查詢端再向其他 DNS 伺服器查詢。伺服器不會代替查詢端一路追問到底。

解題方法

以查詢 www.example.com 的 IP 位址為例:

  1. 使用者的主機先向本地 DNS 解析器(通常是遞迴解析器)提出查詢。
  2. 解析器若沒有快取答案,便向 DNS 根伺服器詢問。根伺服器不一定知道 www.example.com 的 IP,但會回覆 .com 頂級網域(TLD)伺服器的資訊。
  3. 解析器再向 .com TLD 伺服器查詢。TLD 伺服器回覆 example.com 權威名稱伺服器的資訊。
  4. 解析器接著向 example.com 的權威名稱伺服器查詢。權威伺服器回覆 www.example.com 的紀錄,例如 A 紀錄中的 IPv4 位址。
  5. 解析器將結果回覆給使用者主機,並可依紀錄的 TTL 將答案快取一段時間。

因此,雖然使用者通常只對本地解析器送出一次請求,後續由解析器逐站查詢根、TLD 與權威伺服器的過程,採用的就是迭代式查詢。

解題技巧

掌握「不知答案就提供下一站線索,查詢端自行前往」即可判斷迭代式查詢。其與遞迴式查詢的差別在於:遞迴查詢要求被詢問的伺服器負責取得最終答案;迭代查詢則由查詢端逐一詢問各伺服器。

(二)利用 DNS 進行 DDoS 攻擊的運作原理

核心觀念

🔒

後續完整解題步驟與【答案】

免費註冊,享 3 天全站完整詳解閱覽。

免費註冊

其他考古題