Luận văn Xây dựng một Traffic Balancing Layer 2 trên nền SoftSwitch

MỤC LỤC

LỜI CÁM ƠN.1

MỤC LỤC.2

BẢNG HÌNH VẼ.5

TÓM TẮT LUẬN VĂN.7

1. GIỚI THIỆU.9

1.1. Những kỹthuật cân bằng tải giữa các server.10

1.1.1. Xửlý các yêu cầu kết nối tập trung.11

1.1.2. Xửlý các yêu cầu kết nối phân tán.14

1.2. Cân bằng tải trong mạng nhiều bridge/switch nối với nhau.20

1.2.1. Per-VLAN Spanning Tree (PVST) và PVST+.22

1.2.2. Multiple Spanning Tree (MST).24

1.2.3. EtherChannel.27

1.3. Cân bằng tải trong mạng gồmnhiều router kết nối với nhau.28

1.3.1. Routing Information Protocol (RIP).29

1.3.2. Interior Gateway Routing Protocol(IGRP) và Enhanced IGRP

(EIGRP).30

1.3.3. Open Shortest Path First (OSPF).32

1.3.4. Per destination.32

1.3.5. Per packet.33

2. TỔNG QUAN VỀLAYER 2 SWITCH.35

2.1. Giới thiệu chung.35

2.2. Các chức năng điển hình của layer 2 switch.36

2.2.1. Chức năng học địa chỉ.36

2.2.2. Quyết định forward/filter.40

2.2.3. Chống Loop.41

2.2.4. Virtual LAN (VLAN).47

2.3. Các frame được truyền đi nhưthếnào.48

2.4. Switch “nói chuyện” với các thiết bịkhác nhưthếnào.49

3. TỔNG QUAN VỀCÁC CHƯƠNG TRÌNH NETWORK SIMULATOR.52

3.1. Lý do sửdụng Simulation.52

3.1.1. Định nghĩa.52

3.1.2. Mục đích.52

3.1.3. Những ưu khuyết điểm của hệthống Simulation.53

3.2. Các chương trình Simulation đang được sửdụng.53

3.2.1. MIT's NETSIM.53

3.2.2. NIST.54

3.2.3. CPSIM.54

3.2.4. INSANE.55

3.2.5. NEST 2.5.55

3.2.6. REAL 5.0.56

3.2.7. NS version 2.0.57

3.3. Network Simulator.58

3.3.1. Kiến trúc.58

3.3.2. Sơlược các thành phần tạo môhình.60

3.3.3. Sơlược vềNAM ( Network AniMator).63

3.3.4. Một chương trình ví dụvềNS.65

4. CÁC MÔ HÌNH SOFTSWITCH VÀ KẾT QUẢKIỂM TRA.71

4.1. Các mô hình SoftSwitch.72

4.2. Kết quảkiểmtra các mô hình SoftSwitch bằng NS.76

4.2.1. Kết quảkiểmtra môhình 2.76

4.2.2. Kết quảkiểmtra môhình 3.77

4.2.3. Kết quảkiểmtra môhình 4.78

5. CÁC MÔ HÌNH CÂN BẰNG TẢI VÀ KẾT QUẢKIỂM TRA.82

5.1. Các môhình cân bằng tải đềnghị.82

5.1.1. Theosốthread.82

5.1.2. Theo priority.85

5.2. Kết quảkiểm tra các mô hình.87

5.2.2. Mô hình nhiều module cân bằng tải.88

5.3. Kết luận.89

6. CẤU TRÚC DỮLIỆU VÀ GIẢI THUẬT.92

6.1. Cấu trúc dữliệu.92

6.1.1. Các hằng số được định nghĩa trong chương trình.92

6.1.2. Các biến toàn cục.92

6.1.3. Cấu trúc dữliệu cho forwarding table.93

6.2. Giải thuật.95

7. ĐÁNH GIÁ VÀ KẾT LUẬN.102

7.1. Kết quảkiểmnghiệm.102

7.1.1. Mô hình 1.102

7.1.2. Mô hình 2.103

7.2. Kết quả đạt được.104

7.3. Đánh giá vềchương trình SoftSwitch.104

7.3.1. Ứng dụng 1.104

7.3.2. Ứng dụng 2.105

