2025年11月12日 星期三

routeros cake 封包最佳化


 簡單 實用

 

 

/queue type
add name=cake-down kind=cake cake-bandwidth=95M cake-diffserv=diffserv4 cake-mpu=64 cake-overhead=18
add name=cake-up kind=cake cake-bandwidth=48M cake-diffserv=diffserv4 cake-mpu=64 cake-overhead=18
 

 cake-bandwidth:略低於實際 ISP 速度,避免 bufferbloat

cake-diffserv=diffserv4:小封包優先(DNS/VoIP/遊戲)

cake-mpu=64:保護小封包低延遲

cake-overhead=18:補正 Ethernet/PPPoE 標頭  

  95m 和48m 是我這邊的,你自己要改

 

mss clamp  wan/lan  

# LAN → WAN
add action=change-mss chain=forward out-interface=wanport protocol=tcp tcp-flags=syn new-mss=clamp-to-pmtu comment="LAN→WAN Auto MSS"

# WAN → LAN
add action=change-mss chain=forward in-interface=wanport protocol=tcp tcp-flags=syn new-mss=clamp-to-pmtu comment="WAN→LAN Auto MSS"


  • 雙向 LAN ↔ WAN 自動調整 MSS

    放在 forward chain 最上方

    重要,二條不能合併成一條。chatgpt 原本說能,後來設定沒有效果 

     




  • 2.3 Packet Marking(上下行封包標記給 queue tree) 

     

    /ip firewall mangle 

    add action=mark-packet chain=forward in-interface=wanport new-packet-mark=download passthrough=yes comment="download: WAN→LAN"
    add action=mark-packet chain=forward out-interface=wanport new-packet-mark=upload passthrough=yes comment="upload: LAN→WAN"
     

     

    passthrough=yes 確保封包能被後續規則處理

    download/upload 對應 queue tree 的 packet-mark

    in-interface 要改你們自己的

     

     

    邏輯

    a.建立 mangle 

     b.建立 queue types

    使用 Kind cake 自動智慧化 "SQM"  

    c.用 queues > tree 設定 global 上下




    更新

     /queue type
    add cake-ack-filter=filter cake-autorate-ingress=yes cake-diffserv=diffserv8 cake-mpu=64 cake-overhead=18 \
        kind=cake name=cake-down
    add cake-ack-filter=filter cake-autorate-ingress=yes cake-diffserv=diffserv8 cake-mpu=64 cake-overhead=18 \
        kind=cake name=cake-up

    前提 cpu 效能高


    以上是 chatgpt 

    以下是 G3 最佳化

    cake-flowmode 是 CAKE 演算法的核心,決定了路由器如何將流量分類並進行「隔離」。

    簡單來說,這決定了是「讓每台電腦公平」,還是「讓每個應用程式(連線)公平」。

    以下是各個模式的詳細說明與適用場景:

    1. triple-isolate (三重隔離) —— ★★★ 強烈推薦 (預設值)

    這是 CAKE 最強大的模式,也是我建議您使用的模式。

    • 運作方式:它會同時檢查「來源 IP」、「目的 IP」以及「通訊協定 (5-tuple)」。它將流量分為「大流量 (Bulk)」和「小流量 (Sparse)」。

    • 效果

      • 即使是同一台電腦,正在全速下載 BT (大流量),同時在玩遊戲或 Ping (小流量)。

      • CAKE 會識別出這兩個是不同的「流」,並讓遊戲的小封包優先通過,不被自己的下載塞住。

    • 適合您的需求(極限使用 + 保護小流星)。它能防止單一應用程式霸佔所有頻寬。


    2. dual-srchost (雙重來源主機)

    • 運作方式:主要根據 來源 IP (Source IP) 來進行公平分配,同時也會看目的 IP。

    • 效果:強制讓發送端「每台設備」獲得公平的頻寬,不管該設備開了多少條連線。

    • 適合上傳 (Upload) 方向

      • 防止家中某一台手機在備份照片到雲端時,把其他人的上傳頻寬全部吃光。

    3. dual-dsthost (雙重目的主機)

    • 運作方式:主要根據 目的 IP (Destination IP) 來進行公平分配,同時也會看來源 IP。

    • 效果:強制讓接收端「每台設備」獲得公平的頻寬。

    • 適合下載 (Download) 方向

      • 防止某一台電腦在下載 Steam 遊戲時,導致其他人在看 Netflix 變模糊。它會強迫下載者讓出一部分頻寬給其他人。


    4. flowblind (流量盲) —— ❌ 不推薦

    • 運作方式:不區分流量是誰發的、去哪裡的。先進先出 (FIFO) 或簡單的隨機分配。

    • 後果:如果有一個 BT 下載開了 500 個連線,它就會搶贏只有 1 個連線的網頁瀏覽。

    • 適合:幾乎不適合現代家用/商用網路,除非你想節省極微小的 CPU 資源。


    5. src-ip (僅來源 IP) & dst-ip (僅目的 IP)

    • 運作方式:這是 dual- 模式的簡化版,只看單一方向的 IP hash。

    • 缺點:在大量 NAT 環境下,雜湊 (Hash) 可能會碰撞,導致某些運氣不好的 IP 被誤判在一起排隊。

    • 建議:既然你是 x86,效能足夠,直接用 dual- 系列或 triple-isolate 即可,不需要用這種簡化版。


    總結:針對您的選擇建議

    您提到**「不需要平均分配,極限使用網路即可,但不要塞住小流星」**。

    這句話的技術翻譯就是:不要針對「設備 (Host)」做死板的公平限制,而是要針對「連線行為 (Flow)」做智慧管理。

    • 最佳選擇triple-isolate

      • 原因:它允許單一設備跑滿 100% 頻寬(如果沒有其他人在用)。但只要有新的「小流星」(例如遊戲封包)進來,它會被識別為一個新的「稀疏流 (Sparse Flow)」,直接插隊優先處理。

    指令再次確認 (針對您的需求):

    Mikrotik
    /queue type
    set [ find name=cake-aggressive-down ] cake-flowmode=triple-isolate
    set [ find name=cake-aggressive-up ] cake-flowmode=triple-isolate

     

    /queue type
    add cake-diffserv=diffserv4 cake-memlimit=256.0MiB cake-mpu=64 cake-nat=yes cake-overhead=18
    cake-rtt-scheme=internet kind=cake name=cake-aggressive-down
    add cake-ack-filter=filter cake-diffserv=diffserv4 cake-memlimit=256.0MiB cake-mpu=64 cake-nat=
    yes cake-overhead=18 cake-rtt-scheme=internet cake-wash=yes kind=cake name=cake-aggressive-up

     

    套用在 simple 就可以了
    記得 overhead 每個都不一樣,pppoe 我的是 dhcp server 配發 wan ip


    這部份設定好,就已經有SQM 最佳了,不用管其他

     

     

    配合 mangle 小封包優先  
    add action=change-dscp chain=postrouting comment="Boost Small TCP ACK \E5\8A\A0\E9\80\9F TCP ACK (
    \E5\B0\8F\E5\B0\81\E5\8C\85) - \E9\98\B2\E6\AD\A2\E4\B8\8A\E5\82\B3\E6\BB\BF\E8\BC\89\E6\99\82
    \E4\B8\8B\E8\BC\89\E5\B4\A9\E7\9B\A4" new-dscp=46 out-interface-list=WAN packet-size=0-128
    protocol=tcp tcp-flags=ack


    Boost TCP SYN 加速 TCP SYN - 優先處理連線建立 (Handshake)
    add action=change-dscp chain=postrouting comment="Boost TCP SYN \E5\8A\A0\E9\80\9F TCP SYN - \E5

    \84\AA\E5\85\88\E8\99\95\E7\90\86\E9\80\A3\E7\B7\9A\E5\BB\BA\E7\AB\8B (Handshake)" new-dscp=
    46 out-interface-list=WAN protocol=tcp tcp-flags=syn

    沒得改了
    小封包優先 不塞車

    花了大概6小時一斷測試

    2025年11月1日 星期六

    網路電台 Streaming URL

     

     

    我要找 http://nossl.fmstream.org 類似的網站

     

     

     

    以下是 4 個 可搜尋或取得「網路電台 Streaming URL」的網站/資源(可用於手動加入播放器或整合):

    1. streamURL.link — 專門用來搜尋電台的串流 URL,使用者可在搜尋欄輸入電台名稱,取得直接播放鏈結。 streamurl.link

    2. Internet‑Radio.com — 提供全球電台目錄,雖然有時未必直接顯示可用的串流 URL,但可作為查找頻道來源。 internet-radio.com

    3. RCAST.NET — 提供大量網路電台目錄,標示「Free radio player + HTTPS stream URL」的服務。 rcast.net

    4. Radio.net — 提供超過 60,000 個國際電台,可透過瀏覽器或手機App收聽,但不一定每一項都能直接顯示純串流鏈結。 radio.net

    如果你需要的是「可直接用於播放器(如 VLC 或 網頁播放器)/可以嵌入的串流URL清單」,我可以再幫你尋找 10 個以上、且確定提供串流 URL 的目錄網站。你要嗎?