Đồ án Các giao thức định tuyến cổng nội trong mạng IP

MỤC LỤC

MỤC LỤC

THUẬT NGỮ VIẾT TẮT

LỜI NÓI ĐẦU 1

CHƯƠNG 1 TỔNG QUAN VỀ MẠNG IP 3

1.1 Mô hình tham chiếu OSI 3

1.1.1 Chức năng các tầng trong mô hình OSI 4

1.1.2 Các giao thức chuẩn của mô hình OSI 5

1.1.3 Phương thức hoạt động của các tầng trong mô hình OSI 7

1.1.4 Truyền dữ liệu trong mô hình OSI. 8

1.2 Bộ giao thức TCP/IP 9

1.2.1 Sự thúc đẩy cho việc ra đời của TCP/IP 9

1.2.2 Cấu trúc phân lớp của TCP/IP 10

1.3 So sánh hai mô hình TCP/IP và mô hình OSI 12

1.4 Phân loại mạng IP 14

1.5 Giao thức IP 14

1.5.1 Tổng quan về giao thức IP 14

1.5.2 Các chức năng của IP 15

1.5.3 Giao diện với các giao thức ở lớp trên và lớp dưới 16

1.5.4 Địa chỉ IP 16

1.5.5 Các phương pháp gán địa chỉ IP 27

1.5.6 Thứ tự byte và địa chỉ IP 28

1.5.7 Cấu trúc gói dữ liệu IP 28

1.5.8 Đóng gói dữ liệu 32

1.5.9 Phân mảnh và hợp nhất các gói IP 33

1.5.10 Điều khiển quá trình phân đoạn 37

1.6 Định tuyến IP 37

1.6.1 Các đặc tính của định tuyến IP 37

1.6.2 Xử lý tại lớp IP 40

1.6.3 Khởi tạo bảng định tuyến 40

1.6.4 Thông báo lỗi tái định tuyến ICMP 41

1.6.5 Các bản tin khám phá router ICMP 42

1.7 IPv6 44

1.8 Các giao thức khác của lớp Internet 46

1.8.1Giao thức phân giải địa chỉ ARP 47

1.8.2 Giao thức phân giải địa chỉ ngược RARP 50

1.8.3 Giao thức bản tin điều khiển liên mạng ICMP 51

1.9Các cơ chế truyền tải 55

KẾT LUẬN 56

CHƯƠNG 2 KĨ THUẬT ĐỊNH TUYẾN TRONG MẠNG IP 57

2.1 Khái niệm về định tuyến 57

2.2 Các phương pháp định tuyến 59

2.2.1 Định tuyến tĩnh 59

2.2.2 Định tuyến động 60

2.3 Các thuật toán chọn đường 62

2.3.1 Giới thiệu 62

2.3.2 Thuật toán tìm đường ngắn nhất 64

2.3.3 Thuật toán Dijkstra 66

2.3.4 Thuật toán Bellman-Ford 67

2.4 Các loại giao thức định tuyến 70

2.4.1 Định tuyến theo vec-tơ khoảng cách 71

2.4.2 Định tuyến theo trạng thái liên kết 75

2.4.3 Giao thức định tuyến lai ghép 81

KẾT LUẬN 82

CHƯƠNG 3 GIAO THỨC THÔNG TIN ĐỊNH TUYẾN RIP 83

3.1 Một số khái niệm cơ bản 83

3.1.1 Bộ định tuyến 83

3.1.2 Hệ thống tự trị - AS ( Autonomous System ) 83

3.2 Giao thức thông tin định tuyến RIP 85

3.2.1 Các loại gói RIP 86

3.2.2 Định dạng các gói tin RIP 86

3.2.3 Các mode hoạt động của RIP 87

3.2.4 Tính toán các vec-tơ khoảng cách 87

3.2.5 Hạn chế của RIP 88

3.2.6 Giao thức thông tin định tuyến phiên bản 2 (RIP-2) 89

3.2.7 RIP thế hệ kế tiếp cho IPv6. 90

KẾT LUẬN 93

CHƯƠNG 4 GIAO THỨC OSPF 94

4.1 Giới thiệu 94

4.2 Một số khái niệm dùng trong OSPF 94

4.3 Phân phát các LSA 97

4.3 Các kiểu gói tin OSPF 98

4.4 Trao đổi thông tin giữa các node lân cận 99

4.5 Trạng thái của router lân cận - Các sự kiện 100

4.6 Bảng định tuyến , tìm đường theo bảng định tuyến 100

KẾT LUẬN 102

KẾT LUẬN CHUNG 103

TÀI LIỆU THAM KHẢO

 