7.4. Hướng mởrộng của chương trình.107

TÀI LIỆU THAM KHẢO.108

PHỤLỤC.

pdf124 trang | Chia sẻ: maiphuongdc | Lượt xem: 1925 | Lượt tải: 2download
Bạn đang xem trước 20 trang tài liệu Luận văn Xây dựng một Traffic Balancing Layer 2 trên nền SoftSwitch, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ng loop để tạo khả năng dư thừa trong mạng, một Ethernet switch sẽ ngăn không cho các loop này làm nghẽn mạng, nhưng vẫn cho phép các con đường dự phòng tồn tại dựa vào việc cấu hình Spanning Tree trên switch. 2.2.1. Chức năng học địa chỉ Một Ethernet switch “học” địa chỉ và hoạt động như một bridge trong suốt. Switch duy trì một bảng địa chỉ MAC (MAC address table) dùng để theo dõi 36 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch vị trí của những thiết bị được kết nối vào switch. Sau đó, nó sử dụng bảng này để quyết định những gói tin nào cần được chuyển đến các segment khác. Lưu ý rằng vào lúc mới khởi chạy, switch không biết các host trên mạng nằm ở những segment nào như được minh họa ở hình 2.2. Hình 2-2 – Các bước học địa chỉ của Switch Mục đích của switch là phân đoạn luồng dữ liệu trên mạng để các gói tin được gởi đến một host trong một collision domain nào đó không truyền đi trên một segment khác. Điều này thực hiện được là nhờ “việc học” của switch về vị trí các host trên mạng. Quá trình forwarding và learning của switch được mô tả dưới đây: • Khi một switch lần đầu được khởi chạy, bảng địa chỉ MAC của switch hoàn toàn rỗng, như hình 1. • Với một bảng địa chỉ MAC rỗng, switch không thể đưa ra bất kỳ quyết định nào về forwarding và filtering các gói tin dựa trên địa chỉ đích, do đó, switch phải chuyển mỗi frame đến tất cả các port ngoại trừ port mà switch đã nhận frame. • Việc chuyển một frame đến tất cả các port được gọi là flooding frame. 37 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch • Flooding là một phương pháp truyền dữ liệu kém hiệu quả nhất trên switch bởi vì nó tiêu tốn băng thông không cần thiết cho việc truyền frame trên các segment mà frame không cần thiết đến. • Do switch xử lý luồng dữ liệu cho nhiều segment tại cùng một thời điểm nên switch bổ sung một bộ nhớ đệm để nó có thể nhận và truyền các frame một cách độc lập trên mỗi port hay segment. Để hiểu về quá trình “học” của switch, xem hình 2.3. Hình này minh họa quá trình truyền dữ liệu giữa 2 trạm làm việc nằm trên các segment khác nhau. Hình 2-3 – Các bước học địa chỉ của Switch Ở hình 2.3, máy trạm A với địa chỉ MAC là 0260.8c01.1111 muốn gởi dữ liệu đến máy trạm C với địa chỉ MAC là 0260.8c01.2222. Switch nhận được frame này và thực hiện các tác vụ sau: Bước 1: frame ban đầu được nhận vào từ một interface Ethernet vật lý và được lưu vào bộ nhớ đệm tạm thời. Bước 2: do switch không biết interface nào nối nó với máy trạm đích của frame nên nó bắt buộc phải flood frame đến tất cả các port khác. 38 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch Bước 3: khi flood frame từ máy trạm A, switch học địa chỉ nguồn của frame và kết buộc nó với port E0 tạo thành một mục (entry) mới trong bảng địa chỉ MAC. Bước 4: một entry trong bảng địa chỉ MAC được cache. Nếu entry này không được “làm tươi” bởi một frame mới đi qua switch trong một khoảng thời gian giới hạn, entry này sẽ bị loại bỏ khỏi bảng địa chỉ MAC. Hình 2-4 – Các bước học địa chỉ của Switch Switch và bridge hoạt động hiệu quả là nhờ vào quá trình học địa chỉ. Khi các máy trạm tiếp tục gởi frame đến một máy trạm khác, quá trình học địa chỉ lại tiếp tục diễn ra, như được minh họa ở hình 2.4. Ở hình 2.4, máy trạm D với địa chỉ MAC 0260.8c01.4444 gởi thông tin đến máy trạm C với địa chỉ MAC 0260.8c01.2222. Switch thực hiện một số tác vụ sau: Bước 1: địa chỉ nguồn, 0206.8c01.4444, được thêm vào bảng địa chỉ MAC. Bước 2: địa chỉ đích của frame được truyền đi, máy trạm C, được đối chiếu với các entry trong bảng địa chỉ MAC. 39 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch Bước 3: khi phần mềm xử lý thông báo không có ánh xạ “port-địa chỉ MAC” nào tồn tại cho địa chỉ đích này, frame được flood đến tất cả các port ngoại trừ port mà từ đó frame được nhận. Bước 4: khi máy trạm C gởi ngược trở về máy trạm A, switch cũng học được địa chỉ MAC của máy trạm C, tại port E2. Bước 5: do tất cả các máy trạm đều gởi frame dữ liệu trong khoảng thời gian sống của các entry trong bảng địa chỉ MAC, nên một bảng địa chỉ MAC đầy đủ về các máy trạm được xây dựng. Những entry này, sau đó, được sử dụng cho việc đưa ra các quyết định forwarding và filtering thông minh. 2.2.2. Quyết định forward/filter Khi switch nhận một frame, quá trình đưa ra quyết định diễn ra như sau: Hình 2-5 – Quyết định forward/filter • Nếu thiết bị đích nằm trên cùng segment với frame, switch ngăn chặn không cho frame đi đến các segment khác. Quá trình này được gọi là “lọc” frame – filtering. 40 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch • Nếu thiết bị đích nằm trên segment khác, switch chuyển frame đến segment thích hợp. quá trình này được gọi là forwarding. • Nếu switch không biết địa chỉ đích của frame, switch chuyển frame đến tất cả các segment ngoại trừ segment mà từ đó switch nhận được frame. Quá trình này được gọi là flooding. Ở hình 2.5, máy trạm A gởi một frame đến máy trạm C. Khi địa chỉ MAC đích (địa chỉ MAC của C) tồn tại trong bảng địa chỉ MAC, switch truyền lại frame này chỉ trên port được tương ứng với C. Quá trình máy trạm A gởi một frame đến máy trạm C diễn ra như sau: Bước 1: địa chỉ đích MAC của frame được truyền, 0260.8c.1.2222, được đối chiếu với các entry trong bảng địa chỉ MAC. Bước 2: khi switch quyết định rằng địa chỉ MAC đích có thể đi tới thông qua port E2, nó truyền lại frame đến duy nhất port này. Bước 3: switch không truyền lại frame trên port E1 hay E3 nhằm tiết kiệm băng thông trên các đường truyền này. Hành động này được gọi là frame filtering (lọc frame). Switch không bao giờ học địa chỉ multicast hay broadcast bởi vì những địa chỉ multicast hay broadcast không bao giờ xuất hiện như là địa chỉ nguồn của một frame. 2.2.3. Chống Loop Chức năng thứ 3 của switch là chống loop. Những mạng bắc cầu (bridged network), bao gồm cả những mạng chuyển mạch (switched network), thường được thiết kế với những đường truyền và thiết bị dư thừa. Những thiết kế như 41 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch vậy giúp loại trừ khả năng xảy ra sự hỏng hóc tại một điểm (a single point of failure) có thể dẫn đến kết quả toàn bộ switched network bị “sụp”. Mặc dù những thiết kế có độ dư thừa loại trừ khả năng “một điểm lỗi”, nhưng chúng lại đặt ra một số vấn đề cần phải được xem xét: • Nếu không có một dịch vụ chống loop nào đó hoạt động, switch sẽ flood các gói tin broadcast vô tận. Tình trạng này thường được gọi là bridge loop. Việc truyền liên tục các gói tin broadcast này theo vòng loop tạo ra một “cơn bão broadcast” (broadcast storm), điều này làm cho băng thông bị tiêu tốn lãng phí và ảnh hưởng rất xấu đến hiệu suất của mạng. • Nhiều bản sao của các frame không phải là broadcast có thể được phân phát đến các máy trạm đích. Nhiều giao thức chỉ “mong chờ” nhận chỉ một bản sao đơn của mỗi lần truyền. Nhiều bản sao của cùng một frame có thể gây ra các lỗi không thể phục hồi. • Tính không ổn định trong nội dung của bảng địa chỉ MAC là do các bản sao của cùng một frame được nhận trên các port khác nhau của switch. Việc chuyển tiếp dữ liệu có thể không thực hiện được khi switch sử dụng các nguồn tài nguyên để giải quyết sự thay đổi liên tục trong bảng địa chỉ MAC. Những phần sau đây chỉ ra khả năng chống loop của switch có thể giải quyết những vấn đề nêu trên như thế nào. 42 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch 2.2.3.1. Loại bỏ broadcast storm Hình 2-6 – Loại bỏ Broadcast Storm Một broadcast storm xảy ra mà nguyên nhân có thể là do một NIC card bị hư, một mạng được thiết kế tồi, hay là do một bridging/switching loop. Broadcast storm được minh họa trong hình 2.6 xảy ra theo một chuỗi các sự kiện sau: Bước 1: khi host X gởi đi một broadcast frame, frame được nhận bởi switch A. Bước 2: switch A kiểm tra trường địa chỉ đích trong frame và quyết định frame phải được flood trên đường truyền Ethernet bên dưới, Segment 2. Bước 3: khi bản sao của frame này đến switch B, quá trình xử lý frame lặp lại, và một bản sao khác của frame được truyền trên đường truyền Ethernet bên trên, Segment 1. 43 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch Bước 4: do bản sao đầu tiên của frame đến switch B trên Segment 1 vào một thời điểm nào đó sau khi frame được nhận bởi switch A, nên nó cũng sẽ được chuyển đi bởi switch B trên Segment 2. Những frame này, do đó, sẽ đi trong vòng loop theo cả 2 hướng thậm chí sau khi máy trạm đích đã nhận một bản sao của frame. Giải pháp chống loop bằng cách ngăn không cho 1 trong 4 interface truyền hay nhận frame trong suốt thời gian hoạt động bình thường sẽ giúp giải quyết vấn đề này. Việc thực thi giao thức Spanning Tree trên switch sẽ giúp thực hiện được điều này. 2.2.3.2. Loại bỏ việc truyền lặp lại các nonbroadcast frame Các bước sau đây dẫn chứng cho việc truyền lặp lại nhiều lần xảy ra như thế nào (xem hình 2.7): Hình 2-7 – Loại bỏ truyền lặp nonbroadcast frame 44 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch Bước 1: khi host X gởi một unicast frame đến router Y, router Y nhận một bản sao thông qua kết nối Ethernet trực tiếp, Segment 1. Cũng vào khoảng thời gian đó, switch A nhận một bản sao và đặt nó vào trong buffer. Bước 2: nếu switch A kiểm tra trường địa chỉ đích trong frame và không tìm thấy entry nào trong bảng địa chỉ MAC tương ứng với router Y, switch A flood frame ra tất cả các port ngoại trừ port mà frame đã đi đến. Bước 3: khi switch B nhận được một bản sao của frame từ switch A trên segment 2, switch B cũng chuyển một bản sao của frame trên segment 1 nếu không có entry nào trong bảng địa chỉ MAC cho router Y. Bước 4: router Y nhận một bản sao nữa của cùng một frame lần thứ 2. Giải pháp chống loop bằng cách ngăn không cho 1 trong 4 interface truyền hay nhận frame trong suốt thời gian hoạt động bình thường của switch sẽ giúp giải quyết vấn đề này. Đây là một chức năng khác của giao thức Spanning Tree. 2.2.3.3. Loại bỏ tính không ổn định của MAC database Tính không ổn định của MAC database là kết quả khi nhiều bản sao của một frame đến trên nhiều port khác nhau của một switch (xem hình 2.8). Ở hình 2.8, con đường dư thừa trên mạng không chạy Spanning Tree sẽ tạo nên tính không ổn định của MAC database. Điều này xảy ra là do các sự kiện sau đây xảy ra: 45 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch Bước 1: host X gởi một unicast frame đến router Y. Bước 2: địa chỉ MAC của router Y không được học bởi bất kỳ switch nào. Bước 3: switch A và B học địa chỉ MAC của host X trên port 0. Bước 4: frame có đích là router Y được flood trên mạng. Bước 5: switch A và B học lại sai địa chỉ MAC của host X trên port 1. Hình 2-8 – Loại bỏ tính không ổn định của MAC database Tùy thuộc vào kiến trúc bên trong của switch mà nó có thể hoặc không thể giải quyết tốt sự thay đổi nhanh chóng trong MAC database của nó. Trong trường hợp này, giải pháp chống loop bằng cách ngăn không cho một trong bốn interface nhận hay truyền frame trong thời gian hoạt động bình thường của switch giúp giải quyết vấn đề này. Đảm bảo tính ổn định của MAC database là một chức năng khác của giao thức Spanning Tree. 46 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch Bản chất và chức năng của một mạng bắc cầu hay chuyển mạch là cung cấp các dịch vụ mạng nâng cao dựa trên việc phân đoạn mạng thành nhiều collision domain. Tuy nhiên, mạng bridged/switched vẫn là một broadcast domain. Việc kiểm soát quá trình truyền các gói tin broadcast trên mạng là vấn đề hết sức quan trọng. Do đó, switch cung cấp một phương pháp để phân chia một broadcast domain được gọi là mạng LAN ảo (virtual LAN – VLAN). Một VLAN được định nghĩa như là một broadcast domain. 2.2.4. Virtual LAN (VLAN) Những lợi ích của VLAN: tính bảo mật, sự phân đoạn mạng, tính linh hoạt. VLAN cho phép nhóm những người dùng trong một broadcast domain mà không quan tâm đến vị trí vật lý của họ trong mạng. Tạo ra các VLAN giúp nâng cao hiệu suất và độ bảo mật trong mạng chuyển mạch do kiểm soát được việc truyền broadcast. Một VLAN là một miền broadcast logic, có thể trải ra trên nhiều LAN segment vật lý. Mỗi port của switch được gán vào duy nhất một VLAN. VLAN cho phép các switch tạo ra nhiều broadcast domain trong một switched network. Bất kỳ người dùng nào trong một VLAN đều sẽ nhận gói tin broadcast từ một thành viên trong cùng VLAN, người dùng của các VLAN khác sẽ không nhận được những gói tin broadcast này. Mỗi người dùng trong một VLAN cũng sẽ có cùng một IP subnet. Một VLAN có thể tồn tại trên một switch hay trải ra trên nhiều switch. Các VLAN có thể chứa đựng nhiều máy trạm trong một tòa nhà hay những cơ sở hạ tầng gồm nhiều tòa nhà. 47 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch VLAN hoạt động như thế nào. Mỗi VLAN được cấu hình trên switch thực hiện đầy đủ các chức năng như một bridge vật lý cụ thể: học địa chỉ, đưa ra các quyết định filering/forwarding và các phương pháp chống loop. Một VLAN có thể bao gồm một vài port. Luồng dữ liệu được flood từ một VLAN cụ thể chỉ flood ra những port khác thuộc cùng VLAN đó. Để cho một VLAN có thể trải ra trên nhiều switch trên một kết nối đơn, một đường trunk được yêu cầu để nối kết 2 switch. Đường trunk mang thông tin cho tất cả các VLAN. Một trunk port chỉ có thể được cấu hình trên những port Fast Ethernet. Những phần trên đây đã trình bày các chức năng cũng như một số kỹ thuật được sử dụng trong layer 2 switch nhằm tăng hiệu suất hoạt động trên mạng. Phần tiếp theo sẽ đề cập đến một vấn đề khác: các cơ chế truyền nhận frame của switch và switch giao tiếp với các thiết bị khác như thế nào. 2.3. Các frame được truyền đi như thế nào Có 3 kiểu (mode) xử lý chính được sử dụng để điều khiển việc chuyển gói tin. Store-and-forward (lưu và chuyển) – trong mode store-and-forward, switch phải nhận được toàn bộ frame trước khi forwarding xảy ra. Địa chỉ nguồn và đích của frame được đọc, quá trình kiểm tra độ dư vòng (cyclic redundancy check – CRC) được thực hiện, các quá trình lọc liên quan được áp dụng và frame được forward. Nếu CRC sai, frame bị bỏ đi. Độ trễ của gói tin đi qua switch thay đổi tùy thuộc vào chiều dài của frame. 48 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch Cut-through – trong mode cut-through, switch kiểm tra địa chỉ đích của frame ngay khi nhận được header và ngay lập tức bắt đầu forward frame. Độ trễ khi sử dụng chuyển gói bằng cut-through là một hằng số bất chấp kích thước của frame bởi vì switching mode này bắt đầu forward frame ngay khi switch đọc được địa chỉ đích của frame. Điểm hạn chế của quá trình xử lý này là switch sẽ vẫn forward đi các frame bị đụng độ hay frame có giá trị CRC sai. Một số switch tiếp tục CRC và duy trì một biến dùng để đếm số lỗi. Nếu tốc độ lỗi xảy ra quá cao, switch có thể được thiết lập – hoặc bằng tay hay tự động – để sử dụng store-and-forward. Fragment-free – trong mode fragment-free (được biết đến như phiên bản chỉnh sửa của mode cut- through), switch đọc 64 byte đầu tiên trước khi forward frame. Thông thường, sự đụng độ xảy ra trong vòng 64 byte đầu tiên của frame. Bằng cách đọc 64 byte, switch có thể loại bỏ các frame bị đụng độ. Tùy theo hãng sản xuất và giá thành mà switch có thể có hoặc không có đầy đủ cả 3 mode xử lý các gói tin được trình bày ở trên. 2.4. Switch “nói chuyện” với các thiết bị khác như thế nào Đóng vai trò là thiết bị trung gian giữa các thiết bị cuối (end device), switch cung cấp nhiều kiểu giao tiếp khác nhau giữa switch và end device. Các mode được sử dụng để giao tiếp giữa switch và end device là half-duplex và full-duplex. Mode truyền half-duplex thực thi việc kiểm tra đụng độ trên đường truyền đa truy cập sử dụng sóng mang (CSMA/CD). Những mạng LAN chia sẻ truyền thống hoạt động ở chế độ half-duplex và dễ bị ảnh hưởng do xảy ra đụng độ trên đường truyền. Half-duplex về cơ bản giống như một cây cầu chỉ có một làn đường bắc qua một con dòng sông. Chỉ duy nhất một xe có thể vượt qua cầu tại một thời điểm. 49 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch Full-duplex Ethernet làm tăng đáng kể hiệu suất mạng mà không cần phải chi phí thêm cho việc lắp đặt môi trường mới. Truyền theo mode full-duplex giữa các trạm đạt được bằng cách sử dụng những kết nối Fast Ethernet và point-to-point Ethernet. Kỹ thuật này giúp cho việc truyền dữ liệu không xảy ra đụng độ. Những frame được gởi đi bởi 2 node được kết nối với nhau không thể đụng độ bởi vì sử dụng 2 mạch truyền tách biệt trong sợi cáp xoắn đôi. Điều này cũng giống như một cây cầu có 2 làn xe chạy bắc qua một con sông. Tóm lại, điều này có nghĩa là băng thông của một đường truyền được tăng lên gấp đôi. Mỗi kết nối full-duplex chỉ sử dụng một port. Các kết nối full-duplex có thể sử dụng những đường truyền 10BaseT, 100BaseT và 100BaseFX để tạo ra các đường truyền point-to-point giữa các switch hay các end node, nhưng không tồn tại giữa những hub. Trong mode full-duplex, mạch phát hiện đụng độ được vô hiệu hóa. Các node được gắn vào hub, hay các node chia sẻ kết nối của chúng đến một port của switch, phải hoạt động ở mode half-duplex bởi vì các trạm cuối phải có khả năng phát hiện đụng độ. Hiệu suất của cấu hình Ethernet chuẩn thông thường đạt tỷ lệ từ 50% - 60% của băng thông 10 Mbps. Chế độ full-duplex cho phép đạt 100% hiệu suất băng thông theo cả 2 chiều (10 Mbps truyền và 10 Mbps nhận). Tóm lại, những mạng chuyển mạch (switched network) có những đặc trưng sau: • Mỗi segment là một miền đụng độ (collision domain). • Tất cả các thiết bị được kết nối vào cùng bridge/switch đều là một phần của miền broadcast (broadcast domain). • Tất cả các segment phải sử dụng cùng một giao thức tầng data-link, thí dụ như Ethernet hay Token Ring. Nếu một máy trạm phải giao tiếp với một máy trạm khác nằm trên một môi trường khác, thì một thiết bị nào đó, thí dụ như 50 KH OA C NT T – Đ H KH TN Chương 2 Tổng Quan Về Layer 2 Switch một router hay bridge có khả năng “thông dịch”, phải thông dịch giữa 2 kiểu môi trường khác nhau. • Trong môi trường switch, có thể có một thiết bị trên một segment, mỗi thiết bị có thể gởi frame tại cùng một thời điểm. Các chương 1 và 2 đã lần lượt giới thiệu những vấn đề cơ bản về cân bằng tải trên mạng và cơ chế hoạt động cũng như kiến trúc của thiết bị mạng tầng 2 (layer 2 switch). Tuy nhiên, để có thể đưa ra một mô hình phù hợp cho việc thực hiện cân bằng tải đòi hỏi phải có một công cụ kiểm chứng. Chương tiếp theo sẽ trình bày sơ lược về các chương trình Network Simulator. Đây là các chương trình giả lập mạng, cho phép kiểm tra và đánh giá các mô hình cân bằng tải mạng để từ đó lựa chọn được mô hình tốt nhất. 51 KH OA C NT T – Đ H KH TN Chương 3 Tổng Quan Về Các Chương Trình Network Simulator Chương 3 TỔNG QUAN VỀ CÁC CHƯƠNG TRÌNH NETWORK SIMULATOR Trong chương này ta sẽ tìm hiểu về Simulator, các chương trình Simulator hiện có, Network Simulator là chương trình như thế nào, hoạt động ra sao. Kết thúc chương ta sẽ có một cái nhìn tổng quát về Simulator, và nắm được cách thức hoạt động của chương trình Network Simulator. 3.1. Lý do sử dụng Simulation 3.1.1. Định nghĩa Simulation một hoạt động là phương pháp sử dụng một số giả thiết đã cho trước, rồi dùng chương trình máy tính để xác định qui luật hoạt động của một hoạt động thực tế. 3.1.2. Mục đích Các chương trình Simulation thường được sử dụng ở các viện nghiên cứu và các trường đại học vì các hệ thống thực không phải bao giờ cũng sẵn sàng, mà chúng có thể rất phức tạp hoặc nguy hiểm và chi phí để thực hiện việc kiểm tra là khá đắt. Sử dụng chương trình Simulation sẽ giúp cho việc nghiên cứu hiệu quả và sát thực tế hơn. Nhờ vào Simulation, người ta có thể đánh giá các phương pháp khác nhau một cách hữu hiệu và nhanh chóng. Dĩ nhiên sự đánh giá cũng chỉ mang tính tương đối và phụ thuộc vào chương trình Simulation. 52 KH OA C NT T – Đ H KH TN Chương 3 Tổng Quan Về Các Chương Trình Network Simulator Chương trình Simulation còn đánh giá được những chức năng phức tạp mà công thức hoặc kỹ thuật tính toán thông thường không tính được. 3.1.3. Những ưu khuyết điểm của hệ thống Simulation Nhờ vào chương trình Simulation, ta có thể tìm ra được những hoạt động không nhìn thấy trước được, tìm thấy lỗi trong thiết kế nhờ vào việc có thể lặp đi lặp lại các hoạt động, gỡ rối và phân tích chi tiết từng trường hợp. Ta cũng có thể giả lập hệ thống ở nhiều mức, điều chỉnh các giá trị để chúng hoạt động hiệu quả hơn. Có thể điều chỉnh các thông số đầu vào. Điều này giúp ta tiết kiệm chi phí và thời gian hơn việc đưa hệ thống ra kiểm nghiệm thực tế. Tuy nhiên, Simulation cũng không thể tự hoạt động, người dùng phải đưa vào các mô hình tương ứng để kiểm tra. Tùy độ phức tạp của mô hình mà Simulation có thể không giống như hoạt động ở thực tế và dĩ nhiên là không thể giống 100% như thế giới thực. Thêm vào đó, thời gian hoạt động của hệ thống trong chương trình Simulation có thể bị chậm hơn so với thế giới thực. 3.2. Các chương trình Simulation đang được sử dụng 3.2.1. MIT's NETSIM NETSIM dùng để giả lập mạng chuyển mạch gói được viết bởi MIT LCS Advanced NetWork Architecture group sử dụng cho mục đích riêng của họ. NETSIM dùng một giao diện X-Window để chạy chương trình, người sử dụng có thể chỉnh sửa một vài thông số trên giao diện. Các thành phần trong NETSIM bao gồm: quản lý sự kiện, thủ tục xuất nhập, các cấu trúc khác nhau như hàng đợi, danh sách, Ngoài ra còn có bộ dụng cụ, đây là một thư viện 53 KH OA C NT T – Đ H KH TN Chương 3 Tổng Quan Về Các Chương Trình Network Simulator chức năng ( viết bằng ngôn ngữ C ) cho phép tạo mới, chỉnh sửa, hiển thị, lưu trữ cấu hình mạng. Để thực hiện giả lập, người sử dụng có thể dùng ngôn ngữ C để viết những thành phần mới, hoặc chỉnh sửa một số file, biên dịch và kết nối chúng lại. Hoặc người sử dụng có thể dùng bộ công cụ để thực hiện giả lập. Mỗi thành phần sẽ được quản lý bởi một lớp, một kiểu, hoặc một handle quản lý sự kiện. Tất cả được lưu trong doubly-linked list khi Netsim chạy và được đại diện bằng cấu trúc hàng đợi và một action routin. Action routin được gọi khi nào có một sự kiện được gởi đến 1 thành phần. NETSIM thực hiện định tuyến tĩnh. NETSIM chỉ hỗ trợ cho kiểu dữ liệu gói (packet data). 3.2.2. NIST National Institute of Standards and Technology (NIST) đã phát triển ATM Network Simulator dùng cho việc nghiên cứu và đánh giá độ hiệu quả của mạng ATM, dựa trên NETSIM của MIT. Chương trình này có 2 nhiệm vụ chính: đánh giá độ hiệu quả của mạng ATM và giao thức ATM. Các thành phần cơ bản không có khác biệt nhiều so với NETSIM của MIT. Tuy nhiên, người sử dụng có thể tạo cấu hình mạng trực tiếp trên giao diện. 3.2.3. CPSIM CPSIM là một công cụ Simulator mục đích song song ( parallel general- purpose ) dùng cho mục đích thương mại, được viết bởi Groselj Boyan (BoyanTech Inc). 54 KH OA C NT T – Đ H KH TN Chương 3 Tổng Quan Về Các Chương Trình Network Simulator Parallel discrete-event simulation (PDES) phù hợp cho giả lập môi trường sự kiện riêng rẽ, như mạng máy tính. Phiên bản miễn phí cho giả lập tối đa đến 255 đối tượng. PDES không sử dụng giao diện đồ họa và chỉ dành cho người chuyên nghiệp. Có sự phân biệt giữa nhân CPSIM và thư viện CPSIM. Nhân ( kernel ) cung cấp quá trình đồng bộ hóa, bộ lập lịch, ngăn chận Deadlock và chuyển thông điệp cho nhiều máy khác nhau. Còn thư viện thì chứa các hàm C. Kernel CPSIM cũng có 2 phiên bản, phiên bản xử lý song song và phiên bản xử lý đơn (uniprocessor). Để thực hiện giả lập, người sử dụng định nghĩa một cấu trúc dữ liệu sự kiện (event data structure), đối tượng đồ họa và viết chương trình xử lý cho sự kiện. 3.2.4. INSANE INSANE được viết bởi đại học California tại Berkeley năm 1996. INSANE (Internet Simulated ATM Networking Environement) với mục đích xây dựng công cụ giả lập để phân tích hiệu quả của các chính sách IP qua ATM khác nhau (various IP over ATM policies) trong mạng Internetwork không đồng nhất (heterogeneous internetwork). INSANE có thể tính được hiệu quả của một vài ứng dụng Internet trong mạng Internetwork không đồng nhất với số lượng hàng ngàn máy. INSANE được dùng để giả lập mạng xương sống ATM diện rộng. 3.2.5. NEST 2.5 NEST (NEtwork Simula

Các file đính kèm theo tài liệu này:

  • pdf0012137 - 0012188.pdf