• If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.
Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.

Announcement

Collapse
No announcement yet.

Hỏi về các kỹ thuật queuing?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hỏi về các kỹ thuật queuing?

    Hi all,
    Xin hỏi ai có tài liệu về Queu bằng tiếng Việt không nhỉ?
    Nếu ai có thì share cho mình với.
    Cám ơn nhiều nhiều và xin đa tạ! :)

  • #2
    chào

    đối với cấp độ ccnp, cần nắm và phân biệt rõ cơ chế hoạt động và sự khác nhau của các dạng queue sau đây:

    FIFO:
    WFQ: routers sẽ tự động phân traffic thành các luồng (flow). Mỗi flow sẽ được xử lý theo giá trị ToS. Riêng trong từng flow, thứ tự xử lý là FIFO.

    CBWFQ: quá trình phân thành flow được cải tiến và do người quản trị định nghĩa. Traffic được phân thành từng class. Với mỗi class sẽ có một policy tương ứng cho class đó.

    LLQ: Là một cải tiến của CBWFQ. Các policy của LLQ luôn active cho dù có nghẽn hay không có nghẽn xảy ra.

    Comment


    • #3
      RE: Queue???!!!

      Cisco IOS hỗ trợ ba loại queue là weight fair queue, class-based weight fair queue CBWFQ và LLQ. Ngoài ra các loại priority queue và custom queue có thể xếp vào loại CBWFQ.

      Việc chọn lựa loại hàng đợi queuing nào phụ thuộc và độ trễ (delay). Đối với các cổng của router có băng thông nhỏ hơn 2Mbps, mặc định WFQ sẽ được dùng.
      Nguyễn Hữu Hòa, CCNA
      CCNP in progress

      Comment


      • #4
        Hỏi về các kỹ thuật queuing?

        Mình đọc một số tài liệu BCRAN cũ thì thấy có đề cập tới custom queue và priority queue. Nhưng một số tài liệu mới thì không thấy đề cập tới nữa.

        Bây giờ 2 loại này không được dùng nữa hay sao? Mình đọc tài liệu thì thấy lung tung quá. Queuing có đủ thứ kiểu, rồi CAR, Traffic shaping. Bạn nào có thể cho mình xin 1 tài liệu tổng quát về các vấn đề này?

        Cám ơn

        Phúc

        Comment


        • #5
          Chào nhatphuc

          Tài liệu hay nhất về vấn đề queuing và QoS hiện giờ là quyển

          dQOS của Weldell Odom và Micheal J. Cavanaugh.

          nhatphuc tìm đọc quyển đó nhé.

          Thân chào
          In VnPro we trust

          Comment


          • #6
            Cám ơn bạn,

            Nhưng bạn có thể chỉ mình chỗ down cuốn này không?

            Phúc

            Comment


            • #7
              Có một cuốn Deploying Cisco QoS for Enteprise Networks v1.0 Student Guide nè, bác cần không tui gửi cho :D
              OPEN $OURCE
              $AVES MONEY
              .................................................. .

              Hãy như dòng nước chảy về với đại dương, từ tốn, hiền hòa , gặp hòn đá giữa đường thì vòng qua, đi tiếp.. lớn dần, lớn dần, cuốn trào qua tất cả.. lại từ tốn , hiền hòa... trôi... để rồi đến trước đại dương bao la.. và tan vào biển cả.
              Hãy như mây lang thang, chẳng từ đâu đến, chẳng đi về đâu, lững lờ trôi, cuồn cuộn chảy, chẳng bao giờ muốn, gió thổi thì đi, gió ngừng thì đứng, lúc nào cũng thấy.

              Comment


              • #8
                Bạn gởi cho mình đi. Email của mình là: nhatphuc@gmail.com

                Cám ơn

                Phúc

                Comment


                • #9
                  Cơ chế quản lý nghẽn, còn được gọi là cơ chế hàng đợi (queuing), muốn chỉ đến cách thức mà một router hay một switch quản lý một gói tin hay một frame khi dữ liệu đó đang chờ để đi ra một cổng. Với router, quá trình chờ đợi thường diễn ra khi tiến trình đẩy gói tin IP đã hoàn tất. Vì vậy, cơ chế hàng đợi thường chỉ được xem xét là hàng đợi ra. Các LAN switch thường hỗ trợ cả hàng đợi vào và hàng đợi ra, trong đó hàng đợi vào thường được dùng để nhận frame đang được truyền ra ngõ ra của switch.

                  Công cụ tránh nghẽn muốn chỉ đến thuật toán được dùng khi quyết định có hay không và khi nào thì gói tin nên bị loại bỏ khi một hệ thống hàng đợi đã bị quá tải.

                  Khái niệm hàng đợi trong Cisco router

                  Các router Cisco có thể được cấu hình để thực hiện đưa vào hàng đợi những gói tin đang chờ thoát ra khỏi một cổng. Ví dụ, nếu một router nhận mức lưu lượng 5Mbps mỗi giây trong vài giây liên tiếp và tất cả các lưu lượng đó cần đi ra một cổng T1, router sẽ không thể truyền tất cả các lưu lượng đó. Vì vậy, router sẽ đặt tất cả các gói tin vào một trong những hàng đợi phần mềm. Những hàng đợi này có thể cấu hình và thông qua đó, người quản trị có thể can thiệp những gói tin nào có thể kế tiếp rời khỏi cổng, những gói tin nào có thể loại bỏ.

                  Hàng đợi phần cứng và hàng đợi phần mềm

                  Khái niệm này dễ bị bỏ qua các chi tiết bên dưới của hàng đợi cứng và hàng đợi mềm trong một cổng vật lý của router. Các hàng đợi được tạo ra trên một cổng của router bằng các công cụ hàng đợi là hàng đợi mềm vì các hàng đợi này được hiện thực bằng phần mềm. Tuy nhiên, khi cơ chế hàng đợi xử lý đến gói tin kế tiếp trong hàng đợi mềm, gói tin này không được di chuyển trực tiếp ra cổng vật lý.

                  Thay vào đó, router sẽ di chuyển gói tin từ hàng đợi mềm sang một hàng đợi nhỏ bằng phần cứng FIFO. Cisco gọi các hàng đợi riêng biệt cuối cùng này là hàng đợi truyền transmit queue (TX queue) hoặc vòng tròn hoặc vòng tròn truyền (TX ring) tùy thuộc vào kiểu router. Tổng quát, các hàng đợi này được gọi là các hàng đợi phần cứng.

                  Các hàng đợi phần cứng có các đặc điểm sau đây:
                  - Khi một cổng hoàn tất việc gửi một gói tin, gói tin kế tiếp từ hàng đợi cứng có thể được mã hóa và gửi ra cổng mà không cần ngắt CPU bằng phần mềm, giúp đảm bảo sử dụng đầy đủ băng thông của cổng.
                  - Luôn luôn dùng cơ chế FIFO.
                  - Không thể bị ảnh hưởng bởi các công cụ hàng đợi QoS.
                  - IOS tự động giảm kích thước của hàng đợi phần cứng đến một chiều dài nhỏ hơn khi một công cụ hàng đợi được dùng.
                  - Các hàng đợi phần cứng có chiều dài ngắn có ý nghĩa là các gói tin có thể kiểm soát bằng các phần mềm hàng đợi, cho phép các hàng đợi mềm kiểm soát chặt chẽ hơn lưu lượng đi ra khỏi cổng. Chức năng duy nhất của hàng đợi phần cứng mà ta có thể thao tác là chiều dài của hàng đợi. Hình dưới đây mô tả chiều dài hiện thời của hàng đợi và làm thế nào để thay đổi chiều dài.

                  Ví dụ bắt đầu bằng hàng đợi FIFO trên một cổng. Trong ví dụ này, hàng đợi mặc định có chiều dài là 16.

                  R3# show controllers serial 0/0
                  Interface Serial0/0

                  tx_limited=0(16)
                  ! lines omitted for brevity
                  ! Next, the TX ring is set to length 1.
                  ! (The smallest recommended value is 2.)
                  R3# conf t
                  Enter configuration commands, one per line. End with CNTL/Z.
                  R3(config)# int s 0/0
                  R3(config-if)# tx-ring-limit1
                  R3(config-if)# ^Z

                  (còn tiếp)
                  Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

                  Email : dangquangminh@vnpro.org
                  https://www.facebook.com/groups/vietprofessional/

                  Comment


                  • #10
                    So sánh các công cụ hàng đợi

                    Cisco IOS cung cấp nhiều công cụ hàng đợi. Bảng dưới đây sẽ tóm tắt các đặc điểm chính của các công cụ hàng đợi khác nhau.

                    Khi ta khảo sát các cơ chế hàng đợi khác nhau, ta cần xem xét cách thức phân loại mà cơ chế hàng đợi này dùng, chính sách loại bỏ gói tin khi tất cả các hàng đợi đều đã đầy, phần định thời được dùng để giải phóng gói tin. Ta cũng cần phân tích số hàng đợi tối đa được hỗ trợ trong mỗi cơ chế và chiều dài tối đa của mỗi hàng đợi.

                    Phân loại: Xem xét gói tin để đưa vào hàng đợi phù hợp
                    Chính sách loại bỏ gói tin: Các luật được dùng để chọn ra gói tin nào sẽ loại bỏ khi hàng đợi bắt đầu đầy
                    Định thời: Cơ chế dùng để xác định gói tin nào sẽ được giải phóng
                    Số hàng đợi tối đa: Định nghĩa số nhóm lưu lượng
                    Số chiều dài tối đa của hàng đợi: Số gói tin tối đa trong một hàng đợi
                    Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

                    Email : dangquangminh@vnpro.org
                    https://www.facebook.com/groups/vietprofessional/

                    Comment


                    • #11
                      Hàng đợi FIFO

                      Nguyên nhân chủ yếu cho việc dùng giải pháp hàng đợi là một router cần giữ một gói tin trong bộ nhớ khi cổng ra của router đang bận gửi một gói tin khác. Cơ chế FIFO đơn giản sẽ cung cấp một hàng đợi mềm để lưu tạm gói tin khi gói tin đang chờ đi ra khỏi một cổng. Các gói tin được định thời để rời khỏi cổng dựa trên thời điểm mà nó đến cổng ra của router. Bởi vì router mặc định dùng WFQ trên cổng serial với băng thông nhỏ hơn mức E1 (2.048Mbps), do đó để cấu hình FIFO, ta chỉ cần tắt WFQ hoặc bất kỳ các cơ chế hàng đợi nào đang dùng trên cổng.

                      Cài đặt duy nhất cho cơ chế hàng đợi FIFO là gán chiều dài hàng đợi dùng lệnh hold-queue x out trong đó x là chiều dài tối đa của hàng đợi. Ví dụ dưới đây sẽ mô tả cách cấu hình và cách xem hàng đợi FIFO.

                      ! Dưới đây cấu hình FIFO bằng cách tắt WFQ

                      R3# conf t
                      R3(config)# interface s0/0
                      R3(config-if)# no fair-queue
                      R3(config-if)#exit

                      Khi hiển thị thông số của cổng, hàng đợi được dùng là FIFO, chiều dài tối đa là 40.

                      R3#show int s0/0
                      Serial0/0 is up, line protocol is up
                      ! lines omitted for brevity
                      Queueing strategy: fifo
                      Output queue: 0/40 (size/max)
                      Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

                      Email : dangquangminh@vnpro.org
                      https://www.facebook.com/groups/vietprofessional/

                      Comment


                      • #12
                        Hàng đợi ưu tiên (Priority Queuing)

                        Điểm khác biệt lớn nhất của PQ là trong phần định thời của nó. PQ định thời lưu lượng sao cho các hàng đợi mức cao luôn luôn được phục vụ trước. PQ dùng bốn hàng đợi, có tên là cao, vừa, bình thường và thấp.

                        Cơ chế định thời của PQ có vài ưu điểm và nhược điểm rõ ràng. Các gói tin trong hàng đợi ưu tiên cao sẽ nhận mức dịch vụ tuyệt vời. Loại lưu lượng này có thể chiếm 100% băng thông của kết nối và có độ trễ tối thiểu. Tuy nhiên, khi cổng của router đã trở nên bị nghẽn, các hàng đợi có độ ưu tiên thấp hơn sẽ chịu hiện tượng hàng đợi chết, không có băng thông với thời gian delay tăng cao.

                        Mặc dù phần định thời là phần hay nhất của PQ, cơ chế PQ cũng còn nhiều đặc tính khác. PQ phân loại các gói tin vào bốn hàng đợi thông qua các cách phân loại bao gồm tham chiếu đến IP ACLs. Tuy nhiên, PQ hỗ trợ các tuỳ chọn phân loại ít hơn các cơ chế hàng đợi CBWFQ và LLQ.

                        PQ dùng cơ chế loại bỏ cuối hàng tail-drop, vì vậy khi một gói tin mới đến một hàng đợi và hàng đợi này bị đầy, gói tin mới sẽ bị loại bỏ. Chiều dài của hàng đợi có thể cấu hình đến các mức khác nhau, với gía trị mặc định là 20, 40, 60, 80 tương ứng với các hàng đợi cao, vừa, bình thường và thấp.
                        Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

                        Email : dangquangminh@vnpro.org
                        https://www.facebook.com/groups/vietprofessional/

                        Comment


                        • #13
                          Custom Queuing

                          Kiểu hàng đợi CQ giải quyết trở ngại lớn nhất của PQ bằng cách cung cấp một băng thông tối thiểu đến từng hàng đợi vì vậy CQ tránh được hiện tượng hàng đợi bị chết. CQ có 15 hàng đợi, mặc định cho 16 nhóm lưu lượng khác nhau. Cũng có một hàng đợi ẩn dành cho các lưu lượng quan trọng gọi là hàng đợi hệ thống system queue. Ta không thể cấu hình để thay đổi hay để tắt hàng đợi hệ thống system queue.

                          Khía cạnh tiêu cực của cơ chế CQ khi so sánh với PQ là việc thiếu một hàng đợi có độ ưu tiên cao luôn luôn được phục vụ trước các hàng đợi khác. CQ không có cách nào để đảm bảo một dịch vụ có độ trễ thấp cho một loại lưu lượng nào đó. Bộ phận định thời của CQ dành ra một phần đáng kể của băng thông cho từng hàng đợi, nhưng thay vì cấu hình tỉ lệ phần trăm thực sự, CQ chỉ ước lượng tỉ lệ phần trăm dùng một thuật toán đơn giản.

                          Cơ chế định thời của CQ thực hiện theo kiểu xoay vòng round-robin trên mỗi hàng đợi, bắt đầu với hàng đợi 1. CQ sẽ nhận gói tin từ hàng đợi, cho đến khi nào đạt được hoặc vượt quá tổng số bytes chỉ định cho một hàng đợi. Chỉ số này gọi là byte-count. Sau khi hàng đợi đã được phục vụ (xử lý) cho một số bytes xác định, hoặc khi hàng đợi không còn gói tin nào, CQ sẽ chuyển sang hàng đợi kế tiếp và tiếp tục lặp lại tiến trình.

                          CQ không có hàng đợi nào có độ ưu tiên ngầm định mà đơn giản chỉ có tỉ lệ băng thông ngầm định. Thật ra, nếu có một hàng đợi có thể được cấu hình với số byte count chiếm 60% băng thông kết nối, và nếu 90% các loại lưu lượng đi vào hàng đợi đó, bạn có thể cho rằng hàng đợi đó là loại ưu tiên thấp.

                          Giống như trong PQ, phần định thời là phần thú vị nhất trong cơ chế CQ. CQ dùng cùng cơ chế phân loại và dùng cơ chế loại bỏ gói tin ở cuối hàng taildrop. Bởi vì không có hàng đợi nào tốt hơn hàng đợi nào, mặc định CQ dùng hàng đợi có chiều dài 20 gói tin.
                          Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

                          Email : dangquangminh@vnpro.org
                          https://www.facebook.com/groups/vietprofessional/

                          Comment


                          • #14
                            Cảm ơn các bài đã post của bác Minh.
                            Luôn tiện, bác post cho anh em các bài giới thiệu về WFQ, CBWFQ và LLQ.

                            Many thanks again.

                            Comment


                            • #15
                              Hàng đợi theo trọng số (Weighted Fair Queuing - WFQ)

                              WFQ khác với PQ và CQ ở vài điểm. Sự khác biệt lớn nhất là WFQ không cho phép người quản trị can thiệp vào quá trình phân loại lưu lượng. WFQ tự động phân loại các gói tin dựa trên thông tin về dòng lưu lượng, trong đó từng dòng sẽ được đặt trong một hàng đợi riêng lẽ. Một dòng lưu lượng được định nghĩa bao gồm tất cả các gói tin có cùng thông số như:

                              - Địa chỉ IP nguồn.
                              - Địa chỉ IP đích.
                              - Giao thức lớp transport.
                              - Địa chỉ cổng nguồn TCP hay UDP.
                              - Địa chỉ cổng đích TCP/UDP
                              - Giá trị độ ưu tiên của gói tin IPP (IP Precedence).

                              Bởi vì WFQ phân các gói tin vào các dòng lưu lượng khác nhau và sau đó đưa các dòng này vào trong những hàng đợi khác nhau, router sẽ có số hàng đợi khác nhau. Số hàng đợi này nhiều hơn bất kỳ các công cụ hàng đợi khác (tức là các công cụ hàng đợi không xử lý theo dòng lưu lượng). Cơ chế định thời của WFQ dùng các thuật toán hoàn toàn khác với các thuật toán của các công cụ hàng đợi khác ở điểm nó có thể quản lý một số lượng lớn các hàng đợi. Tuy nhiên, mục đích tổng thể của WFQ là rất dễ hiểu và được tóm tắt như sau:

                              - Các dòng có cùng độ ưu tiên IPP của gói tin IP sẽ được cấp cùng một mức băng thông, bất chấp có bao nhiêu byte trong mỗi dòng lưu lượng.
                              - Đối với những dòng có những giá trị IPP khác nhau, các dòng có độ ưu tiên IPP cao hơn sẽ được cấp một lượng băng thông cao hơn.
                              - Kết quả là WFQ sẽ ưu tiên cho những dòng có dung lượng nhỏ và có độ ưu tiên cao.

                              Giả sử, nếu WFQ đang quản lý mười hàng đợi với các giá trị IPP bằng nhau trên một cổng 128 kbps, mỗi dòng lưu lượng sẽ nhận được khoảng băng thông bình quân 12.8 kbps. Các hàng đợi sẽ làm cho những dòng lưu lượng lớn hơn 12.8 kbps, nghĩa là bị trễ (delay) nhiều hơn. Các dòng có băng thông nhỏ hơn 12.8 kbps sẽ truyền đi nhanh hơn và trong trường hợp các hàng đợi là trống thì WFQ sẽ cấp phần băng thông dư cho những hàng đợi khác. Kết quả là các dòng lưu lượng thấp sẽ đi qua, còn dòng lưu lượng cao sẽ bị ảnh hưởng.

                              Mục đích thứ hai của WFQ là cung cấp đủ băng thông cho các dòng lưu lượng có độ ưu tiên IPP cao. Để làm điều này, các dòng lưu lượng được gán trọng số dựa theo giá trị IPP + 1. Nói cách khác, các dòng có độ ưu tiên IPP bằng 7 sẽ có băng thông nhiều hơn tám lần so với dòng có độ ưu tiên IPP bằng 0, bởi vì (7+1)/(0+1)=8. Một ví dụ khác, nếu so sánh dòng lưu lượng có độ ưu tiên 3 với dòng có độ ưu tiên 0, tỉ lệ băng thông được cấp phát là (3+1)/(0+1)=4.

                              Tiến trình định thời trong WFQ

                              Để đạt được mục đích cấp phát băng thông, WFQ dùng bộ định thời khá đơn giản. Bộ định thời sẽ lấy gói tin có chỉ số tuần tự thấp nhất sequence number SN (còn gọi là thời gian hoàn thành finish time) khi nó cần chuyển gói tin kế tiếp đến hàng đợi phần cứng.

                              Cơ chế WFQ sẽ gán mỗi gói tin một chỉ số tuần tự SN khi gói tin đi vào hàng đợi WFQ. Tiến trình gán chỉ số tuần tự SN cũng là một phần quan trọng trong cơ chế định thời của WFQ. Bộ định thời WFQ sẽ tính toán chỉ số tuần tự SN dựa trên nhiều thông số của dòng lưu lượng, bao gồm cả chiều dài và độ ưu tiên IPP của gói tin.

                              Công thức tính chỉ số tuần tự SN của một gói tin trong một dòng lưu lượng là như sau:
                              SN= chỉ số SN trước đó + (trọng số weight * chiều dài gói tin mới).

                              Trong đó trọng số được tính như sau:
                              Weight = 32384 / (IP_Precedence + 1)

                              Công thức trên có tham chiếu đến chiều dài của gói tin mới, trọng số của dòng lưu lượng và giá trị SN trước đó.

                              Bằng cách xem xét chiều dài gói tin, việc tính toán chỉ số tuần tự SN có thể dẫn đến một chỉ số SN rất cao cho những gói tin có kích thước lớn và chỉ số tuần tự SN thấp hơn cho những gói tin có kích thước nhỏ hơn. Với việc bao gồm luôn chỉ số tuần tự SN của gói tin trước đó trong hàng đợi, công thức này sẽ tính ra chỉ số SN lớn hơn cho những gói tin trong hàng đợi đã có một số lượng lớn gói tin.

                              Bằng cách gán trọng số (IPP+1), các gói tin các độ ưu tiên IPP cao sẽ có kết quả SN thấp hơn.

                              Tính toán chỉ số tuần tự SN của một gói tin thì dễ dàng. Tuy nhiên gói tin đầu tiên trong một dòng lưu lượng nào đó thì không có chỉ số tuần tự SN của gói tin trước đó để dùng trong công thức tính toán trên. Công thức mô tả rằng chỉ số tuần tự SN của gói tin cuối cùng được đưa vào hàng đợi cứng thì được dùng như là chỉ số tuần tự SN cho dòng mới theo sau.

                              Sau khi các chỉ số tuần tự SN đã được gán, còn lại, công việc chọn gói tin nào để giải phóng của bộ định thời của WFQ trở nên đơn giản. Nó sẽ lấy gói tin có chỉ số SN thấp nhất giữa tất cả các hàng đợi.

                              (còn tiếp)
                              Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

                              Email : dangquangminh@vnpro.org
                              https://www.facebook.com/groups/vietprofessional/

                              Comment

                              Working...
                              X