doc109 trang | Chia sẻ: maiphuongdc | Lượt xem: 2352 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đồ án Các giao thức định tuyến cổng nội trong mạng IP, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
hát. R1 gửi thông báo‘ICMP redirect ‘tới phía phát để bảo nó gửi các datagram sau đến cùng đích qua R2 thay vì R1. Nhờ hoạt động này mà một host với nhận thức tối thiểu về định tuyến có thể xây dựng bảng định tuyến ngày càng tốt hơn. ‘ICMP redirect ‘ cho phép các host TCP/IP không hề tham gia vào định tuyến với tất cả các chức năng này thuộc về router. Thông thường R1 và R2 phải biết nhiều hơn về cấu hình mạng được kết nối, nhưng tất cả các host có thể khởi đầu với một tuyến mặc định và sẽ học được nhiều hơn khi chúng thu các thông báo ‘ICMP redirect ‘. 1.6.5 Các bản tin khám phá router ICMP Như đã đề cập đến trước đây, một cách để khởi tạo bảng định tuyến là sử dụng các tuyến cố định được xác định trong các file cấu hình. Nó thường được sử dụng để thiết lập một thực thể mặc định. Cách mới hơn là sử dụng các bản tin thông báo về router ICMP gọi là các bản tin khám phá router ICMP . Sau khi mồi (bootstrapping) một host thực hiện broadcast hoặc multicast bản tin ‘router solicitation’. Các router nhận được bản tin này sẽ trả lời bằng bản tin thông báo router ‘router advertisment’ của chúng. Ngoài ra các router còn broadcast hoặc multicast các thông báo router của chúng một cách định kỳ, do đó cho phép host bất kỳ nghe để cập nhật bảng định tuyến của nó. Định dạng của hai loại bản tin này được mô tả dưới đây trong Hình 1.25 và Hình 1.26. Rất nhiều địa chỉ có thể được thông báo bởi một router trong một bản tin đơn và số địa chỉ này được chứa trong trường số lượng địa chỉ ‘number of address’. Trường kích thước thực thể địa chỉ ‘address entry size’ luôn có giá trị là 2 tương ứng với 32 bit. Trường thời gian sống ‘life time’ chỉ ra thời gian tính theo giây mà các địa chỉ được thông báo là hợp lệ. Một số các cặp (địa chỉ IP và mức ưu tiên) được xếp sau các trường trên. Trường mức ưu tiên ‘preference level’ là một số nguyên không dấu 32bit chỉ ra mức ưu tiên của địa chỉ tương ứng. Hoạt động của một router như sau. Khi một router khởi đầu, nó phát đi các thông báo theo định kỳ đến tất cả các giao diện có khả năng broadcast hoặc multicast. Các thông báo này không phải là định kỳ chính xác mà được phát ngẫu nhiên để tránh tình trạng nhiều router trên cùng mạng con cùng phát. Khoảng thời gian thông thường giữa các lần thông báo là 450 và 600 giây, thời gian sống mặc định cho một thông báo là 30 phút. Khi một giao diện trên một router không được phép thì router có thể phát một thông báo cuối cùng trên giao diện này với trường ‘life time’ được lập là 0. Các router cùng nghe thông báo ‘solicitation’ từ các host và trả lời bằng bản tin ‘advertisment’. Nếu có nhiều router trên một subnet nhà quản lý hệ thống phải cấu hình mức ưu tiên cho mỗi router một cách phù hợp. 0 7 8 15 16 31 Type(10) Code(0) checksum Unused(0) Hình 1.25 Định dạng của bản tin ICMP ‘router solicitation’ Type(9) Code(0) checksum Number of address Address entry size Life time Router address(1) Preference level(1) Router address(2) Preference level(2) . . Hình 1.26 Định dạng của bản tin ICMP ‘router advertisment’ Hoạt động của một host diễn ra như sau. Ngay khi mồi một host thông thường phát liền 3 bản tin’solicitation’. Ngay khi thu được bản tin’advertisment’ hợp lệ thì host ngừng gửi các bản tin ‘solicitation’. Mỗi host cùng nghe thông báo từ các router kế cận, các thông báo ‘advertisment’có thể làm thay đổi router mặc định của host đó. Nếu thông báo ‘advertisment’không được thu cho mặc định hiện tại thì mặc định này bị timeout. Ngay khi router mặc định thông thường được xác định thì nó sẽ gửi thông báo’ advertisment’ cứ 10 phút một lần với thời gian sống là 30 phút. Điều này giúp cho thực thể mặc định của host sẽ không bị timeout nếu chỉ một hoặc hai thông báo advertisment bị mất. 1.7 IPv6 Có một số vấn đề với IPv4 hiện tại, chúng là kết quả của việc tăng trưởng nhanh chóng của Internet trong những năm qua. Quá nửa số địa chỉ lớp B đã được sử dụng, nó sẽ bị cạn kiệt nếu tiếp tục tăng trưởng như trong quá khứ 32bit địa chỉ IP là không đủ cho sự tăng trưởng của Internet trong thời gian dài. Cấu trúc định tuyến hiện tại là không phân cấp mà là phẳng, yêu cầu một bảng định tuyến cho một mạng. Khi số mạng tăng lên và rất nhiều địa chỉ lớp C được thay thế cho một địa chỉ lớp B thì kích thước bảng định tuyến sẽ tăng. Có bốn đề xuất được đưa ra cho một phiên bản mới của IP là IP next-generation. SIP - single IP: Nó đề nghị một số thay đổi đối với IP, sử dụng 46bit địa chỉ và một định dạng tiêu đề khác. PIP: Đề nghị này cũng sử dụng địa chỉ phân cấp, độ dài biến đổi và lớn hơn với một định dạng tiêu đề khác. TUBA - TCP and UDP with bigger address, dựa trên giao thức mạng phi kết nối,một giao thức OSI tương tự như IP. Nó cung cấp địa chỉ lớn hơn, độ dài biến đổi có thể lên đến 20byte. TP/IX được mô tả trong RFC1475, nó sử dụng 64bit địa chỉ IP nhưng cũng biến đổi tiêu đề TCP, UDP với 32bit số cổng cho cả hai giao thức, 64bit số ACK, 32bit cửa sổ cho TCP . Mặc dù dự đoán về sự cạn kiệt địa chỉ IP vào cuối những năm 90s đã không xảy ra nhưng IETF vẫn nghiên cứu về một phiên bản mới của IP để khắc phục nhược điểm của IPv4. Một số thiếu sót của IPv4 và các yêu cầu đã được đưa ra. Không gian địa chỉ quá nhỏ, cần một không gian địa chỉ lớn hơn. Kích thước bảng định tuyến: Số các mạng trong Internet và các bảng định tuyến tương ứng ngày càng lớn. Một không gian địa chỉ lớn cho phép tạo ra phân cấp mềm dẻo, ý tưởng của CIDR là tập hợp nhiều thực thể mức thấp vào một thực thể mức cao. Tính đơn giản: IPv4 dường như quá phức tạp với các phân mảnh, xử lý các tuỳ chọn, cấu hình. Hiệu năng: Các bảng định tuyến lớn, phân mảnh và xử lý các lựa chọn góp phần làm tăng trễ. Dễ cấu hình: Thiết bị IPv4 phải được cấu hình với địa chỉ IP hợp lệ hay sử dụng DHCP để lấy ra một địa chỉ IP từ một server. Bảo mật Khả năng mở rộng là khả năng để bổ sung các chức năng và đặc tính mới mà không yêu cầu sự kiểm tra kỹ lưỡng của các giao thức đang tồn tại . Cùng tồn tại: Có thể nói rằng thiết bị IPv4 và các ứng dụng sẽ cùng tồn tại với chúng ta mãi mãi, một phiên bản mới bất kỳ của IP phải hợp tác và cùng tồn tại với IPv4. Cùng với yêu cầu trên và nỗ lực của các kỹ sư mạng đã cho ra đời phiên bản mới của IP gọi là IPv6. Nó không khác nhiều so với hoạt động tổng thể của IPv4, mạng vẫn được gán một địa chỉ mạng, IPv6 vẫn chuyển phát các gói theo cách phi kết nối, các router vẫn chạy các giao thức định tuyến, một thiết bị mới phải được cấu hình vào một địa chỉ IPv6 hợp lệ…IPv6 được xem là một phiên bản đơn giản hơn, hiệu quả hơn củaIP. Các chức năng và đặc tính của IPv6 Không gian địa chỉ 128bit. Khả năng định tuyến tăng cường cải thiện hiệu năng và điều khiển định tuyến, mềm dẻo trong việc tạo ra phân cấp địa chỉ nhờ không gian địa chỉ lớn. Định tuyến nguồn hiệu quả hơn khi sử dụng định tuyến tiêu đề mở rộng. Sự tồn tại của trường ‘label’ trong tiêu đề cho phép các gói của một luồng được xác định cho một xử lý đặc biệt. Không gian địa chỉ multicast lớn hơn và bao gồm một trường hiển thị để hạn chế một cách hiệu quả một vùng truyền dẫn multicast. Phân mảnh bị ngăn cấm trong các router, việc xử lý các tuỳ chọn rõ ràng hơn và giảm bớt gánh nặng cho router trung gian. Các địa chỉ anycast được định nghĩa sao cho các gói được chuyển đến giao diện gần nhất có thể. Định dạng tiêu đề đơn giản hơn IPv4 . Cải thiện hỗ trợ tuỳ chọn: Phần mở rộng của tiêu đề IPv6 được mã hoá vi sai nên cho phép hiệu năng tốt hơn, mềm dẻo hơn để đưa ra các mở rộng tương lai. Nhãn luồng: Một nguồn cần dán nhãn các gói của một luồngđặc biệt. Luồng này yêu cầu dịch vụ hay xử lý đặc biệt bởi các router trung gian, nó sẽ đơn giản hoá việc xử lý phân loại gói ở các router . Các máy chuyển tiếp là các máy cùng tồn tại và hợp tác với các host và router IPv4. IPv6 header có độ dài 40byte, các trường của nó bao gồm: Version 4bit Traffic class là byte DS (diff Serv) cho các gói IPv6. Flow class là giá trị khác 0 được gửi bởi nguồn để xác định các gói của cùng một luồng, luồng này yêu cầu dịch vụ hay xử lý đặc biệt. Payload length định nghĩa độ dài theo octet của tải và phần mở rộng tiêu đề. Next-header định nghĩa loại tiêu đề ngay sau nó, nó có thể là phần mở rộng, tiêu đề lớp vận tải hay tải dữ liệu. Hop limit cùng chức năng với TTL trong IPv4. 0 31 4bit version 8bit traffic class 20bit flow label 16bit payload length 8bit next-header 8bit hop-limit 128bit Source IP address 128bit Destination IP address Extension header Hình 1.27 IPv6 header IPv6 header Next-header =routing header Routing header Next-header =fragment Fragment header Next-header =TCP TCP +payload Hình 1.28 IPv6 extension header Sau 40byte bắt buộc của tiêu đề và trước dữ liệu thực sự có thể có một số mở rộng tiêu đề tương tự như các tuỳ chọn trong IPv4, nó chứa thông tin về xử lý đặc biệt mà gói yêu cầu. Phần lớn mở rộng chỉ được xử lý bởi đích chứ không phải ở các router trung gian, do đó hiệu năng tốt hơn. Nội dung của phần mở rộng được định nghĩa trong phần next-header. 1.8 Các giao thức khác của lớp Internet Đã có địa chỉ IP của trạm nguồn và trạm dích nhưng gói IP đi theo đường nào để tới đích. ở từng chặng (hop) các router làm nhiệm vụ chọn đường hay định tuyến cho các gói. Để việc chọn đường được thực hiện tốt thì router phải có thông tin về các tuyến, các chặng và tình trạng của mạng nói chung. Các giao thức định tuyến được dùng để cập nhật những thông tin đó cho router. Đã có rất nhiều giao thức định tuyến được phát triển cho các mạng IP, có thể chia làm hai loại chính là định tuyến theo trạng thái kênh (link-state routing) và định tuyến theo véc tơ khoảng cách (distance-vector routing). Với các giao thức định tuyến, mạng được kết cấu tốt có khả năng tự vượt qua các tắc nghẽn cục bộ, phản ứng nhanh với các tình huống xảy ra; tức là có độ tin cậy cao. Các địa chỉ IP chỉ là các địa chỉ logic được dùng ở tầng mạng để chọn đường đi từ đầu cuối. Tuy nhiên trên từng chặng, hai máy chỉ có thể liên lạc với nhau khi biết địa chỉ vật lí của nhau (địa chỉ MAC). Như vậy vấn đề đặt ra là thực hiện ánh xạ giữa địa chỉ IP và địa chỉ MAC (48 bit) của một trạm. Giao thức ARP được xây dựng để chuyển đổi từ địa chỉ IP sang địa chỉ vật lí khi cần thiết. Còn giao thức RARP được dùng trong trường hợp ngược lại. Cả giao thức ARP và RARP đều không thuộc IP, nhưng được IP dùng đến khi cần. Một giao thức khác cũng liên quan tới IP, đó là ICMP. Giao thức này thực hiện truyền các thông báo điều khiển (về tình trạng lỗi trên mạng,...) giữa các gateway hoặc trạm của liên mạng. Lỗi có thể là một datagram không được gửi tới đích, hay một router hết bộ nhớ đệm ... Một thông báo IMCP được tạo và chuyển cho IP. IP sẽ bọc thông báo đó với một IP header và chuyển đến cho router khác hoặc trạm đích. 1.8.1Giao thức phân giải địa chỉ ARP 1.8.1.1 Giới thiệu Địa chỉ IP chỉ là địa chỉ logic, các mạng vật lý có địa chỉ riêng của mình là địa chỉ phần cứng. Một mạng vật lý có thể sử dụng nhiều lớp mạng khác nhau tại cùng thời điểm. Đối với một frame Ethernet thì nó được gửi từ một host đến host khác trên một LAN, nó sử dụng địa chỉ vật lý 48bit để quyết định giao diện mà fragment được gửi đến. Giao thức phân giải địa chỉ (ARP) cung cấp cách để biên dịch địa chỉ IP để thu được địa chỉ vật lý và ngược lại. Các phần tử (host, router, server...) sử dụng địa chỉ IP để trao đổi thông tin cho nhau trong môi trường mạng hoặc liên mạng. Có nghĩa là chúng phải biết địa chỉ IP của nhau.Xét trong môi trường đơn mạng, gói tin IP sẽ được đóng thành khung có địa chỉ MAC.Nếu không biết đia chỉ MAC đích thì chúng sẽ đặt giá trị địa chỉ MAC là FF-FF-FF-FF-FF-FF. Điều này sẽ làm tăng lưu lượng trong một miền broadcast domain. Chức năng của giao thức ARP là cho phép các phần tử xây dựng bảng ánh xạ IP sang MAC ARP RARP 32bit địa chỉ IP 48bit địa chỉ Ethernet Hình 1.29 ARP và RARP Hình 1.30 Các bảng ARP ARP cung cấp cách sắp xếp động địa chỉ IP vào địa chỉ phần cứng tương ứng, ở đây gọi là ‘động’ vì nó xảy ra tự động và thường không quan tâm đến người sử dụng hay nhà quản lý hệ thống. RARP được sử dụng bởi các hệ thống không đĩa nhưng yêu cầu cấu hình bằng tay bởi các nhà quản lý. 1.8.1.2 Hoạt động của ARP Mỗi giao diện mạng có một địa chỉ phần cứng, các frame được chuyển mạch tại mức phần cứng phải được đánh địa chỉ đến một giao diện, nhưng TCP/IP làm việc với địa chỉ IP của nó. Địa chỉ IP của một host không cho phép nhân gửi một frame tới host đó, nhân phải biết địa chỉ phần cứng của đích để gửi dữ liệu đến đó. Chức năng của ARP là phải cung cấp cách sắp xếp động giữa địa chỉ IP và địa chỉ phần cứng được sử dụng bởi các công nghệ mạng khác nhau. Các link điểm-điểm không sử dụng ARP, khi các link này được cấu hình (thường trong thời gian mồi), nhân phải được thông báo về địa chỉ IP tại mỗi đầu của link. Địa chỉ phần cứng là không có liên quan. Điều cốt yếu để ARP hoạt động hiệu quả là duy trì một ARP cache trên mỗi host. Cache chỉ biên dịch hiện thời từ địa chỉ IP đến địa chỉ phần cứng. Ta có thể hiển thị cache nhờ dùng lệnh arp. Có thể xẩy ra trường hợp một host đang được truy vấn bị down hay không tồn tại, do đó không thể trả lời cho ARP request được. Khi đó phía gửi ARP request sẽ tiếp tục gửi ARP request với tần suất giảm dần. ARP request tương ứng 1:1 với TCP SYN segment . Trừ khi thu được ARP reply thì TCP segment mới được gửi đi vì nếu không thì vẫn chưa biết địa chỉ phần cứng của đích. Một timeout thường được cung cấp cho thực thể trong ARP cache. Các thực hiện của Berkeley thường có timeout là 20 phút cho một thực thể hoàn chỉnh và 3 phút cho một thực thể không hoàn chỉnh. Mỗi lần sử dụng thực thể thì lập timeout của nó là 20 phút. Ví dụ : Thiết bị nguồn 197.15.22.33 đang yêu cầu địa chỉ MAC của đích có địa chỉ 197.15.22.126. Thiết bị đích có địa chỉ 197.15.22.126 bắt lấy ARP request và đáp ứng lại bằng một ARP reaply có chứa địa chỉ MAC của nó. Hình 1.31 Các bảng ARP MAC HEADER Destination 02-06-8C-01-02-03 Source 02-06-8C-44-44-44 IP HEADER Destination 197.15.22.33 Source 197.15.22.126 ARP reply message I have that MAC add Hình 1.32 Cấu trúc ARP request 1.8.1.3 Proxy ARP và gratuitous ARP Proxy ARP cho phép một router trả lời ARP request trên một trong số các mạng của nó cho một host trên mạng khác của nó. Nó đánh lừa host phát ARP request rằng nó là host đích khi mà host đích trên side khác của nó. Khi đó router hoạt động như một proxy agent cho host đích, thực hiện chuyển tiếp các gói từ các host khác gửi cho nó. Proxy ARP còn gọi là promiscuoust ARP hay ARP hack còn có chức năng ẩn đi hai mạng vật lý so với nhau. Một đặc trưng khác của ARP được gọi là gratuitous ARP. Nó xảy ra khi một host gửi đi một ARP request để tìm kiếm địa chỉ IP của chính nó, nó thường được thực hiện khi giao diện được cấu hình tại thời gian mồi. Gratuitous ARP có hai chức năng. Nó cho phép một host xác định xem liệu host khác có được cấu hình với cùng địa chỉ IP của nó không. Host bsdi không mong đợi thu một reply cho request này vì nếu một trả lời được thu thì bản tin lỗi lặp địa chỉ IP được đưa ra. Đây là một cảnh báo với các nhà quản lý hệ thống rằng một trong số các hệ thống đã bị cấu hình sai. Nếu host gửi gratuitous ARP thay đổi địa chỉ phần cứng của nó (do host bị đóng,card giao diện bị thay thế…host được khởi tạo lại) thì gói này sẽ làm cho bất kỳ host nào khác trên cáp (có một thực thể trong cache của nó cho địa chỉ phần cứng cũ ) sẽ cập nhật thực thể cache ARP. Nếu một host thu một ARP request từ một địa chỉ IP đang tồn tại trong cache của nó thì thực thể cache cập nhật với địa chỉ phần cứng của phía gửi ARP request . Đặc tính này của ARP cho phép một ‘backup file server’ tiếp quản một server bị lỗi bằng cách phát ra một ARP request ‘ gratuitous ’ với địa chỉ IP của server bị lỗi. Nhờ đó các gói được gửi tới server bị lỗi sẽ được gửi đến ‘backup’ mà các ứng dụng client không hề biết rằng server nguồn bị lỗi. ARP là một giao thức cơ sở của TCP/IP nhưng nó thường hoạt động mà không cần sự hiểu biết của ứng dụng hay các nhà quản lý hệ thống về nó. 1.8.2 Giao thức phân giải địa chỉ ngược RARP 1.8.2.1 Giới thiệu Khi một hệ thống với một đĩa cục bộ được mồi, nó thường có được địa chỉ IP của nó từ file cấu hình, file này được đọc từ file đĩa. Nhưng với một hệ thống không đĩa thì một cách khác để giành được địa chỉ IP là cần thiết. 1.8.2.2 Hoạt động của RARP Cũng như với ARP, RARP request được gửi broadcast còn RARP reply thường là unicast. Trong khi khái niệm RARP là đơn giản thì thực hiện của một RARP server là phụ thuộc hệ thống và phức tạp, do đó không phải tất cả các thực hiện của TCP/IP đều cung cấp RARP server. Ngược lại, cung cấp một ARP server lại rất đơn giản và nó thường là một phần của thực hiện TCP/IP trong mạng lõi. Bởi vì, mạng lõi biết địa chỉ IP và địa chỉ phần cứng của nó nên khi thu ARP request cho một trong số các địa chỉ IP của nó, nó sẽ trả lời với địa chỉ phần cứng tương ứng. Server thường cung cấp việc sắp xếp từ một địa chỉ phần cứng vào một địa chỉ IP cho rất nhiều host (tất cả các hệ thống không đĩa trên mạng). Sắp xếp này được chứa trong một file đĩa. Vì mạng lõi thường không đọc và phân tích các file đĩa nên chức năng của một RARP server được cung cấp như một tiến trình người dùng mà không phải như một phần thực hiện TCP/IP của mạng lõi. RARP request được phát như các frame Ethernet với trường loại xác định. Điều đó có nghĩa rằng RARP server phải có vài cách để gửi và thu các frame Ethernet loại này. Vì việc thu phát của các frame này là phụ thuộc hệ thống nên thực hiện của một RARP bị gắn chặtvới hệ thống. Một biến dạng của RARP là RARP request được gửi đi như broadcast mức phần cứng, chúng không được chuyển phát bởi các router. Để cho phép các hệ thống không đĩa mồi ngay cả khi host server bị down thì rất nhiều RARP server được cung cấp trên một mạng đơn. Khi số server tăng khiến lưu lượng mạng tăng vì tất cả các server cùng gửi RARP reply cho bất cứ RARP request thu được. Hệ thống không đĩa gửi RARP request thường sử dụng RARP reply thu được đầu tiên. Hơn nữa, có thể xảy ra tình huống các RARP server thử để trả lời cùng một lúc do đó gây ra va chạm trên Ethernet. 1.8.3 Giao thức bản tin điều khiển liên mạng ICMP 1.8.3.1 Giới thiệu Giao thức bản tin điều khiển liên mạng ICMP được xem như một phần của lớp IP, nó thông tin về các bản tin lỗi và các điều kiện khác để yêu cầu sự chú ý. Các bản tin ICMP thường hoạt động dựa trên lớp IP hoặc giao thức lớp cao hơn. Một số bản tin ICMP lại gây lỗi cho tiến trình người dùng. Các bản tin ICMP được phát trong IP datagram . IP datagram IP header ICMP message Hình 1.33 Đóng gói bản tin ICMP trong IP datagram 0 7 8 15 16 31 8bit type 8bit code 16bit checksum Hình 1.34 Định dạng bản tin ICMP Bốn byte đầu của các bản tin ICMP giống hệt nhau nhưng phần còn lại phụ thuộc vào mỗi loại bản tin khác nhau. Trường type có 15 giá trị khác nhau nhằm xác định bản tin ICMP đặc biệt. Một vài loại bản tin ICMP sử dụng thêm trường code để xác định thêm điều kiện. Trường checksum tính tổng kiểm tra cho toàn bộ bản tin ICMP . 1.8.3.2 Vai trò của ICMP Phần mềm IP cung cấp dịch vụ không tin cậy, chuyển dữ liệu phi kết nối bằng cách dàn xếp cho mỗi bộ router chuyển dữ liệu. Nếu một router không thể chuyển đi một datagram hay nó phát hiện một dấu hiệu không bình thường có ảnh hưởng đến việc chuyển dữ liệu, router cần thông báo cho nơi gửi datagram. Mỗi bộ router hoạt động một cách tự quản, chuyển tiếp hay gửi datagram đến đích mà không cần sự phối hợp với nơi gửi ban đầu. Hệ này làm việc tốt nếu mọi máy tính hoạt động một cách chính xác và thống nhất với nhau về việc định tuyến. Sự khác biệt giữa một mạng được cài đặt với phần cứng nhất định với một Internet được cài đặt với phần mềm ở chỗ: Đối với thực hiện trên, người thiết kế có thể thêm phần cứng đặc biệt để thông báo cho các máy nối mạng khi có lỗi, còn trong một Internet không có cơ chế phần cứng này nên nơi gửi không thể biết việc phát chuyển không được là do các máy địa phương hay các máy ở xa. Do đó, việc bắt lỗi trở thành công việc khó khăn, bản thân giao thức IP không chứa gì nhiều để giúp nơi gửi kiểm tra mối liên kết hay biết về các lỗi này. ICMP được xem như một phần bắt buộc của IP và phải có trong mọi cài đặt IP. Giống như các giao dịch khác, các bản tin ICMP di chuyển qua Internet trong phần dữ liệu của IP datagram . Tuy nhiên, đích đến cuối cùng của một thông điệp ICMP không phải là một chương trình ứng dụng hay người sử dụng máy đích mà là phần mềm IP trên máy đó. ICMP cho phép router gửi thông báo lỗi và thông báo điều kiện đến các bộ router khác hoặc máy khác. Một máy bất kỳ có thể gửi thông báo ICMP tới bất kỳ máy khác. ICMP cung cấp phương tiện thông tin liên lạc giữa phần mềm IP trên các máy. Ưu điểm chính của việc cho phép máy tính sử dụng ICMP là nó cung cấp chỉ một cơ chế được dùng cho mọi thông báo thông tin và điều khiển. ICMP là một cơ chế thông báo lỗi, nó cung cấp cho router một phương pháp để khi gặp lỗi sẽ thông báo cho nguồn đầu tiên. Khi một datagram gây ra lỗi, ICMP chỉ có thể thông báo điều kiện lỗi trở về nguồn ban đầu của datagram , nguồn này phải liên hệ lỗi này với từng chương trình ứng dụng hoặc thực hiện thao tác khác để sửa lỗi. ICMP chỉ có thể thông báo ngược về nguồn ban đầu vì hai lý do. Thứ nhất, datagram chỉ gồm những vùng xác định địa chỉ nguồn, địa chỉ đích mà không có hồ sơ đầy đủ về đường đi của nó qua Internet. Thứ hai, thay vì huỷ bỏ datagram một cách im lặng, router sử dụng ICMP để thông báo cho nguồn về vấn đề xảy ra và tin tưởng rằng chương trình quản trị máy sẽ hợp tác với chương trình quản trị mạng để xác định và sửa lỗi. 1.8.3.3 Các loại bản tin ICMP Loại bản tin ICMP được chỉ ra bởi trường ‘type’ trong bản tin ICMP. Cần có sự phân biệt giữa bản tin thông báo lỗi và bản tin truy vấn vì chúng được xử lý rất khác biệt. Ví dụ như một bản tin lỗi không bao giờ được tạo ra để trả lời cho một bản tin lỗi, vì nếu cứ một bản tin lỗi tạo ra một bản tin lỗi, thì số bản tin lỗi sẽ tăng theo cấp số nhân. Khi một bản tin ICMP được gửi đi, nó luôn chứa tiêu đề IP và 8 byte đầu tiên của IP datagram đã gây ra lỗi khiến bản tin lỗi ICMP được tạo ra. Nó cho phép modul ICMP đang thu kết hợp bản tin này với một giao thức đặc biệt (TCP hoặc UDP được xác định trong trường loại giao thức của tiêu đề IP datagram ) và một tiến trình người dùng đặc biệt (từ số cổng lấy từ 8 byte dữ liệu IP đầu tiên chứa tiêu đề TCP hoặc UDP). Một bản tin lỗi ICMP không bao giờ được tạo ra để trả lời cho: Một bản tin lỗi. Một datagram có đích là địa chỉ IP broadcast hay multicast. Một datagram được gửi như một broadcast lớp link. Một fragment không phải là fragment đầu tiên. Một datagram mà địa chỉ nguồn của nó không xác định một host đơn, điều đó có nghĩa là địa chỉ nguồn không thể là địa chỉ toàn 0, địa chỉ loopback, địa chỉ broadcast hay địa chỉ multi cast. Các luật trên nhằm tránh ‘broadcast storms’ khi bản tin lỗi được gửi đi để trả lời cho các gói broadcast. 1.8.3.4 Một số loại bản tin ICMP Yêu cầu và trả lời mặt nạ địa chỉ Hệ thống không đĩa sử dụng bản tin yêu cầu mặt nạ địa chỉ ICMP (ICMP address mask request ) để đạt được mặt nạ mạng con của nó (subnet mask) trong thời gian mồi. Hệ thống đang yêu cầu này thực hiện broadcast bản tin ‘ICMP request ‘của nó. Một giải pháp để một hệ thống không đĩa đạt được mặt nạ mạng con của nó là sử dụng giao thức BOOTP. 0 7 8 15 16 31 Type (17 or 18) Code(0) checksum Identifier Sequence number 32bit subnetmask Hình 1.35 Định dạng bản tin yêu cầu và trả lời mặt nạ địa chỉ ICMP Các trường identifier và sequence number được thiết lập đến một giá trị bất kỳ bởi phía gửi trong bản tin request và các giá trị này được gửi ngược trở về từ phía thu trong bản tin reply. Nó cho phép phía gửi xác nhận bản tin reply nào là trả lời cho bản tin request nào. Yêu cầu và trả lời nhãn thời gian ICMP 0 7 8 15 16 31 Type (13 or 14) Code(0) checksum Identifier Sequence number 32bit originate timestamp 32bit receive timestamp 32bit transmit timestamp Hình 1.36 Định dạng bản tin yêu cầu và trả lời nhãn thời gian ICMP Yêu cầu nhãn thời gian ICMP (ICMP timestamp request ) cho phép một hệ thống truy vấn hệ thống khác ở thời điểm hiện tại. Giá trị nhãn thời gian được quay vòng về 0 sau một vài ms kể từ lúc nửa đêm. Đặc tính tốt của bản tin ICMP là nó cung cấp độ phân giải cỡ ms trong khi một số giải pháp khác cung cấp độ phân giải cỡ giây. Trở ngại chỉ xảy ra lúc nửa đêm. Phía yêu cầu điền vào trường ‘originate timestamp’ và gửi đi yêu cầu. Hệ thống trả lời điền vào ‘receive timestamp’ khi nó thu được request và điền vào ‘transmit timestamp’ khi nó gửi đi reply. Thực tế thường hai trường này được lập cùng một giá trị. Nguyên nhân để cung cấp 3 trường là để cho phía gửi tính thời gian để request và tính riêng thời gian reply được gửi. 1.8.3.5 Xử lý các bản tin ICMP Vì ICMP bao phủ một vùng rộng các điều kiện, từ các bản tin thông báo lỗi đến các bản tin thông tin, nên bản tin ICMP được xử lý khác nhau, thậm chí trong một thực hiện cho trước. Tuỳ loại bản tin mà bản tin ICMP được x

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

  • docBan Word.doc
  • pptTrinh bay.PPT