目錄

簡介

必要條件

需求

採用元件

慣例

流程

相關資訊

簡介

本文件說明封包存留時間。

必要條件

需求

本文件沒有特定需求。

採用元件

本文件所述內容不限於特定軟體和硬體版本。

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您在即時網路中工作，請確保在使用任何命令之前瞭解其潛在影響。

慣例

如需文件慣例的詳細資訊，請參閱思科技術提示慣例。

流程

思科低端路由器包括1xxx、25xx、26xx、3600、3800、4000、4500和4700系列。在這些路由器中，消息由某個人通過線路傳送並由另一個系統中的控制器接收。在大多數系統中，該控制器將資料包直接儲存在緩衝區記憶體中。當消息被完全接收時，控制器儲存一些指標資訊，以便入口驅動程式可以找到它，然後呈現接收中斷。

注意：如果控制器沒有用於儲存消息的緩衝區，它此時會記錄「ignore」並且不會收到消息。

在未來的某個時刻（通常以微秒為單位），驅動程式將處於活動狀態。驅動程式首先檢查傳輸隊列，然後檢查接收隊列。目前，我們將重點關注接收隊列處理。驅動程式檢查隊列的必要方面，確定有消息，從隊列中刪除消息，並補充控制器的接收緩衝區清單。然後，它決定要傳送消息的轉發器(例如IP或網際網路資料包交換(IPX))。

對於此說明，假定這是IP消息。驅動程式會將IP消息傳遞給配置的IP快速路徑。它首先從消息中刪除鏈路層報頭，然後確定是否在輸入介面上配置了快速路徑。如果沒有設定任何值，則封包會置入（標籤）到「輸入保留佇列」中，並檢查計數器。如果計數器為零，「輸入保持隊列」將用盡，資料包將被丟棄。如果計數器不為零，則遞減該計數器且消息入隊到進程路徑。

注意：「輸入保持隊列」不是文字意義上的隊列。它是指在介面上收到的一組資料包，未完全處理（通過將消息轉發到出口介面或釋放緩衝區）。 但是，如果有已設定的快速路徑（通常有），則消息會傳遞給快速路徑。

現在，快速路徑會驗證報文並將一些功能集應用到未路由的報文上。此步驟包括解密或解壓縮，或同時解壓縮（如有必要），執行網路地址轉換(NAT)、應用輸入承諾訪問速率(CAR)測試、應用策略路由測試等。

如果使用了策略路由，則實際上會選擇輸出介面。如果未使用策略路由，則下一步是在路由快取中查詢目標地址，該過程稱為「交換資料包」。 根據快速交換模式，快取的結構和內容會有所不同。在標準快速交換中，快取包含最近使用的目標字首路由或目標主機路由，並且有時沒有快取條目。在這種情況下，消息將跳至進程級別，再次標籤為「輸入保持隊列」。 在Cisco快速轉發交換中，快取（稱為轉發資訊庫，或FIB）是一個完整的路由表，因此不會發生該過程。

如果找到路由，則路由快取條目（或「鄰接關係」，在Cisco Express Forwarding中稱為「鄰接關係」）指示輸出軟體、硬體介面以及消息上要放置的報頭（下一個相關躍點）。 對於多路複用介面，這將是下一個相關的虛電路或虛擬通道。

在該軟體介面上，可能會出現許多問題。例如，介面可能已設定了小於訊息大小的最大傳輸單位(MTU)。由於快速路徑中沒有分段，因此此特定事件將是「顛簸」到進程級別的原因。此外，該介面可能配置用於NAT處理、輸出CAR等。在消息處理的這一階段，將應用這些功能。最後，將輸出介面的鏈路層報頭附加到消息上，並傳遞給輸出驅動程式。

該消息將呈現給驅動程式中的快速傳送常式，該常式執行以下步驟。

1. 驅動程式會詢問許多問題，例如「Do I must copy the message to a new buffer before transmit it？」

2. 它確定流量整形是否處於活動狀態。如果流量整形處於活動狀態，它將比較指定類消息的消息到達速率和消息傳輸速率。如果在子介面上形成整形隊列，或者該隊列不存在，但現在已超過該速率，則將該消息放入軟體介面的隊列中。

3. 如果流量整形未處於活動狀態、未應用於此消息，或者尚未超過速率，驅動程式現在會詢問輸出控制器的傳輸隊列深度是否低於tx-queue-limit。如果低於該限制，驅動程式只需將消息排隊進行傳輸即可。沿此路徑傳送的訊息會視為已快速開啟輸入和快速開啟輸出。

4. 但是，如果無法進行快速交換，驅動程式會將消息轉移到軟體隊列中，通常稱為「輸出保持隊列」。 此類保留隊列的示例包括先進先出(FIFO)隊列、優先順序隊列、自定義隊列和加權公平隊列(WFQ)。

由於這也是跟隨進程路徑的消息的目的地，因此此類消息被視為已快速切換輸入和進程切換輸出。請注意，實際上，它們不是進程切換的。當封包在快速路徑中交換時，會做出交換決定。但是，消息被轉移到與進程路徑共用的隊列。當消息從保持隊列中移除並排入傳輸控制器時，該消息在稍後被視為進程交換。

進程交換是指當消息無法在快速路徑中傳輸時發生的現象。這意味著報文已傳送到此系統，並將最終（理想情況下）由路由過程、鏈路維護過程、網路管理過程等使用。但是，某些流量確實會經過流程路徑，例如使用連結分段和交錯(LFI)在跳數區段之間交際語音的流量、X.25流量、需要分段之流量，以及沒有快速路徑路由輸入之流量。處理路徑上的處理在概念上與快速路徑相同，但由於各種原因在實施上有所不同。不同之處在於，在輸出時，「輸入保持隊列」標誌被清除，並且輸入介面上的計數器遞增（從輸入保持隊列中移除消息），並且消息被排入輸出保持隊列中。然後，模擬一個中斷，它可能觸發消息在輸出介面上的傳輸。與快速交換相比，由於進程開銷，交換速度較慢；當收到此類消息時，可能還會運行一些其他進程，並且需要處理一些更複雜的資料結構。

相關資訊

- IP 路由通訊協定支援頁面

- IP 路由支援頁面

- 技術支援 - Cisco Systems