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.

Cho hỏi tính năng BPDU guard, uplink fast, backbone fast và root guard

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

  • Cho hỏi tính năng BPDU guard, uplink fast, backbone fast và root guard

    chào mọi người
    Mình đang chập chững đọc sách môn Switching, do đó đệ mong muốn có cao nhân nào giúp đệ một cái.
    Cám ơn nhiều

  • #2
    RootGuard

    Khi STP topology đã hội tụ và tạo thành một sơ đồ mạng không bị loop (loop-free topology) thì các cổng của switch sẽ đóng một số loại vai trò trong spanning tree.

    Rootport là cổng của switch có đường đi về rootswitch thấp nhất. Designated port là cổng trên một phân đoạn mạng có đường đi ngắn nhất về rootswitch. Cổng này có nhiệm vụ truyền các BPDUs xuống cho các switch ở nhánh dưới. Blocking port là những cổng không phải là root hay designated. Alternated port là những cổng ở trạng thái blocking, sẽ thay thế root port ngay lập tức nếu root port bị hỏng hóc hay sự cố. Alternated port là khái niệm được dùng khi sử dụng tính năng UplinkFast. Forwarding port là cổng bình thường của switch cho phép thiết bị đầu cuối kết nối vào.

    Sau khi rootswitch được tạo ra, nó sẽ gửi ra các BPDU xuống cho các switch ở nhánh dưới. Các switch nhánh dưới sẽ luôn luôn theo dõi các BPDUs được gửi ra từ root switch nhằm xem xét xem root switch có còn hoạt động bình thường nữa không. Nếu BPDU không còn nhận được nữa, các switch ở nhánh dưới sẽ cho rằng root switch đã bị sự cố hoặc đường dẫn đến root không còn tồn tại nữa. Giải thuật STP được chạy lại và tạo lại một sơ đồ mạng khác.

    Vị trí của RootSwitch trong STP topology rất quan trọng. Nó quyết định đường đi của các switch nhánh dưới lên Rootswitch là có tối ưu hay không. Do đặc điểm bầu chọn Root là dựa vào các BPDUs nên khi có một switch mới được thêm vào trong sơ đồ mạng STP thì sơ đồ mạng STP lúc này thay đổi. Các switch cần phải tính toán và bầu chọn lại RootSwitch cũng như đường đi mới đến RootSwitch. Trong BPDUs có chứa BridgeID, trong BridgeID lại chứa độ ưu tiên của switch. Switch nào có priority nhỏ nhất sẽ trở thành Root switch. Tuy nhiên, nếu có một switch lạ đã được cấu hình với priority thấp hơn cả priority của RootSwitch hiện tại, switch này gắn vào mạng và sẽ trở thành RootSwitch.

    Tính năng Root guard ra đời cho phép admin luôn giữ được vị trí Root switch theo ý đã chọn mà không sợ bị bất kì một switch lạ nào gắn thêm vào làm thay đổi STP topology. Với tính năng này, nếu có một switch lạ quảng bá một Superior BPDU cho root switch, Rootswitch sẽ không cho phép switch lạ này trở thành New Root Switch. Nó sẽ đưa cổng nhận superior BPDU trước đó trở về trạng thái Root-inconsistent. Data sẽ không được gửi nhận ở trạng thái này. Khi superior BPDUs không còn nhận được trên cổng này, cổng này sẽ trải qua các trạng thái của STP để đưa về sử dụng bình thường.

    Ta chỉ cấu hình root guard trên Root switch hoặc các switch nào mà ta không muốn nhận BPDUs của một switch lạ, không cấu hình rootguard trên swich có tính năng uplinkfast. Vì khi cấu hình RootGuard trên switch này sẽ làm cho các alternated port rơi vào trạng thái Root-inconsistent. Điều này làm cho các alternated port không thể chuyển sang trạng thái forwarding. Cấu hình Rootguard trên interface nào muốn bảo vệ bằng câu lệnh:

    Switch(config-if)# spanning-tree guard root

    Nếu áp đặt tính năng RootGuard lên cổng thì cho dù Switch mới có Bridge ID ưu tiên hơn (về trị số sẽ là thấp hơn) thì vẫn không ảnh hưởng gì đến mạng. Tính năng này rất mạnh, nó cấm hoàn toàn Switch lạ vào mạng không thực hiện được telnet, ping …Khi kiểm tra láng giềng trên Switch mới này, bạn sẽ không thấy được Switch trong mạng.

    Switch(config-if)#spanning-tree guard root

    Root Guard và BPDU Guard là hai phương pháp nhằm ngăn chặn gói BPDU lạ đi vào mạng. Nói rõ hơn khi có Switch lạ cắm vào mạng thì Switch này không thể trao đổi với các Switch khác trong mạng nếu như có bật tính năng này lên. Các tính năng này chỉ có tác dụng trên cổng, có nghĩa là bạn phải cấu hình trên từng cổng. Nếu bạn cấu hình trên cổng f0/1 mà lại đi cắm Switch lạ vào cổng f0/2 thì Switch mới này vẫn có thể trao đổi thông tin với mạng một cách bình thường.

    Nếu bạn gaubibi ok với tính năng này thì mình sẽ chuyển qua bpduguard.
    Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

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

    Comment


    • #3
      Cám ơn thầy Minh, bài trả lời rất clear

      Mong thầy Minh post tiếp.
      Tks

      Comment


      • #4
        hi gaubibi

        trước khi qua phần bpduguard, tôi muốn tóm tắt vài ý.

        Một cách tổng quát, các công cụ như root guard, bpdu guard, loopguard etc... mà bạn đọc trong chương trình ccnp switching đều nằm trong nhóm các giải pháp để bảo vệ cây spanning tree của bạn. Nghĩa là, sau khi bạn đã triển khai xong phần spanning tree cho mạng campus của bạn rồi, tối ưu hóa xong (ví dụ tác vụ đặt root bridge là tác vụ tối ưu hóa Spanning tree), bạn sẽ dùng các công cụ để bảo vệ cây spt của bạn.

        Các công cụ bảo vệ spt có thể chia làm hai nhóm chính, tùy thuộc vào bản thân dòng chảy của các BPDU. Ở trạng thái hoạt động bình thường, tất nhiên là bạn gaubibi muốn các bpdu chảy một cách bình thường trong hệ thống của bạn. Nhưng, nếu vì lý do nào đó, có hai sự cố xảy ra:

        nhóm 1: các cổng switch của bạn mong chờ bpdu xuất hiện ở thời điểm đó, nhưng bpdu không xuất hiện trên cổng. switchport có thể hiểu nhầm là cần phải chuyển sang trạng thái khác. Lúc này, bạn gấubibi có thể dùng các công cụ như loopguard, udld...

        nhóm 2: bạn không mong chờ BPDU xuất hiện trên cổng nào đó của switch nhưng bổng nhiên có một "switch lạ" xuất hiện và gửi bpdu. bạn cần phải bảo vệ cây spanning tree của mình. Lúc này, bạn có thể dùng các tính năng như root guard, bpdu guard.

        nếu bạn gấubibi thấy ok với phần chia nhóm trên thì bây giờ đi tiếp vào bpdu guard nhé.
        Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

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

        Comment


        • #5
          Cơ chế hoạt động của loop guard, udld

          Hi
          Thầy Minh có thể cho hình ảnh minh hoạt cũng như giải thích về trường hợp loop guard. Có phải khi sử dụng lệnh BPDU filter cũng là nguyên nhân gây loop ?
          tks

          Comment


          • #6
            BPDU Guard

            Vấn đề lớn cần quan tâm là khi có switch lạ nối vào mạng campus của ta, switch lạ này sẽ truyền gói BPDU của nó vào mạng. Các switch sẽ đồng bộ với nhau về sơ đồ mạng thông qua các gói tin BPDU. BPDU được truyền đến cổng của các Switch khác trong mạng, làm thay đổi quan điểm của những Switch này về mạng mà nó đang hoạt động và điều này có thể dẫn đến vòng lặp có thể xảy ra. Khi BPDU bị mất, cổng cũng thay đổi trạng thái của nó làm ảnh hưởng đến mô hình mạng ban đầu. Cả hai trường hợp vừa nêu ra ở trên đều có thể gây ra trạng thái lặp vòng và điều làm chúng ta lo lắng đó là mô hình cũ của mạng bị thay đổi.

            Tính năng BPDUGuard cũng tương tự như RootGuard. Tính năng BPDUGuard được khuyến cáo sử dụng ở cổng có tính năng portfast. Tính năng portfast cho phép cổng của switch có thể vào trạng thái Forwarding ngay lập tức khi link kết nối với cổng đó up lên. Tính năng portfast được sử dụng khi kết nối với PC tại access-layer. Portfast được bật lên chỉ khi ta chắc chắn rằng trên cổng đó không thể xảy ra lặp vòng. Ta bật portfast lên không có nghĩa là đã tắt STP trên cổng đó. Nếu có một switch mới bị cắm nhầm vào cổng có tính năng portfast thì loop có thể xảy ra vì portfast cho phép chuyển cổng sang trạng thái forwarding ngay lập tức. Trong khi đó để phát hiện ra vòng lặp thì phải trải qua một khoảng thời gian và các trạng thái khác nhau thì cổng mới đưa vào sử dụng bình thường được. BPDUGuard sẽ cấm không cho switch lạ trao đổi BPDU với mạng. Khi switch nhận được BPDU trên portfast với tính năng BPDUGuard thì cổng sẽ bị đưa vào trạng thái errdisable. Muốn sử dụng lại cổng này thì phải cho phép cổng một cách thủ công hoặc đợi khoảng thời gian errdisable hết hạn.

            Tóm lại, bpdu guard thường được dùng kết hợp với portfast. Nếu có một bpdu xuất hiện trên những cổng có bật bpdu guard thì cổng của switch sẽ rớt vào trạng thái errdisable.
            Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

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

            Comment


            • #7
              thắc mắc vế Backbone Fast

              dạ thưa thầy ,
              cho em hỏi về Backbone fast ?
              neu duoc thi co hinh anh minh hoa thi tot hon ah

              Em thay cai nay la kho hieu nhat trong may tinh nang cua STP trong BCMSN
              Mong duoc chi giao

              Comment


              • #8
                hi bigboss

                Đầu tiên cũng đưa một số thông tin về tính năng backbone fast để làm cơ sở trao đổi với bạn. Bạn follow up nhé.

                Backbonefast

                Backbonefast tối ưu thời gian hội tụ cho bất kỳ sơ đồ mạng nào, cải tiến thời gian hội tụ khi có các hỏng hóc gián tiếp xảy ra. Khi một vài kết nối trực tiếp xảy ra, switch sẽ không chờ cho khoảng thời gian MaxAge hết. Các switch không nhận được hello BPDU sẽ chờ khoảng thời gian MaxAge trôi qua thì mới bắt đầu thử thay đổi topology.

                Tính năng backbonefast sẽ làm các switch học các sự cố gián tiếp của spanning tree và hỏi các switch upstream là các switch này có biết về sự cố hay không. Để thực hiện việc này, khi gói tin hello đầu tiên bị mất, switch sẽ gửi ra các frame truy vấn Root Link Query trên tất cả các cổng mà lẽ ra phải nhận được hello. RLQ sẽ hỏi switch láng giềng rằng switch láng giềng có còn nhận hello BPDU từ root. Nếu switch láng giềng đó đang gặp sự cố hỏng hóc trực tiếp, nó sẽ trả lời là đường đi từ nó về root đã mất. Khi biết được điều này, switch ban đầu sẽ tiếp tục tính toán lại mà không chờ khoảng thời gian MaxAge. Tất cả các switch trong sơ đồ mạng sẽ phải cấu hình tính năng backbonefast.

                Vài vấn đề đặt ra:

                Bình thường, nếu không dùng backbone fast, điều gì sẽ xảy ra nếu có một link bị down? Thời gian max age là gì?
                indirect link failure (hỏng hóc gián tiếp) là gì?
                tính năng này tiết kiệm bao nhiêu giây?
                Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

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

                Comment


                • #9
                  Thưa thầy, thầy có thể trình bày về udld, uplinkfast, loopguard ( cơ chế hoạt động cũng như các thông số về timer ) cho em nắm rõ hơn được không ạ ?

                  Cám ơn thầy rất nhiều.

                  Comment


                  • #10
                    Tính năng UDLD


                    Giao thức Unidirectional Link Detection (UDLD) cho phép các thiết bị đang kết nối với nhau bằng cáp quang hoặc cáp đồng có thể quan sát và phát hiện được các vấn đề về trạng thái kết nối vật lý của hệ thống cáp khi có hiện tượng kết nối theo một hướng duy nhất (Unidirectional Link) xảy ra.

                    Bình thường, dữ liệu trên các đường cáp quang hoặc cáp đồng được truyền theo hai chiều. Với cáp quang, có thể một sợi truyền và một sợi sẽ nhận tín hiệu. Nếu, vì một lý do nào đó ở mức vật lý, chỉ một sợi quang thực hiện truyền tín hiệu, sợi còn lại bị hỏng hóc và không thực hiện đúng chức năng, dòng dữ liệu sẽ chỉ được truyền theo một chiều một cách chập chờn.

                    Một hệ quả của vấn đề nêu trên là thiết bị switch ở đầu bên kia không nhận được các dạng frame cần thiết, ví dụ như BPDU chằng hạn, switch đầu bên kia sẽ nghĩ rằng, nó cần thiết phải chuyển port đó (là port gắn cáp quang và không nhận được BPDU) sang trạng thái forwarding.

                    Lúc này, hiện tượng bridging loop có thể xảy ra do thuật toán Spanning tree đã quyết định sai trạng thái của port của switch (lẽ ra vẫn nên tiếp tục blocking nhưng switch lại quyết định chuyển sang forwarding).

                    Hiện tượng Unidirectional link này gây ra nhiều hệ quả khác nhau không có lợi cho môi trường LAN, bao gồm cả việc gây ảnh hưởng đến khả năng chống loop trong giao thức spanning-tree.

                    Khi hiện tượng Unidirectional Link được phát hiện, tính năng UDLD sẽ shutdown các cổng của switch bị ảnh hưởng, và phát ra cảnh báo cho các người dùng biết được tình trạng hiện tại của interface này.

                    UDLD là giao thức hoạt động tại lớp 2 nhưng lại làm việc và giúp phát hiện những vấn đề ở lớp physical với các thiết bị lớp một để có thể xác định trạng thái kết nối vật lý của một kết nối nào đó.


                    Tại lớp 1, các phương thức tự động thương lượng (autonegotiation) đảm trách các tín hiệu vật lý và phát hiện lỗi. Khác với quá trình autonegotiation, UDLD thực thi các tác vụ mà các phương thức tự động dò tìm autonegotiation không thể thực thi. Ví dụ như phát hiện tình trạng hiện tại của các neighbor và shutdown các "misconnected interface".

                    Khi ta bật lên đồng thời "autonegotiation" và UDLD, lớp 1 và 2 sẽ làm việc cùng nhau để ngăn ngừa các hiện tượng kết nối theo một hướng về mặt vật lý và luận lý.

                    Hiện tượng Unidirectional Link xảy ra khi có "local device" nào đó phát ra các tín hiệu và được tiếp nhận bởi "neighbor" nhưng "local device" này lại không thể tiếp nhận các tín hiệu do "neighbor" này trả về.

                    Nếu một trong các mạch quang trong một cặp dây bị ngắt , khi mà autonegotiation đã được active, kết nối không ở trạng thái UP. Nếu cặp dây cáp quang này hoạt động bình thường ở lớp 1, thì giao thức UDLD tại lớp 2 sẽ xác định các cáp quang này có được kết nối đúng hay không và các traffic có đang truyền theo cả hai hướng giữa các neighbor hay không.

                    Quá trình Autonegotiation không thể thực thi khả năng này bởi vì quá trình negotiation hoạt động ở lớp 1.

                    Về cơ chế hoạt động và cách cấu hình của UDLD.

                    Switch truyền các gói UDLD tới các thiết bị láng giềng neighbor theo chu kỳ khi giao thức UDLD vừa được bật lên. Các thiết bị ở cả hai đầu kết nối phải hổ trợ giao thức UDLD để giao thức này có thể định nghĩa, nghĩa là, bạn phảicấu hình UDLD ở cả hai thiết bị ở hai đầu. Mặc định, giao thức UDLD được tắt trên giao diện kết nối bằng cáp đồng để tránh việc gửi các traffic điều khiển không cần thiết.

                    Switch B có thể nhận được các traffic từ Switch A trên interface kết nối cụ thể. Tuy nhiên Switch A không thể nhận được traffic từ Switch B trên cùng interface tương tự. UDLD phát hiện ra vấn đề này và disable interface này.

                    Các cấu hình mặc định trên Switch Cisco 4500 series:

                    + ULDL global enable state : Globally disabled
                    + UDLD per-interface enable state for fiber-optic media: Enabled
                    + UDLD per-interface enable state for Twisted-pair (cooper) media : Disabled

                    Để Bật giao thức UDLD toàn cục cho tất cả các interface quang, dùng lệnh sau:

                    Switch(config)# [no] udld enable

                    Chú ý: dòng lệnh này chỉ cấu hình các interface quang để chạy giao thức UDLD.

                    Bật giao thức UDLD trên interface cụ thể:

                    Switch(config-if)# udld enable

                    Để xem lại cấu hình:
                    Switch# show udld interface

                    Disable UDLD trên các interface không phải là giao diện quang(twisted pair,…):
                    Switch(config-if) no udld enable

                    Để xem lại cấu hình:
                    Switch# show udld interface

                    Chú ý: trên các interface quang, dòng lệnh no udld enable sẽ trả lại cấu hình
                    của các interface thành udld enable. Disable UDLD trên các interface quang:
                    Switch (config-if)# udld disable

                    Resetting các interface bị shutdown bởi UDLD:
                    Switch# udld reset
                    Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

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

                    Comment


                    • #11
                      Em chưa hiểu chỗ này lắm:
                      Chú ý: trên các interface quang, dòng lệnh no udld enable sẽ trả lại cấu hình
                      của các interface thành udld enable.
                      (các interface được enable ở đây là interface của cáp quang hay của các cáp đồng khác)

                      Cách disable udld trên interface quang và đồng khác nhau vậy nếu em dùng lệnh:
                      Switch (config-if)# udld disable
                      trên interface của cáp đồng thì sẽ có chuyện gì xảy ra.

                      Cho em hỏi thêm là thời gian từ lúc udld nhận ra có lỗi để thực hiện tiến trinh đến lúc disable interface đó là bao lâu.

                      Bởi vì nếu cấu hình backbone fast thì switch sẽ không chờ Maxage để thay đổi topology mạng, và trong khi đó nếu em cấu hình thêm udld thì udld có kịp disable interface đó trước khi có loop hay không, và giả sử như có loop xảy ra thì khi udld disable interface đó rồi, liệu loop có bị chặn lại hay không.

                      Vậy thì có được cấu hình backbone fast chung với udld hay không hay tiến trình udld xử lý sẽ nhanh hơn backbone fast nhiều để tránh lỗi xảy ra.

                      Mong thầy giảp đáp dùm em. Em cám ơn thầy nhiều.

                      Comment


                      • #12
                        Hi LRYuzakyl

                        Thời gian mặc định để UDLD phát hiện ra lỗi và phản ứng là 15 giây. Tuy nhiên bạn LR có thể thay đổi giá trị này từ 7 đến 90 giây.

                        Đối với cáp quang thì mặc định tính năng này là bật. Còn đối với cáp đồng thì mặc định tính năng UDLD này là tắt.

                        Xem thêm thông tin về UDLD ở link này:

                        Đặng Quang Minh, CCIEx2#11897 (Enterprise Infrastructure, Wireless), DEVNET, CCSI#31417

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

                        Comment


                        • #13
                          bài viết hay quá,cảm ơn thầy Minh

                          Comment


                          • #14
                            Chào !!
                            Anh có thể post all tài liệu về chủ đề này được không !!
                            Cám ơn anh nhiều !!

                            Comment


                            • #15
                              Originally posted by nqtuan View Post
                              Chào !!
                              Anh có thể post all tài liệu về chủ đề này được không !!
                              Cám ơn anh nhiều !!
                              Hi,

                              Bạn có thể copy các bài viết của Thầy Minh ở trên vào 1 file word rồi save lại!
                              Đặng Hoàng Khánh
                              Email: danghoangkhanh@vnpro.org
                              ---------------------------
                              VnPro - Cisco Authorised Training
                              Discuss about Networking, especially Cisco technology: http://vnpro.org
                              Discuss about Wireless: http://wifipro.org or http://wimaxpro.org

                              Comment

                              Working...
                              X